Accueil
 Sommaire
 1  Objectifs de ce cours de modélisation orientée objet
 2  Généralités sur la modélisation orienté objet et sur UML
 3  Analyse, vues cas d'utilisation et processus
 4  Analyse et conception, aspects statiques de la vue logique
 4.1  Diagrammes communs à l'analyse et à la conception
 4.2  Diagramme de classes
 4.2.1  Modéliser la structure logique du système dans un diagramme de classes
 4.2.2  Classe
 4.2.3  Instanciation: création d'un objet d'une classe
 4.2.4  Attributs et opérations de classe
 4.2.5  Attribut dérivé
 4.2.6  Association entre classes
 4.2.7  Nom de rôle et multiplicité
 4.2.8  Généralisation spécialisation ou héritage
 4.2.9  Généralisation spécialisation: vision ensembliste
 4.2.10  Généralisation spécialisation: vision encapsulation
 4.2.11  Généralisation et redéfinition d'opérations
 4.2.12  Méthode Polymorphique et liaison dynamique
 4.2.13  Agrégation
 4.2.14  Exemple de diagramme de classes
 4.2.15  Éléments de méthodologie
 4.3  Diagramme d'objets
 QCM
 4.4  Concepts avancés du diagramme de classes
 5  Analyse et conception, aspects dynamiques de la vue logique
 6  Conception, aspects langage et technique
 7  Conception, vues développement et physique
 8  Conclusion
 9  Bibliographie

 Contacts

W3C validator

Département INF  
 Conception et programmation orientées objet


4.2.13 Agrégation
  • Agrégation = une association exprimant un couplage fort lié à une relation de subordination
    • A-UN, EST-UNE-PARTIE-DE
  • Elle est asymétrique du type « ensemble / élément » ou « contenant / contenu  »
  • Règles permettant de choisir une agrégation :
    • Est-ce une partie de ?
    • Les opérations appliquées à l’ensemble sont-elles appliquées à l’élément ?
    • Les changements d’états sont-ils liés ?
  • Attention :
    • Un élément agrégé peut être lié à d’autres classes
    • La suppression de l’ensemble n’entraîne pas celle de l’élément

Figures/agregation

    précédent     suivant 


Dans les diagrammes de classes, nous sommes souvent appelés à utiliser des associations que nous nommerions contient ou appartient à. En fait, cet usage est tellement fréquent que UML a défini une notation spécifique pour ce type d’association, l’agrégation. Une agrégation exprime une relation « contenant / contenu » ou « ensemble / élément », ou encore « agrégé / agrégat ». Par analogie avec la généralisation spécialisation qui se repère par la relation « est un », l’agrégation se repère par la relation « est une partie de » ou « a un » et le couplage fort entre l’ensemble et les éléments. Par exemple, déplacer un Polygone revient à déplacer ses Points. Il est important de noter que l’agrégation autorise qu’un élément de l’ensemble appartienne à un autre ensemble. Nous verrons plus tard que ce n’est pas le cas de la composition, une relation exprimant une relation de couplage encore plus fort : un élément appartient exclusivement à un ensemble.

Cf. le glossaire pour la définition du terme « agrégation ».

D. Conan, C. Taconet, C. Bac, Télécom SudParis, CSC 4002, Octobre 2015