Introducción
Los diagramas de comunicación, también conocidos como diagramas de colaboración en UML 1.x, son un tipo de diagrama de interacción que enfatiza las relaciones entre objetos y los mensajes que intercambian. Estos diagramas ofrecen una visión más flexible de las interacciones en comparación con los diagramas de secuencia, lo que los hace particularmente útiles para comprender el flujo de control entre diferentes interacciones en un sistema. Este artículo profundizará en los conceptos clave de los diagramas de comunicación, centrándose en cómo modelan el patrón Modelo-Vista-Controlador (MVC), y proporcionará una interpretación detallada de un ejemplo de diagrama de comunicación.
Conceptos clave de los diagramas de comunicación
Objetos y enlaces
- Objetos: Representados por rectángulos, los objetos en un diagrama de comunicación son instancias de clases o interfaces. Son las entidades principales que participan en las interacciones.
- Enlaces: Líneas que conectan objetos, representando asociaciones u otras relaciones entre ellos. Los enlaces pueden ser asociaciones simples, agregaciones o composiciones.
Mensajes
- Mensajes: Flechas entre objetos que representan la comunicación entre ellos. Los mensajes pueden ser sincrónicos (flechas sólidas) o asíncronos (flechas punteadas).
- Tipos de mensajes:
- Mensajes sincrónicos: Representan llamadas a métodos donde el llamante espera a que el llamado complete la operación.
- Mensajes asíncronos: Representan señales o eventos donde el llamante no espera a que el llamado complete la operación.
Números de secuencia
- Números de secuencia: Números junto a los mensajes que indican el orden en que se envían. Estos números ayudan a comprender la secuencia de interacciones.
Modelado del patrón MVC
El patrón Modelo-Vista-Controlador (MVC) es un patrón de diseño utilizado para desarrollar interfaces de usuario que divide la lógica relacionada en tres elementos interconectados. Esta separación ayuda a gestionar aplicaciones complejas dividiendo las responsabilidades:
- Modelo: Gestiona los datos, la lógica y las reglas de la aplicación.
- Vista: Representa los elementos de la interfaz de usuario, como cuadros de texto, listas desplegables, etc.
- Controlador: Actúa como intermediario entre el Modelo y la Vista, procesando toda la lógica de negocio y las solicitudes entrantes, manipulando los datos mediante el Modelo y interactuando con la Vista para mostrar la salida.
Interpretación del diagrama de comunicación

