UML 2 pour les bases de données
164
© Éditions Eyrolles
Le même type de raisonnement vaut pour toute autre contrainte (exclusivité, totalité, inclusion, unicité) qu’il faudra programmer en fonction de la nature de l’association (un-à-un, unà-plusieurs, etc.).
Classes-associations UML
Nous étudions ici la transformation d’une classe-association reliée à une autre classe-association (classe A2 de la figure 2-80). Ce cas se présente lors de la présence de contraintes d’inclusion ou d’unicité sur une association n-aire. Bien que nous considérions un exemple générique (n
= 3), le même raisonnement vaut pour un degré d’association supérieur.
Figure 2-79 Solutions sans collection
Figure 2-80 Classes-associations UML
Entrainement[ codent , date_ent, region ]
Pilote[ numpil , nom, grade, @refSani, @refEntraine ]
Sanitaire[ codesan , organisme, contingent ]
Entrainement [codent , date_ent, region]
MissionEnt[@refEntraine, @refPilote ]
Pilote[ numpil , nom, grade
MissionSani[@refSani, @refPilote ]
Sanitaire[ codesan, organisme, contingent]
Solution universelle
C1
C2
*
ou
1..*
*
ou
1..*
A1
a
C3
A2
b
m1
m2
Précédent

- 171/316

Suivant