miércoles, 6 de diciembre de 2017

Diagrama de estado

Este muestra la secuencia de estados por los que pasa bien un caso de uso, un objeto a lo largo de su vida, o bien todo el sistema. Es una forma de representación gráfica más intuitiva de los autómatas finitos basadas en dígrafos con arcos acotados llamados transiciones en los cuales se ponen los símbolos de tránsito entre un vértice (estado) y otro y se identifican los estados de partida y los de aceptación del resto.


Función
En el diagrama de estados se indica qué eventos hacen que se pase de un estado a otro y cuáles son las
respuestas y acciones que genera. También ilustra qué eventos pueden cambiar el estado de los objetos de la clase. En cuanto a la representación, un diagrama de estados es un grafo cuyos nodos son estados y cuyos arcos dirigidos son transiciones etiquetadas con los nombres de los eventos. Normalmente contienen: estados y transiciones. Como los estados y las transiciones incluyen, a su vez, eventos, acciones y actividades. Al igual que otros diagramas, en los diagramas de estado pueden aparecer notas explicativas y restricciones.


Partes que conforman el Diagrama de Estados:

Estado
  • Un estado se representa como una caja redondeada con el nombre del estado en su interior. Una transición se representa como una flecha desde el estado origen al estado destino. La caja de un estado puede tener 1 o 2 compartimentos. En el primer compartimento aparece el nombre del estado. El segundo compartimento es opcional, y en él pueden aparecer acciones de entrada, de salida y acciones internas.
Eventos
  • Es una ocurrencia que puede causar la transición de un estado a otro de un objeto. Esta ocurrencia puede ser una de varias cosas:
  • Condición que toma el valor de verdadero o falso
  • Recepción de una señal de otro objeto en el modelo

Ventajas

  • El Diagrama de Estados tiene éxito en sistemas interactivos, ya que expresa la intención que tiene el actor (su usuario) al hacer uso del sistema.
  • Como técnica de extracción de requerimiento permite que el analista se centre en las necesidades del usuario, qué espera éste lograr al utilizar el sistema, evitando que la gente especializada.
  • A su vez, durante la extracción (elicitation en inglés), el analista se concentra en las tareas centrales del usuario describiendo por lo tanto los casos de uso que mayor valor aportan al negocio.

Desventajas

  • La inclusión de estas relaciones hace que los diagramas sean más difíciles de leer, sobre todo para los clientes.

Diagrama de colaboración

¿Que es? 
Un Diagrama de Colaboración describe en forma de un gráfico el comportamiento de sistemas, subsistema y operaciones, representando los objetos que intervienen, así como los mensajes que intercambian, enumerados en el tiempo. Un diagrama de colaboración es un tipo de diagrama que muestra las interacciones entre objetos organizadas y enlazados entre ellos.

Los diagramas de colaboración muestran las interacciones que ocurren entre los objetos que participan en una situación determinada. Esta es más o
menos la misma información que la mostrada por los diagramas de secuencia, pero destacando la forma en que las operaciones se producen en el tiempo, mientras que los diagramas de colaboración fijan el interés en las relaciones entre los objetos y su topología.


¿Que representa? 
En cuanto a la representación, un Diagrama de Colaboración muestra a una serie de objetos con los enlaces entre los mismos, y con los mensajes que se intercambian dichos objetos. Los mensajes son flechas que van junto al enlace por el que “circulan”, y con el nombre del mensaje y los parámetros (si los tiene) entre paréntesis. Cada mensaje lleva un número de secuencia que denota cuál es el mensaje que le precede, excepto el mensaje que inicia el diagrama, que no lleva número de secuencia.

Consiste en :
  1. Muestra cómo las instancias específicas de las clases trabajan juntas para conseguir un objetivo común.
  2. Consiste especificar un contrato entre objetos
  3. Implementa las asociaciones del diagrama de clases mediante el paso de mensajes de un objeto a otro. Dicha implementación es llamada "enlace".

Un Diagrama de Colaboración muestra una interacción organizada basándose en los objetos que toman parte en la interacción y los enlaces entre los mismos (en cuanto a la interacción se refiere).
UML –Interacciones

Elementos básicos
  1. Los objetos interactúan entre sí pasándose mensajes.
  2. Los objetos se conectan a través de enlaces.
  3. Objetos o Roles: nodos del grafo.
  4. Enlaces o comunicaciones: arcos del grafo.
  5. Mensajes: llevan número de secuencia y flecha dirigida.
  6. Anidamiento: se utiliza la numeración decimal. ejemplo: 1, 1.1, 1.1.1 ........
  7. Iteración: colocar un * antes del número de secuencia y una cláusula de condición, si es necesario. ejemplo : *[x > 0].
  8. Bifurcación: los cambios alternativos tendrán el mismo número de secuencia, seguido del número de subsecuente, y se deben distinguir por una condición



Fuente imagen:https://www.google.com.mx/search?q=diagrama+de+colaboracion&source=lnms&tbm=isch&sa=X&ved=0ahUKEwj32P3_nvbXAhUH0SYKHYMgAb4Q_AUICigB&biw=1366&bih=647#imgrc=FPBQjZ4q5ZQ-wM:

Diagrama de secuencia

El diagrama de secuencia es un tipo de diagrama usado para modelar interacción entre objetos en un sistema

¿Para que sirve?
Un diagrama de secuencia muestra la interacción de un conjunto de objetos en una aplicación a través del tiempo y se modela para cada caso de uso. A menudo es útil para complementar a un diagrama de clases,
pues el diagrama de secuencia se podría describir de manera informal como "el diagrama de clases en movimiento", por lo que ambos deben estar relacionados entre sí (mismas clases, métodos, atributos...). Mientras que el diagrama de casos de uso permite el modelado de una vista business del escenario, el diagrama de secuencia contiene detalles de implementación del escenario, incluyendo los objetos y clases que se usan para implementar el escenario y mensajes intercambiados entre los objetos.


