Vous êtes sur la page 1sur 7

Plan du cours

La théorie de la normalisation
 Problématique

 Analyse d’une relation


• Les dépendances fonctionnelles (DF)
• Les formes normales

Laurent BRISSON  Analyse d’une décomposition


Département LUSSI • Appréciation des décompositions
• Algorithme de décomposition
laurent.brisson@telecom-bretagne.eu

v 2.0 Systèmes d’information et bases de données Page 2 Laurent BRISSON Systèmes d’information et bases de données

Exemple : gestion des livraisons

 Un fournisseur est établi dans une ville et une seule


 Les frais de livraison dépendent de la ville
 La livraison est faite par un fournisseur pour un
produit
1 - Problématique
LA THÉORIE DE LA
NORMALISATION LIVRAISON (n°fournisseur, n°produit, ville, frais, quantité)

Systèmes d’information et bases de données Page 4 Laurent BRISSON Systèmes d’information et bases de données
Exemple : gestion des livraisons Redondances et anomalies

n°fournisseur n°produit Ville Frais Quantité  La table LIVRAISON (n°fournisseur, n°produit, ville,
F220 P430 BREST 100 100 frais, quantité) présente des redondances
d’information !
F310 P005 PARIS 200 10  Une mauvaise conception des entités et des
relations conduit à des relations problématiques
F560 P607 PARIS 200 20
pouvant induire des :
F220 P430 BREST 100 200 • anomalies d’insertion
• anomalies de suppression
F310 P007 PARIS 200 50
• anomalies de modification
 Il est donc important de respecter quelques bons
principes de conception !

Page 5 Laurent BRISSON Systèmes d’information et bases de données Page 6 Laurent BRISSON Systèmes d’information et bases de données

Dépendance fonctionnelle

Pour une relation R(X,Y,Z) où X, Y et Z sont des sous-


ensembles de l’ensemble des attributs :

 On dit qu’il existe une dépendance fonctionnelle


(DF) de X vers Y notée X → Y si à chaque valeur de
X correspond au plus une valeur de Y
2 - Analyse d’une relation
LA THÉORIE DE LA  On dit que X détermine fonctionnellement Y

NORMALISATION  Si deux tuples ont la même valeur pour X alors ils


auront la même valeur pour Y

Systèmes d’information et bases de données Page 8 Laurent BRISSON Systèmes d’information et bases de données
Dépendance fonctionnelle Propriétés d’Amstrong

 Relations
• FOURNISSEUR (n°fournisseur, ville)  Réflexivité
• FRAIS (ville, frais) Si Y ⊆ X alors X → Y
• LIVRAISON (n°fournisseur, n°produit, quantité)  Augmentation
 Dépendances fonctionnelles Si X → Y alors pour tout A on a : X A → Y A
• n°fournisseur → ville  Transitivité
• ville → frais Si X → Y et Y → Z alors X → Z
• n°fournisseur, n°produit → quantité  Pseudo-transitivité
• n°fournisseur, n°produit → ville Si X → Y et WY → Z alors WX → Z
• n°fournisseur, n°produit → frais

Page 9 Laurent BRISSON Systèmes d’information et bases de données Page 10 Laurent BRISSON Systèmes d’information et bases de données

Dépendance fonctionnelle élémentaire Première forme normale (1NF)

Soit X un ensemble d’attributs d’une relation R et A un  Une relation est dite en 1ère forme normale si tous
attribut unique de R et non-inclus dans X. les attributs sont atomiques (c’est à dire
élémentaires et monovalués).
 X → A est dite élémentaire si A ne dépend pas d’un
sous-ensemble de X  Identifiez les relations en 1NF :
1. LIVRAISON(n°fournisseur, listeVille)
 Il n’existe aucun X’ ⊂ X tel que X’ → A 2. LIVRAISON (n°fournisseur, ville)
3. CLIENT (nom, prénoms)
 On ne peut enlever un attribut de X sans changer la 4. CLIENT (nom, prénom1, prénom2)
dépendance fonctionnelle 5. PERSONNE (n°ss, nom, prénom)

Page 11 Laurent BRISSON Systèmes d’information et bases de données Page 12 Laurent BRISSON Systèmes d’information et bases de données
Deuxième forme normale (2NF) Deuxième forme normale (2NF)

 Une relation est dite en deuxième forme normale


(2NF) si et seulement si :  Identifiez les relations en 2NF :
• elle est en 1NF
• chaque attribut qui n’est pas clé est en 1. PRET(n°client, n°isbn, date, nom_client,
dépendance fonctionnelle élémentaire de toute la ville_client, titre_livre)
clé primaire et non d’une partie seulement 2. LIVRAISON(nom, article, adresse, prix)
 PERSONNE (nom, prénom, age, sexe) 3. VOITURE(n°vh, type, marque, puissance, couleur)
