Académique Documents
Professionnel Documents
Culture Documents
I.
Objectifs du cours
-
II.
savoir construire une base de donnes sur micro-ordinateur rpondant des besoins
individuels, dun service ou dune petite structure.
Comprendre le fonctionnement des grosses bases de donnes dune entreprise ou
dune administration, pour faciliter lutilisation et le dialogue avec les informaticiens
responsables de ces bases.
Prsentation du programme et difficults spcifiques des SGBD (rflexion pralable
aux manipulations plus importante que pour lutilisation des autres outils bureautiques).
Alors quau dbut de leur histoire les ordinateurs servaient essentiellement calculer, leur
utilisation principale de nos jours est la gestion dinformations. On les retrouve dans tous les
secteurs dactivit.
Au dpart, les informations taient stockes sous forme de fichiers crs au fur et mesure
des besoins et au cours du dveloppement de nouvelles applications. La cration non matrise de diffrents fichiers a rapidement pos des problmes :
- Redondance : les mmes donnes finissent par se retrouver dans plusieurs fichiers.
- Manque de cohrence : il est trs difficile de rpercuter les mises jour sur lensemble
des fichiers concerns
- Manque de structuration : labsence dune vision globale fait que les donnes sont trop
spcifiques et ne permettent pas leur rutilisation pour de nouveaux traitements.
Do lide de remplacer ces diffrents fichiers par une seule base de donnes. Une base de
donnes est dfinie comme tant un ensemble de donnes organis en vue de son utilisation par des programmes correspondant des applications distinctes, et de manire
faciliter lvolution indpendante des donnes et des programmes (Journal Officiel,
17/01/1982) :
- Par rapport des fichiers disparates, une base de donnes unifie la structuration et la
mmorisation des informations grce un modle (ou schma) unique et cohrent
des donnes.
- Ce modle unique de donnes ne doit pas tre li une application spcifique qui en
figerait la structure et doit tre suffisamment gnral pour sadapter toutes les situa-
1 / 24
Semestre 1
tions particulires (do la ncessit dans la conception dune base de donnes dune
analyse globale et prospective des besoins).
- Dans une base de donnes, les donnes sont dcrites indpendamment des programmes (ou traitements) qui les utilisent. Il doit tre possible de modifier les programmes
appliqus sans avoir redfinir les donnes.
Un logiciel permettant dutiliser ces donnes est un systme de gestion de base de donnes
(SGBD). Il permet de dcrire, mmoriser, interroger, modifier, traiter, maintenir les donnes
constituant une base. Il permet de dfinir des rgles prcises permettant de maintenir la cohrence (lintgrit, la consistance) des donnes dune base en veillant ce que des donnes
identiques ne soient pas dupliques. Il permet galement dappliquer des contraintes sur les
donnes et dassurer des fonctions de confidentialit, de scurit et de partage des donnes
pour des accs concurrents.
Diffrents logiciels existent permettant cette opration. Nous allons utiliser ici le logiciel
Access comme SGBD. Ce logiciel permet une conception aise de bases de donnes de "petite" taille avec un nombre restreint dutilisateurs. Il est noter que plusieurs autres SGBD
plus performants (mais galement plus complexes) existent par ailleurs. On peut citer notamment Oracle, SQL Server, Paradox, MySQL, PostgreSQL parmi beaucoup dautres.
Il existe trois types de modles de bases de donnes, les modles hirarchiques, les modles en rseaux et les modles rationnels. Le modle hirarchique est le plus ancien ; dans ce
modle, lorganisation des donnes repose sur une structure arborescente (on peut faire
lanalogie avec la gestion des fichiers sur un ordinateur) : chaque information na quun seul
suprieur hirarchique et nest accessible qu partir dun point unique (la racine). Le
deuxime modle est le modle en rseaux (modle CODASYL). Chaque information peut
tre associe plusieurs autres (plusieurs suprieurs hirarchiques ) et servir de point
dentre (il ny a plus dinformations privilgies), les relations entre les donnes tant stockes dans la base avec les donnes (on peut faire lanalogie avec les liens hypermdias). Le
dernier modle est le modle relationnel sur lequel sont bass la plupart des SGBD actuels
(dont Access) et qui est le seul que nous tudierons. Dans ce modle, les informations sont
stockes dans des tables qui sont relies entre elles par des relations. Linterrogation de la
base de donnes se fait laide de requtes, ces requtes tant crites laide dun langage
commun la plupart des SGBD : le SQL (Structured Query Language). Access a comme
avantage par rapport la plupart de ses concurrents de permettre une criture en mode graphique des tables, de leurs relations et de la plupart des requtes. De plus, il intgre un systme
de cration dapplications claires et simples pour chaque base de donne. Pour concevoir une
base de donnes relationnelle, il existe diffrentes mthodes la plus utilise (en France) tant
la mthode Merise.
2 / 24
III.
Semestre 1
Mthode Merise
1. Principes gnraux
La mthode Merise a t cre en France en 1978 sous limpulsion du ministre de lindustrie,
par un groupement de six socits de services et un centre de recherche informatique. Cette
mthode utilise le systme dit dentits-relations. Il sagit dun outil et dune technique
danalyse permettant de construire des schmas thoriques de raisonnement sur des applications tournant avec des bases de donnes dites relationnelles (comme celles dAccess).
A noter que nous ne prsenterons ici quune partie de la mthode Merise, puisque la mthode Merise gnrale traite de lintgralit de la conception de la base de donnes : elle ne
sintresse pas uniquement la partie correspondant au stockage des donnes, mais galement
leur traitement.
La mthode Merise considre quatre phases dans la cration dune base de donnes :
1. La phase danalyse : cette phase, qui ne sera pas tudi dans ce document, est une
phase essentielle qui consiste
tudier lexistant : y a-t-il un systme qui gre dj tout ou partie de
linformation, quil sagisse dun logiciel ou dun ensemble de documents papiers ? Comment ces informations sont elles stockes ? Quelles sont les informations stockes ? Que manque-t-il ? Quest ce qui convient ou ne convient pas aux
utilisateurs ?
interroger les futurs utilisateurs : quattendent-ils du futur SGBD ? Quelles sont
les oprations quils dsirent automatiser ?
recueillir les informations existantes, tudier les divers liens qui peuvent exister
entre ces informations, mettre en vidence les rgles de gestion employes
2. La phase conceptuelle : elle consiste reprsenter lorganisation des donnes de manire gnrale. Elle aboutit la cration du modle conceptuel des donnes (MCD) dans
lequel les donnes sont reprsentes sous forme dentits lies entre elles par des relations.
3. La phase logique ou organisationnelle : dans cette phase, la base de donnes est reprsente sous une forme logique plus proche de sa reprsentation relle au sein du
SGBD : les informations sont reprsentes uniquement sous forme de tables au sein
dun modle logique des donnes (MLD).
4. La phase physique ou oprationnelle : elle consiste construire rellement la base de
donnes au sein du SGBD (ici Access). Cette partie ne sera pas dcrite dans cette section, mais dans les suivantes.
1.
2.
3.
4.
3 / 24
Semestre 1
4 / 24
Semestre 1
Semestre 1
Clients : IdClient, nom, prnom, rue, code postal, pays, tl, email.
Produits : CodeProduit, libell, prixHT, quantit en stock
Commandes : NumCommande, date, mode de paiement
Villes : CodePostal, ville
Cette solution est (un peu) plus complexe construire mais elle prsente lavantage de ncessiter moins de saisie et despace mmoire et de faciliter une ventuelle actualisation des donnes (ville qui change de nom.).
c. Construction des relations
Ltape suivante consiste numrer toutes les relations possibles entre entits. Si une relation a une chance dapparatre (et de nous intresser), alors on doit la considrer dans le
MCD. On parle galement parfois dassociation. Dans la description de la situation informatiser les relations correspondent souvent aux verbes.
Une relation se reprsente de la manire suivante :
Entit A
IdentifiantA
Proprit 1
Proprit 2
.
relation
Entit B
IdentifiantB
Proprit 1
Proprit 2
.
Employs
IdEmploy
Nom
Prnom
.
Responsable
Est responsable de
6 / 24
Semestre 1
Une relation peut avoir des proprits. Par exemple, si une relation Comporte lie
lentit Commandes et lentit Produit, elle possde certainement la proprit "quantit" (une facture contient un produit x en quantit y). Dailleurs, si une proprit dpend
de plus dune entit (comme cest le cas ici avec la quantit qui dpend la fois de la
facture et du produit), cest certainement quelle dpend dune relation, et non pas
dune entit.
Il faut viter les relations que lon peut dduire dautres relations par transitivit. Par
exemple, dans une base de donnes grant une universit, si on dispose dentits tudiant, formation et cours. On a les relations fait partie entre formation et cours (un
cours fait partie dune formation) et inscription entre tudiant et formation. Il est inutile davoir en plus une relation inscription entre tudiant et cours : tout tudiant inscrit
une formation est systmatiquement inscrit tous les cours qui composent la formation.
Exemple : Dans lexemple de la gestion des commandes de la socit, on a les relations
suivantes. La relation commande comporte produits a une proprit quantit qui
correspond la quantit dun produit qui a t command.
Clients
IdClient
Nom
Prnom
.
passe
Commandes
NumCommande
Date
Mode de paiement
.
comporte
(quantit)
Produits
CodeProduit
Libell
PrixHT
Quantit en stock
.
7 / 24
Entit A
IdentifiantA
Proprit 1
Proprit 2
.
min A : max A
relation
Semestre 1
Entit B
IdentifiantB
min B : max B
Proprit 1
Proprit 2
.
minA est le nombre minimal de fois o une occurrence de lentit A participe une relation du type considr. Il sagit en gnral de 0 ou 1.
maxA est le nombre maximal de fois o une occurrence de lentit A participe la relation. Il sagit en gnral de 1 ou n (n pour plusieurs fois, ou un nombre quelconque de
fois).
minB et maxB fonctionnent de la mme manire, mais en considrant lentit B.
Notons quil est souvent difficile de choisir entre une cardinalit de type 0:n et une cardinalit de type 1:n. Dans le premier cas, la participation la relation est facultative pour les
occurrences de lentit, alors quelle est obligatoire dans le second cas : toute occurrence de
lentit participe la relation. Il faut toutefois souligner que ce choix a souvent peu
dimportance.
Pour illustrer la notion de cardinalit, prenons lexemple dune base de donnes destine
enregistrer les mariages entre les hommes et les femmes dans des socits ayant des rgimes
matrimoniaux diffrents. Nous avons deux entits (les hommes et les femmes) et une relation
( est mari ) avec une proprit date du mariage . Les cardinalits minimales seront
gales 0 si lon prend en compte tous les hommes et toutes les femmes (y compris les clibataires) et 1 si lon ne prend en compte que les hommes et les femmes maris. Les cardinalits maximales seront diffrentes selon le rgime matrimonial en vigueur :
1- dans une socit interdisant la polygamie et la polyandrie
Hommes
NumINSEE
Nom
Prnom
.
0:1
Est mari
(date du mariage)
0:1
Femmes
NumINSEE
Nom
Prnom
.
0:n
Est mari
(date du mariage)
0:1
Femmes
NumINSEE
Nom
Prnom
.
8 / 24
Semestre 1
Est mari
(date du mariage)
0:1
0:n
Femmes
NumINSEE
Nom
Prnom
.
0:n
Est mari
(date du mariage)
0:n
Femmes
NumINSEE
Nom
Prnom
.
Autre exemple : la relation rflexive Reponsable entre une table employs et elle-mme.
Il faut distinguer le cas o un employ ne peut avoir quun seul suprieur hirarchique
direct du cas o il peut en avoir plusieurs (par exemple le technicien informatique dun
UFR a deux responsables hirarchiques directs : le directeur de lUFR et le directeur du
Centre de Ressources Informatique).
Dans le premier cas (un seul suprieur hirarchique direct), les cardinalits sont :
A comme responsable
Employs
IdEmploy
Nom
Prnom
.
0:1
Responsable
0:n
Est responsable de
Dans le deuxime cas (possibilit de plusieurs suprieurs hirarchiques directs), les cardinalits sont :
A comme responsable
Employs
IdEmploy
Nom
Prnom
.
0:n
Responsable
0:n
Est responsable de
9 / 24
Semestre 1
Exemple : Dans lexemple de la gestion des commandes de la socit, les cardinalits sont
les suivantes :
Dans la relation Clients passe Commandes , pour lentit Clients la cardinalit minimale est 0 (si lon considre que le fichier clients contient des clients qui nont encore jamais pass de commandes) et la cardinalit maximale est n (un client peut passer
plusieurs commandes !). Dans cette mme relation, pour lentit Commandes la cardinalit minimale est 1 (une commande est obligatoirement passe par un client !) et la
cardinalit maximale est 1 (une commande ne peut tre passe par deux clients diffrents !).
Dans la relation Commandes comporte Produits , pour lentit Commandes la cardinalit minimale est 1 (une commande comporte au moins un produit) et la cardinalit
maximale est n (puisquune commande peut comporter plusieurs produits diffrents).
Dans cette mme relation, pour lentit Produits la cardinalit minimale est 0 (si lon
considre que le fichier produits contient des produits qui nont encore jamais t commands !) et la cardinalit maximale est n (un produit peut figurer dans plusieurs commandes diffrentes).
Le MCD complet est donc :
Clients
IdClient
Nom
Prnom
.
0: n
passe
1: 1
Commandes
NumCommande
Date
Mode de paiement
.
1: n
comporte
(quantit)
Produits
CodeProduit
Libell
PrixHT
Quantit en stock
.
0: n
10 / 24
Semestre 1
Dans lidal, il faut trouver un bon compromis entre niveau de dtail et "taille" de la
base de donnes. Il est toujours possible de multiplier les entits, mais il vaut mieux le
faire que si cela a vraiment du sens et un intrt dans le problme. Par exemple, si on a
une entit personne, on peut considrer ladresse comme une entit spare (relie
personne par une relation "habite ") ou comme une proprit de la personne (ce qui est
fait usuellement). En rgle gnrale, il est plus conomique de dfinir ladresse comme
une proprit, mais dans un cas o il est frquent que des personnes habitent au mme
endroit, la rgle de non-redondance incite plutt utiliser une nouvelle entit.
1.
2.
3.
4.
11 / 24
Semestre 1
Commandes
NumCommande
Date
Mode de paiement
.
Produits
CodeProduit
Libell
PrixHT
Quantit en stock
.
12 / 24
Semestre 1
2. le cas o les deux branches de la relation ont une cardinalit maximale de n (1:n ou 0:n)
Premier cas : lune des branches de la relation a une cardinalit maximale de 1 (1:1 ou 0:1)
Dans le cas dune relation ou lune des branches a une cardinalit de 1:1 ou 0:1, la transformation de la relation se fait de la manire suivante :
On ramne dans la table correspondant lentit "du ct du 1:1" (ou du 0:1) la cl
primaire de lautre table ainsi que toutes les ventuelles proprits de la relations.
On lie la cl primaire ainsi importe avec la cl primaire de la deuxime table.
Si la relation contenait des proprits, celle-ci se retrouve galement importes du ct
du 1:1.
Entit A
IdentifiantA
Proprit 1
Proprit 2
.
1 (ou 0): 1
?:?
relation
Entit B
IdentifiantB
Proprit 1
Proprit 2
.
Se transforme en :
Entit A
IdentifiantA
IdentifiantB
Proprit 1
Proprit 2
.
Entit B
IdentifiantB
Proprit 1
Proprit 2
.
A noter que la cl importe (ici IdentifiantB qui se retrouve dans table A) ne devient pas
une cl de la table : cest une proprit comme une autre. Notons aussi que le lien se fait entre
champs (on relie IdentifiantA IdentifiantB) et non pas, comme dans le MCD, entre les tables.
Dans lexemple de la socit autorisant la polygamie mais interdisant la polyandrie, le MCD
Hommes
NumINSEE
Nom
Prnom
.
0: n
Est mari
(date du mariage)
0:1
Femmes
NumINSEE
Nom
Prnom
.
se transforme en :
Hommes
NumINSEE
Nom
Prnom
.
Femmes
NumINSEE
NumINSEEmari
Date du mariage
Nom
Prnom
.
13 / 24
Semestre 1
0: 1
Est mari
(date du mariage)
0: n
Femmes
NumINSEE
Nom
Prnom
.
se transforme en :
Hommes
NumINSEE
NumINSEEpouse
Date du mariage
Nom
Prnom
.
Femmes
NumINSEE
Nom
Prnom
.
Remarque : si les cardinalits sont 0 : 1 pour les deux entits participant la relation, on peut
soit importer la cl primaire de la deuxime table dans la premire, soit importer la cl primaire de la premire table dans la deuxime. Par exemple, dans une socit interdisant la polygamie et la polyandrie, le MCD :
Hommes
NumINSEE
Nom
Prnom
.
0: 1
Est mari
(date du mariage)
0: 1
Femmes
NumINSEE
Nom
Prnom
.
peut se transformer en :
Hommes
NumINSEE
Nom
Prnom
.
Femmes
NumINSEE
NumINSEEmari
Date du mariage
Nom
Prnom
.
ou se transformer en :
Hommes
NumINSEE
NumINSEEpouse
Date du mariage
Nom
Prnom
.
Femmes
NumINSEE
Nom
Prnom
.
14 / 24
Semestre 1
Deuxime cas : les deux branches de la relation ont une cardinalit maximale de n (1:n ou
0:n)
Dans ce cas, la relation du MCD se transforme en une table du MLD :
On cre une nouvelle table correspondant la relation. Cette table contient toutes les
ventuelles proprits de la relation.
On intgre cette table les cls primaires des entits impliques dans la relation.
On relie les cls primaires des tables avec les cls importes dans la nouvelle table.
On choisit enfin la ou les cls primaires de la nouvelle table. Lide gnrale est que
chaque occurrence de cette entit doit pouvoir tre identifie de manire unique par ses
cls primaires. Cela revient en gnral choisir comme cl primaire lensemble des cls
imports des autres tables.
Entit A
IdentifiantA
Proprit 1
Proprit 2
.
1 (ou 0): n
1 (ou 0):n
relation
Entit B
IdentifiantB
Proprit 1
Proprit 2
.
se transforme en :
Relation
IdentifiantA
IdentifiantB
.
Entit A
IdentifiantA
Proprit 1
Proprit 2
.
Entit B
IdentifiantB
Proprit 1
Proprit 2
.
Hommes
NumINSEE
Nom
Prnom
.
0: n
Est mari
(date du mariage)
0: n
Femmes
NumINSEE
Nom
Prnom
.
se transforme en
Hommes
NumINSEE
Nom
Prnom
.
Mariages
NumINSEEmari
NumINSEEpouse
Date du mariage
15 / 24
Femmes
NumINSEE
Nom
Prnom
.
Semestre 1
Cas particuliers
Quelques cas particuliers peuvent apparatre.
Si la relation est de type 1:1 - 1:1, on fusionne les deux entits en une. Ce type de relation rare est souvent d un problme dans la conception du MCD.
Si la relation est de type 0:1 - 1:1, on traite la relation comme une relation de type 1:1 ?:? (en ramenant la cl primaire du ct du 1:1)
les relations ternaires (entre trois entits, ou plus), se traitent comme dhabitude. Si
lune des branches a une cardinalit de type 1:1, on ramne les cls primaires des autres
entits et les proprit de la relation dans lentit "du ct du 1:1". Si ce nest pas le cas,
la relation se transforme en table.
Les relations rflexives (entre une entit et elle-mme) se traitent comme les autres relations.
Exemple : la rflexion rflexive Reponsable entre une table employs et elle-mme.
Dans le cas dun seul suprieur hirarchique direct :
A comme responsable
Employs
IdEmploy
Nom
Prnom
.
0:1
Responsable
0:n
Est responsable de
se transforme en :
Employs
IdEmploy
Nom
Prnom
IdSprieur
Employs
IdEmploy
Nom
Prnom
.
0:n
Responsable
0:n
Est responsable de
se transforme en :
16 / 24
Employs
IdEmploy
Nom
Prnom
IdSprieur
Semestre 1
Responsable
IdSuprieur
IdSubordonn
.
Commandes
NumCommande
IdClient
Date
Mode de paiement
.
DtailCommandes
NumCommande
CodeProduit
QuantitCommande
.
Produits
CodeProduit
Libell
PrixHT
Quantit en stock
.
1.
2.
3.
17 / 24
IV.
Semestre 1
Exercices dapplication
Construire le Modle conceptuel des donnes (MCD) puis le Modle Logique de donnes
(MLD) des exemples suivants (trs simplifis).
Rappel
La construction du MCD ncessite :
- le reprage des entits,
- la construction des entits et le choix des proprits, (dont la cl de chaque entit),
- la construction des relations,
- le choix des cardinalits. (0:1, 1:1, 0:n ou 1:n ? )
Pour construire le MLD partir du MCD :
- les entits sont transformes en tables (sans modification)
- les relations sont transformes en fonction de leurs cardinalits :
une relation de type ?:1 - ?:n entre une entit A et une entit B se traduit par
une importation de la cl primaire de lentit B dans la table de A, et on
ajoute un lien entre les deux cls,
une relation de type ?:n - ?:n ) se transforme en table dans laquelle on retrouve les cls primaires de A et B.
1- Une socit qui vend des produits veut informatiser la gestion des commandes de ses
clients. Chaque commande dun client peut comporter plusieurs produits diffrents.
2- Une entreprise veut informatiser la gestion de ses stocks. Les produits quelle commercialise se trouvent dans diffrents entrepts.
3- Une compagnie dassurance automobile a des clients qui signent des contrats. Un
contrat couvre un vhicule qui appartient un client ; celui-ci peut avoir plusieurs vhicules. Il peut arriver que ces vhicules aient des accidents.
4- Un collge souhaite informatiser la gestion des notes de ses lves. Le collge comprend des classes qui ont des lves. Les professeurs enseignent diffrentes matires.
Les lves ont des notes diffrentes preuves de chaque matire.
5- Un comit dentreprise veut informatiser le catalogue des CD quil possde. Pour chaque CD on dsire connatre son nom, son genre (varit, classique, jazz), lanne de
sa cration, son prix HT et la quantit en stock. Un CD comprend un certain nombre
de titres. Chaque titre a un intitul, est luvre dun ou de plusieurs auteurs et est interprt par un ou plusieurs interprtes. Pour les auteurs et les interprtes, on se limitera la connaissance de leur nom et de leur prnom. Prenez garde au fait quun mme
CD peut comporter des titres dauteurs et dinterprtes diffrents et que bien videmment un auteur (ou un interprte) peut avoir compos (ou interprt) des titres sur diffrents CD. Il faut galement tenir compte du fait quun auteur peut tre galement
interprte, et quun mme titre peut figurer sur des CD diffrents. Voici un exemple
dextraits du contenu d'un CD :
18 / 24
Semestre 1
Auteurs
Patrick Bruel, B. Garcin
Interprtes
Patrick Bruel, Vanessa Pardis
L'italien
6- La socit "Mon beau gte" veut informatiser la gestion de la location de son gte des
personnes. Celui-ci a une capacit de 60 places. Les sjours durent une semaine (du
samedi au samedi), identifie par un numro.
7- Une municipalit veut informatiser la gestion de sa salle des ftes. Une rservation est
effectue pour une journe (videmment il ne doit pas tre possible deffectuer deux
rservations diffrentes la mme date !) par un utilisateur. Un utilisateur peut effectuer plusieurs rservations des dates diffrentes. Pour les utilisateurs, il est important
de savoir sils rsident (ou non) dans la commune. En effet, la salle est facture 300
pour une journe si lutilisateur rside dans la commune et 400 sinon. Lors de la rservation, lutilisateur prcisera sil souhaite galement louer la sono qui est facture
50 . Enfin lutilisateur a la possibilit de louer galement pour la journe une certaine
quantit de certains articles dont la liste figure ci-dessous.
Numro
1
2
3
4
Libell
Table
Chaises
Assiettes
Verres
Quantit disponible
20
150
300
500
8- Une banque dsire informatiser les oprations de retrait et de dpt despces de ses
clients sur leur compte. Un client peut avoir plusieurs comptes la banque et un
compte peut tre commun plusieurs clients (compte joint).
9- Une librairie veut informatiser sa gestion. Elle a des clients dans diffrentes villes qui
lui passent des commandes. Une commande peut comporter plusieurs livres diffrents.
Un livre est crit par un ou plusieurs auteurs et est dit par un diteur.
Cet exercice servira de base la suite du cours.
19 / 24
V.
Semestre 1
Exercices supplmentaires
1. Exercice 1
Le bureau de gestion de la prsidence de la Communaut Europenne a la responsabilit
dorganiser les runions de plusieurs groupes de travail.
Le directeur du bureau doit pouvoir fixer les dates ainsi que le sujet des runions et dsigner le (ou les) groupe(s) de travail qui y participe(nt). Il doit galement pouvoir imprimer un
calendrier de toutes les runions qui ont lieu durant une priode donne.
La secrtaire du bureau doit pouvoir tenir jour un fichier de personnes (avec leurs noms
et leurs coordonnes) ainsi que la composition des groupes de travail. En particulier, elle doit
connatre les coordonnes du responsable de chaque groupe de travail.
1. Identifiez les entits de ce problme.
2. Construisez le MCD qui servira linformatisation de ces tches
3. Ralisez le MLD correspondant.
2. Exercice 2
Le camp de vacances Club Mer du nord souhaite sinformatiser. Ce club possde une
centaine demplacements (tente, caravane ou bungalow). Il propose plusieurs activits sportives, certaines tant encadres par un animateur dautres non. Certaines animations ncessitent
une location de matriel (planche voile, voilier).
La direction du centre dsire stocker des informations sur tous les clients qui passent au
camp : leurs coordonnes, la dure, la date, le type de leur sjour et leur divers locations.
Dans le cas (frquent) ou plusieurs personnes dune mme famille sinscrivent ensemble, on
dsire connatre le nom, le prnom, la date de naissance et les coordonnes de chaque membre
de la famille.
Par ailleurs, le systme devra galement grer les animateurs : leur paie, les activits quils
peuvent encadrer et celles quelles encadrent effectivement une date donne. Les animateurs
tant grs selon une hirarchie stricte, on dsire galement savoir quel est le responsable
ventuel de chaque animateur.
Le systme devra galement grer les emplacements du camp savoir leur type et le client
qui loccupe pour tout sjour.
1. Reprez les diffrentes entits du problme
2. Ralisez le MCD correspondant. Vous veillerez ne pas stocker dinformation redondante.
3. Ralisez le MLD partir du MCD.
3. Exercice 3
Le Conseil Suprieur de lAudiovisuel dsire constituer une base de donnes permettant de
rfrencer toutes les missions de radio nationales diffuses sur les ondes FM. La base doit
contient la rfrence de toutes les missions diffuses rgulirement et toujours la mme
heure, mais pas plus dune fois par jour (par exemple, les flashs dactualit diffuss toutes les
heures correspondent chacun une mission diffrente). Pour simplifier, on considre que
toutes les missions sont quotidiennes. On veut par contre recenser les heures de passage et la
dure des missions. La base doit galement enregistrer les coordonnes des directeurs des
20 / 24
Semestre 1
radios, des animateurs intervenant dans les missions, ainsi que des personnels techniques qui
y travaillent. Il doit ainsi tre possible pour chaque mission de savoir qui lanime, quels sont
les techniciens qui participent son laboration, sur quelle radio est-elle diffuse. Pour chaque radio, on dsire connatre le nom du directeur.
1. Reprez les diffrentes entits du problme
2. Ralisez le MCD correspondant. Vous veillerez ne pas stocker dinformation redondante.
3. Ralisez le MLD partir du MCD.
4. Exercice 4
Il vous est demand de modliser le systme dinformation ncessaire la gestion des animaux du zoo de la ville de, en vue dune informatisation future. Dans ce but, le chef de
projet, M. Admar SUPIAL a interview la directrice du zoo, Mme Nathalie GATOR ; en
voici un extrait :
M. SUPIAL :
Mme GATOR :
Mme GATOR :
"En priorit les tches qui nous donnent le
plus de travail administratif, c'est--dire :
- la gestion de lalimentation des animaux,
- Le suivi journalier des aliments distribus dans les diffrentes zones, avec si
possible un cumul mensuel,
M.SUPIAL :
"Comment identifiez-vous les animaux ?"
Mme GATOR :
"Chaque animal est identifi par un numro unique 6 chiffres qui lui est attribu
ds sa naissance ou son arrive dans le zoo.
Ce numro est reproduit sur lanimal par
tatouage, baguage ou autres procds. On
connat la date de naissance, la date
darrive ainsi que le sexe de chaque ani-
M. SUPIAL :
"Bien sr, je trouve mme que cest une
excellente ide, mais expliquez-moi
dabord certains points ; comment fonctionnez-vous actuellement ?"
21 / 24
Semestre 1
M. SUPIAL :
M. SUPIAL :
Mme GATOR :
M. SUPIAL :
"Que se passe-t-il quand vous tes en rupture de stock de foin par exemple ?"
Mme GATOR :
M. SUPIAL :
M. SUPIAL :
"Comment identifiez-vous les aliments ?"
Mme GATOR :
M. SUPIAL :
"Comment seffectue la distribution des
aliments ?"
M. SUPIAL :
Mme GATOR :
"Comment dterminez-vous les besoins en
aliments ?"
Mme GATOR :
"Les animaux ont des besoins moyens en
nourriture journalire, qui sont fonction de
22 / 24
Semestre 1
La secrtaire transmet chaque jour chaque responsable de zone une liste o figure
la quantit totale daliments distribuer
dans une zone ; celui-ci nous rapporte cette
liste en fin de journe en ayant pris soin
dy noter les aliments et les quantits
REELLEMENT distribues, en fonction
des disponibilits en stock. Puis la secrtaire inscrit ces informations dans le grand
livre destin lhistorique des distributions
par zone. Il serait intressant que les responsables de zone saisissent eux-mme les
aliments distribus."
M. SUPIAL :
"Donnez-moi un exemple de ce que vous
souhaitez afficher devant chaque zone."
Mme GATOR :
"Par exemple devant la zone E3 qui est
lenclos lphants, nous aurions :
Espces reprsentes :
Elphant dAfrique (Loxodonta
Africana)
Famille : Elphantids
Rpartition gographique : Afrique
quatoriale, Afrique du sud
Nombre estim dindividus : 200
000
Espce menace de disparition
M. SUPIAL :
"Si jai bien compris, on ne sintresse
quaux aliments distribuer par zone, la
secrtaire doit donc recalculer les besoins
chaque transfert dun animal dans une autre zone ?"
Mme GATOR :
"Effectivement, et cela arrive trs souvent ;
si
lordinateur
pouvait
permettre
dautomatiser le calcul des distributions
daliments et la mise jour du stock, et si
Question :
Construisez le MCD puis le MLD ncessaire la base de donne qui grera le zoo.
23 / 24
Semestre 1
Sommaire
I.
OBJECTIFS DU COURS................................................................................................ 1
II.
III.
IV.
V.
1.
2.
3.
4.
EXERCICE 1 ................................................................................................................... 20
EXERCICE 2 ................................................................................................................... 20
EXERCICE 3 ................................................................................................................... 20
EXERCICE 4 ................................................................................................................... 21
24 / 24