Vous êtes sur la page 1sur 10

Systmes dinformation 10.

Modle logique des donnes

Chapitre 10
Modle logique des donnes
Passage du MCD au MLD
Nous allons dfinir les rgles de transformation pour le passage du MCD au MLD, en respectant les
diffrents cas qui se posent.
Lobjet (L'entit)
Tout objet est transform en table. Les proprits de l'objet deviennent les attributs de la table.
L'identifiant de l'objet devient la cl primaire de la table.
Exemple:
Objet Entreprise

Table Entreprise

Entreprise

ENTREPRISE

No_Entreprise

NO_ENTREPRISE

Nom

NOM

Adresse

ADRESSE

Code_postal

CODE_POSTAL

Localit

LOCALITE

Relation binaire aux cardinalits (x,n) - (x,1)


Afin de reprsenter la relation, on duplique la cl primaire de la table base sur l'objet cardinalit
(x,n) dans la table base sur l'objet cardinalit (x,1). Cet attribut est appel cl trangre. Les deux
tables sont lies par une flche nomme selon la relation, qui pointe de la table cl trangre vers
la table qui contient la cl primaire correspondante.
Exemple:
Auteur
NoAuteur
Nom

A
N

Ecrit

(0,n)

(1,1)

UTEUR

A UTEUR
N OM

Livre
NoLivre
Nom

Ecrit

N
N

IVRE

L IVRE
A UTEUR
N OM

L'attribut NoAuteur qui est cl primaire de la table Auteur, devient cl trangre dans la table Livre.
Lorsque la relation contient elle-mme des proprits, celles-ci deviennent galement attributs
de la table base sur lobjet cardinalit (x,1).
Exemple:

10.1

Systmes dinformation 10. Modle logique des donnes

Voiture

Personne
NoPersonne
Nom
Adresse

ERSONNE

Possde
(0,n)

ERSONNE
N OM
DRESSE

NoVoiture
Marque

(1,1)

Date_acht

Possde

N
D

OITURE

OITURE
ERSONNE
ARQUE
ATE _ ACHT

P
M

Relation binaire aux cardinalits (x,1) - (x,1)


Nous devons distinguer plusieurs cas. Sachant qu'une relation binaire du type (1,1)-(1,1) ne doit pas
exister il nous reste les 2 cas suivants:
Relation binaire (0,1)-(1,1)
On duplique la cl de la table base sur l'objet cardinalit (0,1) dans la table base sur l'objet
cardinalit (1,1).
Exemple:
Carte_membre

Client
NoClient
Nom
Prnom
Adresse
Code_Postal
Localit

dispose

0,1

NoCarte
Type_abonnement
Date_cration

1,1

LIENT

N O C LIENT
N OM
P RNOM
A DRESSE
C ODE _P OSTAL
L OCALIT

ARTE

MEMBRE

N O C ARTE
N O C LIENT
T YPE _ ABONNEMENT
D ATE _ CRATION

dispose

Le NoClient, qui est cl primaire de la table Client, devient cl trangre dans la table
CarteMembre.
Relation binaire (0,1)-(0,1)
On duplique la cl d'une des tables dans l'autre. Lorsque la relation contient elle-mme des
proprits, celles-ci deviennent galement attributs de la table dans laquelle a t ajoute la
cl trangre.
Exemple:
Entreprise

Salari
NoSalari
Nom
Prnom

0,1

Assure

0,1

NoEntreprise
Nom
Adresse_Sige

Soit on migre la cl primaire de la table Entreprise dans la table Salari, soit on fait l'inverse.

10.2

Systmes dinformation 10. Modle logique des donnes

ALARI

N O S ALARI
N OM
P RNOM
N

NOE

Assure

ou

NTREPRISE
NTREPRISE
N OM

DRESSE

_S

N O S ALARI
N OM
P RNOM

IGE

OENTREPRISE

E NTREPRISE

S ALARI
Assure

N O E NTREPRISE
N OM
A DRESSE
_S IGE
N O S ALARI

Relation binaire aux cardinalits (x,n) - (x,n)


On cre une table supplmentaire ayant comme cl primaire une cl compose des identifiants des 2
objets. Lorsque la relation contient elle-mme des proprits, celles-ci deviennent attributs de la
table supplmentaire.
Exemple:
Commande
NoCommande
Date

OMMANDE

Contenir
Quantit

1,n

OMMANDE
D ATE

Article
Code_Article
Libell
Prix_Unaire

0,n

_C OMMANDE
N O C OMMANDE
C ODE _A RTICLE
Q UANTIT

IGNE

A RTICLE
Code_Article
Libell
Prix_Unaire

On cre une table Porter, qui contient comme cl primaire une cl compose de NoCommande et
CodeArticle. Elle contient galement la proprit Quantit issue de la relation.
Relation ternaire
On cre une table supplmentaire ayant comme cl primaire une cl compose des identifiants de
tous les objets relis la relation. Cette rgle s'applique de faon indpendante des diffrentes
cardinalits. Lorsque la relation contient elle-mme des proprits, celles-ci deviennent attributs de
la table supplmentaire.
Exemple:
Enseignant
NoEnseignant
Nom
Prnom
Date_de_naissance

1,n

Enseigne

0,n

1,n

Classe
Nom_Classe
Cycle

10.3

Matire
Code_Matire
Libell

Systmes dinformation 10. Modle logique des donnes

N
D

NSEIGNANT

ATE

NSEIGNE

NoEnseignant
Code_Matire
Nom_Classe

NSEIGNANT
N OM
P RNOM
_ DE _ NAISSANCE

C
N

ATIRE

IBELL

_M

ATIRE

LASSE

_C

OM

M
ODE

LASSE

YCLE

La table Enseigner contient une cl compose de NoEnseignant, CodeMatire et NomClasse.

Cas spciaux
Plusieurs relations entre 2 objets
Les rgles gnrales s'appliquent
Exemple:
Possde
Personne
NoPresonne
Nom
Prnom

ERSONNE

1,1

Maison
Adresse
Code_postal
Localit

1,n

0,n

Habite

0,n

P OSSESSION
N O P ERSONNE
A DRESSE

RESONNE
N OM
P RNOM
A DRESSE

A
C

ODE

AISON

DRESSE
_ POSTAL
OCALIT

La relation habiter du type (1,1)-(1,n), est traduite par la migration de l'attribut Adresse dans la table
Personne. La relation possder du type (0,n)-(1,n) est traduite par la cration d'une table
supplmentaire du mme nom. Cette table contient comme cl primaire compose, les cls des deux
tables relies Personne et Maison. On a donc simplement appliqu 2 fois de faon indpendante les
rgles de transfert MCD MLD.
Relations rflexives
Nous appliquons les rgles gnrales avec la seule diffrence que la relation est 2 fois relie au
mme objet
Exemple 1:

10.4

Systmes dinformation 10. Modle logique des donnes

0,n
mre

Socit

Detient

NoSocit
Nom
Capital

OCIT

N O S OCIT
N O S OCIT
_ MRE
P OURCENTAGE
_ DE _ CAPITAL

N O S OCIT
N OM
C APITAL

Pourcentage_de_capital

ETENIR

0,n
filire

Comme il s'agit d'une relation (0,n)-(0,n), une table supplmentaire est cre. Cette table contient
comme cl primaire compose, la cl des "deux" objets relis. Comme le mme objet est li 2 fois
la relation, on ne peut pas utiliser 2 fois le mme nom pour la cl. Dans ce cas il convient d'utiliser
des rles dans le MCD, et d'intgrer le rle dans le nom d'une des cls migres dans le MLD.
Exemple 2:

0,1
poux

P
Etre_mari

Personne

ERSONNE

NoMatricule
Nom
Prnom

tre mari

O M ATRICULE
ATRICULE
_E POUSE
N OM
P RNOM

0,1
pouse

Comme il s'agit d'une relation (0,1)-(0,1), nous avons en gnral le choix en ce qui concerne quel
objet contiendra la cl trangre. Comme cette relation est lie deux fois au mme objet, il est
vident que nous devons dupliquer la cl primaire, tout en veillant que le mme nom de cl ne sera
pas utilis pour la cl primaire et la cl trangre. Dans notre exemple, tous les hommes maris, ont
comme valeur de la cl trangre la matricule de leur pouse actuelle. Pour les hommes non maris
et les femmes, la cl trangre est sans valeur. On pourrait bien sr utiliser la modlisation inverse
avec une cl trangre NO_MATRICULE_MARI, qui indique pour chaque femme marie, la
matricule de son mari.
L'identifiant relatif
Sachant que l'objet dpendant est toujours li la relation par les cardinalits (1,1), nous pouvons
appliquer les rgles gnrales. Dans chaque cas, la table issue de l'objet dpendant contient donc
comme cl trangre, la cl primaire de l'autre table.
L'identification relative est reprsente par le fait que la table issue de l'objet dpendant contient une
cl primaire compose, constitue de la cl primaire transforme de l'identifiant de cet objet et de la
cl trangre.
Exemple:

10.5

Systmes dinformation 10. Modle logique des donnes

Btiment
Adresse
Code_Postal
Localit

0,n

Se trouve
dans

Apartement
NoApartement
Etage
Surface

1,1

TIMENT

DRESSE

ODE

_P

PARTEMENT

A DRESSE
N O A PARTEMENT
E TAGE
S URFACE

OSTAL

L OCALIT

Tout en respectant les rgles gnrales du passage MCD MLD, la cl primaire de la table Projet
migre comme cl trangre dans la table Tche. L'identification relative est reprsente par le fait
que la table tche contient une cl primaire compose de NoTache et NoProjet.
Historisation d'une proprit
Pour chaque proprit historiser, on cre une table qui contient:
Une cl primaire compose de la cl primaire de la table qui contient la proprit historiser et
de la date d'historisation.
La proprit historiser
Exemple:
A SSUR
A SSUR

Assur

N O A SSUR
N OM
P RNOM
A DRESSE
C ODE _ POSTAL
L OCALIT

NoAssur
Nom
Prnom
Adresse*
Code_postal*
Localit*

_A DRESSE

N O A SSUR
D ATE _H ISTOIRE
A SSUR
_A DRESSE
A SSUR

_P OSTAL

N O A SSUR
D ATE _H ISTOIRE
A SSUR
_P OSTAL
A SSUR

_L OCALIT

N O A SSUR
D ATE _H ISTOIRE
A SSUR
_L OCALIT

Historisation d'un objet


Pour toute modification de valeur d'une des proprits de lobjet, on historise l'ensemble des valeurs
des proprits dans une table qui contient:
Une cl primaire compose de la cl primaire de l'objet historiser et de la date d'historisation
Toutes les autres proprits de l'objet historiser
Exemple:
Assur
NoAssur
Nom
Prnom
Adresse*
Code_postal*
Localit*

A SSUR

A SSUR

N O A SSUR
N OM
P RNOM
A DRESSE
C ODE _ POSTAL
L OCALIT

N O A SSUR
D ATE _H ISTOIRE
N OM
P RNOM
A DRESSE
C ODE _ POSTAL
L OCALIT

Historisation d'une relation


Pour toute modification de valeur d'une des proprits de la relation, on historise l'ensemble des
valeurs des proprits dans une table qui contient:
10.6

Systmes dinformation 10. Modle logique des donnes

Une cl primaire compose de la cl primaire de la table qui reprsente la relation historiser et


de la date d'historisation
Toutes les autres proprits de la relation historiser
Exemple:
Personne
NoPersonne
Nom
Adresse

ERSONNE

P
A

Louer
Montant_louer

0,n

Logement
NoLogement
Adresse

0,n

OUER

N
N

ERSONNE
N OM
DRESSE

O P ERSONNE
O L OGEMENT
ONTANT
_ LOUER

OGEMENT

ISTOIRE

_L

OGEMENT
DRESSE

OUER

N
N

O P ERSONNE
O L OGEMENT
D ATE _H ISTOIRE
M ONTANT
_ LOUER

Exercice KaafKaaf
Transformez le MCD suivant, qui reprsente la facturation de la socit KaafKaaf en un MLD en
respectant toutes les rgles du passage MCD MLD.
Client
NoClient
Nom
Prnom
Adresse
Code_Postal
Localit

1,n

Obtenir

1,1

Article

Facture
NoFacture
Date_Facture

Porter
Quantit

1,n

0,n

NoArticle
Libell
Prix_Unitaire

Voici une solution:


C

LIENT

N O C LIENT
N OM
P RNOM
A DRESSE
C ODE _P OSTAL
L OCALIT

ACTURE

N O F ACTURE
N O C LIENT
D ATE _F ACTURE

ORTER

N O F ACTURE
N O A RTICLE
Q UANTIT

RTICLE

N O A RTICLE
L IBELL
P RIX _U NITAIRE

Exercice Gestion d'cole


Transformez le MCD suivant, qui reprsente la gestion d'une cole en un MLD en respectant
toutes les rgles du passage MCD MLD.

10.7

Systmes dinformation 10. Modle logique des donnes

Elve
NoMatricule
Nom
Prnom
Date_naissance

1,n

Frquenter
Anne_scolaire

1,n

Classe
Nom_Classe
Cycle
1,n

Matire
Code_Matire
Libell

Enseigner
0,n

Anne
0,n

Professeur
Code_Prof
Nom
prnom

Voici une solution:


E
N
D

LVE

MATRICULE
N OM
P RNOM
ATE _ NAISSANCE

RQUENTER

N O M ATRICULE
N OM _C LASSE
A NNE _ SCOLAIRE

LASSE

_C

OM

ATIRE

Code_Matire
Libell

LASSE

YCLE

NSEIGNER

N OM _C LASSE
C ODE _P ROF
C ODE _M ATIRE
A NNE

ROFESSEUR

ODE

_P

ROF

OM
PRNOM

Exercices
Exercice 1
Transformez le MCD suivant en MLD en respectant toutes les rgles de passage MCD MLD.

10.8

Systmes dinformation 10. Modle logique des donnes

diriger
Salari
0,1

NoSalari
Nom
Prnom
Adresse
Code_postal
Localit

Entreprise

1,1

employer

1,n

NoEtreprise
Nom
Adresse_Sige
Code_postal_Sige
Localit_Sige

1,n

Date_Entre
Date_Sortir
Fonction

1,1

tre_attest
0,n
remplaant

1,n
0,n

Mdecin
Consulter
Date

remplacer

NoMdecin
Nom
Prnom
Adresse
Code_postal
Localit

0,n

1,n

Raport_mdical
NoRapport
Conclusion_mdicale
Conclusion_professionnelle

Date_Dbut
Date_Fin

0,n
remplac

Remarques:
En ce qui concerne le rapport mdical, une conclusion mdicale pourrait par exemple tre
Infection ou Cancer de la gorge, tandis que la conclusion professionnelle qui s'en suit serait
par exemple Apte ou Inaptitude temporaire <x> jours.
L'objet Salari est historise.
Exercice 2
Voici un MCD qui reprsente de faon trs simplifie la gestion d'une compagnie d'assurances.
Transformez le MCD en MLD en respectant toutes les rgles de passage MCD MLD.

10.9

Systmes dinformation 10. Modle logique des donnes

Client

Contrat

NoClient
Nom
Prnom
Adresse(H)
Code_Postal(H)
Localit(H)

Conclure

1,n

1,1

0,n

Concerne

Type_de_contrat

Caractriser

NoContrat
Date_Souscription
Echance

Code_type
Libell

0,n

1,1

1,1

1,n

Couvrir

prvoir

1,1
1,n

0,n

Dossier_auxilier
NoDossier
Date_ouverture
Date_fermture
Rserve_financire
Paiements_fectifs

Garantie
Code_garantie
Libell
Tarif

Risque
NoRisque
Dsignation
Information_suplmentaire

0,n

lancer

1,1 (R)

Intervention_Inspecteur
NoIntervention
Date

1,1

effectuer

0,n

Inspecteur
Code_Ispecteur
Nom
Prnom
Tel_Bureau
Tel_Maison

Remarques:

Le type de contrat indique les garanties prvues.


Exemple: Type AUTO-SIMPLE contient (RC-AUTO et Protection juridique)
Type AUTO-SPECIAL contient (Garanties AUTO-SIMPLE + FEU + VOL)
Type AUTO-DELUXE contient (Garanties AUTO-SPECIAL + Dgts matriels)
Un contrat couvre un seul risque. Ce risque peut tre une voiture ou une habitation.
Certaines informations concernant les clients sont historises.

10.10