Tipos de mensaje
Existen dos tipos de mensajes: síncronos y asíncronos. Los mensajes síncronos se corresponden con llamadas a métodos del objeto que recibe el mensaje. El objeto que envía el mensaje queda bloqueado hasta que termina la llamada. Este tipo de mensajes se representan con flechas con la punta rellena. Los mensajes asíncronos terminan inmediatamente, y crean un nuevo hilo de ejecución dentro de la secuencia. Se representan con flechas con la punta hueca.

También se representa la respuesta a un mensaje con una flecha discontinua.
Pueden ser usados en dos formas
  • De instancia: describe un escenario específico (un escenario es una instancia de la ejecución de un caso de uso).
  • Genérico: describe la interacción para un caso de uso. Utiliza ramificaciones ("branches"), condiciones y bucles

Diagrama de clase

Sirve para visualizar las relaciones entre las clases que involucran el sistema, las cuales pueden ser asociativas, de herencia, de uso y de agregación, ya que una clase es una descripción de conjunto de objetos que comparten los mismos atributos, operaciones, métodos, relaciones y semántica; mostrando un conjunto de elementos que son estáticos, como las clases y tipos junto con sus contenidos y relaciones.


Notación de Clase
Las clases se representan por rectángulos que muestran el nombre de la clase y opcionalmente el nombre de las operaciones y atributos. Los compartimientos se usan para dividir el nombre de la clase, atributos y operaciones. Adicionalmente las restricciones, valores iniciales y parámetros se pueden asignar a clases.



Tablas
Una tabla es una clase estereotipada. Esto se dibuja con un pequeño icono de la tabla en la esquina superior derecha. Los atributos de la tabla son «columnas» estereotipadas. La mayoría de las tablas tendrán una clave primaria, siendo uno o más campos los que forman una combinación única usada para acceder la tabla, más una operación de clave primaria que es «PK» estereotipada. Algunas tablas tendrán una o más claves foráneas, siendo uno o más campos que juntos trazan a una clave foránea en una tabla relacionada, más una operación de clave foránea que es «FK» estereotipada.
Atributos y Métodos
Los atributos o características de una clase pueden ser de tres tipos, los que definen el grado de comunicación y visibilidad de ellos con el entorno, estos son:
public (+,): Indica que el atributo será visible tanto dentro como fuera de la clase, es decir, es accsesible desde todos lados.
private (-,): Indica que el atributo sólo será accesible desde dentro de la clase (sólo sus métodos lo pueden accesar).
protected (#,): Indica que el atributo no será accesible desde fuera de la clase, pero si podrá ser accesado por métodos de la clase además de las subclases que se deriven


Ventajas
  1. Genera un código automáticamente.
  2. Propone soluciones a algunos errores.
  3. Representa las relaciones entre las clases de sistema.
  4. Se diseña los componentes de los sistemas.
  5. Se protegen los datos.
  6. Se posibilita una reducción de acoplamiento.
  7. Mas fácil la comunicación entre los programadores, descubrimiento de fallas del sistema en el diseño Mejor diseño del sistema ofrece más documentación.

Desventajas
  1. Los diagramas de clases especifican qué clases hay y cómo están relacionadas, pero no cómo interactúan para alcanzar comportamientos particulares.
  2. El método tiende hacer muy lento.
  3. La instalación es muy costosa

Caso de uso

Un caso de uso es una descripción de los pasos o las actividades que deberán realizarse para llevar a cabo algún proceso. Los personajes o entidades que participarán en un caso de uso se denominan actores. En el
contexto de ingeniería del software, un caso de uso es una secuencia de interacciones que se desarrollarán entre un sistema y sus actores en respuesta a un evento que inicia un actor principal sobre el propio sistema.

Actores
Artículo principal: Actor (UML)

Se le llama actor a toda entidad externa al sistema que guarda una relación con éste y que le demanda una funcionalidad. Esto incluye a los operadores humanos pero también incluye a todos los sistemas externos, además de entidades abstractas, como el tiempo.

En el caso de los seres humanos se pueden ver a los actores como definiciones de rol por lo que un mismo individuo puede corresponder a uno o más Actores. Suele suceder sin embargo, que es el sistema quien va a tener interés en el tiempo.

Tipos de relaciones:

Comunica (<<communicates>>):
Relación (asociación) entre un actor y un caso de uso que denota la participación del actor en dicho caso de uso.

Usa (<<uses>>)  en la nueva versión de UML): Relación de dependencia entre dos casos de uso que denota la inclusión del comportamiento de un escenario en otro.

Extiende (<<extends>>): Relación de dependencia entre dos casos de uso que denota que un caso de uso es una especialización de otro.

UML

UML es una técnica para la especificación sistemas en todas sus fases. Nació en 1994 cubriendo los aspectos principales de todos los métodos de diseño antecesores y, precisamente, los padres de UML son Grady Booch, autor del método Booch; James Rumbaugh, autor del método OMT e Ivar Jacobson, autor de los métodos OOSE y Objectory. La versión 1.0 de UML fue liberada en Enero de 1997 y ha sido utilizado con éxito en sistemas construidos para toda clase de industrias alrededor del mundo.


Los principales beneficios de UML son:
  • Mejores tiempos totales de desarrollo (de 50 % o más).
  • Modelar sistemas (y no sólo de software) utilizando conceptos orientados a objetos.
  • Establecer conceptos y artefactos ejecutables.
  • Encaminar el desarrollo del escalamiento en sistemas complejos de misión crítica.
  • Crear un lenguaje de modelado utilizado tanto por humanos como por máquinas.
  • Mejor soporte a la planeación y al control de proyectos.

UML, ¿Método o Lenguaje de Modelado?

UML es un lenguaje para hacer modelos y es independiente de los métodos de análisis y diseño. Existen diferencias importantes entre un método y un lenguaje de modelado. Un método es una manera explícita de estructurar el pensamiento y las acciones de cada individuo. Además, el método le dice al usuario qué hacer, cómo hacerlo, cuándo hacerlo y por qué hacerlo; mientras que el lenguaje de modelado carece de estas instrucciones. Los métodos contienen modelos y esos modelos son utilizados para describir algo y comunicar los resultados del uso del método.