4. PROPRIETAIRE(n°ss, n°vh, date, prix)

dépend fonctionnellement de …
Page 13 Laurent BRISSON Systèmes d’information et bases de données Page 14 Laurent BRISSON Systèmes d’information et bases de données

Troisième forme normale (3NF) Troisième forme normale (3NF)

 Une relation est dite en troisième forme normale


(3NF) si et seulement si :
 Identifiez les relations en 3NF :
• elle est en 2NF
• chaque attribut non clé ne dépend pas 1. FOURNISSEUR(id, ville, pays)
fonctionnellement d’un attribut qui n’appartient pas
à la clé 2. PERSONNEL(id, nom, département, bâtiment)
3. PERSONNEL(id, nom, département, poste)
 PLANNING(date, avion, nb_places) 4. VOITURE(n°, type, marque, puis, couleur)

Page 15 Laurent BRISSON Systèmes d’information et bases de données Page 16 Laurent BRISSON Systèmes d’information et bases de données
Forme normale de Boyce-Codd (BCNF)

 Une relation est dite BCNF s’il n’y a pas d’autres


dépendances fonctionnelles élémentaires que celles
entre la clé et les autres attributs de la relation.
3 - Analyse d’une décomposition
 PLANNING(date, compagnie, avion, nb_passagers) LA THÉORIE DE LA
NORMALISATION

Page 17 Laurent BRISSON Systèmes d’information et bases de données Systèmes d’information et bases de données

Décomposition de la relation VOITURE Décomposition sans perte de données ?

Voiture n°vh type puissance couleur marque


872 RH 75 R21 7 Bleue Renault
1. VOITURE (n°vh, type, puissance, couleur, marque) 975 AB 29 R21 7 Beige Renault

2. V1(n°vh, type, couleur)


V1 n°vh type couleur V2 type puissance marque
V2(type, puissance, marque)
872 RH 75 R21 Bleue R21 7 Renault
975 AB 29 R21 Beige
3. V1’ (n°vh, type)
V2’(type, puissance, couleur)
n°vh type puissance couleur marque
V3’(type, marque) 872 RH 75 R21 7 Bleue Renault
975 AB 29 R21 7 Beige Renault

Page 19 Laurent BRISSON Systèmes d’information et bases de données Page 20 Laurent BRISSON Systèmes d’information et bases de données
Décomposition sans perte de données ? Décomposition sans perte de dépendance
Voiture n°vh type puissance couleur marque
872 RH 75 R21 7 Bleue Renault
975 AB 29 R21 7 Beige Renault
 La décomposition de R en R1 et R2 est sans perte
V’1 V’2 V’3 de dépendances si on peut retrouver par transitivité
n°vh type type puissance couleur type marque toutes les DF de R à partir des projections sur R1 et
872 RH 75 R21 R21 7 Bleue R21 Renault R2.
975 AB 29 R21 R21 7 Beige

 La projection de l’ensemble des DF de R sur R1 est


n°vh type puissance couleur marque l’ensemble des DF de R qui ont leurs attributs de
872 RH 75 R21 7 Bleue Renault départ et d’arrivée dans R1.
872 RH 75 R21 7 Beige Renault
975 AB 29 R21 7 Bleue Renault
975 AB 29 R21 7 Beige Renault

Page 21 Laurent BRISSON Systèmes d’information et bases de données Page 22 Laurent BRISSON Systèmes d’information et bases de données

Décomposition Algorithme de décomposition

Soit une relation R de clé K et son ensemble de


dépendances fonctionnelles F
 Jusqu’en 3NF la décomposition se fait :
• sans perte de données 1. Chercher une couverture minimale G pour F
• sans perte de dépendances 2. Réaliser une partition {F1, F2, …} de l’ensemble des
DF tel que dans chaque Fi les dépendances aient la
 En BCNF la décomposition se fait : même partie gauche
• sans perte de données 3. Créer pour chaque Fi une relation Ri avec
• éventuellement, avec perte de dépendances l’ensemble des attributs de Fi
4. Si aucune des relation produites ne contient une clé
de R, ajouter une relation projetée de R sur une de
ses clés
Page 23 Laurent BRISSON Systèmes d’information et bases de données Page 24 Laurent BRISSON Systèmes d’information et bases de données
Algorithme de décomposition L’essentiel

… à retenir !

 La notion de dépendance fonctionnelle


Appliquez l’algorithme aux relations suivantes :

 Les 3 premières formes normales


1. R1(n°fournisseur, ville, frais)

2. R2(n°ss, n°vh, nom, prénom, type, marque, puiss, … à savoir faire !


couleur)

 Mettre en œuvre l’algorithme de décomposition

Page 25 Laurent BRISSON Systèmes d’information et bases de données Page 26 Laurent BRISSON Systèmes d’information et bases de données

Vous aimerez peut-être aussi