Académique Documents
Professionnel Documents
Culture Documents
Objectifs de la Modélisation
• Permettre une meilleure compréhension
• Le monde réel est trop complexes
• Abstraction des aspects cruciaux du problème
• Omission des détails
• Permettre une conception progressive
• Abstractions et raffinements successifs
• Possibilité de prototypage rapide
• Découpage en modules ou packages
• Génération des structures de données (et de traitements)
La notion de modèle
• Un modèle est une représentation abstraite d’un système. C’est un
outil majeur de communication entre les différents intervenants au
sein d’un projet. Le modèle présente notamment l’atout de faciliter la
traçabilité du système, à savoir la possibilité de partir d’un de ses
éléments et de suivre ses interactions et liens avec d’autres parties du
modèle. Un modèle est juste une simplification de la réalité. Il est
construit pour répondre à des questions spécifiques sur le système
réel.
Étape de la conception d’une BD
• Analyse de l’existant et capture des besoins
• Création des modèles conceptuels pour représenter tous les aspects
important du problème
• Traduction des modèles conceptuels en modèle logique
• Implémentation d'une base de données dans un SGBD à partir du
modèle logique
Modélisation à plusieurs niveaux
Réel
Indépendant du
Modèle modèle de données
Indépendant du
conceptuel SGBD Médecin effectue Visite
Dépendant du
Modèle modèle de données
Codasyl Relationnel Objet XML
Indépendant du
logique SGBD
6
Objectifs des méthodes
• Réduire la distance sémantique entre le langage des utilisateurs et le langage des
concepteurs
• meilleure communication entre utilisateurs et concepteurs
• abstraction du réel perçu en termes compréhensibles et visibles
• Regrouper l'analyse des données et des traitements
• meilleure compréhension des choses
• plus grande cohérence entre l'aspect statique et l'aspect dynamique
• Simplification des transformations entre niveau conceptuel et niveau interne
• implémentation directe éventuelle du schéma conceptuel
• établissement possible de règles de transformations automatisées
7
2. Le Modèle Entité – Association (E/R Model)
• Ensemble de concepts pour modéliser les données d'une application
(d'une entreprise)
• Ensemble de symboles graphiques associés
• Formalisé en 1976 par P. Chen
• Etendu vers E/R généralisé puis vers l'objet
8
Exemple de modèle E/R
9
Le Modèle Entité – Association (E/R Model)
• Les concepts de base (correspondent aux concepts d’abstraction de
la réalité):
• objet <=> entité
• lien <=> association
• propriété <=> attribut
Entités et types d’entités
❑Entité:
Représentation d’un objet du monde réel ayant une existence propre
❑Type d'entité (TE) ou encore classe d’entité:
représentation d'un ensemble d'entités perçues comme similaires et ayant les
mêmes caractéristiques
Représentées par un rectangle contenant le nom du type de l'entité
Personne
Représentation
• Rectangle avec attributs accrochés Rectangle avec attributs (Mesrise)
(E/R) Voitures
Etudiant
Vitesse Km
Matricule
Nveh Type Marque
Nom,
Prénom,
Adresse,
Datenaiss
Voitures Nom
• RectangleType:
avec
Nveh: Int attributs (UML)
String
Marque: String Attribut : Type
Vitesse: Int
Km : Int
Exemple d'instance
Voiture
Nveh: 850VV94
Type: 407
Marque: Peugeot
Vitesse: 0
Km : 4000
Associations et types d’associations
• Association:
Représentation d'un lien non orienté entre plusieurs entités (qui jouent chacune
un rôle déterminé)
• Type d'association (TA):
Représentation d'un ensemble d'associations ayant la même sémantique et
décrites par les mêmes caractéristiques
15
Les identifiants
• IDENTIFIANT D'ENTITE :
• Propriété PARTICULIERE de l'entité telle que pour chacune des valeurs de cette propriété, il
existe une occurrence UNIQUE de l'entité.
• Remarque :
Si l'on ne sait pas trouver d'identifiant à une entité, c'est qu'elle n'a peut être pas
d'existence propre. Il pourrait donc s'agir d'une association.
• Présentation :
L'identifiant est inscrit en tête de la liste des propriétés et souligné.
Dans les modèles très denses il peut suffire à résumer les autres propriétés, pour
faciliter la lecture.
21
Représentation
UM
L E/R
Personne Voiture
Possède
Propriétaire Possédée Personne Voiture
Possède
Propriétaire Possédée
Date
Prix Date Prix
Merise
CLIENT PRODUIT
22
Degré d'une association
M# Nom …
Composant Composé
Ingénie ur Suivi
Date Pièce
Composée_de Rôle
…
P# Des . …
• La plupart des associations sont de degré 2 (binaires)
23
Cardinalité d'une association
• 1:1
Personne Habite Adresse
• 1:N
Personne Possède Voiture
• N:M
Vendeur Vend Produit
24
Cardinalités min et max
• Cardinalité maximum
• Indique le nombre maximum d'instances d'une classe d'entité participant à
une association
• Cardinalité minimum
• Indique le nombre minimum d'instances d'une classe d'entité participant à
une association
[1,N] [1,n]
Produit Faire partie Commande
25
Difficultés : choix entre entité
et association ?
1) Solution avec association
CLIENT PRODUIT
LOCATION
1,1 1,n
Usine Fabrique Produit
Professeur
…
Matière Enseigner Classe
… •Nbre d’heure
…
33
Règles de gestion
(0,1)
(1,1)
Appartenir
Professeur
(1,n)
Classe
(1,n) (1,n) ◼ Code_prof.
Enseigner
◼ Code Classe ◼ Nom_prof.
•Nbre_heures
◼ Désignation_classe ◼ Prénom_prof
◼ N° salle ◼ Statut_prof
35
Contraintes d’intégrité syntaxiques
36
Contrainte d’intégrité fonctionnelle
(ou dépendance fonctionnelle)
Définitions
• En mathématiques, la notion de DF entre deux ensemble A et B exprime le
fait qu'à chaque élément a de A correspond un seul élément b de B.
A → B
• En Modélisation Conceptuelle des Données sous MERISE, cette notion de
DF, appelée parfois Contrainte d'Intégrité Fonctionnelle (CIF), s'applique
dans les cas suivants :
DF intra-entité : il s'agit d'une DF entre l'identifiant d'une entité et les
autres attributs de l'entité.
DF intra-relation : il existe une DF entre l'identifiant obtenu par
concaténation des identifiants des entités de la collection d'une association
et les éventuels attributs de l'association.
• Il existe des "DF triviales" entre l'identifiant de l'association et les
identifiants des entités qu'elle relie.
• On appelle collection d'une association la liste des entités liées.
37
Contrainte d’intégrité fonctionnelle
(ou dépendance fonctionnelle)
On dit qu’il existe une DF (dépendance fonctionnelle) entre deux entités ou
attributs A et B, on note A → B, si toute occurrence de A détermine une
seule occurrence de B.
DF entre attributs :
• Exemples
• Code_client → Nom_client.
• N°bon_de_cde+Réf_prod → Qté commandée.
• La DF a → b est dite élémentaire si aucune partie de a ne détermine b.
• La DF a → b est dite directe (ou non transitivité) s’il n’existe pas d’attribut c tel
que a → c et c → b.
DF entre entités ou Contrainte d’Intégrité Fonctionnelle :
• Exemple : un élève appartient toujours à une et une classe :
38
DF
Contrainte d’intégrité fonctionnelle
(ou dépendance fonctionnelle)
DF inter-entités via une association binaire
• Il existe des DF inter-entités si l'une des cardinalité maximum
de l'association est égale à 1. Dans ce cas, il est possible
d'orienter le lien entre les entités et de remplacer l'association
par une DF.
• On parle de DF forte (resp. DF faible) lorsque la cardinalité
minimum de l'entité source de la DF est égale à 1 (resp. 0).
• Exemple : enfant (moins de 16 ans) et classe
ENFANT
N° SS DF CLASSE
Nom 1,1 0,n
N° Classe
Prénom Nom établissement
ENFANT
N° SS DF CLASSE
Nom 0,1 0,n
N° Classe
Prénom Nom établissement 39
Contrainte d’intégrité fonctionnelle
(ou dépendance fonctionnelle)
• Lorsqu'il existe de part et d'autre d'une association binaire des
cardinalités maximales égales à 1, une règle de modélisation
stipule que l'entité source de la DF est celle dont les occurrences
apparaissent postérieurement.
• Exemple : appel de cotisation et le règlement correspondant.
REGLEMENT
APPEL COT ISAT ION
N° règlement DF
1,1 0,1 N° Classe
Date règlement
Nom établissement
41
Caractéristiques des DF
• Réflexivité : a→a.
Exemple : Réf →Réf.
• Projection : a →b+c a →b et a →c.
Exemple : Réf → Design+PU Réf → Design et Réf → PU.
• Augmentation : a → b c: a+c → b.
Exemple : Réf → PU Réf+Design → PU.
• Additivité : a → b et a → c a → b+c.
Exemple : Réf → PU et Réf → Design Réf → Design+PU.
• Transitivité : a → b et b → c a → c.
Exemple : Réf → Code_TVA et Code_TVA → Taux_TVA
Réf → Taux_TVA.
• Pseudo-transitivité : a → b et b+c → d a+c →d.
Exemple : Réf → Code_TVA et Code_TVA+PU → Taux_TVA
Réf+PU → Taux_TVA.
42
Les dépendances fonctionnelles
• Le Graphe des dépendances fonctionnelles
• Le graphe des dépendances est une étape intéressante car il épure le dictionnaire en ne
retenant que les données non déduites et élémentaires et permet une représentation
spatiale de ce que sera le futur MCD.
Numéro adhérent
44
La vérification
• Règle de non-répétitivité : à toute occurrence de l'entité ou de
l'association correspond au plus une valeur de tout attribut qui
lui est associé.
• Règle d'homogénéité : les attributs rattachés à une entité ou à
une association doivent avoir un sens pour toutes les
occurrences de l'entité ou de la association.
• Règle de distinguabilité : les occurrences d'une entité doivent
être distinguables. Cela induit la compréhension de l'entité et
se traduit par le choix de l'identifiant.
• Règle de normalisation d'une relation : chaque attribut d'une
association doit dépendre fonctionnellement de la totalité des
entités formant la collection de l'association .
• Respect des règles de gestion : les règles de gestion relatives
aux données, dégagées lors de l'étude de l'existant, doivent
avoir été traduites dans le MCD (cardinalités, etc.).
45
Quelques erreurs de modélisation
• Cas 1 : Attribut répétitif
Professeur
Matricule
Nom
Matière
L'attribut "Matière" peut prendre plusieurs valeurs si le prof. peut
enseigner plusieurs matières.
Solution
Professeur Matière
1,n Enseigner
Matricule 1,n Code
Nom Matière
46
Quelques erreurs de modélisation
• Cas 2 : Attribut sans signification
Personnel
Matricule
Nom
Matière
L'attribut "Matière" ne prend pas de valeur pour une secrétaire
ou un surveillant.
Solution
Personnel
Matricule
Nom
47
Quelques erreurs de modélisation
• Cas 3 : Dépendance incomplète
Commande Produit
1,n Concerner
N° Bon 1,n Réf
Qté Date
Désign.
P.U.
L'attribut "Date" ne dépend pas du produit et l'attribut "Qté" peut prendre
plusieurs valeurs.
Solution
Commande Produit
1,n Concerner
N° Bon 1,n Réf
Date Qté Désign.
P.U.
48
La normalisation du MCD
ETUDIANT ET UDIANT
Nom n'est pas 1FN
N° étudiant
est 1FN
Prénom Nom
Age Prénom
Adresse Age
49
• 2ème Forme Normale (2FN) : DF élémentaire de l'identifiant.
Tout attribut d'une entité doit dépendre de l'identifiant de
cette entité par une dépendance fonctionnelle élémentaire.
ETUDIANT
Code_Option, N°_étudiant n'est pas 2FN
Nom
Prénom
Nom option
ETUDIANT
N°_étudiant
Nom 0,n
SUIVRE
0,n
OPTION
Code_option
est 2FN
Prénom Nom option
50
• 3ème Forme Normale (3FN) : DF élémentaire et directe.
Tout attribut d'une entité doit dépendre de l'identifiant
par une DF élémentaire et directe.
ETUDIANT
ETUDIANT
N°_étudiant SUIVRE OPTION
Nom
Prénom
0,n 0,n
Code_option est 3FN
Nom_option
51
• 4ème Forme Normale (4FN) : DF complète (cas de
l'identifiant concaténé).
Si une entité a un identifiant concaténé, un des attributs
composant l'identifiant ne doit pas dépendre d'un autre
attribut.
Exemple :
RG1 : tout prof enseigne une et une seule matière.
RG2 : toute classe n'a qu'un seul prof par matière.
COURS
Matière, N° classe n'est pas 4FN
N° prof
COURS CLASSE
N° prof
0,n
ENSEIGNER DANS
0,n N° classe est 4FN
Mati ère N° prof
52
5ème Forme Normale (5FN)
les cardinalités sont toutes 1,1 donc c’est une association fantôme
1FN : élémentarité des attributs et existence de l'identifiant.
54
Les étapes pour la construction d'un MCD
L'étude de l'existant
56
Informatisation du SI d’une société de vente
Total …………
57
En utilisant le schéma de construction détaillé précédemment,
établir le MCD de leur nouvelle base de données. On suppose
que certaines opérations ont déjà été effectuées :
• Recueil des informations (interview du SI existant)
• R1 : un client peut passer une ou plusieurs commandes ou ne passer
aucune commande;
• R2 : une commande concerner au moins un produit;
• R3 : une commande concerne un et un seul client;
• R4 : une commande est assurée par un et un seul représentant qui n’est
pas toujours le même pour un client donné.
• Construction d'un dictionnaire de données (DD) : établissement de
la liste des attributs à partir des informations recueillies. Comme le SI actuel
est manuel, il n’existe pas nécessairement des codifications, on imaginera qu’il
existe des codes pour identifier les entités évidentes …
Par exemple, « Cocli » pour CLIENT et « Corep » pour REPRESENTANT seront
créées, on les marquera d’un (*) pour signifier qu’elles n’existent pas encore.
58
• Le dictionnaire des données (DD)
SIGNIFICATION TYPE (1) LONGUEUR NATURE REGLE DE CALCUL
(2) (3) OU INTEGRITE (4)
60
• Le graphe des dépendances fonctionnelles
Ref NoBon
Design PU Date
Qté
CoRep CoCli
61
• Le graphe des dépendances fonctionnelles
Ref NoBon
Design PU Date
Qté
CoRep CoCli
62
• Transformation du GDF en MCD
Règles de transformation
63
Application de la 1ère règle (R1)
PRODUIT COMMANDE
Ref NoBon
Design Date
PU Qté
CLIENT
REPRESENTANT
CoCli
CoRep NomCli
NomRep RueCli
VilleCli
64
Application des règles R2 et R3
PRODUIT COMMANDE
0,n CONCERNER 1,n
Ref NoBon
Design
Qté Date
PU
1,1
1,1
OBTENIR PASSER
0,n
0,n
CLIENT
REPRESENTANT
CoCli
CoRep NomCli
NomRep RueCli
VilleCli
65
Extension du modèle E/A Généralisation/
Spécialisation
Propriétaire Locataire
idProprio idLocataire
nomProprio nomLoc
adrProprio Propriétaire Locataire
adrLoc
typeProprio revenusLocat
revenusLocat typeProprio
Entités spécifiques
Généralisation/ Spécialisation
VEHICULE
Autobus Voiture
Une hiérarchie
Généralisation/ Spécialisation
Mécanisme d’héritage
➢L’héritage des propriétés:
Les entités spécialisées héritent des propriétés des entités génériques ; elles ont:
▪ leurs caractéristiques propres
▪ les caractéristiques communes.
➢L’identifiant:
Les entités spécialisées héritent de l’identifiant de l’entité générique.
➢Les associations:
▪ Les entités spécialisées hérite des associations auxquelles participe l’entité générique.
▪ Elle participent à des associations spécifiques.
Exemple d’héritage
Nom
PERSONNE prénom
adresse
HOPITAL
HOMME FEMME
nombreGrossesses accoucher
Exemple d’héritage
EMPLOYE
affecter SERVICE
Nom
adresse
SECRETAIRE
CADRE
Vitesse de frappe
prime
responsable PROJET
Hiérarchie double
Num
VEHICULE
Constructeur
proprio
nbrePlaces
Autobus nbreMaxPlaces
tonnage Camion
MLD: Schémas relationnels
Notations : on dit qu’une association binaire (entre deux entités ou réflexive) est
de type :
– 1 : 1 (un à un) si aucune des deux cardinalités maximales n’est n ;
– 1 : n (un à plusieurs) si une des deux cardinalités maximales est n ;
– n : m (plusieurs `a plusieurs) si les deux cardinalités maximales sont n.
MLD: Traduction d’un MCD en un MLDR
Règle 1 : toute entité devient une table dans laquelle les attributs deviennent les
colonnes. L’identifiant de l’entité constitue alors la clé primaire de la table.
Règle 2 : une association binaire de type 1 : n disparait, au profit d’une clé étrangère
dans la table côté.
MLD: Traduction d’un MCD en un MLDR
Règle 3 : une association binaire de type n : m devient une table supplémentaire
MLD: Traduction d’un MCD en un MLDR
Règle 4 : une association binaire de type 1 : 1 est traduite comme une association binaire
de type 1 : n sauf que la clé étrangère se voit imposer une contrainte d’unicité en plus
d’une éventuelle contrainte de non vacuité
MLD: Traduction d’un MCD en un MLDR
Règle 5 : une association non binaire est traduite par une table supplémentaire
dont la clé primaire est composée d’autant de clés étrangères que d’entités en
association