Академический Документы
Профессиональный Документы
Культура Документы
Ingeniera de Sistemas
ESTRUCTURA
7. D. CASOS DE USO
COMPORTAMIENTO
8. D. ACTIVIDADES 9. D. ESTADOS
10
D. SECUENCIA
D. COMUNICACIN (COLABORACION)
INTERACCION
11
Diagramas de Interaccin
Interaccin
Los objetos interactan para realizar colectivamente los servicios ofrecidos por las aplicaciones. Los diagramas de interaccin muestran cmo se comunican los objetos en una interaccin Existen dos tipos de diagramas de interaccin: los diagramas de colaboracin y los diagramas de secuencia
Diagramas de interaccin
Los Diagramas de Secuencia estn bien adaptados para representar interacciones. Los Diagramas de Colaboracin se prestn ms al descubrimiento de abstracciones pues permite representar los objetos en una disposicin prxima a la realidad.
Es frecuente empezar por uno de Colaboracin y pasar despus a Secuencia.
Diagramas de Secuencia
Diagramas de Secuencia
Muestra la secuencia cronolgica de mensajes entre objetos durante un escenario concreto Cada objeto viene dado por una barra vertical El tiempo transcurre de arriba abajo Cuando existe demora entre el envo y la atencin se puede indicar usando una lnea oblcua
Diagramas de Secuencia
Un ejemplo:
A B C
m1
m2 m3
m4 m5
Diagramas de Secuencia
Utilidad del Diagrama de Secuencia:
Para la documentacin de un Caso de Uso: en trminos prximos al usuario y sin detallar la sincronizacin existente Para la representacin precisa de las interacciones entre objetos
Diagramas de Secuencia
Ejemplo
Qu ien ll am a Lnea telefnic a Llamad o
des c uelga
tono
mar c ar
Las bandas rectangulares representan los periodos de actividad de los objetos Linea de Vida
tim bre
des c uelga
diga?
Diagramas de Secuencia
Un objeto puede enviarse a s mismo un mensaje:
a
Puede representar tambin la entrada por parte del objeto en cierta actividad de ms bajo nivel
Diagramas de Secuencia
Grficamente tambin se puede indicar cundo el mensaje es para crear el objeto (va dirigido al rectngulo del objeto o etiquetado con new) o para destruirlo (va dirigido a la lnea del objeto pero el final de la flecha es una cruz)
Diagramas de Secuencia
Normalmente no es necesario indicar el retorno del control:
a b
Diagrama de Secuencia
En el caso asncrono el retorno, si existe, se debe representar:
a : aa b : aa
Tipos de Control
El Diagrama de Secuencia refleja de manera indirecta las opciones de control
Tipos de control
Un control descentralizado tiene una forma como esta:
Estructuras de control
Podemos representar iteraciones en el envo de mensajes mientras, p.e., se cumpla una condicin:
Estructuras de control
La iteracin puede expresarse tambin como parte del mensaje:
Estructuras de control
Las bifurcaciones condicionales pueden representarse de esta forma:
Resumen
Tipos de Lnea de mensaje:
Simple representa el envo de un mensaje sencillo de un objeto a otro, dentro de la secuencia Sncrono Envio de mensaje de un objeto, pero el objeto que enva el mensaje espera la respuesta para seguir su flujo. Asncrono Envio de mensaje de un objeto, no importando que el objeto emisor tenga que esperar la respuesta para continuar su flujo.
... Resumen
Foco de control:
Inicio de tiempo Fin de tiempo
Es la barra que se inicia sobre la lnea de vida de los objetos que interviene en la secuencia, donde representa al foco de control para indicar el desplazamiento en el tiempo. Mensaje recursivo, cuando un mensaje recae sobre el mismo objeto
Ejemplo
boundary control entity
: Administrador
: InicioSecion
: Acceso
: Usuario
Diagramas de Colaboracin
Diagramas de Colaboracin
Son tiles en la fase exploratoria para identificar objetos La distribucin de los objetos en el diagrama permite representar una disposicin espacial La estructura esttica viene dada por los enlaces; la dinmica por el envo de mensajes por los enlaces
Diagramas de Colaboracin
El contexto de una interaccin comprende los argumentos, las variables locales creadas en ejecucin y los enlaces entre los objetos que participan en la interaccin La colaboracin es mediante el intercambio de mensajes
Mensajes
Un mensaje desencadena una accin en el objeto destinatario. Un mensaje se enva si han sido enviados los mensajes de una lista (sincronizacin):
1: A .1, B .3 / M ens aje B
Mensajes
Un mensaje se enva iterada y secuencialente a un conjunto de instancias:
1 : * [i:= 1 ..n ] : Me n s a je B A
Mensajes
Un mensaje se enva iterada y concurrentemente a un conjunto de instancias:
1 : * | | [i:= 1 ..n ] : Me n s a je B A
Mensajes
Un mensaje se enva de manera condicionada:
1 : [x> y]: Me n s a je B A
Mensajes
Un mensaje que devuelve un resultado:
1 : p : = cu es t i n B A
Mensajes
Los argumentos de un mensaje pueden ser valores obtenidos como consecuencia de las llamadas anteriores Los argumentos pueden ser tambin expresiones de navegacin construidas a partir del objeto cliente
Los argumentos pueden omitirse en el diagrama
Ejemplo
2: 1: ingresa usuario y clave 6: datos cliente
: Administrador
4: permisos de acceso
: Usuario
: Acceso