jueves, 16 de abril de 2015


Programación orientada a objetos


La programación orientada a objetos o POO (OOP según sus siglas en inglés) es un paradigma de programación que usa los objetos en sus interacciones, para diseñar aplicaciones y programas informáticos. Está basado en varias técnicas, incluyendo herencia, cohesión, abstracción, polimorfismo, acoplamiento y encapsulamiento. Su uso se popularizó a principios de la década de los años 1990. En la actualidad, existe una gran variedad de lenguajes de programación que soportan la orientación a objeto.

Introducción

Los objetos son entidades que tienen un determinado estado, comportamiento (método) e identidad:
·         El estado está compuesto de datos o informaciones; serán uno o varios atributos a los que se habrán asignado unos valores concretos (datos).
·         El comportamiento está definido por los métodos o mensajes a los que sabe responder dicho objeto, es decir, qué operaciones se pueden realizar con él.
·         La identidad es una propiedad de un objeto que lo diferencia del resto; dicho con otras palabras, es su identificador (concepto análogo al de identificador de una variable o una constante).
Un objeto contiene toda la información que permite definirlo e identificarlo frente a otros objetos pertenecientes a otras clases e incluso frente a objetos de una misma clase, al poder tener valores bien diferenciados en sus atributos. A su vez, los objetos disponen de mecanismos de interacción llamados métodos, que favorecen la comunicación entre ellos. Esta comunicación favorece a su vez el cambio de estado en los propios objetos. Esta característica lleva a tratarlos como unidades indivisibles, en las que no se separa el estado y el comportamiento.
Los métodos (comportamiento) y atributos (estado) están estrechamente relacionados por la propiedad de conjunto. Esta propiedad destaca que una clase requiere de métodos para poder tratar los atributos con los que cuenta. El programador debe pensar indistintamente en ambos conceptos, sin separar ni darle mayor importancia a alguno de ellos. Hacerlo podría producir el hábito erróneo de crear clases contenedoras de información por un lado y clases con métodos que manejen a las primeras por el otro. De esta manera se estaría realizando una programación estructurada camuflada en un lenguaje de programación orientado a objetos.
La POO difiere de la programación estructurada tradicional, en la que los datos y los procedimientos están separados y sin relación, ya que lo único que se busca es el procesamiento de unos datos de entrada para obtener otros de salida. La programación estructurada anima al programador a pensar sobre todo en términos de procedimientos o funciones, y en segundo lugar en las estructuras de datos que esos procedimientos manejan. En la programación estructurada solo se escriben funciones que procesan datos. Los programadores que emplean programación orientada a objetos, en cambio, primero definen objetos para luego enviarles mensajes solicitándoles que realicen sus métodos por sí mismos.

Origen

Los conceptos de la programación orientada a objetos tienen origen en Simula 67, un lenguaje diseñado para hacer simulaciones, creado por Ole-Johan Dahl y Kristen Nygaard, del Centro de Cómputo Noruego en Oslo. En este centro se trabajaba en simulaciones de naves, que fueron confundidas por la explosión combinatoria de cómo las diversas cualidades de diferentes naves podían afectar unas a las otras. La idea surgió al agrupar los diversos tipos de naves en diversas clases de objetos, siendo responsable cada clase de objetos de definir sus propios datos y comportamientos. Fueron refinados más tarde en Smalltalk, desarrollado en Simula en Xerox PARC (cuya primera versión fue escrita sobre Basic) pero diseñado para ser un sistema completamente dinámico en el cual los objetos se podrían crear y modificar "sobre la marcha" (en tiempo de ejecución) en lugar de tener un sistema basado en programas estáticos.
La programación orientada a objetos se fue convirtiendo en el estilo de programación dominante a mediados de los años ochenta, en gran parte debido a la influencia de C++, una extensión del lenguaje de programación C. Su dominación fue consolidada gracias al auge de las Interfaces gráficas de usuario, para las cuales la programación orientada a objetos está particularmente bien adaptada. En este caso, se habla también de programación dirigida por eventos.
Las características de orientación a objetos fueron agregadas a muchos lenguajes existentes durante ese tiempo, incluyendo Ada, BASIC, Lisp más Pascal entre otros. La adición de estas características a los lenguajes que no fueron diseñados inicialmente para ellas condujo a menudo a problemas de compatibilidad y en la capacidad de mantenimiento del código. Los lenguajes orientados a objetos "puros", por su parte, carecían de las características de las cuales muchos programadores habían venido a depender. Para saltar este obstáculo, se hicieron muchas tentativas para crear nuevos lenguajes basados en métodos orientados a objetos, pero permitiendo algunas características imperativas de maneras "seguras". El Eiffel de Bertrand Meyer fue un temprano y moderadamente acertado lenguaje con esos objetivos, pero ahora ha sido esencialmente reemplazado por Java, en gran parte debido a la aparición de Internet y a la implementación de la máquina virtual de Java en la mayoría de navegadores. PHPen su versión 5 se ha modificado; soporta una orientación completa a objetos, cumpliendo todas las características propias de la orientación a objetos.
 fuentes:

seguridad informática

La seguridad informática o seguridad de tecnologías de la información es el área de la informática que se enfoca en la protección de la infraestructura computacional y todo lo relacionado con esta y, especialmente, la información contenida o circulante. Para ello existen una serie de estándares, protocolos, métodos, reglas, herramientas y leyes concebidas para minimizar los posibles riesgos a la infraestructura o a la información. La seguridad informática comprende software (bases de datosmetadatos, archivos), hardware y todo lo que la organización valore (activo) y signifique un riesgo si esta información confidencial llega a manos de otras personas, convirtiéndose, por ejemplo, eninformación privilegiada.
La definición de seguridad de la información no debe ser confundida con la de «seguridad informática», ya que esta última sólo se encarga de la seguridad en el medio informático, pero la información puede encontrarse en diferentes medios o formas, y no solo en medios informáticos.

Use un software de seguridad que se actualice automáticamente
Los malhechores constantemente se imaginan nuevas maneras de atacador su computadora y es por eso que usted tiene que mantener actualizado su software de seguridad para proteger su computadora contra los ataques más recientes. La mayoría de los programas de seguridad se pueden actualizar automáticamente; configure su software para que así lo haga. Usted puede encontrar programas de seguridad gratis ofrecidos por compañías reconocidas. También configure su sistema operativo y navegador de internet para que se actualicen automáticamente.
Si usted deja que su sistema operativo, navegador de internet o su software de seguridad se desactualicen, los delincuentes podrían infiltrar silenciosamente sus programas maliciosos en su computadora y usarla secretamente para irrumpir en otras computadoras, enviar correo spam o espiar sus actividades en internet. Hay pasos que usted puede tomar para detectar y quitar el software malicioso de su computadora.
No compre ningún software de seguridad que le ofrezcan por medio de mensajes pop-up o mensajes electrónicos inesperados, especialmente si se trata de mensajes que dicen que han escaneado su computadora y que detectaron malware. Los estafadores envían este tipo de mensajes para tratar de que usted les compre un programa inservible, o peor aún, para tomar control de su computadora.
Trate su información personal como si fuera dinero en efectivo
No le dé su información personal a cualquiera que se la pida. Los individuos malintencionados pueden usar su número de Seguro Social, los números de su tarjeta de crédito o de sus cuentas bancarias o de servicios para robar dinero o abrir cuentas nuevas a su nombre. Así que cada vez que le pidan su información personal – ya sea para rellenar un formulario en internet, por medio de un mensaje de texto o de teléfono – piense si realmente puede confiar. Con tal poder robarle su información, los estafadores serán capaces de hacer todo lo que esté a su alcance para parecer gente confiable. Aprenda más sobre estafadores que “pescan” información personal.
Investigue la reputación de las compañías para averiguar con quién está tratando en realidad.
Cuando haga transacciones en internet, hacer una breve investigación le puede servir para ahorrarse mucho dinero. Si ve un anuncio o un ofrecimiento que le parece confiable y conveniente, tómese un momento para verificar la reputación de la compañía anunciante. Escriba el nombre de la compañía o del producto en su buscador favorito agregando palabras como “calificaciones”, “quejas” o “estafa”. Si encuentra comentarios negativos, tendrá que decidir si realmente vale la pena arriesgarse. Si no puede encontrar la información de contacto de la compañía, compre en otra parte.
No dé por supuesto que un anuncio publicado en un sitio de buena reputación es un anuncio confiable. Que un sitio publique un anuncio de otro sitio no significa que endose al sitio anunciado, o que ni siquiera lo conozca.
Suministre su información personal únicamente en sitios web codificados
Si hace compras o trámites bancarios en internet, hágalo únicamente en aquellos sitios que protejan su información codificándola mientras viaja desde su computadora hasta sus servidores. Para determinar si un sitio web está codificado o cifrado, fíjese que el domicilio web comience con https (la “s” corresponde a seguro).
Hay algunos sitios web que codifican únicamente las páginas iniciales de registro de usuarios, pero si alguna parte de su sesión no está codificada, se podría vulnerar toda la cuenta. Fíjese que aparezcan las letras https durante todo el tiempo que usted permanezca en el sitio, no solamente cuando se registre.
Proteja sus contraseñas
Algunos principios básicos para crear sus contraseñas extensas y protegerlas:
·         Cuanto más extensa sea su contraseña más difícil será descifrarla. Use como mínimo diez 10 caracteres; para la mayoría de los usuarios particulares lo ideal es crear una contraseña de 12 caracteres.
·         Combine letras, números y símbolos. Trate de no crear contraseñas obvias – no use su nombre, fecha de nacimiento, o palabras de uso corriente.
·         No use la misma contraseña para varias cuentas. Si se la roban – o se la roban a alguna de las compañías con las que usted tiene una contraseña – podrían usarla para tratar de acceder a todas sus cuentas.
·         No dé sus contraseñas por teléfono, en mensajes de texto o por email. Las compañías que operan legítimamente no envían mensajes para pedir contraseñas. Si recibe un mensaje que le pide su contraseña, lo más probable es que sea una estafa.
·         Guarde sus contraseñas en un lugar seguro fuera del alcance de la vista.
Haga copias de seguridad de sus archivos
No hay ningún sistema que sea totalmente seguro. Copie los archivos importantes en un disco removible o disco duro externo, y guárdelo en un lugar seguro. De esta manera, si tiene algún problema con su computadora, podrá acceder a sus archivos.
 click aquí para ver vídeo de seguridad informática:
