30
Initiation à la Initiation à la conception des systèmes conception des systèmes d'informations. d'informations. Cours N°3 : Cours N°3 : Modèle Conceptuel de Modèle Conceptuel de Données Données Souheib Baarir [email protected] Université Paris Ouest Nanterre la défense. 1

MCD (première partie)

Embed Size (px)

Citation preview

Page 1: MCD (première partie)

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

Page 2: MCD (première partie)

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.

Page 3: MCD (première partie)

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

Page 4: MCD (première partie)

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é

Page 5: MCD (première partie)

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

Page 6: MCD (première partie)

6

EtudiantN° étudiantNom étudiantPrénom étudiantAdresse étudiantEtc

Identifiant

Identifiant Propriété

Entité : représentation Entité : représentation schématique schématique

Page 7: MCD (première partie)

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

Page 8: MCD (première partie)

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

Page 9: MCD (première partie)

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

Page 10: MCD (première partie)

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

Page 11: MCD (première partie)

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é

Page 12: MCD (première partie)

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

Page 13: MCD (première partie)

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

Page 14: MCD (première partie)

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

Page 15: MCD (première partie)

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

Page 16: MCD (première partie)

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

Page 17: MCD (première partie)

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

Page 18: MCD (première partie)

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)

Page 19: MCD (première partie)

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)

Page 20: MCD (première partie)

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)

Page 21: MCD (première partie)

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

Page 22: MCD (première partie)

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).

Page 23: MCD (première partie)

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).

Page 24: MCD (première partie)

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

Page 25: MCD (première partie)

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

Page 26: MCD (première partie)

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)

Page 27: MCD (première partie)

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

Page 28: MCD (première partie)

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

Page 29: MCD (première partie)

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

Page 30: MCD (première partie)

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