Vous êtes sur la page 1sur 10

Mthode MERISE : Niveau Conceptuel

Rponse la question : QUOI ?

COURS DE BASES DE DONNEES

Quest ce quon va grer comme


donnes, comment sont elles
organises

Modle Conceptuel de Donnes


MCD

Quest ce quon va raliser comme


traitement

Modle Conceptuel de Traitements


MCT

Luc Bouganim
La dfinition smantique des
donnes permet lapprhension
complte des informations

Mthode MERISE : Niveau Logique


Rponse la question : QUI ? QUAND ? OU ?
Description du systme,
indpendamment du logiciel SGBD
Passage automatique au modle
relationnel
Modle Logique de Donnes
MLD

Description indpendante de la
machine
Structuration en procdure

Modle Logique de Traitements


MLT

Validation et Optimisation du MLD par rapport aux traitements

La reconnaissance des traitements


fondamentaux met en vidence les
objectifs du systme

Mthode MERISE : Niveau Physique


Rponse la question : COMMENT ?, AVEC QUOI

Description interne des donnes en


fonction du logiciel SGBD
Dfinition des contraintes,
structures daccs, etc..

Modle Physique de Donnes


MPD

Description de larchitecture des


traitements
Spcifications dtailles de la
programmation (Algorithmes)

Modle Physique de Traitements


MPT

Notre dmarche

Dfinitions

1/ Dfinir lapplication (~MCT)

Entit : Objet pourvue dune existence propre

Que veut-on faire exactement


Dfinir les sorties

Client, Fournisseur, Produit sont des entits.

Association :Relation entre entits, dpourvue dexistence propre.

2/ Dfinir les donnes (~MCD)

Enseigne est une association entre lentit Prof et lentit Cours

quelles sont les donnes ncessaires ?


Comment organiser les donnes ?

Proprit : Plus petit lment dinformation caractrisant


partiellement une entit ou une association.

3/ Dfinir les requtes ncessaires pour lapplication (~MLT)


4/ Validation
Est ce que la structure choisie permet de rpondre aux requtes ?
retour en 1/ ou 2/

Nom, Code, Quantit, etc... sont des proprits

Occurrence : Valeur dune proprit, dune entit ou dune


association
Toto est une occurrence de la proprit Nom
Dupont louis 23 rue Mirbel est une occurrence de lentit Prof
Dupont 2h Math est une occurrence de lassociation Enseigne

5/ Dfinir le MLD, vrifier 4/ puis dfinir le MPD

Exemple : Profs et cours...

Exemple : Profs et cours...


Cours

Profs
Nom
Prnom
Adresse

Enseigne
NbreHeures

Profs
Crenn

Cours
NomCours
Description

Isabelle
....
Profs
Lewis
Jerry
....

Profs
Bouganim

Enseigne
9
Enseigne
5
Enseigne
26

Luc

Enseigne

.....

20

Profs
Ohana

17

Enseigne

Yollande
...

Math
.....
Cours
Info
...
Cours
Anglais
....

Cardinalits

Notre problme : Grer les notes des tudiants

Nombre minimum et maximum doccurrences dune association


pour une occurrence dentit
Elles sont indiqus sur chaque arc
Profs
Nom

0,1

Prnom

Enseigne
NbreHeures

0,1

Cours
NomCours
Description

Adresse

Profs
Nom

0,1

Prnom

Enseigne
NbreHeures

Cours

1,3

NomCours
Description

Adresse

Dtailler le problme : Que veut dire grer les notes


Que veut on faire ?

tablir les bulletins semestriels ?


tablir des bulletins provisoires ?
tablir des moyennes ?
Faire des statistiques sur plusieurs annes ?
Evaluer les notes en fonction des profs...

Premier brouillon des donnes grer...


Notes, tudiants, Cours...
Profs
Nom
Prnom

0,n

Enseigne
NbreHeures

1,n

Cours
NomCours
Description

