Uml2

Preview:

DESCRIPTION

UML 2.0 : quoi de neuf, docteur ?

Citation preview

UML 2.0 :

quoi de neuf, docteur ?

Présentations

Intervenant : Pascal Roques

• Formateur et consultant senior chez Valtech Training

• Responsable de toute l’offre formation autour de la

modélisation avec UML

• Certifié par l’OMG :

OCUP Advanced

• Auteur de plusieurs ouvrages sur UML 2

chez Eyrolles…

Notre programme

1. Présentation générale d’UML 2.0

2. Modélisation statique : principales

nouveautés

3. Modélisation dynamique : principales

nouveautés

4. Conclusion

1. Présentation générale

d’UML 2.0

Historique d’UML

Booch'93 + OMT-2

UML 1.0

UML 0.9

UML 1.1

UML 1.5

Partenaires

UML

09/1997 : révision 1.1

11/1997 : adoption par l'OMG

03/2003 : révision 1.5

10/1994

10/1995

06/1996

01/1997 : soumission à l'OMG

Unified Method 0.8

Industrialisation

Standardisation

Unification

Fragmentation G. Booch

Booch-91

J. Rumbaugh

OMT-1

I. Jacobson

OOSE

http://www.uml.org/

03/2005

Critique d’UML 1.x :

Ce qui a été positif :

• Exister !! (répondre à un vrai besoin)

• …

• Plus de sémantique que dans les notations d’origine

• Des abstractions de plus haut niveau que ce qui est

disponible dans les langages OO Diagrammes d’états et d’activité

Support pour spécifier les interactions entre objets

Cas d’utilisation

• Extensibilité prévue dès le départ Stéréotypes, profils, etc.

Critique d’UML 1.x :

Ce qui a été négatif : • Manques pour modéliser certains aspects :

Systèmes complexes

Décomposition en sous-systèmes

Interactions hiérarchiques

Processus métier

Component-based development

• Sémantique pas toujours adéquate Distinction diagrammes d’activités / d’états ?

Héritage de diagrammes d’états

• Pas de capacité d’échange de diagrammes entre outils Limitations de XMI (XML Metadata Interchange)

Les diagrammes d’UML 2.0

UML 2.0 propose 13 types de diagrammes :

• Diagramme de cas d’utilisation

• Diagramme de classes

• Diagramme d’objets

• Package diagram

• Composite structure diagram

• Interaction overview diagram

• Diagramme de séquence

• Diagramme de communication

• Timing diagram

• Diagramme d’activité

• Diagramme d’états

• Diagramme de composants

• Diagramme de déploiement

New !?

New !

New !

New !

Modified !

Modified !

Modified !

2. Modélisation statique :

principales nouveautés

Classes et associations ne suffisent pas !

Limitations importantes !

• Associations au même niveau de décomposition

Associations dans un contexte !

Diagramme de structure composite

• Le contexte est aussi une classe !

Port

Les ports de communication

• Encapsulent l’extérieur pour l’intérieur !

• Peuvent supporter des interfaces multiples

• Sont reliés par des connecteurs

Composant

Un composant spécifie un contrat formel par

ses interfaces fournies et requises

• Classe structurée particulière !

id Component Model

Composant1

I2

Composant2

ComposantStructuré

Port1

Composant3 Composant4

I1

«delegate»

Déploiement

On ne déploie

plus des

composants,

mais des

artifacts

dd Deployment Model

Noeud1

Noeud2«artifact»

Artifact1

SousNoeud

«artifact»

Artifact2

Component Model::

Composant4

«artifact»

Artifact3

«deploy»«manifest»

3. Modélisation dynamique

: principales nouveautés

Sémantique plus précise

Meilleure définition des concepts de base

Meilleur séparation des types de diagrammes

Interactions

Plus de formes graphiques, enrichies

• Séquence Interaction frames

Opérateurs (loop, alt, opt, ref, par, etc.)

Gardes

Décomposition structurelle

• Communication Rien de nouveau…

• Interaction overview

• Timing

Compléments UML 2.0

Opérateurs :

• alt

• loop

• opt

• par

• …

Référence

d’un

diagramme

dans un autre

sd Exemple

Acteur1

X

alt exemple à deux branches

[C est vraie]

[C est fausse]

ref Autre interaction

demande

retour

message asynchrone

m1

m2

Interaction

Overview Diagram

Diagramme

d’activité

montrant des

flots entre

interactions

sd Interaction ov erv iew

ref

Sequence1

Decision

ref

Séquence2ref

Sequence3

Merge

sd Seq

:ClasseA :ClasseB

:ActeurHumain

Diagramme de temps : exemple

Changements d’états en fonction du temps

td Timing

Tim

eL

ine

1etat11

etat12ev 1

{10} {20}

Tim

eL

ine

2

etat21

etat22

etat23

ev 2

{20}

ev 3

{20}

Tim

eL

ine

3

e1 e2

{20}

e1

0 10 20 30 40 50 60 70 80 90 100

Diagramme d’activité

Le diagramme d’activité représente

les étapes d’une procédure

• Similaire au bon vieux « Flowchart »

(organigramme)

Les briques de base

• Actions

• Flots

• Décisions

• Début et fin(s)

Diagramme d’activité : compléments

Signaux

Fork / join

Partitions

ad Activ ity Diagram

Partition2

Partition1

RegionInterruptible

Action1

Action2

Activ ité3

FlowFinal

decision

Action4 AcceptEvent

SendSignalObjet1 :

Classe1

merge

Timer

ActivityFinalActivityFinal2

ActivityInitial

Interruption

[condition]

[else]

UML 2.0!

Machines à états : nouveautés

Modularité :

• entry point,

• exit point,

• submachine…

Redéfinition

4 : Conclusion

Conclusion

UML 2.0 est la première révision majeure

d’UML !

Mais UML 2.0 est bien plus complexe que

UML 1.x …

• UML™ 1.4 : 566 pages (avec OCL)

• UML™ 1.5 : 736 pages (avec les Actions)

• UML™ 2.0 (version d’octobre 2004)

Infrastructure: 199 pages

Superstructure: 804 pages

OCL 2 spec: 214 pages

Total: 1217 pages

Fin …

Merci de votre attention !

• Références : J. Rumbaugh, UML 2.0 – Guide de référence, 2004, CampusPress

P. Roques, UML 2 par la pratique, 4è ed., 2005, Eyrolles

C. Larman, UML 2 et les Design Patterns, 2005, Campus Press

• Sites web : http://www.uml.org/

http://sparxsystems.com.au/resources/uml2_tutorial/

http://www-128.ibm.com/developerworks/rational/rationaledge/

http://uml.developpez.com/

http://www.valtech-training.fr/

http://pascalrq.blogspot.com/

Recommended