UML Merise
UML Merise
UML Merise
Donsez/cours
Didier DONSEZ
Université Joseph Fourier
PolyTech’Grenoble - LIG/ADELE
Didier.Donsez@imag.fr
Didier.Donsez@ieee.org
25/09/2007
2
Motivations
Concepts de Base
• Type d ’Entité (Entity Set)
• Type d ’Association (Relationship Set)
• Attribut (Attribute)
• Clé (Key) Etudiant Suivre Cours
0..n 0..n
Etudiant Cours
numss code
Suivre
nom titre
adresse année heure
25/09/2007
4
Les Clés
Cours Cours
Naturelle (Natural)
• Attribut seul ou composition d ’attributs
• doit toujours être renseigné (NOT NULL)
• Remarque : Attribut clé représentant une composition
ISBN : numéro intl d ’éditeur + numéro d ’ouvrage
GENCOD, EAN, SKU : numéro intl de fabricant + numéro de produit
• clé d ’une entité faible
Artificielle (Surrogate)
• introduction d ’un attribut artificiel n ’appartenant pas au
D. Donsez, EA et BD, 1998-2007
système décrit.
• performance en comparaison
• compacité du stockage
souvent employé pour les bases décisionnelles
25/09/2007
6
A B A B A B
E/A A R B A R B A R B
Associativité Many-to-One
Encadrant
Etudiants Enseignants
de Stage
Association n-Aire
année
Année
année
25/09/2007
10
Couple Ami
époux épouse 1 2
Personne Personne
D. Donsez, EA et BD, 1998-2007
époux épouse 1 2
nom nom
Remarque
• Certains attributs clés sont composés et forme la clé d’une entité faible
• ISBN, GENCOD, EAN, SKU, IBAN, …
25/09/2007
13
appartient >
Employé Service
nemp 1..n 1 nom
nom adr
sal
25/09/2007
14
0..n 0..n
A R B A B
ka kb
cc B
ka aa kb bb aa bb
cc
Many-to-Many A ka aa R ka kb cc B kb bb
N-M ... ... ... ... ... ... ...
0..n 0..1
A R B A B
ka kb
Coût des jointures ! cc B
ka aa kb bb aa bb
cc
A ka aa R ka kb cc B kb bb
... ... ... ... ... ... ...
Many-to-One
N-1 A ka aa kb cc B kb bb
... ... ... ... ... ...
D. Donsez, EA et BD, 1998-2007
0..1 0..1
A R B A B
ka kb
Coût des jointures ! cc B
ka aa kb bb aa bb
cc
A ka aa R ka kb cc B kb bb
One-to-One ... ... ... ... ... ... ...
1-1
A ka aa kb cc B kb bb
... ... ... ... ... ...
D. Donsez, EA et BD, 1998-2007
A ka aa B kb bb ka cc
... ... ... ... ... ...
25/09/2007
17
0..n 0..1
A B
A R B
ka kb
B
aa bb
ka aa cc kb bb cc
A ka aa kb cc B kb bb
... ... ... ... ... ...
primary key(ka,kb), )
- - différent du cas N-to-1
foreign key (kb) references B
)
Exercices
de transformation E/A vers Relationnel
Exercice 1
• transformez les cas de l ’entité faible avec 3 tables A,
B, R
Exercice 2
• transformez le schéma suivant
• attention à l ’ordre des noms
Domaines Domaines
D. Donsez, EA et BD, 1998-2007
Machines @ @
Secondaires Primaires
Exercices
de transformation E/A vers Relationnel
Exercice 3
• transformez le schéma suivant
#client
Client Préfère
nom
Date ∈
date
D. Donsez, EA et BD, 1998-2007
Produit ∈
R Modèle ∈
R Marque
1 - Separation
Emp nemp nom sal Cadre nemp prime
100 Dupond 5000 200 10000
200 Durant 20000
2 - Push down
D. Donsez, EA et BD, 1998-2007
CI : {Emp.nemp}∩
∩ {Cadre.emp} = ∅
25/09/2007
25
3 - Push Up
Inconvénients
4
Emp typemp nemp nom sal prime Emp typemp
EMP 100 Dupond 5000 NULL EMP
CAD 200 Durant 20000 10000 CAD
Emp.typemp est une clé étrangère
CI : Emp.typemp =EMP ⇒ prime=NULL
5
Emp typemp
D. Donsez, EA et BD, 1998-2007
Entité Abstraite
Employé : entité abstraite (notion dans Java, C#, C++, UML, ...)
• pas de tuple (instance) Employé
Cadre prime
Employé
Domaine typemp
CD typeemp IN (OUV,CAD)
CI : Emp.typemp !=CAD ⇒ prime=NULL
CI : Emp.typemp !=OUV ⇒ equipe=NULL
25/09/2007
32
Transformation E/A vers Relationnel
L ’évolution de Schéma
Inconvénients
• Ajout d ’une sous entité Dirigeant
• Impacts Département
sur le schéma
sur les contraintes d ’intégrité
D. Donsez, EA et BD, 1998-2007
Transformation E/A
vers l ’Objet-Relationnel
But
• Implantation du modèle E/A
sur un SGBD Objet-Relationnel
Fonctionnalités disponibles
• pour les Sous-Entités
• Héritage de Type et Héritage de Table
• pour les Associations
• table indépendante ou collection imbriquée (tableau dimensionnable,
table imbriquée)
D. Donsez, EA et BD, 1998-2007
Héritage
Héritage de Table
Mettre en correspondance les Sous-Entités avec des Sous
Tables
Héritage de Type
• Même problème que pour le relationnel pur
• Utilisation des sous types dans le Push-Down
D. Donsez, EA et BD, 1998-2007
25/09/2007
35
Cas général :
Association Many-to-Many (i)
0..n 0..n
A R B A B
ka kb
cc B
ka aa kb bb aa bb
cc
Many-to-Many A ka aa R ra rb cc B kb bb
N-M ... ... ... ... ...
A B
ka kb
aa bb
Many-to-Many A ka aa B kb bb {ras}
N-M ... ... ... ...
create table A of tA ( );
primary key(ka), create table B of tB (
); primary key(kb)
);
25/09/2007
38
Cas général :
Association One-To-One
A R B
ka aa kb bb
One-To-One A ka aa rb B kb bb ra
1,1 ... ... ... ...
); create table B of tB (
create table A of tA ( primary key(kb),
primary key(ka), SCOPE FOR ra IS A
SCOPE FOR rb IS B );
);
25/09/2007
39
Bibliographie
Roger Mounyol, "Merise par l'Exemple", Ed Ellispes, 1991, ISBN 2-7298-9114-5
Chris Date, "Introduction aux Bases de Données", 6ème édition, Ed Intl Thomson Publ.
ISBN 2-84180-964-1, 970 pp
Jeffrey D. Ullman, Jennifer Widom, "A First Course in Database Systems", 1ère édition,
Ed. Prentice Hall Engineering, Science & Math, Avril 1997, ISBN 0-13-861337-0, 470 pp.
PPS Chen. The Entity-Relationship model toward a unified view of data. ACM
Transactions on Database Systems, March 1976.
Michael Blaha, William Premerlani. Object-Oriented Modeling and Design for Database
Applications, Prentice Hall, Englewood Cliffs, New Jersey, 1998.
• http://www.omtassociates.com/Pages/papers.html
Christian Soutou, "Objet-Relationnel sous Oracle8, Modélisation avec UML", Ed Eyrolles,
1999, ISBN 2-212-09063-3
• décrit bien les alternatives de conception des associations avec l ’objet-relationnel et avec le relationnel
Christian Soutou, "De UML à SQL : Conception de bases de données", Ed Eyrolles,
D. Donsez, EA et BD, 1998-2007