martes, 25 de junio de 2013

Diagrama de Colaboracion

EN QUE CONSISTE UN DIAGRAMA DE COLABORACIÓN

v  Muestra cómo las instancias específicas de las clases trabajan juntas para conseguir un objetivo común.
v  Consiste especificar un contrato entre objetos
v  Implementa las asociaciones del diagrama de clases mediante el paso de mensajes de un objeto a otro. Dicha implementación es llamada "enlace".

¿Que representa el algoritmo de colabora ración?

v  Representa la parte esencial para la descripción de un patrón de diseño.

DIAGRAMA DE COLABORACIÓN

Un  Diagrama   de  Colaboración   muestra una interacción  organizada  basándose en  los    objetos  que toman parte en la interacción y los enlaces entre los mismos (en cuanto a la interacción se refiere).

UML –Interacciones

v  Los objetos interactúan entre sí pasándose mensajes.
v  Los objetos se conectan a través de enlaces.

Mensaje: específica transmisión de información entre objetos.
Enlace: especifica un camino a lo largo del cual un objeto puede enviar un mensaje a otro objeto.

v  Es una conexión semántica entre objetos.
v  Es una instancia de una relación.

Puede contener los adornos de la relación.

LAS INTERACCIONES MODELAN ASPECTOS DINÁMICOS DEL SISTEMA


Llamada.-Invoca una operación sobre un objeto. Puede ser a sí mismo.

Retorno.-El receptor de una llamada devuelve un valor al emisor, si es necesario.
Envío.- Envía una señal a un objeto.
Creación.- Para crear un objeto.
Destrucción.- Para destruir un objeto. Puede destruirse a sí mismo. 

SECUENCIACIÓN

v  El flujo de mensajes forma una secuencia.
v  La secuencia es indicada por un número antes del mensaje y una flecha dirigida.
v  Para modelar caminos alternativos, se coloca el mismo número de secuencia seguido de un número de subsecuencia.
Parámetros . Reales Se pueden modelar los parámetros reales enviados y también los retornos. Ej: 1.2.1: x:=operación(‘m’)

ELEMENTOS DE UN DIAGRAMA DE COLABORACIÓN

v  Objetos o Roles: nodos del grafo.
v  Enlaces o comunicaciones: arcos del grafo.
v  Mensajes: llevan número de secuencia y flecha dirigida.
v  Anidamiento: se utiliza la numeración decimal   Ej: 1, 1.1, 1.1.1 ........
v Iteración: colocar un * antes del número de secuencia y una cláusula de condición, si es necesario. ej. *[x>0].
v  Bifurcación: los caminos alternativos tendrán el mismo número de secuencia, seguido del número de subsecuencia, y se deben distinguir por una condición.


DEPENDENCIAS

¿De qué artefactos depende su construcción?

Su construcción depende de:
v   Los casos de uso (expandidos).
v   Diagrama de secuencias.
v   Diagrama de Clases.

¿Qué otros artefactos se generan a través de él?

Los artefactos que se generan son:
v   Diagramas de Estado.
v   Diagrama de Componentes.
v   Diagrama de Despliegue

¿En qué etapa se realiza su construcción?

Este tipo de diagramas se utilizan más frecuentemente en la fase de diseño, es decir, cuando estamos diseñando la implementación de las relaciones.


EJEMPLO  DE CONTROL DE SEGURIDAD DEL HOTEL PLAZA

     En cuanto a la representación, un Diagrama de Colaboración muestra a una serie de objetos con los enlaces entre los mismos, y con los mensajes que se intercambian dichos objetos.
     Los mensajes son flechas que van junto al enlace por el que “circulan”, y con el nombre del mensaje y los parámetros (si los tiene) entre paréntesis. Cada mensaje lleva un número de secuencia que denota cuál es el mensaje que le precede, excepto el mensaje que inicia el diagrama, que no lleva número de secuencia.
  Se pueden indicar alternativas con condiciones entre corchetes (por ejemplo:   [condición_de_test] : nombre_de_método() ), tal y como aparece en el ejemplo.
   También se puede mostrar el anidamiento de mensajes con números de secuencia como 2.1, que significa que el mensaje con número de secuencia 2 no acaba de ejecutarse hasta que no se han ejecutado todos los 2. x .

ELEMENTOS BÁSICOS PARA EL DIAGRAMA DE COLABORACIÓN
Objeto
     Un objeto se representa con un rectángulo, que contiene el nombre y la clase del objeto en un formato nombreObjeto: nombreClase.

Enlaces
     Un enlace es una instancia de una asociación en un diagrama de clases. Se representa como una linea contínua que une a dos objetos. Esta acompañada por un número que indica el orden dentro de la interacción y por un estereotipo que indica que tipo de objeto recibe el mensaje.  

Flujo de mensajes

      Expresa el envío de un mensaje. Se representa mediante una flecha dirigida cercana a un enlace.

Marcadores de creación y destrucción de objetos

      Puede mostrarse en la gráfica cuáles objetos son creados y destruidos, agregando una restricción con la palabra new o delete, respectivamente, cercana al rectángulo del objeto

Objeto compuesto

     Es una representación alternativa de un objeto y sus atributos. En esta representación se muestran los objetos contenidos dentro del rectángulo que representa al objeto que los contiene. Un ejemplo es el siguiente objeto vehículo.

     En este caso se muestra tanto los requerimientos que desea el huésped como lo que desea solicitar como retirarse y o cancelar como un mensaje al igual como los demás miembros como el administrador y personal, se muestra de forma más grafica y de fácil comprensión. 


Conclusión

    Un uso de un diagrama de colaboración  es mostrar la implementación de una operación. La colaboración muestra los parámetros y las variables locales de la operación, así como asociaciones más permanentes. Cuando se implementa el comportamiento, la secuencia de los mensajes corresponde a la estructura de llamadas anidadas y el paso de señales del programa.

  Un diagrama de colaboración muestra relaciones entre roles geométricamente y relaciona los mensajes con las relaciones, pero las secuencias temporales están menos claras.

     Prefieren el diagrama de colaboración, porque pueden usar la distribución para indicar cómo se conectan estáticamente los objetos.






No hay comentarios:

Publicar un comentario