Le modèle conceptuel des données MCD. La problématique des données  Il ne suffit pas de s’intéresser au nom et aux propriétés élémentaires (type, longueur,

Slides:



Advertisements
Présentations similaires
Règles de normalisation du MCD
Advertisements

Introduction à la conception de Bases de Données Relationnelles
Le modèle conceptuel des données
Les systèmes d'information 1- Une pratique quotidienne 2- Les données 3- Approche conceptuelle 4- Notion de serveur 5- Conception d'un système d'information.
1- Introduction 2ème partie Modèle Conceptuel des Données 2- Entités- Associations 4- Associations plurielles 3- Cardinalités 5- Associations réflexives.
1- Régles de normalisation 2ème partie : normalisation Modèle Conceptuel des Données 2- Les Formes Normales 3- Dépendances Fonctionnelles 4- Recap - Méthodologie.
1- Introduction 1ère partie Le langage SQL 2- Connexion 3- Structure & Contenu 4- Requêtes.
SQL partie 5 1 LMD create – update – primary key secondary key.
Initiation à la conception des systèmes d'informations. Cours N°4 : Modèle Logique de Données (MLD) Initiation à la conception des systèmes d'informations.
1- Introduction Sommaire Modèle Logique des Données 2- Structure 3- Traduction du MCD en MLD 4- Recap - Méthodologie.
LE MODÈLE CONCEPTUEL DES DONNÉES Encadré par: Pr. LAMARI SIHAM Présenté par DAOUI CHAIMAA NEBLI HIND NMER ABDELMOUNIM OUTALAB SIHAM.
Système d’aide à la décision Business Intelligence
Les Bases de données Définition Architecture d’un SGBD
Cours Initiation aux Bases De Données
Initiation à la conception des systèmes d'informations
Méthode de conception d’une base de données
Suites ordonnées ou mettre de l’ordre
Ingénierie pédagogique
4 Modèle conceptuel de données MCD
EPREUVES HISTOIRE ET GEOGRAPHIE
ATAC / SIMPLY MARKET – Dématérialisation fiscale
Introduction aux Systèmes de Gestion de Bases de données
ملخص Initiation à la sgbdr
Initiation aux bases de données et à la programmation événementielle
Visite guidée - session 3 Les postes de charge et les gammes
Université Stendhal - Grenoble
Modélisation Statique
Sous menu de l’application «micro» (‘IHM’)
Les Bases de données Définition Architecture d’un SGBD
De l’étude du système d’information à la mise en œuvre sous Access
Les bases de données et le modèle relationnel
Langage de Manipulation des Données LMD
DESSIN TECHNIQUE Té de dessin Collège technique Sousse Collège technique Sousse.
Exercice Gestion des contrats Facturation
Langages de programmation TP10
LES FORMES NORMALES Les trois premières formes normales ont pour objectif de permettre la décomposition de relations sans perdre d’informations. Elles.
Les interfaces en PHP.
Maria Berger - Maîtrise d'AES Algèbre relationnelle.
Manipulation D’Une Base De Données
Structure D’une Base De Données Relationnelle
1 ANGAMAN LUDOVIC UTT-LOKO-ITER. Organisation  10 séances de 3h  Présentation des bases de données  TP/TD.
Le système d’information dans l’organisation
la structure de l’entreprise: Définition : La structure organisationnelle d’une entreprise définie le mode d’organisation entre les différentes unités.
- Méthodologie - Rédiger une fiche de lecture -
Modélisation et conception des Systèmes d ’information Formateur: Mr. AASSOU Abdelilah Ecole Pigier Nador Année scolaire : 2012/2013.
Module: Logique Mathématique. SOMMAIRE 1- Notions d’ensembles 2- Constructions d’ensembles 3- Cardinal d’ensembles 4- Relations d’ensembles ordonnées.
Modélisation avec UML 2.0 Partie II Diagramme de classes.
Vuibert Systèmes d’information et management des organisations 6 e édition R. Reix – B. Fallery – M. Kalika – F. Rowe Chapitre 1 : La notion de système.
Introduction en systèmes d’information et bases de données B.Shishedjiev -Introduction en BD 1.
Bases de données sous Access. Initiation aux bases de données  Structure d’une base de données.
Chapitre2: SGBD et Datawarehouse. On pourrait se demander pourquoi ne pas utiliser un SGBD pour réaliser cette structure d'informatique décisionnelle.
Bouchemit lila 1. 2 Entité Bouchemit lila Non relation 3.
1. LE LANGAGE SQL DDL Version 2 - Janvier Le langage SQL-DDL
3. Elaboration d'un schéma conceptuel
Les cas d’utilisation 420-KE2-LG.
Position, dispersion, forme
1 CHAPITRE: GESTION DES STOCKS. 2 Plan Plan IntroductionDéfinitionNature du stockLes niveaux des stocks Suivi du stock: Méthodes d’approvisionnement Conclusion.
PRESENTATION ACCESS Editeur : Microsoft Environnement Windows (SE)
Informatique Master 1 - ANI Système de Gestion de Bases de Données.
Conception d’unebasede données MERISE ( MÉTHODE D’ ETUDE ET DE RÉALISATION INFORMATIQUE POUR LES SYSTÈMES D’ENTREPRISE )
Bases – Banques Entrepôts de données
Bases de Données Relationnelles(1)
1. LE LANGAGE SQL DDL Version 1 - Mai 2009 corrigé le 11/2/2011
MASTER 1ère année AIGEME Cours de Bases de données
GESTION DE LA PRODUCTION Réalisé par : EL MAROUSSI Mohammed DRIOUCHI Mohammed Abdeljabbar WAKENNOU Salah CRMEF Grand Casablanca Cycle de préparation à.
1 Semestre stic Sébastien PARFAIT – Faculté de Médecine – Bureau 145.
Baccalauréat professionnel Gestion -- Administration
2.5. La réorientation des prospects Textes de référence Exigence de la norme AFNOR NF X §3.2 « c) Assurer un accueil physique et/ou téléphonique.
Dridi Lobna 1 Couche Réseau II Réseau : Gestion de l’accès.
DONNÉE DE BASE QM Manuel de formation. Agenda 2  Introduction  Objectif de la formation  Données de base QM: Caractéristique de contrôle Catalogue.
Transcription de la présentation:

Le modèle conceptuel des données MCD

La problématique des données  Il ne suffit pas de s’intéresser au nom et aux propriétés élémentaires (type, longueur, valeurs) des données.  Il faut s’intéresser à la donnée elle-même, ses sens et ses usages. Dir. Financier Dir. Commercial Dir. Logistique Chez moi un client … Moi un client… Oui mais chez moi un client … Les acteurs peuvent utiliser les mêmes mots avec des sens ou des contenus différents (synonymes, polysèmes). Inventaire des données du SI

Libellé FRLibellé ENSens ClientCustomer Correspond à l’adresse principale d’un donneur d’ordres depuis laquelle ont reçoit les ordres de réalisation des prestations. Exemple de « client » : Kraft Foods France Client opérationnel Operational customer Est la déclinaison d’un « client » pour un lieu géographique ou un métier particulier Exemple de « Client Opérationnel » : Kraft entreposage CPN Client de facturation Bill-to customer Désigne le tiers destinataire des factures d’un « client opérationnel ». Client payeur Payer customer Désigne le tiers qui paye les factures d’un « client opérationnel ». Client de gestion Controlling customer Désigne un ou plusieurs « clients opérationnels » dont les coûts et les recettes sont regroupées. Le « client de gestion » est une notion propre aux contrôleurs de gestion. Exemple réel : sens du mot « client » Il faut comprendre les données … avant de les décrire (dictionnaire des données).

Il faut aussi se poser des questions sur la qualité des données existantes. Les données peuvent être entachées de nombreux défauts : n°ssNomPrénom Date naissance sexeAdresse Code Postal VilleTéléphone DupondAlbert10/04/1971F 3, rue de la gare 99999Strasbourg DurantLise18/06/1968F Rue des Lilas 54000Nancy DurantLisa F54000Null Contradiction (pb de cohérence) Doublon (pb d’unicité) Erreur de saisie (pb d’exactitude) Erreur de Format (pb de conformité) Absence de valeur (pb de complétude) Incohérence Hors nomenclature (pb de conformité et d’intégrité ) Pb d’intégrité référentielle

Objectif du MCD Décrire les données du SI, indépendamment de tout choix d'implantation physique. 1. Le dictionnaire des données  Inventaire des données du domaine étudié. Questions :  sens pour les différents interlocuteurs; les différents sens sont à conserver.  exigences de qualité et caractéristiques.

