Le modèle Entité-Relation
Transcription
Le modèle Entité-Relation
Plan Le modèle Entité-Relation (E-R) : la base Bernard ESPINASSE Professeur à Aix-Marseille Université (AMU) Ecole Polytechnique Universitaire de Marseille Fevrier 2013 • Historique • Concepts de base : • Cardinalités (multiplicités) • Dépendances fonctionnelles • Élaboration d'un modèle E-R Bernard ESPINASSE - Modèle Entité-Relation : la base 1. Historique 2. Concepts de base : 3. Cardinalités (multiplicités) 4. Dépendances fonctionnelles 5. Élaboration d'un modèle E-R Référence du cours : « Ingénierie des systèmes d'information : Merise deuxième génération », Nanci D., B. Espinasse avec la collaboration de B. Cohen, J.C. Asselborn et H. Heckenroth (2001), 4° Ed. Vuibert Informatique, Paris. ISBN : 2-7117-8674-9 (416 pages). 1 Historique Graphisme • pour l'élaboration des modèles de données (MCD): 3 concepts de base : • nécessité d'un formalisme graphique • approche ENTITE-RELATION (P.Chen 75) 2 Bernard ESPINASSE - Modèle Entité-Relation : la base • PROPRIETE : description • ENTITE (individu): structure • RELATION (association): structure • formalisme INDIVIDUEL (D.Nanci, D.Pascot, H.Tardieu 75) • norme ISO: ENTITY-RELATIONSHIP Une représentation graphique : entité relation • 3 concepts de base : PERSONNE • PROPRIETE • ENTITE • RELATION (association) nom prénom age LOGEMENT 1,n cardinalités Bernard ESPINASSE - Modèle Entité-Relation : la base 3 Bernard ESPINASSE - Modèle Entité-Relation : la base habiter 0,n adresse type surface propriété 4 Propriété Entité Propriété = particule élémentaire d'information Entité = représentation d'une famille d'objets distinguables perçus comme stables et homogènes nom valeur TYPE OCCURENCE couleur ............................... rouge bleu vert âge ...................................... 22 23 24 56 PERSONNE nom prénom adresse rue code postal ville attention !!!! : dans un modèle de données, on ne représente pas les valeurs mais les TYPES des valeurs Propriété composée : adresse : rue, code postal, ville PERSONNE nom prénom adresse rue code postal ville 5 Bernard ESPINASSE - Modèle Entité-Relation : la base Entité Règles : 1) pour toute occurrence d'entité, il y a au plus une valeur pour chacune de ses propriétés (stabilité) 2) au moins une propriété, identifiante, permet de distinguer les occurrences d'entité entre elles (distinguabilité) 3) toute propriété doit avoir un sens pour toute occurrence d'entité même si elle est inconnue à un certain moment (homogénéité) 6 Bernard ESPINASSE - Modèle Entité-Relation : la base Re lation • Types/occurrences : Relation = classe d'information définies par rapport à un ensemble d'entités 3 5 1 2 Pensées Guerre et Paix Guerre et Paix 8 2 Combien y a-t-il de livres? Conseil : les nommer par un verbe à lʼinfinitif (ACHETER) Règles : • Homogénéité : personne matricule nom prénom nom de j.fille âge .... 1) les relations nʼont pas d'existence propre : 4553 DUVAL Alice DUPONT 23 la relation "ACHETER" n'existe que si des occurrences d'entités "PERSONNE" et "VOITURE" existent 2) elles peuvent avoir des propriétés propres: 6787 BERGMAN Jean ? 30 date achat 3) elles sont identifiées par les identifiants de leur collection : ! collection: {entités participant à la relation} Attention, distinguer: ! dimension: nb d'entité(s) de la collection propriétés non significatives, valeur inconnue, valeur nulle,... Bernard ESPINASSE - Modèle Entité-Relation : la base 7 Bernard ESPINASSE - Modèle Entité-Relation : la base 8 V a rV e sd reesl ar e t iloant iiso Vi éatrréii éédtt éé on ns Vara i é t d edse rse rl ae tl iaot n s s R eR l aetliaotni o n • Partage d'uned'une même collection : Partage même collection : •• Partage d'une même collection • Partage d'une même collection : : Exemple : Exemple : ETUDIANT nom prénom date naissance 1,n posséder année mention DIPLOME 0,n possèderpossèder possèder 1,1 0,n PERSONNE PERSONNE PERSONNE nom nom 1,n prénom nom prénom prénom titre niveau ! collection: {ETUDIANT, DIPLOME} ! collection: ! dimension: 2 {ETUDIANT, DIPLOME} ! dimension: 2 x (titre) ! identifiants: (nom) ! identifiants: (nom) x (titre) 1,n 1,n 1,n 0,n mère LOGEMENT LOGEMENT LOGEMENT adresse adresse adresse 0,n mère 0,n mère SOCIETE SOCIETE SOCIETE détenir détenir N° SIRENN° SIREN détenir N° SIREN raison sociale raison sociale % capital % capital % capital capital raison capitalsociale capital Un graphe des occurrences possible : Un graphe des occurrences possible : 0,n • Relation dimension quelconque • Relation dede dimension quelconque : : : Relation de dimension quelconque •• Relation de dimension quelconque : JOURNEEJOURNEE JOURNEE date date date ENGIN ENGIN n° engin n°ENGIN engin n° engin désignation désignation désignation 0,n 0,n 9 9 Cardinalité dʼune entité dans une relation (1) Cardinalité ou multiplicité 1,n 1,n habiter habiter habiter • Relation sur entité :: : Relation sur une même entité • Relation surune unemême même entité •• Relation sur une même entité : Bernard ESPINASSE - Modèle Entité-Relation : la base Bernard ESPINASSE - Modèle Entité-Relation : la base 1,1 1,1 0,n 0,n 0,n 0,n filiale 0,n 0,n filiale filiale CHANTIERCHANTIER CHANTIER n° chantier n° chantier n° chantier désignation désignation désignation 0,n travail réalisé travail réalisé 0,n travail réalisé 0,n quantité quantité quantité ACTIVITE ACTIVITE ACTIVITE type activité type activité type activité libellé libellé libellé unité d'oeuvre unité d'oeuvre unité d'oeuvre 0,n 0,n 0,n 0,n 0,n BernardBernard ESPINASSE - Modèle Entité-Relation : la base: la base ESPINASSE - Modèle Entité-Relation Bernard ESPINASSE - Modèle Entité-Relation : la base Bernard ESPINASSE - Modèle Entité-Relation : la base 10 10 10 10 Cardinalité dʼune entité dans une relation (1) : caractérise le rôle d'une entité dans une relation • permet d'enrichir le modèle (niveau des types) en connaissances du niveau des occurrences x1 et x2 = cardinalités minimales et y1 et y2 = cardinalités maximales ! 0, n : une occurrence de CLIENT est en relation par la relation PASSER avec une ou plusieurs occurrences de COMMANDE Cardinalités fréquemment utilisées : Participation Unique Multiple Bernard ESPINASSE - Modèle Entité-Relation : la base Optionnelle 0,1 Obligatoire 1,1 0,n 1,n ! 1, 1 : une occurrence de COMMANDE est en relation par la relation PASSER avec une et une seule occurrence de CLIENT 11 Bernard ESPINASSE - Modèle Entité-Relation : la base 12 Cardinalité dʼune entité dans une relation (2) Cardinalité dʼune entité dans une relation (3) Cardinalités sur relation n-aire ! 1, n : une occurrence de COMMANDE est en relation par la relation CONCERNER avec une ou plusieurs occurrences de PRODUIT ! 0, n : une occurrence de PRODUIT est en relation par la relation CONCERNER avec aucune ou plusieurs occurrences de COMMANDE un graphe des occurrences possible : ! 1 ) (0, n) : une occurrence de PROFESSEUR est en relation par la relation ENSEIGNER avec aucun ou plusieurs couples dʼoccurrences (SALLE, PERIODE) ! 2 ) (0, n) : une occurrence de PERIODE est en relation par la relation ENSEIGNER avec aucun ou plusieurs couples dʼoccurrences (PERIODE, SALLE) ! 3 ) (0, n) : une occurrence de SALLE est en relation par la relation ENSEIGNER avec aucun ou plusieurs couples dʼoccurrences (PROFESSEUR, PERIODE) 13 Bernard ESPINASSE - Modèle Entité-Relation : la base 14 Bernard ESPINASSE - Modèle Entité-Relation : la base Modèles génériques de cardinalités individuelles Modèles génériques de cardinalités individuelles DDééppeennddaanncceess ffoonnccttiioonnnneelllleess Dépendances fonctionnelles Contraintes d'intégrité d'intégrité fonctionnelle Contraintes Contraintes d'intégritéfonctionnelle fonctionnelle mariage conventionnel mariage homme femme mariage homme 0,1 0,1 appartient appartient 1234 PX 13 1234 PX 13 mariage de groupe mariage 0,n femme 0,n 0,1 polygamie homme Relation binaire fonctionnelle : Relation binaire fonctionnelle : polyandrie femme mariage homme 0,1 0,n une voiture voiture n'appartient n'appartient qu'à qu'à une une personne personne une une voiture n'appartient qu'à une personne femme soit: soit: soit: 0,n voiture --------------> --------------> personne personne voiture voiture --------------> personne appartient appartient appartient pére / fils a pére 0,n enfant Représentation :: Représentation Représentation : 1,1 voiture voiture Bernard ESPINASSE - Modèle Entité-Relation : la base Bernard ESPINASSE - Modèle Entité-Relation : la base Jean LAFRANCE Jean LAFRANCE 15 15 appartenir appartenir ...,1 ...,1 Bernard ESPINASSE - Modèle Entité-Relation : la base Bernard ESPINASSE - Modèle Entité-Relation : la base Bernard ESPINASSE - Modèle Entité-Relation : la base ...,... ...,... personne personne flèche flèche 16 16 16 Dépendances fonctionnelles sur relations n-aire Élaboration d'un modè le Entité -Re lation (1) Soit la contrainte à exprimer : « pour toute période d'emploi du temps, (le mercredi de 9 h à 12 h), un professeur n'a cours que dans une seule salle » 2 attitudes possibles: selon la connaissance du domaine du concepteur: • démarche déductive : s'appuie sur l'existence préalable d'une liste d'informations à structurer (plus lourde, étude détaillée) soit: PERODE x PROFESSEUR -----ENSEIGNER------> SALLE Limitation du formalisme Entité-Relation de base => besoin dʼextension • démarche inductive : cherche à mettre rapidement en évidence les différents concepts évoqués par le domaine (plus créative et efficace) 2 façons de constituer une liste d'informations: • ratisser au gré des entretiens, les informations présentes dans des documents.... • s'inspirer des modèles de comportement (MCT dans Merise) Vérifier l'absence de : • redondance Types de dépendances fonctionnelles : • simples (à un émetteur: a --> b) • composées (à n émetteurs: a x b --> c) englobant pas la totalité de la collection • composées (à n émetteurs: a x b --> c) englobant la totalité de la collection • synonyme • homonyme 17 Bernard ESPINASSE - Modèle Entité-Relation : la base Élaboration d'un modè le Entité -Re lation (2) Etude préalable : • se préoccuper plus des entités et relations que des propriétés (structure) Etude détaillée : • le plus détaillé possible (propriétés, DF,....) Guide : 1 - ne pas réfléchir en terme de fonction (traitements) ou essayer d'exprimer des états 2 - modéliser d'abord les entités puis les relations 3 - dés que l'on à modélisé une entité, lui donner un identifiant 4 - dés qu'une propriété est affectée à une entité ou une relation s'assurer de son unicité 5 - s'assurer que tous les entités participent au moins à une relation 6 - affecter les cardinalités aux relations 7 - rechercher les éventuelles DF des relations et effectuer si possible les décompositions Bernard ESPINASSE - Modèle Entité-Relation : la base 19 Bernard ESPINASSE - Modèle Entité-Relation : la base 18