Fuentes:

miércoles, 25 de marzo de 2015

Visita al "Centro Cultural Manuel Gomez Morin"

la visita trato básicamente de conocer el sistema de redes que contiene el centro cultural manuel gomez morin.
se nos dio a conocer los servidores que contienen en su centro de computacion y como le dan mantenimiento en el cuatro de los servidores se encontraban varios switch de varias marcas como HP, Cisco, etc. se nos mostro el cableado bien organizado y nos explicaron que ese tipo de cableado lo hacen personas certificadas en ello.
tambien se nos explico que hacen en casos de que se vaya la corriente y como sige funcionando su equipo fue algo muy interesante

































 al igual conocimos los recursos que ocupa el INEGI relacionado con las TI para recaudar información y para publicarla en su pagina oficial


tambien se nos dio una conferencia sobre la lectura y como es el mecanismo de su biblioteca es muy genial tienen infinidad de libros y a mi en lo personal me gusto mucho esa confernecia nos mostraron videos dejare uno aqui abajo para que lo vean
https://www.youtube.com/watch?v=8tgV-GhvVwA

y su pagina oficial es esta
http://evac.queretaro.gob.mx/

TRABAJO DE EL CUADRO DE LOS MODELOS DE DESARROLLO DE SOFTARE
https://drive.google.com/file/d/0B94Ei3raSKPvQzNGUFp5Z0tBYTA/view?usp=sharing

viernes, 13 de marzo de 2015

FUNDAMENTOS DE DISEÑO DE SOFTWARE:


  • Conceptos generales de diseño.
El software no es el único campo donde el diseño se encuentra inmiscuido. En general podemos ver el diseño como una forma para resolución de problemas. El problema sin solución definitiva es interesante en términos de comprensión del diseño. Un numero de otras nociones y conceptos son también de interés en la comprensión del diseño en su sentido general, objetivos, limitaciones, alternativas, representaciones y soluciones
  • Contexto del diseño de software.
El diseño del software se encuentra en el núcleo técnico de la respectiva ingeniería y se aplica de manera independiente al modelo de software que se utilice. Una vez que se analizan y especifican los requisitos, el diseño del software es la última acción de la ingeniería correspondiente dentro de la actividad del modelado, la cual establece una plataforma para la construcción (generación de código y prueba).
"El milagro más común de la ingeniería de software es la transición del análisis al diseño y del diseño al códigoRichard Due
  • Proceso del Diseño de Software.
  • Diseño Arquitectónico.