Fuente de imagen: https://www.google.com.mx/search?q=uml&source=lnms&tbm=isch&sa=X&ved=0ahUKEwi73MWBm_bXAhVG7yYKHbrTDpoQ_AUICigB#imgdii=plwU8v8M4SethM:&imgrc=XwYvkE36nB2gcM:

jueves, 19 de octubre de 2017

Obtención y análisis de requerimientos

Técnicas de recopilación de requisitos. Técnicas que posibilitan que el proceso de recopilación de requisitos se realice de forma más eficiente.

Entrevistas
  • Es la más tradicional de las técnicas de obtención y consiste en reuniones analista-interesado en las cuales se suceden preguntas y respuestas para extraer el dominio de la aplicación (Goguen y Linde,1993).
Técnicas para facilitar las especificaciones de una aplicación (TFEA)
  • Constituye una variación de las entrevistas buscando identificar el problema, proponer elementos de solución, negociar diferentes enfoques y especificar un conjunto preliminar de requisitos de la solución (Pressman, 2005).

Tormenta de ideas (brainstorming)
  • Es una técnica de reuniones en grupo cuyo objetivo es la generación de ideas en un ambiente libre de críticas o juicios. Puede ayudar a generar una gran variedad de vistas del problema y a formularlo de diferentes formas, sobre todo al comienzo del proceso de captura, cuando los requisitos son todavía muy difusos (Raghavan et al., 1994).
Juego de roles
  • En su forma más simple, consiste en que el desarrollador, el analista y cada uno de los miembros del equipo de desarrollo del software toman el lugar del interesado y ejecutan la actividad de trabajo que éste desempeña.
La siguiente etapa del proceso de ingeniería de requerimientos es la obtención y análisis de requerimientos. En esta actividad, los ingenieros de software trabajan con los clientes y los usuarios finales del sistema para determinar el dominio de la aplicación, qué servicios deben proporcionar el sistema, el rendimiento requerido del sistema, las restricciones hardware, etc.

La obtención y análisis de requerimientos pueden afectar a varias personas de la organización. El termino stakeholder se utiliza para referirse a cualquier persona o grupo que se verá afectado por el sistema, directa o indirectamente. Entre los stakeholders se encuentran los usuarios finales que interactúan con el sistema y todos aquellos en la organización que se pueden ver afectados por su instalación. Otros stakeholders del sistema pueden ser los ingenieros de desarrollo o dan mantenimiento a otros sistemas relacionados, los gerentes del negocio, los expertos en el dominio del sistema y los representantes de los trabajadores.

Especificación de requerimientos

Ingeniería de Requisitos, es el proceso de desarrollar una especificación de Software. Las especificaciones pretenden comunicar las necesidades del sistema del cliente a los desarrolladores del sistema. Trata de los principios, métodos, técnicas y herramientas que permiten descubrir, documentar y mantener los requisitos para sistemas basados en computadora, de forma sistemática y repetible.
Actividades

Existen cuatro actividades básicas (extracción, análisis, especificación y validación) que se tienen que llevar a cabo para completar el proceso. Estas actividades ayudan a reconocer la importancia que tiene, para el desarrollo de un proyecto de software, realizar una especificación y administración adecuada de los requisitos de los clientes o usuarios.
  • Extracción: Esta fase representa el comienzo de cada ciclo. Extracción es el nombre comúnmente dado a las actividades involucradas en el descubrimiento de los requisitos del sistema.
  • Análisis: Sobre la base de la extracción realizada previamente, comienza esta fase. Usualmente se hace un análisis luego de haber producido un bosquejo inicial del documento de requisitos; aquí se leen los requisitos, se conceptúan, se investigan, se intercambian ideas con el resto del equipo, se resaltan los problemas, se buscan alternativas y soluciones, y luego se van fijando reuniones con el cliente para discutir los requisitos.
  • Especificación: En esta fase se documentan los requisitos acordados con el cliente, en un nivel apropiado de detalle. En la práctica, esta etapa se va realizando conjuntamente con el análisis, pero se podría decir que la Especificación es el “pasar en limpio” el análisis realizado previamente aplicando técnicas y/o estándares de documentación, como la notación UML.
  • Validación: La validación es la etapa final de la IR. Su objetivo es verificar todos los requisitos que aparecen en el documento especificado para asegurarse que representan una descripción, por lo menos, aceptable del sistema que se debe implementar. Esto implica verificar que los requisitos sean consistentes y que estén completos.

La validación representa un punto de control interno y externo; interno, porque se debe verificar internamente lo que se está haciendo, y externo, porque se debe validar con el cliente.

lunes, 18 de septiembre de 2017

Metodología tradicional

Metodología tradicional 

El origen de la metodología tradicional del desarrollo del software es la metodología de construcción de productos físicos. Esta metodología tradicional del desarrollo del software se caracteriza por:
Basarse en un ciclo de vida de desarrollo del software en cascada ya que organiza los proyectos en etapas que se ejecutan secuencialmente.
Especificación de Requisitos
Análisis
Diseño
Desarrollo
Pruebas
Implantación
Mantenimiento
Algunos de sus inconvenientes son
  • El usuario no ve el producto hasta el final, no puede ir validando hitos intermedios e ir verificando que lo que se ha construido es lo que necesita.
  • Si mi negocio es muy cambiante, pueden variar las necesidades desde el día que se toman los requisitos hasta el día de inicio la construcción
Diferencia entre la ágil

  1. Basadas en normas provenientes de estándares seguidos por el entorno de desarrollo
  2. Cierta resistencia a los cambios
  3. Impuestas externamente
  4. Proceso mucho más controlado, con numerosas políticas/normas
  5. El cliente interactúa con el equipo de desarrollo mediante reuniones
  6. Más artefactos
  7. Más roles
  8. Grupos grandes y posiblemente distribuidos
  9. La arquitectura del software es esencial y se expresa mediante modelos
  10. Existe un contrato prefijado


Metodología ágil

Metodología ágil

