UML Lenguaje de Modelado Unificado Unified Modeling Languaje

Preview:

Citation preview

UML

Lenguaje de Modelado Unificado

Unified Modeling Languaje

Historia: ¿Quien y cuándo?

Booch, Rumbaugh y Jacobson se unieron enRational 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 CompuestaDespliegue, 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.org/wiki/Imagen:Uml_hierarchie_des_diagrammes.png

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 Usousuario 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

línea de vida

actorobjetos

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

nro representa la secuencia temporal

mensaje

Rechazo del pedido

Diagrama de Colaboraciónpedido 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

Nombre del estado

transición, evento

comienzo

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

decisión

actividad

condiciones resultado de completar la actividad

fin

comienzo

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

componente

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 Clasesel cliente compra un produto

HerenciaAsociació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

Tareas en paralelo

Ramificaciones basadas en una Condición

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

No nacido

Menor Soltero

Union de hecho

Viudo

Casado

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

Recommended