UML Association vs Agrégation vs Composition

Tout savoir sur l'association, l'agrégation et la composition

Les diagrammes UML sont un moyen pratique de comprendre et d'établir des liens entre les entités structurelles ou de regroupement. Une bonne connaissance de tous les aspects techniques et une compréhension approfondie des concepts de relations logiques sont importantes pour l'exécution de la programmation orientée objet.

L'UML permet de comprendre comment un ou plusieurs éléments sont associés les uns aux autres. Le type de relation le plus courant est l'association. Examinons-le en détail.

Qu'est-ce qu'une relation d'association ?

En langage courant, les relations d'association sont définies comme la relation entre deux unités séparées. Les points communs sont recherchés entre les entités et des liens sont établis entre elles. L'association permet d'établir des connexions logiques par le biais d'une référence continue.

Les associations sont représentées dans un diagramme UML par une simple ligne continue reliant des classes identiques ou différentes. L'association peut être démontrée entre un-à-un, un-à-plusieurs, plusieurs-à-plusieursclasses. Les relations d'association marquant un lien de communication entre deux entités, elles ne doivent pas être ambiguës et doivent être étiquetées clairement. L'étiquetage est suivi d'une petite pointe de flèche pour une meilleure compréhension de la relation.

Comme le montre l'exemple ci-dessous, la relation d'association est représentée entre une banque et son employé. Les lignes pleines multiples proviennent de la classe principale, c'est-à-dire la banque. Ce diagramme montre une relation d'association de type "un à plusieurs".

relation entre la banque et les employés

Généralisation VS Association

Comme son nom l'indique, la généralisation est une façon de classer des objets similaires d'une manière plus généralisée. Les entités montrent une relation parent-enfant entre une entité générale et une entité unique, cette dernière étant une forme spécialisée de la classe générale. En comparaison, l'association relie différentes entités et représente la manière dont une classe utilise la fonctionnalité de l'autre objet lié.

La généralisation représente les "sortes de" relations, tandis que l'association aide à montrer la "a-un" relation. Cela signifie que la généralisation est liée à l'affichage des héritages, tandis que l'association montre les liens basés sur les points communs.

EdrawMax

Logiciel de diagrammes tout-en-un
Créer plus de 280 types de diagrammes sans effort
Commencez facilement à créer des diagrammes à l'aide de divers modèles et symboles
  • Compatibilité supérieure des fichiers : Importer et exporter des dessins vers différents formats de fichiers, tels que Visio
  • Prise en charge multiplateforme (Windows, Mac, Linux, Web)
Téléchargement gratuit
Téléchargement gratuit
Téléchargement gratuit

Types de relations d'association

En fonction du lien, l'association est divisée en quatre types principaux. Il est classé comme suit :

1. La multiplicité

L'association de multiplicité se réfère aux cas où une classe liée apparaît plusieurs fois. Au lieu de reformuler l'entité, nous spécifions les instances maximales et minimales auxquelles elle peut être liée. Par conséquent, dans de telles relations, nous marquons un astérisque avec la ligne d'association. L'astérisque représente un maximum intermédiaire.

L'image ci-dessous permet de comprendre comment la multiplicité peut être exprimée dans différentes circonstances.

multiplicité

2. Association dirigée

Comme son nom l'indique, l'association dirigée fait référence à la direction du flux de communication au sein d'une relation d'association. Par défaut, les relations d'association sont navigables bilatéralement ; toutefois, l'association dirigée permet d'orienter le flux dans une seule direction. L'association dirigée est représentée par la présence d'une ligne continue avec une pointe de flèche.

Ici, une association unidirectionnelle est représentée entre un serveur et un client. La direction de la flèche montre qu'un serveur peut traiter les demandes d'un client.

association dirigée

3. Association réflexive

L'association réflexive est décrite comme la relation entre les instances d'une même classe. Une telle association est classée en deux types : Réflexe d'association symétrique et asymétrique. Aucun symbole spécifique ne lui est attribué, mais la relation renvoie à la même classe.

Association réflexive

Agrégation VS composition

L'agrégation et la composition sont deux sous-ensembles de l'association ; cependant, la composition est un autre sous-ensemble de la relation d'agrégation. En termes simples, agrégation peut être défini comme le fait que les objets d'une classe peuvent accéder aux entités d'une autre classe. Alors que la composition représente une relation bilatérale et que l'objet ne fait partie que d'un seul composite à la fois.

