45
Systèmes d’information et Bases de données (niveau 1) Cours n° 2 Violaine Prince

Systèmes d’information et Bases de données (niveau 1)

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

Systèmes d’information etBases de données (niveau 1)

Cours n° 2

Violaine Prince

Violaine Prince, [email protected]

Modèle des données : modèleentité-association (E-A)

Aussi nommé E-R (entity relationship) Première apparition en France en 1972, dans

un groupe de recherche forméd’universitaires et d’industriels.

Intégration à la méthode MERISE (Tardieu) Première apparition internationale en 1979

(travaux de Chen). Congrès international dédié à E-R Ancêtre de la notation UML (Unified

Modelling language)

Violaine Prince, [email protected]

Modèle des données : modèleentité-association (E-A)

Propriétés : Étend les relations du modèle réseau S’appuie sur les propriétés des relations entre

ensembles Modèle conceptuel et non pas navigationnel A une équivalence dénotationnelle avec le

modèle relationnel (modèle logique) Toute conception peut être validée par un

utilisateur non informaticien (modèle lisible) Il existe des règles de normalisation du modèle E-

A qui permettent d’avoir un modèle relationnel debonne qualité.

Violaine Prince, [email protected]

modèle entité-association (E-A): les entités

Définition d’une entité :(abréviation de « classed’entités ») Ensemble d’individus ou d’objets intéressants

pour le système d’information, et qui est décrit parles propriétés que partagent tous ces individus.

Les propriétés Elles peuvent être identifiantes : nom, prénom,

matricule, numéro… Ou descriptives : désignation, date de naissance,

modèle, etc… On les appelle des attributs.

Violaine Prince, [email protected]

modèle entité-association (E-A): les entités

Règle de constitution d’une entité Il faut qu’il y ait plus d’un individu dans l’entité Toute entité est décrite par au moins un attribut

identifiant Toute entité reçoit un nom qui permet de la

désigner.

Quelques informations Le nombre d’individus qui peuplent une entité

s’appelle sa population. Dans le modèle E-A, tous les individus ont des

valeurs associées à tous les attributs.

Violaine Prince, [email protected]

modèle entité-association (E-A): les attributs

Règle de non redondance Si un attribut sert à décrire une entité, alors il ne

peut figurer nulle part ailleurs que cette entité.

Remarque Des attributs tels que « nom » ou « prénom »

peuvent apparaître plusieurs fois. Mais il ne s’agitpas du même attribut.

Par exemple, supposons que l’on ait une entité« ETUDIANT » et une entité « ENSEIGNANT ».Le nom, chez l’étudiant, sera désigné par « nom-étudiant », et celui chez l’enseignant par « nom-enseignant ».

Violaine Prince, [email protected]

modèle entité-association (E-A): les entités Représentation graphique d’une entité

NOM_ENTITE

Attribut-1Attribut-2….

Attribut-n

L’attribut(ou les Attributs)Identifiant(s)Est(sont) souligné(s)

Violaine Prince, [email protected]

modèle entité-association (E-A): identifier les entités L’identifiant :

Appelé aussi « clé » Il peut être composé d’un seul attribut (ex: numéro) Ou de plusieurs (ex: le couple « nom, prénom ») lorsqu’un

seul ne suffit pas à identifier suffisamment (risquesd’homonymies)

Il est soit choisi par le concepteur, soit « calculé »(choisi par une méthode plus formelle)

Il permet de reconnaître chaque individu (par savaleur)

Il dépend de la nature de la population

Violaine Prince, [email protected]

modèle entité-association (E-A): les entités

Exemple

ETUDIANT

Numéro-étuNom-étu

Prénom-étuDate-naissance

(200599675940, Durand,Paul,1987)(200599675943, Martin, Pierre, 1988)…..

Violaine Prince, [email protected]

modèle entité-association (E-A): les associations

Toutes les entités sont liées entre elles pardes associations.

Ces dernières sont des relationsd’ensembles.

Elles indiquent que tout ou partie de lapopulation respective des entités est enrelation.

Les associations sont nommées Elles peuvent avoir des attributs propres Elles sont de dimension (arité) et de type

différent.

Violaine Prince, [email protected]

modèle entité-association (E-A): les associations

Représentation d’une association

E1________

At-1At-2…

At-n

E2_________

A-1A-2…

A-m

Assoc.______

Violaine Prince, [email protected]

modèle entité-association (E-A): arité des propositions

L’arité d’une association: C’est le nombre d’entités différentes qu’elle relie.

Association unaire : l’entité est reliée avec elle-même.

Association binaire : l’association relie deuxentités

Ternaire, quaternaire, etc.

En général on dépasse rarement les associationsquaternaires.

Violaine Prince, [email protected]

modèle entité-association (E-A): arité des associations

