Vous êtes sur la page 1sur 28

Modlisation E/R des Donnes

1. Objectifs et principes 2. Le modle Entit-Association (E/R) 3. Passage au relationnel 4. Conclusion

1. Objectifs de la Modlisation
Permettre une meilleure comprhension

Le monde rel est trop complexes Abstraction des aspects cruciaux du problme Omission des dtails Abstractions et raffinements successifs Possibilit de prototypage rapide Dcoupage en modules ou packages Gnration des structures de donnes (et de traitements)
2

Permettre une conception progressive


G. Gardarin

laborer un modle conceptuel


Isoler les concepts fondamentaux

Que vont reprsenter les donnes de la BD ? Dcouvrir les concepts lmentaires du monde rel Dcrire les concepts agrgs et les sous-concepts Diagrammes avec notations simple et prcise Comprhension visuelle et non seulement intellectuelle

Faciliter la visualisation du systme


G. Gardarin

Driver le schma de la BD
Schma

Dfinition de tous les types de donnes de la base et de leurs liens Type lmentaire (de base): Entier, Rel, String, ... Type complexe (compos): Collection de types lmentaires

Agrgation de donnes

Tuple : Exemple: Type Personne (nom: String, Prenom: String, age: Rel) Instance ou occurrence Personne("Dupont", "Jules", 20) Set : Exemple : Voitures {id:String}; Voitures {"75AB75", "1200VV94"} Bag, List, ...
Exemple : Personne Voitures; "Dupont" "75AB75"

Possibilit d'intgrer des relations entre donnes (liens)


G. Gardarin
4

Modlisation plusieurs niveaux


Rel

Modle conceptuel
Modle logique Modle Physique
G. Gardarin

Indpendant du modle de donnes Indpendant du SGBD Dpendant du modle de donnes Indpendant du SGBD Dpendant du modle de donnes Dpendant du SGBD

Mdecin

effectue

Visite

Codasyl

Relationnel

Objet

XML

Organisation physique des donnes Structures de stockage des donnes Structures acclratrices (index)
5

Gnrations de mthodes
Mthodes d'analyse et de dcomposition hirarchiques

1e gnration base sur des arbres fonctionnels Diviser pour rgner (Problme --> Sous-problme) Warnier, SADT, Jackson, De Marco 2e gnration base sur entit-association Sparation des donnes et traitements Merise, Axial, SSADM 3e gnration base sur les objets Rconciliation donnes et traitements Rutilisation de composants
6

Mthodes d'analyse et de reprsentation systmiques


Mthodes d'analyse et de conception orientes objets


G. Gardarin

Objectifs des mthodes


Rduire la distance smantique entre le langage des utilisateurs et le langage des concepteurs

meilleure communication entre utilisateurs et concepteurs abstraction du rel peru en termes comprhensibles et visibles meilleure comprhension des choses plus grande cohrence entre l'aspect statique et l'aspect dynamique

Regrouper l'analyse des donnes et des traitements


Simplification des transformations entre niveau conceptuel et niveau interne


implmentation directe ventuelle du schma conceptuel tablissement possible de rgles de transformations automatises
7

G. Gardarin

2. Le Modle Entit Association (E/R Model)


Ensemble de concepts pour modliser les donnes d'une application (d'une entreprise) Ensemble de symboles graphiques associs Formalis en 1976 par P. Chen Etendu vers E/R gnralis puis vers l'objet

G. Gardarin

Exemple de modle E/R

G. Gardarin

Entit
Un objet du monde rel qui peut tre identifi et que l'on souhaite reprsenter

La classe d'entit correspond une collection d'entits dcrites par leur type commun (le format) L'instance d'entit correspond un lment particulier de la classe d'entit (un objet) Attention: on dit entit pour les deux ! Comprendre selon le contexte.

Il existe gnralement plusieurs entits dans une classe


G. Gardarin
10

Reprsentation
Rectangle avec attributs (UML)
Voitures
Nveh: Int Type: String Marque: String Vitesse: Int Km : Int

Nom Attribut : Type

Rectangle avec attributs accrochs (E/R)


Voitures
Marque Vitesse

Nveh G. Gardarin

Type

Km
11

Exemple d'instance
Voiture
Nveh: 75AB75 Type: Mgane Marque: Renault Vitesse: 120 Km : 54000

Voitures
Nveh: Int Type: String Marque: String Vitesse: Int Km : Int

Voiture
Nveh: 850VV94 Type: 407 Marque: Peugeot Vitesse: 0 Km : 4000

G. Gardarin

12

Attribut
Description des proprits des entits Toutes les instances d'une entit ont les mmes attributs

Attribut simple: attribut ayant une valeur d'un type de base Attribut compos: attribut constitu d'un groupe d'attributs Attribut multi-valu: attribut pouvant avoir plus d'une valeur

Avec le modle E/R de base tout attribut est simple Avec le modle E/R tendu, les attributs peuvent etre complexes

Composs et multi-valus
13

G. Gardarin