La definición moderna de metodología ágil de software evolucionó a mediados de los años 1990 como parte de una reacción contra las metodologías de "peso pesado",muy estructuradas y estrictas, extraídas del modelo de desarrollo en cascada, inicialmente, las metodologías ágiles fueron llamadas metodologías de "peso liviano“.
Permite incorporar cambios con rapidez en el desarrollo de software. Los modelos de gestión tradicionales no sirven para afrontar un reto que hoy en día resulta fundamental: incorporar cambios con rapidez y en cualquier fase del proyecto.
Manifiesto Ágil
Según el Manifiesto se valora:
  • ·         Al individuo y las interacciones del equipo de desarrollo sobre el proceso y las herramientas.
  • ·         Desarrollar software que funciona más que conseguir una buena documentación.
  • ·         La colaboración con el cliente más que la negociación de un contrato.
  • ·         Responder a los cambios más que seguir estrictamente un plan.

Diferencia entre la tradicional
1. Basadas en heurísticas provenientes de prácticas de producción de código
2. Especialmente preparados para cambios durante el proyecto
3. Impuestas internamente (por el equipo)
4. Proceso menos controlado, con pocos principios.
5. El cliente es parte del equipo de desarrollo
6. Pocos artefactos
7. Pocos roles
8. Grupos pequeños (<10 integrantes) y trabajando en el mismo sitio


miércoles, 16 de agosto de 2017

Conditional Modals Maria Ortiz Garcia Maria Berenice Mejía Gonzales Edgar Alegria López

https://drive.google.com/open?id=0B13LrdG6uZgJbk1UZklZRnZhUVE

CIBETIC

El congreso iberoamericano nos brindo a exponentes este realizado en la capital del estado de Querétaro el día 19 de Julio del 2017 en el cual hablo sobre las nuevas tecnologías que vamos a estar viendo en el futuro.



Alguno de los temas de los cuales hablo en la conferencia fue Internet de las cosas (IoT) el cual pues la mayoría de nosotros conocemos acerca de este tema, ya que son todas las cosas o aparatos que en nuestra vida diaria están conectado a Internet como puede ser nuestro teléfono móvil,refrigeradores, libros, termostatos, paquetería, lámparas.Impresoras 3D en la actualidad sabemos que las impresoras 3D ya es algo muy común ya que con ellas podemos hacer impresiones de objetos con plano ya antes diseñado pero lo innovador  es que con esta impresora se podrán imprimir órganos humanos para ayudar así con el trasplante de órganos esto hecho con células madre como si fuera tinta.
También toco el tema sobre los nuevos materiales que serán muy ocupados en el futuro por su buena conductividad y algunas otras características que tendrán que algunos materiales en la actualidad no tiene algunos de estos materiales son:
  • Grafeno
  • Upsalita
  • Espuma de titanio
También el tema del dinero electrónico es muy interesante porque muchas de las cosas que compramos por Internet las podemos pagar por medio de estas monedas Bitcoin esta moneda que es una moneda criptograma pero por el momento no posee la seguridad  para hacer compras con ella.

martes, 15 de agosto de 2017

Auditoria


La auditoría es un tema muy importante ya que con ella se revisan todos los procesos que la empresa posee, en estos procesos se definen cuáles son las actividades que se realizaran y los formatos que se usaran al momento de está cumpliendo estas acciones al momento de la auditoria esta revisada cada uno de esos procesos y si llega a percibe alguna inconformidad esta se anota en la lista de verificación.

También el que juega un rol de alta importancia es el auditor el cual debe de tener una preparación y debe de poseer habilidades algunas de estas habilidades son:
  • Actitud positiva 
  • Saber escuchar 
  • Mente analítica 
  • Capacidad de negociación 
  • Iniciativa 
  • Facilidad de trabajaren equipo 

Su nivel de formación del auditor debe de ser nivel técnico y con conocimiento resultante de la implementación de auditorias en diferentes, con o sin contar con un grado académico.
El proceso de la auditoria debe de tener una lista de verificación en la cual se escriben todas las inconformidades de la auditoria y un plan de auditoria en el cual se escribe los pasos se llevaran a cabo al momento de estas auditando.





Fuente: https://www.google.com.mx/search?q=auditoria&source=lnms&tbm=isch&sa=X&ved=0ahUKEwjp6-ff09rVAhWMOiYKHfQ4De8Q_AUICigB&biw=1366&bih=648#imgrc=R85SJZI9S2_NuM:

lunes, 10 de julio de 2017

Procesos y Procedimientos


Los procesos son una parte muy importante a la hora de la creación de tu empresa ya que en ellos se describen los objetivos y alcanzases que tiene cada uno de esos procedimientos que contiene los procesos, en ellos debes de incluir todos los aspectos que ves y que sean convenientes para tu empresa y no falte alguna área sin que tenga un proceso.
Estos procedimientos están basados en la ISO 9001:2015 con la cual te puede apoyar de esta y saber cuáles son los procedimientos adelantos para tu empresa También dentro de estos procedimientos se habla sobre los formatos utilizaras para la relaciona de esto estos deben de contar con su código para tenerlos claramente identificados y que al momento de la auditoria no surja ningún problema por falta de algún formato, también las auditorias son una parte esencial de los procesos ya que en ellas se detectan fallos dentro de la empresa como que algún proceso no se está cumpliendo correctamente o que en alguna área está faltando algo, el auditor da sus observaciones a ala empres o institucional y esta tiene que trabajar en la mejoras que ya se dieron.


Bibliografia: https://www.google.com.mx/search?q=procedimientos+que+son&source=lnms&tbm=isch&sa=X&ved=0ahUKEwic1NvviYDVAhVLKyYKHZfTDV4Q_AUIBigB&biw=1366&bih=648#tbm=isch&q=iso+9001+2015&imgrc=4dOalHu30ZfQZM:

lunes, 5 de junio de 2017

Unidad  2 Derechos de autor

