Vous êtes sur la page 1sur 37

Le modle conceptuel des donnes MCD

La problmatique des donnes


Il ne suffit pas de sintresser au nom et aux proprits des donnes : type, longueur, valeurs. Il faut sintresser la donne elle-mme, ses sens et ses usages.
Chez moi un client Oui mais chez moi un client Moi un client

Dir. Logistique Dir. Financier Dir. Commercial

Les acteurs peuvent utiliser les mmes mots avec des sens ou des contenus diffrents (synonymes, polysmes).

Exemple rel : sens du mot client


Libell FR Libell EN Sens

Client

Customer

Correspond ladresse principale dun donneur dordres depuis laquelle ont reoit les ordres de ralisation des prestations. Exemple de client : Kraft Foods France
Est la dclinaison dun client pour un lieu gographique ou un mtier particulier Exemple de Client Oprationnel : Kraft entreposage CPN Dsigne le tiers destinataire des factures dun client oprationnel .

Client oprationnel Client de facturation

Operational customer Bill-to customer

Client payeur
Client de gestion

Payer customer
Controlling customer

Dsigne le tiers qui paye les factures dun client oprationnel .


Dsigne un ou plusieurs clients oprationnels dont les cots et les recettes sont regroupes. Le client de gestion est une notion propre aux contrleurs de gestion.

Il faut comprendre les donnes avant de les dcrire (dictionnaire des donnes).

Il faut aussi se poser des questions sur la qualit des donnes existantes et les exigences de qualit.
Contradiction (pb de cohrence)
Hors nomenclature (pb de conformit et dintgrit) Incohrence
Date sexe naissance 10/04/1971 F Code Postal

nss

Nom

Prnom

Adresse 3, rue de la gare Rue des Lilas

Ville

Tlphone

171046734543621 Dupond

Albert

99999 Strasbourg 01 32145678

268065415498494 Durant

Lise

18/06/1968

54000

Nancy

0345762345

268065415498494 Durant

Lisa

18.06.1968

54000

Null

0345762345

Erreur de Format (pb de conformit) Doublon (pb dunicit) Erreur de saisie (pb dexactitude) Absence de valeur (pb de compltude)

Pb dintgrit rfrentielle

Objectif du MCD Dcrire les donnes du SI, indpendamment de tout choix d'implantation physique. 1. Le dictionnaire des donnes Inventaire des donnes du domaine tudi. Questions :
sens pour les diffrents interlocuteurs; les diffrents sens sont conserver. exigences de qualit et caractristiques.
1- Poser des questions 4- Soumettre Son travail

2 - Analyser les rponses

3 - Modliser

Nombreuses caractristiques :
identificateur (mnmonique), description ( sens prcis), type (numrique, alphanumrique, ...), taille, mode d'obtention : donne mmorise, donne calcule, donne "paramtre" : donne utile un traitement et non mmorise (ex : date d'dition), rgle de calcul (pour les donnes calcules), contraintes d'intgrit : intervalle de valeurs, liste de valeurs... origine (document, systme, service) volume, aspects quantitatifs frquence des mises jour, etc.

Descriptif trs simplifi utilis dans les exercices o toutes ces caractristiques ne sont pas toujours disponibles : documents
Rubrique Description Type entier rel date chane boolen Mode mmorise calcule paramtre D1 D2 D3 D4 x x x x x x x

identificateur libell

2. Le modle conceptuel des donnes : le modle entit/association (cf. cours BD 1A)


a) Concepts de base du modle E/A. b) Vrification et normalisation du modle E/A. c) Contraintes d'intgrit du modle E/A ou extensions du modle E/A.

a) Les concepts de base


Entit : tout objet concret ou abstrait ayant une existence propre et conforme aux besoins de gestion de lorganisation. Ex : le client Dupond, le produit de rfrence a456 Classe dentits (ou entit-type) : ensemble des entits dcrites par les mmes caractristiques. Ex : la classe CLIENT dont Dupond est une occurrence (ou instance). Association : n-uplet dentits smantiquement lies . Ex: (Dupond, 1367 VS 54) indiquant que la personne Dupond est propritaire de la voiture immatricule 1367 VS 54.

