Diagrama de comunicación UML
UML communication diagram tool hero image EN standard 4 3

Diagrama de comunicación UML

UML communication diagram tool hero image EN standard 4 3

La arquitectura de un sistema es la columna vertebral de todos los procesos, acciones e interacciones de una aplicación o software.

Para crear esta arquitectura como un plano en el que puedas colaborar, necesitarás diagramas UML para visualizar el sistema en diferentes capacidades. Los diagramas de comunicación UML, en particular, visualizan el intercambio de mensajes entre objetos y actores en un sistema. A menudo se utilizan en las primeras etapas del diseño de software para detallar cómo interactúan los objetos.

¿Qué son los diagramas de comunicación UML?

Los diagramas de comunicación visualizan una visión general de los mensajes enviados entre objetos y actores dentro de un sistema, proceso o función. En UML, los diagramas de comunicación se consideran un tipo de diagrama de comportamiento, junto con los diagramas de secuencia y los diagramas de interacciones.

Imagina el diagrama de comunicación UML para un cajero automático (ATM) para tener una idea. Para dispensar dinero a un usuario, el usuario (o actor) envía un mensaje al ATM insertando una tarjeta y un código PIN. Luego, el ATM envía un mensaje al banco para mostrar la información de la cuenta del usuario. Finalmente, el banco envía un mensaje de aprobación al ATM y el usuario recibe el dinero.

Visualmente, todos los mensajes en el diagrama de comunicación están claramente indicados, junto con su dirección, precedencia y número de orden con decimales para mostrar dependencias. Todos los objetos, representados como rectángulos, están conectados con líneas rectas y flechas.

Propósito de los diagramas de comunicación UML

El propósito principal de un diagrama de comunicación UML es mostrar los mensajes que los objetos envían entre sí (o a sí mismos) para hacer que el sistema haga lo que un caso de uso especifica.

Los diagramas de comunicación UML son útiles durante el diseño para visualizar la secuencia adecuada de mensajes entre objetos y actores. Mapear esto ayuda a los desarrolladores y programadores a ahorrar tiempo y energía, además de evitar cometer errores al principio. Estos diagramas también sirven como documentación para futuros cambios, actualizaciones y rediseños. Al igual que los planos ayudan con las renovaciones de casas.

Cuándo usar un diagrama de comunicación UML

Los diagramas de comunicación UML generalmente se crean antes del desarrollo de un sistema para mapear lo que necesita construirse y cómo. El propósito de diagramar mensajes e interacciones entre objetos es lograr una funcionalidad o comportamiento indicado en un caso de uso o función.

Más específicamente, querrías hacer un diagrama de comunicación UML para representar la secuencia de mensajes o información. Modelan el flujo de mensajes (y el orden en que ocurren) entre objetos o entre un usuario y objetos.

Beneficios de los diagramas de comunicación UML

Los diagramas de comunicación UML ofrecen muchos beneficios para el diagramado efectivo del sistema, el desarrollo y la construcción de la arquitectura del sistema:

  • Son fáciles de interpretar: Los diagramas de comunicación UML aclaran el papel de cada objeto o actor en un sistema. Las notaciones y formas muestran la relación de mensajes dentro de partes del sistema.

  • Muestran información secuencial: Los diagramas de comunicación UML son esenciales para entender la secuencia y el flujo de mensajes entre objetos, como el orden en que están y qué mensajes dependen de otros.

  • Visualizan sistemas complejos: Los diagramas de comunicación ayudan a visualizar cadenas de lógica complejas que involucran múltiples objetos mediante notaciones claras. Un diagrama de comunicación completo ofrece una visión general de un sistema (o partes de él) sin necesidad de explicaciones adicionales.

  • Ayudan con futuras iteraciones: Es más fácil planificar nuevas funciones y escenarios para un sistema usando un diagrama de comunicación UML. Idealmente, los diagramas del sistema se actualizan regularmente, por lo que visualizar y prototipar una nueva característica es simple e intuitivo.

Diagramas de secuencia vs. diagramas de comunicación