Nombreuses caractéristiques :  identificateur (mnémonique),  description (« sens » précis),  type (numérique, alphanumérique,...),  taille,  mode d'obtention : –donnée mémorisée, –donnée calculée, –donnée "paramètre" : donnée utile à un traitement et non mémorisée (ex : date d'édition),  règle de calcul (pour les données calculées),  contraintes d'intégrité : intervalle de valeurs, liste de valeurs...  origine (document, système, service)  volume,  fréquence des mises à jour,  etc. aspects quantitatifs

Rubrique Description Type Mode D1 D2 D3 D4 identificateur libellé entier mémorisée x x réel calculée x date paramètre x x x x chaîne booléen Descriptif très simplifié utilisé dans les exercices où toutes ces caractéristiques ne sont pas toujours disponibles : documents

2. Le modèle conceptuel des données : le modèle entité/association (cf. cours BD 1°A) a) Concepts de base du modèle E/A. b) Vérification et normalisation du modèle E/A. c) Contraintes d'intégrité du modèle E/A ou extensions du modèle E/A.

a) Les concepts de base Entité : tout objet concret ou abstrait ayant une existence propre et conforme aux besoins de gestion de l’organisation. Ex : le client «Dupond», le produit de référence «a456»… Classe d’entités (ou entité-type) : ensemble des entités décrites par les mêmes caractéristiques. Ex : la classe CLIENT dont «Dupond» est une occurrence (ou instance). Association : n-uplet d’entités « sémantiquement liées ». Ex: («Dupond», «1367 VS 54») indiquant que la personne Dupond est propriétaire de la voiture immatriculée 1367 VS 54.

Classe d’associations (ou association-type) : regroupe toutes les associations constituées des mêmes types d’entités jouant le même rôle dans l’association. Ex: PROPRIETAIRE(PERSONNE, VOITURE) Les occurrences de cette classe d’association sont un sous ensemble du produit cartésien PERSONNE x VOITURE (c.à.d. une partie de l’ensemble des couples possibles de personnes et de voitures). PERSONNE VOITURE PROPRIETAIRE Remarques On peut avoir plusieurs classes d’associations sur les mêmes classes d’entités. Ex : PROPRIETAIRE(PERSONNE, VOITURE) et CONDUIRE(PERSONNE, VOITURE)

 On peut avoir une classe d’association sur une seule classe d’entités (on parle d’association « réflexive »). On ajoute souvent dans ce cas des noms de rôles pour distinguer les deux occurrences. Ex : CONJOINT(PERSONNE, PERSONNE) époux PERSONNE CONJOINT épouse PERSONNE VOITURE PROPRIETAIRE CONDUIT

 On peut avoir une classe d’association définie sur n classes d’entités (association n-aire ou d’arité n ou de dimension n ou à « n pattes »). Ex: COURS(MATIERE, CLASSE, PROF) Attention : les arités élevées sont rares. Elle dénotent souvent des faiblesses dans l’analyse. arité 2 : 80% arité 3 : <20% arité > 3 : 

Propriété : donnée élémentaire permettant de caractériser les entités et associations Ex : Nom, Prénom propriétés de PROFESSEUR Jour, Heuredeb propriétés de COURS PROFESSEUR Refprof Nom Prénom Adresse Age COURS Jour Heuredeb Heurefin MATIERE Refmat Intitulé CLASSE Refclasse Numsalle

Identifiant : propriété ou groupe de propriétés permettant d’identifier de manière unique chaque occurrence de la classe d’entités. Ex : N° immatriculation pour VOITURE. Nom ne suffit pas pour PERSONNE. N° Client pour CLIENT (propriété ajoutée) Les identifiants sont en général soulignés. Cardinalités : indiquent pour chaque classe d’entités de la classe d’association, les nombres mini et maxi d’occurrences de l’association pouvant exister pour une occurrence de l’entité. La cardinalité minimum est 0 ou 1. La cardinalité maximum est 1 ou n.

Une cardinalité minimum à 0 signifie qu’il est possible d’observer (un jour) une occurrence d’entité sans occurrence d’association. Donc 4 combinaisons possibles : 0,1 au plus 1 1,1 1 et 1 seul 1,n au moins 1 0,n un nombre quelconque Ex: PROPRIETAIRE(PERSONNE [0,n], VOITURE [1,1]) Une personne a 0 à n voitures; une voiture a 1 et 1 seul propriétaire.

