Vous êtes sur la page 1sur 37

Chapitre 2

LE MODÈLE ENTITÉ/ASSOCIATION
Sommaire
1. Concepts de base et diagrammes EA
2. Représentations multiples: la généralisation/spécialisation
3. Description d'un schéma EA
4. Identifiants des TE et TA
5. Contraintes d'intégrité
Concepts de base et
diagrammes EA
Le modèle entité-association (EA, appelé aussi entité-relation ou ER)
est un modèle de données de type conceptuel.
Utilisé par plusieurs méthodes et outils d'aide à la conception des
bases de données : MERISE, Ida, Yourdon, …
Limité à la description statique : description conceptuelle des
structures de données d'une application
Concepts de base et
diagrammes EA
La perception d'une situation observée se fait naturellement sur la base
d'une identification :
◦ des objets présents : réels (Personne, Voiture, …) ou abstraits (Examen,
Bilan, …)
◦ de liens entre ces objets : une personne conduit une voiture
◦ de propriétés observables : la taille d'une personne, la couleur
d'une voiture, …
Concepts de base et
diagrammes EA
Le modèle EA propose une description sur la base de ces mêmes trois
concepts :

◦ objet → entité

◦ lien → association

◦ propriété → attribut
Concepts de base et
diagrammes EA
Définitions :
Entité : représentation d'un objet du monde réel (concret ou abstrait),
perçu par le concepteur comme ayant une existence propre, et à propos
duquel on veut enregistrer des informations. données.
Exemples: Mr. Amar, la voiture X32, l'atelier de fabrication A22, le
service Comptabilité, … sont des objets susceptibles d'être représentés
par des entités.
Concepts de base et
diagrammes EA
Définitions :
Type d'entité (TE) : représentation d'un ensemble d'entités perçues
comme similaires et ayant les mêmes caractéristiques.
Exemples: Employé (représentation de l'ensemble des employés),
Article, Atelier de fabrication, Service, ...
Concepts de base et
diagrammes EA
Définitions :

Association : représentation d'un lien entre plusieurs entités, lien où


chaque entité liée joue un rôle déterminé. Si l'association lie deux (ou
plus) entités du même type, elle est dite "cyclique" et, dans ce cas, la
spécification du rôle de chaque entité est indispensable pour supprimer
les ambiguïtés possibles.

Exemples: le lien de fabrication entre l'atelier A22 (rôle: producteur) et la


Voiture X32 (rôle: objet produit); le lien de travail entre l'employé Amar et
le service Comptabilité;... peuvent être représentés par des associations
entre les entités correspondantes.
Concepts de base et
diagrammes EA
Définitions :
Type d'entité (TE) : représentation d'un ensemble d'associations ayant
la même sémantique et décrites par les mêmes caractéristiques (liant
des entités de même type avec les mêmes rôles, et possédant les
mêmes propriétés).
Exemples:

• le TA fabrique lie le TE Atelier de fabrication au TE Article, chaque


association de ce TA exprimant le fait qu'un atelier de fabrication donné
fabrique un article donné;
• travaille lie le TE Employé au TE Service pour exprimer que tel employé
travaille dans tel service;
Concepts de base et
diagrammes EA
Définitions :
Attribut : représentation d'une propriété associée à un TE, ou à un TA,
ou participant à la composition d'un autre attribut. L'ensemble des
attributs d'un TE (TA) représente l'ensemble des informations
inhérentes que l'on souhaite conserver sur les entités (associations) du
TE (TA).
Exemples: nom, prénoms, salaire sont des attributs du TE Employé;
quantité-en-fabrication est un attribut du TA fabrique; jour, mois,
année sont des attributs composant un attribut date, ...
Concepts de base et
diagrammes EA
Définitions :

On appelle occurrence d'un TE (TA) toute entité


