97
Fichiers & Base de données Mariem Farhat Jaouani Chapitre 4 : Modèle Entité Association

modèle Entité-Association

Embed Size (px)

Citation preview

Page 1: modèle Entité-Association

Fichiers & Base de donnéesMariem Farhat Jaouani

Chapitre 4 : Modèle Entité Association

Page 2: modèle Entité-Association

Référence

• Ce cours a été réalisé en se basant sur :

– le cours de L. Nerima Faculté des lettres -Université de Genève.

– Le cours de Stéphane Crozat - Université de Technologie de Compiègne.

– Les notes de cours de Jean Claude Marti –Université des Sciences et technologies de Lille

– Le cours de Philippe Rigaux

Mariem FARHAT JAOUANI 2

Page 3: modèle Entité-Association

Introduction

• En anglais: Entity-Relationship (ER)

• Origines: C.Bachman (1969), P.Chen (1976).

• Modèle de données –> décrire la réalité perçue à travers les données mises en jeu (indépendamment des opérations que l’on effectuera ultérieurement dessus).

• But: fournir des outils et un cadre rigoureux pour l’analyse des données et de leurs liaisons.

3Mariem FARHAT JAOUANI

Page 4: modèle Entité-Association

Concepts

• Concepts de base: entité, association, attribut et valeur (et type de valeur).

• Définition: “Une entité est une chose concrète ou abstraite de la réalité perçue à propos de laquelle on veut conserver des informations. Une entité a une existence autonome”.

• Exemples: étudiant, toute personne, tout animal, une organisation, tout cours à l’université,

• Chaque entité possède des propriétés particulières appelées attributs.

4Mariem FARHAT JAOUANI

Page 5: modèle Entité-Association

Entité, attribut et valeur

• Définition: “Un attribut est une caractéristique ou une qualité d’une entité ou d’une association”. Il peut prendre une (ou plusieurs) valeur(s)”.

• Définition: “Une valeur est un symbole utilisé pour représenter un fait élémentaire”.

5Mariem FARHAT JAOUANI

Page 6: modèle Entité-Association

Entité, attribut et valeur

• Exemple d’entité avec ses valeurs d’attribut:

6Mariem FARHAT JAOUANI

Page 7: modèle Entité-Association

Entité, attribut et valeur

• Les attributs peuvent être:

– atomiques. Ex: Prénom, nom, …

– composés. Ex:

– monovalué (une seule valeur pour une entité donnée). Ex: Nom, Adresse, Date de naissance.

– multivalué (plusieurs valeurs pour une entité donnée). Ex: Prénom, Tél…

7Mariem FARHAT JAOUANI

Page 8: modèle Entité-Association

Entité, attribut et valeur

• Dans un processus de modélisation on ne s’intéresse pas à chaque entité séparément mais à un type d’entité.

• Définition: “Un type d’entité est la classe de toutes les entités de la réalité perçue qui sont de même nature et qui jouent le même rôle”.

• Un type d’entité est décrit par:– un nom– une définition qui précise la signification que nous voulons retenir de ce type

d’entité dans le cadre de la base de données.– une liste d’attributs

• Exemple: Le type d’entité “auteur” regroupe des personnes auteur d’articles de journaux caractérisées par leur nom, leur prénom, leur adresse et leur date de naissance.

• Simplification de la terminologie:– on appellera entité un type d’entité– on appellera occurrence d’une entité un individu particulier faisant partie de

l’entité.

8Mariem FARHAT JAOUANI

Page 9: modèle Entité-Association

Entité, type d’entité

• La description d’une entité est appelée leschéma de l’entité ou l’intention de l’entité.

• L’ensemble des occurrences d’une entité quiexistent (dans la base de données) à uninstant particulier dans le temps s’appellel’extension de l’entité

9Mariem FARHAT JAOUANI

Page 10: modèle Entité-Association

Entité, type d’entité

• Exemple:

Mariem FARHAT JAOUANI 10

Page 11: modèle Entité-Association

Mariem FARHAT JAOUANI

Entité: schéma, intention et extension

• Remarques:

– Le schéma d’une entité ne va pas changer fréquemment car il décrit la structure de l’entité.

– L’extension peut changer souvent: à chaque insertion ou suppression d’une occurrence d’entité.

11

Page 12: modèle Entité-Association

Type de valeur ou domaine d’un attribut

Mariem FARHAT JAOUANI 12

