mcd (première partie)
TRANSCRIPT
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)
21
Une propriété doit être portée par l’entité, ou l’association,
dont elle dépend entièrement.
Une propriété ne dépend pas complètement d’une entité, ou d’une association, dans deux cas :
1. la connaissance de la valeur de l’identifiant ne suffit pas pour connaître la valeur de la propriété,
2. il suffit de connaître une partie seulement de la valeur de l’identifiant, pour connaître celle de la propriété.
Propriétés : sens et Propriétés : sens et placeplace
22
Combien de notes dans la même matière pour un étudiant donné ?
0,n
EtudiantN° étudiantNom étudiantPrénom étudiantEtc
0,n
MatièreN° matièreNom matièreCoefficient
Examen final
Note
Propriétés : portées par Propriétés : portées par une association (1/2).une association (1/2).
23
Un autre choix de Un autre choix de gestiongestion
0,n
EtudiantN° étudiantNom étudiantPrénom étudiantEtc
0,n
MatièreN° matièreNom matièreCoefficient
1,1 1,1
InterrogationN° interrogationDate interrogationNote
Concerne De
Propriétés : portées par Propriétés : portées par une association (2/2).une association (2/2).
24
Une association binaire fonctionnelle ne peut en aucun
cas porter de propriété !
0,n
X
N° XNom XEtc
1,1
Y
N° YNom YEtc
A5Z
FAUX
Pourquoi est-ce faux ?
Propriétés : règle Propriétés : règle absolueabsolue
25
Une attitude très répandue veut que ce type de faute puisse être corrigé automatiquement de la façon suivante : puisque Z ne dépend que de Y alors Z est une propriété de Y et on doit la déplacer. Cela n’est vérifié que statistiquement. Donc, c’est faux !
En fait, il faut se poser la question fondamentale de la sémantique induite par les choix de gestion : 1. quel est le sens de cette association ? 2. est-elle bien fonctionnelle ?3. quel est le sens de la propriété Z ?
Propriétés : correction Propriétés : correction du modèle de l’exempledu modèle de l’exemple
26
0,n
ClientN° clientNom clientEtc
1,1
CommandeN° commandeDate commandeAdresse de livraison
Passée par
Taux
FAUX
1,1
DonateurN° donateurNom donateurEtc
0,nAnnée exercice
Année
Don
Montant du don
FAUX
Propriétés : correction du Propriétés : correction du modèle de l’exemple (suite et modèle de l’exemple (suite et 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
27
À retenir…À retenir…Entités
Associa-
tion
28
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
29
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
30
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