Le modèle Entité-Relation

Transcription

Le modèle Entité-Relation
Plan
Le modèle Entité-Relation (E-R) :
la base
Bernard ESPINASSE
Professeur à Aix-Marseille Université (AMU)
Ecole Polytechnique Universitaire de Marseille
Fevrier 2013
• Historique
• Concepts de base :
• Cardinalités (multiplicités)
• Dépendances fonctionnelles
• Élaboration d'un modèle E-R
Bernard ESPINASSE - Modèle Entité-Relation : la base
1.
Historique
2.
Concepts de base :
3.
Cardinalités (multiplicités)
4.
Dépendances fonctionnelles
5.
Élaboration d'un modèle E-R
Référence du cours : « Ingénierie des systèmes d'information : Merise deuxième
génération », Nanci D., B. Espinasse avec la collaboration de B. Cohen, J.C. Asselborn et
H. Heckenroth (2001), 4° Ed. Vuibert Informatique, Paris. ISBN : 2-7117-8674-9 (416
pages).
1
Historique
Graphisme
• pour l'élaboration des modèles de données (MCD):
3 concepts de base :
• nécessité d'un formalisme graphique
• approche ENTITE-RELATION (P.Chen 75)
2
Bernard ESPINASSE - Modèle Entité-Relation : la base
• PROPRIETE :
description
• ENTITE (individu):
structure
• RELATION (association):
structure
• formalisme INDIVIDUEL (D.Nanci, D.Pascot, H.Tardieu 75)
• norme ISO: ENTITY-RELATIONSHIP
Une représentation graphique :
entité
relation
• 3 concepts de base :
PERSONNE
• PROPRIETE
• ENTITE
• RELATION (association)
nom
prénom
age
LOGEMENT
1,n
cardinalités
Bernard ESPINASSE - Modèle Entité-Relation : la base
3
Bernard ESPINASSE - Modèle Entité-Relation : la base
habiter
0,n
adresse
type
surface
propriété
4
Propriété
Entité
Propriété = particule élémentaire d'information
Entité = représentation d'une famille d'objets distinguables perçus comme stables
et homogènes
nom
valeur
TYPE
OCCURENCE
couleur ...............................
rouge
bleu
vert
âge ......................................
22
23
24
56
PERSONNE
nom
prénom
adresse
rue
code postal
ville
attention !!!! : dans un modèle de données, on ne représente pas les valeurs
mais les TYPES des valeurs
Propriété composée : adresse : rue, code postal, ville
PERSONNE
nom
prénom
adresse
rue
code postal
ville
5
Bernard ESPINASSE - Modèle Entité-Relation : la base
Entité
Règles :
1) pour toute occurrence d'entité, il y a au plus une valeur pour chacune de ses propriétés
(stabilité)
2) au moins une propriété, identifiante, permet de distinguer les occurrences d'entité entre
elles (distinguabilité)
3) toute propriété doit avoir un sens pour toute occurrence d'entité même si elle est
inconnue à un certain moment (homogénéité)
6
Bernard ESPINASSE - Modèle Entité-Relation : la base
Re lation
• Types/occurrences :
Relation = classe d'information définies par rapport à un ensemble d'entités
3
5
1
2
Pensées
Guerre
et
Paix
Guerre
et
Paix
8
2
Combien y a-t-il de livres?
Conseil : les nommer par un verbe à lʼinfinitif (ACHETER)
Règles :
• Homogénéité :
personne
matricule
nom
prénom
nom de j.fille
âge
....
1) les relations nʼont pas d'existence propre :
4553
DUVAL
Alice
DUPONT
23
la relation "ACHETER" n'existe que si des occurrences d'entités "PERSONNE" et
"VOITURE" existent
2) elles peuvent avoir des propriétés propres:
6787
BERGMAN
Jean
?
30
date achat
3) elles sont identifiées par les identifiants de leur collection :
! collection: {entités participant à la relation}
Attention, distinguer:
! dimension: nb d'entité(s) de la collection
propriétés non significatives, valeur inconnue, valeur nulle,...
Bernard ESPINASSE - Modèle Entité-Relation : la base
7
Bernard ESPINASSE - Modèle Entité-Relation : la base
8
V a rV
e sd reesl ar e
t iloant iiso
Vi éatrréii éédtt éé
on
ns
Vara
i é t d edse rse rl ae tl iaot n
s s
R eR
l aetliaotni o n
• Partage
d'uned'une
même
collection
:
Partage
même
collection
:
•• Partage
d'une
même
collection
• Partage
d'une
même
collection
: :
Exemple :
Exemple :
ETUDIANT
nom
prénom
date naissance
1,n
posséder
année
mention
DIPLOME
0,n
possèderpossèder
possèder 1,1
0,n
PERSONNE
PERSONNE
PERSONNE
nom
nom
1,n
prénom nom
prénom
prénom
titre
niveau
! collection: {ETUDIANT, DIPLOME}
! collection:
! dimension:
2 {ETUDIANT, DIPLOME}
!
dimension:
2 x (titre)
! identifiants: (nom)
! identifiants: (nom) x (titre)
1,n
1,n
1,n
0,n
mère
LOGEMENT
LOGEMENT
LOGEMENT
adresse adresse
adresse
0,n mère
0,n mère
SOCIETE SOCIETE
SOCIETE
détenir détenir
N° SIRENN°
SIREN
détenir
N°
SIREN
raison sociale
raison
sociale % capital % capital
% capital
capital raison
capitalsociale
capital
Un graphe des occurrences possible :
Un graphe des occurrences possible :
0,n
• Relation
dimension
quelconque
• Relation
dede
dimension
quelconque
: : :
Relation
de
dimension
quelconque
•• Relation
de
dimension
quelconque
:
JOURNEEJOURNEE
JOURNEE
date
date
date
ENGIN
ENGIN
n° engin n°ENGIN
engin
n°
engin
désignation
désignation
désignation
0,n
0,n
9
9
Cardinalité dʼune entité dans une relation (1)
Cardinalité ou multiplicité
1,n
1,n
habiter habiter
habiter
• Relation
sur
entité
:: :
Relation
sur
une
même
entité
• Relation
surune
unemême
même
entité
•• Relation
sur
une
même
entité
:
Bernard ESPINASSE - Modèle Entité-Relation : la base
Bernard ESPINASSE - Modèle Entité-Relation : la base
1,1
1,1
0,n
0,n
0,n
0,n
filiale 0,n
0,n
filiale
filiale
CHANTIERCHANTIER
CHANTIER
n° chantier
n° chantier
n°
chantier
désignation
désignation
désignation
0,n
travail réalisé
travail réalisé
0,n
travail réalisé
0,n quantité
quantité
quantité
ACTIVITE ACTIVITE
ACTIVITE
type activité
type activité
type
activité
libellé
libellé
libellé
unité d'oeuvre
unité d'oeuvre
unité d'oeuvre
0,n
0,n
0,n
0,n
0,n
BernardBernard
ESPINASSE
- Modèle
Entité-Relation
: la base: la base
ESPINASSE
- Modèle
Entité-Relation
Bernard
ESPINASSE
- Modèle
Entité-Relation
: la base
Bernard
ESPINASSE
- Modèle
Entité-Relation
: la base
10 10
10 10
Cardinalité dʼune entité dans une relation (1)
: caractérise le rôle d'une entité dans une relation
• permet d'enrichir le modèle (niveau des types) en connaissances du niveau des
occurrences
x1 et x2 = cardinalités minimales
et
y1 et y2 = cardinalités maximales
! 0, n : une occurrence de CLIENT est en relation par la relation PASSER avec une ou
plusieurs occurrences de COMMANDE
Cardinalités fréquemment utilisées :
Participation
Unique
Multiple
Bernard ESPINASSE - Modèle Entité-Relation : la base
Optionnelle
0,1
Obligatoire
1,1
0,n
1,n
! 1, 1 : une occurrence de COMMANDE est en relation par la relation PASSER avec
une et une seule occurrence de CLIENT
11
Bernard ESPINASSE - Modèle Entité-Relation : la base
12
Cardinalité dʼune entité dans une relation (2)
Cardinalité dʼune entité dans une relation (3)
Cardinalités sur relation n-aire
! 1, n : une occurrence de COMMANDE est en relation par la relation CONCERNER
avec une ou plusieurs occurrences de PRODUIT
! 0, n : une occurrence de PRODUIT est en relation par la relation CONCERNER avec
aucune ou plusieurs occurrences de COMMANDE
un graphe des occurrences possible :
! 1 ) (0, n) : une occurrence de PROFESSEUR est en relation par la relation
ENSEIGNER avec aucun ou plusieurs couples dʼoccurrences (SALLE, PERIODE)
! 2 ) (0, n) : une occurrence de PERIODE est en relation par la relation ENSEIGNER
avec aucun ou plusieurs couples dʼoccurrences (PERIODE, SALLE)
! 3 ) (0, n) : une occurrence de SALLE est en relation par la relation ENSEIGNER
avec aucun ou plusieurs couples dʼoccurrences (PROFESSEUR, PERIODE)
13
Bernard ESPINASSE - Modèle Entité-Relation : la base
14
Bernard ESPINASSE - Modèle Entité-Relation : la base
Modèles génériques de cardinalités individuelles
Modèles génériques de cardinalités individuelles
DDééppeennddaanncceess ffoonnccttiioonnnneelllleess
Dépendances fonctionnelles
Contraintes d'intégrité
d'intégrité fonctionnelle
Contraintes
Contraintes d'intégritéfonctionnelle
fonctionnelle
mariage conventionnel
mariage
homme
femme
mariage
homme
0,1
0,1
appartient
appartient
1234 PX 13
1234 PX 13
mariage de groupe
mariage
0,n
femme
0,n
0,1
polygamie
homme
Relation binaire fonctionnelle :
Relation binaire fonctionnelle :
polyandrie
femme
mariage
homme
0,1
0,n
une voiture
voiture n'appartient
n'appartient qu'à
qu'à une
une personne
personne
une
une voiture n'appartient qu'à une personne
femme
soit:
soit:
soit:
0,n
voiture -------------->
--------------> personne
personne
voiture
voiture --------------> personne
appartient
appartient
appartient
pére / fils
a
pére
0,n
enfant
Représentation ::
Représentation
Représentation :
1,1
voiture
voiture
Bernard ESPINASSE - Modèle Entité-Relation : la base
Bernard ESPINASSE - Modèle Entité-Relation : la base
Jean LAFRANCE
Jean LAFRANCE
15
15
appartenir
appartenir
...,1
...,1
Bernard ESPINASSE - Modèle Entité-Relation : la base
Bernard ESPINASSE - Modèle Entité-Relation : la base
Bernard ESPINASSE - Modèle Entité-Relation : la base
...,...
...,...
personne
personne
flèche
flèche
16
16
16
Dépendances fonctionnelles sur relations n-aire
Élaboration d'un modè le Entité -Re lation (1)
Soit la contrainte à exprimer :
« pour toute période d'emploi du temps, (le mercredi de 9 h à 12 h), un professeur n'a
cours que dans une seule salle »
2 attitudes possibles:
selon la connaissance du domaine du concepteur:
• démarche déductive : s'appuie sur l'existence préalable d'une liste d'informations
à structurer (plus lourde, étude détaillée)
soit: PERODE x PROFESSEUR -----ENSEIGNER------> SALLE
Limitation du formalisme Entité-Relation de base => besoin dʼextension
• démarche inductive : cherche à mettre rapidement en évidence les différents
concepts évoqués par le domaine (plus créative et efficace)
2 façons de constituer une liste d'informations:
• ratisser au gré des entretiens, les informations présentes dans des documents....
• s'inspirer des modèles de comportement (MCT dans Merise)
Vérifier l'absence de :
• redondance
Types de dépendances fonctionnelles :
• simples (à un émetteur: a --> b)
• composées (à n émetteurs: a x b --> c) englobant pas la totalité de la collection
• composées (à n émetteurs: a x b --> c) englobant la totalité de la collection
• synonyme
• homonyme
17
Bernard ESPINASSE - Modèle Entité-Relation : la base
Élaboration d'un modè le Entité -Re lation (2)
Etude préalable :
• se préoccuper plus des entités et relations que des propriétés (structure)
Etude détaillée :
• le plus détaillé possible (propriétés, DF,....)
Guide :
1 - ne pas réfléchir en terme de fonction (traitements) ou essayer d'exprimer des états
2 - modéliser d'abord les entités puis les relations
3 - dés que l'on à modélisé une entité, lui donner un identifiant
4 - dés qu'une propriété est affectée à une entité ou une relation s'assurer de son unicité
5 - s'assurer que tous les entités participent au moins à une relation
6 - affecter les cardinalités aux relations
7 - rechercher les éventuelles DF des relations et effectuer si possible les décompositions
Bernard ESPINASSE - Modèle Entité-Relation : la base
19
Bernard ESPINASSE - Modèle Entité-Relation : la base
18