Chp2 BD2018
Chp2 BD2018
Chp2 BD2018
Chapitre II
1
Plan
2
Partie 1 : Les concepts de base du modèle E/A
3
Motivations
• Plusieurs problèmes de BD sont dus à une mauvaise compréhension
des données à un niveau abstrait ou conceptuel
4
Dictionnaire de données
• La première étape dans la modélisation des données consiste à
élaborer un dictionnaire de données (DD).
5
Dictionnaire de données
• Le dictionnaire de données est présenté sous la forme d’un
tableau
Contraintes,
Nom Description Type Longueur Remarques Règles de
calcul
Numéro du Identifiant
Numcl entier 5
client
Nom ou
raison
Nomcl caractère 10 sociale Obligatoire
Format en
majuscule
… … … … … …
9
Dictionnaire de données
Contraintes,
Nom Description Type Longueur Remarques Règles de
calcul
Numéro du Identifiant
Numcl entier 5
client
Nom ou
raison sociale
Nomcl Nom du client caractère 10 Obligatoire
Format en
majuscule
Quantité
QtitC entier 5 Obligatoire, >0
commandée
… … … … … …
10
Exercice d’application
Quantité produit
Contraintes,
Nom Description Type Longueur Observation
règles de calcul
Num_c Numéro commande entier 4 identifiant
Num_cl Numéro client entier 3 identifiant
Nom_cl Nom client caractères 30
Date_c Date commande date 8 JJMMAAA
12
Synonymes : num_c et code_c désigne la même donnée numéro
commande ; num_cl et mat_cl désigne la même donnée Numéro
client ;
13
Dictionnaire de données épuré
14
Modèle Entité / Association
1. Entité
C’est un ensemble d’objets du monde réel (concrets ou abstraits) ayant les mêmes
caractéristiques.
Exemple: client, employé, produit, etc.
Dans le modèle EA, les entités sont représentées par des rectangles.
Employé
L’entité « Employé »
2. Occurrence d’entité
Une occurrence d’entité est une représentation d’un objet spécifique sur lequel nous
souhaitons connaître et enregistrer certaines informations.
Exemple: l’employé « Mohamed Ali », le film « le bonheur est dans le pré », le service
marketing, etc.
16
Entité
Remarque:
On peut aussi nommer Type d’entité pour désigner un ensemble d’objets
ayant même caractéristiques et entité pour désigner un objet spécifique.
Que Retenir?
Une entité est créée dans le modèle EA chaque fois qu'il existera des
objets
distincts mais similaires sur lesquels on désire mémoriser des informations,
sachant que ces objets ont des relations avec des occurrences d'autres
entités.
17
Association
Association et occurrence d’association
1. Association
• C’est un ensemble de liens ayant même sémantique et décrits par les mêmes
caractéristiques.
Exemple: l’association travaille entre l’entité employé et l’entité service.
• Dans le modèle EA, les associations sont représentées par des ovales.
Employé service
travaille
2. Occurrence d’ Association
c’est un lien entre deux ou plusieurs occurrences d’entités.
18
Association
Remarque
De même, on peut aussi nommer Type d’association pour désigner un
ensemble de liens ayant même caractéristiques et association pour
désigner un lien spécifique.
19
Association
Est préparée
par
EMPLOYÉ
20
Attribut
21
Attribut
CLIENT FACTURE
NoClient Paye NoFacture
Nom Date
Prénom
Adresse
22
Cardinalité
e1
e2 d1
e7
e6 d2
e5
e4 d3
e3
Employé 1,N
1,1 Département
travaille N°dep
N° employé
Nom NomDep
Prénom
Salaire
24
Cardinalité
Exemple 2: Une personne peut acheter plusieurs produits et un produit peut être
acheté par plusieurs personnes
pd1
p1
pd2
p3
p2 pd4
pd5
p4
pd6
pd3
25
Cardinalité
Exemple 3: Un employé peut diriger un service et un service est dirigé par un
employé
e1 S1
e4 S2
e2
e3 S3
e6 e5 S4
Du côté étudiant : Un étudiant peut n’avoir jamais emprunté de livre ou emprunté plusieurs livres
à une même date ou emprunté à des dates différentes le même livre.
Du côté date : A une date donnée, il n’y a eu aucun ou plusieurs emprunt (le dimanche par ex).
Du côté livre : Un livre peut n’être jamais emprunté ou au contraire par un même étudiant à des
dates différentes ou enfin par plusieurs étudiants différents à une même date.
L’exemple prouve la nécessité d’analyser de façon exhaustive la participation d’une
occurrence quelconque de l’entité par rapport aux occurrences de toutes les autres
entités (combinatoire de cas) au travers de l’association.
27
Cardinalité et types d’association
Association Réflexive
• C’est une association qui relie deux occurrences d’une même entité.
Chaque occurrence joue un rôle bien déterminé.
Exemple:
Dirige est l’association entre des couples d’employés (Employé X, Employé
Y) tels que X dirige Y (supérieur et subalterne sont les rôles).
Exemple:
FACTURE PRODUIT
1,n 0,n
NFacture
Contient NProduit
QtéFacturée Description
Date
Prix
Source Cible
C’est la quantité facturée d’un produit donné DF: NFacture, NProduit QtéFacturée
et pour une facture donnée DF multi-attribut: la source de la29DF
est constituée de plusieurs attributs
Cardinalité et types d’association
Pour éviter toute redondance, on s’assurera en outre que la dépendance fonctionnelle
est élémentaire.
On dit qu’une propriété est en dépendance fonctionnelle élémentaire avec une liste de
rubriques LR :
• si elle est fonctionnellement dépendante de LR,
• si elle n’est pas fonctionnellement dépendante d’une sous-liste de LR.
Exemple
Num_Client Nom_Client Dépendance fonctionnelle élémentaire
Contre exemple
Num_client, Nom_Client Prénom_Client
Non élémentaire car le numéro du client suffit à déterminer le prénom :
Num_client Prénom_Client
- Une DF entre deux attributs A et C (A C) est dite DF directe s’il
n’existe aucune propriété B telle que : A B et B C
Num_Client Nom_Client Dépendance fonctionnelle directe
Num_Facture Nom_Client Num_Facture Num_Client Nom_Client
Dépendance fonctionnelle non directe (DF transitive). 30
Cardinalité
1,1
0,n
0,n
superviseur
EMPLOYÉ
NoEmployé
Supervise
NomEmployé
Est supervisé 31
1,1
Exercice d’application
33
Généralisation/Spécialisation
34
Généralisation/Spécialisation
35
Entité faible
• L’identifiant de cette entité est définie comme suit :
- Il est composé d’un identifiant d’une autre entité
(cas d’héritage)
- Il est composé de l’identifiant d’une autre entité et d’un
autre attribut.
Exemples
Appartement Bâtiment
1,1 1,N
N° Appartement Est-dans N°Bâtiment
36
Diagramme Entité-Association
37
Diagramme Entité-Association
Employé Rayon
1,1 1,N
travaille NomR
N° employé
Nom étage
0,N
Prénom 0,N
Salaire
Livraison Vendre
0,N quantitél quantitév
0,N 0,N
Fournisseur
Article
N° fournisseur CodeA
Nom NomA
Prénom Type
Adresse
38
Méthodologie de construction d’un modèle
E/A
• Étape 1 : Identifier les entités
• Une direction est caractérisée par un nom identifiant et le nom de son président-directeur général.
• Plusieurs départements dépendent d’une direction et chaque département est doté d’un nom
identifiant et d’une localisation.
• Un département est découpé en services, doté chacun d’un nom et d’un responsable.
• Un service a la charge d’un certain nombre de dossiers identifiés par un numéro et doté d’un titre et
d’une date d’enregistrement.
• Dans chaque service travaillent des employés identifiés par un numéro et caractérisés par leur nom
et leur adresse.
40
Exercice : Une structure administrative
• On considère un sous-ensemble d’une structure administrative.
• Une direction est caractérisée par un nom identifiant et le nom de son président-directeur général.
(1)
• Plusieurs départements dépendent d’une direction (2) et chaque département est doté d’un nom
identifiant et d’une localisation (3).
• Un département est découpé en services (4), doté chacun d’un nom et d’un responsable (5).
• Un service a la charge d’un certain nombre de dossiers (6) identifiés par un numéro et doté d’un titre
et d’une date d’enregistrement (7).
• Dans chaque service travaillent des employés (8) identifiés par un numéro et caractérisés par
leur nom et leur adresse (9).
41
Exercice : Une structure administrative
(1):Une direction est caractérisée par un nom et le nom de son président général
(a) Une direction est caractérisée par un nom identifiant
(b) Une direction est caractérisée par le nom de son président-directeur général.
Direction
NomDir
Président
Département 1,n
dépendre de Direction
NomDir
Président
42
Exercice : Une structure administrative
(3) chaque département est doté d’un nom identifiant et d’une localisation
(a) Un département est doté d’un nom identifiant
(b) Un département est doté d’une localisation
Département 1,n
dépendre de Direction
NomDep
NomDir
Localisation
Président
1,n
Département services
Composé de
NomDep
Localisation
43
Exercice : Une structure administrative
(5) chaque service est doté d’un nom et d’un responsable
(a) Un service et doté d’un nom identifiant
(b) Un service est doté d’un responsable
Département 1,n
Composé de services
NomDep NomSer
Localisation Responsable
1,n
services traite Dossier
NomSer
Responsable
44
Exercice : Une structure administrative
(7) Chaque dossier est identifié par un numéro et doté d’un titre et d’une date
d’enregistrement
(a) Un dossier est identifié d’un numéro
(b) Un dossier est doté d’un titre
(c) Un dossier est doté d’un d’une date d’enregistrement
1,n
services traite Dossier
NomSer NumD
Responsable Titre
DateEnreg
1,n
services Occupé par Employé
NomSer
Responsable
45
Exercice : Une structure administrative
(9) Chaque employé est identifié par un numéro et caractérisé par son nom et
son adresse (9).
(a) Un employé est identifié d’un numéro
(b) Un employé est caractérisé par un nom
(c) Un employé est caractérisé par une adresse
1,n
services Occupé par Employé
NomSer NumE
Responsable NomE
adresseE
46
Exercice : Une structure administrative
Diagramme Entité-Association
Département 1,n
1,1
Dépend de Direction
NomDep
NomDir
Localisation
Président
1,n
Composé de
1,1
Total …………
Référence du
Refp entier
produit
Désignation du
Design caractère 15
produit
Quantité
QtitC entier 5 Obligatoire, >0
commandée
Afin d’identifier les entités et les associations, on applique les règles suivantes:
R1: Les DF de même source et dont les cibles ne sont pas sources forment des
entités.
R2: Les DF entre identifiants d’entités forment une association avec une
cardinalité 1,1
R3: Les DF où la source est composée de plusieurs identifiants d’entités
forment une association porteuse de données.
51
de construction du modèle E/A
A partir d’un DD
3- Dégager les entités naturelles grâce à leur identifiant
NumBC→ dateC
NumBC→ numcli
Numcl → nomcl Les entités: commande, client et produit
Numcl → adress
refp → design
refp → prixU
52
Étapes de construction du modèle E/A
A partir d’un DD
4-Rattacher à ces entités leurs propriétés grâce aux DF.
NumBC→ dateC Refp → design, prixU Numcl → nomcl, adressecl
Client Commande
NumCl passer
NumBC
NomCl
DateC 53
adresseCl
Étapes de construction du modèle E/A
A partir d’un DD
6-Identifier les associations porteuses de données
NumBC, refp → QtitC
54
Étapes de construction du modèle E/A
A partir d’un DD
55
Partie 2 : Règles de bonne formation du modèle
56
Règles de Vérification et de Normalisation
57
Règles de vérification
Règle 1
• Deux entités qui doivent être reliées entre elles le seront par le
biais d’une relation
CLIENT FACTURE
À ne pas
faire
CLIENT FACTURE
1,n 1,1
NoClient Reçoit NoFacture
NomClient Date
58
Règles de vérification
Règle 2
• Deux relations ne peuvent jamais être directement reliées
entre elles
PERSONNE IMMEUBLE
À ne Gère Possède
pas faire
0,n 1,1
Gère
PERSONNE IMMEUBLE
0,n 1,n
Possède
59
Règles de vérification
Règle 3
• Le nom de la relation doit représenter d’une manière concrète et
significative l’information que l’on veut obtenir
PERSONNE IMMEUBLE
À ne Concerne
pas faire
PERSONNE IMMEUBLE
0,n 1,1
Gère
60
Règles de vérification
Règle 4
• Les entités et les relations ne doivent contenir que des données
élémentaires, donc ne pas inclure des résultats de calcul/traitement
FACTURE 1,n
PRODUIT
0,n
Contient
À ne NoFacture
QtéFacturée
NoProduit
Description
pas faire Date PrixFacturé
TotalFacture TotalParProduit
FACTURE 1,n
PRODUIT
0,n
NoFacture Contient NoProduit
61
Règles de vérification
Règle 5 : modélisation de la date
a) En propriété de l’objet
1,n
1,n Contient
QtéFacturée
PrixFacturé
0,n
Achète
0,n PRODUIT
NoProduit
Description
Qté en stock 64
Règles de vérification
Règle 6
ÉTUDIANT GROUPE
1,1 1,n
NoÉtudiant
Fait partie de
NoGroupe
Nom DateDébutGroupe
Prénom DateFinGroupe
1,n 1,n
Suit
0,n
65
Règles de vérification
Règle 7: règles sur les propriétés
• Toute propriété doit apparaître une seule fois dans un modèle.
66
Client Prospect Contact
CodeClient CodeProspect CodeContact
NomClient NomProspect NomContact
type
67
Dépendance fonctionnelle Intra-entités
• Soit une entité E regroupant deux propriétés tel que à toute valeur de la propriété P1
doit correspondre au plus une valeur de la propriété P2.
E
La dépendance fonctionnelle au sein d’une
P1 entité doit être directe.
P2
Exemple:
Livre
idLivre idLivre Titre
titre
68
Dépendance fonctionnelle Intra-entités
ARTICLE 452GT
134ER 354TY
Référence Rateau Bêche Scie
Désignation 150 68 45
PrixUnitaireHT A A B
NoCatégorie Jardinage Jardinage Bricolage
LibelléCatégorie
Cette entité est juste mais elle implique une redondance d’information relative à
la catégorie.
L’association entre le numéro de la catégorie et son libellé est en effet répétée
dans chaque occurrence de l’entité ARTICLE.
Cheval DF 1, N Propriétaire
1,1 A pour
Codecheval CodePropriétaire
…. …
Une DF forte associe à chaque valeur de A une et une seule valeur de B : il y a unicité au départ
La DF est vérifiée pour toutes les valeurs de A : il y a totalité au départ (toutes les valeurs de A
70 B)
ont une image dans l’ensemble d’arrivée
Dépendance fonctionnelle Inter-entités
Il existe une dépendance fonctionnelle faible entre A et B lorsque, connaissant une
valeur de A, quelque soit cette valeur, on détermine au plus une valeur de B.
La contrainte de totalité est supprimée: certaines valeurs de A n'ont pas de valeurs
de B.
DF
Client 0,1 1, N Représentant
A pour
Codcli CodeReprésentant DF faible
…. …
Client 1, N Représentant
0,1
DF
Codcli CodeReprésentant
…. …
71
Dépendance fonctionnelle Inter-entités
La Contrainte d’intégrité fonctionnelle (CIF)
La CIF est le cas particulier d’une relation binaire, non porteuse de propriété, et
ayant une cardinalité 1,1 sur une des deux pattes. C’est une DF forte et stable
dans le temps
CIF
Enfant 1,1 Fils de 0,N Père
NumEnf Numpère
…. …
72
Règles de normalisation
Règle 1 - Chaque entité doit avoir un identifiant
- Pour chaque occurrence d’une entité, chaque propriété ne peut
Exemple1
Employé Employé Enfant
Matricule Matricule MatriculeE
Nom Nom PrénomEnfant
PrénomsEnfant
Employé n'est pas 1FN car caractéristique n’est pas atomique 1FN
Exemple 3
ETUDIANT ETUDIANT
Nom N° étudiant
n'est pas 1FN Nom est 1FN
Prénom
Age Prénom
Age
75
Règles sur les entités
R2.1:. Toutes le propriétés autre que l’identifiant doivent
dépendre pleinement de l’identifiant
Exemple 1
Commande
Commande produit
N°comm
N°prod N°comm N°prod
Contient
Qté DateCom
0,n Qté 0,n
DateComm N°Client
N°client
ETUDIANT
N°étudiant
0,n
SUIVRE
0,n
OPTION
est 2FN
Nom Code_option
Prénom Nom_option
77
Règles sur les entités
R2.2:. Tout attribut n’appartenant pas à une clé ne dépend pas d’un
autre attribut non clé.
Exemple 1
ETUDIANT
N°étudiant
n'est pas en 3FN
Nom Car la DF: N°étudiantnom_option est transitive
Prénom
Code_option
Nom_option
ETUDIANT
N°étudiant OPTION
SUIVRE
1,1 0,n
Nom
Est en 3FN
Code_option
Prénom Nom_option
79
Règles sur les associations
R3 : Pour une occurrence d’association, chaque propriété ne prend
qu’une seule valeur et elle doit être non décomposable.
81
Exemple 1 Les professeurs assurent les cours à
différentes classes
82
Exemple 2
Prof Matière
N°prof N°mat
1,n 0,n
Nom
cours
Salle
heure
Classe
0,n
N°classe
Client Local
84
1FN : élémentarité des attributs et existence de l'identifiant.
85