Académique Documents
Professionnel Documents
Culture Documents
ENIB 2017/2018
Démarche de développement
• Le processus de conception des données passe par deux phases :
- Réalisation d’un modèle conceptuel
- Traduction en un modèle relationnel
Chapitre 2 :
Problématique
Le but d’un modèle logique / relationnel : décrire une BD qui va être utilisée.
chargée, accédée, mise a jour (maj)
Problématique
Qu’est-ce qu’une BD relationnelle ‘incorrecte’ ?
Démarche
Les conditions pour qu'une table soit correcte peuvent être définies formellement
⇒ Règles de validation du modèle E-A (validation des attributs, élimination de TA
redondants, etc.)
2. VERIFICATION ET VALIDATION
DU MODELE E- E- A
Problématique Démarche Vérification Validation Passage ML Normalisation Application
Vérification "syntaxique": il s'agit de vérifier que les règles du modèle entité association
sont respectées (concepts du modèle + règles de vérification d'un schéma).
Vérification par jeu d'essai: le concepteur vérifie grâce à une mini base de données que:
- le schéma permet effectivement de stocker les informations nécessaires à l’application
- le modèle contient tous les types d'information nécessaires à l'exécution des
traitements prévus (complétude par rapport aux traitements).
Chaque oubli, erreur, modification, ...., détecté lors des vérifications entraîne une mise
à jour du modèle et relance les différentes phases de vérification.
Problématique Démarche Vérification Validation Passage ML Normalisation Application
Règles de vérification :
- Toute entité possède un identifiant
Problématique Démarche Vérification Validation Passage ML Normalisation Application
Règles de vérification :
- Toute entité possède un identifiant
- Tous les attributs d’une entité sont atomiques et mono-valués
Problématique Démarche Vérification Validation Passage ML Normalisation Application
Règles de vérification :
- Toute entité possède un identifiant
- Tous les attributs d’une entité sont atomiques et mono-valués
- Pas de TA redondant : si les associations correspondantes peuvent être établies par
composition des associations d'autres TA.
Problématique Démarche Vérification Validation Passage ML Normalisation Application
Règles de vérification :
- Toute entité possède un identifiant
- Tous les attributs d’une entité sont atomiques et mono-valués
- Pas de TA redondant : si les associations correspondantes peuvent être établies par
composition des associations d'autres TA.
- Pas d’attributs d’entité traduisant une association: si l'on trouve dans un TE un attribut
qui est identifiant d'un autre TE, c'est que cet attribut exprime un lien entre les TE.
Problématique Démarche Vérification Validation Passage ML Normalisation Application
Règles de vérification :
- Toute entité possède un identifiant
- Tous les attributs d’une entité sont atomiques et mono-valués
- Pas de TA redondant : si les associations correspondantes peuvent être établies par
composition des associations d'autres TA.
- Pas d’attributs d’entité traduisant une association: si l'on trouve dans un TE un attribut
qui est identifiant d'un autre TE, c'est que cet attribut exprime un lien entre les TE.
⇒ Il convient donc de corriger le schéma: le lien doit être explicitement décrit comme un
TA entre les deux TE et l'attribut doit être supprimé du TE.
Problématique Démarche Vérification Validation Passage ML Normalisation Application
Règles de vérification :
- Toute entité possède un identifiant
- Tous les attributs d’une entité sont atomiques et mono-valués
- Pas de TA redondant : si les associations correspondantes peuvent être établies par
composition des associations d'autres TA.
- Pas d’attributs d’entité traduisant une association: si l'on trouve dans un TE un attribut
qui est identifiant d'un autre TE, c'est que cet attribut exprime un lien entre les TE.
⇒ Il convient donc de corriger le schéma: le lien doit être explicitement décrit comme un
TA entre les deux TE et l'attribut doit être supprimé du TE.
Problématique Démarche Vérification Validation Passage ML Normalisation Application
Gestion de ventes/Achats
On considère une société qui vend des produits à des clients. Ces produits sont
achetés par la société chez des fournisseurs.
Un client est identifié par son numéro, et possède un nom, et une adresse. Un
client peut passer une ou plusieurs commandes.
Une commande est identifiée par un numéro, elle concerne de manière générale
un ou plusieurs produits commandés en quantités différentes. Toute commande a
de plus une date de commande et de facturation bien déterminées. La date de
facturation est postérieure à la date de commande.
Un produit est identifié par une désignation ; il possède aussi une date de
fabrication et un prix unitaire. Chaque produit ne peut être fourni à la société que
par un et un seul fournisseur. Les fournisseurs sont identifiés par un numéro,
possèdent des noms et des numéros de téléphones.
Gestion de ventes/Achats
Client Commande
numeroClient
1,n (n:n)
numeroCommande
nomClient (n:1) 1,1 dateCommande concerner
adrClient 1,n Travaille
passer dateFacturation
pour Qté
Fournisseur Produit
(n:1)
desProduit
numeroFournisseur fournir dateFabProd
nomFournisseur 1,1 0,n
1,n prixUnitaireProd
telFournisseur
CIF : Les dates de facturation doivent être postérieurs aux dates de commandes.
Q- vérifier le modèle conceptuel correspondant a cet énoncé.
Problématique Démarche Vérification Validation Passage ML Normalisation Application
Gestion de ventes/Achats
Client Commande
numeroClient
1,n (n:n)
numeroCommande
nomClient (n:1) 1,1 dateCommande concerner
adrClient 1,n Travaille
passer dateFacturation
pour Qté
Fournisseur
Produit
(n:1)
desProduit
numeroFournisseur
nomFournisseur fournir dateFabProd
1,1 0,n
telFournisseur
1,n prixUnitaireProd
Vérification :
1- Chaque entité possède :
- Un identifiant
2- Nous présentons par la suite les règles de validation du modèle après avoir introduit la
notion de dépendance à partir de laquelle ces règles sont énoncées.
Problématique Démarche Vérification Validation Passage ML Normalisation Application
Notion de dépendance
Définition: étant donné un attribut, ou un ensemble d'attributs, A, d'un TE (ou TA),
et B un attribut du même TE (ou TA), il y a :
Exemple:
Dans un TE (TA) valide, tous les attributs directs dépendent de chaque identifiant
entier du TE (TA). On dit aussi que l'identifiant d'un TE (ou TA) détermine tous les
autres attributs du TE (TA). Sinon le TE (TA) est incorrectement défini.
A vous de jouer.
A vous de jouer.
Association (n:1)
Les attributs du TE Client respectent la R2:
- numCl adresseCl
- numCm dateCm, Produit
- numCm numCl (l’identifiant de client)
Problématique Démarche Vérification Validation Passage ML Normalisation Application
La règle 1 est appliquée ici aux TA. Les attributs directs du TA dépendent de
l'identifiant entier, qui dans un TA est composé de tous les identifiants des TE liés
au TA.
Exemple :
Dans cet exemple, le modèle est valide puisque la règle 3 est respectée:
- l'attribut Date_achat du TA POSSEDE dépend à la fois de l'identifiant NumB du
TE BATIMENT et de l'identifiant NumP du TE PERSONNE.
- NumP, NumB Date_achat
Problématique Démarche Vérification Validation Passage ML Normalisation Application
A vous de jouer.
A vous de jouer.
Gestion de ventes/Achats
On considère une société qui vend des produits à des clients. Ces produits sont
achetés par la société chez des fournisseurs.
Un client est identifié par son numéro, et possède un nom, et une adresse. Un
client peut passer une ou plusieurs commandes.
Une commande est identifiée par un numéro, elle concerne de manière générale
un ou plusieurs produits commandés en quantités différentes. Toute commande a
de plus une date de commande et de facturation bien déterminées. La date de
facturation est postérieure à la date de commande.
Un produit est identifié par une désignation ; il possède aussi une date de
fabrication et un prix unitaire. Chaque produit ne peut être fourni à la société que
par un et un seul fournisseur. Les fournisseurs sont identifiés par un numéro,
possèdent des noms et des numéros de téléphones.
Gestion de ventes/Achats
Client Commande
numeroClient
1,n (n:n)
numeroCommande
nomClient (n:1) 1,1 dateCommande concerner
adrClient 1,n Travaille
passer dateFacturation
pour Qté
Fournisseur Produit
(n:1)
desProduit
numeroFournisseur fournir dateFabProd
nomFournisseur 1,1 0,n
1,n prixUnitaireProd
telFournisseur
CIF : Les dates de facturation doivent être postérieurs aux dates de commandes.
Q- Donner les DF qui correspondent au modèle conceptuel vérifié auparavant.
Problématique Démarche Vérification Validation Passage ML Normalisation Application
Gestion de ventes/Achats
Client Commande
numeroClient
1,n (n:n)
numeroCommande
nomClient (n:1) 1,1 dateCommande concerner
adrClient 1,n Travaille
passer dateFacturation
pour Qté
Fournisseur
Produit
(n:1)
desProduit
numeroFournisseur
nomFournisseur fournir dateFabProd
1,1 0,n
telFournisseur
1,n prixUnitaireProd