Sunteți pe pagina 1din 63

Mod

elisation dune base de donn ees


Le langage UML
Le mod` ele Entit
e - Association

Introduction aux bases de donn


ees
Cours 2 : Mod
elisation dune base de donn
ees

Odile PAPINI

ESIL
Universit
e de la mediterran
ee
Odile.Papini@esil.univmed.fr
http://odile.papini.perso.esil.univmed.fr/sources/BDMAT.html

Odile PAPINI Introduction aux bases de donn


ees
Mod
elisation dune base de donn ees
Le langage UML
Le mod` ele Entit
e - Association

Plan du cours

1 Modelisation dune base de donnees

2 Le langage UML

3 Le mod`ele Entite - Association

Odile PAPINI Introduction aux bases de donn


ees
Mod
elisation dune base de donn ees
Le langage UML
Le mod` ele Entit
e - Association

Bibliographie

Livres :
C. J. Date : Introduction aux bases de donnees. (8i`eme
edition). Vuibert ed. 2004.
H. Garcia-Molina, J. D. Ullman, J. Widow : Database
systems, the complete book. Prentice Hall ed. 2002.
Supports de cours :
Support de cours : F. Jacquenet :
http ://eurise.univ-st-etienne.fr/ fj
Support de cours : C. Support de cours :C. Vangenot :
http ://la-
sig.epfl.ch/enseignement/cours/SIG/Christelle BD/UML.pdf

Odile PAPINI Introduction aux bases de donn


ees
Mod
elisation dune base de donn ees
Le langage UML
Le mod` ele Entit
e - Association

Cycle de vie dune base de donnee

Odile PAPINI Introduction aux bases de donn


ees
Mod
elisation dune base de donn ees
Le langage UML
Le mod` ele Entit
e - Association

Modelisation conceptuelle

Odile PAPINI Introduction aux bases de donn


ees
Mod
elisation dune base de donn ees
Le langage UML
Le mod` ele Entit
e - Association

Rappel : cycle de vie dun logiciel (mod`ele en cascade)

Odile PAPINI Introduction aux bases de donn


ees
Mod
elisation dune base de donn ees
Le langage UML
Le mod` ele Entit
e - Association

Modelisation des donnees

Mod`ele de donnees : ensemble de


concepts permettant la description et la manipulation des
donnees du monde reel
r`egles dutilisation de ces concepts
les concepts decrivent les aspects :
Statiques : structure des donnees
Dynamiques : operations sur les donnees + contraintes
explicites
Schema :
description de la BD obtenue en utilisant un mod`ele de
donnees

Odile PAPINI Introduction aux bases de donn


ees
Mod
elisation dune base de donn ees
Le langage UML
Le mod` ele Entit
e - Association

Objectif de la modelisation conceptuelle

representer la realite telle quelle est percue par les utilisateurs

Contrairement aux mod`eles logiques qui decrivent la realite en


fonction du mod`ele du SGBD

Representation `a laide de la trilogie de base


objets
liens
proprietes

Odile PAPINI Introduction aux bases de donn


ees
Mod
elisation dune base de donn ees
Le langage UML
Le mod` ele Entit
e - Association

Avantages de la modelisation conceptuelle

Attention est portee sur les applications

Independante des technologies


Portabilite
Longevite

Orientee utilisateur
Comprehensibilite
Support du dialogue concepteurs / utilisateurs
Permet la collaboration et la validation par les utilisateurs

Odile PAPINI Introduction aux bases de donn


ees
Mod
elisation dune base de donn ees
Le langage UML
Le mod` ele Entit
e - Association

Avantages de la modelisation conceptuelle

Specifications formelles, non ambigues

Puissance des concepts

Support dinterfaces visuelles (lisibilite)


Diagrammes de definition de donnees
Manipulation de donnees

Facilite les echanges dinformations entre SGBD differents

Odile PAPINI Introduction aux bases de donn


ees
Mod
elisation dune base de donn ees
Le langage UML
Le mod` ele Entit
e - Association

Elaboration du schema conceptuel

Analyse du monde reel


Identification des phenom`enes `a representer dans la BD
delimitation de lunivers du discours

Representation `a laide des concepts du mod`ele


contenu
structure
r`egles
dynamique

Representation
Partielle
Infid`ele et Subjective

Odile PAPINI Introduction aux bases de donn


ees
Mod
elisation dune base de donn ees
Le langage UML
Le mod` ele Entit
e - Association

Abstraction
De la realite percue `
a la representation :
Faire abstraction des particularites permet de passer des objets
aux types ou classes dobjets

Odile PAPINI Introduction aux bases de donn


ees
Mod
elisation dune base de donn ees
Le langage UML
Le mod` ele Entit
e - Association

Definition dun schema conceptuel


Un schema est une collection de types
dentite objets
dassociation liens

La bases de donnees contiendra les valeurs representant les


instances de ces types

Odile PAPINI Introduction aux bases de donn


ees
Mod
elisation dune base de donn ees
Le langage UML
Le mod` ele Entit
e - Association

differents types de mod`eles conceptuels

Entite-Association (EA) - (ER : Entity-Relationship)

UML (Unified Modelling Language)

MERISE

Odile PAPINI Introduction aux bases de donn


ees
Mod
elisation dune base de donn ees
Le langage UML
Le mod` ele Entit
e - Association

Vocabulaire

Odile PAPINI Introduction aux bases de donn


ees
Mod
elisation dune base de donn ees
Le langage UML
Le mod` ele Entit
e - Association

Le langage UML

UML : Unified Modelling Language

langage visuel pour le developpement dapplications


informatiques

resultat de la fusion de plusieurs methodes (Booch, Jacobson


et Rumbaugh)

defini par le consortium OMG (Object Managment Group) :


http ://www.omg.org/uml

propose differents types de diagrammes

Odile PAPINI Introduction aux bases de donn


ees
Mod
elisation dune base de donn ees
Le langage UML
Le mod` ele Entit
e - Association

mod`ele de type conceptuel

But : Unified Modelling Language permettre une description


conceptuelle des structures de donnees dune application

les concepts de base (correspondent aux concepts dabsraction


et de realite) :
objet entite

lien association

propriete attribut

en plus : la representation multiple

Odile PAPINI Introduction aux bases de donn


ees
Mod
elisation dune base de donn ees
Le langage UML
Le mod` ele Entit
e - Association

Definition dun schema

un schema est compose de


de types dentites
dassociations
les types dentites et les associations poss`edent des attributs

Odile PAPINI Introduction aux bases de donn


ees
Mod
elisation dune base de donn ees
Le langage UML
Le mod` ele Entit
e - Association

Entite et type dentites

entite : representation dun objet du monde reel ayant une


existence propre

type dentites (TE) : representation dun ensemble dentites


percues comme similaires et ayant les memes caracteristiques

Odile PAPINI Introduction aux bases de donn


ees
Mod
elisation dune base de donn ees
Le langage UML
Le mod` ele Entit
e - Association

Association et type dassociations


association : representation dun lien entre plusieurs objets

type dassociations (TA) : representation dun ensemble


dassociations ayant la meme semantique et decrites par les
memes caracteristiques

Odile PAPINI Introduction aux bases de donn


ees
Mod
elisation dune base de donn ees
Le langage UML
Le mod` ele Entit
e - Association

Association et type dassociations

Odile PAPINI Introduction aux bases de donn


ees
Mod
elisation dune base de donn ees
Le langage UML
Le mod` ele Entit
e - Association

Attributs
decrivent les proprietes associees `
a:
un type dentites
une association

Odile PAPINI Introduction aux bases de donn


ees
Mod
elisation dune base de donn ees
Le langage UML
Le mod` ele Entit
e - Association

Association

une association est caracterisee par :

un r
ole pour chacun des types dentites

un nom eventuellement suivi dune fl`che precisant le sens de


lecture

des cardinalites indiquant le nombre dobjets lies par une


association

Odile PAPINI Introduction aux bases de donn


ees
Mod
elisation dune base de donn ees
Le langage UML
Le mod` ele Entit
e - Association

Role dune association


dans une association chaque objet joue un role determine

en UML : association binaire : 2 roles

Odile PAPINI Introduction aux bases de donn


ees
Mod
elisation dune base de donn ees
Le langage UML
Le mod` ele Entit
e - Association

Contraintes de cardinalite
une personne peut ne pas avoir de voiture, en avoir 1,
2, ,n : 0 :n
une voiture a un et un seul proprietaire : 1 :1

Odile PAPINI Introduction aux bases de donn


ees
Mod
elisation dune base de donn ees
Le langage UML
Le mod` ele Entit
e - Association

Valeurs et notation de cardinalites

Mininum Maximum UML


0 1 0 1
1 1 1
0 n (ou 0 )
1 n 1
n m n m

Odile PAPINI Introduction aux bases de donn


ees
Mod
elisation dune base de donn ees
Le langage UML
Le mod` ele Entit
e - Association

Valeurs et notation de cardinalites

Odile PAPINI Introduction aux bases de donn


ees
Mod
elisation dune base de donn ees
Le langage UML
Le mod` ele Entit
e - Association

Association cyclique
deux roles (au moins) lient le meme type dentite

Odile PAPINI Introduction aux bases de donn


ees
Mod
elisation dune base de donn ees
Le langage UML
Le mod` ele Entit
e - Association

Association ternaire
lie trois types dentite

Odile PAPINI Introduction aux bases de donn


ees
Mod
elisation dune base de donn ees
Le langage UML
Le mod` ele Entit
e - Association

Attributs
decrivent les proprietes associees `
a:
un type dentites
une association

Odile PAPINI Introduction aux bases de donn


ees
Mod
elisation dune base de donn ees
Le langage UML
Le mod` ele Entit
e - Association

Attibuts simples

simples : atomiques, non decomposable

ex : jour, prenom

le domaine de valeurs est constitue de valeurs atomiques

ex : jour, domaine de valeurs : {1, , 31}

domaines predefinis standard, intervalles, enumeres

Odile PAPINI Introduction aux bases de donn


ees
Mod
elisation dune base de donn ees
Le langage UML
Le mod` ele Entit
e - Association

Attibuts mono- ou multi-values

mono-value : une seule valeur par occurrence


(cardinalite max = 1)

ex : date de naissance, numero AVS,

multi-value : plusieurs valeurs par occurrence


(cardinalite max > 1)

ex : prenoms, no de telephone

une valeur dattribut multi-value est un ensemble de valeurs,


prises chacune dans le domaine de valeurs associe `a lattribut

Odile PAPINI Introduction aux bases de donn


ees
Mod
elisation dune base de donn ees
Le langage UML
Le mod` ele Entit
e - Association

Attibuts obligtoires ou facultatifs

obligatoire : une valeur au moins par occurrence


(cardinalite min >= 1)

ex : nom, prenoms

facultatif : peut ne pas prendre de valeur


(cardinalite min = 0)

ex : salaire, no de telephone

Odile PAPINI Introduction aux bases de donn


ees
Mod
elisation dune base de donn ees
Le langage UML
Le mod` ele Entit
e - Association

Attibuts : cardinalite

MIN : caract`ere facultatif ou obligatoire de lattribut

MAX : caract`ere mono-value, multi-vade lattribut

meme notation pour les attributs que pour lers cardinalites


des roles

exemple :
nom dune personne 1
prenoms 1..*
telephone fixe 0..* (ou *)

Odile PAPINI Introduction aux bases de donn


ees
Mod
elisation dune base de donn ees
Le langage UML
Le mod` ele Entit
e - Association

Attibuts complexes

complexe : decompose en dautres attributs

ex : date (jour, mois, annee)


ex : adresse (rue, ville, code postal)

la valeur dun attribut complexe est la composition des valeurs


des attributs composants (qui le composent)

un composant dattribut complexe peut etre lui-meme un


attribut complexe

Odile PAPINI Introduction aux bases de donn


ees
Mod
elisation dune base de donn ees
Le langage UML
Le mod` ele Entit
e - Association

Identifiants dentite et dassociation

Necessite de pouvoir designer une entite ou une association de


facon univoque

Identifiant : ensemble minimal dattributs tel quil nexiste pas


deux instances de lentite ou de lassociation o`
u ces attibuts
aient la meme valeur

Odile PAPINI Introduction aux bases de donn


ees
Mod
elisation dune base de donn ees
Le langage UML
Le mod` ele Entit
e - Association

Identifiants dentite : exemple

il ny a pas deux employes qui ont le meme numero


il ny a pas deux employes qui ont les memes noms et prenoms
2 identifiants possibles Num et Nom + Prenoms

Odile PAPINI Introduction aux bases de donn


ees
Mod
elisation dune base de donn ees
Le langage UML
Le mod` ele Entit
e - Association

Identifiants dassociation

Premi`ere possibilite : attributs propres

identifiant de lassociation commande : num-com

Odile PAPINI Introduction aux bases de donn


ees
Mod
elisation dune base de donn ees
Le langage UML
Le mod` ele Entit
e - Association

Identifiants dassociation

Deuxi`eme possibilite : identifiants de lentite lies

identifiant de lassociation inscrit : Etudiant.num-carte +


Cours.num-cours

Odile PAPINI Introduction aux bases de donn


ees
Mod
elisation dune base de donn ees
Le langage UML
Le mod` ele Entit
e - Association

Identifiants dassociation
Troisi`eme possibilite : identifiants de lentite lies + attributs
propres

identifiant de lassociation commande : Client.num +


Produit.num-prod + Commande.date
Odile PAPINI Introduction aux bases de donn
ees
Mod
elisation dune base de donn ees
Le langage UML
Le mod` ele Entit
e - Association

Identifiants dassociation

Quatri`eme possibilite : Tout role monovalue induit un identifiants


de lassociation

identifiant de lassociation assure : Voiture.num-im

Odile PAPINI Introduction aux bases de donn


ees
Mod
elisation dune base de donn ees
Le langage UML
Le mod` ele Entit
e - Association

Exemple de conception (1)

Odile PAPINI Introduction aux bases de donn


ees
Mod
elisation dune base de donn ees
Le langage UML
Le mod` ele Entit
e - Association

Exemple de conception (2)

Odile PAPINI Introduction aux bases de donn


ees
Mod
elisation dune base de donn ees
Le langage UML
Le mod` ele Entit
e - Association

Exemple de conception (3)

Odile PAPINI Introduction aux bases de donn


ees
Mod
elisation dune base de donn ees
Le langage UML
Le mod` ele Entit
e - Association

Exemple de conception (4)

Odile PAPINI Introduction aux bases de donn


ees
Mod
elisation dune base de donn ees
Le langage UML
Le mod` ele Entit
e - Association

Exemple de conception (5)

Odile PAPINI Introduction aux bases de donn


ees
Mod
elisation dune base de donn ees
Le langage UML
Le mod` ele Entit
e - Association

Exemple de conception (6)

Odile PAPINI Introduction aux bases de donn


ees
Mod
elisation dune base de donn ees
Le langage UML
Le mod` ele Entit
e - Association

Exemple de conception (7)

Odile PAPINI Introduction aux bases de donn


ees
Mod
elisation dune base de donn ees
Le langage UML
Le mod` ele Entit
e - Association

Exemple de conception (8)

Odile PAPINI Introduction aux bases de donn


ees
Mod
elisation dune base de donn ees
Le langage UML
Le mod` ele Entit
e - Association

Exemple de conception (9)

Odile PAPINI Introduction aux bases de donn


ees
Mod
elisation dune base de donn ees
Le langage UML
Le mod` ele Entit
e - Association

Exemple de conception (10)

Odile PAPINI Introduction aux bases de donn


ees
Mod
elisation dune base de donn ees
Le langage UML
Le mod` ele Entit
e - Association

Exemple de conception (11)

Odile PAPINI Introduction aux bases de donn


ees
Mod
elisation dune base de donn ees
Le langage UML
Le mod` ele Entit
e - Association

Exemple de conception (12)

Odile PAPINI Introduction aux bases de donn


ees
Mod
elisation dune base de donn ees
Le langage UML
Le mod` ele Entit
e - Association

Exemple de conception (13)

Odile PAPINI Introduction aux bases de donn


ees
Mod
elisation dune base de donn ees
Le langage UML
Le mod` ele Entit
e - Association

Exemple de conception (14)

Odile PAPINI Introduction aux bases de donn


ees
Mod
elisation dune base de donn ees
Le langage UML
Le mod` ele Entit
e - Association

Exemple de conception (15)

Odile PAPINI Introduction aux bases de donn


ees
Mod
elisation dune base de donn ees
Le langage UML
Le mod` ele Entit
e - Association

Exemple de conception (16)

Odile PAPINI Introduction aux bases de donn


ees
Mod
elisation dune base de donn ees
Le langage UML
Le mod` ele Entit
e - Association

Exemple de conception (17)

Odile PAPINI Introduction aux bases de donn


ees
Mod
elisation dune base de donn ees
Le langage UML
Le mod` ele Entit
e - Association

Contraintes dintegrite

R`egles definissant les etats (CI statiques) et les transitions


detats (CI dynamiques) possibles de la BD

doivent etre decrites explicitement si elles ne peuvent pas etre


decrites avec les concepts du mod`ele de donnees

une BD est coherente si toutes les CI sont satisfaites par les


valeurs de la BD

Odile PAPINI Introduction aux bases de donn


ees
Mod
elisation dune base de donn ees
Le langage UML
Le mod` ele Entit
e - Association

Exemple de conception (18)

Odile PAPINI Introduction aux bases de donn


ees
Mod
elisation dune base de donn ees
Le langage UML
Le mod` ele Entit
e - Association

Contraintes dintegrite de lexemple

Pour chaque occurrence de lassociation emprunte si la date


de retour existe elle doit etre sup`erieure `
a la date demprunt

Pour chaque occurrence de lentite livre, la date dachat doit


etre inferieure `a la date demprunt de toutes les occurences de
lassociation Emprunte qui lui sont liees.

Odile PAPINI Introduction aux bases de donn


ees
Mod
elisation dune base de donn ees
Le langage UML
Le mod` ele Entit
e - Association

2 associations particuli`eres : agregation et composition


dans les 2 cas : relation de composition, mais lune est plus
forte que lautre

agregation :
semantique de composition
agregation leg`ere
le composant peut etre un composant dun autre type dentite
mais pas de dependance

composition :
semantique de composition
agregation forte
le composant ne peut pas etre un composant dun autre type
dentite
dependance : si le composant est detruit , le composant aussi
Odile PAPINI Introduction aux bases de donn
ees
Mod
elisation dune base de donn ees
Le langage UML
Le mod` ele Entit
e - Association

Description dun schema entite association

Entites
Assocations
Attributs
Identifiants
Domaines dattributs
Contraintes dintegrite

ema conceptuel :
sch

( { Entites }, { Associations }, { Contraintes dintegrite } )

Odile PAPINI Introduction aux bases de donn


ees