Está en la página 1de 37

Curso de UML

Actividad 5 Diagramas de interacción

Dra. Anaisa Hernández González


Realización de los Casos de Uso

Descripción Diagrama de Diagrama de


textual del clases que interacción que
flujo de muestra las muestra la realización
sucesos clases de un flujo particular
participantes del CU en términos de
interacción entre los
Digrama de
objetos
actividades del
flujo de
sucesos
Vista de interacción

Una vista de interacción muestra


el flujo de control requerido que
se establece entre los objetos.
Diagramas de interacción
Diagramas de interacción de UML

¿Cuáles son?

UML define dos Diagramas de Interacción:


 Diagrama de Secuencia
 Diagrama de Comunicación
Diagramas de interacción de UML

¿Para qué se utilizan?

Muestran como los objetos se


comunican unos con otros para
satisfacer los requerimientos.
Componentes

•Actores y Objetos de
las clases,

•Eventos

•Orden de los eventos


Reglas básicas para elaborarlos

• Un diagrama por cada caso de uso


• Si el diagrama es grande, dividirlo
• Diseñe los diagramas de interacción
utilizando la descripción de casos de
uso.
¿Cómo nombrar los eventos?
• Denominarse en el nivel de propósito y no el medio
físico de entrada o de elementos de la interfaz.
• Comenzar con verbos en infinitivo.
• Captar el propósito de la operación y no
pronunciarse respecto a las decisiones de diseño
sobre una interfaz TerminarVenta -
PresionarEnter.
• Expresar las operaciones procurando alcanzar el
nivel más alto o la meta final.
¿Cómo nombrar los eventos?
IntroducirImporteOfrecido(Monto)
IntroducirPago(Monto)
EfectuarPago(Monto)

EfectuarPago(Monto)
Cada vez mejor!
Importante:
Describir el
Propósito
Mensajes
• Los eventos contienen mensajes.
• Un mensaje desencadena una acción en el objeto
destinatario.
• Un mensaje se envía si han sido enviados los
mensajes de una lista (sincronización):

A.1, B.3 / 1:Mensaje


B
A

Mensaje()
Tipos de Mensajes
• Sincrónicos: el que envía espera por la respuesta que
retorna el que recibe.

• Asincrónicos: el que envía puede estar haciendo otras


cosas, no necesita esperar por la respuesta.

• Retorno de mensaje:

<<create>>
• Creación de un objeto: P1:Class

<<destroy>>
• Destrucción:
Diagramas de interacción
Explica gráficamente las interacciones
existentes entre las instancias de las
clases
(habitualmente de un solo caso de uso)

Diagramas de Diagramas de
secuencia comunicación
Diagramas de comunicación vs.
Diagrama de secuencia
Mensaje de :Sistema
↓ Mensaje1()
:Instancia Clase B

:Instancia Clase A 1:Mensaje2()

Mensajes 1.1:Mensaje3()↓

2:Mensaje4()↓

:Instancia Clase D :Instancia Clase C

Dirección del
Instancia mensaje
Diagramas de comunicación vs.
Diagrama de secuencia
:Instancia :Instancia :Instancia :Instancia
Clase A Clase B Clase C Clase D

Mensaje1()
Mensaje2()

Mensaje3()

Mensaje4()

(Habilidad para representar el paso del tiempo gráficamente)


(Se pierde claridad cuando hay mensajes condicionales)
Diagramas de comunicación vs.
Diagrama de secuencia
 El Diagrama de Secuencia es más
adecuados para observar la perspectiva
cronológica de las interacciones
 El Diagrama de Comunicación ofrece una
mejor visión espacial mostrando los
enlaces de comunicación entre objetos
 El Diagrama de Comunicación puede
obtenerse automáticamente a partir del
correspondiente Diagrama de Secuencia (o
viceversa)
Diagramas de secuencia
Diagramas de secuencia

Describen las interacciones en una especie de


formato de cerca o muro

:ClaseA :ClaseB
mensaje1 ()
mensaje2 ()

mensaje3 ()

Capturan el comportamiento dinámico


(orientado al tiempo)
Diagrama de secuencia para
cada caso de uso

;Sis tem a
: Actor 1 : Actor 2

Ope ración 1 () Tiempo que dura


la activación de
Operación 2 ()
un procedimiento
en un objeto que
Operación 3 ()
da respuesta a un
mensaje
Orden
cronológico de la
ocurrencia de
Línea discontinua muestra el tiempo eventos
que existe un objeto o actor.
Destrucción del objeto
Heurísticas para el trazado del
Diagrama de secuencia
Actor Objeto frontera Objeto control Resto de los objetos
que inicia que usa el actor que maneja al de los diferentes tipos
el CU para iniciar el CU CU que describe la
funcionalidad
¿Cómo usar los objetos en los
diagramas?
• Una línea de vida puede representar un objeto o su
clase. Usualmente representa los objetos de una
clase.
• Los objetos pueden no nombrarse, pero deben
nombrarse si usted quiere discriminar diferentes
objetos de una misma clase.
• Varias líneas de vida en el mismo diagrama pueden
representar diferentes objetos de una misma clase,
pero los objetos tienen que nombrarse de manera
diferente.
¿Cómo construir eficazmente los
diagramas de secuencia?
Codificarse De modo
Pueden Explicarse
metódico
Aplicarse La forma de
entender y utilizar
los principios de diseño
se basa en