Adresse

Profs
Nom
Prnom

1,n

Enseigne
NbreHeures

1,1

Cours
NomCours
Description

Adresse

Identifiant
Pour une entit, cest une (ou plusieurs) proprit(s) qui
dfinissent chaque occurrence de lentit
Permet de sassurer que cest une entit (et non une association).
exemples : prof, enseigne, ...

Plusieurs identifiants peuvent co-exister.


exemples : nom du prof, n de scu, code...

Pour une association, lidentifiant nexiste pas vraiment.


On dfini l identifiant dune association, comme la
concatnation des identifiants des entits associes.
exemple : pour enseigne : nom du prof, nom du cours.

Comment produire le MCD ?


Enoncer le rel avec des phrases.
Exemple pour la gestion de rendez vous (hpital)
Les patients ont des rendez vous avec des mdecins
Un patient peut avoir plusieurs RDV (voire aucun)
Un mdecin reoit plusieurs patients (voire aucun)
Patient

0,n

a un rdv

0,n

Mdecin

Un mdecin exerce dans une salle


Un mdecin nexerce que dans une seule salle
Une salle peut tre partage par plusieurs mdecins
Mdecin

1,1

Exerce

1,n

Salle

Patient

0,n

a un rdv

0,n

Mdecin

1,1

Exerce

O s'arrter ??

Salle

1,n

Pour connatre la salle, pour un rendez vous, on passe par le


mdecin....
Et si maintenant le mdecin peut exercer dans plusieurs salles ?
Patient

0,n

a un rdv

0,n

Mdecin

1,n

Exerce

Salle

1,n

Ne faire des entits que si elles ont une utilit

Comment connatre la salle dun rendez vous ??


Patient

0,n

a un rdv

0,n

Mdecin

Patient

0,n

a un rdv

0,n

Mdecin
1,n

1,n

Un tudiant obtient des notes des cours


Un tudiant habite dans une ville
Un tudiant a eu un bac dun certain type
Les tudiants sont regroups en sous groupes
Les sous groupes sont regroups en groupes
Les groupes sont regroups en promotions

OU

Salle

il y a plus dune proprits dans lentit


les entits sont lies dautres entits

Exerce

1,n

Dpend de lobjectif de la base de donnes et de lapplication

Salle

Verification du modle : (1) Identifiant

(2) Proprit rptitive ou sans signification

Une occurrence dentit peut tre identifi (sans ambiguit) grce


loccurrence dune proprit....c.a.d il existe un identifiant
Il faut vrifier que cet identifiant a bien t choisi

Pour une occurrence dentit, il ne peut y avoir quune occurrence


de chaque proprit de lentit

nom et prnom de ltudiant peut tre lidentifiant de ltudiant,


mais a peut ne pas tre suffisant....

Remarque importante
il ne faut pas concevoir le MCD en observant les donnes telles
quelles sont - par exemple lIUT tel quil est.
il faut concevoir le MCD pour le cas gnral (qui est le cas restreint
de lapplication quon se fixe) - lIUT tel quil peut tre.... et tel que
lon se prpose de le grer....

exemple: Cours ne peut tre une proprit de Prof, puisquun prof


enseigne plusieurs cours...
Remarque : Si un prof ne peut enseigner quun seul cours, cours
peut tre une proprit de prof

Une proprit ne peut tre sans signification pour une partie des
entits
exemple : si un prof ne peut enseigner quun seul cours, mais quon
a choisi de crer une entit personnel et non prof, on ne stockera
pas le cours dans lentit personnel car il serait sans signification
pour une secrtaire...
contre exemple : Tlphone et Fax pour un tudiant...

(3) Dpendance pleine des entits

(4) Respect des rgles de gestion

Les propits dune association doivent dpendre de la totalit


des entits associes. Si certaines proprits ne dpendent que
dun sous ensemble des entits, on devra
les rattacher une des entits
crer une nouvelle association associant ce sous ensemble

