Vous êtes sur la page 1sur 29

Bases de donnes : Prsentation gnrale et Mthode de Conception

Support de Formation

Bases de donnes :
Prsentation gnrale et Mthode de conception

Lcu Rgis : CFPA Champs/Marne, Formation APIAI (origine CFPA Dijon)


Bases de donnes : Prsentation gnrale et Mthode de Conception

Chapitre 1 Gnralits sur les bases de donnes_____________________________3


Chapitre 2 Objectifs de l'approche SGBD__________________________________5
2.1 Intgration et corrlation______________________________________________5
2.2 Flexibilit ou indpendance_____________________________________________6
2.3 Disponibilit__________________________________________________________6
2.4 Scurit______________________________________________________________6
Chapitre 3 Architecture fonctionnelle d'un SGBD : ANSI-SPARC______________7
3.1 Niveau conceptuel____________________________________________________7
3.2 Niveau externe_______________________________________________________9
3.3 Niveau interne ou Physique_____________________________________________9
Chapitre 4 Fonctionnement d'un SGBD__________________________________10
4.1 Chronologie des oprations dans linterrogation dun SGDB________________10
4.2 Les langages d'un SGBD______________________________________________10
Chapitre 5 Rle de l'administrateur de la base_____________________________12
Chapitre 6 Principaux modles logiques__________________________________13
6.1 Le modle hirarchique_______________________________________________13
6.2 Le modle en rseau__________________________________________________14
6.3 Le modle relationnel_________________________________________________16
Chapitre 7 Conception de bases de donnes_______________________________17
7.1 Les Formes normales_________________________________________________17
7.2 Dmarche de conception______________________________________________19
7.3 Les phases de la conception avec un symbolisme de type MERISE ________21
Chapitre 8 Exercices__________________________________________________26

APIAI Champs/Marne (origine Dijon) page 2


Bases de donnes : Prsentation gnrale et Mthode de Conception

CHAPITRE 1 GNRALITS SUR LES BASES DE DONNES

Dfinition et Historique

Une base de donnes est un ensemble structur de donnes enregistres sur des supports
informatiss, pouvant satisfaire simultanment plusieurs utilisateurs de faon slective, en
un dlai raisonnable.
Le concept de Base de Donnes (BDD) est apparu vers 1960, face au nombre croissant
d'informations que les entreprises devaient grer et partager :
- chaque nouvelle application crait alors ses propres fichiers de donnes et ses propres
programmes ;
- le concept de base de donnes va l'encontre de cette faon de procder : il permet la
centralisation, la coordination, l'intgration et la diffusion de l'information archive.

La base de donnes enregistre les faits ou vnements qui surviennent dans la vie d'un
organisme, pour les restituer la demande : elle permet galement de tirer des conclusions
en rapprochant plusieurs faits lmentaires.
Les donnes peuvent tre manipules par plusieurs utilisateurs ayant des vues diffrentes
sur ces donnes ("points de vue" diffrents).
La structure densemble des donnes suit une dfinition rigoureuse appele SCHEMA.

Facteurs lis au dveloppement des SGBD :

augmentation des capacits mmoire, et diminution des temps d'accs


apparition sur le march dapplications fiables et diversifies, qui doivent partager leurs
donnes
dveloppement des systmes de gestion en temps rel : "Gestion transactionnelle"
approche globale "oriente donnes" des problmes de gestion : les donnes sont
organises de faon rationnelle plutt que dfinies au coup par coup selon les applications
raliser.

Rappel sur les systmes de gestion de fichiers


Toute manipulation de fichier exige trois niveaux dintervention, et trois couches logicielles :
- Gestion du support physique : disques durs, disquette, streamers
Pilote dentres-sorties (Driver)
- Gestion des structures internes des fichiers, et des mthodes daccs : ouverture,
fermeture, lecture, criture
Systme de gestion de fichiers (SGF)
- Gestion des contenus : calculs, tests, affichages ...
Programmes applicatifs

APIAI Champs/Marne (origine Dijon) page 3


Bases de donnes : Prsentation gnrale et Mthode de Conception

Applications Systme d'exploitation


Matriel

Ouvrir, fermer Demande d'un


Units
lire, crire enregistrement physique de
Programme SGF
applicatif lecture
Code derreur ou Code derreur ou et/ou
criture
Donnes logiques Enregistrement physique

Niveau Niveau
logique physique

Systme de Gestion de Base de donnes : SGBD

Ensemble des programmes et des langages de commande qui permettent de :


- dfinir des "bases de donnes", et des relations entre les lments de chaque base ;
- spcifier le traitement de ces donnes : interrogations, mises jour, calculs, extractions...

Le SGBD reoit des commandes aussi bien des programmes d'application que des
utilisateurs : il commande les manipulations de donnes, gnralement par l'intermdiaire
d'un SGF.

Utilisateur
Ouvrir, fermer, Demande d'un
Units
lire, crire enreg. physique De
Gestion de la
SGBD SGF Lecture/
Base
Ecriture
Code rponse, Enreg. physique
ou code erreur
Programme Donnes logiques
applicatif

APIAI Champs/Marne (origine Dijon) page 4


Bases de donnes : Prsentation gnrale et Mthode de Conception

CHAPITRE 2 OBJECTIFS DE L'APPROCHE SGBD

Pour pallier aux inconvnients des mthodes classiques de gestion de fichiers, les SGBD
visent quatre objectifs : intgration et corrlation, flexibilit (indpendance), disponibilit,
scurit.
Ces objectifs exigent une distinction nette entre les donnes et les procdures de
manipulation de ces donnes : aux donnes, on associera une fonction d'administration
des donnes, aux procdures de manipulation une fonction de programmation.