(association) appartenant à l'ensemble décrit par le
TE (TA).
On appelle population d'un TE (TA) l'ensemble des
occurrences du TE (TA).
La base de données décrite par un schéma EA est
donc l'ensemble des populations des TE et TA
apparaissant dans le schéma.
Concepts de base et
diagrammes EA
•Le modèle EA permet une représentation graphique
assez lisible du schéma d'une base de données.
•Dans cette représentation, appelée diagramme EA,
les TE sont représentés par des rectangles; les TA
sont représentés par des hexagones ou autre
symbole similaire (ovale, losange...). Les attributs
sont soit rattachés au TE (TA) par des traits, soit listés
à l'intérieur du rectangle TE (hexagone TA), au
dessous du nom du TE (TA) et séparés de celui-ci par
une barre (voir l’exemple).
Concepts de base et
diagrammes EA
Exemple :
Le diagramme EA d’une BD pour la gestion d'un supermarché.
Les types d'entité (TE) :
◦ Employé, d'attributs nom et salaire;
◦ Rayon, d'attributs nomR et étage;
◦ Article, d'attributs nomA et type;
◦ Fournisseur, d'attributs nomF et adresse.

Ces TE sont reliés par les types d'association (TA) suivants:


◦ Livraison, d'attribut quantité, liant Fournisseur, Article et Rayon;
◦ Vente, d'attribut quantité, liant Rayon et Article;
◦ Emploi, liant Employé et Rayon;
◦ Chef, cyclique, liant Employé (avec le rôle Inf) et Employé (avec le rôle Sup).
Concepts de base et
diagrammes EA
Exemple :
Concepts de base et
diagrammes EA
Cardinalités : c'est une information supplémentaire exprimant la règle de
participation des entités dans les associations (au niveau des occurrences).
Elles cardinalités consistent en deux nombres, min et max, spécifiant le
nombre minimal et le nombre maximal d'occurrences du TA qui peuvent, à un
instant donné, lier par ce rôle une occurrence quelconque du TE en question;
Les cardinalités possibles pour un rôle (ici, Employé de Emploi) et leur
signification sont les suivantes:
min=0 : un employé peut ne travailler dans aucun rayon

min=1 : un employé doit travailler dans au moins un rayon

max=1 : un employé ne peut travailler dans plus d'un rayon

max=n : un employé peut travailler dans plusieurs rayons


Concepts de base et
diagrammes EA
Les cardinalités possibles et leur signification :

TA cyclique :
Représentations multiples: la
généralisation/spécialisation
Un TE représente une classe d'objets du monde réel perçus comme
similaires et ayant les mêmes caractéristiques. Or, il arrive parfois qu'un
même ensemble d'objets soit perçu d'un certain point de vue comme
une seule classe, mais en même temps perçu d'un autre point de vue
comme plusieurs classes, différentes malgré l'existence de
caractéristiques communes.
On sera donc amené à décrire, en plus du TE génériques, des TE plus
spécialisés, représentant les sous-classes « intéressantes » 
Pour décrire une telle situation atypique, les modèles de données
récents incluent le concept de généralisation/spécialisation: un lien,
orienté, d'un TE spécialisé (ou spécifique) vers un TE générique.
Représentations multiples: la
généralisation/spécialisation
Les liens de généralisation/spécialisation sont souvent appelés
liens "est-un" (IS A); on dit que "Article alimentaire est-un
Article".
Représentations multiples: la
généralisation/spécialisation
Description d'un schéma EA
Un TE est décrit par les spécifications suivantes:
 le nom du type d'entité;
 le nom du (ou des) type(s) d'entité sur-type de ce type d'entité, s'il en existe;
 une définition libre (commentaire) précisant la population exacte du type d'entité;
 la description des attributs du TE;
 la composition des identifiants du TE, s'il en existe

Exemple: description du TE "Employé" de la base de données hypermarché:


 nom : Employé;
 sur-types: / ;
 définition: "toute personne salariée par l'entreprise en ce moment";
 attributs: nom, salaire (avec leur description);
 identifiants: nom.
Description d'un schéma EA
Un TA est décrit par les spécifications suivantes:
 le nom du type d'association;
 une définition libre (commentaire) précisant la population exacte du type
d'association;
 les noms des TE participant au TA, avec le nom du rôle les associant au TA.