CONDUIT(PERSONNE [0,n], VOITURE [1,n]) Une personne conduit 0 à n voitures; une voiture est conduite par 1 à n personnes. Représentation graphique : !! Dans les méthodes anglo-saxonnes la cardinalité est placée du côté opposé à l’entité source !! PERSONNE VOITURE PROPRIETAIRE 0,n1,1 Sens de lecture source destination

COURS(MATIERE [1,n], CLASSE [1,n], PROF[1,n]) Un prof. a 1 à n cours dans la semaine, une matière a 1 à n cours dans la semaine, une classe a 1 à n cours dans la semaine. PROF Nom Prénom Adresse Age COURS Jour Heuredeb Heurefin MATIERE Refmat Intitulé CLASSE Refclasse Numsalle 1,n

Difficultés : choix entre entité et association ? 1) Solution avec association Dans cette première solution la commande n’est pas une entité gérée pour elle même. Elle existe tant que le client et le produit existent. Ce peut être le SI du domaine ‘fabrication’ : on a juste besoin de savoir que les produits sont destinés à des clients. CLIENT PRODUIT commande 1,n 0,n nocli nomcli noprod désignation

Dans cette seconde solution, les commandes sont identifiées (identifiant nocde) et décrites : on les gère en tant que telles. Elles peuvent être conservées même si le produit ou le client n’existent plus. Ce peut être le SI du domaine financier. CLIENT nocli nomcli PRODUIT noprod désignation COMMANDE nocde datecde passeporte 1,n 0,n 1,1 1,n 2) Solution avec entité

Quelques « critères » de choix  Une entité a une existence propre et un identifiant.  Une association n’existe que si ses extrémités existent et n’a pas d’identifiant explicite.  Une entité peut être associée à d’autres entités, une association non.

Difficultés : choix des cardinalités ? Un client peut il avoir 0 location ? Est-ce encore un client ? Un local peut il être loué plusieurs fois ? Non si la base représente une situation instantanée et si le local n’est pas partageable. Oui si on gère un historique ou si le local est partageable. Les cardinalités sont élément essentiel pour définir la sémantique (signification) des données, pas une « décoration » accessoire. Derrière cette notion on trouvera des contrôles (par le SGBD ou les programmes). CLIENT LOCAL LOCATION 0, n ou 1, n ? 0, n ou 0,1 ?

Pour une situation donnée, il n’existe pas une «solution» unique. Le « bon modèle » est celui qui est accepté par les personnes concernées par le projet.

b) Vérification et Normalisation Contrôler la qualité du modèle vis-à-vis :  des fondements du modèle d’une part (règles de vérification),  de la redondance de données d’autre part (règles de normalisation). Permet de détecter certaines incohérences dans la construction des modèles. 1. Règles Générales  Toute propriété doit apparaître une seule fois dans un modèle. Il faut éliminer la redondance des propriétés dans la même entité (avec des noms différents) ou dans des entités distinctes :

 Toutes les propriétés identifiées doivent apparaître dans le modèle. PRODUIT prix1 prix2 PRODUIT TARIF code-tarif libellé-tarif prix coûte CLIENT code-client nom-client PROSPECT code-prospect nom-prospect CONTACT code-contact nom-contact type (Cli, Pro) 1,n Pas d’héritage dans le modèle E/A de base !

2. Règles sur les entités 2.a Règle de l’identifiant Toutes les entités ont un identifiant. 2.b Règle de vérification des entités Pour une occurrence d’une entité, chaque propriété ne prend qu’une seule valeur (cf. la 1FN du modèle relationnel); MONO-VALUEE On décompose l'entité Employé en deux entités : Employé, et Enfant Employé Matricule Nom Prénom-enf Employé Matricule Nom Enfant Matricule Prénom-enf

2.c Règles de normalisation des entités a) Les dépendances fonctionnelles (DF) entre les propriétés d’une entité doivent vérifier la règle suivante : toutes les propriétés de l’entité dépendent fonctionnellement de l’identifiant et uniquement de l’identifiant. Rappel :  une DF X  Y si à une valeur de X correspond une et une seule valeur de Y (réciproque pas vraie). Propriétaire Voiture N°immatric. Type N° pers Nom Adresse Voiture N°immatric. Type N° pers Nom Adresse La DF: N°pers  Nom, Adresse contredit la règle.