2.1 Intgration et corrlation

Dans les systmes classiques, chaque application gre ses donnes dans ses propres "fichiers",
do :

Un risque de redondance, et un danger d'incohrence des donnes


- La mme donne peut appartenir plusieurs applications, induisant une dperdition de stockage.
- Toute modification de cette donne est enregistrer plusieurs fois : si cette mise jour multiple
n'est pas effectue correctement, les donnes deviennent incohrentes.
- Le cot de la mise jour augmente du fait de la multiplication des entres-sorties physiques.

Une difficult pour crer de nouveaux traitements


- Les nouvelles applications entranent des duplications supplmentaires de donnes.
- Leur intgration avec les applicatifs en exploitation entrane des modifications importantes.

Dans l'approche SGBD, un "rservoir" commun (intgration) est constitu, reprsentant une
modlisation (corrlation) aussi fidle que possible de l'organisation relle de l'entreprise :

Toutes les applications puisent dans ce rservoir, les donnes qui les concernent, vitant ainsi les
duplications.
Mais le partage des donnes entre les utilisateurs pose le problme de la synchronisation des
accs concurrents .

APIAI Champs/Marne (origine Dijon) page 5


Bases de donnes : Prsentation gnrale et Mthode de Conception

2.2 Flexibilit ou indpendance

Dans les systmes classiques, tout changement intervenant dans le stockage des donnes
(support, mthode d'accs physique) entrane des modifications lourdes des applications
correspondantes.
L'approche SGBD poursuit trois objectifs, pour assurer lindpendance des donnes par
rapport aux traitements :
- indpendance physique: tout changement de support, de mthode d'accs reste transparent
au niveau de l'utilisateur.
- indpendance logique : les programmes d'application sont rendus transparents une
modification dans l'organisation logique globale, par la dfinition de sous-schmas
couvrant les besoins spcifiques en donnes.
- indpendance vis--vis des stratgies d'accs : l'utilisateur n'a plus prendre en charge
l'criture des procdures d'accs aux donnes. Il n'a donc pas intgrer les modifications
tendant optimiser les chemins d'accs (ex: cration d'index).

2.3 Disponibilit

Le choix d'une approche SGBD ne doit pas se traduire par des temps de traitement plus
longs que ceux des systmes antrieurs.
Lutilisateur doit ignorer l'existence d'utilisateurs concurrents.
L'aspect "performance" est donc crucial dans la mise en oeuvre d'une base de donnes. Un
tel objectif ne peut tre atteint que si la conception d'une base de donnes est mene de
faon rigoureuse avec un dcoupage fonctionnel adquat. Les rgles et contraintes
inhrentes sont voques lors de l'apprentissage d'une mthodologie d'analyse (exemple
MERISE).

2.4 Scurit

La scurit des donnes recouvre deux aspects :


- l'intgrit, ou protection contre l'accs invalide (erreurs ou pannes), et contre
l'incohrence des donnes vis--vis des contraintes de l'entreprise.
- la confidentialit, ou protection contre l'accs non autoris ou la modification illgale des
donnes.

Pour ne pas trop affecter les performances, la scurit doit galement tre prise en compte
ds la phase de conception.

APIAI Champs/Marne (origine Dijon) page 6


Bases de donnes : Prsentation gnrale et Mthode de Conception

CHAPITRE 3 ARCHITECTURE FONCTIONNELLE D'UN


SGBD : ANSI-SPARC

Dans le cadre du groupe de normalisation nord amricain (ANSI), un groupe d'tudes a


t cr en 69, Standard Planning and Requirement Committee (SPARC) avec pour
mission, une standardisation des SGBD.

Les travaux ont abouti en 75 (ANSI 75) par la proposition d'une architecture multi-
niveaux : chaque niveau fonctionnel, sont associs un modle et un schma de donnes,
un langage de description de donnes (LDD) permettant de dcrire les donnes du schma,
et un langage de manipulation de donnes (LMD) permettant de les utiliser (accs pour
consultation, mise jour...).

Programmeur
Schma Schma Schma
Modle externe
Externe externe externe d'application
Utilisateur 1 Utilisateur 2 Application 3

Schma Analyste
Modle conceptuel
conceptuel

Schma
Administrateur
Modle interne interne de la base

3.1 Niveau conceptuel

