Vous êtes sur la page 1sur 45

LO19

Tutorial Rotional Rose

Alexandre Penfornis
Thomas Derive

Quest ce que Rational Rose ?


Aujourdhui, la ralisation dun logiciel doit se faire dans des dlais de plus en plus
courts et doit permettre de pouvoir revenir dans le code pour effectuer diverses modifications
dans les plus brefs dlais pour rpondre la demande des testeurs ou encore la demande du
client utilisateur. Ce gain en temps et en modularit doit passer par une tape de
conceptualisation du logiciel, des objets et des relations entre les objets manipuls par le
programme. La gnration de code nest plus ltape essentielle, le code est un outil technique
permettant de rpondre aux besoins conceptuels. Ainsi UML (Unified Modeling Language)
est un outil qui permet aux concepteurs de logiciels de reprsenter les objets rpondant au
problme et les mthodes qui permettront la manipulation de ces objets. Rational Rose est un
outil de modlisation dapplication dit par la socit IBM. Il permet entre autre la
ralisation de diagrammes UML. Mais il permet galement de couvrir toutes les tapes de la
phase descendante du cycle en V de dveloppement dun programme jusqu ltape de
gnration automatique de code dans le langage souhait (C/C++, Visual Basic, Java, XML,
Application web etc).

A qui sadresse cet outil ?


Rational Rose sadresse aux concepteurs de logiciels principalement dans les tapes de
modlisation du besoin et du comportement de lapplication. Pour les tudiants utcens qui
suivent lunit de valeur de Gnie Logiciel LO19 (Walter Schn Jean-Louis Boulanger), cet
outil savre tre un outil intressant car il permet de raliser tous les types de diagrammes
vus en cours (Statecharts, Diagramme de classes, Use case, Diagrammes de collaboration,
Diagrammes de squence etc) et bien sur daller encore plus loin dans la comprhension du
gnie logiciel.

Remarque
Ce tutorial a t ralis dans le but premier daider les prochains tudiants en LO19
utiliser les outils fournis par Rational Rose dans le cadre de lUV. Les exemples prsents
dans les diffrentes parties ont ts choisis dans les transparents du cours afin de limiter les
efforts de comprhension des diagrammes en favorisant leur ralisation avec Rational Rose.

Bonne dcouverte !

Alexandre Penfornis
Thomas Derive

Sommaire

I.

DEMARRAGE DE RATIONAL ROSE ........................................................................ 3


A.

ENVIRONNEMENT DE TRAVAIL ........................................................................................ 3


i. Barre doutils ............................................................................................................. 4
ii. Navigateur................................................................................................................ 11
iii.
Fentre de description/documentation................................................................. 13
iv. Espace de dessin....................................................................................................... 14
v. Fentre derreurs ou fentre de Log ........................................................................ 15
B.
CONFIGURATION DE LESPACE DE TRAVAIL ................................................................... 16
II.

EXEMPLES DE REALISATIONS SIMPLES........................................................ 19

A.

DIAGRAMME DE CLASSES .............................................................................................. 19


Ajout dune classe .................................................................................................... 21
Paramtrages de la nouvelle classe .......................................................................... 22
Ajout dun attribut.................................................................................................... 23
Spcifications de lattribut ....................................................................................... 24
Ajout dune mthode................................................................................................ 25
Spcifications de lattribut ....................................................................................... 25
ii. Ajout dune relation ................................................................................................. 28
Mise en place dune association............................................................................... 28
Spcifications de lassociation ................................................................................. 28
Association rflexive................................................................................................ 29
Classe-Association ................................................................................................... 30
Qualification dune association................................................................................ 31
Agrgation................................................................................................................ 31
Composition ............................................................................................................. 32
Contraintes sur les associations................................................................................ 33
iii.
Gnralisation/Spcialisation .............................................................................. 34
B.
DIAGRAMME DE COLLABORATION ................................................................................. 34
C.
DIAGRAMME DE SEQUENCE ........................................................................................... 36
D. USE CASE (DIAGRAMME DE CAS DUTILISATION).......................................................... 39
E.
STATECHARTS ............................................................................................................... 39
i.

III.
A.
B.

IV.

OBSERVATIONS LIEES A NOTRE PROPRE UTILISATION ......................... 42


ASTUCES ET REMARQUES IMPORTANTES ....................................................................... 42
DEFAUTS OBSERVES ...................................................................................................... 43
LIEN ET DOCUMENT INTERESSANTS SUR RATIONAL ROSE .................. 44

Tutorial Rational Rose LO19

Alexandre Penfornis
Thomas Derive

I. Dmarrage de Rational Rose


Rational Rose Entreprise Edition propose une gamme importante doutils, celui utilis
en LO19 est loutil de modlisation (Modeler Edition).
Lors de son lancement, une fentre souvre pour demander lutilisateur quel ancien
projet il dsire ouvrir ou quel template il souhaite utiliser sil dmarre un nouveau projet.
Nous conseillons de cliquer sur Annuler afin de dmarrer un nouveau projet plus
personnalis.

a. Environnement de travail
Linterface utilisateur principale de Rational Rose se compose comme suit :

Barre doutils

Dessin des diagrammes


Navigateur

Description

Fentre derreur

On peut dcomposer la fentre principale en quatre parties. Une barre doutils qui
fournit les fonctions usuelles dun programme sous forme de boutons et de menus droulant.
Les boutons de la barre doutils donnent accs aux fonctions les plus couramment utilises par
les utilisateurs en gnral, nous verrons plus loin que cette barre est totalement paramtrable
selon les choix de lutilisateur. Les menus droulant donnent accs toutes les fonctions du
programme. La fentre derreur que lon peut considrer comme une bote de dialogue entre
lapplication et lutilisateur. Une bote de description des objets et un navigateur type
explorateur Windows permettant daccder facilement aux diffrents fichiers et diagrammes
composant le projet et de les organiser. Nous allons voir par la suite une description plus
dtaille de ces quatre parties.
Tutorial Rational Rose LO19

Alexandre Penfornis
Thomas Derive