• Définition: “Le type de valeur ou le domaine d’un attribut est la spécification de toutes les valeurs possibles que peut prendre un attribut”.

• Utilité:– vérifier la validité d’une donnée– ultérieurement, estimer la place de stockage des données

• La spécification d’un type de valeur est donnée soit:– par la liste des valeurs– par la propriété que doivent vérifier les valeurs

• Exemples: – couleur = {rouge, bleu, jaune, vert}– numéro de journal = entier compris entre 1 et 366– nom = chaîne de caractères alphabétiques

Page 13: modèle Entité-Association

Identifiant d’une entité

Mariem FARHAT JAOUANI 13

• Contrainte: chaque occurrence d’une entité doit pouvoir être repérée individuellement et distinguée de toutes les

• autres –> c’est le rôle de l’identifiant.• Définition: “On appelle attributs clé ou identifiant d’une

entité un groupe minimal d’attributs et/ou tel qu’à chaque combinaison de valeurs prises par ce groupe correspond au plus une occurence de cette entité”.

• L’identifiant est formé d’un ou plusieurs attributs de l’entité à identifier.

• Exemples:– le nom de l’éditeur est l’attribut clé de l’entité éditeur.– le nom et le prénom de l’auteur sont les attributs clé de l’entité

auteur.

Page 14: modèle Entité-Association

Représentation graphique du schéma d’une entité selon Chen

14Mariem FARHAT JAOUANI

Représentée par un rectangle contenant le nom du type de l'entité et entourée par ses attributs.

