Vous êtes sur la page 1sur 100

BASES DE DONNEES

Partie 1 :
La méthode MERISE

Ce que l'on conçoit bien s'énonce


clairement, et les mots pour le dire
arrivent aisément.
L'Art poétique - Nicolas Boileau
(1636-1711)
PLAN
 POURQUOI UNE MÉTHODE D’ANALYSE ?
 APPROCHE SYSTÉMIQUE : DÉFINITION ET
FONDEMENTS DE BASE

 MÉTHODE D’ANALYSE MERISE :


 MODÉLISATION DES DONNÉES :
 NORMALISATION DES DONNÉES

JAKJOUD Widad 2
Pourquoi une méthode d’analyse?
• Une méthode d'analyse et de conception est un procédé
qui a pour objectif la formalisation des étapes précédent
le codage d'un système (logiciel) afin de rendre le logiciel
final plus fidèle aux besoins du client.
• Pour ce faire, on part d'un document qui collecte les
spécifications fonctionnelles qui n’est autre que le
besoin tel qu'il est exprimé par le client, complété
éventuellement par des audits auprès des futurs
utilisateurs du logiciel.
JAKJOUD Widad 3
Pourquoi une méthode d’analyse?
• L’analyse se base sur cette spécification des besoins:
• La première étape consiste, éventuellement, à analyser
l’existant en termes de procédés existants et de données
circulantes
• Une autre étape permet d’élaborer la liste des résultats
attendus du logiciel final, ces résultats sont exprimés en
terme de fonctionnalités, de performance, de robustesse,
de maintenance, de sécurité, d'extensibilité, etc.

JAKJOUD Widad 4
Pourquoi une méthode d’analyse?
• La fin de la phase d’analyse introduit la phase de
conception responsable de la description de manière
claire des modèles du futur logiciel en utilisant une
méthode (ou un langage) de modélisation.

JAKJOUD Widad 5
Pourquoi une méthode d’analyse?
• Pour bien assimiler le rôle des méthodes d’analyse et
de modélisation, il est intéressant de survoler le cycle
de vie du logiciel

JAKJOUD Widad 6
Pourquoi une méthode d’analyse?

Etude de faisabilité :
On détermine si le logiciel à développer vaut la peine d’être mis en œuvre suivant le
besoin du marché.

JAKJOUD Widad 7
Pourquoi une méthode d’analyse?

Spécification des besoins fonctionnels


On détermine les fonctionnalités que doit posséder le logiciel à savoir les exigences
des utilisateurs (collecte des exigences) ainsi que les taches et les structures à
informatiser (analyse du domaine).

JAKJOUD Widad 8
Pourquoi une méthode d’analyse?

Conception générale
On détermine la structure du système (le modèle du système) à savoir les différentes
parties du système et la façon dont les différentes parties du système interagissent
entre elles.

JAKJOUD Widad 9
Pourquoi une méthode d’analyse?

Conception détaillée
On écrit les algorithmes de chaque partie du système.

JAKJOUD Widad 10
Pourquoi une méthode d’analyse?

Codage
Programmation des algorithmes et iplementation des modéles

JAKJOUD Widad 11
Pourquoi une méthode d’analyse?

Tests et Mise en Oeuvre


On essaye le logiciel sur des données d’exemple pour s’assurer qu’il fonctionne
correctement. Puis on le fournit au client.

JAKJOUD Widad 12
Pourquoi une méthode d’analyse?

Maintenance
C’est la mise à jour du logiciel et son amélioration pour assurer de son opérabilité.