i.

Barre doutils

La barre doutils est compose des menus droulant, une barre doutils gnrale
horizontale et une barre doutils spcifique au type de diagramme que lutilisateur est en train
de dessiner.
Barre de menus

La barre de menu est affiche en permanence, elle donne laccs toutes les fonctions
du logiciel. Ces fonctions sont grises ou actives selon les lments slectionns dans les
autres fentres.
o Le menu File propose les fonctionnalits habituelles
dun programme :

Les sous-menus sont les mmes que ceux que lon peut
trouver dans dautres logiciels comme un logiciel de traitement de
texte. Ils permettent par exemple douvrir un nouveau fichier ou
projet (New) ou un ancien fichier (Open). Les fonctions de
sauvegarde habituelles sont galement prsentes. Un seul fichier
.mdl contient toutes les donnes concernant un projet. La
commande AutoSave Log permet la copie des informations
contenues dans la fentre derreur dans un fichier part.
Lextension de ce fichier est .log.
Comme dhabitude, la commande exit de sortie du
programme est galement prsente dans le menu File. Loption
Edit Path Map permet de paramtrer manuellement les
rpertoires de travail.

o Le menu Edit comporte galement les fonctionnalits


usuelles (Copier/Coller) :
Ce menu permet de faire des copier/coller
couper/coller dun ou plusieurs lments dun diagramme par
exemple. Il est important de noter ici que lon ralise en fait un
duplicata exact de lobjet dorigine et quune modification
ultrieure dun des deux lments (lancien ou le nouveau)
sera effective sur les deux objets. Le sous-menu Change Into
permet de modifier les proprits principales de lobjet
slectionn. Par exemple lorsquil sagit dune classe, il est
possible grce cette action de la modifier en classe instancie
ou en classe paramtre (laffichage est alors diffrent).

Tutorial Rational Rose LO19

Alexandre Penfornis
Thomas Derive
o Le menu View permet de spcifier les zones que lon
souhaite afficher

Ce menu permet dabord de dfinir quelles parties de


