Professional Documents
Culture Documents
Modelisation MCD EA MLD MP
Modelisation MCD EA MLD MP
Franklin Tchakounte
Au terme de ce tutoriel
• L’apprenant pourra
• Etablir un dictionnaire de données
• Formaliser un problème sous forme E-A
• Transformer un E-A en Modèle Logique de Donnees
• Décrire le modele physique de donnees
By Pr.-Dr.-Ing. Franklin Tchakounte 3
Documents
• Ce tutoriel a été élaboré en s’appuyant sur les deux livres suivants
E-A
• 1970: Peter Chen (ou Peter Pin-Shan Chen), actuellement professeur à la
Carnegie-Mellon University de Pittsburgh, a développé les modèles entité-
association pour
• la conception de bases de données.
• la conception de systèmes d'information
• Réingénierie des processus métiers
• …
• Le Modèle Conceptuel de Données (MCD) a pour but
• d'écrire de façon formelle les données qui seront utilisées à l'aide d'entités et
associations
• Le Modèle E-A similaires au M E-R
• Il s’appuie sur les mêmes éléments que E-R (entités, propriétés/attributs, …
• permettent plusieurs types de cardinalités plus étendus que dans le cas des relations
By Pr.-Dr.-Ing. Franklin Tchakounte 5
Dictionnaire de donnees
Epuration du Dictionnaire de données brut
• Certaines données doivent être éliminées de ce dictionnaire.
• Les synonymes : noms différents pour une même valeur (Num-C
et Code-C ; Num-CL et Mat-CL)
• Les polysèmes : deux données sont polysèmes si elles ont le
même nom et expriment deux valeurs différentes
(le même nom « Quantité » pour deux données différentes :
Qté_cdé et Qté_fact). Il faut les renommer.
• Les redondances : chaque propriété identifiée, n’apparaît qu’une
seule fois dans le modèle.
• Supprimer les données calculées ;
• Ajouter les informations détectées par les règles de calcul :
Introduction de tauxTVA
• Décomposer les données concaténées : (Adresse : Rue, ville et
code postal)
• Remarque : certaines informations calculées nécessitent
d'être conservées, on parle d'informations calculées et
mémorisées (CM) ; exemple : N°client automatique
By Pr.-Dr.-Ing. Franklin Tchakounte 9
Modelisations
• Modélisation directe :
• Elle consiste à identifier, à partir d’une description exprimée en langage naturel, les
entités et les associations en appliquant les règles suivantes :
• les noms deviennent des entités
• les verbes deviennent des associations
• Modélisation par analyse des Dépendances Fonctionnelles (DF)
• Cette méthode consiste à :
• Déterminer le dictionnaire de données épuré
• Rechercher les dépendances fonctionnelles entre les propriétés recensées à la première étape
By Pr.-Dr.-Ing. Franklin Tchakounte 10
Modélisation directe
By Pr.-Dr.-Ing. Franklin Tchakounte 11
Elements de l’E-A
Elements de l’E-A
• Attribut: propriété d’une entité ou d’une association.
• le prix unitaire est un attribut de l’entité article,
• le nom du client est un attribut de l’entité client.
• La quantité commandée est un attribut de l’association acheter,
• la date de livraison est un attribut de l’association livrer
By Pr.-Dr.-Ing. Franklin Tchakounte 13
Elements de l’E-A
• Chaque individu d’une entité doit être identifiable de manière unique.
• C’est pourquoi les entités doivent posséder un attribut sans doublon : l’identifiant.
• Le numéro de client est l’identifiant de l’entité client
• Remarques :
• un attribut ne doit pas figurer dans deux entités ou associations différentes (donc il faut spécialiser l’attribut
nom en nom du client, nom du produit et nom du fournisseur) ;
• une entité possède au moins un attribut (son identifiant) ;
• une association peut ne pas posséder d’attribut.
By Pr.-Dr.-Ing. Franklin Tchakounte 14
Elements de l’E-A
• Cardinalité d’un lien entre une entité et une association: le minimum et le
maximum de fois qu’un individu de l’entité peut être concerné par l’association.
• Un client a au moins acheté un article et peut acheter n articles (n étant indéterminisé),
• tandis qu’un article peut avoir été acheté entre 0 et n fois (même si ce n’est pas le même
n) et n’est livré que par 1 fournisseur.
• Remarque : Si une cardinalité est connue et vaut 2, 3, etc. on considère qu’elle
est indéterminisé (n), de telle sorte qu’on ne puisse avoir que des cardinalités 0,
1 ou n
By Pr.-Dr.-Ing. Franklin Tchakounte 15
Elements de l’E-A
• Cardinalité d’un lien entre une entité et une
association
Elements de l’E-A
• Association binaire réflexive
• un employé est dirigé par un employé (sauf
le directeur général) et un employé peut
diriger plusieurs employés.
• Pour distinguer les deux liaisons, nous
utilisons la notion de rôle avec l’ajout
d’étiquettes (ici supérieur, personnel).
By Pr.-Dr.-Ing. Franklin Tchakounte 17
Elements de l’E-A
• Association ternaire: dans
ce cas, un avion, un pilote ou
un aéroport peuvent être
utilisés 0 ou plusieurs fois par
l’ensemble des vols
By Pr.-Dr.-Ing. Franklin Tchakounte 18
Elements de l’E-A
• Pour une pièce donnée, nous
avons de 0 à n couples
(ouvrier, date fabrication)
différents
By Pr.-Dr.-Ing. Franklin Tchakounte 19
Elements de l’E-A
• Associations plurielles-
Plusieurs associations entre
deux mêmes entités : dans ce
cas, un être humain peut être
propriétaire, locataire et/ou
chargé de l’entretien. Nous
supposons qu’un être humain
ne loue qu’un logement au
maximum, qu’un logement
n’est occupé que par une
personne au maximum et
qu’un logement est entretenu
par une et une seule
personne
By Pr.-Dr.-Ing. Franklin Tchakounte 20
Règles de normalisation
• Un bon schéma entité-
associations doit
répondre à différentes
règles.
• 1. Normalisation des
entités: Toutes les
entités qui sont
remplaçables par une
association doivent être
remplacées
By Pr.-Dr.-Ing. Franklin Tchakounte 21
Règles de normalisation
• Normalisation des noms
• Le nom d’une entités d’une
association ou d’un attribut doit
être unique.
• Remarque : lorsqu’il reste
plusieurs fois le même nom,
c’est parfois symptomatique
d’une modélisation qui n’est
pas terminée ou le signe
d’une redondance
• Si deux attributs contiennent les
mêmes informations, alors
• la redondance induit non
seulement un gaspillage
d’espace mais également un
grand risque d’incohérence :
ici, les adresses risquent de ne
pas être les mêmes et dans
ces conditions où faut-il livrer ?
By Pr.-Dr.-Ing. Franklin Tchakounte 22
Règles de normalisation
• Normalisation des identifiants
• Chaque entité doit posséder un identifiant.
• Eviter les identifiants composés de plusieurs attributs (comme par exemple un
identifiant formé par les attributs nom et prénom), car d’une part c’est mauvais pour les
performances et d’autres part, l’unicité supposé par une telle démarche finit tôt ou tard
par être démentie ;
• Préférer un identifiant court pour rendre la recherche la plus rapide possible (éviter
notamment les chaînes de caractères comme un numéro de plaque d’immatriculation,
un numéro de sécurité sociale ou un code postal) ;
• Eviter également les identifiants susceptibles de changer au cours du temps (comme
les plaques d’immatriculation ou les numéros de sécurité sociale provisoires).
By Pr.-Dr.-Ing. Franklin Tchakounte 23
Règles de normalisation
• Normalisation des attributs
• Il faut remplacer les attributs en
plusieurs exemplaires en une
association supplémentaire de
cardinalités maximales n et il ne
faut pas ajouter d’attribut
calculable à partir d’autres
attributs.
By Pr.-Dr.-Ing. Franklin Tchakounte 24
Règles de normalisation
• Normalisation des attributs
• Il faut remplacer les attributs en
plusieurs exemplaires en une
association supplémentaire de
cardinalités maximales n et il ne
faut pas ajouter d’attribut
calculable à partir d’autres
attributs.
By Pr.-Dr.-Ing. Franklin Tchakounte 25
Règles de normalisation
• Normalisation des attributs des
associations
• Les attributs d’une association doivent
dépendre directement des identifiants
de toutes les entités en association.
• la quantité commandée dépend à la
fois du numéro de client et du numéro
d’article, par contre la date de
commande non. En effet la date
dépend du client et non d'un des
articles commandés. Il faut donc faire
une entité commandes à part, idem
pour les livraisons
By Pr.-Dr.-Ing. Franklin Tchakounte 26
Règles de normalisation
• Normalisation des attributs des
associations
• Entre les entités livres et auteurs,
l’association écrire ne possède pas
d’attribut.
• Imaginez que vous ajoutiez un attribut
pourcentage qui contient le
pourcentage du livre écrit par chaque
auteur (du même livre).
• Comme cet attribut pourcentage
dépend à la fois du numéro de livre et
du numéro d’auteur, l’association
écrire est bien normalisée.
By Pr.-Dr.-Ing. Franklin Tchakounte 27
Règles de normalisation
• Normalisation des attributs des
associations
• Autre conséquence de la normalisation
des attributs des associations : une
entité avec une cardinalité de 1,1 ou
0,1 aspire les attributs de l’association
By Pr.-Dr.-Ing. Franklin Tchakounte 28
Règles de normalisation
• Normalisation des associations
• Il faut éliminer les associations
fantômes
Règles de normalisation
• Normalisation des associations
• Il faut éliminer les associations
redondantes
Règles de normalisation
• Normalisation des associations
• Il faut éliminer les associations en
plusieurs exemplaires.
Règles de normalisation
• Normalisation des cardinalités
• Une cardinalité minimale est toujours 0 ou 1 (et pas 2, 3 ou n) et une cardinalité maximale
est toujours 1 ou n (et pas 2, 3...).
• Cela signifie que si une cardinalité maximale est connue et vaut 2, 3 ou plus (un nombre
limité d’emprunts dans une bibliothèque par exemple),
• alors on considére quand même qu’elle est indéterminisé, et vaut n. Cela se justifie par le fait que même
si nous connaissons n au moment de la conception, il se peut que cette valeur évolue au cours du
temps. Il vaut donc mieux considérer n comme une inconnue dès le départ.
• Cela signifie également qu’on ne modélise pas les cardinalités minimales qui valent plus de
1 car ce genre de valeur est aussi mené à évoluer. Par ailleurs, avec une cardinalité
maximale de 0, l’association n’aurait aucune signification.
By Pr.-Dr.-Ing. Franklin Tchakounte 32
Exemple
Dans le cadre de la planification des leçons de conduite d’une auto-
école, on a recensé les informations suivantes :
- Code moniteur - Nom et prénom du moniteur - N° immatriculation du
véhicule
- Marque du véhicule - Type véhicule - Code élève - Nom et prénom
élève
- Date inscription - Code et Durée leçon - Date et heure leçon
Une leçon de conduite est planifiée pour une durée donnée. Elle
concerne un élève, un moniteur et un véhicule pour une date et heure
prévues. On apprend aussi qu’un élève est toujours pris en charge par
un et un seul moniteur. Les moniteurs ont la possibilité de se spécialiser
sur un ou plusieurs modèles.
Questions:
Exemple
Dans le cadre de la planification des leçons de conduite d’une auto-
école, on a recensé les informations suivantes :
- Code moniteur - Nom et prénom du moniteur - N° immatriculation du
véhicule
- Marque du véhicule - Type véhicule - Code élève - Nom et prénom
élève
- Date inscription - Code et Durée leçon - Date et heure leçon
Une leçon de conduite est planifiée pour une durée donnée. Elle
concerne un élève, un moniteur et un véhicule pour une date et heure
prévues. On apprend aussi qu’un élève est toujours pris en charge par
un et un seul moniteur. Les moniteurs ont la possibilité de se spécialiser
sur un ou plusieurs modèles.
Questions:
Exemple
• Un vidéo club envisage de gérer la location des
cassettes à l’aide d’un SI. On vous communique
les quelques éléments d’information suivants : «
Les cassettes sont louées aux clients. Elles sont
achetées auprès d’éditeurs. Les films sont joués
par des acteurs. »
• Compléter le Modèle en y ajoutant les
associations et en indiquant les cardinalités.
Règles de gestion :
• Un film n’est commercialisé que par un seul éditeur.
• Un film comporte au moins un acteur
• Dans la base on souhaite conserver tous les acteurs
même s’ils n’ont tourné dans aucun des films
disponibles en cassettes au vidéoclub
By Pr.-Dr.-Ing. Franklin Tchakounte 35
Exemple
Un département caractérisé par un libellé et
une adresse dispense plusieurs formations.
Un étudiant ne peut s’inscrire qu’à une
formation à la fois. Une formation se compose
de plusieurs cours décrits par un Libellé et le
nom de l’enseignant responsable. Selon la
formation un cours lui attribué un coefficient.
Un cours peut être dispensé dans plusieurs
formations.
By Pr.-Dr.-Ing. Franklin Tchakounte 36
Dependance fonctionnelle
• Une propriété B dépend fonctionnellement
d'une propriété A ssi à une seule valeur de
A, il n'est possible d'associer qu'une et une
seule valeur de B. On note A -> B, la
réciproque est fausse.
• Code_client -> Nom_client : Vraie mais
Nom_client -> code_client n’est pas vraie.
Dépendances fonctionnelles
composées
Deux possibilités :
• La propriété dépend fonctionnellement de plusieurs autres
propriétés : la dépendance fonctionnelle est composée.
Qté_cdé -> code_prd, num_commande ;
• L'information ne possède pas de dépendance, alors
l'information dépend fonctionnellement d'elle même.
Exemple: N_facture, N_produit.
• N_Magasin est un identifiant pour Magasin
• N_Facture n'est pas un identifiant pour Magasin : N_Magasin
dépend bien de N_Facture ( DF entre Identifiants) mais
nomMagasin dépend de N_Magasin
By Pr.-Dr.-Ing. Franklin Tchakounte 39
Formes normales
• Les trois premières formes normales ont pour
objectif de permettre la décomposition de
relations sans perdre d'informations, à partir de
la notion de dépendance fonctionnelle.
Formes normales
Deuxième Forme Normale
Permet d'assurer l'élimination de certaines
redondances en garantissant qu'aucun attribut n'est
déterminé seulement par une partie de la clé.
Une relation R est en deuxième forme normale si et Schéma de relation non en 2e forme normale
Formes normales
Deuxième Forme Normale
• Considérons la relation :
• FOURNISSEUR (NOM, ADRESSE, ARTICLE, PRIX)
• La clé est le couple (NOM, ARTICLE). Il existe les DF :
• (NOM, ARTICLE) → PRIX et NOM → ADRESSE Schéma de relation non en 2e forme normale
Formes normales
• TROISIÈME FORME NORMALE
permet d'assurer l'élimination des redondances dues aux
dépendances transitives.
Une relation R est en troisième forme normale si et Schéma de relation non en 3e forme normale
seulement si :
• Elle est en deuxième forme. K est la clé de R. Le problème est que X à lui
seul détermine Z : X → Z. Donc Z dépend d'un
• Tout attribut n'appartenant pas à une clé ne dépend pas attribut non-clé
d'un autre attribut non-clé. Une telle relation doit être décomposée en
Si la relation possède une seule clé primaire, il est possible R1(K, X, Y) et R2(X, Z)
de donner une définition équivalente comme suit. Une
relation R est en troisième forme normale si et seulement
si :
• elle est en deuxième forme normale ;
• tout attribut n'appartenant pas à la clé ne dépend pas
transitivement de la clé.
By Pr.-Dr.-Ing. Franklin Tchakounte 46
Formes normales
• TROISIÈME FORME NORMALE
permet d'assurer l'élimination des redondances dues aux
dépendances transitives.
Schéma de relation non en 3e forme normale
• Considérons la relation :
VOITURE (NV, MARQUE, TYPE, PUISSANCE, COULEUR) K est la clé de R. Le problème est que X à lui
seul détermine Z : X → Z. Donc Z dépend d'un
n'est pas en troisième forme normale. En effet, l'attribut non-clé TYPE attribut non-clé
détermine MARQUE et aussi PUISSANCE. Cette relation peut être Une telle relation doit être décomposée en
décomposée en deux relations :
R1(K, X, Y) et R2(X, Z)
VOITURE (NV, TYPE, COULEUR)
MODELE (TYPE, MARQUE, PUISSANCE).
NV → TYPE → PUISSANCE,
NV → TYPE → MARQUE.
By Pr.-Dr.-Ing. Franklin Tchakounte 47
Formes normales
• TROISIÈME FORME NORMALE (Boyce-
Codd)
• Tous les attributs d’une entité doivent dépendre
directement de son identifiant et d’aucun autre
attribut.
• Si ce n’est pas le cas, il faut placer l’attribut
pathologique dans une entité séparée, mais en
association avec la première.
• L’entité avion dont les valeurs sont données
dans le tableau 1, n’est pas en troisième forme
normale de Boyce-Codd, car la capacité et le
constructeur d’un avion ne dépendant pas du
numéro d’avion mais de son modèle.
By Pr.-Dr.-Ing. Franklin Tchakounte 48
Méthodologie
• Face à un problème procéder ainsi :
• 1. identifier les entités en présence ;
• 2. lister leurs attributs ;
• 3. ajouter les identifiants (numéro arbitraire et auto-incrémenté) ;
• 4. établir les associations binaires entre les entités ;
• 5. lister leurs attributs ;
• 6. calculer les cardinalités ;
• 7. vérifier les règles de normalisation et en particulier, la normalisation des entités (c’est à ce
stade qu’apparaissent les associations non binaires), des associations et de leurs attributs
ainsi que la troisième forme normale de Boyce-Cood ;
• 8. effectuer les corrections nécessaires.
• Le modèle doit être exhaustif (c’est-à-dire contenir toutes les informations
nécessaires) et éviter toute redondance (le prix unitaire d’un article n’a pas besoin
de figurer dans l’entité commandes) qui constitue une perte d’espace, une
démultiplication du travail de maintenance et un risque d’incohérence.
By Pr.-Dr.-Ing. Franklin Tchakounte 50
Modèle logique de
données-MLD
By Pr.-Dr.-Ing. Franklin Tchakounte 51
Tell me
• What did you learn?
• Provide a list of key words
By Pr.-Dr.-Ing. Franklin Tchakounte 63
Exercises
• Cf. Exercise Sheet