Diagramas de Colaboración (o de Comunicación)¶
Introducción¶
Los diagramas de colaboración (también llamados diagramas de comunicación) son diagramas UML que representan cómo interactúan varios objetos, pero poniendo el foco en:
- La estructura (qué objetos están conectados con cuáles).
- La comunicación (qué mensajes se envían).
- El orden de los mensajes mediante numeración.
A diferencia de un diagrama de secuencia, aquí no importa tanto el “tiempo vertical”, sino la red de relaciones que hace posible que los mensajes fluyan.
Diferencias con los diagramas de secuencia¶
- Secuencia: enfatiza el orden temporal (de arriba abajo) y el “quién llama a quién” en cada instante.
- Colaboración / Comunicación: enfatiza la estructura de objetos y su conectividad, y el orden se marca con números en los mensajes.
En la práctica, ambos describen lo mismo (una interacción), pero con distinta perspectiva: - Secuencia: “qué ocurre paso a paso”. - Colaboración: “quién se relaciona con quién para que ocurra”.
Elementos principales¶
- Objetos: participantes de la interacción (instancias). Se muestran como nodos.
- Relaciones / enlaces: conexiones entre objetos que permiten intercambiar mensajes.
- Mensajes: flechas con el nombre del método y numeración del orden:
- Ejemplo:
1: solicitarReserva()
Ejemplo práctico: Sistema de reservas online¶
Escenario¶
- El Usuario solicita una reserva.
- El Sistema de Reservas consulta la Base de Datos para verificar disponibilidad.
- La Base de Datos devuelve la disponibilidad.
- El Sistema de Reservas confirma al usuario.
Actividades¶
-
AC 507. Diseña un diagrama de colaboración que muestre la interacción entre los objetos de un sistema de reservas de hotel.
-
AC 508. Crea un diagrama de colaboración para un sistema de pago con tarjeta, numerando correctamente los mensajes.
-
AC 509. Representa un diagrama de colaboración de una aplicación de mensajería, mostrando cómo se envía y recibe un mensaje.