par exemple, lIUT:

Exemple:
1/ Un prof enseigne toujours dans la mme salle
2/ La salle dpend du prof et du cours
enseigne
Prof

Heure
Salle

Il faut vrifier que le MCD correspond bien au rel, cest dire


aux rgles fixes (celles que lapplication doit respecter)

Groupe

un prof enseigne plusieurs courss (Mme Maadani)


une matire est enseigne par plusieurs profs (info/anglais)
les notes peuvent tre donnes par nimporte quel prof ou par
plusieurs profs enseignant une matire... (info par exemple)
On peut redoubler une fois....
etc...

Cours

Les formes normales


Les formes normales sont des rgles que lon doit suivre pour
viter davoir des redondances dans notre base de donnes.
La redondance entrane une perte de place
des risques dincohrences
des difficults de mise jour

Premire forme normale


Toute proprit doit tre lmentaire.
Sinon, on introduit une complexit de traitement
Proprits lmentaires : Age, Salaire, N de rue
Proprits non-lmentaires : Adresse (complete), NSS

Attention, la notion dlmentaire dpend de lapplication.


Il existe 5 formes normales, de plus en plus complexes, de moins
en moins utiles...
Nous verrons les 3 premires (dj bien compliques)

Ladresse peut devenir lmentaire si elle est toujours manipul


comme tel (on ne cherchera jamais a faire un tri par ville)

Il nest pas gnant dclater des proprits qui devrait tre


groups, mais on ne peut grouper des proprits qui devrait tre
clates

Deuxime forme normale

Troisime forme normale

Toute proprit doit dpendre pleinement de lidentifiant (et non


dune partie de celui-ci)
sinon on introduit des redondances.

Exemple: lassociation enseigne possde comme identifiant


nomprof, nomcours, nomgroupe
1/ la salle ne dpend que du prof donc dune partie de lidentifiant
2/ la salle ne dpend que du prof et du cours....

Cette rgle rejoint la rgle 2 de vrification...


Prof

enseign
e
Heure
Salle

Groupe

Pas de dpendance transitive..


Une proprit ne peut dpendre dune autre proprit qui ne soit
pas lidentifiant.
Exemple :
Etudiant(nom, adresse, ville, pays)
Le pays dpend de la ville or lidentifiant dtudiant est le nom.
Nom
Jim
Jack
Joe
Jerry

Adresse
....
....
....
....

Ville
Paris
Paris
Mantes
Paris

Pays
France
France
France
France

Nom
Jim
Jack
Joe
Jerry

Adresse
....
....
....
....

Ville
Paris
Paris
Mantes
Paris

Ville
Mantes
Paris

Pays
France
France

Cours

Passage au niveau logique


Le modle conceptuel est un compromis entre la flexibilit de la
langue courante et la rigueur ncessaire dun traitement informatis.
Le niveau logique est une tape de plus vers cette informatisation
Utilisation du formalisme du modle relationnel :

Tables (ou relations)


attributs
domaine
clefs
contrainte dintgrit rfrentielles (relations entre tables)

Proprits, Entits
Rgle 1 : Chaque proprit devient un attribut.
Rgle 2 : Chaque entit devient une table et son identifiant
devient sa clef primaire
Rgle 3 : Une association liant plus de deux entits devient une
table dont la clef primaire est lensemble des clefs des entits
associes

Simplification du schma de la base


Des rgles trop strictes entrane des schmas trop complexes
On tolre un peu de redondances ou quelques valeurs nulles....

Rajout de mthodes daccs (index)


pour acclerer les traitements

Rgle 4 : Une association liant deux entits peut :


tre absorb par lune ou lautre des entit
devenir une table.

Cas 1
Profs

Enseigne

1,1

Nom

NbreHeures

Prnom

1,1

Un prof enseigne un et un seul


cours

Cours
NomCours
Description

