Académique Documents
Professionnel Documents
Culture Documents
ReflexionsModeleClasses 5p
ReflexionsModeleClasses 5p
Diagramme de classes
On peut définir la modélisation de deux
façons différentes :
Vision statique pure, en utilisant l’héritage
Vision dynamique, en exploitant les rôles
par des associations
Les caractéristiques d’une classe ne sont
alors déterminées qu’à l’exécution, à la
création des instances.
2
V. Deslandres, IUTA
1
Ex.: Modéliser la société : modèle1
Personne enfant
* {ordered}
Nom ^
Donne_naissance
Age
{disjoint, complete}
Homme Femme
mari femme
0..1 <épouse 0..1 mère
{context Femme
inv: card(mari)==1 => Age>=18
inv: card(enfant)>0 => card(mari)==1}
3
V. Deslandres, IUTA
Interprétation du modèle1
Le choix de modélisation des classes est « orienté
relations »
Les caractéristiques de la Femme sont déterminées
à l’exécution, lors de la création des instances (âge,
maternité, mariage)
Cela implique de spécifier des invariants au niveau
de l’objet Femme qui complexifient le modèle
Plus de nombreux contrôles dynamiques
Le modèle comporte un « niveau fonctionnel »
important
4
V. Deslandres, IUTA
2
Ex.: Modéliser la société : modèle2
Personne
Nom enfant
* {ordered}
Age
^
{disjoint, complete} Donne_naissance
Homme Femme
mari
0..1 <épouse femme FemmeAdulte
0..1
Mère
{context FemmeAdulte
inv: Age>=18} 5
V. Deslandres, IUTA
Interprétation du modèle2
Le choix de modélisation des classes est ici
orienté Héritage
donne une vision plus «statique »
Les différents rôles attribués à l’entité Femme
sont modélisés sous forme de classes
Cela implique que les rôles sont figés dans le
temps, on a détaillé le niveau structurel
Il y a moins d’invariants (moins de description
« fonctionnelle »)
6
V. Deslandres, IUTA
3
Comparatif : orienté Relations
Les plus
+ peu de classes
+ les rôles peuvent évoluer
au cours du temps
+ extension facile
ex. : on peut ajouter un
SalaireAnnuel à Personne
(associé à un invariant que
l’âge (>18 ans)) Les moins
8
V. Deslandres, IUTA
4
Quelle orientation choisir ?
On préfèrera une vision « orienté relations »
quand :