Analicemos el diagrama de comunicación proporcionado, que modela el patrón MVC para programar una inspección:
Actores y objetos
- Inspector: El usuario que inicia el proceso de programación de la inspección.
- Asistente del inspector: Otro usuario que revisa los detalles de la inspección.
- Formulario de inspección: El componente de interfaz de usuario que permite a los usuarios ingresar los detalles de la inspección.
- Lista de inspecciones: El componente de interfaz de usuario que muestra una lista de inspecciones.
- Controlador de inspección de seguridad: El controlador que gestiona el proceso de inspección.
- Inspección de seguridad: El modelo que representa los datos de la inspección.
Enlaces y mensajes
- El inspector selecciona una inspección (Mensaje 1):
- El inspector selecciona una inspección de la
Lista de inspecciones. - Esta acción desencadena un mensaje para mostrar el
Formulario de inspección(Mensaje 2).
- El inspector selecciona una inspección de la
- El formulario de inspección carga la inspección (Mensajes 3 y 8):
- El
Formulario de inspecciónenvía un mensaje alControlador de inspección de seguridadpara cargar la inspección seleccionada (Mensaje 3). - El
ControladorInspeccionSeguridadrecupera los detalles de la inspección delInspeccionSeguridadmodelo (Mensaje 4). - El
ControladorInspeccionSeguridadentonces envía los detalles de la inspección de vuelta alFormularioInspeccion(Mensaje 8).
- El
- El inspector especifica la fecha de la inspección (Mensajes 5, 6 y 7):
- Si la inspección no ha expirado, el inspector especifica la fecha de la inspección (Mensaje 5).
- Si la inspección ha expirado, el inspector especifica la fecha de inspección vencida (Mensaje 6).
- El inspector hace clic en el botón guardar en el
FormularioInspeccion(Mensaje 7).
- El FormularioInspeccion guarda la inspección (Mensajes 9 a 14):
- El
FormularioInspeccionenvía un mensaje alControladorInspeccionSeguridadpara guardar los detalles de la inspección (Mensaje 9). - El
ControladorInspeccionSeguridadactualiza elInspeccionSeguridadmodelo con los nuevos detalles (Mensajes 10 a 14).
- El
- El asistente del inspector revisa los detalles de la inspección (Mensajes 15 a 18):
- El
Asistente Inspectorrevisa los detalles de la inspección (Mensaje 15). - El
Asistente Inspectorselecciona la inspección desde elListaInspección(Mensaje 16). - El
Asistente Inspectorhace clic en el botón guardar en elFormularioInspección(Mensaje 17). - El
FormularioInspecciónenvía un mensaje alControladorInspecciónSeguridadpara guardar los detalles de la inspección (Mensaje 18). - El
ControladorInspecciónSeguridadrecupera los detalles de la inspección desde elInspecciónSeguridadmodelo (Mensaje 19). - El
ControladorInspecciónSeguridadenvía los detalles de la inspección de vuelta alFormularioInspección(Mensaje 20). - El
Asistente Inspectorrevisa los detalles actualizados de la inspección (Mensaje 21).
- El
Números de secuencia
- Números de secuencia: Los números junto a los mensajes indican el orden en que se envían los mensajes. Por ejemplo, el Mensaje 1 es el primer mensaje enviado, y el Mensaje 21 es el último mensaje enviado.
Significado de los diagramas de comunicación
Los diagramas de comunicación son fundamentales en el proceso de desarrollo de software por varias razones:
- Diseño del sistema: Ayudan a visualizar el comportamiento dinámico de un sistema al mostrar la secuencia de interacciones entre objetos.
- Comunicación: Sirven como una ayuda visual para que los interesados entiendan el comportamiento del sistema sin profundizar en detalles técnicos.
- Análisis de requisitos: Ayudan a identificar y documentar los requisitos del sistema al ilustrar las interacciones entre objetos.
- Pruebas: Proporcionan una base para crear casos de prueba que verifiquen que el sistema cumple con los requisitos especificados.
Conclusión
Los diagramas de comunicación son una herramienta poderosa en la ingeniería de software para visualizar el comportamiento dinámico de un sistema. Al ilustrar la secuencia de interacciones entre objetos, estos diagramas facilitan una mejor comunicación, análisis de requisitos y diseño del sistema. El ejemplo del patrón MVC demuestra cómo los diagramas de comunicación pueden capturar eficazmente las interacciones esenciales dentro de un sistema, asegurando una comprensión completa de su comportamiento. Ya sea que sea un principiante o un desarrollador experimentado, los diagramas de comunicación proporcionan las herramientas e ideas necesarias para diseñar y documentar sistemas complejos de manera efectiva.
Referencias
Visual Paradigm
- ¿Qué es un diagrama de comunicación?
- ¿Qué es un diagrama de comunicación? – Visual Paradigm 22
- Este artículo explica los fundamentos de los diagramas de comunicación en UML, incluyendo su estructura y componentes. También ofrece ideas sobre cómo utilizar Visual Paradigm para crear estos diagramas.
- ¿Cómo dibujar un diagrama de comunicación?
- ¿Cómo dibujar un diagrama de comunicación? – Visual Paradigm 23
- Una guía paso a paso sobre cómo dibujar diagramas de comunicación usando Visual Paradigm, incluyendo consejos sobre el uso de fragmentos combinados y mensajes auto-referidos.
- Diagrama de comunicación – Diagramas UML 2
- Diagrama de comunicación – Diagramas UML 2 – Visual Paradigm 24
- Este artículo explica cómo se utilizan los diagramas de comunicación para modelar el comportamiento dinámico de un caso de uso, centrándose en la colaboración de objetos en lugar de la secuencia temporal.
Cybermedian
- Diagrama de comunicación – Tutorial UML 2
- Diagrama de comunicación – Tutorial UML 2 – Sparx Systems 25
- Este tutorial proporciona una visión general de los diagramas de comunicación, sus componentes y cómo se utilizan para modelar el comportamiento dinámico de un sistema.
- Diagramas UML: Una guía completa
- Diagramas UML: Una guía completa – Cybermedian 26
- Una guía completa sobre los diferentes tipos de diagramas UML, incluyendo diagramas de comunicación, y su importancia en la ingeniería de software.
- Diagrama de comunicación – Lenguaje Unificado de Modelado (UML)
- Diagrama de comunicación – Lenguaje Unificado de Modelado (UML) – GeeksforGeeks 27
- Este artículo proporciona una visión detallada de los diagramas de comunicación UML, sus conceptos clave y cómo se utilizan para visualizar las interacciones entre objetos o componentes en un sistema.
ArchiMetric
- ¿Qué es un diagrama de secuencia – ArchiMetric
- ¿Qué es un diagrama de secuencia – ArchiMetric 28
- Este artículo explica qué son los diagramas de secuencia y cómo se utilizan para modelar los comportamientos dinámicos de un sistema mediante Visual Paradigm.
- Introducción a los diagramas UML en Visual Paradigm
- Introducción a los diagramas UML en Visual Paradigm – ArchiMetric 29
- Una introducción a los diferentes tipos de diagramas UML compatibles con Visual Paradigm, incluyendo diagramas de comunicación y su papel en la modelización de interacciones del sistema.
- Navegando UML: Una visión general de los 14 tipos de diagramas y su relevancia en entornos ágiles
- Navegando UML: Una visión general de los 14 tipos de diagramas y su relevancia en entornos ágiles – ArchiMetric 30
- Esta visión general discute los diferentes tipos de diagramas UML, incluyendo diagramas de comunicación, y su relevancia en entornos de desarrollo de software ágil.
Estas referencias proporcionan una comprensión completa de los diagramas de comunicación y UML, junto con guías prácticas para utilizar Visual Paradigm en la creación de estos diagramas.