Los diagramas de secuencia y de comunicación son ambos diagramas de interacción de comportamiento UML. Visualizan cómo se comporta un sistema o programa a través de mensajes intercambiados entre objetos o actores.

La diferencia es que el diagrama de secuencia muestra un proceso que se desarrolla durante un tiempo especificado, mientras que el diagrama de comunicación para el mismo sistema muestra todos los objetos involucrados en un único espacio como una visión general de los mensajes intercambiados.

En un diagrama de comunicación, es más fácil ver la visión general de las relaciones entre todos los objetos que participan en una tarea, función o caso de uso específicos. En un diagrama de secuencia, ves el momento de cada intercambio de mensajes y cómo uno lleva al otro.

Creando un diagrama de comunicación UML

Crear un diagrama de comunicación UML es más fácil cuando tienes los bloques de construcción adecuados. Al crear un diagrama de comunicación desde cero, asegúrate de mantener las directrices de UML y mantener la comunicación con los desarrolladores lo más clara posible. Sigue estos pasos para comenzar a crearlo:

1. Decide qué función(es) modelar

Esboza qué función o sistema modelará el diagrama. Lista el actor, los objetos y los mensajes. Por ejemplo, una función puede ser un cliente retirando dinero del ATM. Necesitarías un diagrama de comunicación diferente o una combinación de ambos para visualizar cuando un usuario usa el ATM para pagar una factura. Sin embargo, ten en cuenta que cuantas más acciones y mensajes visualices, más complejo será el diagrama. Es más simple tener un diagrama de comunicación por acción completa.

2. Añade formas y figuras conectadas para los objetos y el actor

Añade formas rectangulares a tu lienzo. Para cada objeto, añade un rectángulo y nómbralo. Colócalos en el lienzo con espacio entre cada uno. Añade al actor como una figura de palo si hay un actor. Los actores también pueden mostrarse como rectángulos, pero las figuras de palo visualizan mejor. Comienza a visualizar la secuencia de mensajes conectando al actor y los objetos con líneas. Las líneas rectas determinan que hay una conexión entre las formas, y las flechas para las direcciones de los mensajes vienen después.

3. Usa flechas para visualizar mensajes entre objetos

Coloca flechas junto a las líneas que conectan los objetos. Cada flecha representa un mensaje, y la dirección de la flecha visualiza qué objeto envía el mensaje y cuál lo recibe. Usa el mismo estilo de flecha en todo el diagrama. Algunos objetos se comunican con otros objetos que no están directamente conectados y están en otra posición de la secuencia. Tus flechas no necesitan ser rectas para alcanzar cada objeto; pueden doblarse para acomodar el espacio.

Si las líneas están demasiado juntas, se vuelven difíciles de leer, así que asegura un espaciado equilibrado entre las líneas, flechas, objetos y el texto del mensaje.

4. Etiqueta las flechas con números y texto

En cada flecha, añade el ID del mensaje y el número de secuencia para denotar qué es el mensaje y en qué orden está. Sigue las mejores prácticas de UML para la numeración y etiquetado de mensajes adhiriéndote a fuentes y tamaños industriales. Estos números son clave para entender exactamente cómo funciona la mensajería dentro del sistema.

5. Finaliza y comparte el diagrama de comunicación

Organiza y ajusta los objetos de manera ordenada en el diagrama para que el intercambio de mensajes tenga sentido y sea intuitivo de seguir. Usa colores para diferenciar tipos de objetos y secuencias de mensajes. Prueba el diagrama convirtiéndolo en un diagrama de secuencia. Si la secuencia es defectuosa, vuelve al diagrama de comunicación y ajusta la numeración o direcciones de las flechas. Colabora con las partes interesadas para revisar y finalizar el diagrama de comunicación UML para tu sistema. Sigue el flujo de mensajes juntos para asegurarte de que todo es satisfactorio y visualiza la finalización de una acción.

Notación y símbolos en los diagramas de comunicación UML

Como todos los diagramas UML, los diagramas de comunicación consisten en notaciones y símbolos que visualizan el comportamiento de un sistema. En el caso de los diagramas de comunicación, las notaciones se centran en el intercambio de mensajes y su secuencia en el proceso.