Cest une abstraction aussi fidle que possible, de l'univers de l'entreprise, aprs
modlisation et indpendamment de toute rfrence l'utilisation et l'implantation en
machine.
Le modle conceptuel de donnes (MCD) permet le passage d'un concret inaccessible
(l'univers rel) un abstrait manipulable : le schma conceptuel. Celui-ci peut donc tre
considr comme la description du contenu de la base : c'est le rsultat d'un travail
d'analyse et de conception d'un systme d'information automatis.
Un schma conceptuel doit offrir les caractristiques suivantes :

APIAI Champs/Marne (origine Dijon) page 7


Bases de donnes : Prsentation gnrale et Mthode de Conception

- puissance de reprsentation : aspects structurels, contraintes existant dans l'univers rel.


- stabilit et flexibilit : l'ajout d'une nouvelle donne ou d'une nouvelle contrainte ne doit
pas entraner de changement important dans le schma.
- simplicit de comprhension : nombre d'lments rduit, dissociation claire des diffrents
concepts.
- simplicit d'utilisation : nombre restreint d'outils ou de primitives de manipulation.
- base formelle : la dfinition du schma doit s'appuyer sur une mthode rigoureuse,
mathmatique, pour viter toute ambigut d'interprtation et pour garantir la fiabilit des
donnes.

Pour aboutir au schma conceptuel, l'analyste doit reprer dans le rel, et recenser de
manire exhaustive, toutes les entits et toutes les associations :

- Une entit peut tre dfinie comme une personne, un objet, un lieu, un statut, un
vnement qui ont une existence dans le monde rel. C'est un objet concret ou abstrait,
possdant un certain nombre de caractristiques spcifiques (exemple : le produit x cote
y francs).
- Gnralement, les entits du monde rel se manifestent travers des faits lmentaires.
- Certains faits faisant intervenir plusieurs entits, il apparat la notion d'association. Une
association (ou lien) est un ensemble de deux ou plusieurs entits, chacune d'elles jouant
un rle particulier.
Exemple : le fait que la "voiture x" appartienne la "personne y" est une association entre les
entits "voiture " et "personne".

Selon la notation CODASYL, trois types de liens peuvent tre envisags :

- les liens fonctionnels nots N : 1


On a un lien fonctionnel N:1 de A vers B si toute occurrence de A dtermine au plus une occurrence
de B, et si toute occurrence de B, correspond un nombre quelconque doccurrences de A.
Exemple : dans une compagnie arienne, connaissant le numro d'un vol, on en dduit d'une
manire unique la destination, mais plusieurs vols peuvent avoir la mme destination.

Numros Vols Destinations

X
X
Y
Y
Z
Z
W
m

- les liens hirarchiques nots 1 : N.

APIAI Champs/Marne (origine Dijon) page 8


Bases de donnes : Prsentation gnrale et Mthode de Conception

On a un lien hirarchique 1:N de A vers B si une occurrence de A peut dterminer un nombre


quelconque doccurrences de B et si, une occurrence de B, correspond au plus une occurrence de A.
Exemple : la polygamie est un lien 1 : N de "homme" vers "femme".

- les liens maills nots N : M.


On a un lien maill de A vers B s'il n'existe aucune restriction sur le nombre d'occurrences de A et B
intervenant dans le lien.
Exemple : dans un lyce donn, un enseignant peut dispenser des cours dans plusieurs matires
diffrentes ; de la mme faon, une matire peut tre dispense par plusieurs enseignants.

3.2 Niveau externe

Le niveau externe comprend les "vues" spcifiques dfinies pour la manipulation des
donnes. Il prend en compte les contraintes d'accs imposes par la nature des
applications considrer (indpendamment des caractristiques techniques) et exprime les
besoins en donnes des diffrents utilisateurs, ou applications.

Le modle logique des donnes (MLD) utilis ce niveau externe peut diffrer de celui
utilis au niveau conceptuel. Ainsi, certaines vues peuvent ne pas tre construites dans la
base, mais dduites par calcul partir de certaines donnes du schma conceptuel
(exemple : anciennet obtenue par diffrence entre anne en cours et annne d'embauche
dans la socit).

3.3 Niveau interne ou Physique

Il correspond la reprsentation en machine, aussi efficace que possible, du schma


conceptuel : le schma physique intgre les caractristiques techniques (choix du SGBD,
du matriel, du systme dexploitation).

L'efficacit doit tenir compte d'une part des contraintes d'implantation (taille des disques,
optimisation du systme de fichiers), d'autre part des critres d'utilisation (traitement
interactif ou en batch, selon la frquence dutilisation et la dure du traitement).

APIAI Champs/Marne (origine Dijon) page 9


Bases de donnes : Prsentation gnrale et Mthode de Conception

CHAPITRE 4 FONCTIONNEMENT D'UN SGBD

4.1 Chronologie des oprations dans linterrogation dun SGDB

Un programme d'application A met une demande de lecture de donnes au SGBD sur une des
bases :

Le SGBD traite la demande en consultant le sous-schma externe relatif au programme


d'application A, obtenant ainsi la description des donnes.
Le SGBD consulte le schma conceptuel et dtermine le type logique de donnes
extraire.
Le systme examine la description physique de la base en rapport avec la requte logique
et dtermine le (ou les) enregistrement(s) physique(s) lire.
Le systme lance une commande au systme d'exploitation pour rechercher physiquement
l'enregistrement dsir.
Le systme d'exploitation, par le biais de ses mthodes d'accs, accde l'enregistrement
physique.
Les donnes demandes sont transfres dans les buffers, ou mmoires tampons.
Le SGBD, partir d'une comparaison entre le schma logique global (conceptuel) et le
sous-schma externe de lapplication A, extrait des donnes stockes dans le buffer,
l'enregistrement logique rclam par le programme d'application. Il effectue galement les
transformations ventuelles de format.
Le SGBD transfre les donnes des buffers dans la zone de liaison du programme
d'application A.
Le SGBD fournit galement des informations "d'tat" au programme d'application, lui
signalant en particulier les erreurs ventuellement constates au cours du processus
d'extraction.
Le programme d'application, qui dispose des donnes et d'informations de "service" en
assure la bonne exploitation !

Les ordres d'criture dans la base physique sont traits par un processus similaire, toute
modification ou adjonction tant en gnral prcde d'une opration de lecture.
A signaler que, dans la majorit des cas, le SGBD doit traiter simultanment plusieurs
demandes de donnes en provenance de plusieurs programmes d'application, utilisant
plusieurs schmas externes diffrents.

4.2 Les langages d'un SGBD