En pratique, le nom de rôle n'est obligatoire que pour les associations
cycliques;
 pour chaque rôle, ses cardinalités: min et max sont deux entiers tels que
max≥min, min≥0, max≥1.
 la description des attributs du TA , s'il en existe;
 la composition des identifiants du TA, s'il en existe
Description d'un schéma EA
Exemple:
Description du TA "Emploi" de la base de données hypermarché:
◦ nom: Emploi
◦ définition: "lie un employé au rayon dans lequel cet employé travaille
aujourd'hui"
◦ TE participants: Employé , Rayon
◦ cardinalités: Employé: min=0, max=1 Rayon: min=0, max=n
◦ attributs: /
◦ identifiant: ( Employé•nom + Rayon•nomR1 )
Description d'un schéma EA
Un attribut est décrit par les spécifications suivantes:
◦ nom de l'attribut;
◦ définition libre (libellé en clair);
◦ cardinalités: min et max, spécifiant combien de valeurs de cet attribut sont
autorisées (au minimum, au maximum) dans:
◦ une occurrence du TE (TA), si l'attribut est directement rattaché au TE (TA),
◦ une valeur de l'attribut dont il est composant, sinon (voir ci-dessous).
Dans le cas d'une cardinalité maximale supérieure à 1, on précise si les valeurs de
l'attribut constituent une liste, un ensemble ou un multi-ensemble (valeur par défaut);
◦ si l'attribut n'est pas composé d'autres attributs: domaine de valeurs associé,
spécifiant quel est l'ensemble des valeurs autorisées pour l'attribut;
◦ si l'attribut est composé d'autres attributs: description des attributs
composants.
Description d'un schéma EA
Exemple:
description de l'attribut "nom" du TE Employé de la base de données
hypermarché:

 nom: nom
 définition: "nom de l'employé, nom de jeune fille pour une femme"
 cardinalités: min=1, max=1 (tout employé a un nom et un seul)
 domaine de valeurs: l'ensemble des chaînes de caractères de longueur
