Vous êtes sur la page 1sur 21

Modlisation Entit Association

M. Boughanem

Modle entit association

M. Boughanem

Concepts de base
Entits
Associations
Proprits
Identifiant
Cardinalits des rles
Exemple
Dmarche de conception
Passage du modle Entit/Association au modle
relationnel

Pourquoi le modle Entit Association?


dmarche de construction d une BD
Pour construire une base de donnes, il faut
1.
Construire un schma conceptuel, modlis sous forme
dentits et dassociations
2.
transformer le schma E/A en schma relationnel
3.
Mettre en uvre via un SGBD

Interview
Document

Modlisation
Entit association

schma
Entit-Association

Transformation
en relationnel

Schma logique
en relationnel

M. Boughanem

Traitement

Rsultat

Traitement

Rsultat

Le modle Entit/ Association


Concepts de base

LE modle E/A est un Formalisme graphique pour la


modlisation de donnes

Origine : Travaux de Chen (USA), Tardieu(France), en


74/75

Succs dus :

M. Boughanem

langage graphique
concepts simples :

Choses (objets)->entits

liens entre les choses (objets)-> association

regroupement des choses de mme nature :


classes dentits, classes dassociation.

Entits
Une entit : est un objet, un vnement, un lieu, une personne, , une
chose, identifiable sans ambigut

Exemple : le cinma ABC, le cinma le GAUMONT, lacteur Woody Allen,


le film le bonheur est dans le pr , le film coups de feu sur
Broadway , 37.2

Classe dentits : cest un regroupement dentits de mme nature.


Un ensemble dentits

Exemple : Cinma, Acteurs, Films, etc.


Formalisme de classe d entit : reprsentation graphique

Nom de la
classe d Entits

FILMS

Exemple de 4 classes dentits : FILMS, CINEMA, ACTEURS,


REALISATEURS
CINEMA

ACTEURS

REALISATEURS

Une entit est une valeur particulire dune classe dentits.


Nous nous intressons bien sr la classe dentits

M. Boughanem

Associations
Une association : Cest un lien entre 2 ou plusieurs
entits

Exemple :

woody allen a jou dans Coups de feu sur brodway


Tannenbaum a crit louvrage Rseaux Informatique

Classe dassociation :

Cest un lien entre 2 ou plusieurs classes dentits.


Exemple : Jouer (entre FILMS et ACTEURS),
Affiche(entre CINEMA et FILMS),. REALISE (entre
REALISATEURS et FILMS)
Chaque Entit joue un rle dans une association

Formalisme graphique

Exemple
ACTEURS

Nom de l association

Rle

Rle
JOUE

FILMS

Nous nous intressons bien sr la notion de classe


dassociations, qui regroupe toutes les associations
possibles entre deux entits
M. Boughanem

Convention

Souvent pour simplifier les choses :

M. Boughanem

On parle dentit pour dsigner une classe dentits et


dassociation pour dsigner une classe dassociation

Proprits = Attributs

Proprit :

une donne lmentaire que l on peroit sur une entit ou


une association
Exemple :
Pour les entits

Formalisme graphique

ACTEURS
Nom
Prnom

Nom, prnom pour lentit ACTEURS


Titre et Metteur en scne pou FILMS
Nom et Adresse Pour CINEMA

CINEMA
Nom
Adresse

FILM
Titre
Metteur_En_
scne

Pour les associations : FAIRE ATTENTION, les proprits


que lon met dans une association doivent obligatoirement
relier les entits

Par exemple le Rle dun acteur. Le rle relie, un acteur et le


film dans lequel il a jou
Graphiquement cela donne

JOUE
Rle

M. Boughanem

Proprits

Schma global

ACTEURS

JOUE

FILMS

Rle
Nom

Titre

Prnom

Metteur_en
_scne

REALISE

AFFICHE
Date

REALISATEURS

Nom

CINEMA

Prnom
Nom
Adresse

M. Boughanem

Identifiant

Objectif : chaque occurrence doit pouvoir tre repre de


manire unique et sans ambigut, pour tre distingue de
toutes les autres

Identifiant : proprit ou groupe de proprits dont la


valeur identifie sans ambigut une entit ou une liaison
dune classe (identifiant=cl primaire).

Identifiant d une classe dentits :

Attributs ou groupe dattributs qui permet de reprer une


occurrence de manire unique. On souligne lidentifiant.
Un seul identifiant.
On privilgie lidentifiant le plus court, le plus naturel (nbon
de commande, n tudiant,)
On peut crer un identifiant artificiel par commodit. Dans le
cas de notre exemple il est intressant de crer un
identifiant artificiel pour chaque entit
Identifiant non variable dans le temps.

Identifiant dune association :

M. Boughanem

implicite, obtenu en juxtaposant les identifiants des entits


qui participent la liaison.

10

Exemple

Schma global

ACTEURS

JOUE

FILMS

NumActeur
NumActeur

NumFilm,

NumFilm

Nom

Rle

Titre
Metteur_en
_scne

Prnom
REALISE
NumReal
NumFilm

AFFICHE
NumCinma

REALISATEURS

NumReal

NumFilm
Date

Nom
Prnom

CINEMA

NumCinma

Attention : souvent quand une date figure dans


une association, elle fait partie de la cl

M. Boughanem

Nom
Adresse

11

Typologie des associations :


cardinalits des rles (1)

Une association permet de relier, une ou plusieurs entits.


Le rle dtermine la faon dont les entits sont relies.
3 types dassociation

De 0,1 : une entit de A peut tre relie aucune ou une


seule entit de B

0,N