Exemple d’association binaire

Etudiant__________Numéro-et

Nomprénom

Date-naissance

Diplôme____________Code-diplôme

Nom-diplNiveau-diplMention-dipl

Est-ins--crit à.---------

Violaine Prince, [email protected]

modèle entité-association (E-A): les associations

Exemple d’association ternaire

Etudiant__________Numéro-et

Nomprénom

Date-naissance

Matière____________Nom-matière

Discipline

étudie---------

Professeur--------------

NomPrénom

Violaine Prince, [email protected]

modèle entité-association (E-A): les associations Une association est en fait un n-uplet de relations (où

n est l’arité de l’association) entre les ensembles quimatérialisent les entités.

Dans une association binaire A, entre deux entitésE1 et E2 Une relation de E1 dans E2 Une relation de E2 dans E1

Dans une association ternaire A entre trois entitésE1, E2, E3 Une relation de E1 dans E2xE3 Une relation de E2 dans E1xE3 Une relation de E3 dans E1xE2

Violaine Prince, [email protected]

modèle entité-association (E-A): les associations

Même si une association se « lit » de gaucheà droite, elle correspond à des relations dansles deux sens.

En tant que n-uplet de relations, lespropriétés de l’association sont définies parles propriétés des relations entre ensembles(injection, surjection,…)

Violaine Prince, [email protected]

modèle entité-association (E-A): Association un-à-un

Définition Soit une association A entre deux entités E1 et E2. A est

composée des deux relations : R1 : E1—>E2

e1 —> R1(e1)

R2 : E2 —>E1 e2 — > R2(e2)

A est dite un à un si et seulement si :R1 est telle que pour tout e1 de E1 il existe au plus une image de e1

par R1 dans E2R2 est telle que pour tout e2 de E2, il existe au plus une image de e2

par R2 dans E1Et R2 duale de R1

Violaine Prince, [email protected]

modèle entité-association (E-A): exemple d’association un-à-un

X1X2X3…

Xm

Y1Y2Y3Y4…Yk

E1 E2

R1

R1R2

R2

Violaine Prince, [email protected]

modèle entité-association (E-A): exemple d’association un-à-un

PERSONNE———————

NomPrénom

Date-nais.

POSSEDE——————

CARTE D’E-TUDIANT

———————Numéro-étudAnnée-univFormation

Composante

Dans une université donnée

Violaine Prince, [email protected]

modèle entité-association (E-A): Association un-à-un

Cas particulier d’association un-à-un: Lorsque R1 et R2 sont bijectives

Tous les éléments de E1 ont une image et uneseule

Tous les éléments de E2 ont une image et uneseule

Cette association est appelée« association d’assimilation »

Elle pousse vers la fusion des entitésqu’elle relie

Violaine Prince, [email protected]

modèle entité-association (E-A): Association d’assimilation

Dans le systèmed’information d’uneuniversité, onfusionnera les« personnes » etles «cartesd’étudiants » enuneentité unique« ETUDIANT »

ETUDIANT————————

Numéro-étuNom-étu

Prénom-étuDate-naisFormation

Composante

Violaine Prince, [email protected]

modèle entité-association (E-A): Association un-à-plusieurs

Définition Soit une association A entre deux entités E1 et E2. A est

composée des deux relations : R1 : E1—>E2

e1 —> R1(e1)

R2 : E2 —>E1 e2 — > R2(e2)

A est dite un à plusieurs si et seulement si :R1 est telle que pour tout e1 de E1 il existe au plus une image de e1

par R1 dans E2R2 est telle que pour tout e2 de E2, il existe plusieurs images de e2

par R2 dans E1Ou bien le contraire : il existe plusieurs images par R1 et au plus une

image par R2

Violaine Prince, [email protected]

modèle entité-association (E-A): Association un-à-plusieurs

Remarque Dans le modèle E-A R1 et R2 ne sont pas forcément

sémantiquement indépendantes. R1 et R2 sont liées :lorsqu’il existe une image e2 dans E2, par R1, d’unélément e1 de E1 alors e1 est forcément une imagepar R2 de e2.

L’association est appelée associationhiérarchique Elle crée une arborescence entre les individus

d’une entité et les individus de l’autre.

Violaine Prince, [email protected]

modèle entité-association (E-A): Association un-à-plusieurs

explication Si l’individu x1 est le « père » de y1, y2, y3 alors pour

chaque yi, yi est un « fils » de x1.

Remarque Attention, tous les individus ne sont pas

forcément reliés par les relations R1 et R2. Desindividus de l’entité E1 peuvent n’être « père »d’aucun individu de l’entité E2, et inversement.

Violaine Prince, [email protected]

modèle entité-association (E-A): exemple d’association un-à-plusieurs

X1X2X3…

Xm

Y1Y2Y3Y4…Yk