inférieure à 15.
Description d'un schéma EA
Exemple: description d'un attribut "date de naissance" d'un TE Personne
- nom: date de naissance
- définition: "date de naissance de la personne"
- cardinalités: min=1, max=1 (tout personne a une date de naissance connue)
- composition:
◦ nom: jour
◦ définition: "jour de naissance de la personne"
◦ cardinalités: min=1, max=1
◦ domaine de valeurs: les entiers dans l'intervalle [1,31]
◦ nom: mois
◦ définition: "mois de naissance de la personne"
◦ cardinalités: min=1, max=1
◦ domaine de valeurs: les entiers dans l'intervalle [1,12]
◦ nom: année
◦ définition: "année de naissance de la personne"
◦ cardinalités: min=1, max=1
◦ domaine de valeurs: les entiers dans l'intervalle [1915,2014]
Terminologie des attributs
attribut simple: un attribut qui n'est pas décomposé en d'autres
attributs: ses valeurs sont atomiques. Un domaine lui est associé.
Exemple: salaire, téléphones
attribut complexe: un attribut qui est décomposé en d'autres attributs:
ses valeurs sont des valeurs composées.
Exemple: adresse, composé de: rue, ville, code postal
attribut monovalué: un attribut qui ne peut prendre qu'une seule valeur
par occurrence (cardinalité max=1).
Exemple: nom, date de naissance
Terminologie des attributs
attribut multivalué: un attribut qui peut prendre plusieurs valeurs par
occurrence (cardinalité max>1).
Exemple: prénoms, téléphones
attribut obligatoire: un attribut qui doit prendre une valeur au moins
par occurrence (cardinalité min=1).
Exemple: nom, prénoms
attribut facultatif: un attribut qui peut ne pas prendre de valeur dans
une occurrence (cardinalité min=0).
Exemple: salaire, téléphones
Identifiants des TE et TA
Définition: un identifiant d'un TE (ou TA) est un ensemble minimum
d'attributs tel qu'il n'existe pas deux occurrences du TE (ou TA) qui ont
la même valeur pour ces attributs.
Un TE, comme un TA, peut avoir plusieurs identifiants; il peut n'en
avoir aucun. Dans ce cas, des occurrences de même valeur sont
autorisées.
Exemple:
n°employé et (nom+prénoms) sont deux identifiants du TE Employé, si
dans cette entreprise il n'y a jamais deux employés ayant les mêmes nom
et prénoms, ou le même numéro.
Identifiants des TE et TA
Les identifiants des TE peuvent être représentés sur le diagramme en les
soulignant (attention à distinguer l'existence de deux identifiants de celle
d'un identifiant composé de deux attributs).
Par contre, pour ne pas surcharger le diagramme, les identifiants des TA
sont en général précisés textuellement en commentaire du diagramme.
Un TA dont tous les rôles ont une cardinalité maximum supérieure à 1, a
souvent (mais pas toujours) un identifiant qui est constitué de
l'ensemble des identifiants des TE liés.
Identifiants des TE et TA
Exemple:
Soit un TA Contrôle, avec une occurrence (donc une moyenne, et un
ensemble de notes) par étudiant par matière suivie. Ce TA représente les
résultats acquis, à ce jour, par un étudiant dans une matière.
Identifiants des TE et TA
Néanmoins, il n'est pas toujours vrai que l'identifiant d'un TA est
constitué de l'ensemble des identifiants des TE liés. Si l'un des rôles du
TA a une cardinalité maximum égale à 1, l'identifiant du TE associé à ce
rôle est un identifiant du TA.

L'attribut numV de Voiture suffit.


Règle: si le TA a une cardinalité maximum égale à 1 pour un des TE liés,
alors tout identifiant de ce TE est identifiant du TA.
Identifiant d'un TE faible
Un TE est dit faible si aucun sous-ensemble de ses attributs ne constitue
un identifiant et qu'un identifiant peut être défini en intégrant un identifiant
d'un autre TE' qui lui est lié par un TA binaire de cardinalité (1,1) pour TE.
On dit dans ce cas que TE dépend de TE'.
Exemple :
Identifiant d'un TE sous-
type
Soit E un TE sous-type du TE E', alors tout identifiant de E' est aussi
identifiant de E. E n'a pas nécessairement d'identifiant qui lui soit
propre.
Dans l'exemple de l'hypermarché, Article alimentaire, Article
habillement et Article Hi-Fi ont tous les trois pour identifiant celui de
Article (n°code). :
Contraintes d'intégrité
 Les concepts d'entité, d'association, d'attribut et de sous-type ne
suffisent pas à décrire tout ce qui caractérise les données d'un schéma
EA.
 Il faut modéliser les règles de gestion en contraintes d’intégrité.
 On utilise la logique du premier ordre (logique de prédicats)

Exemple :

• La règle : « le salaire de l’employé ne diminue jamais » est modélisée


comme suit :

∀ x∈ Employé, ∀ t1,t2∈Temps, t2>t1 ⇒ x(t2)•salaire >= x(t1)•salaire


Contraintes d'intégrité
Classification des CI :

 Contraintes d'intégrité sur les attributs :


 age ∈ [0,130]
 si mois∈{4, 6, 9, 11} alors jour∈[1:30] , sinon si mois=2 alors
jour∈[1:29] sinon jour∈[1:31]

 Contraintes d'intégrité sur les cardinalité :


 nombre-enfants = nombre d'occurrences du TA "est parent de" qui
lient ce Parent.

 Contraintes d'intégrité sur les généralisations/spécialisations :


 contrainte de couverture
 contrainte de disjonction
 contrainte de partition
Contraintes d'intégrité
Classification des CI :

 Contraintes d'intégrité sur les généralisations/spécialisations :


 contrainte de couverture
 contrainte de disjonction
 contrainte de partition
Conclusion
un schéma conceptuel entité association est un ensemble de
descriptions de types d'entité et de types d'association (avec leurs
attributs et les liens de généralisation entre types d'entité), et des
contraintes d'intégrité (CI) associées:

schéma conceptuel EA = ( {TE}, {TA}, {CI} )

Vous aimerez peut-être aussi