Vous êtes sur la page 1sur 20

Chapitre III

Modélisation logique de données

Auditoire : 1 MP-II AD (formation contenue)

1
Plan du Chapitre III

 Introduction
 Concepts du modèle relationnel
 Règles de passage
 Normalisation

2
I. Introduction
 Définition :
« La modélisation logique des données permet de
préparer la représentation informatique des données, tout
en restant indépendant de choix techniques »
 Formalisme utilisé : Modèle relationnel
 Concepts :
 Relation, domaine, attribut, tuple
 Clé primaire, clé étrangère
 Schéma d’une relation, schéma relationnel

3
II. Concepts du modèle relationnel
 Relation
 C’est une table à deux dimensions et qui comporte
obligatoirement un nom.
 Formalisme :
R A1 A2 A3 … An
T1 V11 V12 V13 V1n
T2 V21 V22 V23 V2n
T3 V31 V32 V33 V3n

Tm Vm1 Vm2 Vm3 Vmn

4
II. Concepts du modèle relationnel
 Domaine :
 C’est un ensemble de valeurs qui servent à définir une donnée.
 Exemple : Entier, Date, Caractère
Couleur = {Rouge, Bleue, Jaune…}
Institution = {ESPIN, ENET’Com, ISIMS, FSEG…}

 Attribut :
 Il correspond à une colonne d’une relation.
 Il traduit la notion de propriété du modèle Entité-Association.
 Il est rattaché à un domaine de valeurs.

5
II. Concepts du modèle relationnel
 Tuple ou n-uplet :
 Il correspond à une ligne d’une relation
 Il présente un ensemble de valeurs d’attributs (une valeur par
colonne de la relation).

 Clé primaire :
 C’est un attribut ou un groupe d’attributs dont les valeurs identifient
de façon unique une ligne de la relation.
 Elle doit être mise en évidence dans la liste des attributs qui
caractérisent la relation : soit en gras, soit soulignée…
 Remarque : toute relation possède une clé primaire

6
II. Concepts du modèle relationnel
 Clé étrangère :
 C’est un attribut ou un groupe d’attributs qui se trouve être clé
primaire d’une autre relation.
 Elle permet d’établir le lien entre deux relations.
 Elle doit être mise en évidence dans la liste des attributs qui
