Initiation à la conception des systèmes d`informations. Cours N°3

Download Report

Transcript Initiation à la conception des systèmes d`informations. Cours N°3

Initiation à la conception des
systèmes d'informations.
Cours N°3 :
Modèle Conceptuel de Données
Souheib Baarir
[email protected]
Université Paris Ouest Nanterre la défense.
1
Principes fondamentaux
• Le MCD a pour but d'écrire de façon formelle les données qui
seront utilisées par le système d'information. Il s'agit donc d'une
représentation des données, facilement compréhensible,
permettant de décrire le système d'information à l'aide d'entités.
• Il est à la base de tous les SGBD dits relationnels (Access,
Oracle,DB2…) qui sont les plus utilisés actuellement dans les
entreprises.
• Cet outil va nous permettre de recenser et d’organiser les données
du système d’information du domaine étudié.
• Il permet donc une représentation du “ réel perçu ” sous la forme
de :
ENTITES, ASOOCIATIONS et PROPRIETES.
2
Entité : définition

Est la représentation formelle de la mémorisation d’une
information complexe et cohérente.

Sert à décrire plusieurs occurrences de la même information
complexe.
◦ Exemple :
 une Ford fiesta, une Renault Laguna et une Peugeot 306 sont trois occurrences de la
même entité qu’on peut appeler voiture.

Les éléments de l’information (complexe) modélisée par l’entité
sont les propriétés.
◦ Exemple :
 Ford, Renaud et Peugeot sont des « marques » ; fiesta, Laguna et 306 sont des
« modèles ». Ainsi, Marque et Modèle peuvent être des propriétés de l’entité
voiture.

Remarque : on l’appel aussi Entité-Type.
3
Entité : propriété
Une propriété est un élément d’une entité, et
d’une seule :
◦ décrit la mémorisation d’une information
élémentaire,
◦ a un nom unique,
◦ permet de mémoriser une valeur,
◦ doit avoir un sens (donc une valeur) pour chacune
des occurrences de la composante
 Domaine de valeurs.
Une propriété doit-elle être toujours renseignée ?
4
Entité : identifiant

L’identifiant de l’entité est une propriété qui ne
peut pas prendre deux fois la même valeur dans
deux occurrences de l’entité.

C’est l’identifiant qui fait l’entité.
Attention : tout argument autre que la nécessité
d’un identifiant différent ne saurait en aucun cas
justifier le choix de deux entités plutôt qu’une.
5
Entité : représentation schématique
Etudiant
Identifiant
Identifiant
Propriété
N° étudia nt
Nom étu diant
P rén om étudian t
Adres se étudian t
Etc
6
Entité : occurrences
Pour une valeur de l’identifiant, on a une valeur
de chacune des propriétés.
 Deux occurrences de l’entité ne peuvent avoir
la même valeur d’identifiant.
 Les domaines de valeurs des propriétés ne sont
pas disjoints.

Etudiant
02 6854 M
DUP ONT
Marti n
Vers ai ll es
Et c
Etudiant
01 7895 E
MA RTIN
Laurent
Cou rb evoi e
Et c
Etudiant
02 6547 Z
MA RTIN
Béat ri ce
Vers ai ll es
Et c
7
Association : introduction

C’est la représentation abstraite de la mémorisation
d’un lien entre des informations complexes
(représentées par des entités).

On appelle collection de l’association l’ensemble
des entités qu’elle relie.

Une occurrence de l’association représente un
lien sémantique qui concerne une occurrence de
chacune des entités de la collection.
8
Association : représentation
schématique
Nom de l’association
Etudiant
N° étudia nt
Nom étu diant
Etc
Formation
Inscriptio n
Code fo rmatio n
Nom formation
Etc
Pattes
Entités de la collection
9
Association : identifiant

Il est implicite !

C’est un n-uplet composé des identifiants
des entités-types concernées.
◦ Exemple : l’identifiant de Inscription est le
couple (N° étudiant, Code formation).
Etudiant
N° étudia nt
Nom étu diant
Etc
Formation
Inscriptio n
Code fo rmatio n
Nom formation
Etc
10
Association : les contraintes de
cardinalité

Une cardinalité est une précision apportée sur une
patte d’une association.

