Liens entre objets (MOO)

Un lien entre objets représente une connexion entre deux objets. Il s'affiche sous la forme d'un trait plein entre deux objets.

Un lien entre objets peut être créé dans les types de diagramme suivants :

Lien entre objets dans un diagramme d'objets

Les liens entre objets ont une relation forte avec les associations du diagramme de classes : les associations entre classes, ou les associations entre une classe et une interface peuvent devenir des liens entre objets (instances d'associations) entre objets dans le diagramme d'objets. En outre, le symbole du lien entre objets dans le diagramme d'objets est similaire à celui de l'association dans le diagramme de classes, à ceci près qu'il est dépourvu de cardinalités.



Les rôles du lien entre objets sont dupliqués depuis les rôles de l'association. Un lien entre objets peut donc être une agrégation ou une composition, tout comme une association du diagramme de classes. Si tel est le cas, le symbole de composition ou d'agrégation s'affiche sur le symbole du lien entre objets. Les rôles de l'association sont également affichés sur le symbole du lien entre objets si vous avez activé l'option Noms de rôle de l'association dans les préférences d'affichage des liens entre objets.

Exemple

L'illustration suivante montre Objet_1 comme instance de Classe_1, et Objet_2 comme instance de Classe_2. Ces objets sont liés par un lien entre objets. Classe_1 et Classe_2 sont liées par une association. En outre, attendu que Classe_2 est associée à Classe_1 et hérite de Classe_3, Classe_1 et Classe_3 sont par conséquent liées par une association.

Le lien entre objets entre Objet_1 et Objet_2 dans l'illustration représente Association_1 ou Association_2.



Vous pouvez également utiliser des raccourcis d'associations, à condition toutefois que le modèle auquel ils renvoient soit ouvert dans l'espace de travail.

Comportement des liens entre objets

Les règles suivantes s'appliquent aux liens entre objets :

  • Lorsqu'une association entre classes devient un lien entre objets, les deux classes liées par l'association et les deux classes des objets liés par le lien entre objets doivent correspondre (ou bien la classe de l'objet doit hériter des classes parent liées par l'association). Ceci est également valable concernant une association entre une classe et une interface.

  • Deux liens entre objets peuvent être définis entre les mêmes objets source et destination (liens entre objets parallèles). Si vous fusionnez les deux modèles, la fonctionnalité de fusion différencie les liens entre objets parallèles en fonction des associations de diagramme de classes auxquelles ils correspondent.

  • Vous pouvez lier un objet à lui-même via un lien réflexif (même objet source et destination)

Lien entre objets dans un diagramme de communication

Un lien entre objets représente une connexion entre deux objets, il permet de mettre en exergue la collaboration entre objets, d'où le nom de diagramme de communication. Il est représenté sous forme d'un trait plein entre :

  • Deux objets

  • Un objet et un acteur (ou vice-versa)

Un lien entre objets peut être une instance d'association entre classes, ou une association entre une classe et une interface.



Le rôle du lien entre objets provient de l'association. Le nom d'un lien entre objets inclut les noms des objets situés à ses extrémités, ainsi que celui de l'association.

Le symbole du lien entre objets peut inclure plusieurs symboles de message associés.



Les liens entre objets contiennent une liste de messages ordonnée : le numéro d'ordre qui spécifie l'ordre dans lequel les messages sont échangés entre objets. Pour plus d'informations, voir Messages (MOO).

Comportement des liens entre objets

Les règles suivantes s'appliquent aux liens entre objets :

  • Vous pouvez utiliser un lien entre objets récursif (même objet source et destination).

  • Deux liens entre objets peuvent être définis entre les mêmes objets source et destination (liens entre objets parallèles).

  • Lorsque vous supprimez un lien entre objets, ses messages sont aussi supprimés si aucun diagramme de séquence ne les utilise.

  • Lorsqu'une association entre classes est transformée en lien entre objets, les deux classes liées par l'association, et les deux classes des objets liés par le lien entre objets doivent correspondre (ou bien la classe de l'objet doit hériter des classes parent liées par l'association). Ceci est également valable concernant l'association entre une classe et une interface.

  • Si vous changez une extrémité d'une association, le lien entre objets qui vient de l'association est détaché.

  • Lorsque vous copiez et collez, ou que vous déplacez, un lien entre objets, ses messages sont automatiquement copiés.

  • Lorsque les extrémités du message changent, le message est détaché du lien entre objets.

  • Si vous utilisez la fonctionnalité Afficher les symboles pour afficher le symbole d'un lien entre objets, tous les messages attachés au lien entre objets sont affichés.