E1 E2Association hiérarchique

Violaine Prince, [email protected]

modèle entité-association (E-A): exemple d’association un-à-plusieurs

VILLE—————Nom-ville

DépartementPays

MUSEE—————Nom-musée

type

Possède—————

Violaine Prince, [email protected]

modèle entité-association (E-A):Association plusieurs-à-plusieurs

Définition Soit une association A entre deux entités E1 et E2. A est

composée des deux relations : R1 : E1—>E2

e1 —> R1(e1)

R2 : E2 —>E1 e2 — > R2(e2)

A est dite plusieurs à plusieurs si et seulement si :R1 est telle que pour tout e1 de E1 il existe plusieurs images de e1

par R1 dans E2R2 est telle que pour tout e2 de E2, il existe plusieurs images de e2

par R2 dans E1Et telles que R1 et R2 sont liées.

Violaine Prince, [email protected]

modèle entité-association (E-A): exempled’association plusieurs-à-plusieurs

X1X2X3…

Xm

Y1Y2Y3Y4…Yk

E1 E2Association banalisée

Violaine Prince, [email protected]

modèle entité-association (E-A): exempled’association plusieurs-à-plusieurs

Association banalisée

ENSEIGNANT——————

Nom-ensPrénom-ens

Gradedépartement

ETUDIANT——————Numéro-étu

Nom-étuPrénom-étuFormation

Enseigne-à——————

Violaine Prince, [email protected]

modèle entité-association (E-A): lescardinalités des couples E-A

Les relations qui composent une association A ont despropriétés.

Parmi elles : Est-ce que tout élément de l’ensemble de départ a au plus une

image dans l’ensemble d’arrivée ? (relation injective) Est-ce que tout élément de l’ensemble de départ a obligatoirement

une image dans l’ensemble d’arrivée ? (relation surjective) Est-ce que tout élément de l’ensemble de départ a plusieurs

images dans l’ensemble d’arrivée ?

Ces questions définissent les cardinalités des couples E-A,c’est-à-dire les propriétés des relations où E est ensemblede départ de la relation.

Violaine Prince, [email protected]

modèle entité-association (E-A): lescardinalités des couples E-A

Définition Soient deux entités E1 et E2 reliées par une association

binaire A. Soient les relations R1 et R2 composant A, telles que :

R1 est la relation dont l’ensemble de départ est E1 R2 est la relation dont l’ensemble de départ est E2.

On définit la cardinalité du couple E1-A, respectivementE2-A, comme un couple (x,y) de symboles pouvantprendre les valeurs suivantes : X=0 si R1 (respectivement R2) n’est pas surjective, X=1 sinon Y=1 si R1 (respectivement R2) est injective, Y=n sinon

Violaine Prince, [email protected]

Modèle entité-association(E-A): exemples de cardinalités

ENSEIGNANTCHERCHEUR——————

NomPrénomGrade

département

Enseigne-à———————

Un enseignant-chercheur peut n’enseigner àaucun étudiant

(0, n)

Un enseignant-chercheur enseignegénéralement à plusieurs étudiants

Violaine Prince, [email protected]

Modèle entité-association(E-A): exemples de cardinalités

ETUDIANT——————

NuméroNom-ét

Prénom-étformation

Enseigne-à———————

Un étudiant est « forcément » enseigné parquelqu’un

Un étudiant est en général enseigné par plusieursEnseignants-chercheurs différents.

(1,n)

Violaine Prince, [email protected]

Modèle entité-association(E-A): exemples de cardinalités

ETUDIANT——————

NuméroNom-ét

Prénom-étformation

Enseigne-à—————

(1,n)

ENSEIGNANT-CHERCHEUR

—————Nom

PrénomGrade

département

(0,n)

Violaine Prince, [email protected]

Modèle entité-association (E-A): cardinalités

Propriétés : Une association plusieurs-à-plusieurs a

ses maxima (Y) tous les deux à n

Une association un-à-un a ses maximatous les deux à 1

Une association un-à-plusieurs a un de sesmaxima à 1 et l’autre à n.

Violaine Prince, [email protected]

Modèle entité-association (E-A): problèmes de modélisation

La constitution des entités : Une entité a au moins un attribut Une entité a plus d’un individu On ne modélise jamais l’environnement

comme entité (pas de réflexivité) Les attributs choisis doivent être pertinents

par rapport au problème Le choix de l’identifiant doit être également

argumenté

Violaine Prince, [email protected]

Modèle entité-association (E-A): problèmes de modélisation

La constitution des associations : Une association est une « action » de liaison

(correspond souvent à un verbe) Elle ne reprend pas les attributs des entités qu’elle

lie (modèle logique des données, à voir dans lemodèle relationnel)

