Vous êtes sur la page 1sur 56

Modliser des donnes, lexemple

du modle entit-association
Modliser les donnes dun systme logiciel, cest construire une
structure de donnes contraintes, reprsentative du rel observ.
Lorsquon analyse les informations vhicules dans un systme dinformation de gestion, on
observe certes le rel , directement (analyse de documents ou dune application existante, par
exemple) ou indirectement (entrevues avec des utilisateurs, par exemple). Cette rfrence au
rel ne doit pas tre oublie sous peine de construire des systmes dlucubration ! Il nen
demeure pas moins que lanalyse et la conception se fondent, quelque niveau que ce soit, sur des
reprsentations, autrement dit des abstractions :
!

On ne retient pas tout ce quon peut observer : on retient ce qui formalise le point de vue de
lorganisation.

On ne recense pas tous les exemplaires passs ou prsents, encore moins venir ! On
recherche des similitudes, on labore des types.

Un objet est pens et non pas senti.


Alain
Lorsquon conoit un systme logiciel, on fait lhypothse que lensemble des donnes retenues
est structurable cest--dire que les lments retenus entretiennent des rapports entre eux
et que la nature de chaque rapport peut tre dtermine puisquil exprime quelque chose.
1

Dans tous les domaines de la connaissance, on procde ainsi. Ltude des mthodes de conception
de systmes logiciels en fournirait une nouvelle preuve :
!
!
!

On chercherait tablir des typologies, cest--dire distinguer dans lensemble des


mthodes certaines catgories : les mthodes cartsiennes, les mthodes systmiques,
On donnerait des exemples : Merise est une mthode systmique.
On montrerait aussi quune mthode est compose , par exemple de quatre types
dlments : des modles, des langages, des dmarches, des outils.

Catgorisation, instanciation, composition font partie des types dabstraction les plus usits pour
structurer nos connaissances. Pour apprendre modliser, il faut comprendre ce quapporte
chacun de ces types dabstraction, quelles rgles structurelles les gouvernent, donc sur quels
implicites ils reposent, et quelles prcisions ils permettent dexpliciter. Pour apprendre
modliser, il faut en dautres termes apprendre structurer et exprimer des contraintes.

Hypothse justifie (comme dans toute activit humaine industrieuse ) par le fait que les systmes quelle permet de
construire rpondent aux besoins noncs.

http://www.reseaucerta.org

Michel Auguste mai 2004

Page 1/56

Concrtement, cest quoi labstrait ?


I Structurer
Labstraction est une
procdures complexes
dynamique du terme)
accumuler et restituer

capacit typique de ltre humain : sa matrise de structures et de