Cette prsentation des SGBD fait apparatre la ncessit de bien diffrencier deux
tapes :
- la dfinition des donnes par ladministrateur de la base (DBA)
- leur utilisation par les utilisateurs ou les programmeurs d'application.

APIAI Champs/Marne (origine Dijon) page 10


Bases de donnes : Prsentation gnrale et Mthode de Conception

Le SGBD met donc disposition deux types de langage : LDD et LMD

Langage de Description de Donnes : LDD

Il permet de dcrire prcisment la structure de la base et le mode de stockage des


donnes. Alors que l'utilisation de fichiers permet seulement une description de donnes
interne au programme, dans une approche Base de Donnes, on effectue la description de
toutes les donnes une fois pour toutes : elle constitue l'ensemble des tables et
dictionnaires de la base, son schma (terminologie CODASYL).

En particulier, il prcise la structure logique des donnes (nom, type, contraintes


spcifiques...), la structure physique (mode d'implantation sur les supports, mode
d'accs), la dfinition des sous-schmas ou "vues".

Langage de Manipulation de Donnes : LMD

L'utilisation d'une BDD suppose un grand nombre d'utilisateurs, souvent non informaticiens,
ayant des tches et des besoins varis auxquels le LMD doit pouvoir rpondre. Le SGBD
fournit deux niveaux daccs :
le langage d'interrogation, ou langage de requte interactif
vite le recours des langages gnraux de programmation. Il doit avoir une syntaxe souple, si
possible graphique, tre accessible aux non-spcialistes et permettre la formulation de demandes
utilisant des critres varis et combins.
le langage hte
pour les traitements rguliers, le SGBD doit fournir une interface permettant l'utilisation de la base
l'aide des langages procduraux (COBOL, Pascal, C/C++.), en incorporant les requtes dans des
programmes classiques.

Classification des LMD

langages navigationnels (ex : SYMBAD)


dans les SGBD hirarchiques ou rseaux. Les requtes du langage dcrivent les chemins d'accs aux
diffrentes donnes, celles-ci tant gnralement chanes entre elles.
langages algbriques (ex : SQL)
dans les SGBD relationnels. Ils utilisent, pour fournir des rsultats aux requtes, les oprateurs de
l'algbre relationnelle.

APIAI Champs/Marne (origine Dijon) page 11


Bases de donnes : Prsentation gnrale et Mthode de Conception

CHAPITRE 5 RLE DE L'ADMINISTRATEUR DE LA BASE

Rsum des fonctions dun SGBD :

- description de la structure de la base : schma interne, conceptuel, sous-schmas


externes.

- organisation du stockage physique

- manipulation des informations : slection, extraction, mise jour

- protection des donnes : pour personnaliser les accs la base, il faut identifier
l'utilisateur (code et mot de passe) et vrifier qu'il est autoris effectuer les traitements
demands (contrle des droits d'accs).

- scurit, restauration : possibilit de reconstituer la base dans un tat satisfaisant aprs


tout incident

- optimisation des ressources, tenue dun journal de tous les vnements : le logiciel doit
fournir des statistiques prcises sur l'tat de la base et permettre des rorganisations
physiques priodiques qui viteront la dgradation des performances globales du systme.

- intgrit des donnes : cohrence des informations les unes par rapport aux autres

L'essentiel de la mise en oeuvre de ces fonctions revient une personne appele


administrateur de la BDD qui doit :

- intervenir en tant que conseil lors de l'tape conceptuelle de l'analyse : responsabilit de


gestion des donnes
- dcider des techniques d'accs et de l'implantation physique
- grer les diverses autorisations d'accs
- dfinir les stratgies de reprise en cas d'incident
- suivre rgulirement les performances du systme et raliser en consquence les
modifications ou volutions qui s'imposent.

APIAI Champs/Marne (origine Dijon) page 12


Bases de donnes : Prsentation gnrale et Mthode de Conception

CHAPITRE 6 PRINCIPAUX MODLES LOGIQUES

Les trois principaux modles sont, dans l'ordre chronologique de leur arrive sur le march, le
modle hirarchique, le modle rseau (ou navigationnel), le modle relationnel.

6.1 Le modle hirarchique

Exemple : le Systme dinformation d'une compagnie arienne

Socit

Salaris Vols Matriel

Pilotes Htesses Entretien Administratif

L'anctre le plus rpandu est le SGBD IMS (Information Management System), dvelopp
et commercialis par IBM dans les annes 70

Caractristiques gnrales du modle :


- Forte dpendance entre la description de la structure des donnes et la manire dont celles-
ci sont enregistres sur le support physique.
- Les lments de base du modle sont des enregistrements logiques relis entre eux pour
constituer un arbre ordonn.
- Les entits (ou segments) constituent les noeuds, celui de plus haut niveau portant le nom
de racine ; les branches (pointeurs logiques entre entits) constituent les liens. Chaque
segment est une collection d'objets appels champs (ou fields).
- Chaque segment a obligatoirement un pre (sauf la racine), et peut avoir plusieurs fils.

Avantages :
- rigueur des structures et des chemins d'accs
- simplicit relative de l'implmentation
- adquation parfaite du modle une entreprise structure arborescente.

APIAI Champs/Marne (origine Dijon) page 13


Bases de donnes : Prsentation gnrale et Mthode de Conception

Inconvnients :
- les accs se font uniquement depuis la racine
- la structure interdit les liens N:M, ne permettant que le lien 1:N. La reprsentation
d'autres relations impose de ce fait une redondance de l'information.
Exemple : comment reprsenter dans ce modle, un parc de vhicules et un ensemble de chauffeurs,
chaque chauffeur pouvant conduire plusieurs vhicules, et un vhicule pouvant tre conduit par
plusieurs chauffeurs ?
- les "anomalies" que l'on constate lors des oprations de mise jour (insertion, destruction,
modification) : l'limination d'un noeud entrane l'limination de tous les segments de
niveau infrieur qui lui sont rattachs (risque de perdre des donnes uniques)
- indpendance logique trs rduite : la structure du schma doit reflter les besoins des
applications.
- pas d'interface utilisateur simple.

6.2 Le modle en rseau

Evolution du modle hirarchique intgrant les rsultats du travail du groupe CODASYL


(comit de langage de programmation), qui avait dmarr l'tude d'une extension de
COBOL pour manipuler les bases de donnes. En 1969, il donne ses premires
recommandations concernant syntaxe et smantique du LDD et du LMD.

Mme si cette vue est un peu simplificatrice, une base en rseau peut tre dcrite comme
un certain nombre de fichiers comportant des rfrences les uns vers les autres. Les entits
sont connectes entre elles l'aide de pointeurs logiques :
- un enregistrement d'un ensemble de donnes A est associ une srie d'enregistrements (ou
records) d'un autre ensemble de donnes B. On constitue ainsi des SET, ou COSET,
structure fondamentale du modle en rseau
- le lien entre les enregistrements de A et ceux de B est 1:N
- le COSET comporte un type d'enregistrement "propritaire" (l'enregistrement de A est dit
OWNER) et un type d'enregistrement "membre" (les enregistrements de B sont
MEMBER).

