Agrégation
et composition.
Une association relie deux - ou plus - classes, sans induire
de rôle particulier pour une classe; l'association se lie indistinctement dans
les deux sens.
L'agrégation et la composition vont modéliser une situation
où l'une des classe joue un rôle particulier, l'association n'est plus symétrique.
L'agrégation.
C'est une relation particulière qui attribut à l'une des
classes le rôle d'agrégat et à l'autre classe le rôle d'agrégé.
L'agrégation peut être assimilée à une appartenance - faible -.
Soit une configuration constituée d'un certain nombre d'éléments:
Commentaires:
- L'agrégation se modélise par un losange côté agrégat.
- Une configuration comporte un clavier - ou aucun -, un écran - ou aucun -
, et éventuellement plusieurs disques
L'agrégation traduit une relation d'appartenance de l'agrégé dans l'agrégat;
elle n'induit aucune valeur de multiplicité particulière:
Commentaires:
- Une page peut contenir des images mais celles-ci peuvent appartenir à d'autres
pages.
- la destruction d'une page n'entraîne pas celle de l'image mais seulement la
suppression du lien.
Bien sûr nous aurons très souvent une cardinalité 1..1 ou 0..1 côté agrégat.
L'appartenance est dite faible car l'agrégé pourra participer à d'autres agrégats
et son cycle de vie n'est pas subordonné à celui de son agrégat. Plus haut la
disparition d'une configuration n'entraîne pas la disparition des périphériques.
La composition.
Il s'agit d'une appartenance forte.
La vie de l'objet composant est liée a celle de son composé. La notion de composant
est proche de celle d'attribut, si ce n'est que "l'attribut" est "rehaussé"
au rang de classe. On parlera de de réification, on reviendra sur cette notion
plus loin.
Commentaires:
- La composition se modélise par un losange noir côté composé.
- Une application contient de 0 à n fenêtres qui contiennent de 0 à n boutons.
- La fermeture de l'application entraîne la destruction des fenêtres qui entraîne
la destruction des boutons.
- la non-présence des valeurs de multiplicités est synonyme de 1..1
Règles :
Un composant ne peut appartenir à un moment donné qu'à un seul composé.
La cardinalité ne peut être que de 1 maximum coté composant.
La suppression du composé
entraîne celle du composant.
Exemple récapitulatif.
Commentaires
- Le châssis est un élément indissociable
d'une voiture, d'où la composition.
- Le moteur et les roues peuvent être utilisés dans d'autres voitures.
- Notez les valeurs 4..4 qui caractérisent plus précisément les valeurs de multiplicité
- Les absences de cardinalité sont assimilable à 1..1
- L'association entre Voiture et Personne n'est pas nommée, cela
est conseillé lorsque son nom est trivial: "appartient", "concerne" etc ...afin
de na pas alourdir le modèle, sans rien apporter à la sémantique.