Bac2 Info.
ISS/L’shi
CHAP IV : CONCEPTION DETAILLEE MODELE LOGIQUE DE DONNEES
IV.1. Introduction
Le modèle conceptuel de données (MCD) fournit une représentation de la structure
de données sous une forme indépendante de la technologie. Ce formalisme est bien adapté à
l’objectif de spécification des besoins en liaison étroite avec les utilisateurs ; en outre, il
présente l’avantage de fournir une description indépendante des choix techniques. Ainsi, cette
description peut demeurer valable quel que soit les matériels et logiciels envisagés pour la
réalisation.
Cependant, comme nous l’avons vu précédemment, le modèle conceptuel de données
ne constitue qu’une étape dans la conception. L’objectif final est de construire une structure
de données manipulable par un ordinateur ; or, la transformation directe du modèle conceptuel
en modèle physique de données se révèle un peu compliquée et valable uniquement pour un
logiciel bien déterminé. Par conséquent, on va transformer le modèle conceptuel de données
(MCD) en modèle logique de données (MLD).
Plusieurs types de solutions existent pour résoudre ce problème. Les plus utilisés à
l’heure actuelle sont :
✓ Les solutions du type fichier
✓ Les solutions du type base de données relationnelles.
IV.2. Transformation du modèle E/R en fichier
a. Transformation des entités (règle)
Chaque entité du modèle conceptuel devient un fichier dans le modèle logique.
L’identifiant de l’entité devient la clé du fichier, chaque propriété de l’entité devient une
rubrique du fichier. Certaines rubriques peuvent être ajoutées aux fichiers pour traduire les
Contraintes d’Intégrités Fonctionnelles (C.I.F.).
b. Transformation des associations non hiérarchique (règle)
Chaque association non hiérarchique (non C.I.F.) sera traduite par un fichier. La clé
du fichier est constituée par la concaténation des identifiants des entités qui participent dans
l’association. Dans le cas où l’association est porteuse des propriétés, les propriétés de
l’association deviennent les rubriques du fichier.
1
Elie Louis KABWE Kionde Kabuta
Concepteur des systèmes d’information
2024-2025
Bac2 Info. ISS/L’shi
c. Transformation des contraintes d’intégrités fonctionnelles CIF (règle)
Dans le cas d’une association hiérarchique (CIF) liant deux entités, on ajoute dans le
fichier correspondant à l’entité « FILS » (cardinalité maximale égale à 1,(1,1) ou (0,1)) une
rubrique ou (des rubriques) correspondant à l’identifiant de l’entité « PERE ». La rubrique ainsi
ajoutée joue le rôle d’une clé secondaire.
Exemple1 : MCD
POSTE
OUVRIER
Travailler sur
▪ N_poste
▪ Code_O Heure_D
(1, n) (1, n) ▪ Nom_poste
▪ Nom_O
▪ Categorie
(1, 1)
CATEGORIE
(1, n)
Appartenir
▪ Code_cat
CIF ▪ Libelle
▪ Indice
MLD FICHIER
FICHIER FICHIER FICHIER FICHIER
OUVRIER TRAVAILLER POSTE CATEGORIE
▪ Code_O (Clé) ▪ Code_O, N_poste (Clé) ▪ N_poste (Clé) ▪ Code_cat (Clé)
▪ Nom_O ▪ Heure_D ▪ Nom_poste ▪ Libelle
▪ Categorie ▪ Indice
▪ Code_cat (Clé sec)
IV.3. Transformation du modèle E/R en modèle relationnel
A. Transformation des entités
Chaque entité du modèle conceptuel devient une table du modèle logique.
L’identifiant de l’entité devient la clé primaire de la table. Chaque propriété de l’entité devient
un attribut de la table.
B. Transformation des associations non hiérarchique
Chaque association non hiérarchique devient une table. La clé de la table est
constituée par la concaténation des identifiants des entités qui participent dans l’association.
2
Elie Louis KABWE Kionde Kabuta
Concepteur des systèmes d’information
2024-2025
Bac2 Info. ISS/L’shi
Dans le cas où les associations sont porteuses des propriétés, ces propriétés deviennent les
attributs de la table.
C. Transformation de CIF
Dans le cas d’une CIF liant deux entités on ajoute dans la table correspondant à
l’entité « FILS » (cardinalités (1,1) ou (0,1)) l’attribut correspondant à l’identifiant de l’entité
« PERE ». L’attribut ainsi ajouté joue le rôle d’une clé étrangère.
Exemple 1 : MCD
MATIERE
ETUDIANT
▪ Code_mat
▪ Matricule Etre
▪ Nom_mat
▪ Nom (1, n) interrogé (1, n) ▪ ponderation
▪ Promo
▪ Age
On suppose que l’étudiant est interrogé une seule fois dans la matière.
MLD
ETUDIANT Etre interrogé MATIERE
▪ Matricule (1, 1) ▪ Code_mat# (1, 1) ▪ Code_mat
▪ Nom ▪ Matricule# ▪ Nom_mat
(1, n) ▪ Cote (1, n) ▪ ponderation
▪ Promo
▪ Age
Exemple 2 : MCD
ETUDIANT Obtenir DIPLOME
▪ Matricule CIF ▪ Code_dpl
(1, 1) (1, n)
▪ Nom ▪ Nom_dpl
▪ Age
MLD
ETUDIANT DIPLOME
▪ Matricule ▪ Code_dpl
(1, 1) (1, n)
▪ Nom ▪ Nom_dpl
▪ Age
Remarque 1 :
Les règles ci-dessous s’appliquent aux associations réflexives :
✓ La clé du fichier ou de la relation est un identifiant de l’entité (cas des associations
réflexives).
✓ Une rubrique ou un attribut correspond à une autre valeur de l’identifiant.
3
Elie Louis KABWE Kionde Kabuta
Concepteur des systèmes d’information
2024-2025
Bac2 Info. ISS/L’shi
Exemple : MCD
EMPLOYE (0, 1)
▪ Matricule Etre marié
▪ Nom CIF
(1, 1)
▪ Categorie
MLD Relationnel
EMPLOYE ✓ Matr_conj = matricule du conjoint
▪ Matricule
✓ Matr et matr conj ont même domaine
▪ Nom
▪ Categorie
▪ Matr_conj #
Remarque 2 :
Dans le cas d’une association du type « OUI-NON », on place dans le fichier ou la table
correspondant à l’entité qui a pour cardinalité minimale 1 (1,1) une propriété
correspondant à l’identifiant de l’entité qui a pour cardinalité minimale 0 (0,1).
L’attribut ou la rubrique ainsi ajouté(e) joue le rôle d’une clé étrangère.
Exemple : soit la règle suivante : « Dans une entreprise un agent ne peut avoir au
maximum qu’une seule conjointe, et une seule conjointe n’appartient qu’à un et un
seul agent ».
M.C.D.
AGENT CONJOINTE
MatrAg (0,1) Etre marié (1,1) CodeConj
NomAg C.I.F. NomConj
M.L.D. Fichier
Fichier AGENT Fichier CONJOINTE
MatrAg (Clé) CodeConj (Clé)
NomAg NomConj
MatrAg (Clé sec)
M.L.D. Relationnel
AGENT CONJOINTE
MatrAg (0,1) (1,1) CodeConj
NomAg NomConj
MatrAg#
4
Elie Louis KABWE Kionde Kabuta
Concepteur des systèmes d’information
2024-2025
Bac2 Info. ISS/L’shi
Remarque 3 :
La validation du modèle conceptuel peut se faire au niveau logique. Pour chaque
traitement prévu, on vérifie que le contenu des fichiers ou des tables permet
d’exécuter les transactions demandées. Si tel est le cas, le modèle conceptuel peut
être considéré comme pertinent. (Contient les données nécessaires pour le
traitement).
Remarque 4 :
Il faut vérifier que chaque table obtenue peut être liée aux autres par les clés
primaires et étrangères car le modèle conceptuel de départ, constitue un ensemble
unique à l’intérieur duquel on peut naviguer partout.
IV.4. Validation des sous schémas
A. Production des sous schémas logiques
Le modèle logique obtenu par les règles de transformation est appelé MODÈLE LOGIQUE
BRUT.
La dernière étape de la validation a isolé pour chaque vue extrême un sous modèle
conceptuel permettant de l’engendrer.
Sous -modèle = sous- schéma
Les traductions de ceux-ci peuvent être extraites du schéma logique brut dont elles
constituent les sous ensemble stricts. Ceux-ci seront le plus souvent des sous schémas
logiques mais l’on devra cependant s’assurer qu’ils ne sont pas simplifiables.
B. Validation des sous schémas
B.1 Introduction
La mise en place d’une organisation logique des données se heurte à la double
contrainte de fournir pour un traitement un ensemble de données le moins volumineux
possible et d’offrir la possibilité d’accès aux informations la plus rapide possible. Or
ces deux contraintes sont opposées puisque c’est la redondance de l’information qui
améliorera les temps d’accord en consultation. Ce sera l’objet de l’optimisation que
de trouver le meilleur équilibre. Pour cela, il est nécessaire de mesurer à la fois
l’aspect STATIQUE (mesure d’encombrement ou volume d’occupation des données) et
l’aspect DYNAMIQUE (mesure de l’activité ou la fréquence des accès) du système
d’information.
5
Elie Louis KABWE Kionde Kabuta
Concepteur des systèmes d’information
2024-2025
Bac2 Info. ISS/L’shi
On commencera par rassembler les mesures dont on dispose à ce niveau de l’analyse
avant de les affiner en suite.
B.2. La quantification du schéma logique et des sous schémas logiques
✓ Critères de quantifications (éléments de la quantification)
➢ La taille des attributs ou propriétés (longueur maximale)
➢ Le nombre des tuples ou nombre d’occurrences d’une entité.
➢ Le nombre des tables
➢ Quantifier les cardinalités (Cardinalité minimale, cardinalité maximale,
cardinalité moyenne).
✓ Démarche
➢ Pour chaque table logique, déterminer la taille occupée en mémoire
par un tuple (nombre maximum des caractères contenu dans un tuple
ou longueur (L)),
➢ Déterminer le nombre moyen des tuples dans une table logique (N),
➢ Valoriser les cardinalités des associations ou des liaisons (MIN, MAX,
MOY).
L’occupation de la table sera calculée par la formule : L * N. où :
- N : est le nombre d’occurrences de la table et
- L : la longueur de chaque occurrence.
Pour la même table, l’occupation de la mémoire secondaire (index) sera calculée par
la formule suivante : LI*N où :
LI est la longueur de l’index.
L’index est l’équivalent de la table de matière d’un fichier, son rôle est de faciliter la
recherche dans le fichier ou pour améliorer la recherche dans le fichier ou encore
diminuer le nombre d’accès en lecture dans le fichier
Exemple : Schéma logique brut
La longueur de la clé primaire de la table LIVRAISON : 5
La longueur de la clé primaire de la table CLIENT : 10
La longueur de la clé primaire de la table PRODUIT : 10
La longueur de la clé primaire de la table LIGNE LIVRAISON : 15
6
Elie Louis KABWE Kionde Kabuta
Concepteur des systèmes d’information
2024-2025
Bac2 Info. ISS/L’shi
LIVRAISON CLIENT
N= 5000 N= 100
L= 10 (1, 1, 1) (1, 300, 50) L= 100
(1, 10, 5.5)
(1, 1, 1)
LIVRAISON
LIGNE LIVRAISON
N= 250
N= 27500 (1, 1, 1) (1, 1000, 110) L= 26
L= 30
N= Nombre de tuples
L= Taille d’un tuple ou longueur en caractères déterminer à partir du dictionnaire
des données
B.3. Mesure de l’encombrement
Muni du schéma logique quantifié, il est alors possible de chiffrer le volume
d’informations. Au niveau logique, l’encombrement des données est fonction :
- Des données mémorisées (attributs de chaque table)
- Des index construits de chaque table
- Des index construits sur d’autres attributs.
Exemple : Considérant le schéma quantifié précédent, calculer l’encombrement.
L’encombrement sera égal à la somme de l’espace occupé par les tables et de celui par
les index.
On aura donc :
✓ Espace table
Table CLIENT : 100 * 100 = 10.000 Octets
Table LIVRAISON : 5.000 * 10 = 50.000 Octets
Table LIGNE LIVRAISON : 27.500 * 30 = 825.000 Octets
Table PRODUIT : 250 * 26 = 6.500 Octets
Ceci donne 10.000 + 50.000 + 825.000 + 6.500 = 918.500 Octets
✓ Espace index
Table CLIENT : (10+2) * 100 = 1.200 Octets
Table LIVRAISON : (5+2) * 5.000 = 35.000 Octets
Table LIGNE LIVRAISON : (15+2) * 27.500 = 467.500 Octets
Table PRODUIT : (10+2) * 250 = 3.000 Octets
Ceci donne 1.200 + 35.000 + 467.500 + 3.000 = 506.700 Octets
7
Elie Louis KABWE Kionde Kabuta
Concepteur des systèmes d’information
2024-2025
Bac2 Info. ISS/L’shi
✓ L’encombrement sera donc égal à 918.500 + 506.700 = 1.425.200 Octets.
C. Vue logique
Une vue logique est un ensemble structuré de données utilisées comme un tout. (Un
ensemble des données cohérant).
Les données composant la vue peuvent provenir de plusieurs tables logiques
différentes.
La vue logique permet de faire un lien avec un traitement. Nous avons 4 types de vues
qui sont :
✓ Un résultat d’un traitement (out put)
✓ Input d’un traitement (entrées d’un traitement)
✓ Résultat d’une interrogation
✓ Transfert d’information d’un traitement vers un autre traitement.
Exemple 1. La liste des derniers achats sur un client (résultat d’une interrogation)
INFORMATIONS CLIENT
NOM : Durand PRENOM : Paul
CODE CLIENT : C10017 ADRESSE : 21000 Dijon
DERNIERS ACHATS
DATE : 10/01/2017
N°ARTICLES DESIGNATION PRIX
1004 Crayon 0.50
1010 Stylo 1.50
9800 Bureau 200
La vue logique doit être analysée quant aux informations contenues et à leur structure
(description statique) et quant aux accès aux données (description dynamique).
Solution exemple 1 :
SOUS SCHEMA CONCEPTUEL
(1,1) HABITER (1,n)
CLIENT C.I.F. VILLE
Code_Client Code_Ville
Nom_Client Nom_Ville
Prenom_Client (1,n)
ACHETER
ARTICLE Qte DATE_ACHAT
Num_Article DateAch
(1,n) (1,n)
Designation
8
Elie Louis KABWE Kionde Kabuta
Concepteur des systèmes d’information
2024-2025
Bac2 Info. ISS/L’shi
SOUS SCHEMA LOGIQUE
CLIENT (1, 1,1) (0, 300,50) VILLE
Code_Client Code_Ville
Nom_Client Nom_Ville
Prenom_Client
Code_Ville#
(1, 16, 5,5)
(1, 1,1)
(1, 100, 12,5) DATE_ACHAT
DateAch
ACHAT
Num_Article# (1, 1,1)
Code_Article#
DateAch#
Qte ARTICLE
Num_Article
(1, 1,1) (1, 100,16) Designation
Prix
ACCES AUX DONNEES
✓ L’utilisateur saisit le nom du client et déclenche le traitement,
✓ Le traitement recherche dans la base des données les informations sur le client
puis les autres données demandées,
✓ Le traitement affiche ces informations sur l’écran.
On appelle chemin d’accès, le chemin qu’on va parcourir dans la base de données pour
NB rechercher les informations demandées dans la vue.
Il faut trouver les tables qui nous fourniront les informations qui devront répondre à notre
traitement.
CLIENT VILLE
(1, 1,1) 2 (0, 300,50)
1 Code_Client Code_Ville
Nom_Client Nom_Ville
Prenom_Client
Code_Ville#
(1, 16, 5,5)
3
(1, 1,1)
4 (1, 100, 12,5) ARTICLE
Num_Article
ACHAT Désignation
Num_Article# (1, 1,1) Prix
Code_Article#
DateAch#
Qte
9
Elie Louis KABWE Kionde Kabuta
Concepteur des systèmes d’information
2024-2025
Bac2 Info. ISS/L’shi
MATRICE DE CHEMIN D’ACCES
Elle a en ligne et en colonne les tables retenues dans le sous schéma logique.
CLIENT VILLE ACHAT ARTICLE
CLIENT (2) (3)
1 (1+1) accès (1*5,5) accès
VILLE
ACHETER (4)
(5,5*1) accès
ARTICLE
Total d’accès : 1 + 2 + 5.5 + 5.5 = 14 accès
La mesure d’activité, c’est le nombre total d’accès multiplié par la fréquence d’utilisation.
Fréquence : 50/Jour
Mesure d’activité 14 * 50 = 700 accès
D. Optimisation du schéma logique
D.1. Objectif
L’optimisation affine la définition des bases de données (MLD) en tenant compte des
contraintes techniques (du relationnel) et des besoins d’accès aux données définies par
les traitements.
D.2. Problématique de l’optimisation
Pourquoi faut-il optimiser ?
L’obtention du schéma logique brut (MLD) est dérivée exclusivement d’une analyse
sémantique des données. Elle ignore les problèmes :
✓ De performance des accès aux données (un temps minimal d’accès aux
données) ;
✓ Du coût de stockage des données.
Comment optimiser ?
L’optimisation consiste à retrouver un compromis acceptable entre le volume de
données (redondance de données = dénormalisation) et la performance des accès
(temps d’accès aux données). Plus on fait des consultations, plus on a besoin de
normaliser tandis que plus on fait des mises à jour, plus on a besoin de normaliser.
Il s’agit là d’un problème de recherche opérationnelle.
10
Elie Louis KABWE Kionde Kabuta
Concepteur des systèmes d’information
2024-2025
Bac2 Info. ISS/L’shi
D.3. Démarche
✓ La création des redondances pour simplifier les accès (diminuer les accès en
dupliquant une propriété dans une autre table.
✓ Le regroupement des tables pour éviter les joints (retour à 1NF ou 2NF).
✓ La création d’index.
✓ LA suppression des tables inutiles (table avec une seule propriété qui est la clé).
11
Elie Louis KABWE Kionde Kabuta
Concepteur des systèmes d’information
2024-2025