APIAI Champs/Marne (origine Dijon) page 14


Bases de donnes : Prsentation gnrale et Mthode de Conception

Avantages et inconvnients du modle :


- aucune restriction dans la conception : un type de "record" peut la fois tre propritaire
et membre de plusieurs sets
- reprsentation naturelle des liens maills N:M
- pas d'anomalies pour les oprations de stockage
- commercialisation importante des systmes correspondants (DMS, IDMS, TOTAL, IDS
II, SOCRATE...),
MAIS
- pas d'indpendance par rapport aux stratgies d'accs
- procduralit importante des langages de manipulation ; l'utilisateur doit "naviguer" dans
le rseau logique constitu par les enregistrements et les chanes de pointeurs.

Exemple : schma reprsentant le sous-systme d'information


produits / magasins de stockages / fournisseurs / domiciliations bancaires

Produits Fournisseurs

Magasin de Domiciliation
stockage Produit/Fournisseur bancaire

APIAI Champs/Marne (origine Dijon) page 15


Bases de donnes : Prsentation gnrale et Mthode de Conception

6.3 Le modle relationnel

C'est un article publi en 1969 par un mathmaticien du centre de recherche IBM, Codd,
qui dfinit les bases de ce modle relationnel. Codd s'est intress au concept d'information
et a cherch le dfinir sans se proccuper de la technique informatique, de ses exigences
et de ses contraintes. Il a tudi un modle de reprsentation des donnes qui repose sur la
notion mathmatique de "relation". Dans la pratique, une relation sera reprsente par une
table de valeurs.

Exemple: reprsentation d'une table du personnel


Matricule Nom poste Salaire N dept
350 Durand Employ 8000 320
780 Dupond Cadre 15000 870
320 Veillon PDG 25000 400
490 Martin Cadre 15000 320

Dfinitions
Une relation est un ensemble de tuples (lignes), dont l'ordre est sans importance. Les
colonnes de la table sont appeles attributs ou champs. Lordre des colonnes est dfini lors
de la cration de la table.
Une cl est un ensemble ordonn d'attributs qui caractrise un tuple. Une cl primaire le
caractrise de manire unique, l'inverse d'une cl secondaire.
On dit qu'un attribut A est un dterminant si sa connaissance dtermine celle de l'attribut
B (B dpend fonctionnellement de A).

Caractristiques du modle
Schma de donnes facile utiliser : toutes les valeurs sont des champs de tables deux
dimensions.
Amliore l'indpendance entre les niveaux logique et physique : pas de pointeurs visibles
par l'utilisateur.
Fournit aux utilisateurs des langages de haut niveau pouvant ventuellement tre utiliss
par des non-informaticiens (SQL, L4G) et un ensemble d'oprateurs bas sur l'algbre
relationnelle : union, intersection, diffrence, produit cartsien, projection, slection,
jointure, division.
Optimise les accs aux bases de donnes
Amliore l'intgrit et la confidentialit : unicit de cl, contrainte dintgrit rfrentielle
Prend en compte une varit d'applications, en gestion et en industriel
Fournir une approche mthodologique dans la construction des schmas.

APIAI Champs/Marne (origine Dijon) page 16


Bases de donnes : Prsentation gnrale et Mthode de Conception

CHAPITRE 7 CONCEPTION DE BASES DE DONNES

7.1 Les Formes normales

Les formes normales permettent de construire un schma conceptuel correct partir des
relations brutes issues des donnes recueillies auprs des clients.

1re forme normale


Une relation est dite en premire forme normale si chaque attribut possde une seule valeur (ce
qui exclut les groupes), et si elle admet une cl primaire.

Exemple:
L'exemple porte sur un ensemble de donnes concernant des tests de types diffrents, effectus
sur les lments matriel d'un systme de production :

R ( libell matriel, code marque, libell marque, type de test, date du test, rsultat du test)
n'est pas en 1re forme normale car aucun attribut ne peut tre cl primaire : le libell matriel
peut tre identique pour plusieurs lments.