Identifiant ou Cl
Un identifiant aussi appel cl est un attribut qui permet de retrouver une instance d'entit unique tout instant parmi celles de la classe.

Exemple: NVeh dans Voitures, NSS dans Personnes

Un identifiant peut tre constitu de plusieurs attributs (cl compose)

Exemple:

[N , Rue, Ville] pour Maisons [Nom, Prnom] pour Personnes

G. Gardarin

14

Association
Les entits sont relies ensemble par des associations

Entre instances: par exemple 1 vhicule est associ 1 personne Entre classes: abstraction des associations entre instances

Une association peut avoir des attributs (proprits) Elle peut relier plusieurs entits ensemble Il est possible de distinguer le rle d'une entit (elle peut en avoir plusieurs)
G. Gardarin
15

Association: quelques dfinitions


Association (Association)

Une relation entre des instances de deux (ou plus) classes

Lien (Link)

Une instance d'association


Une extrmit d'une association

Rle (Role)

Attribut de lien (Link attribute)

Un attribut de l'association instanci pour chaque lien


Le nombre d'instance d'une entit pour chaque instance de l'autre
16

Cardinalit (Multiplicity)

G. Gardarin

Reprsentation
UML
Personne Possde Propritaire Date Prix Possde Date Prix Voiture Personne Propritaire

E/R
Possde
Voiture Possde

Buveurs Abus Abus Date Quantit Estbu

Vins Buveurs Abus Date Abus Estbu Quantit

Vins

G. Gardarin

17

Degr d'une association


M# Nom

Pices
Composant Compos

I#

Nom

Modle

Ingnieur

Suivi

Date

Pice Rle P# Des.

Compose_de

La plupart des associations sont de degr 2 (binaires)


18

G. Gardarin

Cardinalit d'une association


1:1 1:N N:M
Personne
Habite

Adresse

Personne

Possde

Voiture

Vendeur

Vend

Produit

G. Gardarin

19

Cardinalits min et max


Cardinalit maximum

Indique le nombre maximum d'instances d'une classe d'entit participant une association Indique le nombre minimum d'instances d'une classe d'entit participant une association
[1,N] [0,7]

Cardinalit minimum

Etudiant

Passe

Examen

G. Gardarin

20

Cardinalits: notations UML


1 * 0..1
1 plusieurs (0 N) optionnel (0 ou 1) obligatoire (1 ou plus)

1..*
0..* {ord} 3..5
G. Gardarin

ordonn (0 N)

limit (de 3 5)
21

Exemple
Voiture
nv marque type puissance couleur

Possde
1 0..*

Personne
nss nom prenom datenais

date prix

G. Gardarin

22

Domaines
Ensemble nomm de valeurs

Un attribut peut prend valeur dans un domaine Gnralisation des types lmentaires Liste de valeurs (1,2,3) Type contraint (<0< int <100)

Exemples

Permettent de prciser les valeurs possibles des attributs Rduisent les ambiguts

G. Gardarin

23

La pratique de la conception
Bien comprendre le problme rsoudre Essayer de conserver le modle simple Bien choisir les noms Ne pas cacher les associations sous forme d'attributs

utiliser les associations

Faire revoir le modle par d'autres

dfinir en commun les objets de lentreprise


laborer le dictionnaire
24

Documenter les significations et conventions

G. Gardarin

3. Passage au relationnel
Implmentations des entits et associations sous forme de tables

mmorisent les tats des entits et liens pas ncessaire d'avoir une BD E/R nom attribut nom colonne Ensemble de valeurs domaine

Les attributs correspondent aux colonnes des tables


G. Gardarin

25

Traduction des associations


Rgle de base

Une association est reprsente par une table dont le schma est le nom de l'association et la liste des cls des entits participantes suivie des attributs de l'association Exemples :

POSSEDE (N Ss, N Veh, Date , Prix ) ABUS (Nv, Nb, Date, Quantit)

Amlioration possible

Regrouper les associations 1 --> n avec la classe cible Exemple :


VOITURE (NVEH, MARQUE, TYPE, PUISSANCE, COULEUR) POSSEDE (N SS, N VEH, DATE , PRIX ) regroups si toute voiture a un et un seul propritaire
26

G. Gardarin

Exemple
Buveurs
nb nom type 1..* Abus

Vins Boire
* Estbu nv cru millsime degr

Abus
Date Quantit
cause de la cardinalit min de 1.

BUVEURS (NB REF ABUS.NB, NOM, TYPE) VINS (NV, CRU, MILLESIME, DEGRE) ABUS(NB REF BUVEURS, NV REF VINS, DATE, QUANTITE)
cause de l'association (obligatoire). G. Gardarin
27

6. Conclusion
Intrt de lutilisation dune mthode de conception

proche du monde rel dmarche smantique claire diagramme standards outils du commerce utilisables (Objecteering, Rose, etc.) supporteront les extensions objet-relationnel venir

Passage au relationnel semi-automatique


Extensions venir avec la conception objet


G. Gardarin
28