|
|
4.4.3 Composition : agrégation forte
- La composition est une agrégation forte qui lie les cycles
de vie entre le composé (ensemble) et les composants (éléments)
- Le choix entre composition et agrégation peut être pris
lors de la phase de conception
précédent suivant
La composition est une relation plus forte que
l’agrégation. Les éléments de l’ensemble
« appartiennent » de manière exclusive à l’ensemble,
contrairement à l’agrégation qui autorise qu’un élément appartienne
à plusieurs ensembles. Par ailleurs, un élément n’existe pas sans être
dans un ensemble. Ces deux règles impliquent que le cycle de vie d’un
élément (de la création jusqu’à la destruction) est contraint par le
cycle de vie de l’ensemble. Ainsi, dans l’exemple de la
diapositive, la destruction de la voiture provoque la destruction des roues.
Cet exemple interdit donc la revente ou récupération des roues de manière
séparée comme dans les casses de voiture : il aurait alors fallu mettre une
agrégation.
En résumé, les règles obligatoires (en plus de
l’association classique) pour l’agrégation sont les suivantes :
- « c’est une partie de » ;
- les opérations appliquées au composé concernent les
composants. Par exemple, d’un point de vue métier, dans l’exemple,
déplacer la voiture déplace aussi la carrosserie.
Les règles supplémentaires obligatoires pour la composition
sont les suivantes :
- la suppression du composé entraîne la suppression des
composants ;
- les composants sont créés par le composé.
Autant il est fréquent d’utiliser l’agrégation
dans les diagrammes de classes pour éviter de multiplier les associations
s’appelant « contient », autant il est dangereux de faire le
choix trop tôt de la composition avec toutes ses contraintes supplémentaires.
Aussi, c’est bien lors de la conception que ce type de décision
intervient. Dans tous les cas, lors des premières itérations d’un
diagramme de classes, que ce soit lors de l’analyse ou lors de la
conception, nous vous conseillons d’utiliser avec beaucoup de précaution
la composition et de plutôt attendre d’avoir plus de recul sur le système
à spécifier et à réaliser pour choisir une composition.
D. Conan, C. Taconet, C. Bac,
Télécom SudParis, CSC 4002, Octobre 2014
|
|