La parte de proteger tu trabajo es un parte muy importante en el campo de la informática ya que si no lo haces puedes sufrir robo de tu obra por parte de alguna otra persona, porque muchas veces os programas informáticos que algún programador o una empresa crear no están hecho en un día hay proyectos que llevan meses para realizarse y por eso lo mejor sería que los registraras si no quieres que estos caigan en las manos de alguna persona que pueda ganar dinero por tu esfuerzo y si tú no tienes una prueba de que ese programas es de tu propiedad no puedes tomar ninguna acción contra esa persona que lo robo y tu puede ser que lo pierdas por eso esta  página del gobierno mexicano que se llama indautor para que hay puedas dar a conocer tu obra con unos sencillos pasos y un pago muy accesible.

También es este tema entran lo que son los derechos arco que si no sabes que no es la protección de tus datos personales, los más importantes son “Derecho de Acceso”, “Derecho de Rectificación y cancelación”, “Derechos de Oposición” y estos derechos le brindan a las personas poder controlar sus datos personales.


Bibliográfia:
https://www.google.com.mx/search?q=derechos+de+autor&source=lnms&tbm=isch&sa=X&sqi=2&ved=0ahUKEwiY1uLqh6jUAhVGMGMKHeX1AsoQ_AUIBigB&biw=1366&bih=648#imgrc=FRAVa0LUR3AE3M:
Unidad 1 Administración Organización.

La  admiración organización de un proyecto es la parte fundamental de esta ya que en la administración se comienza a ver cómo se va a estructurar los organigramas las funciones de los empleados y como se va a trabajar como equipo de trabajo y que también debe de cumplir con todas las tareas necesarias para que se cumplan lo más perfecto y que los resultados sean los deseados. Para esto hoy en día las empresas deben de tener una organización muy buena ya que de ello dependerán los resultados que desean tener sean los más eficaces también dentro de la administración organización se toca el tema de la misión y la  visión de las empresas estas dos se deben de tener muy en claro ya que son el cómo la empresa se ve en cierto tiempo determinado con metas en 5 años o 10 años están no deben de pasar de ese tiempo  y otra es las acciones que debe de tomar la empresa o mejor dicho hacer para que esta visión se pueda lograr en el tiempo estimado que se puso esto es una de los puntos que más importancia le debes de dar al momento de crear una empresa.


Bibliográfia:
https://www.google.com.mx/search?q=jerarquia+administrativa&source=lnms&tbm=isch&sa=X&sqi=2&ved=0ahUKEwiOzrr9_KfUAhVK-2MKHfw6DwwQ_AUIBigB&biw=1366&bih=672#tbm=isch&q=jerarquia+dibujo&imgrc=Z1OSoVQ96_NLPM:

martes, 4 de abril de 2017

Vídeo proyecto EASYNet Modelos Espiral 

https://www.youtube.com/watch?v=0f_emZqKU6s

Diagramas de clase

¿Sabes que es un diagrama de clase y que se utiliza?
Es una representación gráfica que sirve para representar la estructura de un sistema que será implementado utilizando un lenguaje orientado a objetos.La idea de estos diagramas es representar las clases que tendrá el sistema así como su contenido y sus relaciones con otras clases. La implementación de sistemas medianamente grandes no sería abordable sin este tipo de diagramas, y aunque fuera abordable se tardaría mucho más y sería más fácil cometer errores.

Características principales de los diagramas de clase:

Actor

Un actor es una entidad externa (de fuera del sistema) que interacciona con el sistema participando (y normalmente iniciando) en un caso de uso. Los actores pueden ser gente real (por ejemplo, usuarios del sistema), otros ordenadores o eventos externos.

Visibilidad

Para especificar la visibilidad de un miembro de la clase (es decir, cualquier atributo o método), se coloca uno de los siguientes signos delante de ese miembro:


Relaciones
Una relación es un término general que abarca los tipos específicos de conexiones lógicas que se pueden encontrar en los diagramas de clases y objetos. UML presenta las siguientes relaciones:

  1. Asociación: Las relaciones de asociación representan un conjunto de enlaces entre objetos o instancias de clases. Es el tipo de relación más general, y denota básicamente una dependencia semántica.
  2. Herencia: Las jerarquías de generalización/especialización se conocen como herencia. Herencia es el mecanismo que permite a una clase de objetos incorporar atributos y métodos de otra clase, añadiéndolos a los que ya posee.
  3. Agregación: La agregación es un tipo de relación jerárquica entre un objeto que representa la totalidad de ese objeto y las partes que lo componen. 
  4. Composición. La composición es una forma de agregación donde la relación de propiedad es más fuerte, e incluso coinciden los tiempos de vida del objeto completo y las partes que lo componen.

Asociaciones de clases

Generalización

La herencia es uno de los conceptos fundamentales de la programación orientada a objetos, en la que una clase «recoge» todos los atributos y operaciones de la clase de la que es heredera, y puede alterar/modificar algunos de ellos, así como añadir más atributos y operaciones propias.

Asociaciones

Una asociación representa una relación entre clases, y aporta la semántica común y la estructura de muchos tipos de «conexiones» entre objetos.
Las asociaciones son los mecanismos que permite a los objetos comunicarse entre sí.


Acumulación

Las acumulaciones son tipos especiales de asociaciones en las que las dos clases participantes no tienen un estado igual, pero constituyen una relación «completa». Una acumulación describe cómo se compone la clase que asume el rol completo de otras clases que se encargan de las partes.

Composición

Las composiciones son asociaciones que representan acumulaciones muy fuertes. Esto significa que las composiciones también forman relaciones completas, pero dichas relaciones son tan fuertes que las partes no pueden existir por sí mismas.



Bibliográfia:
https://users.dcc.uchile.cl/~psalinas/uml/modelo
http://instintobinario.com/diagrama-de-clases/
https://docs.kde.org/stable4/es/kdesdk/umbrello/uml-elements.html

Bibliográfia imagenes:
http://www.cyta.com.ar/ta0604/v6n4a1.html
http://neidybeltran95.blogspot.es/
https://chemamegino.wordpress.com/2013/02/04/un-poco-de-uml-agregacion-vs-composicion-en-diagramas-de-clases/

