Sie sind auf Seite 1von 23

UML Unified Method Language Langage unifi pour la modlisation objet

Frdric Julliard Universit de Bretagne Sud UFR SSI - IUP Vannes anne 2001-2002
2001-2002 Langage de modlisation UML - Frdric Julliard Universit de Bretagne Sud 1

I - Introduction

UML : Unified Method Language


- Fondations issues de diverses mthodes OO : Rumbaugh (OMT) Booch (OOD) Jacobson (OOSE) - Il sagit dun Langage de Modlisation

2001-2002

Langage de modlisation UML - Frdric Julliard

Universit de Bretagne Sud

I - Introduction

Bibliographie
N. Lopez, J. Migueis et E. Pichon. (1997). Intgrer UML dans vos projets. Eyrolles. M. Bouzeghoub, G. Gardarin, P. Valduriez (1997) Les objets. Eyrolles. N. Kettani et al. (1999). De Merise UML. Eyrolles I. Jacobson (1993) Le gnie logiciel orient objet : une approche fonde sur les cas dutilisation. ACM Press, Addison-Weslry P-A Muller et N. Gaertner (2000) Modlisation objet avec UML. Eyrolles. M. Lai (2000). UML la notation unifie de modlisation objet. Dunod Informatiques. Cours sur le web : http://uml.free.fr Site : www.uml.org (OMG)

Chapitre I

Introduction

2001-2002

Langage de modlisation UML - Frdric Julliard

Universit de Bretagne Sud

2001-2002

Langage de modlisation UML - Frdric Julliard

Universit de Bretagne Sud

Principales tapes de la dfinition dUML


UML 2.0
1999 : Standardisation par lOMG (Object Management Group) 1997 : soumission lOMG OOPSLA96 OOPSLA95 Guide de lutilisateur Manuel de rfrence Guide du processus Spcification disponibles sur le web Spcification disponibles sur le web

I - Introduction

Principales influences
Booch : catgories et sous-systmes Embley : classes singletons et objets composites Fusion : description des oprations, numrotation des messages Gamma : frameworks, patterns et notes Harel : machines tats finis (statecharts) Jacobson : cas dutilisation (use cases) Meyer : pr et post-conditions Odell : classification dynamique, venements OMT : associations Shlear-Mellor : cycle de vie des objets Wirfs-Brock : responsabilits (CRC)
2001-2002 Langage de modlisation UML - Frdric Julliard Universit de Bretagne Sud 6

UML 1.3 UML 1.0 UML 0.9

Mthode Unifie 0.8 Booch93 OMT-2 OMT-1 (Rumbaugh) Partenaires Industriels OOSE Jacobson92
5

Autres mthodes
2001-2002

Booch91

Langage de modlisation UML - Frdric Julliard

Universit de Bretagne Sud

I - Introduction

I - Introduction

Objectifs du langage UML


Langage visuel de modlisation
Exploitable par des mthodes A/C diffrentes Adapt toutes les phases du dveloppement Compatible avec toutes les techniques de ralisation

Diagrammes dUML
Diffrentes vues pour reprsenter un systme : En UML : 9 principaux diagrammes (en ralit : 12)
5 Diagrammes structurels (vue statique)
Cas dutilisation Classes Objets Composants Dploiement

Mcanismes dextension et de spcialisation en vue dtendre les concepts de base Indpendant des langages de programmation Base formelle pour la comprhension du langage Encourage lutilisation doutils OO Supporte les concepts de dveloppement de haut niveaux : patterns, composants et frameworks

4 diagrammes comportementaux (vue dynamique)



7 2001-2002

Squence Activits Etats-Transitions Collaboration


Langage de modlisation UML - Frdric Julliard Universit de Bretagne Sud 8

2001-2002

Langage de modlisation UML - Frdric Julliard

Universit de Bretagne Sud

I - Introduction

I - Introduction

Processus dIngnierie sous-jacent


Modle des cas dutilisation
Spcialis par

Relation entre diagrammes et tapes du processus


Dcouverte des besoins :
Diagramme de cas dutilisation : dcrit les fonctions du systme selon le point de vue ses futurs utilisateurs (Jacobson) Diagramme de squence : reprsentation des interactions temporelles entre objets dans la ralisation dune interface HommeSystme

vrifi par

Modle de test Modle danalyse


Ralis par Ralis par

Analyse :
Diagramme de classes : structure des donnes du systme dfinies comme un ensemble de relations entre classes Diagramme dobjets : illustration des objets et de leur relations Diagramme de collaboration : reprsentation des interactions entre objets Diagramme dtats-transitions : reprsentation du comportement des objets dune classe en terme dtats et de transitions dtats Diagramme dactivits : structure dune opration en actions
9 2001-2002 Langage de modlisation UML - Frdric Julliard Universit de Bretagne Sud 10

Modle de conception

Modle de ralisation
Distribu par

Modle de dploiement
2001-2002 Langage de modlisation UML - Frdric Julliard Universit de Bretagne Sud

I - Introduction

Relation entre diagrammes et tapes du processus

Chapitre II
Conception :
Diagramme de squence : reprsentation des interactions temporelles entre objets dans la ralisation dune opration Diagramme de dploiement : description du dploiement des composants sur les dispositifs matriels Diagrammes de composants : architecture des composants physiques dune application

Diagrammes de classes et diagrammes dobjets

2001-2002

Langage de modlisation UML - Frdric Julliard

Universit de Bretagne Sud

11

2001-2002

Langage de modlisation UML - Frdric Julliard

Universit de Bretagne Sud

12

II Diagrammes de classes et diagrammes dobjets

II Diagrammes de classes et diagrammes dobjets

Diagrammes de classes et diagrammes dobjets


- Un diagramme de classes reprsente la structure du systme sous la forme de classes et de relations entre ces classes - Un diagramme dobjets illustre les objets et les liens qui les unissent Instance de * * Classe Objet relie * Relation Instance de relie Lien * - Une classe est une description abstraite dun ensemble dobjets ayant : - des proprits similaires, - un comportement commun,

Classe

- des relations communes avec dautres objets - des smantiques communes

Diagramme de classes
2001-2002

Diagramme dobjets
(extrait simplifi du mta-modle dUML)

Langage de modlisation UML - Frdric Julliard

Universit de Bretagne Sud

13

2001-2002

Langage de modlisation UML - Frdric Julliard

Universit de Bretagne Sud

14

II Diagrammes de classes et diagrammes dobjets

II Diagrammes de classes et diagrammes dobjets

Reprsentation dune classe en UML


Exemples : attributs Nom de la classe Personne oprations

Reprsentation dune classe en UML

Personne nom prnom date de naissance

Poste de travail Les compartiments dune classe peuvent tre omis si leur contenu nest pas pertinent dans le contexte dun diagramme