Actores

Los actores son los usuarios o entidades que interactúan con el sistema. Son usuarios humanos, organizaciones, disparadores de eventos u otros sistemas. En un diagrama de comunicación UML, se visualizan como figuras de palo si son personas o otra forma para significar al usuario.

Típicamente, en un diagrama UML, el actor se representa en la parte superior izquierda del diagrama, significando el punto de inicio para la secuencia de mensajes. Etiqueta al actor de acuerdo usando el mismo tipo de fuente que los ID de mensajes en el diagrama.

Objetos y formas

Los objetos típicamente se representan como rectángulos. Elige un estilo y mantente con él para todo el diagrama. Codifícalos por colores según características, grupos, secuencias directas o dependencias.

Líneas, enlaces y flechas

Las líneas y flechas en un diagrama de comunicación UML son notaciones para conexión y relación. La línea recta conecta objetos para visualizar su relación. Cuando los objetos no están conectados a una línea, se consideran separados e independientes entre sí.

Las flechas denotan la dirección del mensaje transmitido entre objetos. Usa el mismo estilo de flecha en todo tu diagrama para evitar la confusión visual. Además, usa el mismo espaciado entre la línea y la flecha para que haya suficiente espacio para los números y los mensajes.

Cuando dos objetos conectados se envían mensajes entre sí, coloca cada flecha y notación a cada lado de la línea de conexión.

Números

Las notaciones numéricas detallan el orden de los mensajes entre objetos y el actor: agrupa mensajes usando decimales para denotar un padre y dependientes. Los mensajes siempre comienzan en 1, luego 2, 3, etc. Numera los mensajes en el grupo 1 así; 1.1, 1.2, 1.3, etc.

Al convertir un diagrama de comunicación en un diagrama de secuencia, estos números son el plano para cómo se colocan los objetos y se disponen para visualizar la secuencia basada en el tiempo.

Mensajes

Los mensajes siguen las pautas de mayúsculas de UML y usan camel case. Cada palabra, excepto la primera, está en mayúsculas, y no hay espacio entre las palabras. Primero, añade el orden y el número de secuencia, luego un punto y coma, y finalmente, el mensaje en un ID corto o nombre abreviado. Así, '1.1 : inputPin'.

Para escribir mensajes, usa una fuente sans simple como Arial o Open Sans. Mantén el mismo tamaño de fuente en todo el diagrama y asegúrate de que el texto sea fácil de leer sobre el fondo cuando uses color.

Crea tu propio diagrama de comunicación UML

La arquitectura visual de un sistema muestra todas las partes interconectadas y cómo se relacionan entre sí. Lo hace de una manera que es simple para que los desarrolladores, diseñadores, programadores y partes interesadas entiendan.

Los diagramas UML son la opción óptima para construir un plano del sistema para el comportamiento y la estructura. Ayudan a los programadores, desarrolladores y diseñadores a comunicarse entre sí sobre los entresijos de un sistema en el que están trabajando juntos.

Los diagramas de comunicación UML, en particular, son clave para visualizar cómo se comunican los objetos dentro de un sistema. Notaciones y símbolos como flechas, líneas y números muestran el orden de los mensajes y la dirección entre los objetos.

Comienza con tu propio diagrama de comunicación UML siguiendo esta guía, o usa la plantilla de diagrama de comunicación UML de Miro para ayudarte a guiarte.

Empieza en segundos

Únete a los equipos que utilizan Miro para su trabajo.
accenture.svgbumble.svgdelloite.svgdocusign.svgcontentful.svgasos.svgpepsico.svghanes.svghewlett packard.svgdropbox.svgmacys.svgliberty mutual.svgtotal.svgwhirlpool.svgubisoft.svgyamaha.svgwp engine.svg
accenture.svgbumble.svgdelloite.svgdocusign.svgcontentful.svgasos.svgpepsico.svghanes.svghewlett packard.svgdropbox.svgmacys.svgliberty mutual.svgtotal.svgwhirlpool.svgubisoft.svgyamaha.svgwp engine.svg