caractérisent la relation : soit suivie d’un astérisque (*), soit suivie
d’un dièse (#)…
 Remarque :
 Toute clé étrangère doit vérifier la contrainte d’intégrité référentielle, c’est à
dire que toute valeur saisie pour un attribut clé étrangère doit être
obligatoirement incluse dans l’ensemble des valeurs de la clé primaire
référencée.

7
II. Concepts du modèle relationnel
 Schéma d’une relation :
 Il décrit la structure de la relation. Il est composé de :
 NOM de la relation,
 La liste des ATTRIBUTS suivis de leurs DOMAINES qui caractérisent la relation
 La CLE PRIMAIRE et éventuellement la ou les CLES ETRANGERES.
 Syntaxe :
R (A1 : D1 , A2 : D2 , … , An : Dn *)
Où :
 Ai est l’attribut i et Di le domaine de valeurs de Ai
 La clé primaire est soulignée
 La ou les clés étrangères sont suivies par une étoile

8
II. Concepts du modèle relationnel
 Exemple :
PRODUITS (NuméroProduit : Numérique, LibelléProduit : Texte, PrixUnitaire :
Numérique, CodeUsine : Texte *)
 Remarque : Par souci de simplification d’écriture, on écrit souvent les
schémas des relations sans faire apparaître les noms des domaines.
PRODUITS (NuméroProduit, LibelléProduit, PrixUnitaire, CodeUsine *)

 Schéma relationnel :
 C’est l’ensemble des schémas des relations qui composent la base de
données.

9
III. Règles de passage
 Règle 1 :
 Toute classe d’entités devient une relation, avec pour clé
primaire l’identifiant de la classe d’entités qu’elle traduit.
 Exemple :

Produits
NuméroProduit
LibelléProduit
CatégorieProduit
PrixProduit

 Produits (NuméroProduit, LibelléProduit, CatégorieProduit, PrixProduit)

10
III. Règles de passage
 Règle 2 :
 Toute classe d’associations sans CIF devient une relation,
avec pour clé primaire la somme des identifiants des
classes d’entités qu’elle relie.
 Exemple :
Produits Usines
NuméroProduit Fabrique CodeUsine
LibelléProduit 1,n Quantité 1,n NomUsine
CatégorieProduit AdresseUsine
PrixProduit TéléphoneUsine

 Produits (NuméroProduit, LibelléProduit, CatégorieProduit, PrixProduit)


Usines (CodeUsine, NomUsine, AdresseUsine, téléphoneUsine)
Fabrique (NuméroProduit *, CodeUsine *, Quantité)
11
III. Règles de passage
 Règle 3 :
 Toute classe d’associations avec CIF devient une clé
étrangère.
 Exemple :
Produits Usines
NuméroProduit Fabrique CodeUsine
LibelléProduit 1,1 1,n NomUsine
CatégorieProduit AdresseUsine
PrixProduit TéléphoneUsine

 Produits (NuméroProduit, LibelléProduit, CatégorieProduit,


PrixProduit, CodeUsine *)
Usines (CodeUsine, NomUsine, AdresseUsine, téléphoneUsine)

12
IV. Normalisation
 Définition :
 C’est une démarche spécifique et directe de conception d’un
schéma relationnel optimal de base de données à partir de la
liste des données à modéliser, sans passer par un modèle
Entité-Association.
Dictionnaire de Schéma
Modèle E/A
données Relationnel

Normalisation

 Elle consiste en la décomposition de relations en fonction


de Dépendances Fonctionnelles (DF).
13
IV. Normalisation
 Dépendance fonctionnelle (DF)
 Définition :
Il existe une Dépendance Fonctionnelle (DF) entre deux attributs Ai et
Aj de R si et seulement si à chaque occurrence (ou valeur) de Ai peut-
être associée une et une seule occurrence (ou valeur) de Aj.
 Notation :
Ai → Aj « Ai est en DF avec Aj » ou « Aj dépend fonctionnellement
de Ai »
 Exemples :
 PrixUnitaire → NuméroProduit : Incorrecte
 NuméroProduit → Prix Unitaire : Correcte
 Cas particulier :
 Toute clé primaire d’une relation est en DF avec tout autre attribut de
cette même relation.
14
IV. Normalisation
 Les formes normales
 Première forme normale :
Une relation est en 1ère forme normale si et seulement si :
 Elle possède une clé primaire.
 Tout attribut contient une valeur atomique (une seule valeur par tuple
et attribut).
 Exemple : la relation Employé
Num Nom Ville Proj
0005 Siala Sfax P1, P7
0003 Ksouri Mednine P5, P10, P7

 La relation Employé n’est pas en première forme normale car ses


tuples contient plusieurs numéros de projets auxquels participe un
employé.
15
IV. Normalisation
 Pour passer en 1ère forme normale, on doit :
 Créer un tuple distinct pour chaque engagement dans un projet.
 Redéfinir la clé primaire : elle contient à la fois le numéro
employé et le numéro projet.

La relation Employé (1ère forme normale)


Num Proj Nom Ville
0005 P1 Siala Sfax
0005 P7 Siala Sfax
0003 P5 Ksouri Mednine
0003 P10 Ksouri Mednine
0003 P7 Ksouri Mednine

16
IV. Normalisation
 Deuxième forme normale :
Une relation est en 2ème forme normale si et seulement si :
 Elle est en première forme normale
 Tout attribut n'appartenant pas à une clé ne dépend pas d’une
partie de cette clé.
 Exemple : (Prenons la relation précédente)
 On remarque :
 Num  Nom

 Num  Ville

 Num est une partie de la clé primaire

 La relation Employé n’est pas à la 2ème forme normale.

17
IV. Normalisation
 Pour passer en 2ème forme normale, on doit décomposer la relation
Employé en deux relations Employé et Affectation qui sont toutes les
deux en 2éme forme normale.

Num Nom Ville


Relation 0005 Siala Sfax
Employé
0003 Ksouri Mednine

Num Proj
0005 P1
0005 P7
Relation
0003 P5
Affectation
0003 P10
0003 P7 18
IV. Normalisation
 Troisième forme normale :
Une relation est en 3ème forme normale si et seulement si :
 Elle est en deuxième forme normale
 Tout attribut n'appartenant pas à une clé ne dépend pas d'un
attribut non clé.
 Exemple : Relation Employé
Num Nom Ville Code Désignation
E19 Skhiri Sfax D6 Informatique
E1 Maazoun Tunis D3 Finance
E7 Abid Sfax D6 Informatique
E4 Abidi Gabès D6 Informatique
… … … … …

19
IV. Normalisation
 On remarque :
 Code  Désignation

 Code n’est pas la clé de cette relation

 La relation Employé n’est pas à la 3éme forme normale.


 Pour passer en 3ème forme normale, on doit décomposer la relation
Employé en deux relations Employé et Département qui sont toutes
les deux en 3ème forme normale.
Relation Employé Relation Département
Num Nom Ville Code Code Désignation
E19 Skhiri Sfax D6 D3 Finance
E1 Maazoun Tunis D3 D6 Informatique
E7 Abid Sfax D6 D7 Comptabilité
E4 Abidi Gabès D6 … …
… … … …
20

Vous aimerez peut-être aussi