JAKJOUD Widad 13
Approche systémique et Systèmes
d’Information
• La conception des Sis s’est inspirée de plusieurs approches ainsi que de l’evolution technique
de l’informatique en général:
• Au départ … l’approche cartésienne (démarche scientifique, mathématique) :
– Traite avec les systèmes compliqués (caractérisés par un nombre important d'éléments).
– Permet la décomposition du problème à résoudre en plusieurs morceaux (sous
problèmes) plus facile à aborder. Mais cette approche ne marche que si le problème est
décomposable d’une manière descendante. Si les éléments sont imbriqués et corrélés,
alors il faut une vision d'ensemble, une approche systémique.
• Puis l’approche systémique:
– Traite avec les systèmes de grande complexité ( caractérisé par un nombre important de
relations entre les éléments qui le constituent)
– Vise le problème dans sa globalité et non par décomposition en sous problèmes. Les
différentes parties du problèmes sont reliées via des relations de dépendance
réciproque

JAKJOUD Widad 14
Approche systémique
• L’analyse et la conception des solutions informatique se sont inspirées de plusieurs
approches ainsi que de l’evolution technique de l’informatique en général:

• Au départ … l’approche cartésienne (démarche scientifique, mathématique) :

– Traite avec les systèmes compliqués (caractérisés par un nombre important


d'éléments).

– Permet la décomposition du problème à résoudre en plusieurs morceaux


(sous problèmes) plus facile à aborder. Mais cette approche ne marche que si
le problème est décomposable d’une manière descendante. Si les éléments
sont imbriqués et corrélés, alors il faut une vision d'ensemble, une approche
systémique.
JAKJOUD Widad 15
Approche systémique
• L’analyse et la conception des solutions informatique se sont inspirées de plusieurs
approches ainsi que de l’evolution technique de l’informatique en général:

• Puis l’approche systémique:

– Traite avec les systèmes de grande complexité ( caractérisé par un nombre


important de relations entre les éléments qui le constituent)

– Vise le problème dans sa globalité et non par décomposition en sous


problèmes. Les différentes parties du problèmes sont reliées via des relations
de dépendance réciproque

JAKJOUD Widad 16
Approche systémique
Quelques définitions
Système
• Ensemble d'éléments en interaction dynamique d’une manière organisée et
coordonnée en vue d'atteindre un objectif, qui évolue dans un environnement.
[Joël de Rosnay (1975)]
• Quelque chose (n'importe quoi d'identifiable) qui fait quelque chose (activité,
fonction) et qui est doté d'une structure, qui évolue dans le temps, dans quelque
chose (environnement), pour quelque chose (finalité). [J.J. Le Moigne (1977)]
• Exemple : Une entreprise dont les éléments sont les services, les départements...
les buts sont "produire", vendre", "faire du profit"... ; l'interaction est concrétisée
par la coopération interne, les relations avec la clientèle et les fournisseurs...
Organisation: Une organisation peut être vue comme l’interconnexion de trois
systèmes qui collaborent afin d’atteindre les objectifs

JAKJOUD Widad 17
Approche systémique
Décomposition systémique d’une organisation en systèmes:

JAKJOUD Widad 18
Représentation empruntée à Le Moigne
Approche systémique
Décomposition systémique d’une organisation en systèmes:

le système opérant :
Réalisation des tâches d'exécution (chaîne de
montage d'automobiles, actions de
représentants de commerce, établissement de
documents administratifs...).

le système de pilotage :
Prise de décision, fixation des objectifs et des
moyens (peut exister à tous le niveaux de
l'entreprise : le directeur, le chef de service, le
responsable d'une unité de production …),

JAKJOUD Widad 19
Approche systémique
Décomposition systémique d’une organisation en systèmes:

le système d'information :
Intermédiaire entre les deux précédents, il est
chargé de véhiculer l'information interne et externe:
Il informe, après analyse, le système de pilotage des
performances du système opérant, et transmet à ce
dernier les instructions du système de pilotage. Son
rôle est de:
• Stocker, traiter l’information (rapprochements,
calculs, comparaisons), diffuser l’information.
• Déclencher les décisions programmées
• Fournir des informations aux décideurs pour aider à
la prise de décisions non programmées
• Coordonner les tâches en assurant les
communications entre les deux autres systèmes
JAKJOUD Widad 20
MERISE : Méthode d’analyse
• Historique
• La démarche MERISE:
– Cycle d’abstraction
– Cycle de vie logiciel
• Modélisation des données
• Modélisation des traitements

JAKJOUD Widad 21
MERISE : Historique
• Merise : Méthode d’Etude et de Réalisation Informatique pour les Systèmes
d’Entreprise
• Méthode dont les bases théoriques ont été établies entre 1974 et 1978 par une
équipe d’ingénieurs et de chercheurs. (le ministère de l’industrie Français).
• Méthode formalisée, complète, détaillée:
– Formalisée : utilisation d’outils logiques (graphes, règles)

– Complète : de la décision d’informatisation à la mise en œuvre effective

– Détaillée : de la technique d’interview jusqu’au commentaires des programmes

• Méthode qui analyse le problème en séparant les données des traitements même
si les interactions entre les deux sont profondes et s'enrichissent mutuellement
(validation des données par les traitements et réciproquement).
– Les données - un schéma de base de données
– Les traitements les différentes fonctionnalités à programmer par la suite.
JAKJOUD Widad 22
MERISE et Cycle de vie
• Décrire la vie du logiciel à partir de l’idée de base jusqu'à
l’implantation en passant par une succession d’étapes :

Besoin
Partie conception
Schéma directeur

Cycle de vie logiciel


Cahier de charge
MERISE
Etude préalable
Cahier de charge fonctionnel

Etude détaillée
Solution opérationnelle

Partie réalisation
Etude technique et
réalisation

Maintenance
JAKJOUD Widad 23
MERISE et Cycle de vie
• Décrire la vie du logiciel à partir de l’idée de base jusqu'à l’implantation en passant
par une succession d’étapes :
– Schéma directeur :
• Description de l’approche globale du projet en termes d’objectifs et de contraintes.

• Définition des domaines d’études

• Planification du développement de chaque domaine

• Evaluation des moyens en personnel et matériel

– Etude préalable :
• Recensement et évaluation des différentes solutions possibles. L’étude doit être suffisamment
complète pour permettre une évaluation raisonnable et pour en retirer la solution adéquate à
l’organisation.

• Détermination du système de l’étude afin de donner aux responsables les moyens de prendre
des décisions sur les solutions possibles en fonction des objectifs globalement définis
précédemment (schéma directeur).

JAKJOUD Widad 24
MERISE et Cycle de vie
• Décrire la vie du logiciel à partir de l’idée de base jusqu'à l’implantation en passant
par une succession d’étapes :
– Etude détaillée :
• Une spécification fonctionnelle complète du futur SI à partir des choix retenus à
l’issue de l’étude préalable :
• Permet d aboutir à un accord sur la conception générale de la nouvelle solution.
• Ensuite, la conception détaillée sera mise en œuvre. Au niveau des données et des
traitements on procède à une description complète (MCD, MCT, MLD, MOT).
• Chacune des phases est complètement décrite en spécifiant les données en entrée,
les traitements et les données en sortie.

JAKJOUD Widad 25
MERISE et Cycle de vie
• Décrire la vie du logiciel à partir de l’idée de base jusqu'à l’implantation en passant
par une succession d’étapes :
– Etude technique et réalisation
• la traduction informatique des spécifications issues de l’étude détaillée.
– Définition de la structure de la base de données.
– Construction du logiciel
– Ecriture des programmes dans un langage de programmation.
– Génération des fichiers de la base de données.
– Installation et déploiement des programmes
– Formation des utilisateurs et vérification du bon fonctionnement du système

– Maintenance :
• Corrections ; adaptation aux évolutions de l’entreprise.
JAKJOUD Widad 26
MERISE et Cycle d’abstraction
• MERISE propose un cycle d’abstraction de quatres niveaux :
• La méthode propose un modèle pour chaque niveau d’abstraction et pour chaque
volet (Données, traitements).
– Niveau conceptuel : Représentation des informations et des traitements sans
tenir compte de l’organisation des données ou bien des moyens matériels. On
répond à la question QUOI ? en termes de données et de traitements.
– Niveau organisation : Définition de l’organisation des ressources humaines et
matérielles. On intègre les détailles de l’organisation en termes de ressources
humaines (postes de travail), de lieu et de temps. On répond aux questions :
QUI fait QUOI ? QUAND et OU ?

JAKJOUD Widad 27
MERISE et Cycle d’abstraction
• MERISE propose un cycle d’abstraction de quatres niveaux :
• La méthode propose un modèle pour chaque niveau d’abstraction et pour chaque
volet (Données, traitements).
– Niveau logique : On intègre les moyens COMMENT sans avoir à déterminer les
caractéristiques techniques :
• Le schéma de la base de données (relationnel, hiérarchique ou réseau)

– Niveau physique : On répond toujours à COMMENT + caractéristiques


techniques.
• Les fichiers, les programmes
• L’implantation physique des données et des traitements

JAKJOUD Widad 28
MERISE et Cycle d’abstraction
• MERISE propose un cycle d’abstraction de quatres niveaux :
• La méthode propose un modèle pour chaque niveau d’abstraction et pour chaque
volet (Données, traitements).
– Niveau logique : On intègre les moyens COMMENT sans avoir à déterminer les
caractéristiques techniques :
• Le schéma de la base de données (relationnel, hiérarchique ou réseau)

– Niveau physique : On répond toujours à COMMENT + caractéristiques


techniques.
• Les fichiers, les programmes
• L’implantation physique des données et des traitements

JAKJOUD Widad 29
Niveaux Données Traitements
Conceptuel Modèle conceptuel des données : Modèle conceptuel des traitements :
QUOI? MCD MCT
Signification des informations sans Activité du domaine sans préciser les
contraintes techniques, organisationnelle ressources et leur organisation
ou économique.
Modèle entité – association
Organisationnel Modèle organisationnel des données : Modèle organisationnel des traitements :
QUI, OU, MOD MOT
QUAND? Signification des informations avec Fonctionnement du domaine avec les
contraintes organisationnelles et ressources utilisées et leur organisation
économiques. (Répartition des données ; (répartition des traitements sur les postes
droit des utilisateurs) de travail, notion de temps et de lieu)
Logique Modèle logique des données: Modèle logique des traitements
COMMENT? MLD MLT
Description des données tenant compte Description des procédures et fonctions
de leurs conditions d’utilisation indépendamment des langages
(contraintes d’intégrité, historique, d’implantation.
techniques de mémorisation).
Modèle relationnel
Physique Modèle physique des données Modèle physique des traitements
COMMENT? MPD MPT
Description de la BD dans la syntaxe du Architecture technique des programmes
SGBD Optimisation des traitements
JAKJOUD Widad 30
(procedures stockées, triggers…).
Niveaux Données Traitements
Conceptuel Modèle conceptuel des données : Modèle conceptuel des traitements :
QUOI? MCD MCT
Signification des informations sans Activité du domaine sans préciser les
contraintes techniques, organisationnelle ressources et leur organisation
ou économique.
Modèle entité – association
Organisationnel Modèle organisationnel des données : Modèle organisationnel des traitements :
QUI, OU, MOD MOT
QUAND? Signification des informations avec Fonctionnement du domaine avec les
contraintes organisationnelles et ressources utilisées et leur organisation
économiques. (Répartition des données ; (répartition des traitements sur les postes
droit des utilisateurs) de travail, notion de temps et de lieu)
Logique Modèle logique des données: Modèle logique des traitements
COMMENT? MLD MLT
Description des données tenant compte Description des procédures et fonctions
de leurs conditions d’utilisation indépendamment des langages
(contraintes d’intégrité, historique, d’implantation.
techniques de mémorisation).
Modèle relationnel
Physique Modèle physique des données Modèle physique des traitements
COMMENT? MPD MPT
Description de la BD dans la syntaxe du Architecture technique des programmes
SGBD Optimisation des traitements
JAKJOUD Widad 31
(procedures stockées, triggers…).
MODELE CONCEPTUEL DES DONNEES

Objectif:

• Recenser les différentes données du cahier de charge,


• Sélectionner les propriétés à partir de ces données,
• Regrouper les propriétés sous forme d’ Entités,
• Etablir les relations entre les Entités sous forme
d’Associations,
• Représenter les données sous forme d’ Entités/Associations.

JAKJOUD Widad 32
MODELE CONCEPTUEL DES DONNEES

Définitions: Propriété
• Propriété : information élémentaire (non déductible d’autres informations)
présentant un intérêt pour le domaine étudié.
Exemples :
– Dans la gestion des commandes d’une société de vente, les données : « référence
article », « désignation article », « prix unitaire HT », « taux de TVA » sont des
propriétés importantes pour l’entreprise. La donnée « prix unitaire TTC » n’est,
d’après la définition, pas une propriété car ses valeurs peuvent être retrouvées à
partir des propriétés «prix unitaire HT » et « taux de TVA ».

– La propriété « Adresse » dont les occurrences sont comme suit :


• 30 rue NASSR CASA
• 12 rue les fleurs SAFI
• 9 rue les camomilles MARRAKECH….
N’est pas élémentaire car elle peut être décomposée en trois propriétés : la rue, le
numéro et la ville

JAKJOUD Widad 33
MODELE CONCEPTUEL DES DONNEES

Définitions: Propriété
• Occurrence: valeur prise par une propriété.
Exemple : Des occurrences de la propriété « référence article » sont par
exemple : « ART1L13 », « ART3B23 », « ART0A22 », …

• La non-redondance : chaque propriété, correctement identifiée, n’apparaisse


qu’une seule fois dans le modèle.

JAKJOUD Widad 34
MODELE CONCEPTUEL DES DONNEES

Définitions: Entité
• Représentation d'un élément matériel ou immatériel ayant un rôle dans le
système que l'on désire décrire. Exemple Livre
• Collection de propriétés, dont on peut identifier (sans ambigüité) chaque
occurrence, grâce à une propriété particulière : « l'identifiant ».
• Identifiant : Propriété ayant une valeur unique pour chaque occurrence.
Exemple : ISSBN du livre.
• Occurrence: instance (représentant) de l’entité dans le monde réel.
Exemple : le livre « La clé de Salomon ».

JAKJOUD Widad 35
MODELE CONCEPTUEL DES DONNEES

Définitions: Entité
• Exemples:
Soit une Renault Laguna noire, une Peugeot 306 blanche et une Ford
Fiesta grise. Il s'agit de 3 occurrences d'une seule entité voiture.
Peugeot306
F00000
Voiture Blanche
Immatricule Peugeot
Couleur 2009
Marque
Modèle
RenaultLaguna
A120983
Noire
FordFiesta
Renault
B45232 2012
Grise
Ford
JAKJOUD Widad 2014 36
MODELE CONCEPTUEL DES DONNEES

Définitions: Entité
• Exemples:
Soit l’entité ARTICLE qui regroupe les propriétés : Référence, Désignation
et PrixUnitaireHT.
Clavier
cl3A2
Article Clavier sans fil
Référence 209.2
Désignation
PrixUnitaireHT

Souris
Sc43R2
Souris InfraRouge
DisqueDur
145.6
Hdd3C43
Disque dur 1024Go
350.45
JAKJOUD Widad 37
MODELE CONCEPTUEL DES DONNEES

Définitions: Association
• Association: Un lien entre deux ou plusieurs entités.
Voiture Proprietaire
Immatricule Appartient CIN
Couleur Nom
Marque Prenom
Modèle

• Une occurrence d’une association est une instance de l’association dans le


monde réel
Peugeot306 Mr. ALAMI
F00000 Appartient E45325
Blanche ALAMI
Peugeot Samir
2009

JAKJOUD Widad 38
MODELE CONCEPTUEL DES DONNEES

Définitions: Association

• Une association peut posséder des propriétés.

Commande Article
Numero Contient Référence
quantite
DateCMD Désignation
PrixUnitaireHT

JAKJOUD Widad 39
MODELE CONCEPTUEL DES DONNEES

Définitions: Cardinalités

• La cardinalité d’une entité par rapport à une association s’exprime sous forme
d’un couple : (cardinalité minimale ; cardinalité maximale)
• Cardinalité minimale : nombre minimal de fois où une occurrence de l’entité
participe à une relation de ce type vaut 0 ou 1 en général.
• Cardinalité maximale :nombre maximal de fois où une occurrence de l’entité
participe à une relation de ce type vaut 1 ou « n » (pour « plusieurs fois »)

Voiture Personne
Immatricule Appartient (cardMin2, cardMax2) CIN
(cardMin1, cardMax1)
Couleur Nom
Marque Prenom
Modèle

JAKJOUD Widad 40
MODELE CONCEPTUEL DES DONNEES

Définitions: Cardinalités

• CardMin1 : « étant donné une voiture, combien de personnes au minimum peuvent


en être le(s) propriétaire? »
• CardMax1 : « et au maximum ? »
• CardMin2 : « et pour une personne, combien peut avoir de voitures au minimum ? »
• CardMax2 : « et au maximum ? »

Voiture Personne
Immatricule (1, 1) Appartient (cardMin2, cardMax2)
(0, n) CIN
(cardMin1, cardMax1)
Couleur Nom
Marque Prenom
Modèle

JAKJOUD Widad 41
MODELE CONCEPTUEL DES DONNEES

Définitions: Cardinalités

• Les quatre combinaisons standardisées utilisées sont :


– (0,1) : au moins zéro au plus un.
– (1,n) : au moins un au plus n
– (1,1) : au moins un au plus un . Ceci entraîne une contrainte appelée la contrainte
d’intégrité fonctionnelle notée CIF
– (0,n) au moins zéro au plus n.

JAKJOUD Widad 42
MODELE CONCEPTUEL DES DONNEES

Etapes de construction d’un MCD:

1. Recenser les données sous forme de Dictionnaire de Données complet


2. Etablir le Dictionnaire de Données Réduit (élimination des données
concaténées et calculées).
3. Etablir le Graphe de Dépendances Fonctionnelles (GDF)
4. En Déduire le Modèle Conceptuel des Données

JAKJOUD Widad 43
MODELE CONCEPTUEL DES DONNEES

1. Dictionnaire des données

• Un tableau de données collectées lors des entretiens ou de l’étude des


documents. Ou même directement à partir du cahier de charge.
• Comporte des colonnes :
– codeDonnées : le code symbolique qui apparaitra dans le MCD;
– Contenu : une description courte des données ;
– Nature : Elémentaire – Calculé – Concaténé;
– Type : Numérique, Alphabétique, Alphanumérique, Date,..;
– …

JAKJOUD Widad 44
MODELE CONCEPTUEL DES DONNEES

1. Dictionnaire des données : cas concret

JAKJOUD Widad 45
CodeDonnées Contenu Nature Type
numCL Numéro du client Élémentaire Alphanumérique

nomCL MODELE CONCEPTUEL DES DONNEES


Nom du client Élémentaire Alphabétique

prCl Prénom du client Élémentaire Alphabétique

adrCl 1. Dictionnaire des données : cas concret


Adresse du client Élémentaire Alphanumérique

codeP Code postal du client Élémentaire Numérique

villeCl Ville du client Élémentaire Alphabétique

telCl Téléphone du client Élémentaire Alphanumérique

dateAchat Date de l’achat Élémentaire Date

codeArt Code de l’article acheté Élémentaire Alphanumérique

desArt Designation de l’article Élémentaire Alphabétique

qtite Quantité achetée d’un article Élémentaire Numérique

prixUnitaire Prix de l’unité Élémentaire Numérique

totalLigne Total d’une ligne de la facture calculé Numérique

totalFact Total de la facture calculé Numérique

numFact JAKJOUD Widad


Numéro de la facture Élémentaire Numérique 46
CodeDonnées Contenu Nature Type
numCL Numéro du client Élémentaire Alphanumérique

nomCL MODELE CONCEPTUEL DES DONNEES


Nom du client Élémentaire Alphabétique

prCl Prénom du client Élémentaire Alphabétique

adrCl 1. Dictionnaire des données : cas concret


Adresse du client Élémentaire Alphanumérique

codeP Code postal du client Élémentaire Numérique

villeCl Ville du client Élémentaire Alphabétique

telCl Téléphone du client Élémentaire Alphanumérique

dateAchat Date de l’achat Élémentaire Date

codeArt Code de l’article acheté Élémentaire Alphanumérique

desArt Designation de l’article Élémentaire Alphabétique

qtite Quantité achetée d’un article Élémentaire Numérique

prixUnitaire Prix de l’unité Élémentaire Numérique

totalLigne Total d’une ligne de la facture calculé Numérique

totalFact Total de la facture calculé Numérique

numFact JAKJOUD Widad


Numéro de la facture Élémentaire Numérique 47
MODELE CONCEPTUEL DES DONNEES

2. Graphe de dépendances fonctionnelles:

• Dépendance fonctionnelle ?

– Une donnée B dépend fonctionnellement (ou est en dépendance


fonctionnelle) d’une donnée A lorsque la connaissance de la valeur de la
donnée A nous permet la connaissance d’une et au maximum une seule
valeur de B.
AB
– Exemple: la connaissance de la valeur d’un numéro de client nous permet de
connaître sans ambiguïté la valeur d’un et d’un seul nom de client

numCl  nomCl

JAKJOUD Widad 48
MODELE CONCEPTUEL DES DONNEES

2. Graphe de dépendances fonctionnelles:

• Dépendance fonctionnelle composée

– Une dépendance fonctionnelle qui comporte plusieurs attributs est dite


composée:
numFact, codeArt,dateAchat  qtite

Connaissant le numéro de la facture, le code de l’article et la date d’achat nous


déterminons d’une façon certaine la quantité achetée.

JAKJOUD Widad 49
MODELE CONCEPTUEL DES DONNEES

2. Graphe de dépendances fonctionnelles:

• Dépendance fonctionnelle élémentaire

– Une dépendance fonctionnelle AB est élémentaire s’il n’existe pas une
donnée C, sous-ensemble de A, décrivant une dépendance fonctionnelle
CB:

– Exemple:
numClnomCl
numFact, codeArt, dateAchatqtite
numFact,numClnomCl

JAKJOUD Widad 50
MODELE CONCEPTUEL DES DONNEES

2. Graphe de dépendances fonctionnelles:

• Dépendances fonctionnelles entre propriétés

– Toutes les propriétés d’une entité lui sont liées à partir des DF. Cet ensemble
se liaisons constitue un sous graphe.

Exemple :
numCL

nomCl prCl adrCl telCl

JAKJOUD Widad 51
MODELE CONCEPTUEL DES DONNEES

2. Graphe de dépendances fonctionnelles:

• Dépendances fonctionnelles entre entités

– Les entités sont liées via des DF entre ces identifiants:

Exemple :
numF

JAKJOUD Widad 52
CodeDonnées Contenu Nature Type
numCL Numéro du client Élémentaire Alphanumérique

nomCL MODELE CONCEPTUEL DES DONNEES


Nom du client Élémentaire Alphabétique

prCl Prénom du client Élémentaire Alphabétique

adrCl 1. Dictionnaire des données : cas concret


Adresse du client Élémentaire Alphanumérique

codeP Code postal du client Élémentaire Numérique

villeCl Ville du client Élémentaire Alphabétique

telCl Téléphone du client Élémentaire Alphanumérique

dateAchat Date de l’achat Élémentaire Date

codeArt Code de l’article acheté Élémentaire Alphanumérique

desArt Designation de l’article Élémentaire Alphabétique

qtite Quantité achetée d’un article Élémentaire Numérique

prixUnitaire Prix de l’unité Élémentaire Numérique

totalLigne Total d’une ligne de la facture calculé Numérique

totalFact Total de la facture calculé Numérique

nFact JAKJOUD Widad


Numéro de la facture Élémentaire Numérique 53
MODELE CONCEPTUEL DES DONNEES

2. Graphe de dépendances fonctionnelles:

codeArt dateAchat

NumF

qtite numCl

desArt prixUnitaire nomCL prCl AdrCl CodeP VilleCl telCl

JAKJOUD Widad 54
MODELE CONCEPTUEL DES DONNEES

2. Graphe de dépendances fonctionnelles directe:


A  B C
codeArt dateAchat

NumF

qtite numCl

desArt prixUnitaire nomCL prCl AdrCl CodeP VilleCl telCl

JAKJOUD Widad 55
MODELE CONCEPTUEL DES DONNEES

2. Graphe de dépendances fonctionnelles directe: Détection des entités

codeArt dateAchat

NumF

qtite numCl

desArt prixUnitaire nomCL prCl AdrCl CodeP VilleCl telCl

JAKJOUD Widad 56
MODELE CONCEPTUEL DES DONNEES

2. Graphe de dépendances fonctionnelles directe: Détection des Associations:


DateAchat

DateAchat Facture
Article
numF
CodeArt
DesArt
PrixUnitaire Client

qtite numCl
nomCl
prCl
adrCl
codeP
villeCl
telCL
JAKJOUD Widad 57
MODELE CONCEPTUEL DES DONNEES
3. MCD:
DateAchat

DateAchat
Article
Facture
1,n
CodeArt 1,n
Concerne numF
DesArt
PrixUnitaire 1,n qtite
1,1
Client

numCl
1,n nomCl
Passe
prCl
adrCl
codeP
villeCl
telCL
JAKJOUD Widad 58
MODELE CONCEPTUEL DES DONNEES

• Cas particulier: associations réflexives


Exemple
On souhaite gérer le personnel d'une entreprise: Chaque
personnel a une matricule, un nom, une fonction, un salaire, une
commission, une date de prise de service, travaille dans un
département caractérisé par son identifiant, son nom
(commercial, RH, comptable ..) et son adresse. Un personnel a
un chef hiérarchique (lui-même personnel), et un seul, à
l’exception du DG qui n’a pas de chef hiérarchique. Un personnel
peut ne pas avoir de subordonnés.

JAKJOUD Widad 59
MODELE CONCEPTUEL DES DONNEES

• Cas particulier: associations réflexives


Exemple
On souhaite gérer le personnel d'une entreprise: Chaque
personnel a une matricule, un nom, une fonction, un salaire,
une commission, une date de prise de service, travaille dans un
département caractérisé par son identifiant, nom (commercial,
RH, comptable ..) et son adresse. Un personnel a un chef
hiérarchique (lui-même personnel), et un seul, à l’exception du
DG qui n’a pas de chef hiérarchique. Un personnel peut ne pas
avoir de subordonnés.

JAKJOUD Widad 60
MODELE CONCEPTUEL DES DONNEES

1. Dictionnaire des données :


CodeDonnées Contenu Nature Type
matricule Matricule du personnel Élémentaire Alphanumérique

nom Nom du personnel Élémentaire Alphabétique

fct Fonction du personnel Élémentaire Alphabétique

salaire Salaire du personnel Élémentaire Alphanumérique

commision Commission du personnel Élémentaire Numérique

datePriseServ Date de prise de service du personnel Élémentaire Alphabétique

idDep Identifiant du departement Élémentaire Alphanumérique

nomDep Nom du departement Élémentaire Date

adrDep Adresse du departement Élémentaire Alphanumérique

JAKJOUD Widad 61
MODELE CONCEPTUEL DES DONNEES

2. Graphe de dépendances fonctionnelles:

nomDep adrDep

idDep

matricule

nom fct salaire commission datePriseServ

JAKJOUD Widad 62
MODELE CONCEPTUEL DES DONNEES

3. Graphe de dépendances fonctionnelles directe

nomDep adrDep

idDep

A  B C matricule

nom fct salaire commission datePriseServ

JAKJOUD Widad 63
MODELE CONCEPTUEL DES DONNEES

3. Graphe de dépendances fonctionnelles directe : détection


des entités
nomDep adrDep

idDep

matricule

nom fct salaire commission datePriseServ

JAKJOUD Widad 64
MODELE CONCEPTUEL DES DONNEES

3. Graphe de dépendances fonctionnelles directe : détection


des associations
Departement

idDep
nomDep
adrDep

Personnel

Matricule
Nom
Fct
Salaire
Commission
JAKJOUD Widad datePriseServ 65
MODELE CONCEPTUEL DES DONNEES
Departement
3. MCD
idDep
nomDep
adrDep
1,n

Travaille
dans
1,1
Personnel
0,n
Matricule
Chef de Nom
Fct
0,1 Salaire
Commission
JAKJOUD Widad datePriseServ 66
TD1
• Exercice 1
Une usine de montage des pièces pour voitures désire s’informatiser. L’usine est composée de
plusieurs ateliers de montages, chaque atelier comprend plusieurs machines et techniciens.
Une pièce de montage est caractérisée par un numéro de pièce, un prix unitaire, un taux de TVA,
un prix TTC, un libelle et une catégorie. Une catégorie est identifiée par un code, une description.
Le code de la catégorie détermine le taux TVA.
Un technicien est caractérisé par son numéro et son nom.
Une machine est caractérisée par son numéro, son atelier et le montant de la prime.
Une prime est attribuée au technicien en fonction de la machine sur laquelle il travaille.
Un technicien travaille sur une seule machine tandis qu'une machine peut être utilisée par
plusieurs techniciens.

2017/2018 JAKJOUD Widad 67


CodeDonnées Contenu Nature Type
numPiece Numéro de la piéce Élémentaire Alphanumérique

pu
MODELE CONCEPTUEL DES DONNEES
Prix unitaire de la piece Élémentaire Numérique

tauxTVA Taux de la TVA Élémentaire Numerique


1. Dictionnaire des données : cas concret
prixTTC Prix toute taxe comprise Calculé Numerique

Lib Libelle de la piece Élémentaire Alphanumerique

codeCat Code de la categorie Élémentaire Alphanumerique

descCat Description de la categorie Élémentaire Alphabétique

numTech Numero du technicien Élémentaire Numerique

nomTech Nom du technicien Élémentaire Alphabétique

numMach Numero de la machine Élémentaire Numerique

Atelier Atelier de la machine Élémentaire Alphanumerique

montantPrime Montant de la prime Élémentaire Numérique

JAKJOUD Widad 68
CodeDonnées Contenu Nature Type
numPiece Numéro de la piéce Élémentaire Alphanumérique

pu
MODELE CONCEPTUEL DES DONNEES
Prix unitaire de la piece Élémentaire Numérique

tauxTVA Taux de la TVA Élémentaire Numerique


1. Dictionnaire des données : cas concret
prixTTC Prix toute taxe comprise Calculé Numerique

lib Libelle de la piece Élémentaire Alphanumerique

codeCat Code de la categorie Élémentaire Alphanumerique

descCat Description de la categorie Élémentaire Alphabétique

numTech Numero du technicien Élémentaire Numerique

nomTech Nom du technicien Élémentaire Alphabétique

numMach Numero de la machine Élémentaire Numerique

atelier Atelier de la machine Élémentaire Alphanumerique

montantPrime Montant de la prime Élémentaire Numérique

JAKJOUD Widad 69
TD1

Graphe de dépendances fonctionnelles directe:

numPiece codeCat

lib
descCat
pu tauxTVA

numTech

nomTech
numMach

montantPrime
atelier

JAKJOUD Widad 70
TD1

Graphe de dépendances fonctionnelles directe:

numPiece codeCat

lib
descCat
pu tauxTVA

numTech

nomTech
numMach

montantPrime
atelier

JAKJOUD Widad 71
TD1
Piece Catégorie
numPiece (1,1) Appartient (1,n) codeCat
Pu descCat
lib tauxTVA

Machine
Technicien
numMach (1,n) Concerne (1,1)
atelier numTech
montantPrime nomtech

2017/2018 JAKJOUD Widad 72


TD1
• Exercice 1
Une usine de montage des pièces pour voitures désire s’informatiser. L’usine est composée de
plusieurs ateliers de montages, chaque atelier comprend plusieurs machines et techniciens.
Une pièce de montage est caractérisée par un numéro de pièce, un prix unitaire, un taux de TVA,
un prix TTC, un libelle et une catégorie. Une catégorie est identifiée par un code, une description.
Le code de la catégorie détermine le taux TVA.
Un technicien est caractérisé par son numéro et son nom.
Une machine est caractérisée par son numéro, son atelier et le montant de la prime.
Une prime est attribuée au technicien en fonction de la machine sur laquelle il travaille.
Un technicien travaille sur une seule machine tandis qu'une machine peut être utilisée par
plusieurs techniciens.
Le montage de chaque pièce utilise plusieurs machines, nous désirons connaitre, pour chaque
pièce, les machines mises en œuvre pour son montage.

2017/2018 JAKJOUD Widad 73


TD1

Graphe de dépendances fonctionnelles directe:

numPiece codeCat

lib
descCat
pu tauxTVA

numTech

nomTech
numMach

montantPrime
atelier

JAKJOUD Widad 74
TD1
Piece Catégorie
numPiece (1,1) Appartient (1,n) codeCat
Pu descCat
lib tauxTVA
(1,n)

Faite par
(1,n)

Machine
Technicien
numMach (1,n) Concerne (1,1)
atelier numTech
montantPrime nomtech

2017/2018 JAKJOUD Widad 75


TD1
• Exercice 2
Une usine de montage des pièces pour voitures désire s’informatiser. L’usine est composée de
plusieurs ateliers de montages, chaque atelier comprend plusieurs machines et techniciens.
Une pièce de montage est caractérisée par un numéro de pièce, un prix unitaire, un taux de TVA,
un prix TTC, un libelle et une catégorie. Une catégorie est identifiée par un code, une description.
Le code de la catégorie détermine le taux TVA.
Un technicien est caractérisé par son numéro et son nom.
Une machine est caractérisée par son numéro et son atelier.
Une prime est attribuée au technicien en fonction des machines sur lesquelles il travaille.
Un technicien travaille sur plusieurs machines, connaissant le technicien et la machine sur
laquelle il travaille, on détermine le montant de la prime.

2017/2018 JAKJOUD Widad 76


CodeDonnées Contenu Nature Type
numPiece Numéro de la piéce Élémentaire Alphanumérique

pu
MODELE CONCEPTUEL DES DONNEES
Prix unitaire de la piece Élémentaire Numérique

tauxTVA Taux de la TVA Élémentaire Numerique


1. Dictionnaire des données : cas concret
prixTTC Prix toute taxe comprise Calculé Numerique

Lib Libelle de la piece Élémentaire Alphanumerique

codeCat Code de la categorie Élémentaire Alphanumerique

descCat Description de la categorie Élémentaire Alphabétique

numTech Numero du technicien Élémentaire Numerique

nomTech Nom du technicien Élémentaire Alphabétique

numMach Numero de la machine Élémentaire Numerique

Atelier Atelier de la machine Élémentaire Alphanumerique

montantPrime Montant de la prime Élémentaire Numérique

JAKJOUD Widad 77
CodeDonnées Contenu Nature Type
numPiece Numéro de la piéce Élémentaire Alphanumérique

pu
MODELE CONCEPTUEL DES DONNEES
Prix unitaire de la piece Élémentaire Numérique

tauxTVA Taux de la TVA Élémentaire Numerique


1. Dictionnaire des données : cas concret
prixTTC Prix toute taxe comprise Calculé Numerique

lib Libelle de la piece Élémentaire Alphanumerique

codeCat Code de la categorie Élémentaire Alphanumerique

descCat Description de la categorie Élémentaire Alphabétique

numTech Numero du technicien Élémentaire Numerique

nomTech Nom du technicien Élémentaire Alphabétique

numMach Numero de la machine Élémentaire Numerique

atelier Atelier de la machine Élémentaire Alphanumerique

montantPrime Montant de la prime Élémentaire Numérique

JAKJOUD Widad 78
TD1

Graphe de dépendances fonctionnelles directe:

numPiece codeCat

lib
descCat
pu tauxTVA

numTech
montantPrime
nomTech
numMach

atelier

JAKJOUD Widad 79
TD1

Graphe de dépendances fonctionnelles directe:

numPiece codeCat

lib
descCat
pu tauxTVA

numTech
montantPrime
nomTech
numMach

atelier

JAKJOUD Widad 80
TD1
Piece Catégorie
numPiece (1,1) Appartient (1,n) codeCat
Pu descCat
lib tauxTVA

Machine
Technicien
numMach (1,n)
Concerne (1,n)
atelier numTech
montantPrime
montantPrime nomtech

2017/2018 JAKJOUD Widad 81


TD1
• Exercice 3
Les régions côtières marocaines, souhaitent mettre en place une structure permettant
de suivre l'état des plages. Une région est composée de plusieurs plages.
Une plage est caractérisé par la ville à laquelle elle appartient, sa longueur en km, la
nature du terrain : sable fin, rochers, galets, ... sachant qu'il peut y avoir des plages
avec sable et rochers.
Pour chaque région, on a un responsable dont on connait le code de l’identité
nationale (CIN), le nom et le prénom.
Une ville est identifiée par son nom, son code postal et le nombre de touristes annuel
qu'elle reçoit.

2017/2018 JAKJOUD Widad 82


TD1

1. Dictionnaire des données

CodeDonnées Contenu Nature Type


longPlage Longueur de la plage Élémentaire Numerique

natureTerrain Nature du terrain Élémentaire Alphabetique

CINRes Code d’Identité Nationale du responsable Élémentaire Alphanumerique

nomRes Nom du responsable Élémentaire Alphabetique

prRes Prenom du responsable Élémentaire Alphabetique

nomVille Nom de la ville Élémentaire Alphabetique

codeP Code postal de la ville Élémentaire Alphabétique

nbTouristes Nombre de touristes annuels


JAKJOUD Widad
Élémentaire Numerique
83
TD1

Graphe de dépendances fonctionnelles directe:

numPiece codeCat

lib
descCat
pu tauxTVA

numTech
montantPrime
nomTech
numMach

atelier

JAKJOUD Widad 84
TD1

Graphe de dépendances fonctionnelles directe:

numPiece codeCat

lib
descCat
pu tauxTVA

numTech
montantPrime
nomTech
numMach

atelier

JAKJOUD Widad 85
MODELE CONCEPTUEL DES DONNEES:
Règles de normalisation
• Intérêt : La vérification du MCD afin de l’obtention d’un modèle du
système réel qui minimise la redondance et les risques d'anomalies lors
des mises à jour.
• LA PREMIÈRE FORME NORMALE 1FN :
– Toutes les entités et associations possèdent un identifiant.
– Aucune propriété n’est à valeurs multiples (propriétés atomiques).

– EXEMPLE :

Facture Facture Produit


numFacture numFacture 1,n Concerne 1,n reference
….
dateFacture dateFacture …
listeProduits
listeProduits n’est pas atomique

JAKJOUD Widad 86
MODELE CONCEPTUEL DES DONNEES:
Règles de normalisation
• LA DEUXIÈME FORME NORMALE 2FN :
• L’entité ou association est en deuxième forme normale si :
– Elle est en première forme normale.
– Toutes les dépendances entre les propriétés sont élémentaires : Les propriétés d’une
entité ne doivent dépendre que de l’identifiant de l’entité et non d’une partie de cet
identifiant.

– EXEMPLE : SOIT LE MCD SUIVANT ET CES RÈGLES DE GESTION


• Un élève passe plusieurs contrôles dans la même matière mais dans des dates différentes.
Pour chaque contrôle, on garde une note (NoteCC).
• Un élève a un seul projet par matière , on garde une note de projet (NoteP).

JAKJOUD Widad Nomatiere, Numeleve  NoteP 87


MODELE CONCEPTUEL DES DONNEES:
Règles de normalisation
• LA DEUXIÈME FORME NORMALE 2FN :
• L’entité ou association est en deuxième forme normale si :
– Elle est en première forme normale.
– Toutes les dépendances entre les propriétés sont élémentaires : Les propriétés d’une
entité ne doivent dépendre que de l’identifiant de l’entité et non d’une partie de cet
identifiant.

– EXEMPLE : SOIT LE MCD SUIVANT ET CES RÈGLES DE GESTION

JAKJOUD Widad 88
MODELE CONCEPTUEL DES DONNEES:
Règles de normalisation
• LA TROISIÉME FORME NORMALE 3FN :
• L’entité ou association est en deuxième forme normale si :
– Elle est en deuxième forme normale.
– Toutes les DF entre les propriétés sont directes :
• Les propriétés d’une entité doivent dépendre de l’identifiant de l’entité de manière
directe
• Toute propriété n’appartenant pas à un identifiant ne dépend pas d’un attribut non
identifiant.

– EXEMPLE : SOIT LE MCD SUIVANT ET CES RÈGLES DE GESTION


– Type  marque et puissance

JAKJOUD Widad 89
MODELE CONCEPTUEL DES DONNEES:
Règles de normalisation
• LA TROISIÉME FORME NORMALE 3FN :
• L’entité ou association est en deuxième forme normale si :
– Elle est en deuxième forme normale.
– Toutes les DF entre les propriétés sont directes :
• Les propriétés d’une entité doivent dépendre de l’identifiant de l’entité de manière
directe
• Toute propriété n’appartenant pas à un identifiant ne dépend pas d’un attribut non
identifiant.

– EXEMPLE : SOIT LE MCD SUIVANT ET CES RÈGLES DE GESTION


– Type  marque et puissance

JAKJOUD Widad 90
MODELE LOGIQUE DES DONNEES:

• Pour passer du modèle conceptuel de données au modèle


logique de données, il suffit d’appliquer les règles suivantes :
• Notations:
– Une association n : n est une association de type

– Une association 1 : n est une association de type

JAKJOUD Widad 91
MODELE LOGIQUE DES DONNEES:

• Pour passer du modèle conceptuel de données au modèle


logique de données, il suffit d’appliquer les règles suivantes :
• Notations:
– Une association 1 : 1 est une association de type

JAKJOUD Widad 92
MODELE LOGIQUE DES DONNEES:

• Règles de passage du MCD au MLD:


– Règle 1

– toute entité devient une table, les propriétés deviennent les champs
(les colonnes de la table).
– L’identifiant de l’entité devient la clé primaire de la table.

JAKJOUD Widad 93
MODELE LOGIQUE DES DONNEES:

• Règles de passage du MCD au MLD:


– Règle 2

– une association de type 1 :n disparait dans le MLD et l’identifiant de


l’entité de coté ?.n glisse dans la table équivalente à l’entité de
coté ?.1 pour devenir une clé étrangère :

• Voiture(immatriculation, couleur, #Type)


• Modele(Type, marque,puissance)

JAKJOUD Widad 94
MODELE LOGIQUE DES DONNEES:

• Règles de passage du MCD au MLD:


– Règle 3

– Une association de type n : n devient une table dans le MLD dont la clé
primaire est la concaténation des identifiants des entités composant
l’association. Les propriétés de l’association deviennent des champs de
la table.

JAKJOUD Widad 95
MODELE LOGIQUE DES DONNEES:

• Règles de passage du MCD au MLD:


– Règle 3

– Client(NoClient, Nom, Prenom)


– Commande(NoCde, DateCde,#NoClient)
– Produit(RefPdt,Désignation,Prix)
– Ligne(#NoCde,#RefPdt,Quantite)

JAKJOUD Widad 96
MODELE LOGIQUE DES DONNEES:

• Règles de passage du MCD au MLD:


– Règle 4

– Une association de type 1 : 1 est considérée comme une association 1 :n sauf que la clé
étrangère doit être UNIQUE.

Salarie Service
numS 0,1 dirige 1,1 codeSer
nomS Intitule
prenomS
dateAffect

Salarie(nSalarie,nomSalarie)
Service(codeService,LibService,#nSalarie(unique))

JAKJOUD Widad 97
MODELE LOGIQUE DES DONNEES:

• Règles de passage du MCD au MLD:


– Remarques: Association Réflexive

– Association 1 :n : L’identifiant de l'entité se dédouble et devient une Clé Etrangère dans


la table.

– EMPLOYE (id_Employe, Nom_Employe, #id_Sup_Hierarchique)


#id_Sup_Hierarchique est l'identifiant (id_Employe) du supérieur hiérarchque direct de
l'employé considéré.

JAKJOUD Widad 98
MODELE LOGIQUE DES DONNEES:

• Règles de passage du MCD au MLD:


– Remarques: Association Réflexive

– Association n :n : Création d’une nouvelle table

• PERSONNE (id_Personne, Nom_Personne)


PARENTE (#id_Parent, #id_Enfant)
#id_Parent est l'identifiant (id_Personne) d'un ascendant direct de la personne.
#id_Enfant est l'identifiant (id_Personne) d'un descendant direct de la personne.
La table PARENTE est l'ensemble des couples (parents-enfants) présent dans cette famille.

JAKJOUD Widad 99
MODELE CONCEPTUEL DE TRAITEMENTS:

• Règles de passage du MCD au MLD:


– Remarques: Association Réflexive

– Association n :n : Création d’une nouvelle table

• PERSONNE (id_Personne, Nom_Personne)


PARENTE (#id_Parent, #id_Enfant)
#id_Parent est l'identifiant (id_Personne) d'un ascendant direct de la personne.
#id_Enfant est l'identifiant (id_Personne) d'un descendant direct de la personne.
La table PARENTE est l'ensemble des couples (parents-enfants) présent dans cette famille.

JAKJOUD Widad 100

Vous aimerez peut-être aussi