age()

Dpartement

2001-2002

Langage de modlisation UML - Frdric Julliard

Universit de Bretagne Sud

15

2001-2002

Langage de modlisation UML - Frdric Julliard

Universit de Bretagne Sud

16

II Diagrammes de classes et diagrammes dobjets

II Diagrammes de classes et diagrammes dobjets

Attributs de classe
Un attribut de classe dfinit une proprit commune aux objets dune classe. Nom de classe nom dattribut : type = valeur initiale Exemples : Personne nom : chane prnom : chane date de naissance : date

Attributs de classe

Film Titre : chane ralisateur : chane Date de production : date Date de sortie : date

Les noms dattributs dune classe sont uniques. Chaque objet, instance dune classe, a sa propre identit, indpendante des valeurs de ses attributs. Lidentification dun objet est donc facultative.
2001-2002 Langage de modlisation UML - Frdric Julliard Universit de Bretagne Sud 17 2001-2002

Langage de modlisation UML - Frdric Julliard

Universit de Bretagne Sud

18

II Diagrammes de classes et diagrammes dobjets

II Diagrammes de classes et diagrammes dobjets

Opration de classe
Exemples : Une opration dfinit une fonction applique des objets dune classe : Nom de classe Exemples : Personne nom : chane prnom : chane date de naissance : date Age() nom dopration ( liste darguments ) : type de retour ChangeAdresse()

Oprations de classe

Objet gomtrique couleur : chane position : entier Dplacer (deltaX : vecteur) Slectionner (p : Point) : Boolen

2001-2002

Langage de modlisation UML - Frdric Julliard

Universit de Bretagne Sud

19

2001-2002

Langage de modlisation UML - Frdric Julliard

Universit de Bretagne Sud

20

II Diagrammes de classes et diagrammes dobjets

II Diagrammes de classes et diagrammes dobjets

Proprits des attributs et des oprations :


Accessibilit aux attributs et oprations dune classe Trois niveaux de protection :

Proprits des attributs et des oprations :


Accessibilit aux attributs et oprations dune classe Personne - nom : chane - prnom : chane - date de naissance : date + getNom() + getDateNaissance()