R (code matriel, libell matriel, code marque, libell marque, code type de test, libell
du test, date du test, rsultat du test)
n'est pas en 1re forme normale car on peut faire plusieurs tests sur un mme matriel, ce qui
exige de rpter les informations "code type de test", "libell du test", "date du test", "rsultat
du test", dans un mme nuple.

La relation doit tre clate en deux, pour tre exprime en 1re forme normale :

R-MATERIEL (code matriel, libell matriel, code marque, libell marque)


R-TEST (code matriel, code type, libell test, date du test, rsultat du test)

Les deux relations ne comportent que des attributs sans rptition. Dans R_TEST, la cl
primaire est compose de "code matriel" et "code type" : un type de test peut concerner
plusieurs matriels, un matriel peut tre test plusieurs fois, mais chaque matriel ne subit
quune fois un type de test donn.

APIAI Champs/Marne (origine Dijon) page 17


Bases de donnes : Prsentation gnrale et Mthode de Conception

2me forme normale


Une relation est dite en deuxime forme normale si elle est en premire forme normale, et si
tout attribut n'appartenant pas la cl primaire ne dpend pas que d'une partie de cette cl.

R-TEST(code matriel, code type, libell test, date du test, rsultat du test)
n'est pas en 2me forme normale car l'attribut "libell test" ne dpend que du "code type" et pas
du "code matriel" ;

La relation doit clate en deux, pour tre exprime en deuxime forme normale :

R-TEST (code matriel, code type, date du test, rsultat du test)


R-TYPETEST (code type, libell test)

3me forme normale


Une relation est dite en troisime forme normale si elle est en deuxime forme normale, et si
toutes les dpendances fonctionnelles issues de la cl primaire sont directes

R-MATERIEL(code matriel, libell matriel, code marque, libell marque)

La dpendance entre "code matriel" et "libell marque" n'est pas directe, "libell marque" est
en dpendance fonctionnelle directe avec le "code marque".

La relation doit tre clate en deux, pour tre exprime en troisime forme normale :

R-MATERIEL(code matriel, libell matriel, code marque)


R-MARQUE(code marque, libell marque)

Le schma conceptuel final de la base de donnes est donc :

R-MATERIEL (code matriel, libell matriel, code marque)


R-MARQUE (code marque, libell marque)
R-TYPETEST (code type, libell test)
R-TEST (code matriel, code type, date du test, rsultat du test)

APIAI Champs/Marne (origine Dijon) page 18


Bases de donnes : Prsentation gnrale et Mthode de Conception

Commentaires:

Le schma conceptuel fait apparatre 3 relations entits : R-MATERIEL, R-MARQUE,


R-TYPETEST
et la relation association R-TEST qui ralise le lien Matriel <--> Type test de type N:M
Le lien fonctionnel Matriel <--> Marque de type N:1 est ralis par la prsence du "code
marque" dans la relation R-MATERIEL.

N 1

MATERIEL MARQUE
TYPE TEST
1 1

TEST
N N

7.2 Dmarche de conception

Concevoir une base de donnes relationnelle, c'est tablir pour le systme d'information tudi,
les relations entits et les relations associations en troisime forme normale.

1re tape :
Etablir les schmas externes, c'est--dire lister les donnes ncessaires chaque utilisateur de
la future base.

2me tape :
Etablir le dictionnaire de donnes en regroupant les schmas externes, en supprimant les
redondances et en ne conservant que les informations lmentaires (non dduites). Ceci revient
lister les attributs de la base.

Dictionnaire de donnes du systme d'informations relatif aux tests sur les matriels de
production :
code matriel, libell matriel
code marque, libell marque
code type de test, libell du test, date du test, rsultat du test

3me tape :
Etablir les contraintes d'intgrit fonctionnelle (ou dpendances fonctionnelles) entre attributs.
Attributs En dpendance fonctionnelle avec

APIAI Champs/Marne (origine Dijon) page 19


Bases de donnes : Prsentation gnrale et Mthode de Conception

Entit = Cl
+ Attributs
dpendants

code matriel
libell matriel code matriel
code marque
libell marque code marque
code type de test
libell du test code type de test

Association

date du test code matriel + type de test


rsultat du test code matriel + type de test

4me tape :
En dduire les relations "entits" et les relations "associations avec attributs" :
Les entits sont contitues dune cl primaire et dun ou plusieurs attributs qui ne
dpendent fonctionnellement que de cette cl
Les associations sont constitues dune liste dau moins deux cls reprsentant des entits,
et dattributs qui dpendent de ces cls

Entits : Matriel, Marque, Type de test


Association avec attributs : Test

5me tape :
Etablir les relations "associations sans d'attributs" en considrant deux cas :
- Il existe un lien fonctionnel N : 1 entre les entits : la cl primaire de l'entit mre devient
cl trangre dans l'entit fille
Exemple: matriel-marque. Lentit "Matriel" dpend (est fille) de lentit "Marque" : la
cl trangre "code marque" dans "Matriel" pointe sur la cl primaire "code marque" dans
"Marque" .
- Le lien entre les deux entits est de type N:M : il faut crer une nouvelle relation
association sans attributs, qui contient seulement les cls primaires des deux relations
associes.

6me tape:
Reprsenter le schma de la base

7me tape:
S'assurer que les relations sont en troisime forme normale.

APIAI Champs/Marne (origine Dijon) page 20


Bases de donnes : Prsentation gnrale et Mthode de Conception

7.3 Les phases de la conception avec un symbolisme de type