Documentación de investigación con información por la Dra.Ivette Mata

Presentación Proyecto investigación


lunes, 3 de abril de 2017

Introducción a los modelos de desarrollo 

En los modelos para el desarrollo de software tenemos algunos modelos con diferentes características y diferentes punto a documentar algunos los cuales son:
  • Modelo de Cascada
  • Modelo en V
  • Modelo en Flor
  • Prototipos
  • Modelo Espiral
  • Modelo de Procesos
  • Desarrollo Incremental
¿Pero sabes que es un modelo de desarrollo? 
En Ingeniería del Software, un modelo de proceso de desarrollo de software puede verse como una manera de dividir el trabajo en distintas actividades (o el ciclo de vida del producto en distintas fases) con la intención de lograr la mejor gestión y el mejor resultado para el proyecto.

Cascada 

Ciclo de desarrollo de software.

Tiene secuencia ordenada.
El trabajo de una etapa previa es la entrada del
siguiente proceso.
Provee gran control sobre fechas de entrega.
Establece criterios de entrada y salida en cada fase

Modelo en V

-El nivel 1 está orientado al “cliente”. El inicio del proyecto y el fin del proyecto constituyen los dos extremos del ciclo. Se compone del análisis de requisitos y especificaciones, se traduce en un documento de requisitos y especificaciones.
-El nivel 2 se dedica a las características funcionales del sistema propuesto. Puede considerarse el sistema como una caja negra, y caracterizarla únicamente con aquellas funciones que son directa o indirectamente visibles por el usuario final, se traduce en un documento de análisis funcional.
-El nivel 3 define los componentes hardware y software del sistema final, a cuyo conjunto se denomina arquitectura del sistema.
-El nivel 4 es la fase de implementación, en la que se desarrollan los elementos unitarios o módulos del programa.

Modelo en flor 

Los equipos no deben estar preocupados por el proceso de desarrollo mismo. 

Deben de desarrollarse todas las etapas un poco al mismo tiempo hasta que el  producto final es alcanzado.

Modelo prototipos

El modelo de prototipos permite que todo el sistema, o algunos de sus partes, se construyan rápidamente para comprender con facilidad y aclarar ciertos aspectos en los que se aseguren que el desarrollador, el usuario, el cliente estén de acuerdo en lo que se necesita así como también la solución que se propone para dicha necesidad y de esta forma minimizar el riesgo y la incertidumbre en el desarrollo.

Modelo de espiral

Este en especial es el metodo con el cual vamos a desarrolar nuestro programa el cual consiste de 4 principales pasos:

-Determinar o fijar los objetivos. En este paso se definen los objetivos específicos para posteriormente identifica las limitaciones del proceso y del sistema de software, además se diseña una planificación detallada de gestión y se identifican los riesgos. 
-Análisis del riesgo. En este paso se efectúa un análisis detallado para cada uno de los riesgos identificados del proyecto, se definen los pasos a seguir para reducir los riesgos y luego del análisis de estos riesgos se planean estrategias alternativas. 
-Desarrollar, verificar y validar. En este tercer paso, después del análisis de riesgo, se eligen un paradigma para el desarrollo del sistema de software y se lo desarrolla. 
-Planificar. En este último paso es donde el proyecto se revisa y se toma la decisión si se debe continuar con un ciclo posterior al de la espiral. Si se decide continuar, se desarrollan los planes para la siguiente fase del proyecto.

Modelo de proceso



Este modelo así como su nombre lo indica, tiene 2 aspectos que lo definen: el modelado y los procesos.

Modelo
Un modelo es una representación de una realidad compleja. Modelar es desarrollar una descripción lo más exacta posible de un sistema y de las actividades llevadas a cabo en él.
Cuando un proceso es modelado, con ayuda de una representación gráfica (diagrama de proceso), pueden apreciarse con facilidad las interrelaciones existentes entre distintas actividades, analizar cada actividad, definir los puntos de contacto con otros procesos.


Diagramado
Diagramar es establecer una representación visual de los procesos y subprocesos, lo que permite obtener una información preliminar sobre la amplitud de los mismos, sus tiempos y los de sus actividades.
La representación gráfica facilita el análisis, uno de cuyos objetivos es la descomposición de los procesos de trabajo en actividades discretas. También hace posible la distinción entre aquellas que aportan valor añadido de las que no lo hacen, es decir que no proveen directamente nada al cliente del proceso o al resultado deseado.


Modelo desarrollo incremento 

Se evitan proyectos largos y se entrega "algo de valor" a los usuarios con cierta frecuencia.
El usuario se involucra mas.
Difícil de evaluar el costo total.
Difícil de aplicar a los sistemas transaccionales que tienden a ser integrados y a operar como un todo.
Requiere gestores experimentados.
Los errores en los requisitos se detectan tarde.
El resultado puede ser positivo.


Modelo Scrum 

Proceso en el que se aplican de manera regular un conjunto de buenas prácticas para trabajar
colaborativamente, en equipo, y obtener el mejor resultado posible de un proyecto.
En Scrum se realizan entregas parciales y regulares del producto final, priorizadas por el beneficio que aportan al receptor del proyecto.
Este método también es muy utilizado para resolver situaciones en que no se está entregando al cliente lo que necesita, cuando las entregas se alargan demasiado, los costes se disparan o la calidad no es aceptable, cuando se necesita capacidad de reacción ante la competencia, cuando la moral de los equipos es baja y la rotación alta, cuando es necesario identificar y solucionar ineficiencias sistemáticamente o cuando se quiere trabajar utilizando un proceso especializado en el desarrollo de producto.








Bibliográfia:
https://es.wikiversity.org/wiki/Procesos_de_desarrollo_software
http://www.iiia.csic.es/udt/es/blog/jrodriguez/2008/metodologia-desarrollo-sotware-modelo-en-v-o-cuatro-niveles
http://gestionrrhhusm.blogspot.mx/2011/05/modelo-de-prototipo
http://otroblogmas.fullblog.com.ar/modelado-de-procesos
https://procesosoftware.wikispaces.com/Modelo+Incremental
https://proyectosagiles.org/que-es-scrum/
 

