Upload
esmee-roth
View
127
Download
6
Embed Size (px)
Citation preview
Initiation à la conception Initiation à la conception des systèmes des systèmes d'informations.d'informations.
Cours N°3 : Cours N°3 : Modèle Conceptuel de Modèle Conceptuel de DonnéesDonnées
Souheib [email protected]é Paris Ouest Nanterre la défense.
1
2
Principes fondamentaux 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.
3
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.
Entité : définitionEntité : définition
4
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 ?
Entité : propriétéEntité : propriété
5
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.
Entité : identifiantEntité : identifiant
6
EtudiantN° étudiantNom étudiantPrénom étudiantAdresse étudiantEtc
Identifiant
Identifiant Propriété
Entité : représentation Entité : représentation schématique schématique
7
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.
Etudiant017895EMARTINLaurentCourbevoieEtc
Etudiant026854MDUPONTMartinVersaillesEtc
Etudiant026547ZMARTINBéatriceVersaillesEtc
Entité : occurrences Entité : occurrences
8
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.
Association : introductionAssociation : introduction
9
Entités de la collection
Nom de l’association
Pattes
EtudiantN° étudiantNom étudiantEtc
FormationCode formationNom formationEtc
Inscription
Association : représentation Association : représentation schématiqueschématique
10
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).
Association : identifiantAssociation : identifiant
EtudiantN° étudiantNom étudiantEtc
FormationCode formationNom formationEtc
Inscription
11
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.
Association : les contraintes Association : les contraintes de cardinalitéde cardinalité
12
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.
Association : cardinalité Association : cardinalité minimaleminimale
13
Elle peut prendre deux valeurs :
◦1, signifie que l’entité ne peut intervenir plus d’une seule fois dans l’association-type ;
◦n, signifie au contraire qu’elle peut intervenir plusieurs fois dans l’association.
Association : cardinalité Association : cardinalité maximalemaximale
14
Une patte sans contrainte aura pour cardinalités : (0, n)
0,n
EtudiantN° étudiantNom étudiantEtc
0,n
FormationCode formationNom formationEtc
Inscription
Association : c’est le 1 qui Association : c’est le 1 qui représente la contraintereprésente la contrainte
15
0,n
XN° XNom XEtc
1,1
YN° YNom YEtc
A1
• 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 !
• La cardinalité minimale indique ce qui est obligatoire, dans le cas le plus restrictif, i.e., le plus souvent lors de sa création.
Association : double Association : double contrainte sur une pattecontrainte sur une patte
16
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)
0,n
XN° XNom XEtc
1,1
YN° YNom YEtc
A1
Association : binaire Association : binaire fonctionnellefonctionnelle
17
Association : combinaisons Association : combinaisons de cardinalités possibles de cardinalités possibles
Interdit : (1, 1) / (1, 1)
Pourquoi ?
0,n
XN° XNom XEtc
1,1
YN° YNom YEtc
A11,1
FAUX
18
Interdit : (1, n) / (1, n)
FAUX
1,n
X
N° XNom XEtc
1,n
Y
N° YNom YEtc
A2
Pourquoi ?
Association : combinaisons Association : combinaisons de cardinalités possibles de cardinalités possibles (suite) (suite)
19
Rare et délicat : (1, 1) / (1, n)
1,n
X
N° XNom XEtc
1,1
Y
N° YNom YEtc
A3
Signification possible ?
Association : combinaisons Association : combinaisons de cardinalités possibles de cardinalités possibles (suite) (suite)
20
Rare et délicat : (0, 1) / (1, 1)
0,1
X
N° XNom XEtc
1,1
Y
N° YNom YEtc
A4
Significations possibles ?
Association : combinaisons Association : combinaisons de cardinalités possibles de cardinalités possibles (fin) (fin)
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 et une seule valeur pour chaque propriété de l’association
Règle 7 Toutes les propriétés d’une association doivent dépendre pleinement de l’identifiant de la relation.
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)
Règle 4 Toutes les propriétés autres que l’identifiant doivent dépendre pleinement et directement de l’identifiant
21
Premières règles… Premières règles… Entités
Associ-
ation
22
L’association A6 décrit un lien sémantique entre les entités X, Y et Z.
Difficile à gérer en pratique !!!Il faut essayer d’en avoir le moins possible.
0,n
X
N° XNom XEtc
1,n
Y
N° YNom YEtc
0,n
Z
N° ZNom ZEtc
A6
Le cas des associations Le cas des associations ternaire ternaire
23
Classe
Prof
N°profNom
MatièreN°mat
courssalle, heure
N°classe
Classe
Prof
N°profNom
Matière
N°mat
courssalle, heure
N°classe
assure
0,n 0,n
0,n
DF
1,11,n
0,n
0,n
DF: un prof. Enseigne une
seule matière.
Association ternaire : Association ternaire : dépendance fonctionnelledépendance fonctionnelle
24
Toutes les cardinalités maximum d’une
association ternaire (et au-delà) doivent être
égales à n et pas de dépendance
fonctionnelle
Pour garder une association ternaire (et au-delà)…
Association ternaire : règle Association ternaire : règle absolueabsolue
Compléments et Compléments et extensions sur le modèle extensions sur le modèle
entité - association.entité - association.
25
26
0,nMaître de
0,nElève deArtiste
N° artisteNom artistePrénom artisteDate naissanceDate décès
Maître - élève
0,nRôle
N° rôleNom personnage
0,nDoublure
0,nTitulaire Acteur
N° acteurNom acteurPrénom acteur
Distribué
Association entre occurrences Association entre occurrences d’une même entité (1/2)d’une même entité (1/2)
27
Toutes les cardinalités minimums Toutes les cardinalités minimums doivent être égales à zéro !doivent être égales à zéro !
FAUX
0,nPère
1,1
FilsPersonne
N° personneNom famillePrénom
Filiation
Association entre occurrences Association entre occurrences d’une même entité (2/2)d’une même entité (2/2)
28
1,1
0,n
ProduitN° ProduitNom produitDescription
0,nDate
Date
0,nFournisseur
N° FournisseurNom Fournisseur
Fournir
Date validité PA
Prix d'achat
Historisation : problèmeHistorisation : problème
Le modèle devient très vite complexe et incompréhensible !
Pour un produit, le prix d’achat dépend à la foisdu produit et de la date d’achat.
29
1,1
Produit
N° ProduitNom produitDescriptionPrix d'achat (H)
0,n
Fournisseur
N° FournisseurNom Fournisseur
Fournir
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.
Historisation : solution… Historisation : solution… historisation de la propriétéhistorisation de la propriété
30
0,n
XN° X
1,1
YN° Y
1,n
ZN° Z
1,1
TN° T
A1 A2
Cardinalité minimale égale à 1 OBLIGATOIRE
Identifiant relatif : Identifiant relatif : introductionintroduction
31
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.
0,nE2
N° E21,1(R)
E1N° E1
AT
Identifiant relatif : Identifiant relatif : définition définition
32
0,1 0,1
ClientN° clientNom clientAdresse client
1,1
Personne physiqueN° Personne physiquePrénomSexe
1,1
Personne moraleN° Personne moraleStatutNom responsable
Est 1 Est 2
Problèmes :• trois identifiants,• risque d’incohérence.
Héritage sur entités : Héritage sur entités : introductionintroduction
33
Client
N° clientNom clientAdresse client
Personne physique
PrénomSexe
Personne morale
StatutNom responsable
XT
• 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).
Héritage sur entités : Héritage sur entités : utilisationutilisation
34
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.
Héritage sur entités : Héritage sur entités : définitiondéfinition
35
Sur association-type binaire :
0,n
Client
N° clientNom clientAdresse client
1,1
Commande client
N° commande clientDate réception
Passée par
Contraintes d’Intégrité Contraintes d’Intégrité Fonctionnelle (CIF) : cas d’une Fonctionnelle (CIF) : cas d’une association binaireassociation binaire
36
0,n
Client
N° clientNom clientAdresse client
0,n
Produit
N° ProduitNom produitDescription
0,n
Entrepôt
N° EntrepôtAdresse entrepôt
Livré par
0,n
Client
N° clientNom clientAdresse client
0,n
Produit
N° ProduitNom produitDescription
0,n
Entrepôt
N° EntrepôtAdresse entrepôt
Livré parCIF
Comment garantir l’unicité de l’entrepôt
pour un couple (Client,Produit) ?
CIF : cas d’une association non CIF : cas d’une association non binaire (contrainte sur toute mes binaire (contrainte sur toute mes pattes)pattes)
37Quel devrait être le sens de ce modèle ?
0,n
Client
N° clientNom clientAdresse client
0,n
Produit
N° ProduitNom produitDescription
0,n
Entrepôt
N° EntrepôtAdresse entrepôt
Livré parCIF
A proscrire !!
!
CIF : cas d’une association non binaire CIF : cas d’une association non binaire (contrainte ne concernant pas toute les (contrainte ne concernant pas toute les pattes)pattes)
38
0,n
ClientN° clientNom clientAdresse client 0,n
ProduitN° ProduitNom produitDescriptionPrix d'achat (H)
0,n
Entrepôt
N° EntrepôtAdresse entrepôt
Rel_1Livré par
CIF : une autre CIF : une autre représentationreprésentation
39
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 sous-
ensemble, 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 ».
Contraintes entre plusieurs Contraintes entre plusieurs associations associations
40
0,n
0,n
Facture
N° Facture
0,nBon livraison
N° Bon livraison
0,nBon réparation
N° Bon réparation
Concerne 1
Concerne 2
T
Contraintes entre plusieurs Contraintes entre plusieurs associations : exemple de totalitéassociations : exemple de totalité
41
0,n
0,n
FactureN° Facture
0,nBon livraison
N° Bon livraison
0,nBon réparation
N° Bon réparation
Concerne 5
Concerne 6
X
Contraintes entre plusieurs Contraintes entre plusieurs associations : exemple d’exclusionassociations : exemple d’exclusion
42
0,1
0,1
FactureN° Facture
0,nBon livraison
N° Bon livraison
0,nBon réparation
N° Bon réparation
Concerne 3
Concerne 4
XT
Contraintes entre plusieurs Contraintes entre plusieurs associations : exemple de partitionassociations : exemple de partition
43
0,1
0,n
ClientN° clientNom clientAdresse client
0,n
ProduitN° ProduitNom produitDescription
0,n
EntrepôtN° EntrepôtAdresse entrepôt
Servi par
Autorisation achat
I
Contraintes entre plusieurs Contraintes entre plusieurs associations : exemple d’inclusionassociations : exemple d’inclusion