Elle a des attributs propres si et seulement si cesont des attributs propres à l’action (complémentscirconstanciels de temps, de lieu, manière…)

Ces attributs ont des contraintes que nousdécrirons lors de la définition des dépendancesfonctionnelles.

Violaine Prince, [email protected]

Modèle entité-association (E-A): problèmes de modélisation

La cardinalité des couples entité- association: Définition des minima :

Si vous mettez 0 alors cela signifie que es individus decette entité peuvent ne pas être liés par cette association

Exemple : une ville peut ne pas posséder de musée. Si vous mettez 1, cela signifie qu’obligatoirement tous les

individus de cette entité participent à cette association. Attention, c’est une contrainte très forte ! Ne mettez 1

que si votre problème signale bien une obligation. Exemple : toute mairie est obligatoirement associée à

une collectivité locale.

Violaine Prince, [email protected]

Modèle entité-association (E-A): problèmes de modélisation

La cardinalité des couples entité- association: Définition des minima :

Si vous mettez 0 alors cela signifie que les individus decette entité peuvent ne pas être liés par cette association

Exemple : une ville peut ne pas posséder de musée. Si vous mettez 1, cela signifie qu’obligatoirement tous

les individus de cette entité participent à cetteassociation.

Attention, c’est une contrainte très forte ! Ne mettez 1que si votre problème signale bien une obligation.

Exemple : toute mairie est obligatoirement associée àune collectivité locale.

Violaine Prince, [email protected]

Modèle entité-association (E-A): problèmes de modélisation La cardinalité des couples entité- association:

Définition des maxima : Si vous mettez n alors cela signifie que les individus de cette

entité peuvent être liés à de nombreux individus, par cetteassociation, ce nombre étant a priori inconnu ou variable.

Exemple : une ville peut posséder plusieurs musées. Si vous mettez un entier connu, c’est une contrainte que vous

modélisez . Exemple : dans une partie de belote, un joueur est associé à

au plus 3 autres joueurs. On mettra un maximum à 3. Si vous mettez 1, cela signifie qu’un individu ne peut pas être

lié à plus d’un individu par cette association. Exemple : un musée n’appartient pas à plusieurs villes

(attention, il peut arriver que ce soit le cas, alors vous changezle type de l’association).

Violaine Prince, [email protected]

Modèle entité-association (E-A): problèmes de modélisation

Non pérennité de la modélisation Un modèle E-A modélise un réel que vous

percevez au moment de faire la modélisation. Ce réel peut changer par la suite : on change

alors le modèle en fonction des modifications dusystème.

On n’implémente le modèle que lorsqu’on estraisonnablement sûr de sa modélisation.

Qualité du modèle Validation par les futurs utilisateurs

Violaine Prince, [email protected]

Modèle entité-association (E-A): problèmes de modélisation

Non unicité Quand vous modélisez, vous vous faites

forcément une image de ce que vous percevez. Vous devez argumenter vos choix pour

convaincre les autres : De la pertinence de vos hypothèses (qualitatif) De la cohérence de votre modèle (se « démontre »)

Par conséquent, il n’existe pas un bon modèleunique pour un problème donné. Il peut existerdes modèles de qualité différente, une fois lesmodèles incohérents éliminés.

Violaine Prince, [email protected]

Modèle entité-association (E-A): problèmes de modélisation

Non unicité Quand vous modélisez, vous vous faites

forcément une image de ce que vous percevez. Vous devez argumenter vos choix pour

convaincre les autres : De la pertinence de vos hypothèses (qualitatif) De la cohérence de votre modèle (se « démontre »)

Par conséquent, il n’existe pas un bon modèleunique pour un problème donné. Il peut existerdes modèles de qualité différente, une fois lesmodèles incohérents éliminés.

Violaine Prince, [email protected]

Modèle entité-association (E-A): problèmes de modélisation Méthodologies de modélisation

Il existe deux méthodes vous permettant de réaliser votremodèle E-A :

Une méthode descendante : Vous énumérez les propriétés pertinentes et constituez ensuite

les entités et les assocations en appliquant les différentescontraintes de modélisation

Une méthode ascendante : Vous repérez les propriétés comme des ensembles de valeurs.

Vous définissez des relations entre ces propriétés. Vousconstituez les entités par un « graphe des dépendances » entrepropriétés, et vous « devinez » certaines associations grâce àl’existence de leurs attributs, ou à l’existence de sous-arborescences.

Violaine Prince, [email protected]

Modèle entité-association (E-A): problèmes de modélisation

En pratique, On commence toujours par modéliser selon la

méthode descendante, Et on vérifie qu’on n’a pas oublié d’attributs Ou qu’on ne s’est pas trompé dans les attributs

d’association (s’il y en a) Ni dans les types d’association (si on a des

indices dans le graphe des dépendances) Grâce à la méthode ascendante.