Bibliográfia imágenes:
https://josepablosarco.wordpress.com/2012/03/24/istqb-cap-2-testing-a-traves-del-ciclo-de-vida-del-software-i/
https://es.wikipedia.org/wiki/Desarrollo_en_cascada
http://softwareverde.blogspot.mx/2012/09/modelo-en-flor.html
https://www.codejobs.biz/es/blog/2013/06/01/modelo-de-proceso-evolutivo
https://es.wikipedia.org/wiki/Desarrollo_en_espiral
https://ingsotfwarekarlacevallos.wordpress.com/2015/04/29/modelos-de-procesos-especializado/

Fundamentos de la POO

¿Que es la POO?
Metodología de la programación que utiliza a los objetos para programarlos y dar instrucciones cuando se crean, la programación se basa en clases, métodos o funciones, atributos, herencia y polimorfismo, estas características conforman la POO, existen diversidad de lenguajes de programación orientada a objetos.

Estos son los elementos principales que se utilizan en la programación arietado a objetos:

Objeto

Un objeto es una referencia de una clase, es una identidad de programa que contiene datos y todos los
procedimientos que puede manipular los datos, el acceso a estos datos es mediante los métodos y solo estos los pueden manipular o modificar.







Atributo

Son las cosas individuales que diferencian una clase de objetos de otros y determinan la apariencia,
estado y otras cualidades de la clase.
  • Las variables de instancia también denominados miembros dato, son declaradas en la clase pero sus valores son fijados y cambiados en el objeto.
  • Variables de clase: se aplican a la clase y a todas sus instancias





Clase

Plantilla para la creación de objetos de datos según un modelo predefinido. Las clases se utilizan para
representar entidades o conceptos, como los sustantivos en el lenguaje





Encapsulación

Es una técnica que permite guardar y ocultar los detalles de un objeto, esconde los datos y solamente permite acceder a ellos de una manera más controlada.



Abstracción

Son las características especificas de un objeto, aquellas que lo distinguen de los demás tipos de
objetos y que logran definir límites conceptuales respecto a quien está haciendo dicha abstracción del objeto.



Polimorfismo

Se crea de la herencia y es una forma de utilizarla pero que se ejecute independiente de la herencia,
diferentes formas de ejecutar o resultados distintos en base al mismo código.






Herencia

Es una manera por la cual un objeto puede adquirir las propiedades de otro objeto.Las principales
ventajas de la herencia son:
  • Capacidad para definir atributos
  • Métodos nuevos para la subclase
  • Ahorro de código









Este tema es uno de los mas importantes en la investigación ya que con el nos damos cuenta de cuales son los métodos que vamos a ocupar en el proyecto, las clases, los objetos que se van a crear, la herencia y el polimorfismo.








Bibliográfica imagenes:
http://programacion181012.blogspot.mx/
https://desarrolloweb.com/articulos/polimorfismo-programacion-orientada-objetos-concepto.html
https://vcalpena.wordpress.com/clases-y-objetos/
http://programacion-o-o.blogspot.mx/p/blog-page_15.html
http://br.ccm.net/faq/12047-o-que-significa-heranca-o-que-e-polimorfismo

Bibliografia informacion: 
http://www.sc.ehu.es/sbweb/fisica/cursoJava/fundamentos/clases1/clases.htm
https://styde.net/abstraccion-programacion-orientada-a-objetos/
Lara, D. (15 de 03 de 2017). Styde. Obtenido de Styde: https://styde.net/abstraccion-programacion-orientada-a-objetos/
Sanchez, A. A. (15 de 03 de 2017). DesarrolloWeb. Obtenido de https://desarrolloweb.com/articulos/poo-fundamentos-luis-fernandez.html

jueves, 9 de marzo de 2017



Logo de la empresa 


Java es uno de los lenguajes más ocupados en todo el mundo ya que es una plataforma muy sencilla y que puede ser ejecutado en distintos sistemas operativos, los equipos en donde se ejecutan esta aplicación van desde una computadora portátil, un teléfono, una Tablet y varios equipos, Java fue adquirida por la empresa ORACLE,  este lenguaje de programación ocupado en muchos proyectos de programación ya que corre con la plataforma  NetBeans la cual es uno de los programas con el cual desarrollaremos nuestra aplicación , por su fácil manejo del sistema.
Este lenguaje originalmente era para los compiladores de java en máquinas virtuales. Algunos de los siguientes sistemas operativos es donde puedo trabajar correctamente java  como es Windows, Linux, Macintosh, etc. También se podría decir que este programa es muy usado en todo el mundo porque hay dispositivos que depende de que tenga instalado Java para que funcione correctamente si no está Java instalado no se puede hacer bien la tarea 





Bibliográfia: https://www.java.com/es/download/faq/whatis_java.xml
Imagen tomada de: https://es.wikipedia.org/wiki/Java_(lenguaje_de_programaci%C3%B3n)

Técnicas de recolección de datos


Existen diversas técnicas para la recolección de datos, con dichas técnicas y herramientas nos pueden servir para el análisis de los sistemas con esta herramienta lo que se busca es encontrar o entender las necesidades del usuario.
De las herramientas con las que contamos para la recolección de datos esta:
  •         Entrevista: Esta se utiliza para recabar información en forma verbal, a través de preguntas que proponen el análisis, quienes los responden puede ser un empleado o un gerente, estas entrevistas se pueden hacer de forma grupal o de forma individual.
  •         Encuesta: Esta es una técnica de recolección de datos la cual su formato en un conjunto de preguntas la cuales están dirigidas a la población pero en cambio de la entrevista este se usa para obtener opiniones y con ella se pueden hacer estadísticas.
  •          Observación: Esta técnica se utiliza principalmente para observar a las personas y sus actividades de grupo y como se organizan, esto se hace con la finalidad de ver cómo se comporta el personal,como es el proceso en la línea de producción. 


Análisis de requerimiento de software



