Modélisation Cours 05 – Modélisation de la BD avec UML

Modélisation Cours 05 - Modélisation de la BD avec UML - page
1
/6 - Bertrand LIAUDET
Modélisation
Cours 05 Modélisation de la BD avec UML
Bertrand LIAUDET
SOMMAIRE
SOMMAIRE 1
MODELISATION UML DE LA BD 1
0. Présentation 1
1. Exemples de MEA avec le modèle de BD UML correspondant 2
Les employés et les départements 2
Les courriers : association non hiérarchique sans attributs 3
La bibliothèque : association non hiérarchique avec attributs et classe-association 4
Les cinémas : identifiant relatif et composition 5
Les chantiers :ritage 6
Première édition : juin 2008
Mise à jour : juin 2010
MODELISATION UML DE LA BD
0. Présentation
Le diagramme de classe UML peut être utilisé pour modéliser les données de la BD.
Toutefois, il ne faut pas oublier que ce n’est pas son but.
Un diagramme de classes modélise les classes qui vont intervenir dans une application
développée avec un langage objet (C++, java, etc.).
Un modèle des données modélise les tables de la BD.
Avec un outil de génie logiciel (PowerAMC par exemple), on commencera par faire un MEA.
Celui-ci pourra être traduit en SQL et aussi en diagramme de classes.
On peut partir du diagramme de classes correspondant au modèle des données pour concevoir
le diagramme de classes de l’application objet.
Modélisation Cours 05 - Modélisation de la BD avec UML - page
2
/6 - Bertrand LIAUDET
1. Exemples de MEA avec le modèle de BD UML correspondant
Les employés et les départements
MEA
1,1
0,n
0,1
0,n
EMPLOYES
NE
nom
job
dateEntree
salaire
comm
DEPARTEMENTS
ND
nom
ville
Travaille dans
a pour chef
UML
0..*
1..1
a pour chef
0..*
0..1
EMPLOYES
+
+
+
+
+
+
NE
nom
job
dateEntree
salaire
comm
: int
: java.lang.String
: java.lang.String
: java.util.Date
: double
: double
DEPARTEMENTS
+
+
+
ND
nom
ville
: int
: java.lang.String
: java.lang.String
Explications
La notion de clé primaire n’a pas de signification dans un diagramme de classe. En effet,
tout objet (instance d’une classe) est caractérisé par ses attributs, ses méthodes et son
identifiant qui est son adresse. Cependant, on peut préciser la notion d’identifiant primaire
pour les attributs.
Les cardinalités des associations UML peuvent reprendre le même formalisme que dans le
MEA : 0.1, 1.1, 0.N, 1.N.
La position des cardinalités est inversée par rapport au formalisme MEA : un employé
travaille dans 1 et 1 seul département. La cardinalité 1.1 est du coté du département.
Les associations UML sont orientées : il peut y avoir des flèches dans un sens ou un autre.
Cette notion n’ayant pas de sens dans le MEA, l’association sera rendu navigable dans les
deux sens, ce qui conduit à l’élimination des flèches.
Modélisation Cours 05 - Modélisation de la BD avec UML - page
3
/6 - Bertrand LIAUDET
Les courriers : association non hiérarchique sans attributs
MEA
0,n
1,n
PERSONNES
NP
nom
Adesse
CP
Ville
Pays
COURRIERS
NC
Texte
DateEnvoi
RECEVOIR
UML
RECEVOIR
0..*
1..*
PERSONNES
+
+
+
+
+
+
NP
nom
Adesse
CP
Ville
Pays
: int
: java.lang.String
: java.lang.String
: java.lang.String
: java.lang.String
: java.lang.String
COURRIERS
+
+
+
NC
Texte
DateEnvoi
: int
: int
: int
Explications
Les associations non hiérarchiques sans attributs du MEA sont transformées en association
dans le modèle de BD UML. La position des cardinalités est inversée : un personne peut
recevoir 0 ou N courriers (ça peut être 0 si on ne lui à jamais écrit). Un courrier est envoyé
à 1 ou N personnes. Au moins 1 car il n’y a pas de courriers qui ne soit pas envoyé.
Modélisation Cours 05 - Modélisation de la BD avec UML - page
4
/6 - Bertrand LIAUDET
La bibliothèque : association non hiérarchique avec attributs et classe-association
MEA
0,n
1,1
0,n
0,n
ADHERENTS
NA
nom
adr
tel
LIVRES
NL
éditeur
EMPRUNTER
datEmp
duréeMax
datRet
OEUVRES
N0
auteur
titre
correspond à
UML
0..*
0..*
0..*
1..1
ADHERENTS
+
+
+
+
NA
nom
adr
tel
: double
: java.lang.String
: java.lang.String
: java.lang.String
LIVRES
+
+
NL
éditeur
: int
: int
EMPRUNTER
+
+
+
datEmp
duréeMax
datRet
: java.util.Date
: java.util.Date
: java.util.Date
OEUVRES
+
+
+
N0
auteur
titre
: int
: java.lang.String
: java.lang.String
Explications
En UML, on ne peut pas mettre d’attributs sur les associations. Les associations non
hiérarchiques avec attributs du MEA donnent lieu dans le modèle de BD UML à des
classes-associations.
Une classe-association est une association classique à laquelle est raccrochée une classe
dont les attributs proviennent de l’association non hiérarchique du MEA.
Modélisation Cours 05 - Modélisation de la BD avec UML - page
5
/6 - Bertrand LIAUDET
Les cinémas : identifiant relatif et composition
MEA
0,n
(1,1)
Cinémas
NC
nom
Adesse
CP
Ville
Pays
Salles
NS
NbPlaces
Ecran
Son
Est composé de
UML
Est composé de
0..*
1..1
Cinémas
+
+
+
+
+
+
NC
nom
Adesse
CP
Ville
Pays
: int
: java.lang.String
: java.lang.String
: java.lang.String
: java.lang.String
: java.lang.String
Salles
+
+
+
+
NS
NbPlaces
Ecran
Son
: int
: double
: java.util.Date
: int
Explications
L’identifiant relatif du MEA est transformé, dans le modèle de BD UML, en une
association de composition : losange plein (et pas creux !) du coté du composé.
La composition signifie que si on supprime de cinéma, alors on supprime aussi les salles.
1 / 6 100%

Modélisation Cours 05 – Modélisation de la BD avec UML

La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans linterface ou les textes ? Ou savez-vous comment améliorer linterface utilisateur de StudyLib ? Nhésitez pas à envoyer vos suggestions. Cest très important pour nous !