Systèmes d’information et
Bases de données (niveau 1)
Cours n° 2
Violaine Prince
Modèle des données : modèle entité-association (E-A)
Aussi nommé E-R (entity relationship)
Première apparition en France en 1972, dans un groupe de recherche formé
d’universitaires et d’industriels.
Intégration à la méthode MERISE (Tardieu)
Première apparition internationale en 1979 (travaux de Chen).
Congrès international dédié à E-R
Ancêtre de la notation UML (Unified
Modèle des données : modèle entité-association (E-A)
Propriétés
: Étend les relations du modèle réseau
S’appuie sur les propriétés des relations entre ensembles
Modèle conceptuel et non pas navigationnel
A une équivalence dénotationnelle avec le modèle relationnel (modèle logique)
Toute conception peut être validée par un utilisateur non informaticien (modèle lisible)
Il existe des règles de normalisation du modèle E- A qui permettent d’avoir un modèle relationnel de
modèle entité-association (E- A): les entités
Définition d’une entité
:(abréviation de « classe d’entités ») Ensemble d’individus ou d’objets intéressants
pour le système d’information, et qui est décrit par les propriétés que partagent tous ces individus.
Les propriétés
Elles peuvent être identifiantes : nom, prénom, matricule, numéro…
Ou descriptives : désignation, date de naissance, modèle, etc…
modèle entité-association (E- A): les entités
Règle de constitution d’une entité
Il faut qu’il y ait plus d’un individu dans l’entité
Toute entité est décrite par au moins un attribut identifiant
Toute entité reçoit un nom qui permet de la désigner.
Quelques informations
Le nombre d’individus qui peuplent une entité s’appelle sa population.
Dans le modèle E-A, tous les individus ont des valeurs associées à tous les attributs.
modèle entité-association (E- A): les attributs
Règle de non redondance
Si un attribut sert à décrire une entité, alors il ne peut figurer nulle part ailleurs que cette entité.
Remarque
Des attributs tels que « nom » ou « prénom »
peuvent apparaître plusieurs fois. Mais il ne s’agit pas du même attribut.
Par exemple, supposons que l’on ait une entité
« ETUDIANT » et une entité « ENSEIGNANT ».
Le nom, chez l’étudiant, sera désigné par « nom-
modèle entité-association (E- A): les entités
Représentation graphique d’une entité
NOM_ENTITE Attribut-1 Attribut-2
….
Attribut-n
L’attribut (ou les Attributs)
Identifiant(s) Est
(sont) souligné(s)
modèle entité-association (E- A): identifier les entités
L’identifiant :
Appelé aussi « clé »
Il peut être composé d’un seul attribut (ex: numéro)
Ou de plusieurs (ex: le couple « nom, prénom ») lorsqu’un seul ne suffit pas à identifier suffisamment (risques
d’homonymies)
Il est soit choisi par le concepteur, soit « calculé » (choisi par une méthode plus formelle)
Il permet de reconnaître chaque individu (par sa valeur)
Il dépend de la nature de la population
modèle entité-association (E- A): les entités
Exemple
ETUDIANT
Numéro-étu Nom-étu Prénom-étu Date-naissance
(200599675940, Durand,Paul,1987) (200599675943, Martin, Pierre, 1988)
…..
modèle entité-association (E- A): les associations
Toutes les entités sont liées entre elles par des associations.
Ces dernières sont des relations d’ensembles.
Elles indiquent que tout ou partie de la population respective des entités est en relation.
Les associations sont nommées
Elles peuvent avoir des attributs propres
modèle entité-association (E- A): les associations
Représentation d’une association
E1
________
At-1 At-2
… At-n
E2
_________
A-1 A-2
… A-m Assoc.
______
modèle entité-association (E- A): arité des propositions
L’arité d’une association:
C’est le nombre d’entités différentes qu’elle relie.
Association unaire : l’entité est reliée avec elle- même.
Association binaire : l’association relie deux entités
Ternaire, quaternaire, etc.
En général on dépasse rarement les associations quaternaires.
modèle entité-association (E- A): arité des associations
Exemple d’association binaire
Etudiant __________
Numéro-et Nom prénom
Date-naissance
Diplôme
____________
Code-diplôme Nom-dipl Niveau-dipl Mention-dipl Est-ins-
-crit à.
---
modèle entité-association (E- A): les associations
Exemple d’association ternaire
Etudiant __________
Numéro-et Nom prénom
Date-naissance
Matière
____________
Nom-matière Discipline étudie
---
Professeur ---
Nom Prénom
modèle entité-association (E- A): les associations
Une association est en fait un n-uplet de relations (où n est l’arité de l’association) entre les ensembles qui matérialisent les entités.
Dans une association binaire A, entre deux entités E1 et E2
Une relation de E1 dans E2
Une relation de E2 dans E1
Dans une association ternaire A entre trois entités E1, E2, E3
Une relation de E1 dans E2xE3
Une relation de E2 dans E1xE3
Une relation de E3 dans E1xE2
modèle entité-association (E- A): les associations
Même si une association se « lit » de gauche à droite, elle correspond à des relations dans les deux sens.
En tant que n-uplet de relations, les
propriétés de l’association sont définies par
les propriétés des relations entre ensembles
(injection, surjection,…)
modèle entité-association (E- A): Association un-à-un
Définition
Soit une association A entre deux entités E1 et E2. A est composée des deux relations :
R1 : E1—>E2 e1 —> R1(e1)
R2 : E2 —>E1 e2 — > R2(e2)
A est dite un à un si et seulement si :
R1 est telle que pour tout e1 de E1 il existe au plus une image de e1 par R1 dans E2
R2 est telle que pour tout e2 de E2, il existe au plus une image de e2 par R2 dans E1
Et R2 duale de R1
modèle entité-association (E- A): exemple d’association un-à-un
X1 X2 X3
… Xm
Y1 Y2 Y3 Y4
… Yk
E1 E2
R1 R2 R1
R2
modèle entité-association (E- A): exemple d’association un-à-un
PERSONNE
———————
Nom Prénom Date-nais.
POSSEDE
——————
CARTE D’E- TUDIANT
———————
Numéro-étud Année-univ
Formation Composante Dans une université donnée
modèle entité-association (E- A): Association un-à-un
Cas particulier d’association un-à-un:
Lorsque R1 et R2 sont bijectives
Tous les éléments de E1 ont une image et une seule
Tous les éléments de E2 ont une image et une seule
Cette association est appelée
« association d’assimilation »
Elle pousse vers la fusion des entités
modèle entité-association (E- A): Association d’assimilation
Dans le système d’information d’une université, on
fusionnera les
« personnes » et les «cartes
d’étudiants » en une
entité unique
« ETUDIANT » ETUDIANT
————————
Numéro-étu Nom-étu Prénom-étu
Date-nais Formation Composante
modèle entité-association (E- A): Association un-à-plusieurs
Définition
Soit une association A entre deux entités E1 et E2. A est composée des deux relations :
R1 : E1—>E2 e1 —> R1(e1)
R2 : E2 —>E1 e2 — > R2(e2)
A est dite un à plusieurs si et seulement si :
R1 est telle que pour tout e1 de E1 il existe au plus une image de e1 par R1 dans E2
R2 est telle que pour tout e2 de E2, il existe plusieurs images de e2 par R2 dans E1
modèle entité-association (E- A): Association un-à-plusieurs
Remarque
Dans le modèle E-A R1 et R2 ne sont pas forcément sémantiquement indépendantes. R1 et R2 sont liées : lorsqu’il existe une image e2 dans E2, par R1, d’un élément e1 de E1 alors e1 est forcément une image par R2 de e2.
L’association est appelée association hiérarchique
Elle crée une arborescence entre les individus
d’une entité et les individus de l’autre.
modèle entité-association (E- A): Association un-à-plusieurs
explication
Si l’individu x1 est le « père » de y1, y2, y3 alors pour chaque yi, yi est un « fils » de x1.
Remarque
Attention, tous les individus ne sont pas
forcément reliés par les relations R1 et R2. Des
individus de l’entité E1 peuvent n’être « père »
d’aucun individu de l’entité E2, et inversement.
modèle entité-association (E- A): exemple d’association un-à-plusieurs
X1 X2 X3
… Xm
Y1 Y2 Y3 Y4
… Yk
E1 Association E2
hiérarchique
modèle entité-association (E- A): exemple d’association un-à-plusieurs
VILLE
—————
Nom-ville Département
Pays
MUSEE
—————
Nom-musée type
Possède
—————
modèle entité-association (E-A):
Association plusieurs-à-plusieurs
Définition
Soit une association A entre deux entités E1 et E2. A est composée des deux relations :
R1 : E1—>E2 e1 —> R1(e1)
R2 : E2 —>E1 e2 — > R2(e2)
A est dite plusieurs à plusieurs si et seulement si :
R1 est telle que pour tout e1 de E1 il existe plusieurs images de e1 par R1 dans E2
R2 est telle que pour tout e2 de E2, il existe plusieurs images de e2 par R2 dans E1
Et telles que R1 et R2 sont liées.
modèle entité-association (E-A): exemple d’association plusieurs-à-plusieurs
X1 X2 X3
… Xm
Y1 Y2 Y3 Y4
… Yk
E1 Association E2
banalisée
modèle entité-association (E-A): exemple d’association plusieurs-à-plusieurs
Association banalisée
ENSEIGNANT
——————
Nom-ens Prénom-ens
Grade
département
ETUDIANT
——————
Numéro-étu Nom-étu Prénom-étu
Formation Enseigne-à
——————
modèle entité-association (E-A): les cardinalités des couples E-A
Les relations qui composent une association A ont des propriétés.
Parmi elles :
Est-ce que tout élément de l’ensemble de départ a au plus une image dans l’ensemble d’arrivée ? (relation injective)
Est-ce que tout élément de l’ensemble de départ a obligatoirement une image dans l’ensemble d’arrivée ? (relation surjective)
Est-ce que tout élément de l’ensemble de départ a plusieurs images dans l’ensemble d’arrivée ?
Ces questions définissent les cardinalités des couples E-A, c’est-à-dire les propriétés des relations où E est ensemble de départ de la relation.
modèle entité-association (E-A): les cardinalités des couples E-A
Définition
Soient deux entités E1 et E2 reliées par une association binaire A.
Soient les relations R1 et R2 composant A, telles que :
R1 est la relation dont l’ensemble de départ est E1
R2 est la relation dont l’ensemble de départ est E2.
On définit la cardinalité du couple E1-A, respectivement E2-A, comme un couple (x,y) de symboles pouvant
prendre les valeurs suivantes :
X=0 si R1 (respectivement R2) n’est pas surjective, X=1 sinon
Y=1 si R1 (respectivement R2) est injective, Y=n sinon
Modèle entité-association(E- A): exemples de cardinalités
ENSEIGNANT CHERCHEUR
——————
Nom Prénom
Grade
département
Enseigne-à
———————
Un enseignant-chercheur peut n’enseigner à aucun étudiant
(0, n)
Un enseignant-chercheur enseigne généralement à plusieurs étudiants
Modèle entité-association(E- A): exemples de cardinalités
ETUDIANT
——————
Numéro Nom-ét Prénom-ét
formation Enseigne-à
———————
Un étudiant est « forcément » enseigné par quelqu’un
Un étudiant est en général enseigné par plusieurs (1,n)
Modèle entité-association(E- A): exemples de cardinalités
ETUDIANT
——————
Numéro Nom-ét Prénom-ét
formation Enseigne-à
—————
(1,n) ENSEIGNANT-
CHERCHEUR
—————
Nom Prénom
Grade
département
(0,n)
Modèle entité-association (E- A): cardinalités
Propriétés :
Une association plusieurs-à-plusieurs a ses maxima (Y) tous les deux à n
Une association un-à-un a ses maxima tous les deux à 1
Une association un-à-plusieurs a un de ses
maxima à 1 et l’autre à n.
Modèle entité-association (E- A): problèmes de modélisation
La constitution des entités :
Une entité a au moins un attribut
Une entité a plus d’un individu
On ne modélise jamais l’environnement comme entité (pas de réflexivité)
Les attributs choisis doivent être pertinents par rapport au problème
Le choix de l’identifiant doit être également
argumenté
Modèle entité-association (E- A): problèmes de modélisation
La constitution des associations :
Une association est une « action » de liaison (correspond souvent à un verbe)
Elle ne reprend pas les attributs des entités qu’elle lie (modèle logique des données, à voir dans le
modèle relationnel)
Elle a des attributs propres si et seulement si ce sont des attributs propres à l’action (compléments circonstanciels de temps, de lieu, manière…)
Ces attributs ont des contraintes que nous
décrirons lors de la définition des dépendances fonctionnelles.
Modèle entité-association (E- A): problèmes de modélisation
La cardinalité des couples entité- association:
Définition des minima :
Si vous mettez 0 alors cela signifie que es individus de cette entité peuvent ne pas être liés par cette association
Exemple : une ville peut ne pas posséder de musée.
Si vous mettez 1, cela signifie qu’obligatoirement tous les individus de cette entité participent à cette association.
Attention, c’est une contrainte très forte ! Ne mettez 1 que si votre problème signale bien une obligation.
Exemple : toute mairie est obligatoirement associée à une collectivité locale.
Modèle entité-association (E- A): problèmes de modélisation
La cardinalité des couples entité- association:
Définition des minima :
Si vous mettez 0 alors cela signifie que les individus de cette entité peuvent ne pas être liés par cette association
Exemple : une ville peut ne pas posséder de musée.
Si vous mettez 1, cela signifie qu’obligatoirement tous les individus de cette entité participent à cette
association.
Attention, c’est une contrainte très forte ! Ne mettez 1 que si votre problème signale bien une obligation.
Exemple : toute mairie est obligatoirement associée à une collectivité locale.
Modèle entité-association (E- A): problèmes de modélisation
La cardinalité des couples entité- association:
Définition des maxima :
Si vous mettez n alors cela signifie que les individus de cette entité peuvent être liés à de nombreux individus, par cette association, ce nombre étant a priori inconnu ou variable.
Exemple : une ville peut posséder plusieurs musées.
Si vous mettez un entier connu, c’est une contrainte que vous modélisez .
Exemple : dans une partie de belote, un joueur est associé à au plus 3 autres joueurs. On mettra un maximum à 3.
Si vous mettez 1, cela signifie qu’un individu ne peut pas être lié à plus d’un individu par cette association.
Exemple : un musée n’appartient pas à plusieurs villes
Modèle entité-association (E- A): problèmes de modélisation
Non pérennité de la modélisation
Un modèle E-A modélise un réel que vous
percevez au moment de faire la modélisation.
Ce réel peut changer par la suite : on change alors le modèle en fonction des modifications du système.
On n’implémente le modèle que lorsqu’on est raisonnablement sûr de sa modélisation.
Qualité du modèle
Validation par les futurs utilisateurs
Modèle entité-association (E- A): problèmes de modélisation
Non unicité
Quand vous modélisez, vous vous faites
forcément une image de ce que vous percevez.
Vous devez argumenter vos choix pour convaincre les autres :
De la pertinence de vos hypothèses (qualitatif)
De la cohérence de votre modèle (se « démontre »)
Par conséquent, il n’existe pas un bon modèle unique pour un problème donné. Il peut exister des modèles de qualité différente, une fois les modèles incohérents éliminés.
Modèle entité-association (E- A): problèmes de modélisation
Non unicité
Quand vous modélisez, vous vous faites
forcément une image de ce que vous percevez.
Vous devez argumenter vos choix pour convaincre les autres :
De la pertinence de vos hypothèses (qualitatif)
De la cohérence de votre modèle (se « démontre »)
Par conséquent, il n’existe pas un bon modèle unique pour un problème donné. Il peut exister des modèles de qualité différente, une fois les modèles incohérents éliminés.
Modèle entité-association (E- A): problèmes de modélisation
Méthodologies de modélisation
Il existe deux méthodes vous permettant de réaliser votre modèle E-A :
Une méthode descendante :
Vous énumérez les propriétés pertinentes et constituez ensuite les entités et les assocations en appliquant les différentes
contraintes de modélisation
Une méthode ascendante :
Vous repérez les propriétés comme des ensembles de valeurs.
Vous définissez des relations entre ces propriétés. Vous
constituez les entités par un « graphe des dépendances » entre propriétés, et vous « devinez » certaines associations grâce à l’existence de leurs attributs, ou à l’existence de sous-
Modèle entité-association (E- A): problèmes de modélisation
En pratique,
On commence toujours par modéliser selon la méthode descendante,
Et on vérifie qu’on n’a pas oublié d’attributs
Ou qu’on ne s’est pas trompé dans les attributs d’association (s’il y en a)
Ni dans les types d’association (si on a des indices dans le graphe des dépendances)
Grâce à la méthode ascendante.