El análisis de requerimiento se utiliza para el descubrimiento y especificación las necesidades que el
cliente o empresa necesita que la aplicación o software va a realizar, esto tiene que realizarse de una forma correcta ya que si no lo hace de esa forma no habrá perdida de la información o redundancia de esta misma, esta herramienta cuanta de 5 áreas de esfuerzo las cuales son:
  • ·         Reconocimiento del problema
  • ·         Evaluación y síntesis
  • ·         Modelado
  • ·         Especificado revisión

Caso de uso


El caso de uso prácticamente es una descripción de los pasos que deberán realizarse para llevar a cabo algo. Esto en otras palabras seria que a los costados del sistema de tu software van a estar tus actores los cuales pueden ser desde persona, cosas, objetos, no tiene que ser siempre personas las que sean actores, en la parte media va tu sistema en él se contiene las acciones que cada uno de los actores va a realizar, de la parte de la empresa se pondrían lo que la empresa va a ofrecer para que el usuario pueda realizar las actividades o utilice el software.


 Documentación de requisitos


Este es un documento de requerimiento de software que describe detalladamente de lo que el software tiene que realizar, en este requisitos también se documentan los requisitos funcionales y no funcionales del proyecto que determinara cómo funciona el sistema.





-Bibliografia Técnicas de recolección de datos:
Monografia. (1 de Febrero de 2017). Monografias.com. Obtenido de Monografias.com: http://www.monografias.com/trabajos18/recoleccion-de-datos/recoleccion-de-datos.shtml
-Bibliografia Análisis de requerimiento de software:
BRUEGGE. (2 de marzo de 2002). Ingenieria de Software Orienta a Objetos. Obtenido de Ingenieria
de Software Orienta a Objetos: http://www.freelibros.org/ingenieria/ingenieria-de-software-orientado
a-objetos-bernd-bruegge-y-allen-h-dutoit.html}
-Bibliografia Caso de uso:
www-2.dc.uba.ar/. (s.f.). Obtenido de www-2.dc.uba.ar/: http://www
2.dc.uba.ar/materias/isoft1/2001_2/apuntes/CasosDeUso.pdf
-Bibliografia  Documentación de requisitos:
Toro, A. D. (2006). Documentacion de requisitos mediante casos de uso.

miércoles, 15 de febrero de 2017

Protección de datos personales!!

Licenciada Ana esperanza Lopes del castillo
ingeniero Oscar Median Herrera

Hoy en día nosotros contamos con una ley que protege nuestros datos personales la cual fue publicada el 5 de julio de 2010 en el Diario Oficial de la Federación y entró en vigor el 6 de julio de 2010 y este es un derecho de las personas.
este tema es un tema muy importante y a pesar que hay personas que no le dan la importancia que se debe tenemos que tener en cuanta que muchas de nuestra información no sabemos si esta segura y a medida que la tecnológica crece y crece mas rápido estamos cada ves mas expuesto a estos robos de datos personales es mas laborioso la protección de datos.




¿Pero sabes que datos debes proteger?

  • Datos personales que identifiquen a una persona: nombre,fotos,huellas,números de cuanta,teléfono.(Datos generales)
  • Datos mas personales: cuentas de banco,nominas o dueño de alguna casa,carro.(Patrimoniales)
  • Datos que pueden crear discriminación ala persona como puede ser su discriminación,salud,sanguínea,(Datos sensibles)



Ademas muchas veces en la TV o en la radio escuchamos que dicen anuncio de privacidad pero ¿sabes que es es un anuncio de privacidad?


Es un texto en el cual se explica el uso que se le dará los datos al titular de los mismos, y se genera en forma impresa o electrónica (aparece como una liga en una página web). La ley y su reglamento mencionan en varios de sus artículos la forma que tendrá este aviso de privacidad.






La seguridad de la información también juega un rol importante para mantener los principios de las seguridad de la información y datos estos son los principios de seguridad:

  • Confiabilidad:se refiere a que tanto podemos creer en la información que nos brinda una fuente de información.
  • Integridad:Es la propiedad que busca mantener los datos libres de modificaciones no autorizadas.
  • Disponibilidad: Una vez que la información ha sido capturada en un sistema de cómputo, debe ser almacenada de manera segura y estar disponible para los usuarios cuando la necesiten.

Pero ya que hemos visto todo esto de la protección de datos sabes que es un riego?


En arquitectura de computadores, un riesgo es un problema potencial que puede ocurrir en un procesador segmentado. Típica mente los riesgos se clasifican en tres tipos: riesgos de datos, riesgos de salto o de control y riesgos estructurales.

Algunos de los delitos mas comunes de robo de información son:
  • Fraudes cometidos mediante manipulación de computadoras; en este se reúne: la manipulación de datos de entrada (sustraer datos), manipulación de programas (modificar programas del sistema o insertar nuevos programas o rutinas), manipulación de los datos de salida (fijación de un objeto al funcionamiento de sistemas de información, el caso de los cajeros automáticos) y fraude efectuado por manipulación informática (se sacan pequeñas cantidades de dinero de unas cuentas a otras).
  • Manipulación de datos de entrada; como objetivo cuando se altera directamente los datos de una información computarizada. Como instrumento cuando se usan las computadoras como medio de falsificación de documentos.
  • Daños o modificaciones de programas o datos computarizados; entran tres formas de delitos: sabotaje informático (eliminar o modificar sin autorización funciones o datos de una computadora con el objeto de obstaculizar el funcionamiento) y acceso no autorizado a servicios y sistemas informáticos (ya sea por curiosidad, espionaje o por sabotaje).

martes, 31 de enero de 2017

Easyico S.A de S.V


Te estarás preguntando que es Easyico?
  • Easyico es una empresa diseñadora de Software la cual esta trabajando en un proyecto de para la rama de la tecnológica  de la cual son las redes ya que la tecnológica crece de una manera muy rápida y con una interfaz muy sencilla para la configuración en empresas como son router o switch  nuestro Software que sera diseñado en unos próximos meses llevara el nombre de Easyico 1.1 y sera un software gratis para las plataformas de ¡OS y Windows en las versiones mas recientes.