ne serait pas aussi leve sil navait pas su doter sa mmoire (au sens
de facults typiques dabstraction, quil utilise quotidiennement pour
de faon intelligible ses connaissances.

Quil sagisse de sciences exactes, de philosophie, de linguistique ou dinformatique, on retrouve


des conceptions similaires. De faon schmatique, ltre humain classifie et instancie, compose
(ou agrge) et dcompose, gnralise et spcialise, groupe (ou associe) et individualise.

Classifier

Agrger

Gnraliser
Associer

Daprs Weber Modularity in database system design


Attention, pour lire les lignes qui suivent, vous devrez parfois faire abstraction de vos
conceptions antrieures : ainsi, agrger et composer sont des termes prsents ici
comme des synonymes, alors quils se distinguent dans UML, o ils reprsentent une
catgorisation du verbe associer , etc. Avant de vous en prendre aux tiquettes choisies, nous
vous invitons examiner le contenu du colis.
Le langage naturel utilise les types dabstraction comme Jourdain la prose. Quand le discours
se porte sur les abstractions elles-mmes, il est habituel den fournir des reprsentations laide
dun langage particulier, utilisant des littraux ou des symboles graphiques.

http://www.reseaucerta.org

Michel Auguste mai 2004

Page 2/56

I.1 La classification
La problmatique
Exemple n 1 : Jean est un homme.
Considrez cette affirmation triviale.
Jean nest pour linstant quune abstraction, pour chacun dentre nous. Mais, intuitivement, vous
comprenez quil sagit de parler dun particulier en gnral (qui peut trs bien, au demeurant, tre
gnral en particulier ). Soit il sagit de caractriser Jean en faisant appel un concept partag
entre nous (la notion dhomme), soit il sagit dexpliciter le concept dhomme en donnant un
exemple connu de nous tous. Quel que soit le sens de la pense, il y a un type de rapport singulier
entre Jean et homme : ce type de rapport smantique peut sappeler la classification.
Laffirmation considre peut signifier :
!
!

Jean appartient lensemble des hommes.


Jean est un lment de lensemble des hommes.

Cette notion primaire est importante. Si le type homme est dfini, laide de
caractristiques typiques de formes et de comportement (le nom, le prnom, ladresse, le mois de
naissance, la religion, la profession, le lieu de travail, le vtement prfr, si mari : avec qui ?,
etc.) et si Jean reste, au regard de cette dfinition, un homme, cest quil possde une expression
particulire des caractristiques voques (Jean, Jean, rue Jean XXIII Janville, janvier,
jansniste, jean-foutre, Compagnie des Gens, jean, mari avec jen sais rien !). Si lensemble des
hommes partage collectivement dautres caractristiques, Jean en profitera. De mme, en
tablissant les droits et les devoirs du citoyen franais (type), on sassure (en principe !) que
chaque citoyen (occurrence) possde les mmes droits et les mmes devoirs.

Le concept
La notion de classification est videmment partage par de nombreux domaines de connaissances,
sous des vocables qui peuvent diffrer.

PHILOSOPHIE

BIOLOGIE

MATHMTHODE
MATIQUES
MERISE

LANGAGE
OBJET

HOMME

Concept

Espce

Ensemble

Type

Classe

JEAN

Ralisation

Spcimen

lment

Occurrence

Instance2

CLASSIFICATION
Abstraction par laquelle on peroit une classe dobjets comme un
ensemble de ralisations (appeles instances) dun type dobjet
reprsentatif de la classe.

Ou objet, bien que certains rservent ce terme au monde rel. De plus, dans son acception abstraite, Objet est galement
une classe et la classe est un objet ! On aurait pu galement citer les moules utiliss par diverses industries et la couture
avec ses patrons et ses exemplaires.

http://www.reseaucerta.org

Michel Auguste mai 2004

Page 3/56

En matire dabstraction, linstanciation est le phnomne de pense inverse de la classification.


Dans lactivit de modlisation, cest le premier pas que franchit la pense : par la suite, on ne se
rfre plus gure aux choses sensibles mais aux abstractions que la classification a gnres.

Exemples de reprsentation
#

Le langage mathmatique en offre plusieurs :

de faon littrale :

Jean HOMME

Choses reprsentes graphiquement :


HOMME

Jean

Voici dautres exemples :


Jean is_a HOMME ou Jean est_un HOMME

Entirement littraux :

Lien reprsent graphiquement : Jean

HOMME

I.2 La composition (ou agrgation)


La problmatique
Exemple n 2 : Un homme est form dun corps, dune tte et de
quatre membres.
Considrez cette affirmation infantilement anatomique (genre Toto ).
Elle est bien dun genre radicalement diffrent de la prcdente. On y mentionne un concept
considr dune part comme un tout (le concept dhomme), dautre part comme le compos
dautres concepts plus simples (les concepts de corps, de tte et de membre). Lobjet offre deux
perspectives : dabord celle des composants de nature diverse quil intgre, mais aussi celle dun
agrgat3 peru comme un objet particulier4.
Dans lexemple, lassemblage dcrit, pour abstrait quil soit, renvoie une ralit tangible. Dans
les systmes de gestion, la ralit, cest linformation sur les choses , des objets mais aussi
des vnements, des choses qui concernent une organisation particulire, poursuivant des
objectifs particuliers, toutes choses qui fondent donc un point de vue particulier.

Attention lemploi de ce mot dans dautres disciplines ! En conomie, on parle dagrgats propos de la Comptabilit
Nationale : ces agrgats rassemblent des donnes montarises (donc de mme nature) alors quici les lments rassembls
peuvent tre de nature diffrente.
4
Savoir, ou plutt pouvoir affirmer le quod, sans aucun quid (lexistence dune chose sans aucune dtermination, aucun
attribut), serait-ce connatre ? (J. Lachelier, Vocabulaire technique et critique de la philosophie, tome I, note p. 171).

http://www.reseaucerta.org

Michel Auguste mai 2004

Page 4/56

Quest-ce quun homme pour ltat civil ? Pour une socit de vente
par correspondance ? Pour une agence matrimoniale ? Pour un
ngrier ? Pour un bourreau ?
des points de vue trs diffrents

Le concept
Les notions de compos et de composant sont importantes en matire de modlisation. Elles
permettent de prciser ce qui a t dit propos de la dfinition dune classe laide de
caractristiques de forme. Ainsi, si la classe homme est dfinie partir des caractristiques
appeles nom et prnom , toute instance dhomme possdera une instance de nom et
une instance de prnom . En modlisation, cest en associant la classification et la composition
que le concept de valeur prend tout son sens.
On utilise de nombreux vocables pour exprimer ce type de rapport entre diverses
connaissances5 :

HOMME

Compos

Molcule

CORPS,
TTE,
MEMBRES

Composants Atomes

Entit

Classe

Tout

Proprits

Attributs6

Parties

COMPOSITION
Abstraction par laquelle un lien entre objets de types divers est peru
comme un type dobjet part entire.
Linverse de la composition (ou agrgation) est la dcomposition (ou description).

Exemples de reprsentation

Entirement littraux :

HOMME(tte, corps, membres)


tte part_off HOMME ou tte partie_de HOMME

Lien reprsent graphiquement :


HOMME

tte

corps

membres

Remarques :

5
6

Le lecteur a lintuition que, dans les reprsentations littrales, sont utilises des
conventions dcriture. Par exemple : le nom dun compos est crit en lettres
majuscules, le nom dun composant en lettres minuscules.
La reprsentation de la composition laide dun peigne (ou fourchette ) est
frquente dans diverses disciplines. Ce nest pas forcment la meilleure puisque ce
mode de reprsentation est utilis pour exprimer dautres types de liens (cf. suivant).

Ici, les vocables traversent souvent les frontires des domaines de connaissances concerns.
Ou encore rubriques, champs, zones

http://www.reseaucerta.org

Michel Auguste mai 2004

Page 5/56

I.3 La gnralisation
La problmatique
Exemple n 3 : Lhomme est un mammifre.
Considrez cette affirmation tout aussi banale que lexemple n 1.
Lemploi du mme groupe verbal ( est un ) dans les deux exemples peut troubler. Peut-on dire,
dans lacception mathmatique des termes employs, que lhomme est un lment de lensemble
des mammifres ? Que dsigne-t-on par lhomme ? Un homme en particulier (Jean, par exemple) :
dans ce cas, il est bien un lment de lensemble des mammifres. Mais il semble bien quici on ait
voulu dsigner lhomme en gnral. Laffirmation veut probablement dire :
!
!

Lensemble des hommes est inclus dans lensemble des mammifres.


Lensemble des hommes est un sous-ensemble de lensemble des mammifres.

Ce faisant, on sest livr un type dabstraction appel gnralisation.


Cette capacit est fondamentale dans lorganisation des connaissances, tel point quelle est
lorigine de la structuration des thesaurus qui permettent la recherche documentaire. On dira :
Homme est un spcifique de Mammifre qui est son gnrique.
!

Si le type mammifre est dfini laide de caractristiques de forme et de


comportement, le type homme possdera les mmes types de caractristiques : il en
hritera.

Des exemples n 1 et n 3, vous pouvez dduire (brillamment ) que Jean est un mammifre :
en associant la classification et la gnralisation, on peut faire de linfrence cest--dire
faire natre une nouvelle connaissance.

Le concept
La gnralisation est une notion partage par de nombreux domaines de connaissances, sous des
vocables qui peuvent diffrer.

PHILOSOPHIE

BIOLOGIE7

MATHMTHODE
MATIQUES
MERISE

LANGAGE
OBJET

MAMMIFRE

Concept

Genre

Ensemble

Type

Classe

HOMME

Catgorie

Espce

Sousensemble

Sous-type

Sous-classe

GNRALISATION
Abstraction par laquelle un type est dfini partir des
caractristiques communes plusieurs autres types.
7

Nous avons choisi ces termes parce quils prolongent ceux qui apparaissent dans le premier tableau. Ils ne sont pas vraiment
adapts puisque les mammifres forment en fait une classe. La hirarchie des catgories est naturellement la plus volue
en sciences naturelles : classe (mammifres), [sous-classe], ordre (primates), [sous-ordre, groupe (hominiens),
superfamille], famille (hominids), genre (homo), espce (homo sapiens), [sous-espce, race, ].

http://www.reseaucerta.org

Michel Auguste mai 2004

Page 6/56

En premire approche, la spcialisation est linverse de la gnralisation8.

Exemples de reprsentation
#

Le langage mathmatique en offre plusieurs :

de faon littrale :

HOMME MAMMIFRE

Ensembles reprsents graphiquement :


MAMMIFRE

HOMME

Voici dautres exemples :


HOMME kind_of MAMMIFRE
HOMME sorte_de MAMMIFRE
HOMME : MAMMIFRE

Entirement littraux :

Lien reprsent graphiquement : HOMME

MAMMIFRE

Remarque :

On peut avoir reprsenter plusieurs sous-ensembles dun mme ensemble. Dans ce


cas, le peigne est quelquefois utilis (UML, par exemple, mais avec une pointe
creuse).
MAMMIFRE

HOMME
RAT
BALEINE
Le choix des reprsentations est bien sr guid par labsence dambigut : le
peigne ne peut la fois reprsenter la composition et la gnralisation qui sont
deux concepts bien diffrents.

La spcialisation, linstar de la composition, exprime un point de vue. Fonder une typologie se fait en adoptant un certain
regard : ainsi, lhomme et le castor peuvent se ressembler en ce sens que tous deux sont des mammifres ou bien quils
modlent leur environnement plutt que de sy adapter ou encore quils ne travaillent ni avec leurs mains ni avec leurs pieds !

http://www.reseaucerta.org

Michel Auguste mai 2004

Page 7/56

I.4 La construction densemble


La problmatique
Exemple n 4 : Jumbo est un lphant.
Exemple n 4 bis : Llphant est une espce en voie de
disparition.
Ces deux noncs nous rappellent les exemples n 1 et n 3 :
Exemple n 1 : Jean est un homme.
Exemple n 2 : Lhomme est un mammifre.
De ces deux noncs, vous aviez pu dduire : Jean est un mammifre. . Des noncs 4 et 4 bis,
que dduire ? Que : Jumbo est une espce en voie de disparition ?
En fait, lemploi, dans tous ces noncs, de lexpression est un cache une diffrence
fondamentale.

Dans le premier cas, linfrence est possible car la premire affirmation relate un lien
dappartenance (Jean HOMME) et la deuxime un lien dinclusion (HOMME MAMMIFRE).
Jean

HOMME

MAMMIFRE

Dans le deuxime cas, nous navons que des liens dappartenance, ce qui ne nous permet
aucune infrence (non tautologique).
Jumbo

LPHANT

ESPCES MENACES

ESPCES MENACES est un ensemble densembles. LPHANT, qui est un ensemble (une
classe), est un lment (un objet, une instance) de ce premier ensemble.
Dans de nombreux domaines de connaissances, on a besoin de cette facult de considrer une
classe dobjets comme un objet dune autre classe, de considrer lensemble comme un individu.
Exemple : En droit, la notion de personnalit morale est proche de cette notion. Une socit
est compose dassocis : en ce sens, cest un ensemble de personnalits physiques . Mais la
socit possde galement une existence juridique propre.

Le concept
Il nest pas ais de donner une tiquette ce type dabstraction. Dans certaines disciplines, on le
nomme association , par analogie avec lassociation qui, en France, relve de la loi 1901 et qui
sintgre dans la problmatique de personnalit morale voque ci-dessus. Compte tenu de
lambigut de ce terme, nous lui prfrerons lexpression de construction densemble .

CONSTRUCTION DENSEMBLE
Abstraction par laquelle un ensemble dobjets est peru comme un
objet.

http://www.reseaucerta.org

Michel Auguste mai 2004

Page 8/56

Cette facult est peu utilise dans les modles de donnes intgrs aux mthodes de conception de
systmes dinformation. Elle induirait pourtant des descriptions (dcompositions) souvent plus naturelles :
par exemple, on peut dcrire une commande par un numro, une date, etc. (lments caractristiques de son
en-tte) et son corps qui est un ensemble de lignes de commande. Cette possibilit est offerte par UML qui
permet de considrer un objet comme une collection : un ensemble (sans doublon), un sac (avec doublons) ou
une squence (ordonne ).

Exemples de reprsentation

Entirement littraux :

COMMANDE(n, date, CORPS)


CORPS = {LIGNE}

Lien reprsent graphiquement : COMMANDE

date

CORPS

LIGNE

I.5 Et lassociation ?
La problmatique
Exemple n 5 : Jean, qui est un homme, dresse Jumbo, qui
est un lphant.
Dans cet nonc, vous considrez une instance dhomme et une instance dlphant. Entre les
deux, un rapport existe, reprsent par lemploi du verbe dresser . Au niveau des classes
dobjets, comment reprsenter un point de vue qui sintresserait qui dresse qui ? ?

Le concept
Dans de nombreux modles, on part du principe que ce type de lien est reprsenter de faon
particulire, pour distinguer :

dune part les classes dobjet qui ont une existence propre, qui sont autonomes : elles sont
souvent dsignes laide de substantifs (exemples : HOMME, LPHANT) ;
dautre part les rapports que les instances de ces classes tablissent entre elles9 et qui ont
un sens dans le point de vue modliser : ils sont souvent exprims laide de verbes. Le
concept utilis sappelle le plus souvent association10(exemple : dresser).

Quil sagisse dun type dabstraction indispensable ne fait pas lunanimit ! Ainsi, le verbe
dresser peut tre substantiv en dressage et le concept de dressage dcrit par un
9

Dans certains modles objets, on parle dailleurs de connexion dinstances .


Le terme relation utilis lorigine en France pour traduire le vocable amricain relationship est tomb en dsutude
du fait de sa polysmie (la notion mathmatique de relation est lorigine des systmes de gestion de bases de donnes
relationnels trs rpandus aujourdhui ; or, il sagit dune notion radicalement diffrente).

10

http://www.reseaucerta.org

Michel Auguste mai 2004

Page 9/56

dresseur (qui est un homme) et un dress (qui est un lphant). Dressage est un compos et ses
composants se dfinissent par rapport dautres concepts. Il existe cependant deux faons
dinterprter cette dfinition :

Si lon considre lensemble des occurrences de dressage, lensemble des dresseurs


correspondants constituent un sous-ensemble des hommes. Un lien de gnralisation stablit
entre les deux notions.
Si lon considre une occurrence de dressage, le dresseur correspondant est un lment de
lensemble des hommes. Un lien de classification stablit entre les deux notions. Dans les
langages objets, on fait gnralement cette distinction entre la dfinition dune sous-classe
et la dfinition dun attribut dont le type fait rfrence une classe.

Exemples de reprsentation

Reposant sur le concept dassociation :


Dresser
HOMME

LPHANT

Reposant sur la composition et la gnralisation :


DRESSAGE

HOMME

DRESSEUR

DRESS

LPHANT

I.6 Le modle entit-association


Dun certain point de vue, le modle entit-association (MEA) n au milieu des annes 1970
repose sur deux niveaux de composition :

Les proprits sont les briques de base.

Les entits sont composes de proprits.

Les associations transcrivent les rapports que les entits entretiennent entre elles. Comme il
vient dtre dit, elles peuvent tre interprtes en termes de composition : une association
est alors compose dentits et, ventuellement, de proprits.

La capacit smantique du modle a t enrichie ds la fin des annes 70 aux tats-Unis : les
extensions majeures concernent lagrgation (envisage ici comme un 3e niveau de composition,
elle offre donc la possibilit de construire des associations dassociations ) et la
spcialisation11. Les modles utiliss en France ont connu la mme volution plus tardivement,
dans les annes 90.
Le schma entit-association prsent la page suivante illustre certaines de ces notions. Il
modlise partiellement un systme de gestion de la relation client (GRC) en sinspirant largement
dun travail effectu par Karine Cubizolles, tudiante lIUFM de Bourgogne (promotion 2003).

11

Dans ce document, la spcialisation sera considre comme linverse de la gnralisation. En fait, dans la plupart des
modles utiliss en France, on distingue la spcialisation, qui permet au concepteur de prendre en compte les catgories
mentionnes par lutilisateur, et la gnralisation, qui permet au concepteur de construire des entits abstraites partir de
concepts que le discours de lutilisateur nintgre pas.

http://www.reseaucerta.org

Michel Auguste mai 2004

Page 10/56

Entit gnrique
TIERS
noTiers
nomTiers
adresseTiers
tlphoneTiers
faxTiers
mailTiers

Entit

ACTION
noAction
dateAction
heureDbut
heureFin
typeAction
dtailAction

raliser
0,n

1,1

Proprit

Spcialisation
Association

PROSPECT

Modle conceptuel de donnes

CLIENT

sourceContact

Projet

dlaiClient

: GRC

Modle : Schma entit-association


Auteur : Michel Auguste

Version: 1 05/06/2003

Entit spcialise
DISTRIBUTEUR
tauxCommission

AUTRE CLIENT

agrer
1,n

0,n
0,n

vendre

Rle

nombreLicences
0,n

prcdent

DATE
jourVente

1,n
0,n

LOGICIEL
noLogiciel
nomLogiciel
noVersion
dateProjet
dateCompilation
dateLancement

0,1

succder

0,1

succdant

La smantique reprsente

Le systme GRC gre des tiers. Chaque tiers est dcrit par un numro, un nom, une adresse
postale, un n de tlphone, un n de fax et une adresse lectronique.
Parmi ces tiers, on distingue notamment deux catgories : les prospects caractriss par
lindication de la source de la mise en relation et les clients pour lesquels on a besoin de
connatre le dlai de paiement accord.
Parmi ces clients, on distingue les distributeurs auxquels on accorde un taux de commission
particulier et les autres clients.
Des actions sont ralises auprs des tiers. Une action est caractrise par son numro, la
date de ralisation, lheure dbut et lheure fin de laction, le type daction ralise
(technique, commerciale, financire, ) et le dtail de laction sous forme de texte.
Les logiciels commercialiss sont dcrits par un numro, un nom, un n de version et des dates
de dbut de projet, de compilation et de lancement.
Un logiciel peut succder un autre logiciel.
Les distributeurs sont agrs pour distribuer certains logiciels.
Les distributeurs vendent des logiciels aux autres clients certaines dates.

http://www.reseaucerta.org

Michel Auguste mai 2004

Page 11/56

Les composantes de la reprsentation graphique

Les rectangles cartouche reprsentent les entits (ou les sous-types dentits). Le nom de
lentit est plac dans le cartouche : cest gnralement un substantif.
Les ellipses cartouche reprsentent des associations. Le nom de lassociation est plac dans
le cartouche : cest gnralement un verbe.
Lorsquune mme entit joue plusieurs rles dans une association (par exemple, lassociation
succder ), les diffrents rles se distinguent par leurs noms (par exemple, succdant
et prcdent ). Mais on aurait pu gnraliser lemploi du nom de rle pour toutes les
associations : le trait qui relie une entit une association, souvent appele patte ,
reprsente prcisment un rle.
Chaque proprit est place dans son entit ou bien dans son association.
La demi-lune reprsente une spcialisation12. La flche pointe vers lentit gnrique.

Il faudrait complter le schma par un dictionnaire de donnes , autrement dit une


caractrisation prcise des proprits cites. Dans ce document, nous ludons volontairement
cette question.
Dans un modle donn, chaque dsignation utilise (nom de proprit, nom dentit, nom
dassociation) est unique.

Les reprsentations littrales

Voici une reprsentation possible :


TIERS(noTiers, nomTiers, adresseTiers, tlphoneTiers, faxTiers, mailTiers)
ACTION(noAction, dateAction, heureDbut, heureFin, typeAction, dtailAction)
Raliser(TIERS, ACTION)
PROSPECT(sourceContact) : TIERS
CLIENT(dlaiClient) : TIERS
AUTRE CLIENT : CLIENT
DISTRIBUTEUR(tauxCommission) : CLIENT
DATE(jourVente)
LOGICIEL(noLogiciel, nomLogiciel, noVersion, dateProjet, dateCompilation, dateLancement)
Agrer(DISTRIBUTEUR, LOGICIEL)
Vendre(DISTRIBUTEUR, AUTRE CLIENT, DATE, LOGICIEL, nombreLicences)
Succder(LOGICIELsuccdant, LOGICIELprcdent)

Les rgles dcriture utilises.

Le nom dune entit est crit en lettres majuscules.


Seule, linitiale du nom dune association est une lettre majuscule.
Le nom dune proprit est compos de morphmes. Chaque morphme possde une
initiale majuscule, sauf le premier.
Le lien de composition est reprsent comme suit. Le compos est dabord mentionn puis
ses composants sont placs entre parenthses, chaque composant tant spar du
prcdent par une virgule.
Le nom de rle est plac en indice et vient suffixer le nom de lentit concerne.
Le lien de gnralisation est reprsent par le symbole deux-points .

12

Il existe bien dautres modes de reprsentation. Celui-ci a t choisi par les concepteurs du logiciel Power*AMC utilis
pour construire les schmas.

http://www.reseaucerta.org

Michel Auguste mai 2004

Page 12/56

Les oprations lmentaires


Cette criture se prte mieux aux calculs. En voici quelques exemples :

Lensemble des noms de tiers peut tre obtenu par lopration TIERS[nomTiers] qui se lit
Tiers projet sur nomTiers .
Lensemble des actions ralises le 20-11-2003 peut tre obtenu par lopration
ACTION[dateAction = 20-11-2003] qui se lit Actions pour lesquelles dateAction gale
20-11-2003 .
Lensemble des logiciels vendus au moins une fois peut tre obtenu par lopration :
Vendre[LOGICIEL] qui se lit vendre projet sur LOGICIEL 13.
On peut galement utiliser des variables. Par exemple : soit A ACTION. A reprsente
une occurrence de lentit ACTION. On peut alors accder ses proprits en utilisant la
notation pointe. Par exemple : A.dateAction.

Les capacits dabstraction utilises

La composition est utilise sur deux niveaux : lentit et lassociation.


Lentit TIERS, par exemple, est compose partir des proprits noTiers, nomTiers,
adresseTiers, tlphoneTiers, faxTiers, mailTiers14.

Lassociation vendre , par exemple, est compose partir des entits


DISTRIBUTEUR, AUTRE CLIENT, LOGICIEL, DATE et de la proprit nombreLicences.
La spcialisation est galement utilise15. En consquence, pour dcrire compltement un
distributeur, il faut prendre en compte le fait quil est un client, ce qui implique lhritage de
la proprit dlaiClient, et quun client est un tiers, ce qui implique lhritage de toutes les
proprits de cette entit.

Cette description est trs incomplte. Par exemple, vous voudriez quon prcise que noTiers
identifie les tiers ou bien quune action nest ralise quauprs dun seul tiers ou encore que les
clients ne peuvent pas tre des prospects. Et vous avez raison : les capacits dabstraction
mobilises nous aident certes tablir les liens structurels qui existent entre les diffrents
concepts mais cela ne suffit pas. De fait, chaque type de lien est caractris par des
dcorations typiques, qui permettent de prciser sous quelles contraintes le lien structurel
stablit dans la ralit. En cette matire, il existe des rfrences mathmatiques sur lesquelles
nous prendrons appui aprs vous en avoir rafrachi la mmoire.

13

Nous faisons lhypothse que le rsultat est un ensemble (ne comportant pas de doublons).
Mettre en avant la composition nest quune faon de voir lactivit de conception. Cela ne prsume en rien de la primaut,
sur le plan conceptuel, du composant sur le compos. Au contraire ! On aurait pu dire, peut-tre plus justement, que la notion
de TIERS est fonde dabord par les besoins de gestion et quil convient de la dcrire (de la dcomposer).
15
Dans ce document, nous nabordons que la spcialisation des entits.
14

http://www.reseaucerta.org

Michel Auguste mai 2004

Page 13/56

Librons-nous des contraintes !


II Exprimer des contraintes
Le lien structurel entre deux types dobjet (par exemple un composant et son compos) peut
dabord tre tudi comme une application mathmatique entre deux ensembles.

II.1 Les contraintes applicatives


La rfrence mathmatique
En mathmatiques, on distingue :

$
$

$
Une fonction

Une application

Une surjection

Une injection

Une bijection

Les diffrentes catgories mathmatiques se distinguent partir de la prise en compte des


contraintes de totalit et dunicit, dans lensemble de dpart (en jaune) et dans lensemble
darrive (en bleu). Les questions se posent sous les formes suivantes :

Est-ce que tout lment de lensemble de dpart a au moins une image dans lensemble
darrive ? Est-ce quil en a au plus une ?
Est-ce que tout lment de lensemble darrive est limage dau moins un lment de
lensemble de dpart ? Est-ce quil est limage dau plus un lment ?

Les rponses ces questions permettent de distinguer les catgories suivantes :

16

La fonction ne connat aucune contrainte. Ainsi, une fonction peut tre indfinie pour
certaines valeurs de lensemble de dpart.
Dans toute application, il y a totalit et unicit au dpart (TU) mais pas ncessairement
larrive.
Dans une application injective (ou injection), il y a les caractristiques de toute application
plus unicit larrive (TUU) mais pas ncessairement totalit.
Dans une application surjective (ou surjection), il y a les caractristiques de toute application
plus totalit larrive (TUT) mais pas ncessairement totalit.
Dans une application bijective (ou bijection), il y a les caractristiques de toute application
plus totalit et unicit larrive (TUTU), autrement dit la caractristique dune injection
plus celle dune surjection16.
Injection : on ajoute U (un jus !). Surjection : on ajoute T (sret !). Bijection : on ajoute UT (bijuter ! ).

http://www.reseaucerta.org

Michel Auguste mai 2004

Page 14/56

Transposition sur le lien entre entit et proprit


#

Le sens de lecture Entit vers Proprit

A une occurrence dentit :

Correspond-il toujours au moins une occurrence de proprit, cest--dire une valeur ?


Si oui, il sagit dune proprit obligatoire.
Sinon, il sagit dune proprit facultative.

Le modle entit-association repose sur le principe suivant : Toute proprit est destine
tre renseigne . Ce principe est respect dans le schma entit-association qui sert
dillustration, le cas GRC : toutes les proprits sont obligatoires.
Certes, il advient quune proprit n'est pas renseigne, mais la seule cause ventuellement
admise est que la valeur est momentanment inconnue. Par principe, la cause ne peut tre
labsence de signification pour lentit concerne. Prcisment, la spcialisation est utilise
pour montrer les proprits qui sont spcifiques certaines catgories et nont pas de sens
pour les autres : sourceContact pour un prospect, par exemple.

Correspond-il toujours une seule valeur ?

Si oui, il sagit dune proprit monovalue (ou univalue).


Sinon, il sagit dune proprit multivalue.

Le modle entit-association reposait sur des proprits monovalues. Il admet dsormais les
proprits multivalues. Jusqu prsent, cette facult est peu utilise dans les applications
de gestion. Ainsi, dans le schma GRC, toutes les proprits sont monovalues. Mais on aurait
pu concevoir, par exemple, de retenir plusieurs numros de tlphone pour un mme tiers.
#

Le sens de lecture Proprit vers Entit

A une occurrence de proprit (valeur) :

Correspond-il toujours au moins une occurrence dentit ?


La rponse est toujours oui ! Cest dans la dfinition mme de la notion de valeur. Il ny a
pas dlectron libre dans un systme dinformation et, par exemple, on ne peut
videmment pas connatre un nom de tiers sans que ce soit celui dau moins un tiers.
Cette prcision est donc inutile. Elle reste implicite dans tous les modles.

Correspond-il toujours une seule occurrence dentit ?


Si oui, il sagit dune proprit discriminante.
Sinon, il sagit dune proprit polysme.

Dans le schma GRC, les rgles de gestion impliqueront, par exemple, que noTiers soit
considr comme une proprit discriminante ; ce ne sera pas le cas dautres proprits,
par exemple nomTiers (plusieurs tiers pouvant porter le mme nom).
#

Bilan : la notion didentifiant

Dans le modle entit-association, les proprits sont obligatoires. Cette considration reste
donc implicite. En fait, le modle entit-association ne montre pas particulirement les
contraintes liant les proprits leur entit. Il privilgie une proprit par entit, proprit
appele identifiant. Sa prsence est obligatoire sauf pour les entits spcialises. En la
soulignant, le modle exprime que lapplication entre cette proprit et son entit est bijective,
autrement dit que la proprit est obligatoire, monovalue et discriminante. Pour les autres
proprits, il faut se rendre dans le dictionnaire associ pour en savoir plus, par exemple pour
savoir que le nom du logiciel et le n de version permettent galement didentifier un logiciel.

http://www.reseaucerta.org

Michel Auguste mai 2004

Page 15/56

Voici le schma complt avec les seules informations donnes par le MEA.
TIERS
noTiers
nomTiers
adresseTiers
tlphoneTiers
faxTiers
mailTiers

PROSPECT

Raliser
0,n

1,1

Projet

dlaiClient

: GRC

Modle : Schma entit-association


Auteur : Michel Auguste

DISTRIBUTEUR
tauxCommission

AUTRE CLIENT

Un identifiant

Modle conceptuel de donnes

CLIENT

sourceContact

ACTION
noAction
dateAction
heureDbut
heureFin
typeAction
dtailAction

Version: 2 03/02/2004

Agrer
1,n

0,n
0,n

Vendre
nombreLicences
0,n

prcdent
LOGICIEL
DATE
jourVente

1,n
0,n

noLogiciel
nomLogiciel
noVersion
dateProjet
dateCompilation
dateLancement

0,1

Succder

0,1

succdant

Littralement, on aurait pu crire :


TIERS(noTiers % nomTiers, adresseTiers, tlphoneTiers, faxTiers, mailTiers)
ACTION(noAction % dateAction, heureDbut, heureFin, typeAction, dtailAction)
LOGICIEL(noLogiciel % nomLogiciel, noVersion, dateProjet, dateCompilation, dateLancement)
DATE(jourVente)17
o la flche se lit : dtermine , lidentifiant tant le sujet et les autres proprits les
complments dobjets directs de ce verbe.
Vous remarquerez que les associations peuvent tre porteuses de proprits mais quelles ne
possdent pas didentifiant. Cette question sera tudie plus loin.

17

Cette entit ne possde quune proprit qui est donc ncessairement son identifiant.

http://www.reseaucerta.org

Michel Auguste mai 2004

Page 16/56

Transposition sur le lien entre entit et association


#

Le sens de lecture Entit vers Association : les cardinalits


Dans le modle entit-association, on appelle rle la participation dune entit une
association et les rponses aux questions significatives des contraintes de totalit et
dunicit vont permettre de dterminer ce quon appelle les cardinalits.

A une occurrence dentit :

Correspond-il toujours au moins une occurrence dassociation ?

Si oui, on inscrit sur la patte une cardinalit minimale gale 1.


Sinon, on inscrit sur la patte une cardinalit minimale gale 0.

Correspond-il toujours une seule occurrence dassociation ?

Si oui, on inscrit sur la patte une cardinalit maximale gale 1.


Sinon, on inscrit sur la patte une cardinalit maximale gale n.

Remarques :

Vous noterez que lexistence dune contrainte se traduit par le chiffre 1. Pour la cardinalit
minimale, 1 exprime lexistence dune contrainte de totalit. Pour la cardinalit maximale,
1 exprime la contrainte dunicit.
Si les concepteurs du modle nont pas choisi une transposition exacte des concepts
mathmatiques, cest pour permettre de plus grandes prcisions. Ainsi, une criture
comptable mettra en jeu au moins deux comptes diffrents (cardinalit minimale gale 2
sur le rle de lentit criture). Il en va de mme pour lassociation qui comporte au moins
deux rles (cardinalit minimale gale 2 sur le rle de lentit Association dans lassociation
associer qui la lie lentit Rle18 !). La cardinalit maximale peut galement prendre une
valeur prcise. Par exemple, dans une certaine bibliothque, une rgle de gestion impose quun
prt ne porte pas sur plus de 5 livres (cardinalit maximale gale 5 sur le rle de Prt)19.
Le sens de lecture Association vers Entit

A une occurrence dassociation :

Correspond-il toujours au moins une occurrence dentit ?

La rponse est toujours oui. Dans le jargon du modle entit-association, on dit quune
association ne possde pas de patte optionnelle . Cela rejoint la notion de proprit
obligatoire. Dans le modle entit-association, tous les composants sont obligatoires mais,
sil est admis quune proprit non identifiante puisse ne pas tre renseigne
momentanment, ce nest pas le cas des entits composant une association dont chaque
occurrence ne peut exister sans les occurrences des entits correspondantes.

Correspond-il toujours une seule occurrence dentit ?


Pour un rle donn, la rponse est toujours oui.

Ainsi, du ct de lassociation, il nest nul besoin de mentionner de cardinalits puisque la


cardinalit minimale et la cardinalit maximale sont forcment toutes les deux gales 1.

Page suivante, le schma GRC est complt pour tenir compte de ces nouvelles informations.

18

Quest-ce quon samuse !


Cependant, il conviendrait de sinterroger sur la stabilit de cette rgle de gestion ou plutt de dterminer sil sagit dune
rgle de gestion, descriptive de linvariant du systme, ou bien dune rgle organisationnelle , modifiable.
19

http://www.reseaucerta.org

Michel Auguste mai 2004

Page 17/56

TIERS
noTiers
nomTiers
adresseTiers
tlphoneTiers
faxTiers
mailTiers

PROSPECT

0,n

1,1

Modle conceptuel de donnes

CLIENT

sourceContact

ACTION
noAction
dateAction
heureDbut
heureFin
typeAction
dtailAction

Raliser

Projet

dlaiClient

: GRC

Modle : Schma entit-association


Auteur : Michel Auguste

DISTRIBUTEUR
tauxCommission

AUTRE CLIENT

Version: 3 03/02/2004

Agrer
1,n

0,n

Un couple de
cardinalits

0,n

Vendre
nombreLicences
0,n

prcdent
LOGICIEL
DATE
jourVente

1,n
0,n

noLogiciel
nomLogiciel
noVersion
dateProjet
dateCompilation
dateLancement

0,1

Succder

0,1

succdant

Sur ce schma, on peut lire dsormais :


Une action est ralise auprs dun et un seul tiers. Un tiers est la cible de zro, une ou
plusieurs actions.
Un logiciel succde au plus un logiciel. Un logiciel prcde au plus un logiciel.
Un distributeur est agr pour au moins un logiciel. Un logiciel agre zro, un ou plusieurs
distributeurs.
Un logiciel fait lobjet de zro, une ou plusieurs ventes (remarquez le recours au substantif
pour exprimer les associations complexes). Un distributeur fait zro, une ou plusieurs ventes.
Un autre client est lorigine de zro, une ou plusieurs ventes. Une date (de vente) est
concerne par au moins une vente20.

20

La spcification est encore incomplte. Nous la compltons la page suivante.

http://www.reseaucerta.org

Michel Auguste mai 2004

Page 18/56

Prolongement

Le nombre de pattes , les cardinalits, la prsence ou non de proprits permettent de


classer les associations. Lidentification des associations dpend de ce classement.

Le nombre de pattes

Les associations comportant deux rles sont dites binaires , les autres n-aires .
Raliser , Agrer et Succder sont des associations binaires. Vendre est une
association n-aire (quaternaire). Dans lassociation binaire Succder , une mme entit joue
les deux rles : on parle alors dassociation rflexive .

Les cardinalits

A considrer les seules cardinalits maximales, on distingue 3 catgories dassociation :


Les associations 1 1 comme Succder . Ce sont forcment des associations binaires.
Les associations n vers 1, dites fonctionnelles (ou hirarchiques quand on lit dans lautre
sens). Ce sont forcment des associations binaires. Raliser est une association
fonctionnelle.
Les associations n vers n, dites mailles. Agrer et Vendre sont des associations
mailles.

Les proprits

En principe21, seules les associations mailles possdent des proprits. Cest le cas de
lassociation Vendre . Mais la rciproque nest pas vraie : une association maille ne possde
pas forcment de proprits. Cest le cas de lassociation Agrer qui sera qualifie de non
porteuse .

Lidentification des associations

Une association maille est identifiable par sa collection dentits. Cela permet de prciser
que :
Un distributeur ne peut pas vendre le mme jour au mme autre client le mme
logiciel. On pourrait crire :
Vendre(DISTRIBUTEUR, AUTRE CLIENT, LOGICIEL, DATE % nombreLicences).
Un distributeur nest pas agr plusieurs fois pour le mme logiciel. On pourrait crire :
Agrer(LOGICIEL, DISTRIBUTEUR). Ici, labsence de flche indique que lidentification
mobilise tous les composants.
Une association fonctionnelle est identifiable par son rle dterminant. Ainsi, dans
raliser , cest lentit Action qui joue le rle dterminant (cardinalits 1,1). On pourrait
crire :
Raliser(ACTION % TIERS).
Une association 1 vers 1 possde deux rles dterminants et donc autant didentifications
possibles. Dans succder , les rles succdant et prcdent sont deux modes
didentification candidats. On pourrait crire :
Succder(LOGICIELsuccdant LOGICIELprcdent).

21

Dans ce document, nous nous en tiendrons cette contrevrit.

http://www.reseaucerta.org

Michel Auguste mai 2004

Page 19/56

Transposition sur le lien entre type et sous-type


#

Le sens de lecture Sous-type vers Type

A une occurrence du sous-type :

Correspond-il toujours au moins une occurrence du type ?


La rponse est toujours oui.

Correspond-il toujours une seule occurrence du type ?


La rponse est toujours oui.
Cest prcisment ce quon dit en suivant la flche : par exemple, un client est un tiers.

Le sens de lecture Type vers Sous-type

A une occurrence du type :

Correspond-il toujours au moins une occurrence du sous-type ?


La rponse est toujours non.

Correspond-il toujours au plus une seule occurrence du sous-type ?


La rponse est toujours oui.

Dans le modle entit-association, quels que soient le type et le sous-type considrs, les
cardinalits caractristiques du lien entre ce type et ce sous-type sont connues.

TIERS

0, 1

1, 1
CLIENT

Puisquil ne peut en tre autrement, ces cardinalits restent implicites. Il est inutile de les
mentionner.

http://www.reseaucerta.org

Michel Auguste mai 2004

Page 20/56

II.2 Les contraintes ensemblistes


La rfrence mathmatique
En mathmatiques, on dcrit les caractristiques des ensembles :

Un ensemble E ne comporte pas deux lments identiques.

Lappartenance est note : a E (a appartient lensemble E, a est un lment de E).


lment a

Ensemble E

La non-appartenance est note : b E (b nappartient pas lensemble E).

Un ensemble vide est not : .

Linclusion stricte de lensemble F dans lensemble E se note : F E (F est inclus dans E).

Linclusion de F dans lensemble E se note : F E (F est inclus ou gal E).

Ensemble E

Ensemble F

On dmontre que, si a F et F E, alors a E (si a appartient F et si F est inclus dans E,


alors a appartient E).

Lintersection est une opration qui permet de construire un nouvel ensemble partir des
lments communs deux ensembles. On note : A = B C (lensemble A est lintersection des
ensembles B et C). On peut crire : x B et x C x A (x appartient B et C implique
et rciproquement x appartient A).
Ensemble A

Ensemble B

Ensemble C

Deux ensembles qui nont pas dlments communs sont dits disjoints. Si B et C sont disjoints,
alors B C = .

Lunion est une opration qui permet de construire un nouvel ensemble partir des lments
qui appartiennent deux ensembles, soit lun, soit lautre, soit aux deux (dans ce cas,
llment ne se trouve quune fois dans lensemble rsultat puisque, par dfinition, un
ensemble de comporte pas dlments identiques). On note G = H I (lensemble G est lunion
des ensembles H et I). On peut crire : y H ou y I y G (y appartient H ou I
implique et rciproquement y appartient G).

http://www.reseaucerta.org

Michel Auguste mai 2004

Page 21/56

Ensemble G

Ensemble C

Ensemble B

Des sous-ensembles dun ensemble de rfrence forment une partition de celui-ci sils sont
disjoints et si leur union donne pour rsultat lensemble de rfrence. Ainsi, J et K forment
une partition de L :
si J L et K L (J et K sont inclus dans L),
si J K = (lintersection de J et K est vide),
si J K = L (lunion de J et K est gale L).
Ensemble K

Ensemble J

Ensemble L

Transposition sur la spcialisation


Les sous-types dentit peuvent tre perus comme des sous-ensembles de leur entit gnrique.
En dessinant une spcialisation, on a donc mentionn lexistence dune contrainte dinclusion. Il
est inutile de le rappeler. En revanche, on peut tre amen considrer quil existe entre ces
sous-types dautres contraintes.
#

Une contrainte dexclusion.


Cest le cas pour les clients et les prospects. Ce sont deux sous-ensembles de Tiers. Il est
exclu quun tiers puisse tre la fois un client et un prospect. Cest le cas galement pour les
distributeurs et les autres clients. Ce sont deux sous-ensembles de Client. Il est exclu quun
client puisse tre la fois distributeur et autre client .
La contrainte dexclusion se note laide du symbole X.

Une contrainte de totalit (ou couverture).


Cest le cas des distributeurs et des autres clients. Il ny a pas dautres clients que les
distributeurs et les autres clients. En revanche, ce nest pas le cas pour les prospects et les
clients. Certes, le schma ne prsente pas dautres catgories mais lnonc du thme
prcisait : Parmi les tiers, on distingue notamment les prospects et les clients . Ladverbe
notamment nous suggre quil existe dautres tiers que les prospects et les clients.
La contrainte de totalit se note laide du symbole T.

Une contrainte de partition.


Cest le cas des distributeurs et des autres clients pour lesquels il y a bien la fois une
contrainte dexclusion et une contrainte de totalit. Comme prcisment, la prsence dune
double contrainte (exclusion et totalit) implique et rciproquement lexistence dune
contrainte de partition, il nest pas ncessaire de disposer dun symbole particulier. Nous
choisirons cette option : XT reprsentera donc une contrainte de partition. Sachez
cependant que certains modles particularisent cette contrainte laide du symbole .

http://www.reseaucerta.org

Michel Auguste mai 2004

Page 22/56

Voici le nouveau schma GRC prenant en compte ces considrations.


TIERS
noTiers
nomTiers
adresseTiers
tlphoneTiers
faxTiers
mailTiers

ACTION
noAction
dateAction
heureDbut
heureFin
typeAction
dtailAction

Raliser
0,n

1,1

Une contrainte
dexclusion

PROSPECT

Modle conceptuel de donnes

CLIENT

sourceContact

Projet

dlaiClient

: GRC

Modle : Schma entit-association


Auteur : Michel Auguste

Une contrainte
de partition

Version: 4 03/02/2004

DISTRIBUTEUR
tauxCommission

AUTRE CLIENT

Agrer
1,n

0,n
0,n

Vendre
nombreLicences
0,n

prcdent
LOGICIEL
DATE
jourVente

1,n
0,n

noLogiciel
nomLogiciel
noVersion
dateProjet
dateCompilation
dateLancement

0,1

Succder

0,1

succdant

Ici, cest dans la demi-lune reprsentative dune spcialisation que les informations sont places :

X, contrainte dexclusion, sur la spcialisation de Tiers en Prospect ou Client.


XT, contrainte de partition, sur la spcialisation de Client en Distributeur ou Autre Client.

http://www.reseaucerta.org

Michel Auguste mai 2004

Page 23/56

Transposition sur les associations


#

Un rle est un sous-ensemble. Une association est un ensemble de n-uplets22.

Pour bien apprhender ce qui suit, il vous faut dabord prendre conscience quun rle est
assimilable un sous-ensemble.
Lorsquon place les cardinalits 0, n sur le rle de Tiers dans lassociation Raliser , on dit en
fait que les tiers cibles dactions constituent un sous-ensemble des Tiers. Nous allons choisir
dcrire le fait de cette manire :
Raliser[TIERS] TIERS
ce quon peut lire ainsi : Lensemble obtenu en projetant Raliser sur le rle TIERS
est inclus dans lensemble TIERS .
De la mme manire, en plaant les cardinalits 0, 1 sur le rle succdant de lentit
LOGICIEL dans lassociation Succder , on dit que les logiciels successeurs constituent un
sous-ensemble de lensemble des logiciels. Nous allons choisir dcrire le fait de cette manire :
Succder[LOGICIELsuccdant] LOGICIEL
ce quon peut lire ainsi : Lensemble obtenu en projetant Succder sur le rle
LOGICIEL succdant est inclus dans lensemble LOGICIEL .
Nous venons de prendre deux exemples pour lesquels la cardinalit minimale gale 0 implique un
lien dinclusion. Mais, et ceci est considrer attentivement, lorsque la cardinalit minimale est
gale 1, le lien est un lien dgalit. Ainsi, on voit que :
Raliser[ACTION] = ACTION (lensemble obtenu en projetant Raliser sur le rle
ACTION est gal lensemble ACTION).
Agrer[DISTRIBUTEUR] = DISTRIBUTEUR
Pourquoi rclamer votre attention sur ce point ? Regardez la patte de DISTRIBUTEUR dans
lassociation Agrer : nous venons de dire que tous les distributeurs sont sur cette patte .
Regardez maintenant la patte de DISTRIBUTEUR dans lassociation Vendre . La
cardinalit minimale gale 0 nous incite crire :
Vendre[DISTRIBUTEUR] DISTRIBUTEUR
Rapprochons les deux faits :
Agrer[DISTRIBUTEUR] = DISTRIBUTEUR
Vendre[DISTRIBUTEUR] DISTRIBUTEUR
Vous parat-il utile de prciser
Vendre[DISTRIBUTEUR] Agrer[DISTRIBUTEUR] ?
Non, videmment, pour vous, cela va de soi que certains est forcment inclus dans tous .
Cest pourtant une erreur assez frquente dans les sujets portant sur le modle tendu (y
compris des sujets de CAPET option D !23).
Toujours est-il que le fait de considrer les rles comme des sous-ensembles peut impliquer
lexpression de contraintes. Pour nous faire comprendre, nous allons quelques temps quitter le
domaine de la GRC, qui ne sy prte pas pour linstant.

22

Un ensemble de couples pour une association binaire, de triplets pour une association ternaire, de n-uplets pour une
association n-aire.
23
Il est souhaiter que les candidats soient moins tendus que le modle !

http://www.reseaucerta.org

Michel Auguste mai 2004

Page 24/56

1er exemple : La contrainte dexclusion


On ne scie pas la branche sur laquelle on est assis. 24
La varit dinterprtations possibles nat dune petite tricherie : nous admettrons que les deux
on que contient la phrase sont des pronoms indfinis au sens strict, donc ne renvoient pas
forcment la mme personne.
Prsentons dabord la situation gnrale que nous admettrons pour hypothse :
Scier

0,1

0,n

ON
numOn

BRANCHE
numBranche

0,1

0,n

S'asseoir

On scie au plus une branche ; une branche est scie par zro, un ou plusieurs on 25.
On est assis sur au plus une branche ; une branche supporte zro, un ou plusieurs on .
Montrons maintenant les diverses interprtations du proverbe.
#

Linterprtation de M. Bricolage
Contrainte dexclusion
Scier

0,1

0,n

ON

numOn

0,1

BRANCHE
numBranche

Le pivot
0,n

S'asseoir

Comme pour les sous-types, la pastille X exprime une contrainte dexclusion. Mais, dans le
modle entit-association, on a choisi de situer la contrainte entre les associations
concernes quelle que soit la signification prcise de la contrainte exprimer. Cest le pivot
de la contrainte, reprsent par un trait en pointills, qui lve lambigut. Ici, on pourrait
crire :
Scier[ON] Sasseoir[ON] = .
Lavis de M. Bricolage est tout simplement quon ne scie pas assis26 (ah, non !). Vous lui
rtorquerez sans doute : Mais, M. Bricolage, vous permettez de scier une branche
supportant dautres on . Vous passiez sous silence ce problme incident (de scie) ! . M.
Bricolage vous rpondra : Je nai pas t form pour ceci, mais savez-vous que, si six scies
scient six cyprs, six cent six scies scient six cent six cyprs ? .

24

Exemple emprunt M. Henri Habrias.


Scier la mme branche plusieurs ? Aurait-on faire une bande de on ?
26
L, nous nen disons pas assez. Il convient de prciser : Pas assis sur une branche ! . En effet, dans le schma, rien
ninterdit aux scieurs dtre assis sur autre chose quune branche. Vous nous pardonnerez cette supercherie.
25

http://www.reseaucerta.org

Michel Auguste mai 2004

Page 25/56

Linterprtation de M. Scurit
Scier

0,1

0,n

ON
numOn

BRANCHE
numBranche

0,1

0,n

S'asseoir

Ici on pourrait crire :

Scier[BRANCHE] Sasseoir[BRANCHE] = .

Lopinion de M. Scurit est quon doit sassurer que la branche quon scie ne supporte pas
quelquon (ou quelques on , y compris soi-mme). Voil un bon prsage, prcis et sage,
pour le pr-sciage mais qui ninterdit pas un scieur de scier assis pourvu quil soit assis sur
une autre branche. Ce qui ne sied gure M. Bricolage

Linterprtation de M. Piaget
Scier

0,1

ON
numOn

0,n

BRANCHE
numBranche

0,1

0,n

S'asseoir

Ici, la contrainte ne porte pas sur lun des rles mais sur les couples associs. En effet,
chaque association est ici assimilable un ensemble de couples. Les associations Scier et
Sasseoir sont donc des ensembles de couples ON-BRANCHE et, ce titre, elles sont
comparables. On pourrait crire : Scier Sasseoir = .27
Lide de M. Piaget est quon ne va pas scier la branche sur laquelle on est soi-mme assis28.
Cest concis mais rien ninterdit notre scieur dtre assis sur une autre branche29, rien
ninterdit notre scieur de scier une branche supportant ne serait-ce quun petit on 30,
donc rien ninterdit au premier on venu de scier la branche sur laquelle notre scieur est
assis31.

27

Dans ce document, nous nenvisagerons pas les cas o le pivot peut rester implicite. Sachez que cest prcisment le cas
dans cet exemple.
28
Personne nest assez on pour a. Cest bien l linterprtation la plus commune du proverbe.
29
La leon de M. Bricolage nest donc pas assi mile.
30
Un assis mineur, quoi !
31
Au revoir, mon scieur !

http://www.reseaucerta.org

Michel Auguste mai 2004

Page 26/56

Linterprtation de M. Yanne32
Scier

0,1

0,n

ON
numOn

BRANCHE

numBranche

0,1

0,n

S'asseoir

Ici, nous avons deux contraintes dexclusion, chacune portant sur lun des rles.
M. Yanne dclare : Tout le monde, il est beau, tout le monde, il est gentil. 33. Donc pas
question de scier assis, pas question de scier une branche supportant quelquon 34
Nous ferons remarquer aussi (ainsi quaux scieurs et aux scis) que cette interprtation
intgre toutes les autres. See you later !
Transposition sur le cas GRC
On peut tre tent de placer une contrainte dexclusion sur lassociation rflexive succder .
LOGICIEL
numLogiciel
nomLogiciel
noVersion
dateProjet
dateCompilation
dateLancement

prcdent

Erreur frquente !

0,1

Succder

0,1

succdant

Remarquez que, dans ce cas, il faut bien accrocher la contrainte aux pattes . Mais ce nest pas
sans consquence. Interrogeons-nous, en effet, sur le sens de cette contrainte. Pour dterminer
la signification dune contrainte, il faut, en principe, en placer le pivot. Ici, franchement, est-ce
bien ncessaire ? Tout est dit, puisque la contrainte est accroche aux rles. Il ny a quune seule
interprtation possible : un logiciel jouant le rle de prcdent ne peut jouer le rle de
succdant. On pourrait crire :
Succder[LOGICIELprcdent] Succder[LOGICIELsuccdant] = .
Or, cette contrainte nest pas celle que nous voulions mentionner. Pis, elle est errone : si le
logiciel n 15 succde au logiciel n 4 et le logiciel n 33 succde au logiciel n 15, nous voyons
bien que, dans des couples diffrents, le logiciel n 15 remplit alternativement les deux rles. Ce
que nous voulions dire est quun logiciel ne peut jouer les deux rles dans le mme couple, ce que
nous pourrions crire ainsi : S Succder : S.LOGICIELprcdent S.LOGICIELsuccdant.
Remarquez que la contrainte ainsi crite nous amne considrer la composition de chaque
n-uplet et non comparer des sous-ensembles dans leur globalit. En consquence, la contrainte
mentionner nest pas une contrainte ensembliste. Nous y reviendrons plus loin.

32

En guise dhommage !
Cest une scie bien connue.
34
Reconnaissons que ce nest pas supportable !
33

http://www.reseaucerta.org

Michel Auguste mai 2004

Page 27/56

2e exemple : La contrainte de totalit


Un exemple comment nous suffira ici (inspir du cas Tarmel, CAPET externe 1999).
SPORT
montantAssurance

Pratiquer
0,n

numLicence
0,1

SECTION
numSection

Contrainte de
totalit

XT

ART
dateExposition

ADHRENT
numAdhrent

0,1

Inscrire

0,n

Il existe des sections parmi lesquelles on distingue deux catgories : Sport et Art. Ces deux
sous-ensembles forment une partition de lensemble des sections.
Il existe des adhrents qui pratiquent un sport ou sinscrivent une section dart ou qui font
les deux mais au moins lun des deux.
Si la contrainte de totalit nest pas prcise, il pourrait exister des adhrents nexerant
aucune activit, en contradiction avec la rgle de gestion nonce : il nest pas obligatoire de
pratiquer un Sport (cardinalit minimale gale 0 sur le rle dAdhrent dans lassociation
pratiquer ), il nest pas obligatoire de sinscrire une section Art (cardinalit minimale
gale 0 sur le rle dAdhrent dans lassociation inscrire ) mais il est obligatoire
dexercer lune des deux activits (contrainte de totalit liant les rles dAdhrent).
On peut crire :

Pratiquer[ADHRENT] Pratiquer[ADHRENT] = ADHRENT.

3e exemple : la contrainte dinclusion source unique


Lexemple qui suit est extrait et adapt dun sujet de BTS dveloppeur dapplications (Triathlte,
Nouma 2000).
Contrainte dinclusion
tre membre
1,n
1,1

LICENCI
N licence
Date premire licence

0,1

CLUB
Numro club
Nom club
Adresse club
Tlphone club
0,n

Entraner

On y lit que tous les licencis sont membres dun club. Un club accueille au moins un
licenci. Certains licencis sont entrans dans un club. Un club entrane zro, un ou
plusieurs licencis. Une contrainte dinclusion (pastille I) a t place entre les
associations Entraner et tre membre . Comme il sagit dune contrainte
dinclusion, le lien est orient de la source Entraner vers la cible tre membre .
A notre connaissance, la contrainte dinclusion est la seule contrainte oriente, ce qui est
logique puisque cest la seule contrainte o les lments lis par la contrainte nont pas le
mme statut : la source, linclus, au bout de la flche, lincluant. On ne peut pas en dire
autant ni dune contrainte dexclusion ni dune contrainte de totalit !35

35

Nous revenons sur ces questions plus loin dans la prsentation du mta-modle.

http://www.reseaucerta.org

Michel Auguste mai 2004

Page 28/56

Dans le schma prcdent, le pivot na pas t mentionn, dessein. Nous allons tudier
maintenant les interprtations possibles de la contrainte selon le pivot choisi.
Redondance !

tre membre
1,n
1,1

CLUB

LICENCI
N licence
Date premire licence

Numro club
Nom club
Adresse club
Tlphone club

0,1

0,n

Entraner

Ici, le schma prcise que tous les licencis entrans sont des licencis membres. Or,
cette prcision est inutile puisque tous les licencis sont membres ! Retenez bien quune
contrainte dinclusion entre deux rles dont le rle cible est dot dune cardinalit
minimale gale 1 est tout simplement redondante !
Formulation
Nous avons :

1. tre membre[LICENCI] = LICENCI (cardinalit minimale = 1)


2. Entraner[LICENCI] LICENCI (cardinalit minimale = 0)
3. Entraner[LICENCI] tre membre[LICENCI]
(contrainte dinclusion qui ne dit rien de plus que nous ne sachions dj)

Il en va donc de mme lorsquon fait porter la contrainte dinclusion sur les rles de Club.
tre membre
1,n
1,1

LICENCI
N licence
Date premire licence

CLUB
Numro club
Nom club
Adresse club
Tlphone club

0,1

0,n

Entraner

Redondance !
videmment, la fusion des schmas ne change rien laffaire.
tre membre
1,n
1,1

LICENCI
N licence
Date premire licence

0,1

CLUB
Numro club
Nom club
Adresse club
Tlphone club
0,n

Entraner

Ce quon veut exprimer, cest quun licenci est entran dans un club dont il est membre.
La contrainte porte sur les couples. Pour lindiquer, le pivot relie les deux entits36.

36

Dans ce cas, dailleurs, le pivot peut rester implicite.

http://www.reseaucerta.org

Michel Auguste mai 2004

Page 29/56

tre membre
1,n
1,1

CLUB
Numro club
Nom club
Adresse club
Tlphone club

LICENCI
N licence
Date premire licence

0,1

0,n

Entraner

On pourrait crire :

Entraner tre membre.

Nous allons appliquer cette nouvelle connaissance au cas GRC, pour exprimer que les
distributeurs vendent des logiciels pour lesquels ils ont t agrs.
La contrainte porte sur le couple dentits associes par Agrer et qui fait partie de
la collection de Vendre . On pourrait crire :
Vendre[DISTRIBUTEUR, LOGICIEL] Agrer.
TIERS
noTiers
nomTiers
adresseTiers
tlphoneTiers
faxTiers
mailTiers

PROSPECT

0,n

1,1

Modle conceptuel de donnes

CLIENT

sourceContact

ACTION
noAction
dateAction
heureDbut
heureFin
typeAction
dtailAction

Raliser

Projet

dlaiClient

: GRC

Modle : Schma entit-association


Auteur : Michel Auguste

Version: 5 03/02/2004

DISTRIBUTEUR
tauxCommission

AUTRE CLIENT

Agrer
1,n

0,n

La contrainte
dinclusion

0,n

Vendre

nombreLicences

0,n

prcdent
LOGICIEL
DATE
jourVente

1,n
0,n

noLogiciel
nomLogiciel
noVersion
dateProjet
dateCompilation
dateLancement

0,1

Succder

0,1

succdant

http://www.reseaucerta.org

Michel Auguste mai 2004

Page 30/56

4e exemple : la contrainte dinclusion source compose


Examinons lexemple suivant :
ARTICLE
numArticle

FOURNISSEUR

Proposer
1,n

prixAchatUnitaire

1,n

0,n

numFournisseur

0,n

Ligne de commande

Adresser

quantitCommande

COMMANDE
1,n

numCommande

1,1

Le schma exprime notamment que :

Un article est propos par au moins un fournisseur. Un fournisseur propose au moins


un article. Le prix dachat dpend de larticle et du fournisseur.
Une commande est adresse un fournisseur. Un fournisseur reoit zro, une ou
plusieurs commandes.
Une commande porte sur au moins un article. Un article fait lobjet de zro, une ou
plusieurs commandes. La quantit commande dpend de la commande et de larticle.

La contrainte dinclusion signifie que les articles concerns par une commande adresse
un fournisseur font partie des articles proposs par ce fournisseur.
La source est compose et, pour transcrire littralement la contrainte, nous utiliserons
une nouvelle opration que nous nommerons la jointure et que nous noterons .
(Ligne de commande Adresser )[ARTICLE, FOURNISSEUR]
Proposer[ARTICLE, FOURNISSEUR]
ce qui se lit : La jointure de Ligne de commande et de Adresser 37, projete sur
ARTICLE et FOURNISSEUR, est incluse dans Proposer projete sur les mmes
composants .
Nous verrons plus loin quune erreur frquente consiste oublier des pattes dans
la source, pattes sans lesquelles la contrainte nest pas formellement interprtable.
La contrainte dgalit
Il nous semble que la contrainte dgalit ne possde pas de caractristique propre (voir
mta-modle).

37

Dans ce document, nous laissons de ct le problme que peut poser la multiplicit des chemins de jointure possibles. Dans
notre exemple, il ny a pas dambigut : Ligne de commande et Adresser nont quun composant portant

sur la mme rfrence (par abus de langage, nous pourrions dire quun composant commun ), cest
COMMANDE. Cest donc par ce chemin que seffectue la jointure .

http://www.reseaucerta.org

Michel Auguste mai 2004

Page 31/56

Quelques contre-exemples (erreurs les plus frquentes)

Contre-exemple n 1 : Erreur de rfrence (cas Les Tilleuls, EDC CAPET D externe 1998)
MDECIN

JOUR

Travailler
0,n

1,n

0,n

I
Rendez vous
0,n

DATE
0,n

PATIENT

Formellement, lentit JOUR ne fait pas partie de la collection de lassociation Rendez vous :
elle ne saurait faire partie du pivot dune contrainte dinclusion dont Rendez vous serait la
source. Quest-ce qui a conduit certains tudiants prparant le CAPET proposer cela ? Le
sujet prcisait que les mdecins du cabinet travaillaient certains jours de la semaine : le
domaine de JOUR est donc {lundi, mardi, mercredi, etc.} Ces tudiants voulaient prciser
que les rendez-vous pris par un mdecin avec un patient ltaient forcment une date non
chme par ce mdecin. Ils ont construit cette contrainte dinclusion sans apprhender le
fait que le rfrentiel de DATE nest pas celui de JOUR, mme sil y a videmment un rapport
entre les deux. Dautres ont aperu la difficult et lont contourne ainsi :
MDECIN

JOUR

Travailler
0,n

1,n

1,n

0,n

I
Correspondre

Rendez vous
0,n

DATE
0,n
1,1

PATIENT

Dans le contexte du sujet, ce nest pas trs lgant mais ce qui est prsent est valide dun
point de vue formel :
(Rendez vous Correspondre)[MDECIN, JOUR] Travailler
Les entits MDECIN et JOUR font bien partie de lunion des collections des associations
jointes.

http://www.reseaucerta.org

Michel Auguste mai 2004

Page 32/56

Contre-exemple n 2 : Tautologie (Cas Outillage, sujet dEST, CAPET D externe 2002)


Extrait du schma contenu dans le sujet :
MAIN D OEUVRE

0,n

CONTRAT
Rserve

0,n

CALENDRIER
0,n

1,n

Utilise

OUTILLAGE
0,n

Question pose : Exprimez ces contraintes par des notations de votre choix dans le schma
conceptuel.
Parmi les contraintes exprimer, on trouve : Un contrat ne peut utiliser38 une main duvre
que si un outillage est lou .
Le corrig publi dans le rapport de jury contient :
MAIN D OEUVRE

0,n

CONTRAT
Rserve

0,n

CALENDRIER
0,n

1,n

I
Utilise

OUTILLAGE
0,n

Une contrainte dinclusion qui est, nous lavons vu, compltement inutile !
La cardinalit minimale sur le rle de CONTRAT dans lassociation Rserve est gale 0 :
Rserve[CONTRAT] CONTRAT.
La cardinalit minimale sur le rle de CONTRAT dans lassociation Utilise est gale 1 :
Utilise[CONTRAT] = CONTRAT.
Rserve[CONTRAT] Utilise[CONTRAT] est donc dj tabli.

38

Nous avons conserv lintitul original de la question qui emploie pour parler du lien entre CONTRAT et MAIN
DUVRE le verbe employ dans le schma pour lautre lien.

http://www.reseaucerta.org

Michel Auguste mai 2004

Page 33/56

Contre-exemple n 3 : Incompltude (inspir de CAEN-Ouistreham, BTS DA Nouma 2001)


Extrait de la solution produite par plusieurs tudiants :
ESCALE
noEscale

Dcharger
0,n

1,1

1,1

0,n

Faire

Autoriser

1,n

0,n

NAVIRE
noNavire

TYPE FRET
codeTypeFret

TYPE NAVIRE
Appartenir

1,1

codeTypeNavire
0,n

Il sagissait de contrler quun navire qui fait escale chez nous pour y dcharger tel type
de fret est bien autoris transporter ce type de fret.
Lerreur commise ici nest quune variante de la premire mais elle est beaucoup plus
frquente (on la trouve mme dans certaines documentations dateliers de gnie logiciel !).
Formellement, TYPE NAVIRE ne fait pas partie de la collection dentits de lassociation
Dcharger. Celle-ci ne saurait donc tre la source unique dune contrainte dinclusion
comportant TYPE NAVIRE en son pivot.
Il faut faire les jointures ncessaires :
ESCALE
noEscale

Dcharger
0,n

1,1

1,1

0,n

Faire

Autoriser

1,n

0,n

NAVIRE
noNavire

TYPE FRET
codeTypeFret

TYPE NAVIRE
Appartenir

1,1

codeTypeNavire
0,n

o la contrainte dinclusion exprime :


(Dcharger Faire Appartenir)[TYPE NAVIRE, TYPE FRET] Autoriser

http://www.reseaucerta.org

Michel Auguste mai 2004

Page 34/56

Contre-exemple n 4 : Contradiction (inspir de lexemple documentant WinDesign)


Une commande est passe par un client mais certaines sont factures dautres clients.
Passer

1,1

0,n

COMMANDE

CLIENT

0,1

0,n

Facturer tiers

Formellement, lcriture de cette contrainte pour laquelle le pivot est commande ne tient
pas :
Cardinalit 1 sur le premier rle Passer[COMMANDE] = COMMANDE
Cardinalit 0 sur le deuxime rle Facturer tiers[COMMANDE] COMMANDE
Do il vient : Facturer tiers[COMMANDE] Passer[COMMANDE]
Or, on sait bien quil ne peut y avoir en mme temps inclusion et exclusion !
Lexpression naturelle de la contrainte exprime bien que celle-ci porte sur le couple : la
commande peut tre facture dautres clients Cest donc juste titre que la
documentation de WinDesign propose :
Passer

1,1

0,n

COMMANDE

CLIENT

0,1

0,n

Facturer tiers

Au niveau de lapprentissage, lutilisation des rles en lecture (interprtation) et en criture


(conception) est une mesure prventive qui nous semble efficace. En voici un exemple :

Suivre
PERSONNE

Auditrice
0,n

No-personne

Cours suivi
0,n
X

Animatrice
0,n

COURS
No-cours

Cours anim
0,n
Animer

La contrainte se lit ainsi : les personnes auditrices ne peuvent tre des personnes
animatrices et rciproquement. Remarquons que cet nonc ne fait pas intervenir le concept
de cours, ce qui justifie le choix du pivot.

http://www.reseaucerta.org

Michel Auguste mai 2004

Page 35/56

II.3 Les relations binaires


La rfrence mathmatique
En mathmatiques, on utilise la notion de relation binaire pour dfinir les relations dquivalence
et les relations dordre.

Soit E un ensemble. On appelle relation binaire sur E toute application R de lensemble


produit ExE (ou E2) dans lensemble deux lments {vrai, faux} (ou {0, 1}).
Notation : x et y appartenant E, le compos est not xRy ou R(x, y) et on crit :
soit xRy est vrai ou plus simplement xRy ou encore R(x, y) = 1 ;
soit xRy est faux ou R(x, y) = 0 .

A la base des dfinitions des relations dquivalence et des relations dordre, il y a la


rflexivit, la symtrie, lantisymtrie et la transitivit. Pour les besoins de la cause, nous
compltons la panoplie ci-dessous. Soit E un ensemble muni dune relation binaire R.

Peut-on tre en relation avec soi-mme ?

Rflexivit.
La relation R est dite rflexive si quel que soit x appartenant E, xRx est vrai.
x E, xRx
Antirflexivit.
La relation R est dite antirflexive si quel que soit x appartenant E, xRx est faux.
x E, non xRx

Peut-on jouer les deux rles ?

Symtrie.
La relation R est dite symtrique si quels que soient x et y appartenant E, xRy est
vrai implique et rciproquement yRx est vrai .
(x, y) E2, xRy yRx
Antisymtrie.
La relation R est dite antisymtrique si quels que soient x et y appartenant E, xRy est
vrai et yRx est vrai implique x est gal y .
(x, y) E2, xRy et yRx x = y
Une autre formulation est possible : la relation R est dite antisymtrique si quels que
soient x et y appartenant E, avec x diffrent de y, xRy est vrai implique yRx est
faux .
(x, y) E2 et xy, xRy non yRx
Asymtrie.
La relation R est dite asymtrique si quels que soient x et y appartenant E, xRy est
vrai implique xRx est faux et yRx est faux .
(x, y) E2, xRy (non xRx) et (non yRx)

Entrane-t-on les autres ?

Transitivit.
La relation R est dite transitive si quels que soient x, y et z appartenant E, xRy est
vrai et yRz est vrai impliquent xRz est vrai .
(x, y, z) E3, xRy et yRz xRz
Intransitivit.
La relation R est dite intransitive si quels que soient x, y et z appartenant E, xRy est
vrai et yRz est vrai impliquent xRz est faux .
(x, y, z) E3, xRy et yRz non xRz

http://www.reseaucerta.org

Michel Auguste mai 2004

Page 36/56

Avec retour lenvoyeur ?

Cyclicit.
La relation R est dite cyclique si quels que soient x, y et z appartenant E, xRy est
vrai et yRz est vrai impliquent zRx est vrai .
(x, y, z) E3, xRy et yRz zRx
Acyclicit.
La relation R est dite acyclique si quels que soient x, y et z appartenant E, xRy est
vrai et yRz est vrai impliquent zRx est faux .
(x, y, z) E3, xRy et yRz non zRx

Transposition sur les associations rflexives


#

une association rflexive, correspond une relation binaire.


Soit E une entit. Lassociation rflexive A(E1, E2) o E1 et E2 sont les deux rles jous par
lentit E dans lassociation A est transposable en une relation binaire : E (lentit) est
lensemble de rfrence, lassociation A voque la relation R qui associe tout couple de ExE
la valeur vrai (le couple est une occurrence de A) ou la valeur faux (le couple nest pas une
occurrence de A).
pre
PERSONNE
numPersonne

0,n

Filiation

0,1

fils

Soit PERSONNE = {P1, P2, P3, P4, P5, P6} (lensemble PERSONNE compte 6 occurrences) et
Filiation = {(P1, P2), (P2, P4), (P5, P3)} o, dans les couples cits, le premier lment joue le
rle de pre et le deuxime le rle de fils (lensemble Filiation compte 3 couples).
Nous pouvons considrer la relation binaire pre_de et crire, par exemple,
P1pre_deP2 est vrai ou encore P1pre_deP4 est faux .
#

Lexpression des contraintes.


Dans lexemple Filiation , nous voudrions pouvoir dire que :

On ne peut pas tre son propre pre (antirflexivit).


Si une premire personne est le pre dune deuxime personne, alors cette dernire ne
peut tre le pre de la premire (puisquil y a antirflexivit, cette contrainte est
assimilable la proprit dasymtrie).
Si une premire personne est le pre dune deuxime personne et cette deuxime
personne le pre dune troisime personne, alors la premire ne peut tre le pre de la
troisime (intransitivit).
Si une premire personne est le pre dune deuxime personne et cette deuxime
personne le pre dune troisime personne, alors la troisime ne peut tre le pre de la
premire (acyclicit).

http://www.reseaucerta.org

Michel Auguste mai 2004

Page 37/56

En fait, le modle entit-association nintgre pas lexpression de ces genres de contraintes


mme parmi ses diverses extensions. Un modle amricain39 sattarde sur ces contraintes o
elles sont nommes ring constraints. Nous nous en inspirons ci-dessous propos du cas GRC.
Dans le cas GRC, nous avons rencontr une association rflexive , lassociation
Succder . Prcdemment, lexpression dune contrainte nous a pos problme. Il sagissait
de montrer quun logiciel ne peut succder lui-mme. La proprit correspondante est
lantirflexivit40. En ORM, cela sappelle irreflexive constraint note 0 ir.
LOGICIEL
numLogiciel
nomLogiciel
noVersion
dateProjet
dateCompilation
dateLancement

prcdent
0,1

O ir

Succder

0,1

succdant

Attention, ceci est une


imitation !

En fait, ici, il faudrait mentionner les autres contraintes comme lasymtrie. Pourtant nous
nous en tiendrons l. En effet, il ne sagit pas pour nous de proposer de nouvelles extensions
au MEA, bien assez riche dj, mais de donner la possibilit tout un chacun de matriser la
notion de contrainte ensembliste en vitant de la confondre, dans les associations dites
rflexives , avec les proprits des relations binaires correspondantes.

39

Il sagit de la mthode ORM, continuatrice de la mthode NIAM dont le modle de donnes, le modle relationnel binaire,
a t popularis en France par Henri Habrias.
40
Une association rflexive dote dune contrainte dantirflexivit. Paradoxal, non ?

http://www.reseaucerta.org

Michel Auguste mai 2004

Page 38/56

Objets, vos papiers !


III Lidentification des composs41
Le MEA, avons-nous dit, repose, par principe, sur deux niveaux de composition qui nous
permettent de distinguer deux types de compos : lentit et lassociation. Contrairement aux
modles objets qui en confient la responsabilit au systme , le MEA reste proccup par
lidentification des composs42. Nous avons vu que, par principe, :

Toute entit possde une proprit identifiante.


Toute association est identifiable par tout ou partie de sa collection dentits.

Pour reflter la ralit dun systme, ces principes (identification absolue des entits,
composition limite deux niveaux) sont quelque peu restrictifs. Ils ont t transgresss depuis
longtemps dans les modles anglo-saxons. Les nouveaux concepts proposs font partie du
vocabulaire du mtier aujourdhui et cest pourquoi nous les prsenterons rapidement dans leur
forme originelle.

III.1 Linterprtation anglo-saxonne


Lentit faible (weak entity)

Cas typique

Dans un lyce, une salle est caractrise par un numro qui lidentifie au sein du btiment
auquel elle appartient.

Problmatique
Si nous considrons les btiments et les salles, nous avons affaire des entits
embotes . On parle aussi, en France, dentits gigognes . Du point de vue du mode
didentification, lentit SALLE ne nous fournit pas un mode didentification intrinsque.
Pour identifier compltement une salle, il faut savoir quel btiment elle appartient. On
dit que SALLE est une entit faible , dont lentit forte est BTIMENT.

Solution anglo-saxonne

On reprsente lentit faible par un objet graphique particulier.


Weak entity
BTIMENT

Possder

SALLE

Dans le modle anglo-saxon, lentit est reprsente par un rectangle couch sans
cartouche. Lentit faible est alors reprsente par un rectangle dans un rectangle (ce
qui favorise la visualisation de lembotement). Le seul lien accroch au rectangle
extrieur est celui qui lie lentit faible son entit forte. Si lentit faible a des liens
avec dautres entits, ces liens saccrocheront sur le rectangle intrieur. Dans lexemple

41

Nous reprenons ici des thmes que nous avons dvelopps par ailleurs (voir annexe du document Vraies et fausses
ternaires ).
42
Celle des composants ne pose de problme.

http://www.reseaucerta.org

Michel Auguste mai 2004

Page 39/56

ci-dessus, le lien dont le dpart est figur pourrait exprimer la participation de lentit
SALLE lassociation Occuper .43
Lagrgat (aggregation)44

Cas typique

Dans une entreprise de confection, on fabrique des costumes deux-pices partir de


vestes et de pantalons existants. On fabrique aussi des costumes trois-pices partir de
costumes deux-pices existants auxquels sajoutent les gilets.

Problmatique

Si nous considrons les costumes comme des associations, nous avons dune part une
association binaire (costume deux-pices), dautre part une association ternaire (costume
trois-pices). Mais les deux associations cte cte ne transcrivent pas la ralit et lon
pourra faire nimporte quel costume trois-pices, pourvu quil soit compos dune veste,
dun pantalon et dun gilet. Il faudrait pouvoir construire lassociation ternaire sur
lassociation binaire. En sen donnant les moyens, on considrera que costume deuxpices est un agrgat (ou une entit agrgative ou encore une pseudo-entit).

Solution anglo-saxonne

On reprsente lagrgat par un objet graphique particulier.


COSTUME 2PICES
VESTE

Costume2pices

Costume
3pices

PANTALON

Aggregation

GILET

III.2 La solution franaise


En France, on na pas choisi dobjet graphique particulier pour reprsenter ces notions. Pour
satisfaire les besoins noncs, mais aussi des besoins poss par des situations plus complexes,
que nous qualifierons d hybrides , la plupart des auteurs dextensions au MEA sest accord
sur la mise en avant du mode didentification des composs, donnant ainsi naissance aux nouveaux
concepts suivants :

43
44

Nous navons pas reprsent les proprits et les cardinalits , qui sexpriment de faon diffrente du modle franais.
Dans les annes 1980, on parlait aussi de personnalisation (cf. ACSIOME).

http://www.reseaucerta.org

Michel Auguste mai 2004

Page 40/56

Lidentifiant relatif.
Exemple : Dans le premier cas prsent ci-dessus, le n de salle identifie la salle dans le
btiment auquel elle appartient. Le n de salle nest pas un identifiant absolu : cest un
identifiant relatif.
Lidentifiant relatif na pas de reprsentation particulire. Cest la prsence ou non de liens
identifiants pour lentit considre qui nous permet de savoir si un identifiant est relatif ou
absolu.
Le lien identifiant.
Exemple : Dans le premier cas prsent ci-dessus, le lien entre Salle et Btiment (possder)
participe lidentification de lentit Salle. On dit quil sagit dun lien identifiant.
Le lien identifiant possde une reprsentation particulire qui diffre selon les auteurs. Dans
ce qui suit, nous avons opt pour celle qui est la plus usite en BTS informatique de gestion
(celle du logiciel Power*AMC).
Voici les reprsentations la franaise des deux cas dcole prcdents.

BTIMENT
noBtiment

Identifiant relatif

SALLE

Possder
1,n

noSalle

(1,1)

Lien identifiant

PANTALON
noPantalon

0,n

COSTUME DEUX PICES

Pour

VESTE

Avec

0,n

(1,1)

(1,1)

noVeste

0,n

Lien identifiant

Lien identifiant
Costume trois pices

Pseudo-entit
0,n

GILET
noGilet

Cela nous amne rviser les rgles concernant lidentification des entits :

Dans le cas gnral, une entit possde un identifiant absolu.

Si une entit est concerne par au moins un lien identifiant et possde une proprit
souligne, alors cette dernire est un identifiant relatif.

Une entit gnrique qui ne possde pas de proprit souligne doit tre concerne par au
moins deux liens identifiants.

Nous savons par ailleurs quune entit spcialise peut ne pas possder didentifiant.

http://www.reseaucerta.org

Michel Auguste mai 2004

Page 41/56

Appliquons ces nouveaux concepts au cas GRC aprs avoir apport la prcision suivante : une
action possde un numro dordre qui lidentifie parmi les actions qui concernent le mme tiers.
En outre, nous pouvons construire un agrgat AGRMENT qui vitera la mention de la
contrainte dinclusion.
TIERS
noTiers
nomTiers
adresseTiers
tlphoneTiers
faxTiers
mailTiers

PROSPECT
sourceContact

ACTION
noAction
dateAction
heureDbut
heureFin
typeAction
dtailAction

Raliser
0,n

(1,1)

Lien identifiant

Identifiant relatif

Modle conceptuel de donnes

CLIENT

Projet

dlaiClient

: GRC

Modle : Schma entit-association


Auteur : Michel Auguste

Version: 6 03/02/2004

DISTRIBUTEUR
tauxCommission

AUTRE CLIENT

De
1,n

0,n

Pseudo-entit

(1,1)

Vendre
nombreLicences

0,n

AGRMENT

(1,1)

Pour

DATE
jourVente

1,n

0,n

LOGICIEL
noLogiciel
nomLogiciel
noVersion
dateProjet
dateCompilation
dateLancement

prcdent
0,1

Succder

0,1

succdant

Le lien identifiant porte forcment les cardinalits 1, 1 sur le rle de lentit quil contribue
identifier. Les parenthses autour du couple 1, 1 indiquent que le lien participe lidentification.
Les notions didentifiant relatif et de lien identifiant permettent de reprsenter les deux cas
typiques voqus prcdemment : lentit faible (un identifiant relatif + un lien identifiant) et
lagrgat (deux liens identifiants).
Mais elles permettent galement de reprsenter des cas plus sophistiqus. En voici un exemple
inspir du cas Secolog (BTS informatique de gestion, option Dveloppeur dapplications,
mtropole 2001).

http://www.reseaucerta.org

Michel Auguste mai 2004

Page 42/56

DVELOPPEUR

VERSION
noVersion

0,n

0,n

MEMBRE QUIPE DVELOPPEMENT


Par

Pour

(1,1)

(1,1)

0,n

Effectuer

(1,1)

COMPTE RENDU
dateCompteRendu

Les dveloppeurs travaillent sur des versions (de logiciels). Chacun fait un compte rendu de sa
journe de travail pour chaque version concerne. Le schma prcdent est tout fait
transposable dans le modle anglo-saxon puisquon y trouve dabord un agrgat (membre de
lquipe de dveloppement) sur lequel est construite lentit faible Compte Rendu. Dun point
de vue smantique, on peut trouver intressant de disposer de la composition de lquipe de
dveloppement avant mme que tout compte rendu nait t rdig. Mais le concept dquipe est
une extrapolation par rapport au sujet qui ny fait pas allusion. En ne tenant compte que des
rgles fournies par le sujet, le schma pourrait tre le suivant :

DVELOPPEUR

COMPTE RENDU

Par
0,n

(1,1)

dateCompteRendu

VERSION

Pour
(1,1)

noVersion
0,n

Vous voyez cette fois que, malgr son indniable ergonomie , le modle anglo-saxon ne peut
reprsenter de faon lisible cette situation hybride , mi-agrgat, mi-entit faible.

Remarque pour le lecteur familiaris avec la notion de DF


Lorsque nous ne disposions que didentifiants absolus, il tait commode sur le plan pdagogique
dassimiler association fonctionnelle (par exemple, lassociation Raliser ) et dpendance
fonctionnelle entre identifiants (noAction % noTiers). videmment, la notion didentifiant
relatif introduit une rupture : nous ne pouvons pas crire noOrdreAction % noTiers . Mais,
contrairement ce qui est crit dans certain document diffus lors de la rnovation du BTS CGO
(processus 10), cela ne change rien la nature fonctionnelle de lassociation Raliser . Dans sa
reprsentation littrale, elle scrit dans les deux cas : Raliser(ACTION % TIERS). Dire quun
couple de cardinalits 1,1 mis entre parenthses ne correspond pas une DF est donc faux,
une DF entre identifiants, certes, mais, si lon admet la formule, la DF entre les entits
demeure !

http://www.reseaucerta.org

Michel Auguste mai 2004

Page 43/56

III.3 Contre-exemples
Lemploi des agrgats et des entits faibles est dlicat. Voici quelques problmes lis leur
utilisation :
Contre-exemple n 4 : Lien identifiant et contrainte dinclusion (Caen-Ouistreham)
Ltude de cas du BTS DA (Nouma 2001) voque dans le contre-exemple n 3 comportait en
fait deux contraintes dinclusion.
POSTE
codePoste

QUAI

Comprendre
(1,1)

1,n

0,n

1,n

Accoster

Habiliter

1,1

ESCALE
noEscale

0,n

TYPE FRET

Dcharger
0,n

1,1

1,1

codeTypeFret

0,n

Faire

Autoriser

1,n

0,n

NAVIRE
noNavire

noQuai

Appartenir
1,1

0,n

TYPE NAVIRE
codeTypeNavire

Les deux contraintes reposent sur le mme modle. Dans la premire, il sagit de contrler
que le type de fret dcharg lors dune escale en accostant un poste compris dans un quai
fait partie des types de fret pour lesquels ce quai est habilit. A priori, aucun problme ! Pas
daccord, ont avanc un grand nombre de professeurs car, dans cette contrainte, il y a une
entit faible et ils ne voient pas la ncessit de mobiliser lassociation Comprendre. Nous
voyons l une nouvelle consquence de la confusion entre modle entit-association et modle
relationnel. videmment, dans ce dernier, la relation POSTE a pour cl primaire noQuai,
codePoste. En implantant la contrainte dinclusion laide dun trigger, il ne sera pas
ncessaire daller plus loin. Mais, cest oublier que, dans le modle entit-association,
lidentification de lentit Poste intgre le lien identifiant : lassociation Comprendre fait bel
et bien partie des sources de la contrainte !
(Dcharger Accoster Comprendre)[QUAI, TYPE FRET] Habiliter.

http://www.reseaucerta.org

Michel Auguste mai 2004

Page 44/56

Contre-exemple n 5 : Agrgat, lair ! (Au Fil de la Terre, CAPET IG externe 1997)


Dans ce sujet complexe, il est notamment question de voyages dcrits en journe. Un circuit
est une occurrence de ce voyage des dates particulires. Pour diverses raisons, il est
possible de modifier le contenu dune journe de circuit.
Le corrig publi dans le rapport de jury nous propose le schma suivant (extrait) :
VOYAGE
noVoyage

CIRCUIT

Raliser
0,n

1,1

noCircuit

1,n

0,n

Comporter

Pour

(1,1)

(1,1)

JOURNE
noJourne

0,n

De

MODIFICATION
(1,1)

Etc
1,1

Remarque : Lassociation Etc a t dessine pour montrer que la prsence dun agrgat pouvait tre
justifie par la ncessit de construire de nouvelles associations.

Lide est sduisante. Mais, mais Ralisons le modle logique relationnel, prsent cidessous avec des conventions dcriture classiques :
VOYAGE(noVoyage, )
JOURNE(noVoyage#, noJourne, )
CIRCUIT(noCircuit, , noVoyage#)
MODIFICATION(noCircuit#, noVoyage#, noJourne, )
Or, dans cette dernire relation, la DF noCircuit % noVoyage, lintrieur de la cl, nest pas
tolrable !
La difficult peut tre contourne ainsi :
VOYAGE
noVoyage

CIRCUIT

Raliser
0,n

1,1

noCircuit

1,n

Comporter

(1,1)

JOURNE
noJourne

http://www.reseaucerta.org

0,n

Pour

(1,1)

MODIFICATION
noJourCircuit

Michel Auguste mai 2004

Etc
1,1

Page 45/56

Contre-exemple n 6 : Le lait tourn ! (Dossier informatique, CAPET B externe 2001)


Extrait du sujet :
La production de fromages engendre une organisation particulire quant aux tournes de
ramassage de lait, matire premire indispensable aux diffrentes productions de lentreprise.
La mise en place dune base de donnes, permettant de grer les diffrentes ressources, a
pos certains problmes compte tenu des contraintes spcifiques aux tournes.

Travail faire
Le responsable vous demande de confirmer ses choix en analysant les diffrentes solutions
proposes et les options retenues.
4.1 - Pour quelles raisons concrtes les deux reprsentations de lannexe 14 nont-elles pas t
retenues dans le schma de la base de donnes de lannexe 16 ?
4.2 - crire les rgles de gestion qui traduisent les deux nouvelles solutions proposes en annexe
15.
ANNEXE 14 : Extraits de schmas conceptuels des donnes (Modles n 1 et n 2)
Modle 1
CHAUFFEUR

CAMION
NImmatriculation

NChauffeur
NomChauffeur

1,1

UTILISER

1,n

Marque, Type,
DateAcquisition

PrnomChauffeur
Modle 2

CAMION

CHAUFFEUR

NImmatriculation

NChauffeur
NomChauffeur

1,n

UTILISER

1,n

Marque, Type,
DateAcquisition

PrnomChauffeur

ANNEXE 15 : Extraits de schmas conceptuels des donnes (Modles n 3 et n 4)


Modle 3
CHAUFFEUR
NChauffeur
NomChauffeur
PrnomChauffeur

1,n
PLANIFIER

CAMION
0,1

UTILISER

1,n

NImmatriculation
Marque, Type,
DateAcquisition

1,n
SEMAINE
NSemaine,
DateDbut

http://www.reseaucerta.org

Michel Auguste mai 2004

Page 46/56

Modle 4
CAMION

CHAUFFEUR
NChauffeur

1,n

UTILISER

1,n

NImmatriculation
Marque, Type,

NomChauffeur

DateAcquisition

PrnomChauffeur

1,n
SEMAINE
NSemaine,
DateDbut
ANNEXE 16 : Schma relationnel complet

CHAUFFEUR (NChauffeur, NomChauffeur, PrnomChauffeur, DateNaissance, Photo)


CAMION (NImmatriculation, Marque, Type, DateAcquisition, VolumeUtile)
SEMAINE (NSemaine, DateDbut)
TOURNEE (NTourne, NomTourne, NbKms)
PLANNING (NSemaine, NTourne, #NChauffeur, #NImmatriculation)
PRODUCTEUR (NProducteur, NomProducteur, Lieu-dit, CP, Commune, Quota, #NTourne)
LIVRAISON (#NProducteur, #NSemaine, Quantit)
Commentaires :
Dans la premire question, on veut videmment amener le candidat considrer que, dans le
modle n 1, la DF (association fonctionnelle) entre CHAUFFEUR et CAMION est contraire
aux rgles de gestion. Un chauffeur utilise au moins un camion. Au demeurant, puisquun camion
est utilis par au moins un chauffeur, on ne sait pas qui utilise tel camion tel moment. Dans le
modle n 1, il sagit de percevoir que lunicit du couple CHAUFFEUR-CAMION induite par
lassociation maille est galement contraire aux rgles de gestion : sans doute en considration
du temps, un chauffeur peut utiliser plusieurs fois le mme camion. Au demeurant, on ne sait
toujours pas qui utilise tel camion tel moment.
Dans la deuxime question, le modle n 4 nous offre un nouvel exemple de fausse ternaire .
Certes, on ne sait pas quelle est lunit de temps prendre en compte et notre sentence est
peut-tre un peu svre. Il nen demeure pas moins que, plusieurs chauffeurs pouvant utiliser le
mme camion la mme semaine, on ne sait toujours pas qui utilise tel camion tel moment.
Le modle n 3 utilise un agrgat lamricaine . Smantiquement, il exprime une petite
diffrence avec le modle n 4. Dans ce dernier, lassociation ternaire indique que le triplet
CHAUFFEUR-CAMION-SEMAINE est cr en une seule opration. Dans le prcdent schma,
les cardinalits 0,1 sur le rle de lagrgat nous indiquent que le planning de travail des
chauffeurs est labor prioritairement. Lattribution du camion vient aprs. Mais, mais Puisquun
camion peut tre affect plusieurs couples CHAUFFEUR-SEMAINE, il peut ltre des couples
pour lesquels seul le chauffeur est diffrent. Donc, plusieurs chauffeurs peuvent utiliser le
mme camion la mme semaine et on ne sait toujours pas qui utilise tel camion tel moment.
Lintervention de lagrgat ne rsout donc rien !
Vous remarquerez que le schma de la base de donnes (annexe 16) fait intervenir la notion de
tourne sans rsoudre ce problme !

http://www.reseaucerta.org

Michel Auguste mai 2004

Page 47/56

Mets ta modle et suis-moi45 !


IV Le mta-modle46
Il nous semble que la meilleure faon de partager les concepts est de les modliser car cela
contraint les formaliser de faon rigoureuse ! Essayons donc de modliser les concepts du
modle entit-association laide de ses propres concepts.

IV.1 Les concepts de base

En premire approche, nous concevons le schma suivant :


Nous faisons les hypothses suivantes :

Une association ne possde jamais de proprit identifiante.

Toute proprit est obligatoire et monovalue.

La notion de paramtre nest pas reprsente dans le MCD.


ASSOCIATION

Associer

nomAssociation

ENTIT
1,n

cardMin
cardMax

2,n

nomEntit

1,n

1,1

0,n

Proprit entit

XT

Proprit association
0,1

PROPRIT
nomProprit
typeDonne

0,1

Identifier

0,1

La contrainte de partition exprime quune proprit dcrit soit une entit soit une
association, pas les deux mais forcment une des deux. Proprit association et Proprit
entit nont quune entit commune dans leur collection, lentit PROPRIT : le pivot portant
sur cette entit peut rester implicite.
La contrainte dinclusion exprime que la proprit qui identifie une entit fait partie des
proprits de cette entit. Proprit entit et Identifier ont la mme collection : le pivot
portant sur cette collection, le couple ENTIT-PROPRIT, peut rester implicite.
On ne peut pas valider lassociation Associer telle quelle est conue. En effet, ici, le
couple ENTIT-ASSOCIATION est forcment unique, ce qui nest pas toujours le cas dans
la ralit (cas des associations rflexives o une mme entit joue plusieurs rles).

Lintervention du concept de rle nous donne :


Nous faisons lhypothse suivante :

45
46

Le nom dun rle est unique.

Mille excuses mais mon fils y tenait !


Cette section est vraiment rserve aux initis !

http://www.reseaucerta.org

Michel Auguste mai 2004

Page 48/56

RLE
Dans

1,1

nomRle
cardMin
carMax

De

1,1

2,n

1,n

ASSOCIATION

ENTIT

nomAssociation

nomEntit
1,n

0,n

1,1

Proprit entit

XT

PROPRIT

Proprit association
0,1

0,1

nomProprit
typeDonne

Identifier
0,1

Cette solution ne correspond pas la pratique : ici, lintervention des rles est
systmatique alors que, dans la ralit, les rles ne sont obligatoires que dans les associations
rflexives. Pouvons-nous modliser cela ?

La prise en compte dassociations spcialises pourrait nous donner :


ASSOCIATION
nomAssociation

XT

Associer sans rle

NON RFLEXIVE

RFLEXIVE

cardMin
cardMax

2,n

ENTIT
0,n

nomEntit

0,n

2,n

Dans
1,1

RLE
nomRle
cardMinRle
cardMaxRle

De
1,1

La contrainte de totalit signifie que lentit ENTIT participe au moins une fois lune des
deux associations. ENTIT est la seule entit commune aux deux associations Associer sans
rle et De : le pivot peut donc rester implicite.
Ce qui est modlis ici ne correspond toujours pas la pratique. Par exemple, dans une
association ternaire o une mme entit joue deux des trois rles, seuls ces deux rles sont
distinguer par un nom. Par ailleurs, il nest pas prcis quune association rflexive comporte
au moins deux rles portant sur la mme entit. Pouvons-nous modliser cela ?

http://www.reseaucerta.org

Michel Auguste mai 2004

Page 49/56

Lintervention du concept densemble de rles jous par une mme entit dans une mme
association nous donne :
ASSOCIATION
nomAssociation

Associer sans rle


cardMin
carMax

0,n

0,n

ENTIT
nomEntit

0,n
0,n

Jouer dans

(1,1)

Jouer par

ENSEMBLE DE RLES
(1,1)

2,n

lment de

1,1

RLE
nomRle
cardMinRle
cardMaxRle

ENSEMBLE DE RLES est un agrgat. Les pivots des contraintes


(ASSOCIATION dune part, ENTIT dautre part) peuvent rester implicites.

de

totalit

Nous avons beaucoup progress. Ici, un ensemble de rles jous par une entit dans une
association comporte au moins deux rles. Une association peut la fois runir des entits
distinctes et un ensemble de rles jous par une autre entit. Le seul point dlicat, cest que
cette entit peut tre aussi lune de celles qui sont associes sans rle. Nous avons dj vu
certains professeurs exprimer ce genre de contrainte dexclusion de la manire suivante :
ASSOCIATION
nomAssociation

Associer sans rle


cardMin
carMax

0,n

0,n

ENTIT
nomEntit

0,n
0,n

Jouer dans

Contrainte
dexclusion
contestable

(1,1)

Jouer par

ENSEMBLE DE RLES
(1,1)

Nous ne connaissons aucun ouvrage documentant cet usage particulier de la contrainte


dexclusion et il nous semble pour le moins incongru quune contrainte dexclusion soit
oriente. Nous prfrerons lcriture dune contrainte textuelle qui peut prendre un
caractre plus formel :
(Jouer dans Jouer par)[ASSOCIATION, ENTIT] Associer sans rle[ASSOCIATION,
ENTIT] =

http://www.reseaucerta.org

Michel Auguste mai 2004

Page 50/56

IV.2 La spcialisation

Nous partons des hypothses suivantes :


Une entit gnrique est dfinie comme une entit nayant pas dentit spcifique ou
ntant pas une entit spcifique.
Une entit spcifique spcialise au moins une entit gnrique ou au moins une entit
spcifique.
Nous admettons lhritage multiple. Cependant, il va de soi quune entit spcifique ne
peut pas spcialiser elle-mme.
Une entit gnrique est toujours identifiable.
Une entit spcifique peut possder son propre identifiant.
Nous admettons quune entit spcifique ne possde pas de proprit.

Voici une interprtation possible de ce thme :


ENTIT
nomEntit

XT

GNRIQUE

Sous-gnrique
0,n

0,n

1,1

SPCIFIQUE
0,1

0,n

en haut
1,n

0,n

0,n

Sous-spcifique

en bas

Proprit gnrique
Proprit spcifique

Identifier

I
Id gnrique

0,1
0,1

PROPRIT
nomProprit
typeDonne

0,1
0,1

0,1

Proprit association

0,n

ASSOCIATION
nomAssociation

Contrainte dirrflexivit : S Sous-spcifique : S.SPFICIQUEen haut S.SPFICIQUEen bas

http://www.reseaucerta.org

Michel Auguste mai 2004

Page 51/56

Cette interprtation nous semble conforme certaines versions du modle entit-association


tendu mais pas celle que nous utilisons pour faire les schmas. En effet, la demi-lune de
Power*AMC (ou le triangle de WinDesign) reprsente une spcialisation possible, parmi
dautres partir dune mme entit comme lon peut dfinir plusieurs typologies au sein dun
mme concept en considrant diffrents critres (exemple : les rseaux informatiques).

En introduisant la notion de spcialisation, nous obtenons :


ENTIT
nomEntit

XT

GNRIQUE

Obtenir

SPCIFIQUE
1,n

0,n

0,n

X
1,n

Spcialiser gnrique
0,1

SPCIALISATION
critre
totalit?
exclusion?

Spcialiser spcifique
0,1

Nous avons fait lhypothse quun critre identifie une spcialisation.


Si la notion de spcialisation est prise en compte, on peut la caractriser par la prsence ou
non dune contrainte de totalit et la prsence ou non dune contrainte dexclusion : cest
pourquoi deux proprits de type boolen ont t places dans cette entit.
Rappelons que, parmi les entits gnriques, nous avons plac celles qui nont aucun
spcifique : cela justifie la cardinalit minimale 0 sur le rle de GNRIQUE dans
Spcialiser gnrique.
La spcialisation concerne soit une entit gnrique soit une entit dj spcifique, pas les
deux mais au moins lune des deux, do la contrainte de totalit.
Une entit spcifique est forcment obtenue par au moins une spcialisation et une
spcialisation cre au moins une entit spcifique. La contrainte dirrflexivit devient une
contrainte dexclusion que lon peut mentionner sur le schma : dans une spcialisation
donne, lentit spcialise ne fait pas partie des entits spcifiques obtenues.
Lhypothse mise ne correspond pas la pratique. Le plus souvent, au contraire, aucun
critre de spcialisation nest mentionn et, quand il est mentionn, il porte gnralement sur
une proprit de lentit spcialise. Pouvons-nous modliser cela ?

http://www.reseaucerta.org

Michel Auguste mai 2004

Page 52/56

En introduisant la notion de critre li une proprit, nous pourrions obtenir :


I
ENTIT
nomEntit

PROPRIT

Proprit entit
1,n

0,1

nomProprit
typeDonne

XT
0,1

GNRIQUE

Obtenir

SPCIFIQUE

0,1

1,n

0,n

0,n

X
1,n

SPCIALISATION

Spcialiser gnrique
0,1

noSpcialisation
totalit?
exclusion?

Spcialiser spcifique
0,1

T
0,1

0,1

Critre spcifique

Critre gnrique

On voit que la spcialisation se propage comme la lumire (ou les tnbres ?).
Nous ne possdions plus aucun moyen didentifier une spcialisation : il a fallu crer un
identifiant spcifique (hors pratique usuelle). Il a fallu spcifier que la spcialisation porte
ventuellement sur rien, ventuellement sur une proprit dune entit spcifique,
ventuellement sur une proprit dentit gnrique mais pas sur les deux (do la contrainte
dexclusion sur les rles de SPCIALISATION). Une proprit est lobjet dau plus un
critre, soit spcifique, soit gnrique (do la contrainte dexclusion sur les rles de
PROPRIT). Enfin, il faut spcifier dans les deux cas que la proprit qui sert de critre
fait partie des proprits de lentit. Nous lavons mentionn sur le schma laide de deux
contraintes dinclusion dont lusage particulier ici nest pas document : en effet, dans les
deux cas, lune des entits concernes par les associations contraintes est une entit
spcifique (soit lentit GNRIQUE soit lentit SPCIFIQUE) alors que la cible comporte
leur entit gnrique (lentit ENTIT). Dans ltat actuel de nos connaissances, nous ne
savons pas si cette criture est valide.

http://www.reseaucerta.org

Michel Auguste mai 2004

Page 53/56

IV.3 Les contraintes inter-associations

Nous partons des hypothses suivantes :

Une contrainte dexclusion, dgalit ou de totalit lie au moins deux associations.


Une contrainte dinclusion possde une association cible et au moins une association
source.
CONTRAINTE
noContrainte
typeContrainte

typeContrainte
XT

X, T ou =

I
1,n

AUTRE

INCLUSION

1,n
2,n

1,1

Cible

Contraindre XTE
1,n

0,n

ASSOCIATION
nomAssociation

Source

0,n

0,n
2,n

I
I

Associer

1,n

Pivot I

ENTIT
0,n

Pivot XTE

nomEntit
0,n

Pour amliorer la lisibilit du schma, les pattes des contraintes ont t dessines en
pointills et la notion de rle entre les entits ENTIT et ASSOCIATION a t carte.
La contrainte dexclusion signifie quune mme association ne peut tre la fois cible et source
dune mme contrainte dinclusion.
Les contraintes dinclusion signifient :

Dune part, le pivot dune contrainte dinclusion fait partie de la collection de lassociation
cible de cette contrainte.

http://www.reseaucerta.org

Michel Auguste mai 2004

Page 54/56

Dautre part, le pivot dune autre contrainte (galit, totalit ou exclusion) fait partie de la
collection de chaque association contrainte.

La contrainte entre le pivot dune contrainte dinclusion et les collections des associations
sources ne peut tre reprsente sur le schma. On peut la formuler ainsi :
I INSERTION : (Pivot I[INCLUSION = I])[ENTIT] (Source[INCLUSION = I]
Associer)[ENTIT]
carter la notion de rle a pour consquence de spcifier de faon incorrecte les
associations Pivot XTE et Pivot I : dans une association rflexive source dune contrainte
dinclusion ou tout simplement frappe par une autre contrainte, il est logiquement possible de
trouver dans le pivot plus dune fois la mme entit (dans des rles diffrents). Le schma
obtenu serait donc rviser pour le rendre compatible avec le schma obtenu en IV.1.

IV.4 Complments
Dans cette version du document, certaines notions du modle entit-association tendu nont pas
t abordes : les spcificits de certains types de donnes, les proprits multivalues, les
proprits composes, les domaines (ou types construits), la gnralisation, la stabilit,
lhistorisation, la spcialisation des associations notamment47.
Certaines notions peuvent tre aisment intgres au mta-modle :

La stabilit sexprime diffremment selon quil sagit dune proprit (S) ou dun rle (V :
verrouill ; D : dfinitif). Dans le premier cas, Stable? devient une proprit de type boolen
de lentit PROPRIT. Dans le deuxime cas, il y a une logique ternaire puisquune patte
verrouille est forcment dfinitive . On peut opter pour des proprits de type
numr : stabilit dans lassociation Associer sans rle et stabilitRle dans lentit RLE.

Lhistorisation sexprime de la mme faon (H) quel que soit lobjet concern : proprit,
entit, association ou rle. Nous pourrions gnraliser ces objets , notre convention
dcriture sur les dsignations dobjet nous permettant de disposer coup sr dun
identifiant.
OBJET
nomObjet
historis?

XT

ENTIT

ASSOCIATION

RLE

PROPRIT

Cela ne suffit pourtant pas car la notion de rle na pas t systmatise et lon trouve des
rles dans lassociation Associer sans rle.

La notion de type peut donner naissance une entit et la notion de domaine sinterposer
entre les entits PROPRIT et TYPE, etc.

Dautres notions sont plus dlicates modliser, la spcialisation des associations notamment. De
ce fait, nous ne sommes pas loin de nous poser la question : le modle entit-association sait-il
vraiment parler de lui-mme ?
47

La dpendance fonctionnelle (ou contrainte dunicit) entre rles dans une association relve dune problmatique
particulire analyse dans Vraies ternaires, fausses ternaires et agrgats .

http://www.reseaucerta.org

Michel Auguste mai 2004

Page 55/56

Conclusion
Dans ce document, nous navons pas recherch lexhaustivit, le choix contraire fut mme
conscient.
Nous avons voulu dabord positionner les capacits dabstraction utilises dans le modle de
rfrence (le MEA) par rapport aux capacits quutilise tout autre humain dou de raison. Nous
en avons volontairement limit la panoplie. Il nous semble cependant que la rflexion didactique
sur laquelle repose notre enseignement devrait sintresser dautres capacits dabstraction.

Lexception48. Prenons lexemple des oiseaux qui ne volent pas tous. La faon dont nous avons
abord la spcialisation nous conduira distinguer les oiseaux qui volent et les oiseaux qui ne
volent pas, deux catgories compltement disproportionnes. Le problme se complexifie si
lon considre que la classe des oiseaux hrite de celle des animaux volants Mentalement,
vous savez bien quil est prfrable de faire de laptitude au vol une caractristique gnrique
des oiseaux, propre ou hrite, et dindiquer les exceptions (le fameux lien sauf dont les
enfants usent ds lcole primaire pour apprendre les rgles de grammaire). Mais les
mthodes de conception par les objets elles-mmes intgrent encore mal cette capacit49.

La synthse. Sur le plan didactique, le professeur qui enseigne la modlisation ne peut lluder
sans provoquer des dgts collatraux. Ainsi, quoi sert-il de convaincre un lve que
laffirmation les clients commandent des articles est fausse, quil faut dire une
commande est passe par un client et une commande porte sur des articles ? A quoi a sert,
et surtout quest-ce que cela dessert dapprendre incidemment un lve quune synthse est
une erreur ? Dans nombre de ses diagrammes, UML propose diffrents niveaux de
granularit, ce qui conduit prendre en compte lactivit de synthse.

Lanalogie. Lacte pdagogique, quel quil soit, recourt souvent lanalogie. Lenseignant lutilise
quotidiennement mais il cherche aussi dvelopper la capacit de llve lexploiter.
Lanalogie de structure se rapproche de lactivit de gnralisation, lenseignant la privilgie.
loppos, la tendance naturelle dun grand nombre dlves est de sintresser aux
analogies de surface, en quelque sorte aux tiquettes plutt quau contenu et son
organisation. Cela nest videmment pas sans consquence dans une activit de modlisation
de donnes ou de processus. La programmation par les objets possde un objectif de
rutilisation des classes dveloppes, que le programmeur choisira notamment par analogie !

Nous avons ensuite voulu montrer que lexpression des contraintes transpose le plus souvent,
dans le domaine de la modlisation, des concepts mathmatiques relativement lmentaires. Il
nous semble que le rapport tabli entre la reprsentation graphique du modle et une criture
littrale plus formalisante en facilite la comprhension.
Enfin, nous avons souhait rendre Csar (Oscar ?) ce qui lui appartenait et, ce faisant, entrevu
que la qualit dun mode de reprsentation ne se rsume pas son ergonomie.
Au passage, nous esprons avoir illustr les vertus cardinales que nous tentons de maintenir dans
notre activit denseignement : linterdisciplinarit, la rigueur scientifique, lesprit critique,
lhumour et lhumilit !
48

Prcisons que nous traitons principalement de connaissances dclaratives et non de connaissances procdurales, domaine
dans lequel le mot exception possde une signification quelque peu diffrente.
49
On ne peut en effet assimiler compltement le mcanisme de surcharge (redfinition) avec le mcanisme dexception
(masquage, rupture du lien dhritage) li ce que les experts appellent la typicalit. Il est vrai que lexception pose des
problmes thoriques dlicats, la contradiction par exemple. On voit bien ici ce qui spare encore un systme de
connaissances et un systme logiciel : beaucoup dentre nous arrivons vivre avec nos contradictions, dcider malgr
elles Ces problmes sont abords de faon prcise notamment dans Les langages objet de Grald Masini et alii chez
Interditions et Lintelligence artificielle et le langage de Georges Sabah chez Herms.

http://www.reseaucerta.org

Michel Auguste mai 2004

Page 56/56

Vous aimerez peut-être aussi