Agrégats représentés dans un diagramme UML

L'agrégation est une association dans laquelle les entités sont configurées ensemble pour créer un objet plus complexe. Il permet de décrire un groupe d'objets et leur lien commun. Il définit un point de contrôle unique, appelé agrégat, et le groupe d'objets représentant l'assemblage.

Dans un diagramme UML, les données circulent de l'agrégat (classe mère) vers l'assemblage (classe fille) avec une forme de diamant (non rempli) près de la première classe. Le classificateur de pièces ou les entités d'assemblage peuvent être liés à plusieurs agrégats et exister indépendamment.

Agrégats représentés dans un diagramme UML

Cet exemple montre que la voiture a toujours besoin d'une roue et d'un moteur pour fonctionner correctement, alors que le moteur et la roue n'ont pas toujours besoin d'une voiture. Ils peuvent être utilisés avec un bus, un vélo, des machines, une tondeuse à gazon et bien d'autres choses encore. De même, le moteur est nécessaire pour une inspection du moteur, mais le moteur peut exister en tant qu'entité indépendante et être associé à d'autres véhicules.

Compositions représentées dans un diagramme UML

Les compositions sont également un type d'association représentant une relation bidirectionnelle, fortement dépendante, entre deux classes différentes. Si le composite est supprimé, les autres entités qui lui sont liées sont également supprimées.

Il illustre la dépendance entre le parent et l'enfant. Dans un diagramme UML, dessinez une ligne entre la classe parentale et la classe enfantine avec un losange rempli près de la classe parentale.

Compositions représentées dans un diagramme UML

Comme illustré dans cet exemple, une personne a des jambes, un cœur et un cerveau. Si le point central de ce diagramme, la personne, est blessé et tué, toutes les entités composites seront également éliminées. Contrairement à l'agrégation, les entités ne peuvent pas exister indépendamment et font "partie" de la personne.

Agrégation Composition
Un sous-ensemble d'association Un sous-ensemble de l'agrégation.
Un type d'association faible. Un type d'association fort
Les objets liés sont indépendants les uns des autres. Les objets liés sont très dépendants les uns des autres.
Représenté par un trait plein et une pointe de flèche vide. Représenté par un trait plein avec une pointe de flèche remplie.
L'agrégation est définie comme une relation de type "a". La composition est définie comme une relation de type "partie de".

La composition est-elle meilleure que l'agrégation ?

La composition est plus forte que l'agrégation. Une relation entre deux objets est appelée association, et ces deux termes en sont un sous-type.

Association, agrégation et composition

Si deux objets existent indépendamment l'un de l'autre et n'impliquent aucune propriété l'un sur l'autre, on parle d'association d'agrégation. Toutefois, si deux objets d'un système doivent coexister et dépendre l'un de l'autre, ils sont qualifiés de composition. Une telle association est qualifiée de "forte" car lorsque l'objet propriétaire est détruit, les objets liés le sont également. Au contraire, l'agrégation représente une association faible car la vie de l'objet contenu ne dépend pas de l'objet contenant.

Utiliser EdrawMax pour la création de diagrammes UML

L'association est le type de relation le plus élémentaire, mais aussi le plus important, qui permet de relier les objets d'un système. Il est essentiel de différencier ses deux types, l'agrégation et la composition, pour une mise en œuvre sans erreurs et la création de leurs diagrammes UML.

La création des diagrammes UML pour l'association est super facile si vous disposez d'un logiciel convivial et riche en outils comme EdrawMax. Avec une gamme étendue d'outils d'édition, une bibliothèque hautement personnalisable et de multiples options de modèles, la création d'un bon UML en quelques clics est un jeu d'enfant. Que vous soyez novice ou expert en technologie, la compréhension et l'utilisation du logiciel sont très faciles. Téléchargez-le pour commencer à créer les diagrammes les plus significatifs et les plus innovants en un clin d'œil !

EdrawMax

Articles Liés
Créez une diagramme UML avec EdrawMax. Essai gratuit!

Commencez! Vous allez adorer ce logiciel de diagramme facile à utiliser.

EdrawMax est parfait pour les organigrammes, les cartes mentales, les schémas de réseau, les plans d'architecture, les workflows, les diagrammes UML, lesschémas électriques, les illustrations scientifiques, les graphiques et bien plus encore! Commencez maintenant !

download EdrawMax EdrawMax online
main page