UML - Diagrammes d'interaction

À partir du terme Interaction, il est clair que le diagramme est utilisé pour décrire certains types d'interactions entre les différents éléments du modèle. Cette interaction fait partie du comportement dynamique du système.

Ce comportement interactif est représenté en UML par deux diagrammes appelés Sequence diagram et Collaboration diagram. L'objectif de base des deux schémas est similaire.

Le diagramme de séquence met l'accent sur la séquence temporelle des messages et le diagramme de collaboration met l'accent sur l'organisation structurelle des objets qui envoient et reçoivent des messages.

Objectif des diagrammes d'interaction

Le but des diagrammes d'interaction est de visualiser le comportement interactif du système. Visualiser l'interaction est une tâche difficile. Par conséquent, la solution consiste à utiliser différents types de modèles pour capturer les différents aspects de l'interaction.

Les diagrammes de séquence et de collaboration sont utilisés pour capturer la nature dynamique mais sous un angle différent.

Le but du diagramme d'interaction est -

  • Pour capturer le comportement dynamique d'un système.

  • Pour décrire le flux de messages dans le système.

  • Décrire l'organisation structurelle des objets.

  • Décrire l'interaction entre les objets.

Comment dessiner un diagramme d'interaction?

Comme nous l'avons déjà discuté, le but des diagrammes d'interaction est de capturer l'aspect dynamique d'un système. Donc, pour capturer l'aspect dynamique, nous devons comprendre ce qu'est un aspect dynamique et comment il est visualisé. L'aspect dynamique peut être défini comme l'instantané du système en cours d'exécution à un moment particulier

Nous avons deux types de diagrammes d'interaction en UML. L'un est le diagramme de séquence et l'autre est le diagramme de collaboration. Le diagramme de séquence capture la séquence temporelle du flux de messages d'un objet à un autre et le diagramme de collaboration décrit l'organisation des objets dans un système participant au flux de messages.

Les éléments suivants doivent être clairement identifiés avant de dessiner le diagramme d'interaction

  • Objets participant à l'interaction.

  • Le message circule parmi les objets.

  • L'ordre dans lequel les messages circulent.

  • Organisation d'objets.

Voici deux diagrammes d'interaction modélisant le système de gestion des commandes. Le premier diagramme est un diagramme de séquence et le second est un diagramme de collaboration

Le diagramme de séquence

Le diagramme de séquence comporte quatre objets (Customer, Order, SpecialOrder et NormalOrder).

Le diagramme suivant montre la séquence de messages pour l' objet SpecialOrder et le même peut être utilisé dans le cas de l' objet NormalOrder . Il est important de comprendre la séquence temporelle des flux de messages. Le flux de messages n'est rien d'autre qu'un appel de méthode d'un objet.

Le premier appel est sendOrder () qui est une méthode de l' objet Order . L'appel suivant est confirm () qui est une méthode de l' objet SpecialOrder et le dernier appel est Dispatch () qui est une méthode de l' objet SpecialOrder . Le diagramme suivant décrit principalement les appels de méthode d'un objet à un autre, et il s'agit également du scénario réel lorsque le système est en cours d'exécution.

Le diagramme de collaboration

Le deuxième diagramme d'interaction est le diagramme de collaboration. Il montre l'organisation des objets comme le montre le diagramme suivant. Dans le diagramme de collaboration, la séquence d'appels de méthode est indiquée par une technique de numérotation. Le nombre indique comment les méthodes sont appelées les unes après les autres. Nous avons utilisé le même système de gestion des commandes pour décrire le diagramme de collaboration.

Les appels de méthode sont similaires à ceux d'un diagramme de séquence. Cependant, la différence étant le diagramme de séquence ne décrit pas l'organisation des objets, alors que le diagramme de collaboration montre l'organisation des objets.

Pour choisir entre ces deux schémas, l'accent est mis sur le type d'exigence. Si la séquence temporelle est importante, alors le diagramme de séquence est utilisé. Si une organisation est requise, un diagramme de collaboration est utilisé.

Où utiliser les diagrammes d'interaction?

Nous avons déjà discuté du fait que les diagrammes d'interaction sont utilisés pour décrire la nature dynamique d'un système. Maintenant, nous allons examiner les scénarios pratiques où ces diagrammes sont utilisés. Pour comprendre l'application pratique, nous devons comprendre la nature de base du diagramme de séquence et de collaboration.

L'objectif principal des deux diagrammes est similaire car ils sont utilisés pour capturer le comportement dynamique d'un système. Cependant, l'objectif spécifique est plus important à clarifier et à comprendre.

Les diagrammes de séquence sont utilisés pour capturer l'ordre des messages circulant d'un objet à un autre. Les diagrammes de collaboration sont utilisés pour décrire l'organisation structurelle des objets participant à l'interaction. Un seul diagramme n'est pas suffisant pour décrire l'aspect dynamique d'un système entier, c'est pourquoi un ensemble de diagrammes est utilisé pour le capturer dans son ensemble.

Les diagrammes d'interaction sont utilisés lorsque nous voulons comprendre le flux de messages et l'organisation structurelle. Le flux de messages désigne la séquence du flux de contrôle d'un objet à un autre. L'organisation structurelle désigne l'organisation visuelle des éléments d'un système.

Des diagrammes d'interaction peuvent être utilisés -

  • Modéliser le flux de contrôle par séquence temporelle.

  • Modéliser le flux de contrôle par les organisations structurelles.

  • Pour l'ingénierie avancée.

  • Pour la rétro-ingénierie.