Classe dassociations (ou association-type) : regroupe toutes les associations constitues des mmes types dentits jouant le mme rle dans lassociation. Ex: PROPRIETAIRE(PERSONNE, VOITURE) Les occurrences de cette classe dassociation sont un sous ensemble du produit cartsien PERSONNE x VOITURE (c..d. une partie de lensemble des couples possibles de personnes et de voitures).
PERSONNE
PROPRIETAIRE

VOITURE

Remarques On peut avoir plusieurs classes dassociations sur les mmes classes dentits. Ex : PROPRIETAIRE(PERSONNE, VOITURE) et CONDUIRE(PERSONNE, VOITURE) On peut avoir une classe dassociation sur une seule classe dentits (on parle dassociation rflexive). On ajoute souvent dans ce cas des noms de rles pour distinguer les deux occurrences. Ex : CONJOINT(PERSONNE, PERSONNE)
PERSONNE
poux
CONJOINT pouse

On peut avoir une classe dassociation dfinie sur n classes dentits (association n-aire ou darit n ou de dimension n ou n pattes ). Ex: COURS(MATIERE, CLASSE, PROF)

Attention : les arits leves sont rares. Elle dnotent souvent des faiblesses dans lanalyse. arit 2 : 80% arit 3 : <20% arit > 3 :

Proprit : donne lmentaire permettant caractriser les entits et associations Ex : Nom, Prnom proprits de PROFESSEUR Jour, Heuredeb proprits de COURS
PROFESSEUR
Nom Prnom Adresse Age

de

COURS
Jour Heuredeb Heurefin

MATIERE
Refmat Intitul

CLASSE
Refclasse Numsalle

Identifiant : proprit ou groupe de proprits permettant didentifier de manire unique chaque occurrence de la classe dentits. Ex : N immatriculation pour VOITURE. Nom ne suffit pas pour PERSONNE. N Client pour CLIENT (proprit ajoute) Les identifiants sont en gnral souligns.
Cardinalits : indiquent pour chaque classe dentits de la classe dassociation, les nombres mini et maxi doccurrences de lassociation pouvant exister pour une occurrence de lentit. La cardinalit minimum est 0 ou 1. La cardinalit maximum est 1 ou n.

Une cardinalit minimum 0 signifie quil est possible dobserver (un jour) une occurrence dentit sans occurrence dassociation.
Donc 4 combinaisons possibles : 0,1 1,1 1,n 0,n au plus 1 1 et 1 seul au moins 1 un nombre quelconque

Ex: PROPRIETAIRE(PERSONNE [0,n], VOITURE [1,1]) Une personne a 0 n voitures; une voiture a 1 et 1 seul propritaire.

CONDUIT(PERSONNE [0,n], VOITURE [1,n]) Une personne conduit 0 n voitures; une voiture est conduite par 1 n personnes.

Reprsentation graphique :
source
PERSONNE
0,n PROPRIETAIRE 1,1

Sens de lecture

destination
VOITURE

!! Dans les mthodes anglo-saxonnes la cardinalit est place du ct oppos lentit source !!

COURS(MATIERE [1,n], CLASSE [1,n], PROF[1,n])


Un prof. a 1 n cours dans la semaine, une matire a 1 n cours dans la semaine, une classe a 1 n cours dans la semaine.
PROF
Nom Prnom Adresse Age 1,n COURS Jour Heuredeb Heurefin 1,n

MATIERE
Refmat Intitul

1,n

CLASSE
Refclasse Numsalle

Difficults : choix entre entit et association ?


1) Solution avec association
CLIENT
nocli nomcli

PRODUIT
1,n
commande 0,n noprod dsignation

Dans cette premire solution la commande nest pas une entit gre pour elle mme. Elle existe tant que le client et le produit existent. Ce peut tre le SI du domaine fabrication : on a juste besoin de savoir que les produits sont destins des clients.