Un cours est enseign par un et un


seul prof

Adresse

Nom
Bouganim
Crenn
Rousseau

Solution 1

Prnom
Luc
Isabelle
Martine

Solution 2
Nom
Bouganim
Crenn
Rousseau

Adresse
Paris
Paris
Versailles

Nom
Bouganim
Crenn
Rousseau

Prnom
Luc
Isabelle
M artine

Cas 2

NomCours
Info
Math
Droit

NomCours
Info
Math
Droit

Description
Informatique
Mathmatiques
Droit

NbreHeures
44
78
26

Nbreheures
44
78
26

Enseigne

1,1

Nom

NbreHeures

Prnom

0,1

Cours
NomCours
Description

Adresse

Nom
Bouganim
Crenn

Solution 1

Prnom
Luc
Isabelle

Adresse
Paris
Paris

Description
Informatique
M athmatiques
Droit

Nom
Bouganim
Crenn

Prnom
Luc
Isabelle

Adresse
Paris
Paris

NomCours
Info
Math

Cas 3
Profs

Enseigne

0,1

Nom

NbreHeures

Prnom

1,1

Cours
NomCours
Description

Adresse

Solution 1

Nom
Bouganim
Crenn
Rousseau

Prnom
Luc
Isabelle
Martine

Adresse
Paris
Paris
Versailles

Un cours est enseign par un et


un seul prof
Description
Informatique
Mathmatiques

NbreHeures
44
78

Solution 2
Nom
Bouganim
Crenn
Rousseau

Prnom
Luc
Isabelle
Martine

Profs

0,1

Nom
Prnom

Enseigne
NbreHeures

Nom
Bouganim
Crenn

NomCours
Info
Math
Droit

Description
Informatique
Mathmatiques
Droit

NbreHeures
44
78

NomCours
Info
Math

Description
NbreHeures
Informatique
44
Mathmatiques 78

0,1

Cours
NomCours
Description

Adresse

Solution 1

Nom
Bouganim
Crenn

Solution 2
Adresse
Paris
Paris
Versailles

Un cours est enseign par un prof


ou nest pas enseign
NbreHeures
44
78

NomCours
Info
M ath
Droit

Description
Informatique
M athm atiques
Droit

Cas 4

Un prof enseigne un cours ou


aucun

NomCours
Info
Math

Un prof enseigne un et un seul


cours

Solution 2
NomCours
Info
M ath
Droit

Adresse
Paris
Paris
Versailles

Profs

Nom
Bouganim
Crenn

Prnom
Luc
Isabelle

Prnom
Luc
Isabelle

Adresse
Paris
Paris

Nom
Bouganim

Adresse
Paris
Paris

Un prof enseigne un cours ou


aucun
Un cours est enseign par un prof
ou nest pas enseign
NomCours
Info

Description
Informatique

Droit

Droit

NomCours
Info

NbreHeures
44

Nbre Heures
44

NomCours
Info
Droit

Description
Informatique
Droit

Cas 5
Profs

Enseigne

1,1

Nom

NbreHeures

Prnom

1,n

Un prof enseigne un et un seul


cours

Cours
NomCours
Description

Un cours est enseign par un ou


plusieurs profs

Adresse

Nom
Bouganim
Crenn
Rousseau

Solution 1

Prnom
Luc
Isabelle
Martine

Cas 6

Adresse
Paris
Paris
Versailles

NomCours
Info
Info
Droit

Description
Informatique
Informatique
Droit

NbreHeures
20
24
26

Solution 2
Nom
Bouganim
Crenn
Rousseau

Profs

Enseigne

1,n

Nom

NbreHeures

Prnom

1,1

Cours
NomCours
Description

Adresse

Solution 1

Nom
Bouganim
Crenn
Crenn

Prnom
Luc
Isabelle
Isabelle

Adresse
Paris
Paris
Paris

Adresse
Paris
Paris
Versailles

