Vous êtes sur la page 1sur 21

Modlisation Entit Association

M. Boughanem 1
Modle entit association

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

M. Boughanem 2
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 Modlisation Traitement


Entit association
Document

schma
Entit-Association Rsultat

Transformation
en relationnel Traitement

Schma logique
en relationnel Rsultat

M. Boughanem 3
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 :
langage graphique
concepts simples :
Choses (objets)->entits
liens entre les choses (objets)-> association
regroupement des choses de mme nature :
classes dentits, classes dassociation.

M. Boughanem 4
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

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


REALISATEURS

FILMS CINEMA REALISATEURS


ACTEURS

Une entit est une valeur particulire dune classe dentits.


Nous nous intressons bien sr la classe dentits

M. Boughanem 5
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
Nom de l association

Exemple
Rle Rle

JOUE FILMS
ACTEURS

Nous nous intressons bien sr la notion de classe


dassociations, qui regroupe toutes les associations
possibles entre deux entits

M. Boughanem 6
Convention

Souvent pour simplifier les choses :


On parle dentit pour dsigner une classe dentits et
dassociation pour dsigner une classe dassociation

M. Boughanem 7
Proprits = Attributs

Proprit :
une donne lmentaire que l on peroit sur une entit ou
une association
Exemple :
Pour les entits
Nom, prnom pour lentit ACTEURS
Titre et Metteur en scne pou FILMS
Nom et Adresse Pour CINEMA
Formalisme graphique

ACTEURS CINEMA FILM


Nom Nom Titre
Prnom Adresse 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 8
Proprits

Schma global

JOUE FILMS
ACTEURS
Rle
Titre
Nom
Metteur_en
Prnom
_scne

REALISE

AFFICHE

REALISATEURS Date

Nom CINEMA
Prnom

Nom
Adresse

M. Boughanem 9
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 :


implicite, obtenu en juxtaposant les identifiants des entits
qui participent la liaison.

M. Boughanem 10
Exemple

Schma global

JOUE FILMS
ACTEURS

NumActeur
NumFilm, NumFilm
NumActeur
Rle Titre
Nom
Metteur_en
Prnom
_scne

REALISE

NumReal
AFFICHE
NumFilm
NumCinma
REALISATEURS NumFilm
Date
NumReal
Nom
Prnom CINEMA

NumCinma
Attention : souvent quand une date figure dans Nom
une association, elle fait partie de la cl Adresse

M. Boughanem 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,1 B
A

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

1,1 B
A

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


aucune ou plusieurs entits de B

0,N B
A

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


une ou plusieurs entits de B

1,N B
A

M. Boughanem 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 min, max


A B

Min : Correspond la rponse la question :


combien de fois au moins une entit de A est reli une
entit de B
Max : correspond la rponse la question :
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)

1,N JOUE FILMS


ACTEURS 0,N

NumActeur
NumFilm, NumFilm
NumActeur
Rle Titre
Nom
1,1 Metteur_en
Prnom
_scne

REALISE
NumReal
AFFICHE
NumFilm
NumCinma
REALISATEURS NumFilm
Date
NumReal
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
Un nom
La liste des entits qui participent l association
Les rles et leur cardinalit
La liste des attributs (ventuellement)

M. Boughanem 16
Dmarche de conception

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).

M. Boughanem 17
Lien entre le modle Entit Association
et le modle relationnel

Modle E/A Modle relationnel


Association; Entit Table(relation)
Proprit Attribut
Identifiant Cl Primaire

M. Boughanem 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

ACTEURS(NumActeur,Nom, Prnom)
NumActeur
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

JOUE(NumActeur,NumFilm, Rle)
NumActeur
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 :
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)

Loptimisation dit :
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.

M. Boughanem 20
Passage dun schma Entit/Association
un Schma Relationnel (3)

Rsultat le schma Final de la base de donnes est :

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)

M. Boughanem 21

Vous aimerez peut-être aussi