Diagrama de Colaboracion

21

description

presentacion de uno de los diagramas uml, teoría, tipos de relaciones

Transcript of Diagrama de Colaboracion

Page 1: Diagrama de Colaboracion
Page 2: Diagrama de Colaboracion

Qué es un diagrama de colaboraciones

Un diagrama de colaboraciones es una extensión de uno deobjetos. Además de las relaciones entre objetos, el diagramade colaboraciones muestra los mensajes que se envían losobjetos entre sí.

La figura muestra la simbología del diagrama decolaboraciones.colaboraciones.

Page 3: Diagrama de Colaboracion

Comparación entre diagrama de

secuencias y colaboraciónTipo Puntos fuertes Puntos débiles

Secuencia Muestra claramente la

secuencia u ordenación en

el tiempo de los mensajes

Notación simple

Fuerza a extender por la

derecha cuando se añaden

nuevos objetos; consume

espacio horizontal

Colaboración Economiza espacio,

flexibilidad al añadir

nuevos objetos en dos

dimensiones

Es mejor para ilustrar

bifurcaciones complejas,

iteraciones y

comportamiento

concurrente

Difícil ver la secuencia de

mensajes

Notación más compleja

Page 4: Diagrama de Colaboracion

La GUIEste ejemplo es el caso más directo. Un actor inicia lasecuencia de interacción al oprimir una tecla, con lo que losmensajes ocurrirán de manera secuencial. Tal secuencia es:

• La GUI notifica al sistema operativo que se oprimió una tecla.• El sistema operativo le notifica a la CPU.• El sistema operativo le notifica a la CPU.• La CPU notifica a la tarjeta de video.• La tarjeta de video envía un mensaje al monitor.• El monitor presenta el carácter alfanumérico en la pantalla,

con lo que se hará evidente al usuario.

Page 5: Diagrama de Colaboracion

Diagrama de colaboraciones para el ejemplo de la GUI

La GUI

Page 6: Diagrama de Colaboracion

Cambios de estado

Puede mostrar los cambios de estado en un objeto en undiagrama de colaboraciones.

1. En el rectángulo del objeto indique su estado

2. Agregue otro rectángulo al diagrama que haga las vecesdel objeto e indique el estado modificado

3. Conecte a los dos con una línea discontinua y etiquete lalínea con un estereotipo <<se torna>>

Page 7: Diagrama de Colaboracion

La figura ilustra un cambio de estado para la GUI, que muestraque el estado de inicialización se convierte en el estadooperativo.

Cambios de estado

Page 8: Diagrama de Colaboracion

La maquina de gaseosasSituación del caso de uso “Comprar gaseosa”, donde lasecuencia es.

1. El cliente inserta el dinero en la alcancía que se encuentraen la fachada de la máquina.

2. El cliente hace su elección.3. El dinero viaja hacia el registrador.3. El dinero viaja hacia el registrador.4. El registrador verifica si la gaseosa elegida está en el

dispensador.5. Dado que es el mejor escenario, asumimos que si hay

gaseosas, y el registrador actualiza su reserva de efectivo.6. El registrador hace que el dispensador entregue la gaseosa

en la fachada de la máquina.

Page 9: Diagrama de Colaboracion

El diagrama de colaboraciones para el mejorcaso de “Compra de gaseosa”

Page 10: Diagrama de Colaboracion

Agreguemos el caso de “cantidad incorrecta de dinero”. Eldiagrama tiene que contabilizar varias condiciones:

1. El usuario ha introducido más dinero que el necesario parala compra

Caso de “Compra de gaseosa” con “cantidadincorrecta de dinero”

la compra2. La máquina cuenta con la cantidad adecuada de cambio3. La máquina no tiene la cantidad correcta de cambio

Page 11: Diagrama de Colaboracion

El diagrama de colaboraciones con parte de lasituación “monto de dinero inadecuado”

Condición:

1. El usuario ha insertado más dinero del indicado en el precio2. El registrador cuenta con el cambio adecuado

Page 12: Diagrama de Colaboracion

El diagrama de colaboraciones con toda lasituación “monto de dinero inadecuado”

¿Qué ocurre cuando la maquina no cuenta con el cambiocorrecto? Tendrá que mostrar un mensaje que lo indique,devuelva el dinero y pida al usuario que inserte el importecorrecto. Así, la transacción habrá finalizado.

Page 13: Diagrama de Colaboracion

Creación de un objeto

Page 14: Diagrama de Colaboracion

Algunos conceptos másVario objetos receptores en una clase

Un objeto que envía un mensaje a diversos objetos de unaclase.

Ejemplo:

Un profesor le pide a ungrupo de estudiantes queentregue una tarea

Page 15: Diagrama de Colaboracion

Algunos conceptos másVario objetos receptores en una clase

En algunos casos, el orden del mensaje enviado esimportante.

Ejemplo:

Un empleado bancariodará servicio a cada clienteconforme fue llegando a lafila.

Page 16: Diagrama de Colaboracion

Algunos conceptos másRepresentación de los resultados

Page 17: Diagrama de Colaboracion

Algunos conceptos másObjetos activos

En algunas interacciones, un objeto específico controla elflujo. Este objeto activo puede enviar mensajes a los objetospasivos e interactuar con otros objetos activos.

Page 18: Diagrama de Colaboracion

Algunos conceptos másSincronización

Un objeto sólo puede enviar un mensaje después de que otrosmensajes han sido enviados. Es decir, el objeto debe“sincronizar” todos los mensajes en el orden debido.

Ejemplo: Supongamos que sus objetos son personas en unEjemplo: Supongamos que sus objetos son personas en uncorporativo, y que están ocupados en la campaña de un nuevoproducto.

1. El vicepresidente de comercialización le pide al de ventasque cree una campaña para un producto en particular

2. El vicepresidente de ventas crea la campaña y la asigna algerente de ventas

Page 19: Diagrama de Colaboracion

Algunos conceptos másSincronización

Ejemplo:

3. El gerente de ventas instruye a un agente de ventas paraque venda el producto de acuerdo con la campaña

4. El agente de ventas hace llamadas para vender el producto4. El agente de ventas hace llamadas para vender el productoa los clientes en potencia

5. Luego de que el presidente de ventas ha dado la comisióny el gerente de ventas ha expedido la directiva (esto es,cuando se han completado los pasos 2 y 3), un especialistaen relaciones públicas de la corporación hará una llamadaal periódico local y colocará un anuncio de la campaña

Page 20: Diagrama de Colaboracion

Algunos conceptos másSincronización

Sincronización de mensajes en un diagrama de colaboracionesejemplo “campaña de un nuevo producto”.

Page 21: Diagrama de Colaboracion

Adiciones al panorama