b) Une partie de l’identifiant ne peut pas déterminer certaines propriétés. La DF n°-comm  date-comm, n°-client contredit la règle. On décompose l’entité LigneCde en deux entités. Ces règles correspondent aux 2FN et 3FN du modèle Relationnel (dépendance pleine et directe des clés). LigneCde N°comm N°prod Qté DateComm N°client Ligne Commande N°comm DateCom N°Client N° comm N°prod Qté 0,n 1,1

3. Règles sur les associations 3.a Règle de vérification des associations Pour une occurrence d’association, chaque propriété ne prend qu’une seule valeur. 3.b Règle de normalisation sur les propriétés des associations Toutes les propriétés de l’association doivent dépendre fonctionnellement de tous les identifiants des entités portant l’association, et uniquement d’eux. Voiture Personne N°immatr N°pers autorisé Date-aut Date-permis N°-pers  Date-permis pose problème (donc déplacer Date-permis vers Personne)

3.c La décomposition des associations n-aires Il faut garder un minimum d’associations d’arité > 2. Si on observe une DF entre deux identifiants, on peut décomposer l’association n-aire. Une éventuelle DF N°prof  N°mat (c.à.d. si un prof enseigne une seule matière) conduit à la décomposition : Classe Prof N°prof Nom Matière N°mat cours salle, heure N°classe 0,n

C’est le cas, quand une patte a une cardinalité 1,1. Par exemple à 1 contrat est associé un client et un local : Classe Prof N°prof Nom Matière N°mat cours salle, heure N°classe assure 1,1 1,n 0,n Client Local Contrat location 0,n 1,1 Client concerne Contrat Local porte-sur 1,1 0,n

concerne associée_a Facture Commande Représentant obtenue_par 1,1 1,n 1,1 1,n 1,1 1,n On supprime l'association associée_a, car elle peut être obtenue par transitivité sur les associations concerne et obtenue_par 3.d La suppression des associations transitives Toute association pouvant être obtenue par transitivité de n autres associations peut être supprimée. La transitivité s’évalue en fonction de la signification des associations.

c) Quelques contraintes d’intégrité importantes Les CI définissent des propriétés qui doivent être vérifiées par les données de la base. 1.Contraintes intégrées au modèle E/A 1.a Contrainte d’identifiant Les valeurs prises par l’identifiant sont uniques (dans le temps) et toujours définies. Ex : identifiant de l’entité PERSONNE nom + prénom pas suffisant n° téléphone pas stable dans le temps n°SS réglementé (autorisation de la CNIL car danger de rapprochement de fichiers) 1.b Contraintes de cardinalité Les cardinalités portées par les entités membres d’association imposent des nombres minis et maxis d’occurrence dans l’association.

Une cardinalité mini de 1 rend l’existence d’une occurrence d’entité dépendante de l’existence d’une occurrence d’une autre entité. Une compétition ne peut exister que si la station où elle se déroule existe. Une station peut exister de manière indépendante de toute compétition. Station Compétition NomStat RefCompet a lieu 0,n1,1

2. Contraintes extensions du modèle E/A Exemple : contraintes de participation des entités aux associations. 2.a Exclusivité de participation d’une entité à plusieurs associations Si l’entité E participe à l’association A1, elle ne peut participer à l’association A2. 1,n Fournisseur acheter 0,n 0,1 Article Stock trouver X 1,n Un Article est soit acheté auprès d’un fournisseur, soit figure dans le Stock

2.b Inclusion de participation d’une entité à plusieurs associations La participation d'une entité E à une association A1 implique sa participation à l'association A2. La participation de client dans l’association emprunte implique sa participation à l'association souscrit. 1,1 0,n 0,1 0,n Client Abonnement Ouvrage souscrit emprunte I

2.c Exclusion de participation entre associations Il y a exclusion de participation entre associations si la participation des entités à l'association A1 exclut leur participation à l'association A2. Une personne à une même date ne peut pas figurer simultanément dans les deux associations: disponible et en formation. 0,n Datejour Personne disponible en formation X

2.d Inclusion de participation entre associations Il y a inclusion de participation entre associations si la participation des entités à l'association A1 implique leur participation à l'association A2. Tout couple commandes, produits figurant dans l'association ligneLiv doit figurer dans l'association ligneCde Le problème va être de vérifier toutes ces contraintes dans les programmes qui mettent à jour les données ! 1,n 0,n Commandes Produits ligneCde ligneLiv I