Un diagrama de colaboración es un tipo de diagrama de interacción del Lenguaje de modelado unificado (UML) que destaca la organización estructural de los objetos en el diseño de sistemas informáticos de Programación orientada a objetos (OOP). El diagrama de colaboración muestra las relaciones de los objetos entre sí. Estos diagramas pueden requerir habilidad técnica y capacitación para crearlos. Una organización de gobierno central controla los estándares UML y continúan evolucionando.
En OOP, un objeto es una entidad encapsulada compuesta de atributos y comportamientos, y el término objeto a menudo se refiere a un tipo de datos complejos. Por ejemplo, un objeto puede constar de datos de artículos de inventario y varias funciones para recuperar y revisar esos datos. Pensar en los datos, atributos y comportamientos como objetos puede simplificar el proceso de modelado y desarrollo.
El elemento objeto es un elemento clave en un diagrama de colaboración. Los objetos pueden interactuar entre sí. Por ejemplo, un objeto de orden de compra puede interactuar con un objeto de inventario para modelar el efecto que tiene la recepción de artículos en una orden de compra sobre el inventario. El diagrama puede mostrar una función de clase para cada objeto, que también se puede describir como las responsabilidades de ese objeto.
Un segundo elemento es el elemento de relación o asociación. Este elemento representa un enlace que conecta objetos asociados e indica cómo se comportará la asociación en esta circunstancia. También se puede utilizar para mostrar cardinalidad. La cardinalidad es la relación requerida entre los datos de los dos objetos, como una relación de uno a uno o de uno a muchos.
Los mensajes son el tercer elemento en los diagramas de colaboración. Se representan como flechas que apuntan desde el objeto inicial al objeto final. Se puede agregar numeración a los mensajes para mostrar la secuencia de tiempo de las interacciones de los objetos.
Un diagrama de colaboración es similar a un diagrama de secuencia porque ambos muestran cómo los objetos interactúan entre sí en relaciones dinámicas o en función del tiempo. Algunos programas de modelado UML pueden convertir diagramas de secuencia en diagramas de colaboración y viceversa debido a sus similitudes. Las relaciones dinámicas se captan más fácilmente a partir de diagramas de secuencia, mientras que los diagramas de colaboración representan las conexiones entre objetos de manera más eficaz.
Los diagramas de colaboración requieren habilidad técnica para crearlos. La tarea a menudo se asigna a un analista de sistemas informáticos. Los analistas que crean los modelos usan diagramas de casos, diagramas de clases y diagramas de secuencia para recopilar información sobre el sistema necesario para desarrollar los diagramas. Además, los modelos generalmente se crean utilizando un software especial, que puede requerir capacitación para su uso.
Los estándares UML son desarrollados por Object Management Group. Los estándares continúan avanzando y, como resultado, las convenciones de modelado de diagramas pueden modificarse. Por ejemplo, las notaciones UML más nuevas utilizan un diagrama de comunicación como una versión simplificada del diagrama de colaboración.