NomCours
Info
Info
Droit

NbreHeures
20
24
26

NomCours
Info
Droit

Description
Inform atique
Droit

N om
B ouganim
C renn

Prnom
Luc
Isabelle

NomCours
Info
Math
Droit

Nom
Bouganim
Crenn
Crenn

Adresse
Paris
Paris

Cas 7
Profs

1,n

Prnom

Enseigne
NbreHeures

1,n

Cours
NomCours
Description

Adresse

Solution 1

Nom
Bouganim
Crenn
Crenn

Prnom
Luc
Isabelle

Prnom
Luc
Isabelle
Isabelle

Adresse
Paris
Paris
Paris

Nom
Bouganim
Crenn
Crenn

Solution 2
N om
B ouganim
C renn

Un cours est enseign par un et un


seul prof
Description
Informatique
Mathmatique
Droit

NbreHeures
20
48
26

Solution 2

Prnom
Luc
Isabelle
Martine

Nom

Un prof enseigne un ou plusieurs


cours

Adresse
Paris
Paris

Description
Informatique
Mathmatique
Droit

NbreHeures
20
48
26

Cas 8

Un prof enseigne un ou plusieurs


cours

Prof

1,n

Un cours est enseign par un ou


plusieurs profs
NomCours
Info
Info
Droit

NomCours
Info
Info
Droit

NomCours
Info
Math
Droit

Description
Informatique
Informatique
Droit

enseigne
Heure
Salle

Groupe

1,n

NbreHeures
22
26
34

Cours

Nom
Bouganim
Crenn
Crenn
Bouganim

Nbreheures
22
26
34
N om C ours D escription
Info
Inform atique
D roit
D roit

1,n

Nom
Bouganim
Crenn

Prnom
Luc
Isabelle

Adresse
Paris
Paris

NomCours
Info
Math
Info
Info

Groupe
2.1
2.1
2.2
2.1

N om C ours D escription
Info
Inform atique
M ath
M athm atique

heure
10h
12h
17h
14h

Salle
A1
A3
A1
A2

Groupe
2.1
2.2

Option
Finance
Comptabilit

Responsable
Guter Paul
Bourdin Jean

Passage au modle relationnel - Conclusion


Objectifs
Ne pas crer de tables inutiles
Ne pas dgrader le modle conceptuel (pas de proprit rptitive ni
sans signification)

Passage au niveau physique


Instructions pour la cration de la base de donnes dans le langage
du systme cible
Pour ACCESS, cela est souvent fait via linterface (cf TP) de
cration/modification de tables (voire avec les assistants)
Il est cependant possible dutiliser la partie Langage de Description
de Donnes (LDD) de SQL
CREATE TABLE Client (
Prnom TEXT,
Nom TEXT,
NSS INTEGER CONSTRAINT Clef PRIMARY KEY)

Mthode
Si possible, passer les proprits de lassociation dans lune ou
lautre des entits mais:
Si la cardinalit minimum est 0, on ne peut le faire car, pour certaines entits, il
y aurait des valeurs nulles (ex. un prof ne donnant pas de cours)
Si la cardinalit maximum est n, on ne peut le faire car il y aurait des attributs
rptitif (ex. un prof donnant plusieurs cours)

Sinon, crer une table pour lassociation contenant


les clefs des entits associes
les proprits de lassociation

Lavantage du LDD est quil est standard


Choix physiques dorganisation, doptimisation....

Premire modlisation restreinte

Modle entit-association

Grer les notes des tudiants veut dire:

Etudiant

Hypothses :

N
Nom

On a une base de donnes pour chaque promo et pour chaque semestre

Prnom

Donnes :
Etudiants (nom, prnom, groupe)
Matires (nom, ple, coefficient)
Notes (pour un tudiant et une matire : DS1, DS2, Participation, Examen)

Traitements :

Moyenne par matire pour chaque tudiant