lespace de travail lutilisateur souhaite afficher. Laffichage des
deux barres doutils se rgle dans le sous-menu Toolbars. On voit
sur la figure ci-contre que lorsquune partie est visible un signe de
coche est situ devant (par exemple, ici la Fentre derreur (Log)
est marque comme affiche. On note la prsence dans ce sousmenu des options de zoom et dzoom trs utiles lors de dessin de
diagrammes dpassant la taille de lcran de lutilisateur. Le
dernier bloc de fonction de ce menu permet de modifier les
conventions daffichage des diagrammes (par dfaut les
convention sont celles dUML).
Par exemple laffichage de classe en OMT sera diffrent
de celui en Booch.
Classe OMT

Classe Booch

o Le menu Format permet de rgler les paramtres


daffichage

Il permet par exemple de changer la police utilise pour la


dnomination des classes. Ou encore de changer la couleur de fond
et les lignes de contours dune classe particulire afin de la mettre en
valeur. Pour augmenter la lisibilit de certains diagramme il est
intressant de ne pas visualiser les attributs et/ou les oprations
associs une classe ou lautre, on peut donc les cacher grce aux
options Supress Attibutes et Suppress Operations.

o Le menu Browse permet de naviguer dans le projet


mais reste moins pratique que le navigateur
Ce menu permet par exemple de slectionner quel type de
diagramme on veut afficher dans la fentre de dessin. Su r limage
ci-contre on voit que Class Diagram est coch, ce qui indique
que le diagramme actuellement lcran dans la fentre
principale est un diagramme de classes. Si on veut crer le
diagramme de squence ou de collaboration li ce diagramme
Tutorial Rational Rose LO19

Alexandre Penfornis
Thomas Derive
de classes, on pourra slectionner Interraction Diagram, pour le diagramme dactivit ou
le statecharts, on pourra slectionner State Machine Diagram. Enfin on peut noter la
possibilit dans ce menu douvrir la fentre de spcification de lobjet en cours (nous verrons
plus long que le clic droit ou encore le double clic sur lobjet en question semblent plus
appropris.
o Le menu Report permet davoir des informations sur les
classes et leur utilisation dans tout un projet
Show Usage permet de lister tous les endroits o lobjet
slectionn est impliqu dans une relation. Show Instances
montre toutes les instances dun objet dans les diffrents
diagrammes. Show Access Violation dtermine sil na pas t
fait appel une classe dun autre projet sans importer sa dfinition et enfin Show
Participants in UC liste tous les participants dun Use Case en donnant par exemple les
oprations ralises par cet objet.
o Le menu Query permet de paramtrer quels lments
doivent tre visibles ou non dans le diagramme courant
Loptions que lon trouve particulirement intressante ici est
celle qui permet de filtrer les relations entre classes. Si lon
veut faire disparatre toutes les relations de type gnralisation
spcialisation pour ne garder que les associations, on peut
facilement les faire disparatre en slectionnant Filter
Relationships.
o Le menus Tools offre de nombreux outils notamment
pour la gnration de code
Nous navons prsent ici que le haut du menu Tools pour des
raison de commodit. Les fonctions que nous ne montrons pas sont
rserves la gnration de code ou aux fonctions de reverse engineering
offertes par Rational Rose. Loutil Create permet de placer sur le
diagramme le type dobjet que lon souhaite crer. On slectionne par
exemple Text dans le sous menu Create et une flche verticale apparat
pour permettre lutilisateur de spcifier lendroit o il souhaite placer
une zone de texte dans son diagramme. Check Model permet dutiliser
loutil de vrification de Rational Rose. Les incohrences du modle sont
alors spcifies dans le Log (fentre derreur). On peut galement noter la
prsence de loutils Options qui permet de grer tous les principaux
paramtres de la modlisation (police de caractres, options de
sauvegarde, visualisation des diagrammes, paramtre du navigateur etc).
o Le menu Window permet de grer la disposition des
fentres
Chaque fentre ouverte reste ouverte tant quelle na
pas t ferme. Lutilisateur peut utiliser ce menu pour passer
dune fentre lautre ou encore slectionner la fonction Tile
pour les voir toute simultanment lcran.
Tutorial Rational Rose LO19

Alexandre Penfornis
Thomas Derive
o Enfin le menu Help permet daccder laide de
Rational Rose mais aussi laide en ligne et aux
communauts dutilisateurs de Rational Rose. Enfin le
menu Help permet de visualiser les caractristique de la
version de Rational Rose de lutilisateur.
Barre doutils standard horizontale
Pour afficher ou non cette barre doutils, on peut utiliser le menu View>Toolbars>Standard

Un clic droit sur cette barre affiche le menu suivant :


Activer ou dsactiver Allow Docking permet dautoriser ou non la
fusion de la barre doutils standard avec les bords de la fentre.
Use Large Buttons permet dafficher les boutons avec des grandes
icnes. Enfin Customize permet de choisir quelle fonction
lutilisateur souhaite pourvoir appeler directement avec cette barre
doutils. Le tableau suivant dcrit toutes les fonctions que lon peut ventuellement appeler
laide de cette barre doutil.
Bouton

Nom
Create New Model or File
Open Existing Model or
File

Save Model File or Script

Cut
Copy
Paste
Print
Context sensitive help
View Documentation
Browse Class Diagram
Tutorial Rational Rose LO19

Fonction
Crer un nouveau modle / Reviens lcran de
dmarrage de Rational Rose
Ouvre une fentre qui permet de naviguer dans
lordinateur la recherche dun fichier existant
.mdl ou .ptl
Sauvegarde les modifications / si premier appel
demande lutilisateur de spcifier un nom pour
le fichier contenant le modle et un emplacement
dans lordinateur
Coupe llment slectionn et le met dans le
presse-papier.
Copie llments slectionn et le met dans le
presse-papier.
Colle llments contenu dans le presse papier.
Lance limpression de la fentre de diagramme en
cours.
Permet de pointer un lment dont on dsire
obtenir laide
Permet dafficher la documentation sur l lment
slectionn.
Ouvre une fentre rpertoriant tous les
diagrammes de classe du modle afin de choisir
7

Alexandre Penfornis
Thomas Derive
celui que lutilisateur souhaite afficher.
Ouvre une fentre rpertoriant tous les
Browse Interaction Diagram diagrammes dinteraction du modle afin de
choisir celui que lutilisateur souhaite afficher.
Ouvre une fentre rpertoriant tous les
Browse Component
diagrammes de composition du modle afin de
Diagram
choisir celui que lutilisateur souhaite afficher.
Ouvre une fentre rpertoriant tous les statecharts
Browse State machine
du modle afin de choisir celui que lutilisateur
Diagram
souhaite afficher.
Ouvre une fentre rpertoriant tous les
diagrammes de dploiement dapplication du
Browse Deployement
modle afin de choisir celui que lutilisateur
Diagram
souhaite afficher.
Browse Previous Diagram

Recherche le diagramme prcdemment affich

Zoom In / Zoom out

Fonctions de zoom classique

Fit in window

Adapte affichage la fentre

Undo Fit in window


Help Topics

Inverse action prcdente


Affiche lindex daide de Rational Rose

Ouvre une fentre rpertoriant tous les Use Case


Browse Use Case Diagram du modle afin de choisir celui que lutilisateur
souhaite afficher.
Barre doutils verticale
Cette barre doutils est spcifique au diagramme que lutilisateur est en train de raliser.
Dans le cas dun Use Case, les boutons qui nous ont parus les plus intressants sont les
suivants.
Bouton

Nom
Selection tool
Text Box
Note
Anchor note to item
Package

Tutorial Rational Rose LO19

Fonction
Lorsque ce bouton est appuy, lobjet sur lequel
on clique est alors slectionn
Permet dajouter une zone de texte dans un
diagramme
Permet dajouter un commentaire ou une
explication sous forme dun post-it
Relie un commentaire lobjet quil dcrit
Pour ajouter un projet complet dans un modle.
8

Alexandre Penfornis
Thomas Derive
Use Case
Actor

Pour ajouter un cas dutilisation


Pour ajouter une class de strotype Acteur

Association unidirectionnelle entre deux entits


dun diagramme
Pour marquer une dpendance fonctionnelle entre
Dependency or instantiates
deux objets
Unidirectional association

Generalization
Class
Parametrized Class
Class Utility
Parametrized Class Utility

Pour marque un hritage (gnralisation)


Pour ajouter une classe.
Pour ajouter une classe paramtre.
Pour ajouter une classe fournissant des oprations
aux autres classes.
Pour ajouter une classe fournissant des oprations
aux autres classes paramtres

Association

Pour crer une association entre deux classes.

Aggregation

Pour donner la prdominance dune classe par


rapport lautre on ralise une agrgation.

Unidirectional aggregation Agrgation unidirectionnelle.


Association Class

Lock Selection

Pour crer une classe association. On utilise cet


outil entre une association prexistante et la classe
que lon veut dfinir comme classe association.
Lorsque ce bouton est enfonc, on peut rpter la
mise en place de lobjet slectionn sans avoir le
reslectionner dans la barre doutil. Cet outil est
utile par exemple lorsquon a mis en place nos
classes et que lon souhaite placer les associations
les unes aprs les autres.

Les boutons proposs par Rational Rose pour la ralisation dun diagramme de classes sont
sensiblement les mmes. Dans le cas dun diagramme de collaboration des boutons
spcifiques sont la disposition de lutilisateur.
Bouton

Nom
Class Instance
Object Link

Fonction
Instance de classe
Lien entre deux objet diffrents

Link to himself

Lien dun objet sur lui-mme

Link Message

Envoi message entre deux objets le long dun lien


(droite vers gauche bas vers haut)

Tutorial Rational Rose LO19

Alexandre Penfornis
Thomas Derive
Reverse Link Message
Data Token
Reverse Data Token

Envoi message entre deux objets le long dun lien


(gauche vers droite haut vers bas)
Echange de donnes dans un message obtenu par
link message
Echange de donnes dans un message obtenu par
reverse link message

Pour un diagramme de squence, les boutons ont encore des fonctionnalits diffrentes :
Bouton

Nom
Object

Fonction
Ajout dun objet dans le diagramme de squence

Object Message

Echange de message entre deux objet

Message to self

Envoie dun message dun objet lui-mme

Return Message

Retour de message

Destruction Marker
Processus Call
Asynchonous Message

Destruction dun objet


Appel de procdure
Envoi dun message asynchrone

Le tableau suivant prsente les boutons de cration de statecharts :


Bouton

Nom
State

Fonction
Reprsentation dun tat

Start State

Entre dans une tat

End State

Sortie dun tat

State transition
Transition to self
Decision
Horizontal
Synchronization
Vertical Synchronization

Tutorial Rational Rose LO19

Transition entre deux tats


Transition dun tat sur lui-mme
Prise de dcision (OUI/NON) = IF THEN IF NOT
THEN
Synchronisation horizontale (pour dlimiter des
tats qui doivent tre termin avant de passer la
transition
"

"

"

10

Alexandre Penfornis
Thomas Derive
Nous avons dsormais notre disposition tous les principaux outils de ralisation des
diffrents diagramme possible sous Rational Rose.
Une autre partie de lcran trs pratique est le navigateur (Browser) qui permet de se dplacer
rapidement dans un projet complet.

ii.

Navigateur

Lutilisateur peut dplacer le navigateur (dragn drop) et le placer sa convenance


dans son cran sous forme dune petite fentre spare de la fentre principale ou encore le
faire fusionner avec le bord droit ou gauche de la fentre principale. Par dfaut, le navigateur
est fusionn et plac gauche de lespace de travail.
On peut le faire apparatre ou disparatre avec la commande : View>Browser.

Nom du
modle/projet/package

Attributs et mthodes dune


classe
Elments du modle
logique : clasees / associations

Dvelopper (clic sur +) ou


ranger (clic sur -)

NAVIGATEUR

Le navigateur est une reprsentation hirarchique du modle. Chaque nouvel lment


du modle (classe, acteur, diagramme, use case) est ajout dans le navigateur.

Tutorial Rational Rose LO19

11

Alexandre Penfornis
Thomas Derive
Le navigateur permet :
-

dajouter un lments au modle


douvrir et de visualiser un lment existant du modle
de visualiser les relations entre les objets
de dplacer facilement un lments
de renommer les lments
etc

Les lments sont regroups dans des rpertoires selon leur place dans le modle.
Use Case View

Logical View

Component View

Deployement View

Business actors

Classes

Components

Processes

Business workers

Class diagrams

Interfaces

Processors

Business Use cases

Associations

Component diagrams

Connectors

Interfaces

Packages

Devices

Business Use Case


Diagrams
Business Use Case
realizations

Sequence diagrams

Actors

Collaboration
diagrams

Use cases

Statecharts

Associations

Packages

Deployment diagram

Use case
documentation
Use case Diagrams
Acitvity diagrams
Sequence diagrams
Collaboration
diagrams
Packages

Tutorial Rational Rose LO19

12

Alexandre Penfornis
Thomas Derive
Clic droit sur le nom du projet :

Open permet douvrir une nouveau projet.


Save et Save As pour sauvegarder le projet en cours.
Write Protect NomDuProjet permet de verrouiller le
projet pour viter des mauvaises manipulations pendant
une prsentation par exemple.
QualityArchitect pour ouvrir des templates.

Clic droit sur Use Case View :

Open Spcificationpermet de rgler les proprits


gnrales des Use Case.

New permet dajouter une des lments list dans le


tableau prcdent.

Clic droit sur un diagramme (Main) :

Open affiche le diagramme dans lespace de travail.


Print permet dimprimer le diagramme sur lequel on a cliqu.
New permet de lier un fichier ou une URL.
Set as Default Diagram est coch quand le diagramme est
dfini comme diagramme principal.

Le clic droit sur les autres lments du navigateur (classes, associations, attributs, mthodes)
permet douvrir les spcifications (Open Specifications), de renommer, de dterminer
laccs (Private, protected, public etc) et les proprits spcifiques aux lments ainsi
slectionns.

iii.

Fentre de description/documentation

Pour afficher, faire disparatre cette fentre, on peut utiliser le menu View>Documentation.

Tutorial Rational Rose LO19

13

Alexandre Penfornis
Thomas Derive
Le fentre de description documentation est intressante pour donner des prcisions
sur les diffrents objets qui composent le modle.

Objet slectionn

Descriptif associ lobjet


slectionn

Pour chaque objet ou peut rdiger quelques lignes de documentation qui aident
prciser une ide passe par le concepteur afin dagrmenter la comprhension de son modle
par un lecteur tiers. Avec la mme technique (Drag n Drop = faire glisser) que pour les autres
partie de lespace de travail, la fentre de documentation peut tre dplace la guise de
lutilisateur, soit sous forme de fentre spare soit fusionne avec le bord de la fentre
principale et place en haut, en bas, droite ou encore gauche de lcran. Par dfaut, cette
fentre est visible sous le navigateur (Browser).

iv.

Espace de dessin

Lespace de dessin appele Diagram Window est la fentre de base de lespace de


travail. Elle est toujours visible et reprsente le plan de travail du concepteur du modle.

Tutorial Rational Rose LO19

14

Alexandre Penfornis
Thomas Derive
Toutes les fentres en cours (une fentre correspond un diagramme), souvre dans cette zone
de lcran. Nous avons dj vu que lon pouvait dfinir laffichage de ces fentres en
mosaque ou comme ici les unes ct des autres (option Window>Tile).

v.

Fentre derreurs ou fentre de Log

Pour afficher ou non la fentre de Log, nous pouvons utiliser la commande Log du menu
View.

Certaines informations sont envoyes dans la fentre de Log lors de lutilisation de


Rational Rose, notamment lors de son lancement et de linitialisation des paramtres mais
aussi lors de la gnration de code ou lors de tests de vrification du modle. Toutes les
erreurs seront par exemple affiches dans cette partie de lcran.

Il est galement possible denregistrer ces informations dans un fichier spcifique .log.

Les commandes File>Save Log As et File>AutoSave Log sont les deux principales
commandes permettant denregistrer le fichier .log. Le nom par dfaut de ce fichier est
error.log car il est principalement utilis pour plucher les erreurs gnres dans le code.
Enfin une fonction File>Clear Log permet deffacer les information contenues dans le Log
jusqualors.

Tutorial Rational Rose LO19

15

Alexandre Penfornis
Thomas Derive

b. Configuration de lespace de travail


Lavantage de la ralisation dun modle laide dun logiciel tel que Rational Rose
est le gain de temps que cela induit dans le cycle de vie du logiciel. Ainsi on comprend bien
quoptimiser le temps passer derrire Rational Rose sera galement un critre important. Cest
pourquoi il convient de configurer au mieux son environnement de travail et de ladapter sa
ralisation. Chaque modle demandera une configuration particulire. La configuration par
dfaut de Rational Rose est telle quelle est adapte la plupart des ralisation. Nous
conseillons tout de mme vivement tout nouvel utilisateur de commencer par se familiariser
avec cet environnement et de le configurer sa convenance. Rational Rose tant extrmement
complet, il est intressant de se donner un accs rapide aux seules fonctions que on est amen
utiliser tout en masquant du mieux possible les options de moindre utilit.
Il est intressant dabord selon la taille de lcran de lordinateur sur lequel Rational
Rose est utilis de dfinir quelles fentres parmi celles dcrites dans la partie prcdente
seront toujours visibles. Selon notre utilisation personnelle dans le cadre de lUV LO19, nous
conseillons de garder le configuration par dfaut que Rational Rose propose ou
ventuellement de supprimer laffichage de la fentre de Log (View>Log).
Ensuite il savre important avant de crer un diagramme de configurer la barre doutils avec
les boutons les plus ncessaires notre besoin. Ici nous prendrons lexemple de la ralisation
dun diagramme de classes mais la dmarche est la mme pour un autre type de diagramme.

Pour configurer la barre doutils soit mme, faire un clic droit sur la
barre doutils en question et slectionner Customize pour ouvrir
la fentre de configuration..

Tutorial Rational Rose LO19

16

Alexandre Penfornis
Thomas Derive

Pour enlever le bouton Creates a


package qui ne nous semble pas utile
pour notre modle, on slectionne
alors Creates a package dans la partie
de droite. Le bouton Supprimer
devient alors actif.

On peut alors cliquer sur Supprimer


et le bouton passe dans la patrie de
gauche (Boutons Disponibles).

Pour ajouter le bouton Create an


association relationship, on le
slection dans la liste des boutons
disponibles et on clique sur ajoute, il
passe alors dans la liste des boutons
de la barre doutils.

On peut aussi utiliser les boutons Monter et Descendre pour positionner les diffrents
boutons de notre barre doutils dans lordre que lon souhaite. Lutilisation de sparateur pour
aussi tre un facteur de clart.
Tutorial Rational Rose LO19

17

Alexandre Penfornis
Thomas Derive
On peut ensuite jouer sur la position de la barre doutils comme nous lavons vu dans la partie
prcdente. Il suffit simplement de faire glisser la barre doutils vers la zone de lcran o lon
souhaite la voir sattacher.
Une fois les outils mis porte de main, on peut configurer les options gnrales du
programme afin doptimiser le rendu du modle mais aussi lefficacit de la conception.
Tools>Options

La fentre de configuration gnrale des options souvre alors. NB : Le nombre de paramtres


tant trs important, nous ne nous contenterons ici de ne prsenter que ceux qui nous on parut
les plus intressants. Pour les autres, les configurations sont souvent assez intuitives et
lutilisateur naura gure de mal les raliser tout seul.

Tutorial Rational Rose LO19

18

Alexandre Penfornis
Thomas Derive
1/ Paramtres de Sauvegardes :
Il est recommand de mettre en place une sauvegarde automatique dans
un intervalle de temps assez restreint pour ne pas avoir perdu un temps
prcieux lors dune erreur de manipulation ou dune dfaillance du
matriel.
Quand cette case est coche, Rational Rose cr une copie de tous les
fichiers qui sont ouverts au cours dune sance de travail.
Enfin cette option permet de sauvegarder automatiquement chaque
fermeture du programme. Cette options est un peu dangereuse lorsquon
est habitu dautres logiciel qui demandent si lon souhaite sauvegarder les changements au
moment de quitter.
2/ Paramtrage des polices :
Ces options permettent de rgler les formats de police que lon souhaite utiliser, par
dfaut, pour la fentre de documentation et pour la fentre de Log.
3/ Paramtres de couleurs par dfaut :
Permet de configurer le rendu visuel des objets que lon place sur les diagrammes
notamment couleur de fond et couleur des traits de dlimitation.
4/ Autres Onglets :
Les autres onglets permettent daccder des rglages plus spcifique notamment en
rapport avec la gnration de code automatique. On peut remarquer que longlet Toolbars
permet daccder une rubrique de configuration de toutes les barres doutils (Customize)
(voir le dbut de cette partie).

Une fois lespace de travail bien prpar, bien configur et adapt au besoin du concepteur du
modle, nous allons voir comment raliser les principaux types de diagrammes laide
dexemples simples.
.

II. Exemples de ralisations simples


Nous nallons pas voir dans cette partie comment raliser un projet complet, mais nous
allons donner les outils ncessaire la ralisation dun modle complet avec les principaux
types de diagrammes ralisable avec Rational Rose.

a. Diagramme de classes
Un diagramme de classes mets en jeu les objets utilis par la future application avec
leurs caractristiques (attributs) et leurs comportements (mthodes). Le diagramme de classes
donne une ide sur les relations entre les objets : peuvent-ils communiquer entre eux ?
Certains son-ils dpendants des autres ? Tous sont-ils directement utiliss par lapplication ?
etc
Tutorial Rational Rose LO19

19

Alexandre Penfornis
Thomas Derive
Dans loutil Rational Rose, les diagrammes de classe
sont crs dans le rpertoire Logical View du navigateur.
On peut bien sr crer plusieurs diagrammes de classe dans un
mme modle. Pourtant ds la cration dun nouveau modle,
Rational Rose cr automatiquement un diagramme de classes
principal (Main) qui est amen contenir tous les packages de
diagramme de classes dfinis en-dessous. Si vous pensez ne
raliser quun seul diagramme, pour un modle modeste, il
faudra spcifier ce diagramme dans le Main.

Main

Pour ajouter un nouveau diagramme de classes, fates un clic droit sur Logical View puis
choisissez New et Class Diagram.

Un nouvel lment saffiche alors dans la liste Logical View, son nom est en surbrillance,
lutilisateur peut alors donner le nom de son choix son diagramme.

Icne caractristique dun


diagramme de classe

Entrer un nom
au diagramme

Une fois le nouveau nom entr, le diagramme ainsi cr peut tre ouvert par un double-clic.
Remarque :
Pour supprimer un diagramme il suffit de faire un clic droit dessus dans le navigateur
puis de slectionne Delete dans le menu droulant.

Tutorial Rational Rose LO19

20

Alexandre Penfornis
Thomas Derive

i.

Ajout dune classe

Pour ajouter une classe dans un diagramme de classes, il y a deux mthodes :


1- Utilisation du menu Tools :
a. Cliquer sur Tools

b. Slectionner Create

c. Choisir lobjet Class

d. Cliquer sur Class


2- Utilisation de la barre doutil :
Si le bouton correspondant lajout dune classe nest pas prsent dans la barre doutil, il peut
tre ajout laide de la mthode vue prcdemment. Cliquez alors sur ce bouton.

Cliquer ici pour ajouter une classe.

Une fois lobjet slectionn, le curseur de la souris devient un signe +.


Tutorial Rational Rose LO19

21

Alexandre Penfornis
Thomas Derive
Lutilisateur peut alors placer la nouvelle classe dans le diagramme par un simple clic sur
lemplacement souhaiter. Comme pour tout nouvel objet gnr, son nom apparat en
surbrillance, lutilisateur peut alors le choisir sa convenance.
Lutilisateur entre le
nom de la classe.

Par dfaut une classe ne contient aucune mthode et aucun attribut.

Paramtrages de la nouvelle classe


Un clic droit sur la nouvelle classe cre permet dafficher le menu suivant :
Ouvre la fentre de
configuration de la classe

Permet la cration de
sous diagramme
(Statecharts ou Activit)

Pour ajouter directement


un attribut la classe

Pour ajouter une mthodes


la classe

Slectionne la classe dans


le navigateur

Paramtres daffichage
dont redimension
automatique

Edition de la classe

Utilisation de modles

Cliquer sur Open Spcification (un double clic sur la classe permet aussi douvrir
directement les spcifications de la classe).
La fentre de spcification permet de paramtrer compltement la classe, comme par
exemple de lui ajouter un attribut mais aussi daccder aux paramtres de ses attributs. Les
diffrents onglets permette de parcourir ces spcifications.
Longlet General permet daccder aux caractristiques gnrales de la classe :
-

Name : nom de la classe


Parent : Rpertoire parent dans le navigateur
Type : Type dobjet, on peut modifier le type si lon prfre spcifier cette classe
comme une Mtaclasse par exemple
Strotype : Certaines classes ayant des comportements spcifiques peuvent tre
strotypes dans Rational Rose, par exemple une classe reprsentant une personne
agissant dans le modle peut tre strotype comme Actor.
Export Control : permet de dfinir les droits daccs cette classe (Public / Protected
/ Private / Implementation)

Tutorial Rational Rose LO19

22

Alexandre Penfornis
Thomas Derive
-

Documentation : fournit une zone de texte qui permet de donner des explications et
des prcision sur le comportement et lutilisation de la classe

Accessibilit de
la classe

Ajout dun attribut

1 Cliquer sur Attributes

2 Clic droit Affichage menu

3 Cliquer sur Insert

Tutorial Rational Rose LO19

23

Alexandre Penfornis
Thomas Derive

Un oprateur apparat dans la liste


avec son nom en surbrillance,
lutilisateur peut donner un nom
sa convenance.

Spcifications de lattribut
Un double clic sur lattribut ainsi cr permet douvrir ses spcifications.

Name : Nom de lattribut


Class : Classe associe
Type : Type de lattribut
Strotype : pas de strotype
pour les attributs
Initial value : valeur initiale de
lattribut
Export Control : control
daccs lattribut (par dfaut :
private)
Documentation : prcisions
concernant lattribut

Un clic sur longlet Detail permet daccder au mode de mise en mmoire de la variable et au
passage de paramtre (par valeur, ou par rfrence). Par dfaut rien nest spcifi. Selon les
spcifications, laffichage dans le diagramme est diffrent. Nous avons reprsent quelques
possibilits de dfinition dattribut : un attribut priv non typ, un attribut typ de type
boolean initialis TRUE et une attribut public.

Tutorial Rational Rose LO19

24

Alexandre Penfornis
Thomas Derive

Ajout dune mthode


Le principe pour lajout dune mthode est le mme que pour lajout dun attribut.

1 Cliquer sur Oprations

2 Clic droitAffichage Menu

3 Cliquer sur Insert

Puis comme pour un attribut on peut double-cliquer sur la mthode pour ouvrir ses
spcifications. Les principaux paramtres tant les mmes que ceux des attributs, non ne nous
intresserons quaux spcificits des mthodes.

Spcifications de lattribut
Par dfaut les mthodes sont dclares comme publiques.

Tutorial Rational Rose LO19

25

Alexandre Penfornis
Thomas Derive
Le champs Type des attributs est remplac par Returned Type qui correspond au type de la
valeur renvoye par la mthode.
Pour dclarer une mthode avec un argument :
1 Cliquer sur Detail

2 Clic droit Menu

3 Cliquer sur Insert

Lutilisateur rentre le nom de son argument et double-clique pour ouvrir ses spcifications.

Tutorial Rational Rose LO19

Name : Nom de largument


Owner : mthode dont largument
est le paramtre
Type : type de largument (ici Byte)
Default : valeur de largument
initialement

26

Alexandre Penfornis
Thomas Derive

Par dfaut, les arguments ne sont pas visibles. On peut les rendre visible avec loption Show
Operation Signature.

Pour effacer une classe dun diagramme, un simple clic droit puis Edit>Delete suffit.
Par contre la classe reste prsente dans le modle. Pour la supprimer dfinitivement du
modle il faut slectionner Edit>Delete From Model (Ctrl + D).
Nous avons maintenant les principaux outils permettant de crer des classes, nous
allons voir comment crer des relations entre ces classes.
Tutorial Rational Rose LO19

27

Alexandre Penfornis
Thomas Derive

ii.

Ajout dune relation

De nombreux types de relations peuvent associer deux lments dun diagramme de classes.
Nous traitons ici les plus courants.

Mise en place dune association


Cliquer sur le bouton association

Le curseur de la souris devient une flche vertical, point une des classes extrmit de
lassociation, puis cliquer et laisser le bouton appuy pour diriger le trait pointill vers la
classe qui reprsente lautre extrmit.

Relcher le bouton de la souris. Lassociation est alors matrialise.

Spcifications de lassociation
On peut ouvrir les spcification dune association soit par un clic droit puis Open
Spcification soit par un double-clic sur lassociation.

Longlet General permet de :

Tutorial Rational Rose LO19

donner un nom (habite) lassociation


(gnralement indicatif de la relation
entre les deux classes)

prciser le rle de A (Personne) et le


rle de B (Maison)

28

Alexandre Penfornis
Thomas Derive
Les onglets Rle A General et Rle B Gnral permettent de dfinir laccs aux extrmits de
lassociation (Private / Protected / Public / Implementation).

Longlet Rle X Detail permet notamment de :


-

donner le rle de X

dfinir la multiplicit de X
(0 / 0..1 / 0..n / 1 / 1..n / n)

Association rflexive
Rational Rose permet de raliser des associations rflexives (dune classe vers elle-mme).
1 Affichage manuel :
CLIC
CLIC

CLIC
Tutorial Rational Rose LO19

CLIC
29

Alexandre Penfornis
Thomas Derive
2 Affichage automatique :
CLIC

CLIC

Classe-Association
Rational Rose permet de crer des classes-associations.
1 on commence par crer une association simple

2 on cr la classe qui formera la classe association

3 on slectionne loprateur Association-Class

4 on relie lassociation la classe

Tutorial Rational Rose LO19

30

Alexandre Penfornis
Thomas Derive

Qualification dune association


1 Crer association simple

2 Ouvrir les spcification de lassociation et accder aux paramtres de lextrmit qualifie

1 - Clic droit
2 - Clic sur Insert

3 Ajouter les qualifications

Agrgation
1 Slectionner loutil dagrgation dans la barre doutils

Tutorial Rational Rose LO19

31

Alexandre Penfornis
Thomas Derive
2 partir de lagrg et aller vers lagrgat

3 relcher le bouton de la souris pour matrialiser lagrgation

4 les spcifications sont les mme que pour une association classique

Composition
1 Crer une agrgation

2 ouvrir les spcification de lagrgation et aller voir les paramtres dtaills du composite

Slectionner by Value dans


Containment of composant

Tutorial Rational Rose LO19

32

Alexandre Penfornis
Thomas Derive
ATTENTION : Rational Rose ne teste pas les cardinalits dans le cas dune composition !!!
Si dans lexemple prcdent Molcule avait une cardinalit en 1..n il aurait accept la
composition qui aurait pourtant t errone.

Contraintes sur les associations


1 Ouvrir les spcifications de lassociation
2 Aller voir les paramtres de lextrmit que lon souhaite contraindre
3 Dcrire les contraintes dans le cadre rserv (Constraints)

4 Cliquer sur OK

Tutorial Rational Rose LO19

33

Alexandre Penfornis
Thomas Derive

iii.

Gnralisation/Spcialisation

Rational Rose permet dappliquer la gnralisation-spcialisation dans un diagramme


de classes.

Loutil est loprateur Generalization.

Les outils ncessaires la ralisation dun diagramme de classes sous Rational Rose
viennent dtre dcrits assez prcisment. Pour les autres diagrammes, les grands principes
sont les mmes, nous ne prsenterons que les actions spcifiques la ralisation de chaque
type de diagramme.

b. Diagramme de collaboration
Un diagramme de collaboration met en vidence les changes de messages entre les
objet pendant lexcution dun scnario.
Cette fois-ci le diagramme de collaboration sera cr dans le rpertoire Use Case View
du navigateur. Il sagit en effet de lobservation des vnements dun scnario particulier.
1 Faire un clic droit sur Use Csae View dans le navigateur et slectionner
New>Collaboration Diagram
2 Une nouvelle fentre de diagramme souvre prsentant la barre doutils spcifique aux
diagrammes de collaboration que nous avons prsent au dbut de ce tutorial.

3 Cliquer sur le bouton Object puis placer les objets sur le diagramme

Tutorial Rational Rose LO19

34

Alexandre Penfornis
Thomas Derive
4 Ouvrir les spcification des objets Open Spcification

Choisir la classe laquelle


appartient lobjet

5 Placer les liens entre les objets pour permettre le transit des messages
oprateur Object Link

6 Placer les messages lun aprs lautre dans lordre d excution sur les liens entre les
objets
oprateur Link Message

Tutorial Rational Rose LO19

oprateur Reverse Link Message

35

Alexandre Penfornis
Thomas Derive

Choix du message (clic droit)

et on continue jusqu obtenir le diagramme complet :

c. Diagramme de squence
Une fois le diagramme de collaboration ralis, le diagramme de squence peut
sobtenir automatiquement par appui sur la touche F5 du clavier.
Le diagramme de squence ainsi obtenu est plac dans le rpertoire Use Case View
dans le navigateur et porte le mme nom que le diagramme de collaboration qui a permis de le
gnr automatiquement.

squence

collaboration

Tutorial Rational Rose LO19

36

Alexandre Penfornis
Thomas Derive

Si lon na pas au pralable ralis de diagramme de collaboration, on cr un diagramme de


squence dans Use Case View (clic droit puis New>Sequence Diagram).
1 On commence par placer les objets avec loprateur Object

2 on complte les spcifications de ces objets (double-clic ou clic droit et Open


Specification) les paramtres de spcification sont les mmes que dans le diagrammes
de collaboration

Tutorial Rational Rose LO19

37

Alexandre Penfornis
Thomas Derive
3 on met en place les messages laide du bouton Object Message

4 On choisit le message

5 On continue la mise en place des messages squentiels, la ligne de vie des objets actifs est
allonge automatiquement par Rational Rose.

Lappui sur la touche F5 donne le diagramme de collaboration.

Tutorial Rational Rose LO19

38

Alexandre Penfornis
Thomas Derive

d. Use Case (Diagramme de cas dutilisation)


1 Commencer par crer dans le rpertoire Use Case View un diagramme de cas dutilisation
(clic droit puis New>Use Case Diagram), lui donner un nom appropri.
2 Utiliser le bouton Actor pour placer les acteurs

3 Utiliser le bouton Use Case pour placer les actions ralises par les acteurs

4 Mettre en place les associations entre les objets comme dans le cas du diagramme de
classes.

e. Statecharts
Rational Rose permet galement la cration de statecharts. Comme dans le cas des autres
diagrammes, il faut commencer par crer un nouveau diagramme dans Use Case View.

Tutorial Rational Rose LO19

39

Alexandre Penfornis
Thomas Derive
1 Cration dtats
-

Cliquer sur le bouton State

Placer ltat dans la fentre du diagramme

Ritrer lopration pour crer les tats ncessaires

2 Affecter la transition par dfaut laide de loprateur Start State puis de loprateur
State Transition
Start State

State Transition

3 Mettre en place les autres transitions avec loprateur State Transition

Tutorial Rational Rose LO19

40

Alexandre Penfornis
Thomas Derive
4 Mise en place dune condition

Ouvrir les spcifications de la transition laquelle on souhaite affecter la condition

Lui affecter un vnement

Paramtrer Detail

Tutorial Rational Rose LO19

41

Alexandre Penfornis
Thomas Derive

III. Observations lies notre propre utilisation


Rational Rose est un outil offrant dnormes possibilits. Nous navons ici prsent
quune petite partie des fonctionnalits de cet outil. La suite de ce tutorial prsente nos
remarques et conseils directement li lutilisation que nous en avons eu.

a. Astuces et remarques importantes


-

Quelques raccourcis clavier bien utiles

Racourcis

Action

F1

Affiche laide de lobjet actif

F4

Ouvre les options gnrale du modle

Ctrl + S

Sauvegarder

Ctrl + D

Delete From Model = efface dfinitivement lobjet

Ctrl + F

Rechercher une expression, un nom. Si la case Case Sensitive est


coche, un seul rsultat apparat sinon on obtient toutes les
occurrences du mot recherch dans le modle.

Ctrl + U

Dzoomer

Ctrl + I

Zoomer

Ctrl + Shift +L

Mets les lignes slectionnes angle droit

Ctrl + B

Ouvre les spcifications de lobjet slectionn

Manipulations optimisant le temps de travail

Lorsque lutilisateur souhaite crer plusieurs fois de suite le mme type dobjet il est trs
intressant de verrouiller loprateur avec le bouton verrou.

Ne pas hsiter abuser du clic droit qui donne gnralement un accs direct aux
principales fonctions en relations avec lobjet ainsi slectionn.
Tutorial Rational Rose LO19

42

Alexandre Penfornis
Thomas Derive
Ne pas oublier dajouter des commentaires dans les diagrammes afin de faciliter la
relecture et la comprhension du diagramme par une tierce personne.

Remarques

Lors de la cration dune classe, si le nom spcifi existe dj dans le modle, une copie
exacte de lancienne classe est immdiatement effectue.
Si lutilisateur dsire changer les droits daccs un attribut par exemple, il peut cliquer sur le
petit logo devant cet attribut (dans la classe), et slectionn les nouveaux droits.

b. Dfauts observs
Si Rational Rose est un outils extrmement complet et puissant, il reste de nombreux
bugs qui gchent un peu son utilisation. Les principaux reproches que nous pouvons exprimer
quant notre utilisation de Rational Rose concernant linterface graphique.
Lors de la cration dun association rflexive, nous avons vu un moyen de faire une
mise en page automatique et trs pratique, mais lorsquon bouge une classe avec une
association rflexive, cette mise en page est modifie et rend moins clair le diagramme.

Rational Rose ne vrifie pas quune composition est bien de multiplicit 0..1 et
accepte donc une multiplicit 1..n.

Tutorial Rational Rose LO19

43

Alexandre Penfornis
Thomas Derive
Lors de la ralisation de diagramme de collaboration par exemple, les messages le
long dun mme liens sont systmatiquement superposs les uns sur les autres rendant la
lecture impossible. Lutilisateur est alors oblig de repositionn tous les messages la main

Les diagrammes de squence ne permettent pas de voir les paramtres ou les valeurs
de retour des mthodes.

Les structures de contrle dans les diagrammes de squences nexistent pas, il faut les
crire sous forme de texte.
Dans la composition de statecharts, nous navons pas trouv de fonction permettant de
gnrer une ligne verticale reprsentative dun tat ET.
Enfin, lors de la composition dun diagramme de squence, les messages
correspondent bien aux mthodes du destinataire mais il ny a aucune vrification dune
association entre lexpditeur et le destinataire dans le diagramme de classes Main.

IV. Lien et document intressants sur Rational


Rose
www.rational.com
Mastering UML with Rational Rose 2002 (Wendy Boggs / Michael Boggs)

Tutorial Rational Rose LO19

44