2) Solution avec entit


PRODUIT CLIENT

nocli nomcli
1,n COMMANDE passe 1,1 nocde datecde 1,n porte

noprod dsignation

0,n

Dans cette seconde solution, les commandes sont identifies (identifiant nocde) et dcrites : on les gre en tant que telles. Elles peuvent tre conserves mme si le produit ou le client nexistent plus. Ce peut tre le SI du domaine financier.

Quelques critres de choix Une entit a une existence propre et un identifiant. Une association nexiste que si ses extrmits existent et na pas didentifiant explicite. Une entit peut tre associe dautres entits, une association non.

Difficults : choix des cardinalits ?


CLIENT
0, n ou 1, n ? LOCATION 0, n ou 0,1 ? LOCAL

Un client peut il avoir 0 location ? Est-ce encore un client ? Un local peut il tre lou plusieurs fois ? Non si la base reprsente une situation instantane et si le local nest pas partageable. Oui si on gre un historique ou si le local est partageable. Les cardinalits sont lment essentiel pour dfinir la smantique (signification) des donnes, pas une dcoration accessoire. Derrire cette notion on trouvera des contrles (par le SGBD ou les programmes).

Pour une situation donne, il nexiste pas une solution unique. Le bon modle est celui qui est accept par les personnes concernes par le projet.

b) Vrification et Normalisation
Contrler la qualit du modle vis--vis : des fondements du modle dune part (rgles de vrification), de la redondance de donnes dautre part (rgles de normalisation) . Permet de dtecter certaines incohrences dans la construction des modles.

1. Rgles Gnrales
Toute proprit doit apparatre une seule fois dans un modle. Il faut liminer la redondance des proprits dans la mme entit (avec des noms diffrents) ou dans des entits distinctes :

PRODUIT
prix1 prix2

PRODUIT
1,n cote prix

TARIF
code-tarif libell-tarif

CLIENT
code-client nom-client

PROSPECT
code-prospect nom-prospect

CONTACT
code-contact nom-contact type (Cli, Pro)

Pas dhritage dans le modle E/A de base !

Toutes les proprits identifies doivent apparatre dans le modle.

2. Rgles sur les entits


2.a Rgle de lidentifiant Toutes les entits ont un identifiant. 2.b Rgle de vrification des entits Pour une occurrence dune entit, chaque proprit ne prend quune seule valeur (cf. la 1FN du modle relationnel); MONO-VALUEE
Employ
Matricule Nom Prnom-enf

Employ
Matricule Nom

Enfant
Matricule Prnom-enf

On dcompose l'entit Employ en deux entits : Employ, et Enfant

2.c Rgles de normalisation des entits


a) Les dpendances fonctionnelles (DF) entre les proprits dune entit doivent vrifier la rgle suivante : toutes les proprits de lentit dpendent fonctionnellement de lidentifiant et uniquement de lidentifiant. Rappel : une DF XY si une valeur de X correspond une et une seule valeur de Y (rciproque pas vraie).
Voiture
Nimmatric. Type N pers Nom Adresse

Voiture
Nimmatric. Type

Propritaire
N pers Nom Adresse

La DF: Npers Nom, Adresse contredit la rgle.

b) Une partie de lidentifiant ne peut pas dterminer certaines proprits.


Commande
Ncomm Nprod Qt DateComm Nclient

Commande
Ncomm DateCom NClient

LigneCom
N comm Nprod Qt

0,n

1,1

La DF n-comm date-comm, n-client contredit la rgle. On dcompose lentit Commande en deux entits. Ces rgles correspondent aux 2FN et 3FN du modle Relationnel (dpendance pleine et directe des cls).

3. Rgles sur les associations


3.a Rgle de vrification des associations Pour une occurrence dassociation, chaque proprit ne prend quune seule valeur. 3.b Rgle de normalisation sur les proprits des associations Toutes les proprits de lassociation doivent dpendre fonctionnellement de tous les identifiants des entits portant lassociation, et uniquement deux.
Voiture
Nimmatr autoris Date-aut Date-permis

