Sunteți pe pagina 1din 4

Un diagrama de colaboracin en las versiones de UML 1.x es esencialmente un diagrama que muestra interacciones organizadas alrededor de los roles.

A diferencia de los diagramas de secuencia, los diagramas de colaboracion, tambien llamados diagramas de comunicacin, muestran explcitamente las relaciones de los roles. Por otra parte, un diagrama de comunicacin no muestra el tiempo como una dimensin aparte, por lo que resulta necesario etiquetar con nmeros de secuencia tanto la secuencia de mensajes como los hilos concurrentes. Muestra cmo las instancias especficas de las clases trabajan juntas para conseguir un objetivo comn. Implementa las asociaciones del diagrama de clases mediante el paso de mensajes de un objeto a otro. Dicha implementacin es llamada "enlace".

Un diagrama de comunicacin es tambin un diagrama de clases que contiene roles de clasificador y roles de asociacin en lugar de slo clasificadores y asociaciones. Los roles de clasificador y los de asociacin describen la configuracin de los objetos y de los enlaces que pueden ocurrir cuando se ejecuta una instancia de la comunicacin. Cuando se instancia una comunicacin, los objetos estn ligados a los roles de clasificador y los enlaces a los roles de asociacin. El rol de asociacin puede ser desempeado por varios tipos de enlaces temporales, tales como argumentos de procedimiento o variables locales del procedimiento. Los smbolos de enlace pueden llevar estereotipos para indicar enlaces temporales. Usos Un uso de un diagrama de colaboracin es mostrar la implementacin de una operacin. La comunicacin muestra los parmetros y las variables locales de la operacin, as como asociaciones ms permanentes. Cuando se implementa el comportamiento, la secuencia de los mensajes corresponde a la estructura de llamadas anidadas y el paso de seales del programa. Un diagrama de secuencia muestra secuencias en el tiempo como dimensin geomtrica, pero las relaciones son implcitas. Un diagrama de comunicacin muestra relaciones entre roles geomtricamente y relaciona los mensajes con las relaciones, pero las secuencias temporales estn menos claras. Tipos Es til marcar los objetos en cuatro grupos: los que existen con la interaccin entera; los creados durante la interaccin (restriccin {new}); los destruidos durante la interaccin (restriccin {destroyed}); y los que se crean y se destruyen durante la interaccin (restriccin {transient}). Aunque las comunicaciones muestran directamente la implementacin de una operacin, pueden tambin mostrar la realizacin de una clase entera. En este uso, muestran el contexto necesario para implementar todas las operaciones de una clase. Esto permite que el modelador vea los roles mltiples que los objetos pueden desempear en varias operaciones. No hay ejemplos de los diagramas, diferentes casos o sistemas UML modela el negocio area o empresa asi como los sistemas que requieren ?

Conceptos bsicos en un Diagrama de Colaboracin Un diagrama de colaboracin es una forma de representar interaccin entre objetos, alterna al diagrama de secuencia. A diferencia de los diagramas de secuencia, pueden mostrar el contexto de la operacin (cules objetos son atributos, cules temporales, ... ) y ciclos en la ejecucin. Se toma como ejemplo el caso de uso PedirProducto ya descrito como diagrama de secuencia.

Objeto Un objeto se representa con un rectngulo, que contiene el nombre y la clase del objeto en un formato nombreObjeto: nombreClase. Enlaces Un enlace es una instancia de una asociacin en un diagrama de clases. Se representa como una linea contnua que une a dos objetos. Esta acompaada por un nmero que indica el orden dentro de la interaccin y por un estereotipo que indica que tipo de objeto recibe el mensaje. Pueden darse varios niveles de subindices para indicar anidamiento de operaciones. Los estereotipos indican si el objeto que recibe el mensaje es un atributo (association y se asume por defecto), un parmetro de un mensaje anterior, si es un objeto local o global. Flujo de mensajes Expresa el envo de un mensaje. Se representa mediante una flecha dirigida cercana a un enlace. Marcadores de creacin y destruccin de objetos Puede mostrarse en la grfica cules objetos son creados y destruidos, agregando una restriccin con la palabra new o delete, respectivamente, cercana al rectngulo del objeto Objeto compuesto Es una representacin alternativa de un objeto y sus atributos. En esta representacin se muestran los objetos contenidos dentro del rectngulo que representa al objeto que los contiene. Un ejemplo es el siguiente objeto ventana

Conceptos avanzados en un Diagrama de Colaboracin Patrn de diseo Un diagrama de colaboracin puede especificar un contrato entre objetos, parte esencial para la descripcin de un patrn de diseo. Este diagrama contiene todos los elementos citados de un diagrama de colaboracin, dejndo libres posiblemente los tipos exactos de algunos objetos o con nombres genricos para los mensajes. Una "instanciacin" del patrn se representa como una elipse unida mediante flechas puenteadas a los objetos o clases que participan realmente en el patrn. Estas flechas pueden tener roles, indicando cul es el papel de cada elemento dentro del patrn. Por ejemplo, una instanciacin del patrn de observador puede verse como

Contexto Un contexto es una vista de uno o ms elementos dentro del modelo que colaboran en el desarrollo de una accin. Se usa para separar los dems elementos en el modelo de este problema en particular y darle nfasis. Puede mostrar solo los detalles relevantes de las clases u objetos que contiene, para resaltar su utilidad. Un ejemplo es la definicin del siguiente tipo:

Se representa como un contexto un tipo Registro de Dinero y se muestran los detalles relevantes de Producto, Item y Venta para este tipo. Las relaciones de las clases con otras no visibles dentro del contexto pueden omitirse o conectarse al borde del contexto. Objeto activo Un objeto activo es el que contiene su propio flujo de control, a diferencia de un objeto pasivo que encapsula datos y solo reacciona al enviarle mensajes. Un objeto activo se representa con un rectngulo de bordes gruesos. Puede contener otros objetos pasivos o activos. Se presenta a continuacin un ejemplo en el contexto de una produccin en lnea robotizada. Se tiene un ente administrador, un robot y un horno (tres objetos activos) que interactan para desarrollar su tarea.

Los mensajes entre objetos pasivos se denotan mediante una flecha completa, mientras que los mensajes entre objetos activos se denotan con una media flecha. Los trheads de ejecucin se denotan con las letras A y B antes del nmero de orden del mensaje. La sincronizacin entre threads se muestra mediante un '/ ' y el nuevo nmoer de orden. Por ejemplo en A2, B2 / 2: completed( job ).

S-ar putea să vă placă și