De 1 plusieurs (1,N) : une entit de A peut tre relie


une ou plusieurs entits de B

M. Boughanem

1,1

De 0 plusieurs (0,N) : une entit de A peut tre relie


aucune ou plusieurs entits de B

De 1,1 : une entit de A est relie une seule entit de B

0,1

1,N

12

Typologie des associations :


cardinalits des rles (2)

Le rle dune association est dfini par deux nombres


(min,max) reprsentant le nombre de fois minimum et le
nombre de fois maximum qu une entit participe une
association.
Les valeurs possibles sont : (0,1), (1,1); (0,N), (1,N)
min, max

combien de fois au moins une entit de A est reli une


entit de B

Max : correspond la rponse la question :

Min : Correspond la rponse la question :

min, max

combien de fois au plus une entit de A est reli une


entit de B

Attention ces questions, il faut les poser dans les deux


sens de A vers B puis de B vers A.

M. Boughanem

13

Exemple (1)

Schma globale (voir commentaires)

ACTEURS

1,N

JOUE

0,N

FILMS

NumActeur
NumActeur

NumFilm,

NumFilm

Nom

Rle

Titre
1,1

Prnom

Metteur_en
_scne

REALISE
NumReal
NumFilm

AFFICHE
NumCinma

REALISATEURS

NumReal

NumFilm
Date

Nom
Prnom

CINEMA

NumCinma
Nom
Adresse

M. Boughanem

14

Exemple (2)
Commentaires :
Acteurs vers Films : le rle de type 1,N
(1) un acteur a jou dans au moins un film
(N) un acteur peut avoir jou dans plusieurs films
De Films vers Acteurs 0,N:
(0) : un film nayant pas dacteurs, possible si cest un
film documentaire
(N) : un film peut avoir plusieurs acteurs
De Films vers Ralisateurs :
Un film a au moins un ralisateur min=1 dailleurs
souvent
Il y a au plus un ralisateur (max=1). Un film a un seul
ralisateur
Exercice : complter le schma ?

M. Boughanem

15

Rgles de compltude

Chaque classe d objets (entit , association, attribut) doit


possder toutes les proprits requises par le modle EA.
Pour une entit

Un nom
Une liste d attributs
Un identifiant

Pour une association

M. Boughanem

Un nom
La liste des entits qui participent l association
Les rles et leur cardinalit
La liste des attributs (ventuellement)

16

Dmarche de conception

M. Boughanem

Identifier les entits les plus naturelles (sujets,


complments)

Identifier les associations entre ces entits ( verbes


nexprimant pas de dpendances fonctionnelles) .

Identifier les attributs et les identifiant de ces entits et


de ces association (complments de verbe exprimant des
dpendances fonctionnelles).

Exprimer les cardinalits et les rles (distinguer le singulier


du pluriel).

Enumrer des CI (Contraintes d Intgrit).

17

Lien entre le modle Entit Association


et le modle relationnel

M. Boughanem

Modle E/A
Association; Entit
Proprit
Identifiant

Modle relationnel
Table(relation)
Attribut
Cl Primaire

18

Passage dun schma Entit/Association


un Schma Relationnel (1)

Etape 1 : Toute classe dentits du diagramme entit/association


est reprsente par une relation dans le schma relationnel
quivalent. La cl de cette relation est lidentifiant de la classe
dentits correspondante.
ACTEURS

NumActeur

ACTEURS(NumActeur,Nom, Prnom)

Nom
Prnom

Etape 2 : Toute classe dassociation est transforme en relation.


La cl de cette relation est compose de tous les identifiants des
entits participantes.

JOUE
NumActeur

JOUE(NumActeur,NumFilm, Rle)

NumFilm,
Rle
IMPORTANT :
NumActeur et NumFilm sont des cls trangres dans JOUE

M. Boughanem

19

Passage dun schma Entit/Association


un Schma Relationnel (2)

Etape 3 (optimisation) : Toute classe dassociations relie une


classe d entits avec une cardinalit de type 0,1 ou 1,1 peut
tre fusionne avec la classe d entits. Dans ce cas on dplace
les attributs de la classe d associations vers ceux de la relation
traduisant la classe d entits.

Notre schma peut tre optimis car il contient une


association de type 1,1.

A lissue de ltape de 2 de notre transformation nous


aurons donc :

Loptimisation dit :

M. Boughanem

ACTEURS(NumActeur, Nom, Prnom)


FILMS(NumFilm, Titre, MetteurEnScne)
CINEMA(NumCinma, Nom, Adresse)
REALISATEURS(NumReal,Nom, Prnom)
JOUE(NumACteur, NumFilm, Rle)
AFFICHE(NumFilm, NumCinema,Date)
REALISE(NumFilm,NumRal)

La table qui traduit lassociation REALISE na pas lieu


dtre. Il faut lliminer.
On dplace les attributs de REALISE (NumFilm et
NumReal) vers ceux de FILMS (ct duquel jai (1,1)).
La table Films devient alors
FILMS(NumFilm, Titre, MetteurEnScne,NumReal)
Attention : mettre NumFilm une seule fois.

20

Passage dun schma Entit/Association


un Schma Relationnel (3)

Rsultat le schma Final de la base de donnes est :

M. Boughanem

ACTEURS(NumActeur, Nom, Prnom)


FILMS(NumFilm, Titre, MetteurEnScne,NumReal)
CINEMA(NumCinma, Nom, Adresse)
REALISATEURS(NumReal,Nom, Prnom)
JOUE(NumACteur, NumFilm, Rle)
AFFICHE(NumFilm, NumCinema,Date)

21

Vous aimerez peut-être aussi