El diseño arquitectónico puede representarse al usar uno o más de muchos modelos diferentes. Los modelos estructurales representan la arquitectura como una colección organizada de componentes del programa. Los modelos del marco de trabajo repetible incrementan el grado de abstracción del diseño al intentar identificar marcos de trabajo repetibles del diseño arquitectónico que se encuentran en tipos de aplicaciones similares.
El diseño de la arquitectura de software se describe cómo se descompone y como están organizados los componentes en el software. [IEEEP1471-00]
  • Diseño Detallado.
El diseño detallado se describe el comportamiento específico de estos componentes.
  • Técnicas Permitidas.
  • Abstracción
Abstracción es el proceso o el resultado de la generalización de la reducción del contenido de la información de un concepto o un fenómeno observable, por lo general, con el fin de conservar únicamente la información que es relevante para un propósito en particular. Cuando se considera una solución modular a cualquier problema se pueden exponer muchos grados de abstracción.


          Técnicas de recolección de datos:

Los analistas utilizan una variedad de métodos a fin de recopilar los datos sobre una situación existente, como entrevistas, cuestionarios, inspección de registros (revisión en el sitio) y observación. Cada uno tiene ventajas y desventajas. Generalmente, se utilizan dos o tres para complementar el trabajo de cada una y ayudar a asegurar una investigación completa.


  • La entrevista: Las entrevistas se utilizan para recabar información en forma verbal, a través de preguntas que propone el analista. Quienes responden pueden ser gerentes o empleados, los cuales son usuarios actuales del sistema existente, usuarios potenciales del sistema propuesto o aquellos que proporcionarán datos o serán afectados por la aplicación propuesta. El analista puede entrevistar al personal en forma individual o en grupos algunos analistas prefieren este método a las otras técnicas que se estudiarán más adelante. Sin embargo, las entrevistas no siempre son la mejor fuente de datos de aplicación.

Preparación de la Entrevista
  1. Determinar la posición que ocupa de la organización el futuro entrevistado, sus responsabilidades básicas, actividades, etc. (Investigación).
  2. Preparar las preguntas que van a plantearse, y los documentos necesarios (Organización).
  3. Fijar un límite de tiempo y preparar la agenda para la entrevista. (Sicología).
  4. Elegir un lugar donde se puede conducir la entrevista con la mayor comodidad (Sicología).
  5. Hacer la cita con la debida anticipación (Planeación).