Directrices y principios estructurados


que describen un problema común y
entregan una buena solución ya
probada a la que le dan un nombre.
Patrones de diseño

Ayuda a diseñar Ayuda a construir Facilita la


correctamente problemas documentación
en menos tiempo reutilizables

• “UML y patrones”, Craig Larman


• “Design Patterns”, Erich Gamma, Richard
Helm, John Vlissides and Ralph Johnson
Directrices en la creación del
diagrama de secuencia

1. Representar los actores y la clase


interfaz del sistema que recibe las
acciones del usuario (Menú).
2. Seleccionar la clase controladora que se
encargue del mensaje de las
operaciones del sistema.
Directrices en la creación del
diagrama de secuencia
3. Aplicar el principio de separación de
modelo-vista.
♦No compete a los objetos del dominio
comunicarse con los objetos de la
interfaz, lo hacen las controladoras.
4. Revisar las postcondiciones que se
describieron para ese caso de uso, de
manera que se garanticen.
Diagramas de secuencia
Se pueden representar estructuras de control:
• LAZO: Un conjunto de mensajes que se
repiten .
• ALTERNATIVA: Caminos alternativos en
la ejecución de los mensajes.
Diagrama de secuencia
Ejemplo

Jefe de obra Económico

Aprobar/rechazar proyecto
Evaluar un proyecto
económicamente
Evaluar un proyecto
técnicamente
Diagrama de secuencia
Ejemplo: CUS Aprobar/Rechazar proyecto
: Maestro de
: Jefe de obra: CI-Menú : CC-Aceptar/Rechazar : CI-Aceptar/ Rechazar : Proyecto
proyectos
proyecto
Aceptar/Rechazar un proyecto( )
Ac eptar/Rec hazar proyecto( ) Proyectos:=Obtener todos los proyectos evaluados técnica y económicamente( )

Proyec to:=Obtener datos del proyect o( )

Técnicamente:=Verificar si está evaluado técnicamente( )

Solo se devuelven
Económicamente:=Verificar si está evaluado económicamente( )
los datos si el tiene
ambas evaluaciones

Mostrar todos los proyectos(Proyectos )

Indica resultados de análisis de un proyecto( )

Regist rar Aceptación/ Rechazo( Proyect o,Acept ación/ Rechazo)


Si no es el
Registrar Aceptación/Rechazo( Proyecto,Aceptación/Rechazo) proyecto, no se
cambia el estado
Cambiar estado( Proyecto,Aceptación/Rechazo)

Verificar si es proyect o(Proyecto )

Cambiar estado( Aceptado)

Cambiar estado( Rechazado)

Se ejecuta uno u
otro método
Diagrama de clases antes de
construir el Diagrama de interacción

Jefe de obra CI-Menú CC-Aceptar/Rechazar CI-Aceptar/Rechazar


proyecto

Maestro de
proyectos
0..n
Proyecto
Diagrama de clases después de
construir el Diagrama de interacción

CC-Aceptar/Rechazar proyecto
Jefe de obra CI-Menú

Aceptar/Rechazar proyecto()
Aceptar/Rechazar un proyecto() Registrar Aceptación/Rechazo()

Maestro de proyectos

opname() CI-Aceptar/Rechazar
Obtener todos los proyectos evaluados téc nica y económicamente()
Registrar Acept ación/Rechaz o()
Mostrar todos los proyectos()
Indica resultados de análisis de un proyecto()

0..n

Proyecto

Obtener datos del proyecto()


Verificar si está evaluado técnicamente()
Verificar si está evaluado económicamente()
Cambiar estado()
Verificar si es proyecto()
Cambiar estado()
Diagramas de comunicación
Diagrama de comunicación
 Son útiles en la fase exploratoria para
identificar objetos.
 Representa la forma en que los objetos
interactúan y las conexiones necesarias para
soportar esta interacción.

2:mensaje2 ()
1:mensaje1 ()
3:mensaje3 ()
:ClaseA :ClaseB

Capturan el comportamiento dinámico


(orientado a los mensajes)
Diagrama de comunicación
 La distribución de los objetos en el diagrama
permite observar adecuadamente la interacción
de un objeto con respecto de los demás.
 La estructura estática viene dada por los
enlaces; la dinámica por el envío de mensajes
por los enlaces.
2:mensaje2 ()
1:mensaje1 ()
3:mensaje3 ()
:ClaseA :ClaseB

Capturan el comportamiento dinámico


(orientado a los mensajes)
Diagrama de comunicación

primer mensaje primer mensaje interno

parámetros

mensaje1(parametros) 1: mensaje1(parametros)
:InstClaseA :InstClaseB

instancia 1.1: mensaje1(parametros)


línea enlace

mensaje anidado
dirección mensaje :InstClaseC
Diagrama de comunicación
Ejemplo: CUS Aprobar/Rechazar proyecto

También podría gustarte