Lenguaje de Modelado Unificado Unified Modeling Languaje UML Lenguaje de Modelado Unificado Unified Modeling Languaje
Historia: ¿Quien y cuándo? Booch, Rumbaugh y Jacobson se unieron en Rational Software Corporation para elaborar el estándar. La idea fue rescatar las características más convenientes de cada una de las corrientes disponibles, unificarlas y extenderlas bajo el nombre de UML (Unified Modeling Language). La versión 1.0 de UML fue liberada al mercado y aprobada por el OMG (Object Management Group) en 1997.
¿Qué es UML? UML herramienta gráfica que permite modelar los sistemas desarrollados usando OO La clave es identificar los elem del problema que producen o consumen info y describir la relación entre los elem. Los ing en Sist usan varios tipos de modelos durante el análisis y diseño
¿Qué es UML? cont Es un lenguaje para la visualización, especificación y documentación de sist, Es independiente del modelo de proceso que se utilice para el desarrollo Es una notación y no un mét pues no especifica un proceso, describe el resultado de alguna etapa de desarrollo mediante una serie de diagramas Se centra en los objetos más que en los procesos
Diagramas de Estructura Enfatizan en los elementos que deben existir en el sistema modelado indep del tiempo. Diagramas de: Clases Componentes, representan componentes de software Objetos: conj de obj en un t con sus estados y relaciones Estructura Compuesta Despliegue, componentes de hardware procesadores y dispositivos Paquetes
Diagramas de comportamiento Enfatizan en lo que debe suceder en el sistema modelado. Diagrama de: Actividades: flujo de control entre los obj, centrado en las actividades y no en los objetos Casos de Uso: fc del sist desde el pto de vista del usuario Estados: representan el comportam. dinámico de un obj, estados, transiciones y eventos
Diagramas de Interacción Subtipo de diagramas de comportamiento, que enfatiza sobre el flujo de control y de datos entre los elementos del sistema modelado. Diagrama de: Secuencia: representación temporal de los obj y sus interacciones Comunicación /Colaboración: privilegia las relaciónes entre los objetos Tiempos: mostrar cambios de estado de un obj en el t (UML 2.0)
Diagramas Organización Jerárquica http://es. wikipedia
Modelos De Datos: describen obj atributos y relaciones Funcionales: muestran como los datos se transforman a medida que fluyen en el sist Comportamiento: muestran las acciones tomadas por el sist en respuesta a los eventos Arquitectura: muestra la rel entre las componenetes de hard y de software necesarias para implementar el sist completo
Caso Máquina expendedora de un producto: La máquina acepta una sola moneda y entrega un producto No da vuelto Si la moneda está mal o si no hay producto la máquina devuelve la moneda al cliente El propietario de la máquina retira las monedas y abastece el producto
Diagrama de Casos de Uso usuario o actor usuario tarea caso opcional o excepcional <<uses>> casos de uso usados por subsistemas
Diagrama de Casos de Uso Modela los requerimientos funcionales Muestran como el usuario interactúa con el sistema (cliente, comerciante) Un diagrama puede incluir varios escenarios Escenario: es una instancia de caso de uso para un actor en particular en un momento determinado, con datos específicos Ayudan a realizar las pruebas del sistema Son independientes de la interfase que se empleará
Diagrama de Secuencia objetos actor línea de vida activación mensaje retorno diferido en el tiempo
Diagrama de Secuencia Modela el comportamiento del sist para los casos de uso mostrando la interelación entre las clases Muestran la secuencia temporal de los mensajes que se intercambian a medida que los objetos se comunican para realizar una tarea específica Permite visualizar los mét, las clases y los actores No se incluyen bifurcaciones se hace un diagrama para cada caso
Diagrama de Colaboración Rechazo del pedido mensaje nro representa la secuencia temporal
Diagrama de Colaboración pedido exitoso
Diagrama de Colaboración Muestran los mensajes que pasan a través del sist Se focalizan en los roles que cumplen los obj para realizar la función del sist Se usan para representar partes del diseño y son útiles para verificar los diagramas de clase
Diagrama de Estados comienzo Nombre del estado transición, evento fin
Diagrama de Estados Modelo dinámico que muestra los cambios de estado a través del tiempo El estado se determina evaluando los valores asignados a los atributos de los objetos El sistema permanece en un estado hasta que se produce un nuevo evento Muestran los cambios en el estado del sist o de los atributos del objeto en respuesta a algún evento externo asociado a un mensaje recibido Por lo tanto, a que eventos responde Pueden mostrar las secuencias de estado que un objeto toma
Diagrama de Actividades comienzo decisión actividad condiciones resultado de completar la actividad fin
Diagrama de Actividades Muestran el flujo de trabajo entre los objetos o componentes del sistema Pueden mostrar flujo de datos (intercambio de infomación) y flujo de control (orden de operación) Las actividades representan la ejecución de un conj de tareas necesarias para realizar una función La transición a una nueva actividad se dispara cuando se completa la función. Similares a los de estado, excepto que las transiciones se disparan por eventos internos Permiten visualizar las interelaciones e interacciones entre diferentes casos de uso
Diagrama de Componentes dirección del flujo de info dependencia entre componentes interfase:
Diagrama de Componentes Muestra las relaciones entre los componentes de software o del sistema Relaciones: dependencias, comunicaciones, ubicación e interfase. Análogo físico al diagrama de clases Interfase: describe un grupo de operaciones usadas o creadas por el componente
Diagrama de Despliegue conexión física
Diagrama de Despliegue Describen las fuentes físicas del sistema incluyendo nodos, componentes y conecciones Muestran la relación entres las componentes de software y hardware Gralmente se combinan con los de componentes en un sólo diagrama de despliegue
Diagrama de Clases el cliente compra un produto Herencia Asociación
Composición
Ej. Diag. de clases con interfase
Diagrama de Clases Se usa para para crear modelos lógicos del sistema Muestra la estructura de la clase, contenido y la relación entre las clases. Relaciones: línea conectando los nodos relacionados Clases: nodos. Tipo de relación: nombre y multiplicidad (* 1 o más) Relación de parte: agregación en UML rombo Relación de herencia: generalización en UML, triángulo señalando a la superclase
Pedido de saldo en un Cajero: diag de Secuencia
Extracción en cajero: Actividades Ramificaciones basadas en una Condición Tareas en paralelo
Ajedrez: Diag de estado
Enunciado 1 Hacer un diagrama de estado que muestre los estados civiles de una persona a lo largo de su ciclo de vida, desde antes de su concepción hasta el fallecimiento.
Estados civiles: Estados Menor Viudo Soltero Casado No nacido Union de hecho Divorciado Fallecido
Enunciado 2 Hacer los diagramas de casos de uso, actividades, de clases y de secuencia del proceso de anotación de un alumno en las materias de un postgrado. Hipotesis: cada alumno podrá anotarse en varios cursos, para los cuales habrá que verificar que tenga aprobadas las correlativas. En una segunda etapa, el profesor del curso y el coordinador del postgrado evaluarán la situación del alumno y aprobarán o no la solicitud