Sunteți pe pagina 1din 30

Modlisation UML

Karim SEHABA
Laboratoire Informatique Image Interaction

$lan Introduction Modlisation Objet Types de relation Hritage Association Contenance Diagrammes ML Diagramme d!objets Cas d!utilisation "#ercice

Introduction

Systme rel

Analyse Modle dAnalyse

Conception Modle de Conception

Ralisation Modle de Ralisation

Dploiement Modle de Dploiement

BOOCH OM! OOSE "

ML % nified Modeling Language&

Introduction

Juin 1999 Janvier 1997

"M# 1 3

"M# 1 0

"M# 0 9 Octobre 1995 Mthode unifie 0 !

Booch93

OMT-2

Autres mthodes

Booch91

OMT-1

OOSE

Partenaires

Introduction
'sum # UML # UML # UML # UML

est $ne notation pas $ne mt%ode est $n lan&a&e de modlisation objet con'ient po$r to$tes les mt%odes o()et est dans le domaine p$(lic

$rogrammation Oriente Objet modliser in*ormati+$ement des lments d,$ne partie d$ monde rel en $n ensem(le d,entits in*ormati+$es -objets. Intr(t d)une mt*ode objet # d*inir le pro(lme / %a$t ni'ea$ sans rentrer dans les spci*icits d$ lan&a&e # d*inir $n pro(lme de *a0on &rap%i+$e # $tiliser les ser'ices o**ertes par lo()et sans rentrer dans le dtail de pro&rammation -"ncapsulation. # R$tilisation d$ code

Modlisation objet
+otion d!Objet

Une a(straction d$ monde rel c12/2d1 des donnes in*ormati+$es re&ro$pant des caractristi+$es d$ monde rel

"#emple

$ne personne $ne 'oit$re $ne maison 111

Caractrisation d!un objet

Identit permet de le distin&$er des a$tres o()ets Attributs donnes caractrisant l,o()et Mt*odes actions +$e l,o()et est / m3me de raliser

FIAT-UNO-17 : Voiture
455656 7 8$mro de srie 9:;; <& 7 =oids >>?6 @A 9B 7 Cmmatric$lation 955 ;;; 7 <ilomtra&e Dmarrer -. Arr3ter-. Ro$ler-.

Modlisation objet
+otion de Classe # Str$ct$re d,$n o()et c12/2d1 $ne dclaration de l,ensem(le des entits +$i composeront lo()et # Un o()et est donc Diss$D d,$ne classe c,est le prod$it +$i sort d,$n mo$le +otation $n o()et est $ne instanciation -occurrence. d,$ne classe ne classe est compose, attributs donnes dont les 'ale$rs reprsentent l,tat de l,o()et mt*odes oprations applica(les a$E o()ets

Nom_de_la_classe
attri($t9 7 Type attri($t4 7 Type " mt%ode9 -. mt%ode4 -. "

Modlisation objet
Voiture
8$mro de srie 7 Int =oids 7 double Cmmatric$lation 7 String Kilomtra&e 7 double Dmarrer -. Arr3ter-. Ro$ler-.

FIAT-UNO-17
455656 7 8$mro de srie 9:;; <& 7 =oids >>?6 @A 9B 7 Cmmatric$lation 55 ;;; 7 <ilomtra&e

Renault-Clio-17
:5456:6 7 8$mro de srie 9:;; <& 7 =oids ?6 @A! 9B 7 Cmmatric$lation 45 ;;; 7 <ilomtra&e

Peugeot- !"-7#
5656 7 8$mro de srie 9B;; <& 7 =oids >?56 @FF B: 7 Cmmatric$lation 9: ;;; 7 <ilomtra&e

Modlisation objet

-isibilit des attributs

d*inissent les droits d,accs a$E donnes -po$r la classe elle2m3me d,$ne classe %ritire o$ (ien d,$ne classe +$elcon+$e. $ublique %.& les classes pe$'ent accder a$E donnes et mt%odes d,$ne classe d*inie a'ec le ni'ea$ de 'isi(ilit public $rotge %/&7 l,accs a$E donnes est rser' a$E *onctions des classes %ritires $ri0e %1&7 l,accs a$E donnes est limit a$E mt%odes de la classe elle2m3me

Nom_de_la_classe
G Attri($t9 7 Type 2 Attri($t4 7 Type " H mt%ode9 -. Mt%ode4 -. "

Types de relation entre classes

Hritage Association Contenance

Types de relation , Hritage


permet de crer $ne no$'elle classe / partir d,$ne classe eEistante

$rincipe

classe dri'e contient les attri($ts et les mt%odes de sa s$perclasse

Spcialisation
tendre les proprits d'une classe, sous forme de sous-classes

Gnralisation
factoriser les proprits groupe de classes sous forme de super-classe

Chaque personne de l uni!ersit est identifie par son nom, prnom "es tudiants ont plus un no#tudiant "es enseignants ont un numro de tlphone interne

Types de relation , Association


ConneEion smanti+$e entre de$E classes

+a0igabilit
=ar d*a$t $ne association est na'i&a(le dans les de$E sens

# C%a+$e instance de 'oit$re a $n lien 'ers le propritaire # C%a+$e instance de =ersonne a $n ensem(le de lien 'ers les 'oit$res

Restriction de la na'i&a(ilit
# Le ser'ice de contra'ention est associ / $ne o$ pl$sie$rs 'oit$re-s. # La 'oit$re ne connaIt pas ser'ice de contra'ention

Navigable

Types de relation , Association


Documentation d!une association
+om de l!association lien smantique entre les classes "a personne ach%te la !oiture "a !oiture est achete '2le d!une association Spcification du r$le de la classe

"a personne joue le r$le de propritaire de la !oiture

Types de relation , Association 'elation n1aire


!ype partic$lier dassociation +$i relie pl$s de de$E classes

=ro*esse$r
Sym(ole dassociation

Salle

Et$diant

Attention
di**iciles / dc%i**rer

Types de relation , Association


Multiplicits
1 7 la classe est en relation a'ec $n et $n se$l o()et de la$tre classe 1..* 7 la classe est en relation a'ec a$ moins $n o()et de la$tre classe 0..* 7 la classe est en relation a'ec ; o$ n o()ets de la$tre classe 0..1 7 la classe est en relation a'ec a$ pl$s $n o()et de la$tre classe &ne !oiture est achete par une et une seule personne &ne personne peut acheter ' ou n !oitures

Types de relation , Contenance

Cas partic$lier dassociation eEprimant $ne relation de contenance "#emples, # Une 'oit$re a 6 ro$es # Un dessin contient $n ensem(le de *i&$res &omtri+$es # Une prsentation =oJer=oint est compos de transparents # Une +$ipe de rec%erc%e est compose d$n ensem(le de personnes Deu# types de relations de contenance en # A&r&ation # Composition -A&r&ation *orte. ML

Types de relation , Agrgation


Type de relations K A L contient M des instances de B
Agr%gat A $

$roprits de l!agrgation # La s$ppression de A nimpli+$e pas la s$ppression de B # L,lment a&r& pe$t 3tre parta& "#emples , # Lensei&nant est $n composant d$ne -o$ pl$sie$rs. +$ipe de rec%erc%e d$n se$l dpartement # La disparition d$ne +$ipe de rec%erc%e nentraine pas la disparition d$n ensei&nant

Types de relation , Composition


La s$ppression de A entraine la s$ppression de B Exemple( ) &ne prsentation *o+er*oint est compos de transparents , La s$ppression de la prsentation entraine la disparition des transparents +$i la compose

Diagramme de classes

Diagramme de classes
Client 1''1 Pa+uet 1''( &ettre Colis 1''1 !''( &i,raison

Colis national

Colis international !''( Peut contenir !''( )arc*andise

Cnterprter le dia&ramme de classes s$i'ant a*in de donner $ne spci*ication en lan&a&e nat$rel1

Implmentation , Hritage
public class Personne { public String nom; public String prenom; }

public class Etudiant extends Personne { public int noEtudiant; }

Implmentation , Associations

public class Personne { public String Nom; public String prenom; public java.util.Collection voiture = new java.util. reeSet!"; }

public class #oiture { public String immatriculation; public Personne Propri$taire; public void demarer!" { } }

public class ServiceContraventions { public java.util.Collection #oiture = new java.util. reeSet!"; }

Implmentation , Agrgation

public class Enseignant extends Personne { public String telep%one; public java.util.Collection e&uipe'ec%erc%e = new java.util. reeSet!"; public (epartement departement; } public class ($partement { private int nom($partement; private int codet%eme; public java.util.Collection enseignant = new java.util. reeSet!"; }

Implmentation , Composition

public public public public public }

class E&uipe'ec%erc%e { String*+ nomE&uipe; String t%$mati&ue; java.util.Collection enseignant = new java.util. reeSet!"; )aboratoire laboratoire;

public class )aboratoire { public java.util.Collection e&uipe'ec%erc%e = new java.util. reeSet!"; }

Les diagrammes
# -ues statiques K Les dia&rammes K Les dia&rammes K Les dia&rammes K Les dia&rammes K Les dia&rammes # -ues dynamiques K Les dia&rammes K Les dia&rammes K Les dia&rammes K Les dia&rammes

ML

de classes do()ets de cas d$tilisation de composants de dploiement

de s+$ence de colla(oration dtats2transition dacti'its

Diagramme d!objets

montre des o()ets -instances de classes dans $n tat partic$lier. et des liens -relations smanti+$es. entre ces o()ets1

Cas d!utilisation
#str$ct$rer les (esoins des $tilisate$rs et les o()ecti*s correspondants d$ systme1 #=rocc$per des cas DrelsD des $tilisate$rs N ils ne prsentent pas de sol$tions d,implmentation et ne *orment pas $n in'entaire *onctionnel d$ systme1

+otation O()ecti* d$ systme moti' par $n (esoin d,$n -o$ pl$sie$rs. acte$r-s. =ersonne o$ composant dori&ine d$ne interaction a'ec le systme Doc$mente $n lment d$ modle 8ote Le cas so$rce contient a$ssi le comportement dcrit dans la cas destination

Cas d$tilisation

Acte$r

Relation d$tilisation

Cas d!utilisation

"#ercice
Conce'oir le diagramme de classe d$ne application de &estion d%Otel1 Poici ce +$e 'o$s de'eQ modliser 7 Un %Otel est constit$ d,$n certain nom(re de c%am(res1 Un responsa(le de l,%Otel &re la location des c%am(res1 C%a+$e c%am(re se lo$e / $n priE donn1 L,accs a$E salles de (ain est compris dans le priE de la location d,$ne c%am(re1 Certaines c%am(res comportent $ne salle de (ain mais pas to$tes1 Les %Otes de c%am(res sans salle de (ain pe$'ent $tiliser $ne salle de (ain s$r le palier1 Ces dernires pe$'ent 3tre $tilises par pl$sie$rs %Otes1 Les pices de l,%Otel +$i ne sont ni des c%am(res ni des salles de (ain -%all d,acc$eil c$isine111. ne *ont pas partie de l,t$de -%ors s$)et.1 Des personnes pe$'ent lo$er $ne o$ pl$sie$rs c%am(res de l,%Otel a*in d,y rsider1 En d,a$tre termes 7 l,%Otel %(er&e $n certain nom(re de personnes ses %Otes -il s,a&it des personnes +$i lo$ent a$ moins $ne c%am(re de l,%Otel111.1

3olution

S-ar putea să vă placă și