Conducción de la Entrevista
  1. Explicar con toda amplitud el propósito y alcance del estudio (Honestidad).
  2. Explicar la función propietaria como analista y la función que se espera conferir al entrevistado. (Imparcialidad).
  3. Hacer preguntas específicas para obtener respuestas cuantitativas (Hechos).
  4. Evitar las preguntas que exijan opiniones interesadas, subjetividad y actitudes similares (habilidad).
  5. Evitar el cuchicheo y las frases carentes de sentido (Claridad).
  6. Ser cortés y comedio, absteniéndose de emitir juicios de valores. (Objetividad).
  7. Conservar el control de la entrevista, evitando las divagaciones y los comentarios al margen de la cuestión.
  8. Escuchar atentamente lo que se dice, guardándose de anticiparse a las respuestas (Comunicación).
  • Encuesta:Las encuestas pueden ser clasificadas en muchas maneras. Una dimensión es por tamaño y tipo de muestra. Las encuestas pueden ser usadas para estudiar poblaciones humanas o no humanas (por ejemplo, objetos animados o inanimados, animales, terrenos, viviendas). Mientras que muchos de los principios son los mismos para todas las encuestas, el foco aquí será en métodos para hacer encuestas a individuos.
    Muchas encuestas estudian todas las personas que residen en un área definida, pero otras pueden enfocar en grupos particulares de la población -niños, médicos, líderes de la comunidad, los desempleados, o usuarios de un producto o servicio particular. Las encuestas también pueden ser conducidas con muestras locales, estatales o nacionales.
    Las encuestas pueden ser clasificadas por su método de recolección de datos. Las encuestas por correo, telefónicas y entrevistas en persona son las más comunes. Extraer datos de récords médicos y otros se hace también con frecuencia. En los métodos más nuevos de recoger datos, la información se entra directamente a la computadora ya sea por un entrevistador adiestrado o aún por la misma persona entrevistada. Un ejemplo bien conocido es la medición de audiencias de televisión usando aparatos conectados a una muestra de televisores que graban automáticamente los canales que se observan.

  • Cuestionario: Los cuestionarios proporcionan una alternativa muy útil para la entrevista; si embargo, existen ciertas características que pueden ser apropiada en algunas situaciones e inapropiadas en otra. Al igual que la entrevistas, deben diseñarse cuidadosamente para una máxima efectividad.Recabación de datos mediante cuestionarios
    Para los analistas los cuestionarios pueden ser la única forma posible de relacionarse con un gran número de personas para conocer varios aspectos del sistema. Cuando se llevan a cabo largos estudios en varios departamento, se puede distribuir los cuestionarios a todas las personas apropiadas para recabar hechos en relación al sistema. En mayor parte de los casos, el analista no verá a los que responde; no obstante, también esto es una ventaja porque aplican muchas entrevista ayuda a asegurar que el interpelado cuenta con mayor anonimato y puedan darse respuestas mas honesta ( y menos respuestas prehechas o estereotipadas). También las preguntas estandarizadas pueden proporcionar datos más confiable.
    Selección de formas para cuestionarios
    El desarrollo y distribución de los cuestionarios; por lo tanto, el tiempo invertido en esto debe utilizarse en una forma inteligente. También es importante el formato y contenido de las preguntas en la recopilación de hechos significativos.
    Existen dos formas de cuestionarios para recabar datos: cuestionarios abiertos y cerrados, y se aplican dependiendo de si los analistas conocen de antemano todas las posibles respuestas de las preguntas y pueden incluirlas. Con frecuencia se utilizan ambas formas en los estudios de sistemas.
    Cuestionario Abierto
    Al igual que las entrevistas, los cuestionarios pueden ser abiertos y se aplican cuando se quieren conocer los sentimientos, opiniones y experiencias generales; también son útiles al explorar el problema básico, por ejemplo, un analista que utiliza cuestionarios para estudiar los métodos de verificación de crédito, es un medio.
    El formato abierto proporciona una amplia oportunidad para quienes respondan escriba las razones de sus ideas. Algunas personas sin embargo, encuentran más fácil escoger una de un conjunto de respuestas preparadas que pensar por sí mismas.
    Cuestionario Cerrado
    El cuestionario cerrado limita las respuestas posibles del interrogado. Por medio de un cuidadoso estilo en la pregunta, el analista puede controlar el marco de referencia. Este formato es el método para obtener información sobre los hechos. También fuerza a los individuos para que tomen una posición y forma su opinión sobre los aspectos importantes.

  • La observación: Otra técnica útil para el analista en su progreso de investigación, consiste en observar a las personas cuando efectúan su trabajo. Como técnica de investigación, la observación tiene amplia aceptación científica. Los sociólogos, psicólogos e ingenieros industriales utilizan extensamente ésta técnica con el fin de estudiar a las personas en sus actividades de grupo y como miembros de la organización. El propósito de la organización es múltiple: permite al analista determinar que se está haciendo, como se está haciendo, quien lo hace, cuando se lleva a cabo, cuanto tiempo toma, dónde se hace y por que se hace.Tipos de Observación
    El analista de sistemas puede observar de tres maneras básicas. Primero, puede observar a una persona o actitud sin que el observado se dé cuenta y su interacción por aparte del propio analista. Quizá esta alternativa tenga poca importancia para el análisis de sistemas, puesto que resulta casi imposible reunir las condiciones necesarias. Segundo, el analista puede observar una operación sin intervenir para nada, pero estando la persona observada enteramente consciente de la observación. Por último, puede observar y a la vez estar en contacto con las personas observas. La interacción puede consistir simplemente en preguntar respecto a una tarea específica, pedir una explicación, etc.
    Preparación para la observación
    1. Determinar y definir aquella que va a observarse.
    2. Estimular el tiempo necesario de observación.
    3. Obtener la autorización de la gerencia para llevar a cabo la observación.
    4. Explicar a las personas que van a ser observadas lo que se va a hacer y las razones para ello.
    Conducción de la observación
    1. Familiarizarse con los componentes físicos del área inmediata de observación.
    2. Mientras se observa, medir el tiempo en forma periódica.
    3. Anotar lo que se observa lo más específicamente posible, evitando las generalidades y las descripciones vagas.
    4. Si se está en contacto con las personas observadas, es necesario abstenerse de hacer comentarios cualitativos o que impliquen un juicio de valores.
    5. Observar las reglas de cortesía y seguridad.