tema 09 - diagramas de interaccion, uml.ppt

33
Facultad de Ingeniería Facultad de Ingeniería EAP. Ingeniería de Sistemas EAP. Ingeniería de Sistemas Ing. CIP. Eddy Iván Quispe Ing. CIP. Eddy Iván Quispe Soto Soto

Upload: castroyovanny1

Post on 03-Jan-2016

87 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: Tema 09 - Diagramas de interaccion, UML.ppt

Facultad de IngenieríaFacultad de IngenieríaEAP. Ingeniería de SistemasEAP. Ingeniería de Sistemas

Ing. CIP. Eddy Iván Quispe SotoIng. CIP. Eddy Iván Quispe Soto

Page 2: Tema 09 - Diagramas de interaccion, UML.ppt

Enfoques de UML 2.0 - 2.1 Enfoques de UML 2.0 - 2.1

ESTRUCTURAESTRUCTURA

COMPORTAMIENTOCOMPORTAMIENTO

INTERACCIONINTERACCION

1. D. CLASES

2. D. OBJETOS

3. D. COMPONENTES

4. D. DESPLIEGUE

5. D. PAQUETES

6. D. ESTRUCTURA COMPUESTA

7. D. CASOS DE USO

8. D. ACTIVIDADES

9. D. ESTADOS

10 D. SECUENCIA

11 D. COMUNICACIÓN (COLABORACION)

12. D. VISION GENERAL( OverView)

13 D. TIEMPO

Page 3: Tema 09 - Diagramas de interaccion, UML.ppt

Diagramas de InteracciónDiagramas de Interacción

Page 4: Tema 09 - Diagramas de interaccion, UML.ppt

InteracciónInteracción Los objetos interactúan para realizar

colectivamente los servicios ofrecidos por las aplicaciones. Los diagramas de interacción muestran cómo se comunican los objetos en una interacción

Existen dos tipos de diagramas de interacción: los diagramas de colaboración y los diagramas de secuencia

Page 5: Tema 09 - Diagramas de interaccion, UML.ppt

Diagramas de interacciónDiagramas de interacción Los Diagramas de Secuencia están bien

adaptados para representar interacciones.

Los Diagramas de Colaboración se prestán más al descubrimiento de abstracciones pues permite representar los objetos en una disposición próxima a la realidad.

Es frecuente empezar por uno de Colaboración y pasar después a Secuencia.

Page 6: Tema 09 - Diagramas de interaccion, UML.ppt

Diagramas de SecuenciaDiagramas de Secuencia

Page 7: Tema 09 - Diagramas de interaccion, UML.ppt

Diagramas de SecuenciaDiagramas de Secuencia Muestra la secuencia cronológica 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 envío y

la atención se puede indicar usando una línea oblícua

Page 8: Tema 09 - Diagramas de interaccion, UML.ppt

… … Diagramas de SecuenciaDiagramas de Secuencia

Un ejemplo:

CBA

m1

m2

m3

m4

m5

Page 9: Tema 09 - Diagramas de interaccion, UML.ppt

… … Diagramas de SecuenciaDiagramas de Secuencia

Utilidad del Diagrama de Secuencia:

– Para la documentación de un Caso de Uso: en términos próximos al usuario y sin detallar la sincronización existente

– Para la representación precisa de las interacciones entre objetos

Page 10: Tema 09 - Diagramas de interaccion, UML.ppt

… … Diagramas de SecuenciaDiagramas de Secuencia

Ejemplo Q u ie n ll a m a L ín e a t e le fó n ic a L la m a d o

d e s c u e lg a

t o n o

m a r c ar

in d ic a c ió n d e l la m a d a t im b re

d e s c u e lg a

d ig a ?

Q u ie n ll a m a L ín e a t e le fó n ic a L la m a d o

d e s c u e lg a

t o n o

m a r c ar

in d ic a c ió n d e l la m a d a t im b re

d e s c u e lg a

d ig a ?

Las bandas rectangulares representan los periodos de actividad de los objetos

Linea de Vida

Page 11: Tema 09 - Diagramas de interaccion, UML.ppt

… … Diagramas de SecuenciaDiagramas de Secuencia

Un objeto puede enviarse a sí mismo un mensaje:

a

m e ns a je ref le x iv o

a

m e ns a je ref le x iv oPuede representar también la entrada por parte del objeto en cierta actividad de más bajo nivel

Page 12: Tema 09 - Diagramas de interaccion, UML.ppt

… … Diagramas de SecuenciaDiagramas de Secuencia

• Gráficamente también se puede indicar cuándo el mensaje es para crear el objeto (va dirigido al rectángulo del objeto o etiquetado con new) o para destruirlo (va dirigido a la línea del objeto pero el final de la flecha es una cruz)

Page 13: Tema 09 - Diagramas de interaccion, UML.ppt

… … Diagramas de SecuenciaDiagramas de Secuencia

Normalmente no es necesario indicar el retorno del control:

a b

E l re t o rn o s e

c o n s id e ra im p l íc i t o

c u a n d o e l e n vío e s

s ín c ro n o

a b

E l re t o rn o s e

c o n s id e ra im p l íc i t o

c u a n d o e l e n vío e s

s ín c ro n o

Page 14: Tema 09 - Diagramas de interaccion, UML.ppt

… … Diagrama de SecuenciaDiagrama de Secuencia

En el caso asíncrono el retorno, si existe, se debe representar:

a : a a b : a aa : a a b : a a

Page 15: Tema 09 - Diagramas de interaccion, UML.ppt

Tipos de ControlTipos de Control

El Diagrama de Secuencia refleja de manera indirecta las opciones de control

Un control centralizado tiene una forma como esta:

Page 16: Tema 09 - Diagramas de interaccion, UML.ppt