MERISE

Prsentation

Sans faire un expos sur la mthode Merise, ce chapitre voudrait prsenter succinctement
les diffrents modles des donnes (MCD Conceptuel, MLD Logique, MPD Physique),
titre de comparaison avec la mthode maison qui vient dtre expose.
Aprs avoir recueilli les donnes auprs des clients (tape 1), supprim les redondances
(tapes 2), class les donnes selon les dpendances fonctionnelles (tape 3), on construit le
modle conceptuel entits/associations (tape 4), o les associations sont des relations
values, comportant un ou plusieurs attributs :

Association R avec
la proprit PropR.1

Objet1 Objet2
R
Prop1.1 0,1 0,n Prop2.1
PropR .1 Entit
Prop1.2

Min,
Max
cardi
nalit

A partir du modle conceptuel, on peut dduire le modle logique et physique par des
oprations systmatiques (tape 5 et 6) : lapplication complte de la mthode Merise
garantit lobtention des formes normales. Le passage du MCD au MLD, puis au MPD
dpend de la cardinalit des relations.

Du MCD au MPD, pour un lien fonctionnel (N :1) ou hirarchique (1 :N)

M.C.D
Objet1 Objet2
R
Prop1.1 0,1 0,n Prop2.1
PropR. 1
Prop1.2

Exemple :
Livres Emprunt Adh.
Titre Nom
Auteur 0,1 Date 0,n

- Lassociation est emprunt le contient la proprit Date


- Cardinalit : Un livre peut tre emprunt 0 ou une fois (min = 0, max = 1 dans la notation
Merise). Un adhrent peut emprunter de 0 N livres (min= 0, max= N)
lien fonctionnel N : 1 dans la notation ANSI-SPARC

APIAI Champs/Marne (origine Dijon) page 21


Bases de donnes : Prsentation gnrale et Mthode de Conception

La relation inverse emprunte le est une relation hirarchique 1 :N

Adh Emprunte Livre


Nom 0,n Date 0,1 Titre
Auteur

M.L.D

OBJET1 OBJET2
Prop1.1 Prop2.1
Prop1.2
PropR.1

Rgle : les proprits de lassociation glissent du ct 0-1, la flche pointe vers le ct 0,n

Livres Adh
Titre Nom
Auteur
Date

Dans la table Livres, on ajoute la date de lemprunt, et une flche vers ladhrent emprunteur

MPD
Objet1 (Prop1.1, Prop1.2, PropR.1, Prop2.1)
Objet2 (Prop2.1)

Rgle : une cl trangre Prop2.1 pointant sur objet2.Prop2.1 est ajoute objet1

Livres (Titre, Auteur, Date, Nom)


Adherents (Nom)
Dans la relation Livres, on ajoute la cl trangre Nom , pointant sur Adherents.Nom

Du MCD au MPD pour une Relation 0-N : 0-N

M.C.D
Objet1 R Objet2
Prop1.1 PropR.1 Prop2.1
Prop1.2 0,n 0,n

Exemple :

APIAI Champs/Marne (origine Dijon) page 22


Bases de donnes : Prsentation gnrale et Mthode de Conception

Auteurs crit Livres


Nom 1,m Ident
Prnom 1,n Date Titre.
par.
- Lassociation "crit"contient la proprit "Date" (de parution)
- Cardinalit de la relation : Un auteur peut crire de 1 n livres. Un livre peut avoir de 1 m
auteurs => lien maill N : M dans la notation ANSI-SPARC

M.L.D

OBJET2
OBJET1 R
Prop2.1
Prop1.1 PropR.1
Prop1.2

Rgle : lassociation devient une nouvelle table et les flches pointent vers les tables lies

crit Livres
Auteurs
Ident
Nom Date
Titre
Prnom

On cre une nouvelle table crit , avec la proprit Date , et des liens vers les cls des
entits Auteurs et Livres

MPD
Objet1 (Prop1.1, Prop1.2)
R1 (Prop1.1, Prop2.1, PropR.1)
Objet2 (Prop2.1)

Rgle : la relation devient une table dont la cl est la concatnation des cls des deux objets
lis.

Exemple :
Livres (Ident, Titre)
Ecrit (Nom, Ident, Date)
Auteurs (Nom, Prnom)

Exemple rcapitulatif

MCD

APIAI Champs/Marne (origine Dijon) page 23


Bases de donnes : Prsentation gnrale et Mthode de Conception

Client Commande Article


Passe SeComposeDe
NClient 0,n 1,1 NCommande NArticle
1,n Qte 0,n
NomClient DateCommande DesignationArticle
PrenomClient TauxTva
MontantCommande PUArticle

MLD

Client Commande Article


SeComposeDe
NClient NCommande NArticle
DateCommande Qte
NomClient DesignationArticle
MontantCommande TauxTva
PrenomClient PUArticle

MPD

Client (NClient, NomClient, PrenomClient).


Commande (NCommande, DateCommande, MontantCommande, NClient).
SeComposeDe (NCommande, NArticle, Qte, TauxTva).
Article (NArticle, DesignationArticle, PUArticle).

Du MCD au MPD, dans une Relation ternaire

MCD
Profs
Matiere Enseigne Nom
Matiere 1,n 1,n Prenom
CoeffMatiere Age
Salaire
1,n
1,n
Cours
DateCours
HeureCours

1,n
Salle
NSalle
DesignationSalle

MLD

APIAI Champs/Marne (origine Dijon) page 24


Bases de donnes : Prsentation gnrale et Mthode de Conception