Elle indique combien de fois l’entité peut intervenir
dans l’association.

Pour un MCD, est utile de savoir :
◦ la cardinalité minimale  Si une occurrence de l’entité
est obligatoirement concernée par une (au moins)
occurrence de l’association ;
◦ la cardinalité maximale  Si une occurrence de l’entité
peut (éventuellement) être concernée par plusieurs
occurrences de l’association.
11
Association : cardinalité minimale
Elle peut prendre deux valeurs :
◦ 0, signifie que l’entité peut ne pas
intervenir dans l’association.
◦ 1, signifie au contraire qu’elle intervient
obligatoirement une fois.
12
Association : cardinalité maximale
Elle peut prendre deux valeurs :
◦ 1, signifie que l’entité ne peut intervenir
plus d’une seule fois dans l’associationtype ;
◦ n, signifie au contraire qu’elle peut
intervenir plusieurs fois dans l’association.
13
Association : c’est le 1 qui représente
la contrainte
Une patte sans contrainte aura
pour cardinalités : (0, n)
Etudiant
N° étudia nt
0,n
Nom étu diant
Etc
Formation
Inscription
0,n
Code fo rmatio n
Nom formation
Etc
14
Association : double contrainte sur
une patte
• La cardinalité minimale indique ce qui est obligatoire,
dans le cas le plus restrictif, i.e., le plus souvent lors de
sa création.
X
N° X
N om X
Et c
Y
0,n
A1
1,1
N° Y
N om Y
Et c
• Sur la patte X, le 0 signifie que X peut ne pas être
reliée à Y lors de sa création.
• Le 1 en minimum de la patte Y signifie qu’en aucun
cas on ne peut créer une occurrence de Y sans la
relier en même temps à une occurrence de X…Cette
dernière doit donc avoir été créée avant !
15
Association : binaire fonctionnelle
Lorsqu’une association-type binaire a une patte
dont la cardinalité maximale est égale à 1,
alors elle est dite fonctionnelle.
N° X = A1 (N° Y)
X
N° X
Nom X
Et c
Y
0,n
A1
1,1
N° Y
Nom Y
Et c
16
Association : combinaisons de
cardinalités possibles
Interdit : (1, 1) / (1, 1)
FAUX
X
N° X
Nom X
Etc
Y
1,1
0,n
A1
1,1
N° Y
Nom Y
Etc
Pourquoi ?
17
Association : combinaisons de
cardinalités possibles (suite)
Interdit : (1, n) / (1, n)
FAUX
X
N° X
Nom X
Etc
Y
1,n
A2
1,n
N° Y
Nom Y
Etc
Pourquoi ?
18
Association : combinaisons de
cardinalités possibles (suite)
Rare et délicat : (1, 1) / (1, n)
X
N° X
Nom X
Etc
Y
1,n
A3
1,1
N° Y
Nom Y
Etc
Signification possible ?
19
Association : combinaisons de
cardinalités possibles (fin)
Rare et délicat : (0, 1) / (1, 1)
X
N° X
Nom X
Etc
Y
0,1
A4
1,1
N° Y
Nom Y
Etc
Significations possibles ?
20
Entités
Premières règles…
Règle 1 Existence d’un identifiant pour chaque entité
Règle 2 Pour chaque occurrence d’une entité, chaque propriété ne peut
prendre qu’une valeur
Règle 3 Toutes les propriétés doivent êtres élémentaires (non
décomposables)
Association
Règle 4 Toutes les propriétés autres que l’identifiant doivent dépendre
pleinement et directement de l’identifiant
Règle 5 A chaque occurrence d’une association correspond une et une
seule occurrence de chaque entité qui participe à la relation
Règle 6 Pour chaque occurrence de l’association, il ne peut exister qu’une
une seule valeur pour chaque propriété de l’association
et
Règle 7 Toutes les propriétés d’une association doivent dépendre pleinement
de l’identifiant de la relation.
21
Le cas des associations ternaire