Public (+) : accs partir de toute entit interne ou externe la classe Protg (#) : accs partir de la classe ou des sous-classes Priv (-) : accs partir des oprations de la classe

2001-2002

Langage de modlisation UML - Frdric Julliard

Universit de Bretagne Sud

21

2001-2002

Langage de modlisation UML - Frdric Julliard

Universit de Bretagne Sud

22

II Diagrammes de classes et diagrammes dobjets

II Diagrammes de classes et diagrammes dobjets

Attributs drivs
Au niveau de lanalyse des besoins, des proprits redondantes peuvent tre proposes Un attribut driv permet dindiquer clairement quun attribut dcoule dautres proprits alloues Les attributs drivs (not : /nom attribut) ont des valeurs calcules partir de celles dautres proprits : Rectangle Longueur Largeur /surface En conception Socit Rectangle Longueur Largeur

Association
Une association reprsente une classe dassociations structurelles entre classes dobjets Classe A Classe B

Personne

Voiture

Personne

Par la suite : Surface()


2001-2002 Langage de modlisation UML - Frdric Julliard Universit de Bretagne Sud 23 2001-2002 Langage de modlisation UML - Frdric Julliard Universit de Bretagne Sud 24

II Diagrammes de classes et diagrammes dobjets

II Diagrammes de classes et diagrammes dobjets

Classe association
- Une association peut tre rifie par une classe appele classe associative ou classe association - Par exemple, lorsque lassociation possde des attributs ou des oprations : Rattachement de la classe lassociation Enseignant Classe

Association
Une association qui contient des attributs et qui ne participe pas des relations avec dautres classe est appele classe attribue. Classe A Classe B

Cours Dure Dbut Contenu EcrireContenu()


2001-2002 Langage de modlisation UML - Frdric Julliard

Matire

C Attributs

Universit de Bretagne Sud

25

2001-2002

Langage de modlisation UML - Frdric Julliard

Universit de Bretagne Sud

26

II Diagrammes de classes et diagrammes dobjets

II Diagrammes de classes et diagrammes dobjets

Association n-aire
Une association ternaire entre salle, tudiant et enseignant est rifie comme une classe cours ayant deux attributs : dbut et fin Salle

Nommage des associations


- Nom de lassociation en italique au milieu de la ligne - On note en gnral les association par une forme verbale, soit active, soit passive Nom Classe A Classe B

Enseignant

Classe Socit Cours Dbut Fin Voiture

Travaille pour

Personne

Est la proprit de

Personne

2001-2002

Langage de modlisation UML - Frdric Julliard

Universit de Bretagne Sud

27

2001-2002

Langage de modlisation UML - Frdric Julliard

Universit de Bretagne Sud

28

II Diagrammes de classes et diagrammes dobjets

II Diagrammes de classes et diagrammes dobjets

Nommage des rles


- Toute association binaire possde 2 rles - un rle dfinit la manire dont une classe intervient dans une relation - Le nommage des associations et le nommage des rles ne sont pas exclusifs lun de lautre Socit
Travaille pour

Nommage des rles


Avion Pilote Personne Passagers La prsence dun grand nombre dassociations entre deux classes est suspecte : Conduire Voiture Dmarrer Possder Laver Arrter Personne

employeur

employ

Personne

- Intrt des rles dans le cas o plusieurs associations lient deux classes : distinction des concepts attachs aux associations
2001-2002 Langage de modlisation UML - Frdric Julliard Universit de Bretagne Sud 29 2001-2002

Langage de modlisation UML - Frdric Julliard

Universit de Bretagne Sud

30

II Diagrammes de classes et diagrammes dobjets

II Diagrammes de classes et diagrammes dobjets

Association rflexive

Multiplicit des associations


La multiplicit est une information porte par le rle, qui quantifie le nombre de fois o un objet participe une instance de relation

Personne

Enfants *

1 0 .. 1 M .. N * 0 .. *

un et un seul zro ou un de M N (entiers naturels) de zro plusieurs de zro plusieurs de un plusieurs exactement N (entier naturel)
Langage de modlisation UML - Frdric Julliard Universit de Bretagne Sud 32

Parents

Nommage des rles indispensable la claret du diagramme

1 .. * N

2001-2002

Langage de modlisation UML - Frdric Julliard

Universit de Bretagne Sud

31

2001-2002

II Diagrammes de classes et diagrammes dobjets

II Diagrammes de classes et diagrammes dobjets

Multiplicit des associations


Personne Employ 0..* 1 Employeur Socit Personne

Contraintes sur les associations


Propritaire 1 0..n Compte

{ordonne}

: Chaque personne travaille pour une et une seule socit (toute les personnes ont un emploi) : Une socit emploie de zro plusieurs personnes

Contrainte dassociation : porte sur une relation ou sur un groupe de relations (note {contrainte }) Par exemple, place sur un rle, la contrainte {ordonne} dfinit une relation dordre entre les objets de la collection (les comptes) qui sont lis une personne
33 2001-2002 Langage de modlisation UML - Frdric Julliard Universit de Bretagne Sud 34

0 .. *

2001-2002

Langage de modlisation UML - Frdric Julliard

Universit de Bretagne Sud

II Diagrammes de classes et diagrammes dobjets

II Diagrammes de classes et diagrammes dobjets

Contraintes sur les associations


La contrainte {sous-ensemble} indique quune collection est incluse dans une autre collection Classe
Parent dlves {Sous-ensemble}

Restriction des associations


La restriction (dite qualification en UML) dune association consiste slectionner un sous-ensemble dobjets parmi lensemble des objets qui participent une association

Personne

dlgus * La contrainte {Ou-exclusif} prcise que, pour un objet donn, une seule association parmi un groupe dassociations est valide

Universit

Enseignants {Ou-exclusif}

ralise au moyen dune cl, ensemble dattributs particuliers. La cl appartient lassociation et non aux classes associes

Personne

Etudiants *
2001-2002 Langage de modlisation UML - Frdric Julliard Universit de Bretagne Sud 35 2001-2002 Langage de modlisation UML - Frdric Julliard Universit de Bretagne Sud 36

II Diagrammes de classes et diagrammes dobjets

II Diagrammes de classes et diagrammes dobjets

Restriction des associations


Chaque instance de la classe A accompagne de la valeur de la cl, identifie un sous ensemble des instances de B qui participent lassociation A

Restriction des associations


Une restriction rduit le nombre dinstances qui participent une association :

cl

B Sans cl :A Avec cl :B :B

:B :B :B :B :B :B

Universit

N tudiant

Etudiant

2001-2002

Langage de modlisation UML - Frdric Julliard

Universit de Bretagne Sud

37

2001-2002

Langage de modlisation UML - Frdric Julliard

Universit de Bretagne Sud

38

II Diagrammes de classes et diagrammes dobjets

II Diagrammes de classes et diagrammes dobjets

Association particulire : Agrgation


Une agrgation est une association non symtrique : lune des extrmits joue un rle prdominant par rapport lautre Elle se justifie dans les cas suivants : - Une classe B fait partie intgrante dune classe A - Les valeurs dattributs de la classe B se propagent dans les valeurs dattributs de la classe B - Une action sur la classa A implique une action sur la classe B - Les objets de la classe B sont subordonns aux objets de la classe A (la prsence dune agrgation nimplique obligatoirement tous ces critres) Agrgat A Agrg B

Association particulire : Agrgation


Lagrgation peut tre multiple comme une association classique : propritaire Personne 1..* * Immeuble B

En tant que propritaire , une personne est un agrgat dimmeubles Les immeubles dont elle est propritaire font partie de la description dune personne
39 2001-2002 Langage de modlisation UML - Frdric Julliard Universit de Bretagne Sud 40

2001-2002

Langage de modlisation UML - Frdric Julliard

Universit de Bretagne Sud

II Diagrammes de classes et diagrammes dobjets

II Diagrammes de classes et diagrammes dobjets

Agrgation particulire : Composition


La composition est une forme particulire dagrgation Le composant est physiquement contenu dans lagrgat La composition implique une contrainte sur la valeur de la multiplicit du cot de lagrgat : (0 ou 1) La valeur 0 du cot de lagrgat implique un attribut non renseign 0..1 Compos * Composant

Agrgation particulire : Composition


- La composition peut tre modlise au moyen dattributs - La notation par composition doit tre retenue lorsque dun attribut participe des relations Voiture Moteur Voiture

Moteur

Cylindre

Carburateur

2001-2002

Langage de modlisation UML - Frdric Julliard

Universit de Bretagne Sud

41

2001-2002

Langage de modlisation UML - Frdric Julliard

Universit de Bretagne Sud

42

II Diagrammes de classes et diagrammes dobjets

II Diagrammes de classes et diagrammes dobjets

Association, Agrgation et Composition


Association

Gnralisation - Spcialisation
- La relation de gnralisation signifie est de ou est une sorte de : notion dhritage Animal Classe mre

gnralisation

Agrgation

spcialisation

Chat

Souris

Rhinocros

Composition Sous-classes = instances dune seule classe Animal (hritage simple)


2001-2002 Langage de modlisation UML - Frdric Julliard Universit de Bretagne Sud 43 2001-2002 Langage de modlisation UML - Frdric Julliard Universit de Bretagne Sud 44

II Diagrammes de classes et diagrammes dobjets

II Diagrammes de classes et diagrammes dobjets

Hritage multiple
Tapis

Vhicule

Contraintes de gnralisation
- Une classe peut tre spcialise selon plusieurs critres - Certaines contraintes peuvent tre poses sur les relations de gnralisation

Terrestre

Marin

Arien

- Par dfaut, la gnralisation symbolise une dcomposition exclusive motorisation

Vhicule

milieu Terrestre Marin

Tapis volant

A voile

A moteur

2001-2002

Langage de modlisation UML - Frdric Julliard

Universit de Bretagne Sud

45

2001-2002

Langage de modlisation UML - Frdric Julliard

Universit de Bretagne Sud

46

II Diagrammes de classes et diagrammes dobjets

II Diagrammes de classes et diagrammes dobjets

Contraintes de gnralisation {disjoint} ( = { exclusif } )


Champignon - La contrainte {Disjoint} (ou {exclusif}) indique la participation exclusive dun objet {exclusif} lune des collections spcialises Boletus Agaricus

Contraintes de gnralisation {chevauchement} (={ inclusif })

Vhicule

- La contrainte {chevauchement} (ou {inclusif}) {inclusif} indique la terrestre moteur participation voile possible dun objet plusieurs collections spcialises Mobylette

arien

Pied bleu

Bolet de loup

2001-2002

Langage de modlisation UML - Frdric Julliard

Universit de Bretagne Sud

47

2001-2002

Langage de modlisation UML - Frdric Julliard

Universit de Bretagne Sud

48

II Diagrammes de classes et diagrammes dobjets

II Diagrammes de classes et diagrammes dobjets

Contraintes de gnralisation {Complte} {Incomplte}


Cours - La contrainte {Complte} indique la gnralisation est termine : tout ajout de sous-classe est alors impossible

Diagramme dobjets
- Reprsente les liens structurel entre instances de classes - Facilite la comprhension de structures complexes - Trois reprsentations possibles des instances :

{incomplte} Maths Allemand Anglais Nom de lobjet Nom de lobjet:NomClasse :NomClasse


Universit de Bretagne Sud 49 2001-2002 Langage de modlisation UML - Frdric Julliard Universit de Bretagne Sud 50

- linverse, la contrainte {Incomplte} indique une gnralisation extensible


2001-2002 Langage de modlisation UML - Frdric Julliard

II Diagrammes de classes et diagrammes dobjets

II Diagrammes de classes et diagrammes dobjets

Diagramme dobjets
- les valeurs des attributs sont optionnelles ainsi que les liens entre objets :Voiture Voiture Couleur = rouge 1 1 Moteur :Voiture

Diagramme dobjets
- Les liens instances des associations rflexives peuvent relier un objet lui mme Personne * 1 Patron Jean-Luc:Personne Collaborateur patron Pierre:Personne

1 4 Roue :Roue

:Moteur

patron Jean:Personne

2001-2002

Langage de modlisation UML - Frdric Julliard

Universit de Bretagne Sud

51

2001-2002

Langage de modlisation UML - Frdric Julliard

Universit de Bretagne Sud

52

II Diagrammes de classes et diagrammes dobjets

II Diagrammes de classes et diagrammes dobjets

Diagramme dobjets : liens entre objets


- Les liens darit suprieure 2 ou la multiplicit peuvent tre reprsents : :Professeur Professeur :Salle :Etudiant

Diagramme dobjets : liens entre objets


- Les objets composs de sous-objets peuvent tre visualiss : Objet composite:NomClasseComposite :Partie :Partie :Partie

- Les objets composites sont instances de classes composites : Fentre 2 Ascenseur

Salle

Etudiant

1 Zone de travail
:Ascenceur

:Fentre
:ZoneTravail :Ascenceur

2001-2002

Langage de modlisation UML - Frdric Julliard

Universit de Bretagne Sud

53

2001-2002

Langage de modlisation UML - Frdric Julliard

Universit de Bretagne Sud

54

II Diagrammes de classes et diagrammes dobjets

II Diagrammes de classes et diagrammes dobjets

Diagramme dobjets : structures complexes


- Les diagrammes dobjets facilitent la comprhension et llaboration dun diagramme de classes : Bus * 1 Destination
:Bus
Passagers Passager

Diagramme dobjets : structures complexes


Personne prnom Parent 1 Christophe Pre Mre Aurlie Pre Mre

*
Conducteur

Personne

Pre / Mre Enfant 0..1 Frdric

:Personne

Pre

Mre

Conducteur

:Destination
2001-2002 Langage de modlisation UML - Frdric Julliard

:Personne

Alain
Universit de Bretagne Sud 55 2001-2002

Yvette
Universit de Bretagne Sud 56

Langage de modlisation UML - Frdric Julliard

Chapitre III

III Diagrammes des cas dutilisation

Reprsenter les besoins


La phase danalyse des besoins ncessite : de comprendre les besoins couvrir dexprimer et de formaliser les besoins Moyens pour reprsenter les besoins en UML Diagramme de cas dutilisation : organisation gnrale utilisation systme par ses acteurs Diagramme de squence : pour chaque cas dutilisation : description temporelle de linteraction dun acteur sur le systme = scenario Diagrammes objets/classes : informations changes entre systme et acteurs Diagramme de collaboration : interactions entre objets mtier du systme
57 2001-2002 Langage de modlisation UML - Frdric Julliard Universit de Bretagne Sud 58

Diagrammes de Cas dutilisation (use cases)

2001-2002

Langage de modlisation UML - Frdric Julliard

Universit de Bretagne Sud

III Diagrammes des cas dutilisation

III Diagrammes des cas dutilisation

Cas dutilisation
Constat : Le systme existe pour servir ses utilisateurs Cas dutilisation (use cases) [Jacobson 92] = Ide : description du comportement du systme du point de vue de son utilisateur (facilite lexpression des besoins) Comportement = {Actions}+{Ractions} Les Cas dutilisation : facilitent la structuration des besoins des utilisateurs reprsentation simple et expressive expriment les limites et les objectifs du systme
2001-2002 Langage de modlisation UML - Frdric Julliard Universit de Bretagne Sud 59

Cas dutilisation
Un cas dutilisation correspond une manire spcifique dutiliser le systme Cest la reprsentation dune fonctionnalit, dclenche en rponse une stimulation du systme

Cas dutilisation Acteur


2001-2002 Langage de modlisation UML - Frdric Julliard Universit de Bretagne Sud 60

III Diagrammes des cas dutilisation

III Diagrammes des cas dutilisation

Cas dutilisation : dfinitions


Acteur : entit externe qui agit sur le systme prend les dcisions contrairement un lment logiciel possde un rle par rapport au systme soit utilisateur soit un autre systme Cas dutilisation Rle de lacteur
2001-2002 Langage de modlisation UML - Frdric Julliard Universit de Bretagne Sud 61

Acteurs vs utilisateurs
Ne pas confondre acteur et personne utilisant le systme : une mme personne peut jouer plusieurs rles plusieurs personnes peuvent jouer un mme rle un acteur nest pas forcment une personne physique Types dacteurs : Utilisateur principaux Utilisateurs secondaires Priphriques externes Systmes externes
2001-2002 Langage de modlisation UML - Frdric Julliard Universit de Bretagne Sud 62

III Diagrammes des cas dutilisation

III Diagrammes des cas dutilisation

Dfinition des Acteurs


Pour chaque acteur : choisir un identificateur reprsentatif du rle ventuellement accompagn dune brve description textuelle : Un guichetier est un employ de la banque jouant un rle dinterface entre le systme informatique et les clients quil reoit au comptoir

Cas dutilisation : dfinitions


Cas dutilisation : ensemble des actions ralises par le systme en rponse une action dun acteur suite dinteractions entre un acteur et le systme correspond une fonction visible par lutilisateur permet datteindre un objectif au yeux de lutilisateur doit tre utile les cas dutilisation ne doivent pas se chevaucher Acteur
63 2001-2002 Langage de modlisation UML - Frdric Julliard

CU2 CUn CU1

guichetier

2001-2002

Langage de modlisation UML - Frdric Julliard

Universit de Bretagne Sud

Universit de Bretagne Sud

64

III Diagrammes des cas dutilisation Cas dutilisation : exemples de diagrammes de CU

III Diagrammes des cas dutilisation

Retirer de largent Dposer de largent Client de la banque Effectuer des virements entre comptes Consulter le solde dun compte Ravitailler le distributeur Agent de maintenance
2001-2002

Cas dutilisation : exemples de diagrammes de CU


Crer un compte guichetier Dposer de largent Retirer de largent au distributeur Consulter un compte client

Employ de caisse

Retirer de largent

Grer les prts directeur

Rparer le distributeur
Universit de Bretagne Sud 65 2001-2002 Langage de modlisation UML - Frdric Julliard

Langage de modlisation UML - Frdric Julliard

Universit de Bretagne Sud

66

III Diagrammes des cas dutilisation

III Diagrammes des cas dutilisation

Cas dutilisation : exemples de diagrammes de CU


Consulter un compte client Banque centrale Retirer de largent au distributeur Ajouter des billets Transporteur de billets
2001-2002 Langage de modlisation UML - Frdric Julliard

Cas dutilisation : exemples de diagrammes de CU

Entrer Porteur de badge

Dbloquer les portes

Capteur incendie

sortir

Assurer la maintenance Gardien technicien


Universit de Bretagne Sud 67 2001-2002

Lister les tentatives de fraude

Grer les badges Administrateur

Langage de modlisation UML - Frdric Julliard

Universit de Bretagne Sud

68

III Diagrammes des cas dutilisation

III Diagrammes des cas dutilisation

Cas dutilisation : dfinitions


Pas de communications entre les CU dun systme, mais simplement des relations dutilisation (uses ou include) ou dextension (extends) Les communications entre les acteurs ne sont pas reprsentes CU2 CUn CU1 Rle acteur
2001-2002

Relations entre cas dutilisation


Relations entre cas dutilisation : structuration des cas dutilisation lutilisation (uses ou include) : association entre un cas dutilisation client et un cas dutilisation fournisseur dun comportement : extraction dune squence dinteractions communes prsentes dans le scnario de plusieurs cas dutilisation lextension (extends) : extraction de scnarii communs ou non et optionnels (dclenchs sous certaines conditions)
69 2001-2002 Langage de modlisation UML - Frdric Julliard Universit de Bretagne Sud 70

Relations entre CU Interactions acteur-systme

CU1

Langage de modlisation UML - Frdric Julliard

Universit de Bretagne Sud

III Diagrammes des cas dutilisation

III Diagrammes des cas dutilisation

Relations entre cas dutilisation


Relation uses entre cas dutilisation <<uses>> Retirer de largent Sidentifier <<uses>>

Relations entre cas dutilisation


Relation extends entre cas dutilisation

Retirer de largent avec dbit diffr

<<extends>> Retirer de largent

Dposer de largent

2001-2002

Langage de modlisation UML - Frdric Julliard

Universit de Bretagne Sud

71

2001-2002

Langage de modlisation UML - Frdric Julliard

Universit de Bretagne Sud

72

III Diagrammes des cas dutilisation

III Diagrammes des cas dutilisation

Exemple de relations
<<extends>> Choix urgent
Choix urgent tend choix fournisseur signifie que Choix fournisseur peut tre complt par Choix Urgent sous certaines conditions

Cas dutilisation et scnario


1 acheteur * * <<generalize>> 1 secrtaire 1 le systme = ensemble de cas dutilisation le systme possde les cas dutilisation mais pas les acteurs Un cas dutilisation dexcution possibles = ensemble de chemins

Choix fournisseur

* <<Uses>>

Commande fournisseur

Un scnario = un chemin particulier dexcution = une squence dvnements Un scnario = Instance de cas dutilisation Une instance dacteur crer un scnario
73 2001-2002 Langage de modlisation UML - Frdric Julliard Universit de Bretagne Sud 74

commande
2001-2002

fournisseur Relation de gnralisation


Universit de Bretagne Sud

Langage de modlisation UML - Frdric Julliard

III Diagrammes des cas dutilisation

III Diagrammes des cas dutilisation

Cas dutilisation vs Scnario


CU rle acteur Diagramme de CU :classe.. instances Diagramme de squence = scnario
2001-2002 Langage de modlisation UML - Frdric Julliard Universit de Bretagne Sud 75

Cas dutilisation et scnario


spcification exhaustive de tous les scnarios difficile, voire impossible slection des scnarii les plus intressants scnario optimal : dcrit linteraction la plus frquente scnarios drivs : dcrit certaines alternatives importantes non dcrites dans le scnario optimal

:classe_acteur

2001-2002

Langage de modlisation UML - Frdric Julliard

Universit de Bretagne Sud

76

III Diagrammes des cas dutilisation

Cas dutilisation et scnario


un scnario peut tre reprsent par diagramme de squence qui dcrit un change particulier entre un ou plusieurs acteurs et le systme : nature des infos changes entre des instances dacteurs ou dobjets du systme aspect temporel : flot ordonn dvnements

III Diagrammes des cas dutilisation Exemple de scnario dcrit par un diagramme de squence (cf. chapitre V)

:DAB :Client CB Code ? Code Menu action ? Action_retrait

un scnario peut galement tre reprsent par un diagramme de collaboration (cf. Chapitre IV)

Somme CB et Argent

Compte solvable ?
Universit de Bretagne Sud 78

2001-2002

Langage de modlisation UML - Frdric Julliard

Universit de Bretagne Sud

77

2001-2002

Langage de modlisation UML - Frdric Julliard

IV Diagrammes de collaboration

Introduction

Chapitre IV

Diagrammes de collaboration

Diagramme de collaboration (dobjets) : extension des diagrammes dobjets : vue dynamique Dcrit le comportement collectif dun ensemble dobjets, en vue de raliser une opration en dcrivant leurs interactions modlises par des envois (ventuellement numrots) de messages

2001-2002

Langage de modlisation UML - Frdric Julliard

Universit de Bretagne Sud

79

2001-2002

Langage de modlisation UML - Frdric Julliard

Universit de Bretagne Sud

80

IV Diagrammes de collaboration

IV Diagrammes de collaboration

Envois de messages entre objets Message = nom opration nom_opration objet1:C1 objet2:C2

Contraintes associs aux envois de message Les objets (et les liens) cres ou dtruit au cours dune interaction peuvent respectivement porter les contraintes : - {Nouveau} - {Dtruit} objet1:C1 cration objet1:C1 dtruit objet2:C2 {nouveau}

Envois ventuellement numrots : ordre des envois de message au cours dune opration Num:nom_opration objet1:C1
2001-2002 Langage de modlisation UML - Frdric Julliard

objet2:C2
Universit de Bretagne Sud 81 2001-2002 Langage de modlisation UML - Frdric Julliard

objet3:C3 {dtruit}
Universit de Bretagne Sud 82

IV Diagrammes de collaboration

IV Diagrammes de collaboration

Contraintes associs aux envois de message Les objets (et les liens) cres et dtruit au cours de la mme interaction porte la contraintes : - {transitoire} objet1:C1 MAJ objet2:C4 {transitoire}

Itrations dans un diagramme de collaboration Possibilit dexprimer lenvoi rptitifs de messages (ventuellement en parallle) sur une collection dobjets Instituteur * Elve instit:Instituteur *[tous]:Debout :Elve instit:Instituteur * || [tous]:Debout :Elve

2001-2002

Langage de modlisation UML - Frdric Julliard

Universit de Bretagne Sud

83

2001-2002

Langage de modlisation UML - Frdric Julliard

Universit de Bretagne Sud

84

IV Diagrammes de collaboration

IV Diagrammes de collaboration

Itrations dans un diagramme de collaboration Il est possible de faire intervenir un acteur (cf. chapitre III) dans un diagramme de collaboration : afin de reprsenter le comportement du systme sous leffet dun stimuli externe

Itrations dans un diagramme de collaboration Les objets qui contrlent le flot sont dits actifs Un objet actif peut activer un objet passif en lui envoyant un message. Une fois le message trait, le flot de contrle est restitu lobjet appelant

1:Appeler

:Ascenseur 2:Slectionner tage :Cabine Ex : photocopieuse 1:lire :Traitement de texte 2:crire :Imprimante
Langage de modlisation UML - Frdric Julliard Universit de Bretagne Sud 86

:Personne :scanner
2001-2002 Langage de modlisation UML - Frdric Julliard Universit de Bretagne Sud 85 2001-2002

IV Diagrammes de collaboration

IV Diagrammes de collaboration

Conditions sur les envoi de message Lenvoi dun message peut tre assorti dune condition [condition]:nom_opration objet1:C1 objet2:C2

Retour dune liste de valeurs lissue dun envoi de message Une liste de valeurs peut tre retourne suite lenvoi dun message [condition]:nom_opration :A :B Valeurs retournes :Alarme AfficherAge

[Poids>300]:Sonner :Cabine * || [Age>=18]:Voter :Mairie


2001-2002 Langage de modlisation UML - Frdric Julliard

:Universit :Personne
Universit de Bretagne Sud 87 2001-2002

Age
Langage de modlisation UML - Frdric Julliard

:Etudiant

Universit de Bretagne Sud

88

IV Diagrammes de collaboration

Exemple : distributeur de boission Diagramme de collaboration demande dune boisson disponible (caf) avec introduction de la somme exacte :Utilisateur
1:Introduire 2:boisson:=Choisir 2.1: reponse:= VerifierPrix(prix)

Chapitre V

:Pice
1.1: comptabiliser (valeur)

Caf:Boisson
2.3: FinOperation 2.2:reponse :=Disponibilit

Diagrammes de squence

1.1.1: afficher :Gestionnaire de

Pices

:Gobelet
2.2.1: gobelet

Somme_verse
2001-2002 Langage de modlisation UML - Frdric Julliard

Universit de Bretagne Sud

89

2001-2002

Langage de modlisation UML - Frdric Julliard

Universit de Bretagne Sud

90

Introduction Diagramme de squence :

V Diagrammes de squence

Catgories de messages 2 catgories de messages :

V Diagrammes de squence

Modlisation des interactions entre objets suite un vnement externe Aspect temporel : messages asynchrones ou synchrones

synchrone : lmetteur est bloqu jusquau traitement effectif du message asynchrone : lmetteur nest pas bloqu, il peut poursuivre son excution :NomClasse Message synchrone :NomClasse

:NomClasse :Client

:NomClasse

Message asynchrone

2001-2002

Langage de modlisation UML - Frdric Julliard

Universit de Bretagne Sud

91

2001-2002

Langage de modlisation UML - Frdric Julliard

Universit de Bretagne Sud

92

Envoi de messages dun objet sur lui mme

V Diagrammes de squence

Cration et destruction dun objet par message

V Diagrammes de squence

Un objet peut senvoyer des messages lui-mme : :NomClasse Message rflexif :A cration :B Message pointant sur lobjet cre

:Objet composite

:composant A

:Composant B

dtruire

X
X = Destruction de lobjet

2001-2002

Langage de modlisation UML - Frdric Julliard

Universit de Bretagne Sud

93

2001-2002

Langage de modlisation UML - Frdric Julliard

Universit de Bretagne Sud

94

Priode dactivit des objets :A activation :A

V Diagrammes de squence

Envoi conditionnel de message :A [Condition] message

V Diagrammes de squence

:B Msg synchrone

:B

:C

Retour implicite :A Priode dactivit :B Msg asynchrone [non Condition] message

Retour explicite
2001-2002 Langage de modlisation UML - Frdric Julliard Universit de Bretagne Sud 95 2001-2002 Langage de modlisation UML - Frdric Julliard Universit de Bretagne Sud 96

Contraintes temporelles appelant:Client

V Diagrammes de squence

Traitement conditionnel dun message reu :Abonn Retourner [bon tat]

V Diagrammes de squence

:ligne tlphonique

appel:Client

:livre

dcroche tonalit numrotation indication sonnerie sonnerie z {w-z<20s} w

x {y-x<10s} y

[mauvais tat]

dcroche

2001-2002

Langage de modlisation UML - Frdric Julliard

Universit de Bretagne Sud

97

2001-2002

Langage de modlisation UML - Frdric Julliard

Universit de Bretagne Sud

98

VI Diagrammes dtats-transitions

Diagramme dtats-transitions

Chapitre VI

Diagrammes dtats-transitions

dcrit le comportement des objets dune classe au moyen dun automate dtats associ la classe Le comportement est modlis par un graphe : Nuds = tats possibles des objets Arcs = transitions dtat tat. Une transition : = excution dune action = raction de lobjet sous leffet dune occurrence devt

2001-2002

Langage de modlisation UML - Frdric Julliard

Universit de Bretagne Sud

99

2001-2002

Langage de modlisation UML - Frdric Julliard

Universit de Bretagne Sud

100

VI Diagrammes dtats-transitions

VI Diagrammes dtats-transitions

Classe et automate

Notion dtat
un tat = tape dans le cycle de vie dun objet durant lequel il satisfait certaines conditions

Classe 0..1

Automate

il ralise certaines actions ou attend certains vnements chaque objets possde un instant donn un tat particulier

Certains objets ne possdent pas de comportement ractif : leur classe ne possde pas dautomate

chaque tat est identifi par un nom un tat est stable et durable

2001-2002

Langage de modlisation UML - Frdric Julliard

Universit de Bretagne Sud

101

2001-2002

Langage de modlisation UML - Frdric Julliard

Universit de Bretagne Sud

102

VI Diagrammes dtats-transitions

VI Diagrammes dtats-transitions

Notion dtat

Notion dtat
un tat = image de le conjonction instantane des valeurs des attributs dun objet + prsence ou non de ses liens dautres objets Exemple : prsence dun lien vers socit ou ge dune personne Laurent En activit A la retraite Au chmage Bruno : Socit Age=40 Alain Age=75
103 2001-2002 Langage de modlisation UML - Frdric Julliard

Socit 0..1 1..*

Personne

Au chmage En activit

A la retraite
Universit de Bretagne Sud 104

2001-2002

Langage de modlisation UML - Frdric Julliard

Universit de Bretagne Sud

VI Diagrammes dtats-transitions

VI Diagrammes dtats-transitions

Notion dtat
Chaque diagramme dtats-transitions comprend un tat initial. Pour un niveau hirarchique donn, il y a un et un seul tat initial, mais plusieurs tats finaux correspondant chacun une fin de vie de lobjet diffrente. Il est possible de navoir aucun tat final : ex : un systme que ne sarrte jamais. Etat intermdiaire

Notion de transition
Lorsque les vnements se produisent, les objets changent dtat en respectant les rgles dcrites par lautomate associ leur classe Les diagrammes dtats-transitions sont des graphes orients Les tats sont relis par des connexions unidirectionnelles appeles transitions Etat A Ex : classe Place de parking Disponible
Universit de Bretagne Sud 105 2001-2002

Etat B

Etat initial

Etat final

Rserve
Universit de Bretagne Sud 106

2001-2002

Langage de modlisation UML - Frdric Julliard

Langage de modlisation UML - Frdric Julliard

VI Diagrammes dtats-transitions

VI Diagrammes dtats-transitions

Notion dvnement
un vnement correspond loccurrence dune situation donne dans le domaine tudi un vnement est une information instantane qui doit tre traite dans linstant o il se produit lvnement est dclencheur de la transition dtat tat. Un objet, plac dans un tat donn, attend loccurrence dun vnement pour passer dans un autre tat vt Etat A Etat B

Notion dvnement
syntaxe dun vnement : Nom de lvnement (Nom de paramtre : Type, ) La description complte dun vt est donne par : nom de lvnement liste des paramtres objet expditeur objet destinataire sa description textuelle

2001-2002

Langage de modlisation UML - Frdric Julliard

Universit de Bretagne Sud

107

2001-2002

Langage de modlisation UML - Frdric Julliard

Universit de Bretagne Sud

108

VI Diagrammes dtats-transitions

VI Diagrammes dtats-transitions

Notion dvnement

Communication entre objets par venements


La communication est de type asynchrone, atomique et unidirectionnelle. Un objet peut envoyer un vnement un autre objet qui doit toujours tre mme de linterprter Un evt Un objet Embauche A la retraite Un autre objet

En activit Perte demploi

Plus de 60 ans

Au chmage Plus de 60 ans

Les besoins de communication par vnements synchrones ou les changes bidirectionnels peuvent se reprsenter au moyen de deux changes asynchrones de directions opposes Une question Un objet Un autre objet La rponse
109 2001-2002 Langage de modlisation UML - Frdric Julliard Universit de Bretagne Sud 110

2001-2002

Langage de modlisation UML - Frdric Julliard

Universit de Bretagne Sud

VI Diagrammes dtats-transitions

VI Diagrammes dtats-transitions

Communication entre objets par venements


Lobjet metteur de la requte se met en attente de la rponse de lobjet rcepteur de la requte A Question pose lobjet X Attente rponse Rponse reue de la part de lobjet X B

Notion de garde
Une garde est une condition boolenne qui permet ou non le dclenchement dune transition lors de loccurrence dun vnement Evt [condition] B

2001-2002

Langage de modlisation UML - Frdric Julliard

Universit de Bretagne Sud

111

2001-2002

Langage de modlisation UML - Frdric Julliard

Universit de Bretagne Sud

112

VI Diagrammes dtats-transitions

VI Diagrammes dtats-transitions

Communication entre objets par venements


Les gardes permettent de conserver la proprit de dterminisme dun automate dtats finis. Lorsquun occurrence dvnement survient, les gardes, qui doivent tre mutuellement exclusives, sont values. Le rsultat de cette valuation permet de valider puis de dclencher une transition possible Retour[bon tat] Emprunt Retour[mauvais tat]

Notion dopration et daction


Action et activits = le lien entre les oprations dfinies dans la spcification dune classe et les vnements apparaissant dans le diagramme dtats-transitions Chaque transition peut avoir une action excuter lorsquelle est dclenche Laction est considre comme instantane et atomique Une action correspond lexcution dune des oprations dclares dans la classe de lobjet destinataire de lvnement. vnement / Action A B Laction a accs aux paramtres de lvnement ainsi quaux attributs de lobjet sur lequel elle sapplique
113 2001-2002 Langage de modlisation UML - Frdric Julliard Universit de Bretagne Sud 114

Disponible
2001-2002

En rparation
Langage de modlisation UML - Frdric Julliard Universit de Bretagne Sud

VI Diagrammes dtats-transitions

VI Diagrammes dtats-transitions

Actions dans un tat


Les tats peuvent galement contenir des actions : elles sont excute lentre ou la sortie de ltat ou laction dentre (entry) est excute de manire instantane et atomique laction de sortie (exit) est excute la sortie de ltat lorsquune occurrence dvnement interne survient laction sur un vnement interne (on) est excute lors de loccurrence dun vnement qui ne conduit pas un autre tat
2001-2002 Langage de modlisation UML - Frdric Julliard Universit de Bretagne Sud 115

Actions dans un tat

Nom dun tat entry : action dentre on nom_vnement : action exit : action de sortie

2001-2002

Langage de modlisation UML - Frdric Julliard

Universit de Bretagne Sud

116

VI Diagrammes dtats-transitions

VI Diagrammes dtats-transitions

Oprations, actions et activits


un vnement interne nentrane pas lexcution des actions de sortie et dentre, contrairement au dclenchement dune transition rflexive E1 / Action A entry : action dentre on e1 : action exit : action de sortie B entry : action dentre exit : action de sortie

Oprations, actions et activits


Les actions correspondent des oprations dont la dure dexcution est ngligeable. Une opration qui prend un certain temps doit tre modlise travers un tat plutt que par une action Une telle opration est appele activit. Le mot cl do: indique une activit Contrairement aux actions, les activits peuvent tre interrompues tout moment, ds quune transition de sortie est dclenche

2001-2002

Langage de modlisation UML - Frdric Julliard

Universit de Bretagne Sud

117

2001-2002

Langage de modlisation UML - Frdric Julliard

Universit de Bretagne Sud

118

VI Diagrammes dtats-transitions

VI Diagrammes dtats-transitions

Oprations, actions et activits


Il existe deux formes dactivits : activit cyclique : qui ne sarrte que par le biais dune transition de sortie activit squentielle : qui dmarre lentre de ltat. Lorsquelle parvient son terme (autoterminaison), ltat peut tre quitt si lune des transition de sortie est franchissable. Cest une transition automatique, ventuellement protge par une garde

Oprations, actions et activits


Lorsquune activit se termine, les transitions automatiques (sans vnement), mais ventuellement protges par des gardes, sont dclenches A do : activit squentielle [X] [not X] B

A do : activit squentielle

B C
Universit de Bretagne Sud 120

2001-2002

Langage de modlisation UML - Frdric Julliard

Universit de Bretagne Sud

119

2001-2002

Langage de modlisation UML - Frdric Julliard

VI Diagrammes dtats-transitions

Point dexcution des oprations


6 manires dassocier une opration une transition : laction associe la transition dentre (op1) laction dentre de ltat (op2) lactivit dans ltat (op3) laction de sortie de ltat (op4) laction associe aux vnements internes (op5) laction associe la transition de la sortie de ltat (op6)
2001-2002 Langage de modlisation UML - Frdric Julliard Universit de Bretagne Sud 121

VI Diagrammes dtats-transitions Diagramme dtats-transitions du Distributeur Automatique de Boissons

/op1 Un tat Entry : op2 do : op3 exit : op4 on evt : op5 /op6
[montant = prix article]

Encaissement dargent do : augmenter le montant En attente


t ontan gler m t) / r n ta n o [Article vide] res(m s ins Pice

Article slectionn [montant < prix article]

Test darticle do : tester article et calculer la monnaie rendre


[montant > prix article]

Distribution do : distribuer article

Encaissement do : rendre monnaie

2001-2002

Langage de modlisation UML - Frdric Julliard

Universit de Bretagne Sud

122

VI Diagrammes dtats-transitions

VI Diagrammes dtats-transitions

Gnralisation dtats
Un tat peut tre dcompos en plusieurs soustats disjoints; les sous-tats hritent des caractristiques de leur super-tats Dcomposition disjonctive : lobjet doit tre dans un seul sous-tat la fois e1 AB B e2 C A e1 e2 C
2001-2002 Langage de modlisation UML - Frdric Julliard Universit de Bretagne Sud 123

Gnralisation dtats
Les transitions dentre ne sont pas hrites par tous les tats, seul un tat peut tre cible de la transition A

B B A B B1 B2

A e2

2001-2002

Langage de modlisation UML - Frdric Julliard

Universit de Bretagne Sud

124

VI Diagrammes dtats-transitions

VI Diagrammes dtats-transitions

Gnralisation dtats
Il est prfrable de limiter les liens entre niveaux hirarchiques dun automate en dfinissant systmatiquement un tat initial pour chaque niveau B

Gnralisation dtats
Exercice : Donner le diagramme dtat transition dune bote de vitesse 5 rapports + marche arrire

B1

B2

2001-2002

Langage de modlisation UML - Frdric Julliard

Universit de Bretagne Sud

125

2001-2002

Langage de modlisation UML - Frdric Julliard

Universit de Bretagne Sud

126

VI Diagrammes dtats-transitions

VI Diagrammes dtats-transitions

Agrgation dtats
Lagrgation dtats est la composition dun tat partir de plusieurs autres tats indpendants La composition est de type conjonctive ce qui implique que lobjet doit tre simultanment dans tous les tats composant lagrgation dtats. Forme de paralllisme entre automates S A C B1
Langage de modlisation UML - Frdric Julliard

Agrgation dtats
Exemple : activit dmission de billets

do : Distribuer billets Prparation do : jecter carte

Retour laccueil

B2
Universit de Bretagne Sud 127 2001-2002 Langage de modlisation UML - Frdric Julliard Universit de Bretagne Sud 128

2001-2002

VII Diagrammes dactivits

Introduction

Chapitre VII

Diagrammes dactivits

Variante des diagrammes dtats-transitions : ce diagramme met laccent sur les activits, leurs relations et leurs impacts sur les objets

E1 Activit do : activit Activit finie E2

2001-2002

Langage de modlisation UML - Frdric Julliard

Universit de Bretagne Sud

129

2001-2002

Langage de modlisation UML - Frdric Julliard

Universit de Bretagne Sud

130

VII Diagrammes dactivits

VII Diagrammes dactivits

Gardes
Les transitions entre activits peuvent tre gardes par des conditions boolennes, mutuellement exclusives. Les gardes sont les labels des transitions dont elles valident le dclenchement [trop froid] Mesurer la temprature

Gardes
Une condition peut tre matrialise par un losange dont sortent plusieurs transitions : Mesurer la temprature

[trop chaud] Refroidir

[trop froid] Chauffer

[trop chaud] Refroidir

Chauffer

2001-2002

Langage de modlisation UML - Frdric Julliard

Universit de Bretagne Sud

131

2001-2002

Langage de modlisation UML - Frdric Julliard

Universit de Bretagne Sud

132

VII Diagrammes dactivits

VII Diagrammes dactivits

Synchronisations
Les diagrammes dactivits reprsentent les synchronisations dactivits au moyen de barres de synchronisation Refroidir

Synchronisations
Les diagrammes dactivits reprsentent les synchronisations dactivits au moyen de barres de synchronisation Arrter le chauffage Arer

Arrter le chauffage

Arer Mesurer la temprature


Universit de Bretagne Sud 133 2001-2002 Langage de modlisation UML - Frdric Julliard Universit de Bretagne Sud 134

2001-2002

Langage de modlisation UML - Frdric Julliard

VII Diagrammes dactivits

VII Diagrammes dactivits

Diagramme dactivits
Les diagrammes dactivits peuvent tre dcoups en couloirs dactivits : rpartition des responsabilits au sein dun mcanisme logiciel : Enseignant Etudiant Jury Enseigner Apprendre

Synchronisations
Les diagrammes dactivits reprsentent les synchronisations dactivits au moyen de barres de synchronisation Arrter le chauffage Arer

Contrler les connaissances

Composer Mesurer la temprature


135 2001-2002 Langage de modlisation UML - Frdric Julliard Universit de Bretagne Sud 136

Evaluer
2001-2002 Langage de modlisation UML - Frdric Julliard Universit de Bretagne Sud

VII Diagrammes dactivits

VII Diagrammes dactivits

Objets dans un diagramme dactivits


Il est possible de faire apparatre des objets dans un diagramme dactivits, soit au sein dun couloir dactivit soit en dehors de ces couloirs Objet1 Objet2 Objetn

Objets dans un diagramme dactivits


Les diagrammes dactivits peuvent faire rfrence des tats et des vnements Ouvrir fentre ^Thermostat.DonnerUneConsigne Arer Objet j Consigne atteinte Fermer la fentre

Objet i
2001-2002 Langage de modlisation UML - Frdric Julliard Universit de Bretagne Sud 137 2001-2002 Langage de modlisation UML - Frdric Julliard Universit de Bretagne Sud 138

Das könnte Ihnen auch gefallen