… … Tipos de controlTipos de control

Un control descentralizado tiene una forma como esta:

Page 17: Tema 09 - Diagramas de interaccion, UML.ppt

… … Estructuras de controlEstructuras de control

Podemos representar iteraciones en el envío de mensajes mientras, p.e., se cumpla una condición:

W h ile X

L o o p

e n d L o o p

W h i le X

L o o p

e n d L o o p

Page 18: Tema 09 - Diagramas de interaccion, UML.ppt

… … Estructuras de controlEstructuras de control

La iteración puede expresarse también como parte del mensaje:

* [ c o n d ic ió n ] M e n s a je* [ c o n d ic ió n ] M e n s a je

Page 19: Tema 09 - Diagramas de interaccion, UML.ppt

… … Estructuras de controlEstructuras de control

Las bifurcaciones condicionales pueden representarse de esta forma:

If c o n d ic ió n

e ls e

e n d i f

If c o n d ic ió n

e ls e

e n d i f

Page 20: Tema 09 - Diagramas de interaccion, UML.ppt

ResumenResumenTipos de Línea de mensaje:

Simple representa el envío de un mensaje sencillo de un objeto a otro, dentro de la secuencia

SíncronoEnvio de mensaje de un objeto, pero el objeto que envía el mensaje espera la respuesta para seguir su flujo.

AsíncronoEnvio de mensaje de un objeto, no importando que el objeto emisor tenga que esperar la respuesta para continuar su flujo.

Page 21: Tema 09 - Diagramas de interaccion, UML.ppt

... Resumen... Resumen

Es la barra que se inicia sobre la línea de vida de los objetos que interviene en la secuencia, donde representa al foco de control para indicar el desplazamiento en el tiempo.

Foco de control:

Inicio de tiempo

Fin de tiempo

Mensaje recursivo, cuando un mensaje recae sobre el mismo objeto

Fin de Línea de Vida

Page 22: Tema 09 - Diagramas de interaccion, UML.ppt

EjemploEjemplo

: Administrador : Administrador : InicioSecion : InicioSecion : Acceso : Acceso : Usuario : Usuario

ingresa usuario y clave

envio datos de acceso

permisos de acceso

confirma el acceso

: Administrador : Administrador : InicioSecion : InicioSecion : Acceso : Acceso : Usuario : Usuario

ingresa usuario y clave

envio datos de acceso

permisos de acceso

confirma el acceso

boundary

control entity

Page 23: Tema 09 - Diagramas de interaccion, UML.ppt

Diagramas de ColaboraciónDiagramas de Colaboración

Page 24: Tema 09 - Diagramas de interaccion, UML.ppt

Son útiles en la fase exploratoria para identificar objetos

La distribución de los objetos en el diagrama permite representar una disposición espacial

La estructura estática viene dada por los enlaces; la dinámica por el envío de mensajes por los enlaces

Diagramas de ColaboraciónDiagramas de Colaboración

Page 25: Tema 09 - Diagramas de interaccion, UML.ppt

… … Diagramas de ColaboraciónDiagramas de Colaboración

El contexto de una interacción comprende los argumentos, las variables locales creadas en ejecución y los enlaces entre los objetos que participan en la interacción

La colaboración es mediante el intercambio de mensajes

Page 26: Tema 09 - Diagramas de interaccion, UML.ppt

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

B1 : A . 1 , B . 3 / M e n s a je

A

B1 : A . 1 , B . 3 / M e n s a je

MensajesMensajes

Page 27: Tema 09 - Diagramas de interaccion, UML.ppt

Un mensaje se envía iterada y secuencialente a un conjunto de instancias:

A

B

1 : * [i := 1 ..n ] : M e n s a je

A

B

1 : * [i := 1 ..n ] : M e n s a je

… … MensajesMensajes

Page 28: Tema 09 - Diagramas de interaccion, UML.ppt

Un mensaje se envía iterada y concurrentemente a un conjunto de instancias:

A

B

1 : * | | [ i := 1 ..n ] : M e n s a je

A

B

1 : * | | [ i := 1 ..n ] : M e n s a je

… … MensajesMensajes

Page 29: Tema 09 - Diagramas de interaccion, UML.ppt

Un mensaje se envía de manera condicionada:

A

B

1 : [x> y]: M e n s a je

… … MensajesMensajes

Page 30: Tema 09 - Diagramas de interaccion, UML.ppt

Un mensaje que devuelve un resultado:

A

B

1 : p : = c u e s t ió n

A

B

1 : p : = c u e s t ió n

… … MensajesMensajes

Page 31: Tema 09 - Diagramas de interaccion, UML.ppt

… … MensajesMensajes

Los argumentos de un mensaje pueden ser valores obtenidos como consecuencia de las llamadas anteriores

Los argumentos pueden ser también expresiones de navegación construidas a partir del objeto cliente

Los argumentos pueden omitirse en el diagrama

Page 32: Tema 09 - Diagramas de interaccion, UML.ppt

EjemploEjemplo

: Administrador : InicioSecion

: Acceso : Usuario

2:

1: ingresa usuario y clave6: datos cliente

3: envio datos de acceso

5: confirma el acceso

4: permisos de acceso

: Administrador : InicioSecion

: Acceso : Usuario

2:

1: ingresa usuario y clave6: datos cliente

3: envio datos de acceso

5: confirma el acceso

4: permisos de acceso

Page 33: Tema 09 - Diagramas de interaccion, UML.ppt

Facultad de IngenieríaFacultad de IngenieríaEAP. Ingeniería de SistemasEAP. Ingeniería de Sistemas

Ing. CIP. Eddy Iván Quispe SotoIng. CIP. Eddy Iván Quispe Soto