Vous êtes sur la page 1sur 5

MASTER1, ESC, 2011/2012

UE : INTRODUCTION AUX BASES DE DONNES


T D N 1 : L E M O D L E E N T I T - A S S O C I A T I O N (lments de
solutions)
E

XERCICE

1 : (MOD

LE

E-A)
MDECIN
MDECIN
MDECIN
MDECIN
37
14
Allouche
02
Meddour
01
Mohamed
Debouz Leila
Mokhtar Mouloud
8, Place du
Ali
333, Commune
Tertre
110, place39
23, rue la
43
48
45
Matre assistDocent
Professeur
Matre assistant

MDECIN
Code
Nom
Prnom
Adresse
Age
Grade

Expliquer brivement ce schma en indiquant les concepts du modle E-A impliqus.


SOLUTION :
Dans ce schma, il est prsent :
A gauche, une entit nomme MEDECIN et ayant pour identifiant la proprit code. Les autres
proprits de cette entit sont Nom, Prnom, Adresse, Age et Grade.
A droite, les occurrences de lentit MDECIN (ne sont prsentes que quatre).
Il est prsent aussi les occurrences des diffrentes proprits, y compris lidentifiant. Nous avons :
Les diffrentes occurrences de lidentifiant sont : 01, 02, 14 et 37.
Les diffrentes occurrences de la proprit Nom sont : Mokhtar, Debouz, Meddour et Allouche.
Etc.
E

XERCICE

2 : (MOD

LE

E-A)
JOUEUR

MATCH

Jouer

Code
Nom
Lieu
Score

N-Joueur
Nom
Prnom
Age
Nationalit

Gagner

1.
2.

Expliquer ce schma
Indiquer les cardinalits dans les deux cas suivants:
a. Tournoi de tennis (matchs jous en simple exclusivement)
b. Tournoi de tennis (matchs jous en simple et en double)
SOLUTION :
1. Le schma reprsente un MCD (ou, un diagramme E-A), compos de 2 entits (MATCH, JOUEUR) et de
deux associations binaires (Jouer, Gagner). Lentit MATCH a pour proprits code (cest lidentifiant),
Nom, Lieu et Score. Lentit JOUEUR a pour proprits N-Joueur (cest lidentifiant), Nom, Prnom,
Age et Nationalit.
Dans ce schma, on peut lire :
a. Un match est jou par un (des) joueur(s), un joueur joue dans un (plusieurs) match(s).
b. Un match est gagn par un (des) joueurs (s), un joueur gagne un (plusieurs) match(s).
Cardinalit (dans le cas o on est dans un match de tennis) :
a. Si les matchs sont jous en simple exclusivement : un match est jou deux, il ny a quun seul
gagnant, chaque joueur peut jouer plusieurs matchs (au moins 1, puisquil est dj dans le tournoi)
et chaque joueur peut gagner plusieurs matchs comme il ne peut nen gagner aucun : donc la
cardinalit de lassociation Jouer est 2,2 ct MATCH, et 1,N ct JOUEUR ; et la cardinalit de
lassociation Gagner est 1,1 ct MATCH, et 0,N ct JOUEUR.

b.

