Académique Documents
Professionnel Documents
Culture Documents
Departement dinformatique
Examen final
Notes importantes :
Documentation permise.
La correction est, entre autres, basee sur le fait que chacune de vos reponses soit claire,
precise, concise et complete.
Ponderation :
1
1. (25 pt)
Produisez un modele entite-relation pour un petit systeme de gestion des examens naux a
luniversite. Ce systeme doit permettre de traiter les informations suivantes.
Solution :
programme titre
nom comprend
N sigle
1 N
dpartement donne cours
1 titre
directeur
comporte
AB
M N
local a lieu examen
no nbPlaces
session date priode
2
2. (25 pt) Traduisez le modele entite-relation de la gure 1 en un schema relationnel. Utilisez la
notation abregee suivante pour denoter une table : R(A1 , . . . , An ). Denotez les cles candidates
par cc(A1 , . . . , Aj ) et les cles etrangeres par ce(A1 , . . . , Ai ) ref R(A1 , . . . , Ai ).
A2
A1 E1
0..1 A3 A4
A9
R1 0..n
E2
A10 N
A5 0..n
M
E3 R2
A6 1
R\ 3
N
A7 E4 A8
Solution :
E1 (A1 , A2 ), cc(A1 )
E2 (A3 , A4 ), cc(A3 ), cc(A4 )
E3 (A5 , A6 ), cc(A5 )
E4 (A5 , A7 , A8 ), cc(A5 , A7 ), ce(A5 ) ref E3
R1 (A1 , A3 , A5 , A9 ), cc(A1 , A3 , A5 ), ce(A1 ) ref E1 , ce(A3 ) ref E2 , ce(A5 ) ref E3
R1 A10 (A1 , A3 , A5 , A10 ), cc(A1 , A3 , A5 , A10 ), ce(A1 ) ref E1 , ce(A3 ) ref E2 , ce(A5 ) ref E3
R2 (A3 , A5 ), cc(A3 , A5 ), ce(A3 ) ref E2 , ce(A5 ) ref E3
3
3. (10 pt) Prouvez ou inrmez les regles dinferences suivantes. Pour une preuve, vous pouvez
utiliser les regles IR1 a IR6; pour inrmer, donnez un contre-exemple.
A B C D E F
a1 b1 c1 d1 e1 f1
a1 b1 c1 d1 e1 f2
AB + sous F2 = AB C
D + sous F2 = D B
E + sous F2 = E D
4
5. (20 pt) Normalisez les relations suivantes jusquen BCNF. Procedez par etape : normaliser
les dabord en 2FN, puis en 3FN et nalement en BCNF. Pour chaque etape :
(a) R(ABCDEF )
et
F = {ABC D, B E, E F }
Solution :
2FN : cle candidate de R : ABC.
La relation R nest en 2FN a cause de B EF .
Normalisation en 2FN : R1 (ABCD) et R2 (BEF ).
3FN : cle candidate de R1 : ABC, R2 : B.
La relation R1 est en 3FN. La relation R2 nest pas en 3FN a cause de E F .
Normalisation en 3FN : R21 (BE), R22 (EF ).
BCNF : cle candidate de R21 : B; cle candidate de R22 : E.
Les relations sont en BCNF.
(b) R(ABCDE)
et
F = {AB C, D B, E D}
Solution :
2FN : cle candidate de R : AE.
La relation R nest pas en 2FN a cause de E BD.
Normalisation en 2FN : R1 (EBD) et R2 (AEC).
3FN : cle candidate de R1 : E, R2 : AE.
La relation R2 est en 3FN, mais pas la relation R1 , a cause de D B.
Normalisation en 3FN : R11 (ED) et R12 (DB)
BCNF : cles candidates de R11 : E, R12 : D
Les relations sont en BCNF.
(c) R(ABCDE)
et
F = {AB C, AE DB, E A}
Solution :
2FN : cle candidate de R : E.
La relation R est en 2FN.
3FN : La relation R nest pas en 3FN a cause de AB C.
Normalisation en 3FN : R1 (EABD) et R2 (ABC).
BCNF : cles candidates de R1 : E, R2 : AB.
Les relations sont en BCNF.
5
6. (10 pt) Un chef vous demande de laider a modeliser les menus de ses restaurants. Il doit
tenir compte de plusieurs criteres. Un repas est constitue dune entree, dun plat principal et
dun dessert. Un chef a plusieurs sous-chefs a ses ordres. Chaque sous-chef est responsable de
specialites qui sont dun type particulier (une entree, un plat principal ou un dessert). Une
specialite demande des ingredients frais (viandes, volailles, legumes, poissons, fruits de mers,
etc) et ceux-ci ne sont pas disponibles a tous les jours de la semaine (par exemple, il ny a
pas de poisson frais le lundi). De plus, chaque sous-chef a son horaire de travail. On ne peut
pas servir chaque specialite a chaque jour; par exemple, le foie gras est a proscrire le lundi,
la clientele daaires ayant lestomac trop a plat en debut de semaine. Finalement, dans un
repas, on ne peut pas combiner nimporte quelle entree avec nimporte quel plat principal, et
nimporte quel dessert. En consequence, le chef vous demande de laider a calculer quels sont
les menus possibles pour chaque jour de la semaine a laide dune base de donnees. Cette BD
doit etre en 5ieme forme normale. Vous ne pouvez utiliser que les attributs suivants.
chef
plat (ex: soupe, foie gras, steak, poutine, petit gateau Vachon; un plat est donc un
element dun menu)
ingredient (ex: viande, poisson, nes herbes)
jour (ex: lundi, . . . , dimanche)
typeSpecialite (entree, plat principal, dessert)
Solution :
platChef(chef,plat)
ingredientPlat(plat,ingredient)
disponibilite(ingredient,jour)
chefHoraire(chef,jour)
platJour(plat,jour)
combinaisonPlat(plat,plat)
typeSpecialite(plat,typeSpecialite)