Il s'agit de l'ancienne syntaxe du diagramme d'activités, pour voir la nouvelle version actuelle, voir:
Diagrammes d'activité (nouvelle syntaxe).
Vous pouvez utiliser
(*)
pour le point de départ et le point d'arrivée de
le diagramme d'activité.
Dans certaines occasions, vous pouvez utiliser
(*top)
pour forcer le point de départ à être en haut du diagramme.
Utilisez
-->
pour les flèches
🎉 Copied!
|
@startuml
(*) --> "First Action"
"First Action" --> (*)
@enduml
|
Par défaut, une flèche commence à partir de la dernière activité définie.
Vous pouvez rajouter un libellé sur une flèche en mettant des crochets
[
et
]
juste après la définition de la flèche.
🎉 Copied!
|
@startuml
(*) --> "First Action"
-->[You can put also labels] "Second Action"
--> (*)
@enduml
|
Vous pouvez utiliser
->
pour les flèches horizontales. Il est aussi possible de forcer la direction d'une flèche en utilisant la syntaxe suivante :
-down->
(default arrow)
-right->
or ->
-left->
-up->
🎉 Copied!
|
@startuml
(*) -up-> "First Action"
-right-> "Second Action"
--> "Third Action"
-left-> (*)
@enduml
|
Vous pouvez utiliser le mot clé
if/then/else
pour définir une branche.
🎉 Copied!
|
@startuml
(*) --> "Initialization"
if "Some Test" then
-->[true] "Some Action"
--> "Another Action"
-right-> (*)
else
->[false] "Something else"
-->[Ending process] (*)
endif
@enduml
|
Malheureusement, vous devez parfois avoir à répéter la même activité dans le diagramme de texte.
🎉 Copied!
|
@startuml
(*) --> "check input"
If "input is verbose" then
--> [Yes] "turn on verbosity"
--> "run command"
else
--> "run command"
Endif
-->(*)
@enduml
|
Par défaut, une branche commence à la dernière activité définie, mais il est possible de passer outre et de définir un lien avec le mot clé
if
.
Il est aussi possible d'imbriquer les branches.
🎉 Copied!
|
@startuml
(*) --> if "Some Test" then
-->[true] "activity 1"
if "" then
-> "activity 3" as a3
else
if "Other test" then
-left-> "activity 5"
else
--> "activity 6"
endif
endif
else
->[false] "activity 2"
endif
a3 --> if "last test" then
--> "activity 7"
else
-> "activity 8"
endif
@enduml
|
Vous pouvez utiliser la syntaxe
=== code ===
pour afficher des barres de synchronisation.
🎉 Copied!
|
@startuml
(*) --> ===B1===
--> "Parallel Activity 1"
--> ===B2===
===B1=== --> "Parallel Activity 2"
--> ===B2===
--> (*)
@enduml
|
Lorsque vous déclarez des activités, vous pouvez positionner sur plusieurs lignes le texte de description
Vous pouvez également ajouter
\n
dans la description.
Il est également possible d'utiliser quelques tags HTML tels que :
Vous pouvez aussi donner un court code à l'activité avec le mot clé
as
.
Ce code peut être utilisé plus tard dans le diagramme de description.
🎉 Copied!
|
@startuml
(*) -left-> "this <size:20>activity</size>
is <b>very</b> <color:red>long2</color>
and defined on several lines
that contains many <i>text</i>" as A1
-up-> "Another activity\n on several lines"
A1 --> "Short activity <img:sourceforge.jpg>"
@enduml
|
Vous pouvez rajouter des notes sur une activités en utilisant les commandes:
note left
,
note right
,
note top
ou
note bottom
,
juste après la définition de l'activité concernée.
Si vous voulez mettre une note sur le démarrage du diagramme, définissez la note
au tout début du diagramme.
Vous pouvez aussi avoir une note sur plusieurs lignes, en utilisant les mots clés
endnote
.
🎉 Copied!
|
@startuml
(*) --> "Some Activity"
note right: This activity has to be defined
"Some Activity" --> (*)
note left
This note is on
several lines
end note
@enduml
|
Vous pouvez définir une partition en utilisant le mot clé
partition
, et optionnellement déclarer un fond de couleur pour votre partition (En utilisant un code couleur html ou un nom)
Quand vous déclarez les activités, ils sont automatiquement mis dans la dernière partition utilisée.
Vous pouvez fermer la partition de définition en utilisant les crochets fermants
}
.
🎉 Copied!
|
@startuml
partition Conductor {
(*) --> "Climbs on Platform"
--> === S1 ===
--> Bows
}
partition Audience #LightSkyBlue {
=== S1 === --> Applauds
}
partition Conductor {
Bows --> === S2 ===
--> WavesArmes
Applauds --> === S2 ===
}
partition Orchestra #CCCCEE {
WavesArmes --> Introduction
--> "Play music"
}
@enduml
|
Vous pouvez utiliser la commande
skinparam
pour changer la couleur et la police d'écriture pour dessiner.
Vous pouvez utiliser cette commande :
Vous pouvez spécifier une couleur et une police d'écriture dans les stéréotypes d'activités.
🎉 Copied!
|
@startuml
skinparam backgroundColor #AAFFFF
skinparam activity {
StartColor red
BarColor SaddleBrown
EndColor Silver
BackgroundColor Peru
BackgroundColor<< Begin >> Olive
BorderColor Peru
FontName Impact
}
(*) --> "Climbs on Platform" << Begin >>
--> === S1 ===
--> Bows
--> === S2 ===
--> WavesArmes
--> (*)
@enduml
|
Vous pouvez changer la forme des activités en octogone en utilisant la commande
skinparam activityShape octagon
.
🎉 Copied!
|
@startuml
'Default is skinparam activityShape roundBox
skinparam activityShape octagon
(*) --> "First Activity"
"First Activity" --> (*)
@enduml
|
🎉 Copied!
|
@startuml
title Servlet Container
(*) --> "ClickServlet.handleRequest()"
--> "new Page"
if "Page.onSecurityCheck" then
->[true] "Page.onInit()"
if "isForward?" then
->[no] "Process controls"
if "continue processing?" then
-->[yes] ===RENDERING===
else
-->[no] ===REDIRECT_CHECK===
endif
else
-->[yes] ===RENDERING===
endif
if "is Post?" then
-->[yes] "Page.onPost()"
--> "Page.onRender()" as render
--> ===REDIRECT_CHECK===
else
-->[no] "Page.onGet()"
--> render
endif
else
-->[false] ===REDIRECT_CHECK===
endif
if "Do redirect?" then
->[yes] "redirect request"
--> ==BEFORE_DESTROY===
else
if "Do Forward?" then
-left->[yes] "Forward request"
--> ==BEFORE_DESTROY===
else
-right->[no] "Render page template"
--> ==BEFORE_DESTROY===
endif
endif
--> "Page.onDestroy()"
-->(*)
@enduml
|