Si les matchs sont jous en simple et en double : un match est jou deux ou quatre, il peut y
avoir un seul gagnant (dans le cas des matchs en simple), comme il peut y avoir deux gagnants
(dans le cas des matchs en double), chaque joueur peut jouer plusieurs matchs (au moins 1,
puisquil est dj dans le tournoi) et chaque joueur peut gagner plusieurs matchs comme il ne peut
nen gagner aucun : donc la cardinalit de lassociation Jouer est 2,4 ct MATCH, et 1,N ct
JOUEUR ; et la cardinalit de lassociation Gagner est 1,2 ct MATCH, et 0,N ct JOUEUR.
Remarques : il est prfrable, ds ce stade, de suivre des rgles de bonne conduite :
La proprit Nom est duplique ; elle existe dans MATCH et dans JOUEUR. On procde comme suit ;
dans MATCH, remplacer la proprit Nom par Nom_Match, et dans JOUEUR, remplacer la proprit Nom
par Nom_Joueur.
On peut harmoniser les deux identifiants : code et N-Joueur peuvent tre remplacs par CodeMatch et
CodeJoueur.
Oui mais pas de problme car tous les attributs seront remplacs par des codes synonymes lors de
limplmentation de la base de donnes. (donc pas de souci)
EXERCICE 3 : (PREMIER PAS VERS UNE BDD)
Dans une universit (prenons comme exemple lEcole Suprieure de Commerce), nous avons recens les entits
suivantes : tudiants (omar, fodil, fadla, ), notes (10, 12, ), examens (1 er Examen, 2me Examen, Examen de
Rattrapage), enseignants (Mammeri, Bouchama, ), Unit denseignement (bases de donnes, introduction aux
systmes dinformation, introduction au commerce lectronique, ), dpartements (Finance, Management, ),
salles (salle 1, ), labos (labo1, ), bureaux (B1, B2, ).
1.
Proposer un identifiant et quelques proprits pour chaque entits.
2.
Donner, dans le modle E-A, le schma correspondant pour chaque entit (souligner lidentifiant, et
crire le nom de lentit en MAJUSCULE).
3.
Trouver des associations binaires entre les entits prcdentes (deux deux). Complter les cardinalits
pour en obtenir des diagrammes Entit-Association. Interprter les associations avec leurs cardinalits.
4.
Trouver dautres entits et dautres associations, et construire les diagrammes correspondants.
SOLUTION : (lexercice est revoir, pour le bien fix, mais il
peut faire quand mme un sujet de discussion)
TUDIANT (idtudiant, Nomtud, Prnomtud)
ENSEIGNANT (idEnseignant, NomEns, PrnomEns)
UE (idUE, NomUE, coefficient)
DPARTEMENT (idDpartement, NomDpart)
BUREAU (idBureau, lieu, tage, porte, tlphone)
Salle
Examen
Labo
.
Occuper1 (ENSEIGNANT, BUREAU)
Occuper2 (DPARTEMENT, BUREAU)
Enseigner (ENSEIGNANT, TUDIANT) non un enseignant est en lien avec groupe ou classe pas avec tudiant
Assurer (ENSEIGNANT,UE)
Responsable1 (ENSEIGNANT, DPARTEMENT)
Responsable2 (ENSEIGNANT, UE)
Notes(etudiant, ue, date)
Se deroule (examen, salle)
Appartient (examen, module)..
Les tudiants peuvent appartenir des groupes. Pour une anne donne, un tudiant ne peut appartenir qu un
seul groupe.
GROUPE (idGroupe, libellGroupe)
Cours (enseignant, groupe, salle)
Faire partie (TUDIANT, GROUPE), lassociation peut possder une proprit Anne (cest discuter).
EXERCICE 4 : (BD COLE DOCTORALE)
Une universit veut construire une base de donnes pour grer une cole doctorale. La base de donnes gre des
tudiants qui effectuent une thse dans une quipe de recherche et sont encadrs par un chercheur. Une
quipe de recherche appartient un laboratoire dirig par un chercheur. Dans ces quipes de recherche,
travaillent des chercheurs et chaque quipe est dirige par un chercheur.
1. Recenser les diffrentes entits que doit manipuler la base de donnes.
2. Identifier toutes les associations possibles entre ces entits.
3. Proposer un identifiant pour chaque entit.

4. Proposer des proprits pour chaque entit.


5. Proposer un modle E-A pour cette base de donnes.
6. Calculer toutes les cardinalits.
SOLUTION :
1. Les entits sont marques en bleu gras.
2. Les associations sont marques en rouge gras.
3. CHERCHEUR (idChercheur), EQUIPE (idEquipe), ETUDIANT (idEtudiant), LABORATOIRE (idLabo)
4. CHERCHEUR (idChercheur, Nom_Chercheur, Prnom_Chercheur, Mail_Chercheur, Tl_Chercheur),
EQUIPE (idEquipe, Nom_Equipe, Web_Equipe), ETUDIANT (idEtudiant, Nom_Etudiant,
Prnom_Etudiant, Mail_Etudiant), LABORATOIRE (idLabo, Nom_Labo, Adresse_Labo, Web_Labo)
5. Doctorant dans [ETUDIANT1,1, EQUIPE0,N] ; est encadr [ETUDIANT1,1, CHERCHEUR0,N] ; appartenir
[EQUIPE1,1, LABORATOIRE 1,N] ; est dirig par [LABORATOIRE 1,1, CHERCHEUR0,1] ; travailler dans
[CHERCHEUR1,1, EQUIPE1,N] ; diriger [CHERCHEUR0,1, EQUIPE1,1]
6. Voir rponse 5.
EXERCICE 5 : (BD DUNE DISCOTHQUE PERSONNELLE)
Soit une collection dalbums de musique, comprenant plusieurs types de support (K7, CDsimple, CDdouble,
33trs, 45trs, MP3, ), et videmment plusieurs artistes.
Vous voulez identifier les albums que vous prtez vos ami(e)s rfrenc(e)s dans une liste dabonn (e)s .
Ceci peut tre reprsent par un modle E-A.
Faire le schma du MCD, en reprsentant les entits (souligner les identifiants), les proprits ou attribut (au
minimum, deux par entit), les associations entre entits, ainsi que les cardinalits.
Envisager les deux cas suivants : ( construire deux MCD, un pour chaque cas)
1. Le cas o un album peut exister sur plusieurs types de support.
2. Le cas o un album nexiste que sur un seul type de support.
Rappel mthodologique : un des attributs de lentit Abonn sera Nom_Abonn, soit le nom de la personne qui
a emprunt un album.
SOLUTION :
1. Les entits sont marques en bleu gras. (type support <> support) donc deux entit diffrentes de type
pre fils
2. Daprs le texte, on peut synthtiser comme suit :
un album peut exister sur plusieurs supports.
Un support appartient un seul type de support.
Un album peut tre prt plusieurs abonns (ou amis) : pas lalbum qui est prt mais le
support, logiquement il existe plusieurs supports (exemplaires) pour un album, en plus dans
une discothque on doit grer lemprunt des supports (aller retour des supports)
Attention un mme abonn peut prendre le mme album plusieurs fois mais sur des supports
diffrents, on doit connaitre donc les supports de prt pour viter le vol et pour garder
lhistorique
Dans un album, peuvent participer plusieurs artistes.
Les associations quon peut ressortir sont :
Exister sur [ALBUM, SUPPORT]
Etre prt [ALBUM SUPPORT , ABONN]
Participer [ARTISTE, ALBUM]
3. ALBUM (idAlbum, titreAlbum), SUPPORT (idSupport, liblSupport), ARTISTE (idArtiste, nomArtiste,
prnomArtiste), ABONN (idAbonn, nomAbonn, prnomAbonn, telAbonn)
4. Cas ou un album existe sur un seul support :
Participer [ALBUM1,N, ARTISTE0,N] ; Exister sur [ALBUM1,1, SUPPORT0,N] ; Etre prt [ALBUM0,1, ABONN0,N]
Remarque : dans ce cas, on peut enlever lentit SUPPORT et la remplacer par une proprit dans
lentit ALBUM.
5. Cas ou un album existe sur plusieurs supports :
Participer [ALBUM1,N, ARTISTE0,N] ; Exister sur [ALBUM1,N, SUPPORT0,N] ; Etre prt [ALBUM0,1, ABONN0,N]
EXERCICE 6 : (GESTION DUNE BIBLIOTHQUE)
Un adhrent dune bibliothque possde un identifiant unique. Chaque adhrent est caractris par son nom,
prnom et adresse. Quand un adhrent emprunte un livre, on retient la date demprunt . Un livre est caractris
par un identifiant unique, un numro ISBN, un titre et les auteurs qui lont crit (dcrits par leur numro
identifiant, nom et prnom).
Remarque : le mme livre peut tre emprunt quune seule fois un mme abonn
Proposer un MCD pour cette base de donnes.
SOLUTION :