L’association A6 décrit un lien sémantique entre les
entités X, Y et Z.
X
N° X
Nom X
Etc
Y
0,n
A6
1,n
N° Y
Nom Y
Etc
0,n
Z
N° Z
Nom Z
Etc
Difficile à gérer en pratique !!!
Il faut essayer d’en avoir le moins possible.
22
Association ternaire : dépendance
fonctionnelle
DF
Prof
N°prof
Nom
0,n
Matière
N°mat
0,n
DF: un prof.
Enseigne une
seule matière.
cours
salle, heure
0,n
Classe
N°classe
Prof
N°prof
Nom
1,1
assure
1,n
Matière
N°mat
0,n
cours
salle, heure
0,n
Classe
N°classe
23
Association ternaire : règle absolue
Pour garder une association ternaire (et au-delà)…
Toutes les cardinalités
maximum d’une
association ternaire
(et au-delà) doivent être
égales à n et pas de
dépendance fonctionnelle
24
Compléments et extensions
sur le modèle
entité - association.
25
Association entre occurrences d’une même
entité (1/2)
Artiste
N° a rtis te
Nom artiste
P rén om artis te
Date n aiss ance
Date d écès
0,n
Elèv e de
Maître - élève
0,n
Maître d e
0,n
Titu laire
Rôle
0,n
N° rôle
Nom pers onn age
Distribué
Acteur
N° acteur
Nom acteur
P réno m acteu r
0,n
Dou blu re
26
Association entre occurrences d’une même
entité (2/2)
Toutes les cardinalités minimums doivent
être égales à zéro !
FAUX
Pers onne
N° per sonne
Nom famille
Prénom
1,1
Fils
Fi li atio n
0,n
Père
27
Historisation : problème
Pour un produit, le prix d’achat dépend à la fois
du produit et de la date d’achat.
Fournisseur
N° Fo urnis seur 0,n
Nom Fo urnisseur
Produit
Fo urnir
1,1
N° Produit
Nom prod uit
Des crip tion
0,n
Date
Date
0,n
Date validité PA
P rix d 'ach at
Le modèle devient très vite complexe et incompréhensible !
28
Historisation : solution… historisation de
la propriété
Produit
Fo urnis seur
N° Fournisseur
Nom Fournisseur
0,n
Fo urnir
1,1
N° Produit
Nom produit
Description
Prix d'achat (H)
Historisation
Une propriété à laquelle est attachée une historisation, décrit une information
complexe : c’est un ensemble de couples,
– la donnée définie par le nom de la propriété,
– une donnée temporelle permettant d’en différencier les occurrences
multiples.
29
Identifiant relatif : introduction
X
Z
N° X
N° Z
0,n
1,n
A1
A2
1,1
1,1
Y
N° Y
T
N° T
Cardinalité minimale égale à 1 OBLIGATOIRE
30
Identifiant relatif : définition
E1
N° E1
(R) 1,1
AT
0,n
E2
N° E2

Une entité-type E1 dotée d’un identifiant relatif, est obligatoirement reliée
à une autre entité-type E2, par une association binaire fonctionnelle.

L’identifiant relatif (de E1, N° E1) est une propriété qui,
◦ ne peut prendre la même valeur pour deux occurrences de E1 reliées à la
même occurrence de E2.
◦ Deux occurrences de E1 liées à des occurrences différentes de E2, peuvent avoir la même
valeur pour cette propriété !

L’identifiant de E1 est alors le couple : (identifiant de E2, identifiant relatif de E1)
◦ Cet identifiant ne peut avoir deux fois la même valeur pour deux occurrences de E1,
qu’elles soient ou non reliées à la même occurrence de E2.
◦ Aussi, noté : N° E2∙N° E1.
31
Héritage sur entités : introduction
Client
Es t 1
0,1
1,1
N ° cli ent
0,1
N om cli ent
A dres se cli en t
Personne physique
N ° Pers onne physi que
P réno m
Sexe
Es t 2
1,1
Personne morale
N ° Pers onne m ora le
St at ut
N om res pon sab le
Problèmes :
• trois identifiants,
• risque d’incohérence.
32
Héritage sur entités : utilisation
C l ient
N° c lie nt
Nom c lie nt
Adre sse client
XT
Pers onne physi que
Prénom
Se xe
Pers onne m ora le
Sta tut
Nom responsable
• Les schémas de Personne physique et Personne morale ne
mentionnent pas d’identifiants.
 Ce ne sont pas des entités autonomes.
 Elles dépendent de l’entité Client dont elles héritent les propriétés (y
compris l’identifiant).
33
Héritage sur entités : définition
L’entité-type dotée d’un héritage est un ensemble complexe.
Nous appelons légataire la composante qui porte l’identifiant,
et héritiers les autres.

