Université Kasdi Merbah Ouargla
Département d’informatique
MASTER ASR Module BDA
Novembre 2019
TD n° 4 : Normalisation d’une relation
Solutions
Exercice 1
Pour chaque relation ci-dessous:
- identifier les redondances éventuelles dans sa population,
- établir le (un) graphe minimum de ses dépendances,
- définir son (ses) identifiant(s),
- définir sa forme normale et la justifier,
- si nécessaire, proposer une décomposition optimale.
a. Pièce: description des pièces employées dans un atelier de montage.
Pièce (N°pièce, prix-unit, TVA, libellé, catégorie) avec les dépendances fonctionnelles suivantes:
N°pièce prix-unit, TVA, libellé, catégorie
catégorie TVA
b. Prime: liste des primes attribuées au personnel technique en fonction du type de machine sur
lequel il travaille
Prime (N°type-machine, nom-machine, N°techn, montant-prime, nom-techn) avec les
dépendances fonctionnelles suivantes:
N°type-machine nom-machine
N°techn nom-techn
(N°type-machine, N°techn) montant-prime
c. Employé: description d'un employé travaillant sur un projet d'un laboratoire.
Employé ( NoEmp, NoLab, NoProj, NomEmp, NomProj, adresse) avec les dépendances
fonctionnelles suivantes:
(NoEmp, NoLab) NoProj
NoEmp NomEmp
NoEmp adresse
NoProj NomProj
d. Adresse
Adresse (rue, ville, code-postal) avec les dépendances fonctionnelles suivantes:
code-postal ville
(rue, ville) code-postal
Réponses :
a) Pièce
- Redondance des valeurs de TVA / catégorie
- Graphe de dfs min
N° pièce
libellé prix_unit catégorie TVA
- Identifiant : N°pièce
- Relation en 2FN mais non en 3FN (l’attribut TVA dépend de l’attribut non clé catégorie)
- Décomposition (relations en 3FN)
Pièce (N°pièce, prix-unit, libellé, catégorie*)
Catégorie (catégorie, TVA)
b) Prime
- Redondance sur les attributs nom_machine et nom_techn, une machine qui n’a pas de
technicien sur laquelle travaille ne sera pas stockée, un technicien qui ne travaille sur aucune
machine ne sera pas stocké
- Graphe de dfs min
Page : 1 [Link]
N° type_machine n° techn
Nom-machine montant-prime nom_techn
- Identifiant : (N°type_machine + n°techn)
- relation en 1FN mais non en 2FN (les attributs nom-machine et nom_techn dépendent d’une
partie de la clé)
- Décomposition (relations en 3FN)
Machine (N° type_machine, Nom-machine)
Technicien (n° techn, nom_techn)
Prime (N° type_machine*, n° techn*, montant_prime)
c) Employé:
- Redondance sur les attributs NomEmp, adresse et NomProj
- Graphe de dfs min
NoEmp NoLab
NomEmp adresse NoProj
NomProj
- Identifiant : (NoEmp + NoLab)
- relation en 1FN mais non en 2FN (les attributs NomEmp, adresse et NomProj dépendent
d’une partie de la clé)
- Décomposition (relations en 3FN)
Employé (NoEmp, NomEmp, adresse)
Projet (NoProj, NomProj)
ELP (NoEmp*, NoLab, NoProj*)
d) Adresse:
- Adresse (rue, ville, code-postal)
- Redondance sur la ville pour le même code_postal
- Graphe de dfs min
ville rue
Code_postal
Ville Rue Code_postal
Alger Hassiba ben bouali 16014
Constantine El_khroub 25100
- relation en 3FN mais non en BCFN (Forme Normale de Boyce Codd) le membre gauche de la
df code_postal ville n’est pas une clé
- 2 Identifiants : (ville + rue) et (code-postal+rue)
- Décomposition (relations en BCFN)
R1 (ville, rue)
R2 (code-postal, rue)
- Une relation est en BCFN si quelle que soit la df, le membre gauche est une clé
Exercice 2
Soit R la relation suivante, avec les dépendances:
R (A, B, C, D, E, F, G)
ABC, ABD, ABE, ABF, BC, DE, DF, GA
Page : 2 [Link]
a. Etablir le (un) graphe minimum de dépendances. Quel(s) est (sont) l'identifiant(s) de R ?
b. Quelle est la forme normale de R? Justifier votre réponse.
c. Proposer une décomposition optimale de R.
Réponses :
a) R (A, B, C, D, E, F, G)
On supprime les dfs déduites par transitivité : AB E et ABF
On supprime la df non élémentaire AB C
A B C
D E
F
Identifiant : (G+B)
b) R n’est pas en 2FN car A dépend de G (une partie de la clé) et non de G,B
c) Décomposition en 3FN
R1(D, E, F) R2(B, C) R3(A,B, D) R4(G,A) R5(G,B)
Exercice 3: Université
On veut décrire les séances de travaux dirigés (TD) des unités de valeurs (UV) d'un département d’une
université par la relation suivante:
FAC (N°TD, salle, horaire, N°enseignant, nom-enseignant, prénom-enseignant, N°UV, nomUV,
N°étudiant, nom-étudiant, prénom-étudiant, adresse-étud., date-ins.)
L'enseignement, dans ce département est divisé en unités de valeurs, chacune étant identifiée par un
numéro ou par son nom.
Un étudiant s'inscrit à une ou plusieurs UV (six au maximum), et pour chaque UV a un groupe de TD
(N°TD). Les inscriptions dans les différentes UV sont indépendantes les unes des autres. On mémorise
la date d'inscription de chaque étudiant à chaque UV (date-ins.).
Il y a une séance de TD par semaine pour chaque UV. Chaque TD a lieu dans une salle donnée et à un
horaire donné. Les groupes de TD sont numérotés 1, 2, 3, ... pour chaque UV. Un enseignant assure un
ou plusieurs groupes de TD d'une ou plusieurs UV. Un groupe de TD d'une UV est assuré toute l'année
par le même enseignant, plusieurs enseignants pouvant se partager les différents groupes de TD d'une
même UV. Exceptionnellement, par manque d'enseignants, un même enseignant peut assurer
simultanément deux TD différents situés dans deux salles contiguës.
On ne conserve que le prénom usuel de chaque personne.
a. Quelles redondances et anomalies de mise à jour sont impliquées par cette relation FAC?
b. Établir un graphe minimal des dépendances fonctionnelles de FAC. Quel est son (ses)
identifiant(s)? Quelle est sa forme normale?
c. Proposer une bonne décomposition de FAC et préciser la forme normale des nouvelles relations.
Réponses :
a) FAC (N°TD, salle, horaire, N°enseignant, nom-enseignant, prénom-enseignant, N°UV, nomUV,
N°étudiant, nom-étudiant, prénom-étudiant, adresse-étud., date-ins.)
Fac contient des redondances : nom-enseignant, prénom-enseignant, nomUV, nom-
étudiant, prénom-étudiant, adresse-étud., date-ins.)
b) Les dfs
(N°UV+ N°etudiant) date_ins
(N°UV+ N°etudiant) N° TD
(N°UV+ N°TD) salle
Page : 3 [Link]
(N°UV+ N°TD) horaire
(N°UV+ N°TD) N° enseignant
N°UV nomUV
N°étudiant nom-étudiant
N°étudiant prénom-étudiant
N°étudiant adresse-etud
N° enseignant nom-enseignant
N°enseignant prénom-enseignant
c) Fac est en 1FN mais n’est pas en 2FN
Les identifiants : (N°UV+N°étudiant) et (N°UV+N°TD)
Les relations en 3FN:
UV (N°UV, nomUV)
Etudiant (N°étudiant, nom-étudiant, prénom-étudiant, adresse-etud)
Enseignant (N° enseignant, nom-enseignant, prénom-enseignant)
Inscrit (N°UV, N°étudiant, date_ins, N°TD)
SéanceTD (N°UV, N°TD, N°enseignant, salle, horaire)
Page : 4 [Link]