EXERCICE 7 : (GESTION DES COMMANDES DANS UNE ENTREPRISE)


Une entreprise vend des produits informatiques. Ces produits proviennent de diffrents fournisseurs. Un
client donn peut commander un ou plusieurs articles.
1.
Proposer un diagramme E-A.
2.
Que proposez-vous dans le cas o les fournisseurs peuvent tre eux mme des clients de lentreprise.
SOLUTION :
Les entits sont en bleu gras. (Remarque : produit et article sont deux noms pour une mme entit)
Les associations sont en rouge gras.
EXERCICE 8 : (GESTION DES ACCIDENTS DANS UNE COMPAGNIE
DASSURANCE)
Une socit dassurance possde un groupe de clients. Chaque client possde une ou plusieurs voitures. La
socit sintresse aux accidents de la circulation qui touchent les vhicules quelle assure.
Ce qui est demand est de modliser ces rgles de gestion.
SOLUTION :
Modliser ces rgles de gestion veut dire extraire toutes les entits et toutes les associations, trouver pour
chaque entit un identifiant et des proprits qui la caractrisent, ensuite construire le MCD correspondant.
Les entits :
Client (id-client, nom, adresse, fonction, age) ; je prfre assur et numro assur
Voiture (Num-Immatriculation, marque, modle, anne) ;
Accident (N-Rapport, localisation, date)
Les associations :
Possder : entre CLIENT et VOITURE, cest une association binaire.
Cas Un : si le conducteur est concern par laccident
Faire (une personne fait un accident avec une voiture) : entre ACCIDENT, VOITURE et PERSONNE, cest
une association ternaire, elle a une proprit (quantit de dgts).
Cas Deux : si le conducteur nest pas concern par laccident
Concerner (une voiture est concerne par un accident) : entre ACCIDENT et VOITURE, cest une
association binaire, elle a une proprit (quantit de dgts).
V O I S B I E n que le deuxime cas est plus juste, du moment que la voiture est dj lie au client (prefils) alors le lien accident voiture suffira pour contenir toutes les donnes sur le fait
JE

EXERCICE
9 :
(GESTION
DES
LOGEMENTS
DANS
UNE
AGENCE
IMMOBILIRE)
Une agence de locations dappartements dsire grer sa liste de logements. Elle voudrait connatre
limplantation de chaque logement (quartier, commune) ainsi que les personnes qui les occupent. Pour
chaque type de logement (T1, T2,...), lagence facture une somme forfaitaire en plus du loyer. Pour chaque
logement, on souhaite disposer, en plus de son type, de ladresse, de la superficie ainsi que du loyer. Un individu
occupant un logement est dcrit par son nom, prnom, date de naissance et numro de tlphone. Pour chaque
commune, on souhaite connatre la distance la sparant de lagence ainsi que le nombre dhabitants.
Proposer un modle MCD de cette base de donnes.
SOLUTION :