Archyno
UMLDiagramas de comportamiento

Diagramas de visión general de interacción UML

Un diagrama de actividad cuyos pasos son interacciones enteras. El mapa que se sitúa por encima de un conjunto de diagramas de secuencia y dice cuál corre cuándo.

5 min de lecturaUML 2.5.129 de 35

La respuesta corta

  • Es un diagrama de actividad cuyos nodos son interacciones enteras en lugar de acciones: el mapa sobre un conjunto de diagramas de secuencia.
  • La notación de flujo de control es idéntica a la de un diagrama de actividad. Solo cambia qué son los nodos: interacciones, no acciones.
  • Un marco ref apunta a un diagrama de secuencia que ya dibujaste, y eso es lo que mantiene pequeña la visión general.
  • Merece la pena en cuanto una función tiene más de unos tres diagramas de secuencia y nada dice cómo se relacionan.
Diagrama global de interacción UML. Desde un nodo inicial el flujo entra en un marco ref para Authorize payment. Una decisión encamina después o bien a un marco ref para Capture payment cuando se aprueba, o bien a un marco ref para Decline payment cuando se rechaza. Los dos alcanzan el nodo final.
Tres diagramas de secuencia y la lógica que elige entre ellos. Cada caja enmarcada es una referencia a una interacción definida en otro sitio.

01Qué muestra#

Un diagrama global de interacción es un diagrama de actividad en el que los nodos de acción son interacciones. La notación de flujo de control está tomada al completo de los diagramas de actividad - nodo inicial, decisiones, bifurcaciones, uniones, nodo final - y lo que se secuencia son diagramas de secuencia.

Existe para resolver un problema concreto: un diagrama de secuencia que ha crecido demasiado. En cuanto un flujo tiene tres ramas, cada una con su docena de mensajes, el único diagrama que lo contiene todo es ilegible. Divídelo en tres diagramas de secuencia con nombre y dibuja un diagrama global de interacción que diga cuál se ejecuta cuándo, y las dos mitades vuelven a ser legibles.

02La notación#

ElementoNotaciónQué significa
Ocurrencia de interacciónmarco etiquetado refUna referencia a una interacción definida en otro sitio, con su nombre. El caso habitual.
Interacción en líneamarco etiquetado sdUn diagrama de secuencia pequeño dibujado dentro de este nodo en vez de referenciado. Úsalo solo si de verdad es pequeño.
Flujo de controlflechaOrden entre interacciones. El mismo significado que en un diagrama de actividad.
Decisión / fusiónromboElige un camino por su guarda, o reúne de nuevo las alternativas.
Bifurcación / uniónbarra sólidaInteracciones que corren en paralelo, y el punto que las espera.
Inicial / finaldisco, y anillo alrededor de un discoPrincipio y fin de toda la vista global.

Esa es toda la notación, y si has leído el artículo del diagrama de actividad ya conoces la mayor parte. El único elemento realmente nuevo es el nodo enmarcado, y su regla es sencilla: el marco representa una interacción, y la etiqueta dice si esa interacción está dibujada dentro (sd) o en otro sitio (ref).

03Cuándo dibujar uno#

Úsalo cuando

  • Un flujo con varias interacciones alternativas, cada una lo bastante grande para su propio diagrama
  • Documentar un protocolo con fases distintas: saludo, transferencia, cierre
  • Dar a los lectores un índice hacia un conjunto de diagramas de secuencia relacionados
  • Mostrar que dos interacciones corren de verdad en paralelo

Usa otra cosa cuando

  • Toda la interacción cabe cómodamente en un diagrama de secuencia con un fragmento alt
  • Solo hay un camino: la vista global añadiría una caja y ninguna información
  • Todavía no has dibujado de verdad las interacciones referenciadas
  • Los pasos son trabajo y no interacciones: eso es un diagrama de actividad normal

Este es el diagrama menos usado de UML, y su nicho es real pero estrecho. El consejo honesto es que a la mayoría de los flujos les sirve mejor un diagrama de secuencia con un fragmento alt. Recurre a un diagrama global de interacción en el punto en que ese diagrama único deja de caber en una pantalla, cosa que pasa, y cuando pasa nada más en el lenguaje lo resuelve con tanta limpieza.

En una línea cada uno

  1. 01Un diagrama de actividad cuyos nodos son interacciones y no acciones.
  2. 02La notación de flujo de control se toma sin cambios de los diagramas de actividad.
  3. 03Un marco etiquetado ref señala a una interacción definida en otro sitio; sd significa que está dibujada dentro.
  4. 04Su propósito es romper un diagrama de secuencia que se ha vuelto ilegible.
  5. 05Dibuja primero los diagramas de secuencia referenciados: la vista global es un índice, no un sustituto.

04Preguntas frecuentes#

¿Qué es un diagrama de visión general de interacción UML?

Un diagrama de actividad cuyos nodos son interacciones enteras en lugar de acciones individuales. Se sitúa por encima de un conjunto de diagramas de secuencia y muestra cuál corre cuándo, incluidas las ramas y bucles entre ellos.

¿Qué es una ocurrencia de interacción?

Una referencia a una interacción definida en otro sitio, dibujada como un marco etiquetado ref que lleva el nombre del diagrama de secuencia al que apunta. Es lo que permite al diagrama de visión general seguir siendo pequeño, ya que cada nodo es un diagrama entero que ya has dibujado.

¿En qué se diferencia de un diagrama de actividad?

La notación de flujo de control es la misma: nodos inicial y final, decisiones, fusiones, bifurcaciones y uniones. Lo que cambia es qué son los nodos. Los de un diagrama de actividad son acciones; los de uno de visión general de interacción son interacciones.

¿Cuándo merece la pena dibujar uno?

Cuando tienes más de unos tres diagramas de secuencia describiendo una misma función y nada dice cómo se relacionan. Es el mapa, y un mapa solo sirve cuando hay territorio suficiente para perderse en él.

En esta serie

Lecturas relacionadas

Todos los artículos