Moyenne par ple pour chaque tudiant
Moyenne gnrale pour chaque tudiant
Jury de passage (ou de DUT)
Moyenne par groupe, par matire.

Groupe

0,n

a obtenu
DS1
DS2
Participation
Examen

0,n

Cours
NomCours
Ple
Coefficient

Critiques
Le schma est simple, il rpond au problme
On a un minimum de donnes

On ne peut pas faire de suivi sur une promo


On ne peut pas faire de suivi par prof
Pas de statistiques sur plusieurs annes
Problme de gestion: on aura 4 fois les mmes programmes

En relationnel

Modlisation complte
Grer les notes des tudiants veut dire:

Notes
N
001
001
001
002
002
003
004
004
004

NomCours
Info
Math
Anglais
Info
Math
Math
Info
Math
Anglais

DS1
13
17
13
8
5
18
12
13
4

DS2
12
9
11
13
12
14
8
13

Participation
14
18
11
13
15
9
10
13
11

Etudiant
N
001
002
003
004
005

Nom
Carey
Dalton
Lventreur
Lewis
Elton

Prnom
Jim
Joe
Jack
Jerry
John

Hypothses :

Examen
9
12
11
13
17
12
16
8
5

Une base de donnes pour lIUT (pour plusieurs annes)


On veut grer les profs pour faire des stats par profs, par promos, etc...

Problmes :

Donnes :

Cours

Groupe
2.1.1
2.1.1
2.1.2
2.1.2
2.1.2

Nom Cours
Info
M ath
Anglais

Ple
Gestion
Gestion
Langues

Gestion des redoublement, de la situation (actuelle) dun tudiant


Cohabitation de notes sur plusieurs annes, des profs, des tudiants ??
Les matires sont enseigns par plusieurs profs, qui met les notes ??
Comment modliser quun prof enseigne un groupe de TP ?

Etudiants, Matires, Notes


TypeDeNotes, Periodes, Profs, Groupes, etc...

Coefficient
2
2
4

Modle entit-association
Etudiant

TypeNote
Type
Coefficient

1,n
Etudiant
a obtenu

1,n

Note

Nom
Prnom

Cours

1,n

Priode
Est dans

1,n

1,n

1,n

Code
Anne
Semestre

Enseigne
Nb heures

1,n
1,n
Groupe
Code

1,n

N_etu
001
002
003
004
005

Nom
Carey
Dalton
Lventreur
Lewis
Elton

Prnom
Jim
Joe
Jack
Jerry
John

Profs
Nom
Prnom
Adresse

N_etu
001
001
001
001
001
001
001
002
002

Inscrit
N_etu
1
1
1
2
2

Priode
1
2
3
1
2

Cours

Notes

NomCours
Ple
Coefficient

1,n

1,n

En relationnel
NomCours
Info
Info
Info
Info
Math
Math
Math
Info
Info

TypeNote
DS1
DS2
Part
Exam
DS1
Part
Exam
DS1
DS2

TypeNote

Groupe
1.2.1
2.1.1
2.1.1
1.1.1
2.1.1

TypeNote
DS1
DS2
Part
Exam

Priode

Priode
1
2
3

Anne
1996
1997
1997

Coefficient
1
1
1
3

Semestre
2
1
2

Priode
2
2
2
2
2
2
2
2
2

Note
13
12
14
9
17
18
12
13
11
Nom
Bouganim
Crenn
Bouganim
Bouganim
Crenn

N om C ours
Info
M ath
Anglais

Ple
Gestion
Gestion
Langues

C oeff
2
2
4

Enseigne
NomCours
Info
Math
Info
Info
Math

Groupe
1.2.1
2.1.1
2.1.1
2.1.2
1.2.1

Priode
1
3
3
3
2

Profs
Nom
B ouganim
C renn
R ousseau

Prnom
Luc
Isabelle
M artine

Adresse
Paris
Paris
Versailles

NbH
20
17
20
20
10