Profs
Matiere Enseigne NomProf
Matiere PrenomProf
CoeffMatiere AgeProf
SalaireProf

Cours
DateCours
HeureCours

Salle
NSalle
DesignationSalle

MPD

Matiere (Matiere, CoeffMatiere).


Enseigne (NomProf, Matiere).
Profs (NomProf, PrenomProf, AgeProf, SalaireProf).
Cours (NomProf, Matiere, NSalle, DateCours, HeureCours).
Salles (NSalle, DesignationSalle)

Rgle : une relation ternaire devient une table dont la cl est la concatnation des cls des trois
objets lis.

APIAI Champs/Marne (origine Dijon) page 25


Bases de donnes : Prsentation gnrale et Mthode de Conception

CHAPITRE 8 EXERCICES

ENONCE 1
Trouvez les formes normales des relations suivantes (exercices indpendants) :

R1 (N client, n produit, quantit commande, nom produit)

R2 (N commande, n produit, quantit commande)


Dans chaque commande mise, on commande certaines quantits de plusieurs produits. Un
mme produit peut tre command dans plusieurs bordereaux de commandes

R3 (N client, nom client, nom reprsentant)


Un client peut tre suivi par plusieurs reprsentants de lentreprise. Pour simplifier, on
supposera que les noms des reprsentant sont uniques, et quun reprsentant ne dmarche
quun seul client.

R4 (N produit, nom produit, n atelier, nom chef d'atelier)


Chaque produit est fabriqu dans un seul atelier. Il ny a bien sr quun chef par atelier !

R5 (N produit, n fournisseur, nom fournisseur)

Pour les noncs qui suivent, il est demand d'tablir le schma de la base en prsentant les
relations entits et les relations associations pour chacun des domaines tudi, en suivant la
dmarche du chapitre 7.2. On reprsentera le modle conceptuel avec un symbolisme Merise.

ENONCE 2

Une socit d'dition de livres et manuels universitaires dcide de s'informatiser.


Elle souhaite en particulier automatiser le calcul des droits d'auteur.

On a relev lors de l'tude les lments suivants :


- un auteur est class dans une seule spcialit
- un livre appartient ou non une collection. S'il appartient une collection, il ne peut
appartenir qu' une seule collection.
- les droits d'auteur sont calculs sur le nombre d'exemplaires vendus dans l'anne.

APIAI Champs/Marne (origine Dijon) page 26


Bases de donnes : Prsentation gnrale et Mthode de Conception

Voici le document envoy aux auteurs permettant leur paiement :

Relev des droits d'auteur


Anne 1995

Auteur n 73

Monsieur Dupont Jean


3 rue des alouettes
25 BESANCON
N SS 1520373265005 Spcialit: Mathmatiques

N ouvrage: 850 Titre: Mathmatiques pour la gestion


N Collection: 6 Collection: Mathmatiques appliques

Nombre d'ouvrages vendus: 800 Taux droits d'auteur: 8%

N ouvrage: 647 Titre: Mathmatiques pour tous


N Collection: 6 Collection: Mathmatiques appliques

Nombre d'ouvrages vendus: 1000 Taux droits d'auteur: 10%

Total gnral : 11400 F


Taxe (5%) : 570 F

NET A PAYER 11970 F

APIAI Champs/Marne (origine Dijon) page 27


Bases de donnes : Prsentation gnrale et Mthode de Conception

ENONCE 3

Une troupe thatrale se produit dans le monde entier. L'quipe tablit rgulirement le
document dcrit plus loin. Elle vous demande de l'analyser en vue d'une informatisation.

Date du jour RECAPITULATIF DES REPRESENTATIONS PAR AUTEURS

AFRIQUE AMERIQUE ASIE EUROPE OCEANIE


nom de l'auteur

titre de la pice nbre reprs. date nbre reprs date nbre reprs date nbre reprs date nbre reprs. date

nom de l'auteur

titre de la pice nbre reprs. date nbre reprs. date nbre reprs. date nbre reprs. date nbre reprs. date

APIAI Champs/Marne (origine Dijon) page 28


Bases de donnes : Prsentation gnrale et Mthode de Conception

ENONCE 4

Un grand garage se propose d'informatiser son systme de gestion en introduisant une base de
donnes pour l'tablissement des factures.Voici l'image du document facture:
GARAGE FACTURE N: 87234B
CHARLES DATE FACTURE: 30/08/95
ESTONE N CLIENT: 272
Monsieur DUPONT Jacques
Tel: 89.52.15.32
3 rue des roses
68200 Mulhouse
Intervention N 37843
Date entre vhicule: 25/08/95
Date sortie vhicule: 26/28/95

Vhicule N 6837 VH 68
Marque: RENAULT Type R21
Anne de mise en service: 1990
Kilomtrage: 6000

CODE OPERATION LIBELLE CODE OUVRIER COUT STANDARD FOURNITURES ou


PIECES
62 Rglage G12 52.00 7.00
Allumage

27 Vidange G23 78.00 373.00


Graissage

TOTAL H.T. 510.00 F


MONTANT TVA 102.00 F

MONTANT TTC 612.00 F

Pour laborer ce document, on a relev les points suivants :


- Une entre d'un vhicule reoit un numro d'intervention ;
- Chaque intervention est forme d'une suite d'oprations ;
- Chaque opration correspond un travail codifi et affect d'un cot standard dfini par le
garage.
- Pour une opration donne sur un vhicule donn, un seul ouvrier intervient.

APIAI Champs/Marne (origine Dijon) page 29