L’héritier dépend du légataire, et cette dépendance est représentée par le trait
qui les unit.

Le triangle intermédiaire permet de préciser une condition de validité. Les
conditions possibles sont :
◦ la totalité (représentée par un T) – dans une occurrence de l’entité-type, le légataire
est associé à au moins une occurrence d’héritier ;
◦ L’exclusion (représentée par un X) – dans une occurrence de l’entité-type, le légataire
est associé à un héritier au plus (mais éventuellement à aucun) ;
◦ la partition (représentée par la combinaison XT) – dans une occurrence de l’entitétype, le légataire est associé à une occurrence d’un héritier, et un seul.
34
Contraintes d’Intégrité Fonctionnelle (CIF) :
cas d’une association binaire

Sur association-type binaire :
Client
N° client
Nom client
Adresse client
0,n
Pa ssée pa r
Commande client
1,1
N° commande client
Date réception
35
CIF : cas d’une association non binaire
(contrainte sur toute mes pattes)
Client
Produit
N° client
Nom client
Adresse client
N° Produit
Nom produit
Description
0,n
Comment garantir
l’unicité de l’entrepôt pour
un couple (Client,Produit) ?
0,n
Livré pa r
0,n
Entrepô t
N° Entrepôt
Adresse entrepôt
Client
Produit
N° client
Nom client
Adresse client
N° Produit
Nom produit
Description
0,n
0,n
Livré par
CIF
0,n
Entrepôt
N° Entrepôt
Adresse entrepôt
36
CIF : cas d’une association non binaire (contrainte
ne concernant pas toute les pattes)
Client
Produit
N° client
Nom client
Adresse client
N° Produit
Nom produit
Description
0,n
0,n
CIF
Livré par
A proscrire !!!
0,n
Entrepôt
N° Entrepôt
Adresse entrepôt
Quel devrait être le sens de ce modèle ?
37
CIF : une autre représentation
Client
Produit
N° client
Nom client
Adresse client
N° Produit
Nom produit
Description
Prix d'achat (H)
0,n
Livré
Rel_1
par
0,n
0,n
Entrepô t
N° Entrepôt
Adresse entrepôt
38
Contraintes entre plusieurs associations





Totalité : tout élément de l’ensemble appartient à au
moins un des sous-ensembles – nous la
notons « T ».
Exclusion : si un élément appartient à un sousensemble, alors il n’appartient pas à un
autre (mais il peut n’appartenir à aucun
d’entre eux) – nous la notons « X ».
Égalité : les deux sous-ensembles sont égaux ; elle
permet en fait de décrire la simultanéité de
l’existence des occurrences de deux
associations – nous la notons « S ».
Partition : un élément de l’ensemble appartient à un
et un seul des sous-ensembles – nous la
notons
« XT ».
Inclusion : tout élément du premier sous-ensemble est
élément du second – nous la notons « I ».
39
Contraintes entre plusieurs associations :
exemple de totalité
Concerne 1
Fa cture
0,n
0,n
B on livra is on
N° B on livraison
T
N° Facture
0,n
Concerne 2
0,n
B on répa ration
N° B on réparation
40
Contraintes entre plusieurs associations :
exemple d’exclusion
Concerne 5
0,n
B on livra is on
N° B on livraison
0,n
Fa cture
X
N° Facture
0,n
Concerne 6
0,n
B on répara tion
N° B on réparation
41
Contraintes entre plusieurs associations :
exemple de partition
Concerne 3
0,n
B on livra is on
N° B on livraison
0,1
Fa cture
N° Facture
XT
0,1
Concerne 4
0,n
B on répara tion
N° B on réparation
42
Contraintes entre plusieurs associations :
exemple d’inclusion
Servi pa r
Client
N° client
Nom client
Adresse client
Entrepô t
0,n
0,1
N° Entrepôt
Adresse entrepôt
I
0,n
Produit
Autoris atio n achat
0,n
N° Produit
Nom produit
Description
43