UML - Diagramas de interacción
A partir del término Interacción, queda claro que el diagrama se usa para describir algún tipo de interacciones entre los diferentes elementos del modelo. Esta interacción es parte del comportamiento dinámico del sistema.
Este comportamiento interactivo está representado en UML mediante dos diagramas conocidos como Sequence diagram y Collaboration diagram. El propósito básico de ambos diagramas es similar.
El diagrama de secuencia enfatiza la secuencia de tiempo de los mensajes y el diagrama de colaboración enfatiza la organización estructural de los objetos que envían y reciben mensajes.
Propósito de los diagramas de interacción
El propósito de los diagramas de interacción es visualizar el comportamiento interactivo del sistema. Visualizar la interacción es una tarea difícil. Por lo tanto, la solución es utilizar diferentes tipos de modelos para capturar los diferentes aspectos de la interacción.
Los diagramas de secuencia y colaboración se utilizan para capturar la naturaleza dinámica pero desde un ángulo diferente.
El propósito del diagrama de interacción es:
Capturar el comportamiento dinámico de un sistema.
Describir el flujo de mensajes en el sistema.
Describir la organización estructural de los objetos.
Describir la interacción entre objetos.
¿Cómo dibujar un diagrama de interacción?
Como ya hemos comentado, el propósito de los diagramas de interacción es capturar el aspecto dinámico de un sistema. Entonces, para capturar el aspecto dinámico, necesitamos entender qué es un aspecto dinámico y cómo se visualiza. El aspecto dinámico se puede definir como la instantánea del sistema en ejecución en un momento particular
Tenemos dos tipos de diagramas de interacción en UML. Uno es el diagrama de secuencia y el otro es el diagrama de colaboración. El diagrama de secuencia captura la secuencia temporal del flujo de mensajes de un objeto a otro y el diagrama de colaboración describe la organización de los objetos en un sistema que participa en el flujo de mensajes.
Las siguientes cosas deben identificarse claramente antes de dibujar el diagrama de interacción
Objetos que participan en la interacción.
El mensaje fluye entre los objetos.
La secuencia en la que fluyen los mensajes.
Organización de objetos.
A continuación se muestran dos diagramas de interacción que modelan el sistema de gestión de pedidos. El primer diagrama es un diagrama de secuencia y el segundo es un diagrama de colaboración
El diagrama de secuencia
El diagrama de secuencia tiene cuatro objetos (Cliente, Pedido, Pedido especial y Pedido normal).
El siguiente diagrama muestra la secuencia de mensajes para el objeto SpecialOrder y la misma se puede utilizar en el caso del objeto NormalOrder . Es importante comprender la secuencia temporal de los flujos de mensajes. El flujo de mensajes no es más que una llamada al método de un objeto.
La primera llamada es sendOrder (), que es un método de objeto Order . La siguiente llamada es confirm () que es un método del objeto SpecialOrder y la última llamada es Dispatch () que es un método del objeto SpecialOrder . El siguiente diagrama describe principalmente las llamadas a métodos de un objeto a otro, y este es también el escenario real cuando el sistema está en ejecución.
El diagrama de colaboración
El segundo diagrama de interacción es el diagrama de colaboración. Muestra la organización del objeto como se ve en el siguiente diagrama. En el diagrama de colaboración, la secuencia de llamada al método se indica mediante alguna técnica de numeración. El número indica cómo se llaman los métodos uno tras otro. Hemos utilizado el mismo sistema de gestión de pedidos para describir el diagrama de colaboración.
Las llamadas a métodos son similares a las de un diagrama de secuencia. Sin embargo, la diferencia es que el diagrama de secuencia no describe la organización del objeto, mientras que el diagrama de colaboración muestra la organización del objeto.
Para elegir entre estos dos diagramas, se hace hincapié en el tipo de requisito. Si la secuencia de tiempo es importante, se utiliza el diagrama de secuencia. Si se requiere organización, se utiliza el diagrama de colaboración.
¿Dónde utilizar los diagramas de interacción?
Ya hemos comentado que los diagramas de interacción se utilizan para describir la naturaleza dinámica de un sistema. Ahora, veremos los escenarios prácticos donde se utilizan estos diagramas. Para comprender la aplicación práctica, debemos comprender la naturaleza básica del diagrama de secuencia y colaboración.
El propósito principal de ambos diagramas es similar, ya que se utilizan para capturar el comportamiento dinámico de un sistema. Sin embargo, es más importante aclarar y comprender el propósito específico.
Los diagramas de secuencia se utilizan para capturar el orden de los mensajes que fluyen de un objeto a otro. Los diagramas de colaboración se utilizan para describir la organización estructural de los objetos que participan en la interacción. Un solo diagrama no es suficiente para describir el aspecto dinámico de un sistema completo, por lo que se utiliza un conjunto de diagramas para capturarlo como un todo.
Los diagramas de interacción se utilizan cuando queremos comprender el flujo de mensajes y la organización estructural. El flujo de mensajes significa la secuencia del flujo de control de un objeto a otro. La organización estructural significa la organización visual de los elementos de un sistema.
Se pueden utilizar diagramas de interacción:
Modelar el flujo de control por secuencia de tiempo.
Modelar el flujo de control de las organizaciones estructurales.
Para ingeniería avanzada.
Para ingeniería inversa.