L’identifiant (un ou plusieurs attriibuts doi(ven)t être souligné(s).

Page 15: modèle Entité-Association

Application

• Optique: conception d’une base de données destinée à conserver des descriptions d’articles parus dans les journaux.

• Réalité perçue:(1) Un éditeur édite des journaux. Il est caractérisé par un nom et une

adresse.(2) Un journal est édité par un éditeur et publie des articles dans ses

numéros. On conservera le nom du journal et le nom de son rédacteur en chef.

(3) Un numéro de journal contient une collection d’articles.(4) Chaque article paru dans un numéro est signé par un auteur. On

désire conserver le titre et un résumé de l’article ainsi que le nom de son auteur.

(5) Les auteurs sont connus par leur nom, leur prénom, leur adresse et leur date de naissance.

15Mariem FARHAT JAOUANI

Page 16: modèle Entité-Association

Application

• A partir de l’énoncé, Enumérez la liste des entités en précisant pour chacune :

– Le nom, La définition, la liste d’attributs et l’identifiant de l’entité

– Exemple

Mariem FARHAT JAOUANI 16

Page 17: modèle Entité-Association

Application

• Et pour chaque attribut, vous spécifiez le nom, la définition, la structure, le domaine de valeurs et si l’attribut est obligatoire ou non

Mariem FARHAT JAOUANI 17

Page 18: modèle Entité-Association

Association

• Définition: “Une association est une correspondance entre deux ou plusieurs occurrences d’entités à propos de laquelle on veut conserver des informations”.

• L’existence d’une association est contingente à l’existence des occurences d’entités qu’elle met en correspondance.

• Chaque occurrence d’entité joue un rôle particulier dans l’association.

• On dit aussi que les occurrences d’entités mises en correspondance par l’association participent à l’association

18Mariem FARHAT JAOUANI

Page 19: modèle Entité-Association

Association

• Exemple:

• L’écriture (association) de l’article “L’ordinateur va-t’il changer notre mode de penser?” par Gustave Moeckli exprime la correspondance qui existe entre Gustave Moeckli et l’article “L’ordinateur...”.

• le rôle joué par l’occurence de l’entité auteur Gustave Moeckli: il écrit l’article “L’ordinateur...”

• le rôle joué par l’occurrence de l’entité article “L’ordinateur...”: il est écrit par Gustave Moeckli.

19Mariem FARHAT JAOUANI

Page 20: modèle Entité-Association

Association, type d’association

• Définition: “Un type d’association est la classe de toutes les associations possibles de la réalité perçue qui vérifient la définition constitutive du type”.

• Définition constitutive d’un type d’association (schéma):– un nom et une liste d’entités (non nécessairement

distinctes) qui participent au type d’association avec leurs rôles respectifs; notation: A(ro1: E1,ro2: E2,..., ron: En)

– notation simplifiée: A(E1, E2,..., En)– une description qui précise la signification que nous

voulons retenir de ce type d’association dans le cadre de la base de données.

20Mariem FARHAT JAOUANI

Page 21: modèle Entité-Association

Association, type d’association

• Exemple:

ECRITURE(écrit : AUTEUR, est écrit par : ARTICLE)

• Le type d’association ECRITURE exprime le fait qu’un

auteur écrit un ou plusieurs articles ou, symétriquement, qu’un article est écrit par un auteur.

• Simplification de la terminologie:

- on appellera association un type d’association

- on appellera occurrence d’association toute

correspondance qui existe entre deux ou plusieurs

occurrences d’entités.

Mariem FARHAT JAOUANI 21

Page 22: modèle Entité-Association

Extension d’une association

• L’ensemble des occurrences d’une association qui existent (dans la base de données) à un instant particulier dans le temps s’appelle l’extension de l’association.

Mariem FARHAT JAOUANI 22

Page 23: modèle Entité-Association

Extension d’une association

• Exemple: une extension de l’association “écriture”

Mariem FARHAT JAOUANI 23

Page 24: modèle Entité-Association

Représentation graphique du schéma d’une association

– Représentées par un losange contenant le nom de l'association

– Souvent nommé par un verbe ou un substantif

– Les entités participantes de chaque association sont rattachées à l'association au moyen de lignescontinues.

– Chacune de ces lignes est étiquetée par la cardinalité et les rôles des entités.

Mariem FARHAT JAOUANI 24

Nom association

Entité 1Entité 2Rôle E2(min,max)

Rôle E1(min, max)

Page 25: modèle Entité-Association

Représentation graphique du schéma d’une association

Mariem FARHAT JAOUANI 25

Personne VoiturePossèdePropriétaire Possédée

fournisseur ProduitVendvendeur vendu

Page 26: modèle Entité-Association

Représentation graphique du schéma d’une association

• Le lien (l’arc) n'est pas orienté : les commandescomportent des produits veut dire également queles produits peuvent être commandés.

Mariem FARHAT JAOUANI 26

Commande ProduitComporte

comporte Est commandé

Page 27: modèle Entité-Association

Degré d’une association

• Degré d’une association: nombre d’entités qui participent à une association

• cas fréquent: degré 2 (association binaire) qui relie deux entités.

• Exemple : l’association écriture relie les deux entités Article et Auteur; elle est dite binaire.

Mariem FARHAT JAOUANI 27

Auteur ArticleEcritEcrivain A été écrit

Page 28: modèle Entité-Association

Cardinalité d'une association

• One to one

• One to many

• Many to many

Mariem FARHAT JAOUANI 28

Personne VoiturePossède

ProduitVendeur Vend

Personne Habite Adresse1 1

1N

N M

habite Est habité par

possède Est possèdé par

vend Vendu par

Page 29: modèle Entité-Association

Cardinalité (min,max)

• But: exprimer le nombre minimum et le nombre maximum de participations de chaque occurrence d’entité à une association.

• Exemple: – on exprime la contrainte que tous les auteurs doivent

écrire au moins un article. On écrira min=1 et max=N (N veut dire nombre indéterminé).

– on exprime la contrainte que tout article doit être écrit par un et un seul auteur. On écrira min=1 et max=1.

Mariem FARHAT JAOUANI 29

Page 30: modèle Entité-Association

Cardinalité (min,max)

• Plus généralement:

• Soit A(ro1: E1, ro2: E2,..., ron: En) une association. La contrainte de cardinalité de A est définie par un ensemble de couple (mini, maxi) 1≤ i ≤n.

• Mini: indique le nombre minimum de fois, qu’à tout moment toute occurrence de Ei doit assumer le rôle roi.

• Maxi: indique le nombre maximum de fois qu’à tout moment toute occurrence de Ei peut assumer le rôle roi.

Mariem FARHAT JAOUANI 30

Page 31: modèle Entité-Association

Cardinalité (min,max)

Valeur Signification

Mini = 0 toute occurrence de Ei peut exister indépendamment de A; on parle de participation partielle de Ei à A

Mariem FARHAT JAOUANI 31

Personne Voitureconduire

(min,max) (min,max)

(0,

Page 32: modèle Entité-Association

Mini = 1 aucune occurrence de Ei ne peut exister indépendamment de A; on parle de participation totale de Ei à A

Mariem FARHAT JAOUANI 32

Personne Voitureconduire

(min,max) (min,max)

(0, (1,

Page 33: modèle Entité-Association

Maxi = k (k>1) toute occurrence de Ei assume au plus k fois le rôle roi

Mariem FARHAT JAOUANI 33

Personne Voitureconduire

(min,max) (min,max)

(0, 2) (1, n)

Page 34: modèle Entité-Association

Maxi = N toute occurrence de E peut assumer un nombre non limité de fois le rôle roi

Mariem FARHAT JAOUANI 34

Personne Voitureconduire

(min,max) (min,max)

(0, n) (1, n)

Page 35: modèle Entité-Association

Maxi = 1 toute occurence de Ei assume au plus une fois le rôle roi

Mariem FARHAT JAOUANI 35

Personne Voiturepossède

(min,max) (min,max)

(0, n) (1, 1)

Page 36: modèle Entité-Association

Représentation graphiquedu schéma d’une association

• Exemple: association “écriture”

Mariem FARHAT JAOUANI 36

Une occurrence de l’entité auteur a écrit au moins une foisUne occurrence de l’entité auteur a écrit au plus N foisUne occurrence de l’entité article a été écrite au moins une fois Une occurrence de l’entité article a été écrite au plus une fois

Page 37: modèle Entité-Association

Instance de l’association « écriture »

Mariem FARHAT JAOUANI 37

AT1

AT3

AT4

AR5

AR6

AR7

AT2

AR1

AR8

AR4

AR3

AR2

E1

E2

E3

E4

E5

E6

E7

E8

Page 38: modèle Entité-Association

Application

Donnez le rôle de chaque entité qu’elle joue dans l’association.

Expliquez la cardinalité (min, max) de chaque entité en donnant un exemple et déduire le type de l’association.

Mariem FARHAT JAOUANI 38

ville capitale Pays(1,1) (1,1)

Journaliste travaille Journal(1,N) (1,N)

Page 39: modèle Entité-Association

Application

• Selon le schéma suivant Est-ce qu’:– un patient peut effectuer

plusieurs visites,

– un médecin peut recevoir plusieurs patients pendant la même consultation,

– un médecin peut prescrire plusieurs médicaments lors d'une même consultation,

– deux médecins différents peuvent prescrire le même médicament,

Mariem FARHAT JAOUANI 39

Page 40: modèle Entité-Association

Attributs d’une association

• Une association peut avoir ses attributs propres

• Exemple: le nombre de médicament qui a été prescrit dans une consultation

• Notation:

Prescrit(prescrit : consultation, A été prescrit : médicament, nbrPrise)

Mariem FARHAT JAOUANI 40

Page 41: modèle Entité-Association

Exemple

• Donnez d’autres exemples

Mariem FARHAT JAOUANI 41

Médicament

Code

libellé

prescrit Consultation

Numéro

Date

NbrPrise

Page 42: modèle Entité-Association

Application

• Schématisez les associations suivantes:

– Un joueur peut participer dans plusieurs match et gagner. On souhaite enregistrer les matchs joués et ceux qui ont été gagné ainsi que le score du match gagné.

– Un joueur peut participer dans plusieurs match, il peut perdre ou gagner, on souhaite enregistrer le total des scores des match qu’il a joué.

– Un joueur peut participer dans plusieurs match, on souhaite enregistrer la date de chaque match joué.

Mariem FARHAT JAOUANI 42

Page 43: modèle Entité-Association

Identification d’une association

• L’identifiant est implicite.

• Par définition, une association est identifiéepar l’ensemble des rôles assumés par les entités qu’elle met en correspondance.

• Exemple:

ECRITURE(écrit: AUTEUR, est écrit par: ARTICLE)

Identifiant: (écrit: AUTEUR, est écrit par: ARTICLE)

Mariem FARHAT JAOUANI 43

Page 44: modèle Entité-Association

Cas particulier

• Association (lien) réflexive

• Association entre plusieurs entités (plus que deux)

• Plusieurs associations entre deux entités

Mariem FARHAT JAOUANI 44

Page 45: modèle Entité-Association

Association (lien) réflexive

• Appelée aussi cyclique ou récursive

• Une association "réflexive" est une association qui lie des occurrences d'une même entité entre elles (c'est un cas particulier de la dimension 2)

• Exemple:

FILIATION(père: PERSONNE, fils: PERSONNE) où

dans une occurence d’association une personne

Peut assumer un des deux rôles père ou fils.

Mariem FARHAT JAOUANI 45

Page 46: modèle Entité-Association

Représentation graphique d’une association réflexive

Mariem FARHAT JAOUANI 46

FiliationPersonne

Est père de

Est fils de

Page 47: modèle Entité-Association

Exemple

• Exemple d’extension de l’association FILIATION:

• Donnez des exemples d’association réflexive

Mariem FARHAT JAOUANI 47

Page 48: modèle Entité-Association

Association entre plusieurs entités (plus que deux)

• On peut envisager des associations entre plus de deux entités

• Même s’il n’y a en principe pas de limite sur le degré d’une association, en pratique on ne va jamais au-delà d’une association entre trois entités.

• Qq difficultés:– elles sont plus difficiles à comprendre, et surtout la

signification des cardinalités devient beaucoup plus ambigue.

– La définition des contraintes

Mariem FARHAT JAOUANI 48

Page 49: modèle Entité-Association

Association entre plusieurs entités (plus que deux)

• Exemple: un film peut être projeté dans plusieurs salle à certains horaires différentes

• Chaque instance de cette association lie un film, un horaire et une salle.

• les cardinalités sont, implicitement, (0,N). Il n’est pas possible de dire qu’une entité ne participe qu’une fois à l’association.

Mariem FARHAT JAOUANI 49

Film Salle

horaire

projeté

Page 50: modèle Entité-Association

Association entre plusieurs entités (plus que deux)

• elle ne permet pas d’imposer certaines contraintes comme, par exemple, le fait que dans une salle, pour un horaire donné, il n’y a qu’un seul film. Comme le montre la figure il est tout à fait possible de créer deux liens distincts qui s’appuient sur le même horaire et la même salle.

Mariem FARHAT JAOUANI 50

Page 51: modèle Entité-Association

Association entre plusieurs entités (plus que deux)

• Les associations de degré supérieur à deux sont donc difficiles à manipuler et à interpréter. Il est toujours possible de remplacer cette association par un type d’entité.

Mariem FARHAT JAOUANI 51

Film Salle

horaire

projection Scéance

réalisé

S’effectue

(1,n)

(1,1)

(1,n)

(1,n)(1,1)

(1,1)

Page 52: modèle Entité-Association

Association entre plusieurs entités (plus que deux)

• Soit A une association entre les types d’entité (E1, E2, …). La transformation de A en type d’entité s’effectue en trois étapes :

1. On attribue un identifiant à A.

2. On crée une association Ai de type (1,n) entre A et chacun des Ei. La contrainte minimale, du côté de A , est toujours à 1.

Mariem FARHAT JAOUANI 52

Page 53: modèle Entité-Association

Association entre plusieurs entités (plus que deux)

• On reprend l’exemple précédant:

• L’association projection peut être transformée en un type d’entité Séance. On lui attribue un identifiant idSeance et des associations (1,n) avec Film, Horaire et Salle.

Mariem FARHAT JAOUANI 53

Page 54: modèle Entité-Association

Autre exemple

Mariem FARHAT JAOUANI 54

Page 55: modèle Entité-Association

Plusieurs associations entre deux entités

• On peut définir plusieurs associations entre deux entités qui vont faire correspondre des de différents occurrences

• Exemple: Entre deux entités personnes et voiture on peut définir – Association ‘possède’ qui fait correspondre

chaque personne aux voitures qu’ils possèdent

– Association ‘conduire’ qui fait correspondre chaque personne aux différents voitures qu’il peut conduire

Mariem FARHAT JAOUANI 55

Personne

Voiture

conduitpossède

(0,n) (0,n)

(1,1) (1,n)

Page 56: modèle Entité-Association

Exemple

Mariem FARHAT JAOUANI 56

P1P2P3P4P5P6P7P8P9

Po1Po2Po3Po4

V1V2V3V4V5V6V7C1

C2C3C4C5

Page 57: modèle Entité-Association

Mariem FARHAT JAOUANI 57

Page 58: modèle Entité-Association

Application

• Analyser ce schéma et discuter ses cardinalités.

• Est-ce qu’un tournoi permet les matchs de double?

• Est-ce que les joueurs peuvent gagner des matchs auxquels ils n'ont pas participé

• Est-ce que deux matchs différents peuvent se dérouler sur le même terrain à la même heure

• pensez vous que ce modèle soit un bon modèle pour la gestion d'un tournoi de tennis?

Mariem FARHAT JAOUANI 58

Page 59: modèle Entité-Association

Application

(1) Un éditeur édite des journaux. Il est caractérisé par un nom et une adresse.

(2) Un journal est édité par un éditeur et publie des articles dans ses numéros. On conservera le nom du journal et le nom de son rédacteur en chef.

(3) Un numéro de journal contient une collection d’articles.

(4) Chaque article paru dans un numéro est signé par un auteur. On désire conserver le titre et un résumé de l’article ainsi que le nom de son auteur.

(5) Les auteurs sont connus par leur nom, leur prénom, leur adresse et leur date de naissance.

Mariem FARHAT JAOUANI 59

Page 60: modèle Entité-Association

Application

• A partir de l’énoncé, Enumérez la liste des associations en précisant pour chacune :

– Le nom, La définition, la liste des entités qui participent, les rôles et les cardinalités et la liste des attributs

– Exemple

Mariem FARHAT JAOUANI 60

Page 61: modèle Entité-Association

Notion d’entité faible

• Certaines entités dites "faibles" n'existent qu'en référence à d'autres entités dites « forte ».

• Une entité de type faible, également appelée entité non identifiée, possède une clé locale (appelée identifiant relatif) qui permet d'identifier une de ses occurrences parmi l'ensemble des occurrences associées à une occurrence de l'entité identifiante. La clé complète d'une entité faible est la concaténation de la clé de l'entité identifiante et de sa clé locale.

Mariem FARHAT JAOUANI 61

Page 62: modèle Entité-Association

Exemple

• L'entité Tâche est complètement dépendante de l'entité Projet et sa clé locale (No_tâche) n'est pas suffisante à l'identifier de façon absolue.

• Remarque: La cardinalité du rôle de l’entité faible au sein de l’association est (1,1)

• Donnez d’autres exemples

Mariem FARHAT JAOUANI 62

Projet contenir Tâche Tâche (1,1)(1,n)

NomProjet

duréeProjet

N°Projet

N°tâche

NomTâcheN°Projet

Page 63: modèle Entité-Association

• Identifiez les entités faibles dans le schéma suivant et justifier

Mariem FARHAT JAOUANI 63

Page 64: modèle Entité-Association

QCM

S'il existe une occurrence d'association, alors

Deux occurrences d'une entité

Mariem FARHAT JAOUANI 64

il existe nécessairement une occurrence de chacunedes entités associées.

il se peut qu’il n’existe pas d’occurence des entitésassociées.

Il existe au moins une occurrence de l’une des entitésassociées

ne peuvent participer à la même occurence de l'association

Dans certains cas ils peuvent participer dans la mm occurence

Participent chacune dans deux occurrences distinctes de l’association

Page 65: modèle Entité-Association

Conventions graphiques du modèle E.A.

Mariem FARHAT JAOUANI 65

Page 66: modèle Entité-Association

schéma conceptuelde la publication des articles de

journaux(1) Un éditeur édite des journaux. Il est caractérisé par un

nom et une adresse.(2) Un journal est édité par un éditeur et publie des

articles dans ses numéros. On conservera le nom du journal et le nom de son rédacteur en chef.

(3) Un numéro de journal contient une collection d’articles.

(4) Chaque article paru dans un numéro est signé par un auteur. On désire conserver le titre et un résumé de l’article ainsi que le nom de son auteur.

(5) Les auteurs sont connus par leur nom, leur prénom, leur adresse et leur date de naissance.

Mariem FARHAT JAOUANI 66

Page 67: modèle Entité-Association

schéma conceptuelde la publication des articles de

journaux(5) Un éditeur édite 1 ou plusieurs journaux.

Chaque journal est édité par exactement un éditeur.

(6) Chaque journal sort 1 ou plusieurs numéros. Chaque numéro est sorti par exactement un journal.

(7) Un numéro regroupe plusieurs articles (éventuellement 0). Un article paraît au moins une fois. Un article est écrit par un seul auteur. Les auteurs écrivent un ou plusieurs articles.

Mariem FARHAT JAOUANI 67

Page 68: modèle Entité-Association

• Proposez un diagramme E/A pour l’énoncé.

Mariem FARHAT JAOUANI 68

Page 69: modèle Entité-Association

Généralisation et spécialisation

• La spécialisation est la division d'un ensemble d'entités en sous-classes.

• A l'inverse la généralisation est un regroupement d'un ensemble d'entités en une super classe. Le schéma ci-dessous montre la représentation d'une spécialisation/généralisation sur un schéma relationnel (ISA = ... is a ...)

Association ‘IS A’ ou ‘est un’

Mariem FARHAT JAOUANI 69

Page 70: modèle Entité-Association

Héritage

• une entité spécialisée hérite des attributs de l’entité généralisée.

• Il n’y a pas besoin de nouveau identifiant.• Le VACATAIRE dispose de 7 attributs dont 4 par

héritage, sa clé est code_ens. Idem pour TITULAIRE (7 -> 6)

Mariem FARHAT JAOUANI 70

Page 71: modèle Entité-Association

Contraintes d’intégrité

• But: spécifier des propriétés sémantiques du réel perçu qui ne sont pas exprimables avec le modèle E.A.

• Définition: “Une contrainte d’intégrité (C.I.) est une propriété non représentée par les concepts de base du modèle E.A. que doivent satisfaire les données appartenant à la base de données”.

• Effet: limiter les occurences possibles des structures d’information.

Mariem FARHAT JAOUANI 71

Page 72: modèle Entité-Association

Contrainte d’intégrité statique / dynamique

• Statique: propriété qui doit être vérifiée à tout moment.

• Ex.– un auteur doit écrire au moins un article (cardinalité)– date de mariage d’une personne >date de naissance

• Dynamique: propriété que doit respecter tout changement d’état de la base de données –> définit les séquences possibles des changements d’état de la BD

• Ex.– le salaire d’un employé ne peut que croître

Mariem FARHAT JAOUANI 72

Page 73: modèle Entité-Association

C.I. statiques obligatoires

• Elles complètent obligatoirement la description d’un schéma.

• 3 types de C.I. obligatoires : identification, cardinalité, attribut obligatoire ou facultatif.

(1) Contrainte d’identification:

• Toute entité ou association doit avoir un identifiant: il permet de repérer de manière univoque chaque occurence de ce type.

Mariem FARHAT JAOUANI 73

Page 74: modèle Entité-Association

C.I. statiques obligatoires

(2) Contrainte de cardinalité(ou de connectivité):Définit le nombre minimum et le nombremaximum de participations de chaque occurrence d’entité à une association.

(3) Attribut obligatoire ou facultatif:Un attribut facultatif prend la valeur inexistante s’il n’a pas de sens pour une occurrence d’entité donnée, inconnue si sa valeur n’est pas connue à une date d’observation donnée.

• Remarque: Tous les attributs formant un identifiantsont obligatoires.

Mariem FARHAT JAOUANI 74

Page 75: modèle Entité-Association

C.I. statiques facultatives

• Dans la définition de cette entité, il est normal de considérer comme attributs obligatoires :– N°AVS,– Nom,– Prénom,– Sexe,– adresse;

• comme attribut facultatif : nom de jeune fille–> cet attribut ne prend une valeur que pour les personnes mariées de sexe féminin.

Mariem FARHAT JAOUANI 75

Page 76: modèle Entité-Association

Régles de validation d’un schéma E.A.

• Buts:

(1) vérifier la complétude du schéma

(2) vérifier la cohérence du schéma (absence de

contradictions)

(3) mise sous forme canonique du schéma (la forme canonique possède des propriétés très intéressantes pour les bases de données).

Mariem FARHAT JAOUANI 76

Page 77: modèle Entité-Association

la complétude du schéma

• Chaque classe d’objets (entité, association, attribut, ...) possède toutes les propriétés requise par le modèle E.A.

Mariem FARHAT JAOUANI 77

Page 78: modèle Entité-Association

la complétude du schéma

Mariem FARHAT JAOUANI 78

Page 79: modèle Entité-Association

la complétude du schéma

Mariem FARHAT JAOUANI 79

Page 80: modèle Entité-Association

la complétude du schéma

Mariem FARHAT JAOUANI 80

Page 81: modèle Entité-Association

la cohérence du schéma(absence de contradictions)

• A titre d’exemple:

• Avec la C.I. (contrainte d’inclusion): “un sportif de haut niveau ne peut participer à une compétition que s’il est affilié à une association sportive”.

Mariem FARHAT JAOUANI 81

Page 82: modèle Entité-Association

la cohérence du schéma(absence de contradictions)

• incohérence entre les contraintes de cardinalité et la contrainte d’inclusion !

• Remède:

– soit affaiblir la cardinalité du rôle “participe:SPORTIF H.N.” à (0,N)

– soit supprimer la contrainte d’inclusion

Mariem FARHAT JAOUANI 82

Page 83: modèle Entité-Association

Mise sous forme canonique d’un schéma

• Buts: la production d’un schéma aussi significatif que Possible

• la production d’un schéma stable, c-à-d qui vise à limiter les besoins de restructuration de la base de données lorsque des nouveaux types (entités ou associations) sont introduits

• éviter les anomalies de mise à jour de la base de données (lorsque celle-ci sera en exploitation).

Mariem FARHAT JAOUANI 83

Page 84: modèle Entité-Association

Mise sous forme canonique d’un schéma

• Caractéristiques:

– élimination ou contrôle de la redondance

– élimination des ambiguïtés.

• Processus à posteriori (généralement):

– application d’une suite de règles sur le schéma conceptuel produit par la modélisation

Mariem FARHAT JAOUANI 84

Page 85: modèle Entité-Association

Règles de mise sous forme canonique n°1 et 2

• Règle n°1: unicité des noms et absence d’homonymes

• Chaque objet du schéma (entité, association, attribut, rôle et C.I.) reçoit un nom unique.

• La présence d’homonymes provient de:– on a attribué le même nom à deux objets

sémantiques différents –> compléter ou changer le nom

– on a modélisé deux fois le même objet sémantique –> éliminer un des objets et restructurer le schéma

Mariem FARHAT JAOUANI 85

Page 86: modèle Entité-Association

Règles de mise sous forme canonique n°1 et 2

• On tolère la présence d’homonymes pour les cas suivants:

– les associations ISA

– les attributs “date”

– les attributs “nom” (parfois)

Mariem FARHAT JAOUANI 86

Page 87: modèle Entité-Association

Règle n°2: abscence de synonymes

• Deux objets sémantiques équivalents se retrouvent dans le schéma sous des noms différents –> éliminer un des objets et restructurer le schéma

Mariem FARHAT JAOUANI 87

Page 88: modèle Entité-Association

Règle n°3: tout identifiant doit être minima

• Définition: “Si l’identifiant d’une entité ou d’une association est constitué d’un groupe d’attributs et/ou rôles, alors il n’existe pas au sein de ce groupe un sous-groupe qui forme un identifiant”.

• Exemple: entité ÉDITEUR

– Le nom d’éditeur permet de déterminer de façon l’adresse de celui-ci l’attribut nom éditeur est lui seul l’identifiant

Mariem FARHAT JAOUANI 88

Page 89: modèle Entité-Association

Règle n°4: mise en évidence des attributs dérivables

• “Un attribut est dérivable si sa valeur peut être calculée à partir de la valeur d’autres attributs”.

• Exemples: total, moyenne, écart-type

–> donner sous forme de C.I. la règle de calcul

Mariem FARHAT JAOUANI 89

Page 90: modèle Entité-Association

Règle n°5: élimination de structures redondantes

• Attribut redondant avec une association

• Association sémantiquement redondante avec d’autres association

Mariem FARHAT JAOUANI 90

Page 91: modèle Entité-Association

Règle n°5: élimination de structures redondantes

Mariem FARHAT JAOUANI 91

• Contre Exemple:

Page 92: modèle Entité-Association

désagrégation d’une entité

• Une entité est désagrégeable :

• lorsqu’au moins un de ses attributs exprime un objet de la réalité perçue représentable sous la forme d’une association ou d’une entité.

Mariem FARHAT JAOUANI 92

Page 93: modèle Entité-Association

désagrégation d’une entité

• lorsqu’il y a un attribut répétitif ou composé

Mariem FARHAT JAOUANI 93

Page 94: modèle Entité-Association

désagrégation d’une entité

• lorsqu’il y a des attributs qui dépendent d’autres attributs non identifiant.

Mariem FARHAT JAOUANI 94

Page 95: modèle Entité-Association

désagrégation d’une entité

• lorsqu’il y a des attributs prenant la valeur “inexistante” en fonction de la valeur des autres attributs.

• Si l’ouvrage est de type livre:– ISSN et périodicité prennent une valeur inexistante

• Si l’ouvrage est de type revue:– ISBN, auteur, n°édition, hauteur et largeur prennent une valeur

inexistante désagrégation

Mariem FARHAT JAOUANI 95

Page 96: modèle Entité-Association

désagrégation d’une entité

Mariem FARHAT JAOUANI 96

Page 97: modèle Entité-Association

Mise sous forme canonique

• Mise sous forme canonique = processus de conception

• E.A. : modèle sémantique -> mise sous forme canonique ≠ application systématique de règles (comme c’est le cas dans la normalisation relationnelle)

• Critères à prendre en compte:– élimination de la redondance– Clarté– concision– stabilité du schéma

Mariem FARHAT JAOUANI 97