Personne
Npers

N-pers Date-permis pose problme (donc dplacer Date-permis vers Personne)

3.c La dcomposition des associations n-aires Il faut garder un minimum dassociations darit > 2. Si on observe une DF entre deux identifiants, on peut dcomposer lassociation n-aire.
Prof
Nprof Nom 0,n cours 0,n

Matire
Nmat

salle, heure 0,n

Classe
Nclasse

Une ventuelle DF Nprof Nmat (c..d. si un prof enseigne une seule matire) conduit la dcomposition :

Prof
Nprof Nom

1,1 assure

1,n

Matire
Nmat

0,n

cours salle, heure 0,n

Classe
Nclasse

Cest le cas, quand une patte a une cardinalit 1,1. Par exemple 1 contrat est associ un client et un local :
Client
Client 0,n
location 1,1 0,n

Local
0,n porte-sur 1,1

Local

0,n concerne 1,1

Contrat

Contrat

3.d La suppression des associations transitives Toute association pouvant tre obtenue par transitivit de n autres associations peut tre supprime. La transitivit svalue en fonction de la signification des associations.
Facture 1,1 concerne 1,n Commande 1,1 1,1 associe_a 1,n obtenue_par

1,n Reprsentant

On supprime l'association associe_a, car elle peut tre obtenue par transitivit sur les associations concerne et obtenue_par

c) Quelques contraintes dintgrit importantes


Les CI dfinissent des proprits qui doivent tre vrifies par les donnes de la base. 1. Contraintes intgres au modle E/A 1.a Contrainte didentifiant Les valeurs prises par lidentifiant sont uniques (dans le temps) et toujours dfinies. Ex : identifiant de lentit PERSONNE
nom + prnom pas suffisant n tlphone pas stable dans le temps nSS rglement (autorisation de la CNIL car danger de rapprochement de fichiers)

1.b Contraintes de cardinalit Les cardinalits portes par les entits membres dassociation imposent des nombres minis et maxis doccurrence dans lassociation.

Station NomStat

0,n

a lieu

1,1 Comptition
RefCompet

Une cardinalit mini de 1 rend lexistence dune occurrence dentit dpendante de lexistence dune occurrence dune autre entit.

Une comptition ne peut exister que si la station o elle se droule existe. Une station peut exister de manire indpendante de toute comptition.

2. Contraintes extensions du modle E/A

Exemple : contraintes de participation des entits aux associations.


2.a Exclusivit de participation dune entit plusieurs associations Si lentit E participe lassociation A1, elle ne peut participer lassociation A2.
1,n
acheter 0,n Fournisseur

Article
0,1

X trouver 1,n Stock

Un Article est soit achet auprs dun fournisseur, soit figure dans le Stock

2.b Inclusion de participation dune entit plusieurs associations La participation d'une entit E une association A1 implique sa participation l'association A2.
souscrit 0,n

Client

1,1

Abonnement I

emprunte 0,n

0,1

Ouvrage

La participation de client dans lassociation emprunte implique sa participation l'association souscrit.

2.c Exclusion de participation entre associations Il y a exclusion de participation entre associations si la participation des entits l'association A1 exclut leur participation l'association A2.
0,n disponible 0,n

Datejour

Personne

X
0,n en formation 0,n

Une personne une mme date ne peut pas figurer simultanment dans les deux associations: disponible et en formation.

2.d Inclusion de participation entre associations Il y a inclusion de participation entre associations si la participation des entits l'association A1 implique leur participation l'association A2.
Commandes
1,n
ligneCde 0,n

Produits

I
0,n ligneLiv 0,n

Tout couple commandes, produits figurant dans l'association ligneLiv doit figurer dans l'association ligneCde Le problme va tre de vrifier toutes ces contraintes dans les programmes qui mettent jour les donnes !

Vous aimerez peut-être aussi