Mit
(*)
kann der Startknoten und der Endknoten des Aktivitätsdiagramms festgelegt werden.
In einigen Fällen kann man
(*top)
verwendet um den Startpunkt an den Anfang des Diagramms zu verlegen.
mit
-->
können Pfeile definiert werden.
🎉 Copied!
|
@startuml
(*) --> "First Activity"
"First Activity" --> (*)
@enduml
|
Ein Pfeil beginnt automatisch an der zuletzt verwendeten Aktivität.
Pfeile lassen sich beschriften in dem man den Text für die Beschriftung in eckige Klammern (
[
und
]
)
direkt hinter die Definition des Pfeils schreibt.
🎉 Copied!
|
@startuml
(*) --> "First Activity"
-->[You can put also labels] "Second Activity"
--> (*)
@enduml
|
Mit dem Symbol
->
kann ein waagerechter Pfeil erstellt werden. Mann kann die Richtung der Pfeile
auch mit der folgenden Syntax beeinflussen:
-down->
(default arrow)
-right->
or ->
-left->
-up->
🎉 Copied!
|
@startuml
(*) -up-> "First Activity"
-right-> "Second Activity"
--> "Third Activity"
-left-> (*)
@enduml
|
Sie können
if/then/else
Schlüsselwörter verwenden, um Verzweigungen zu definieren.
🎉 Copied!
|
@startuml
(*) --> "Initialization"
if "Some Test" then
-->[true] "Some Action"
--> "Another Action"
-right-> (*)
else
->[false] "Something else"
-->[Ending process] (*)
endif
@enduml
|
Leider müssen Sie dann manchmal dieselbe Aktivität im Diagrammtext wiederholen:
🎉 Copied!
|
@startuml
(*) --> "check input"
If "input is verbose" then
--> [Yes] "turn on verbosity"
--> "run command"
else
--> "run command"
Endif
-->(*)
@enduml
|
Normalerweise ist ein eine Verzweigung mit der zuletzt definierten Aktivität verbunden.
Mit dem
if
Schlüsselwort ist es aber möglich,
diese Voreinstellung zu überschreiben.
Außerdem kann man Verzweigungen auch schachteln.
🎉 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
|
Mit
=== code ===
können Synchronisationsbalken erzeugt werden.
🎉 Copied!
|
@startuml
(*) --> ===B1===
--> "Parallel Activity 1"
--> ===B2===
===B1=== --> "Parallel Activity 2"
--> ===B2===
--> (*)
@enduml
|
Die Beschreibung einer Aktivität kann sich auch über mehrere Zeilen erstrecken.
Mit dem
\n
Symbol kann ein Zeilenvorschub in die Beschreibung eingefügt werden.
Außerdem kann man HTML Tags verwenden. Hier ein Beispiel:
Mit dem Schlüsselwort as kann man auch eine kurze Kodierung zur Aktivität hinzufügen.
Diese Kodierung kann später in der Diagrammbeschreibung verwendet werden.
🎉 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
|
WARNING
This translation need to be updated. WARNING
Mit den folgenden Befehlen können einer Aktivität Notizen zugeordnet werden:
note left
,
note right
,
note top
or
note bottom
,
Gleich nach der Beschreibung der Aktivität die man festhalten will.
Wenn Sie eine Notiz für den Startpunkt erstellen wollen müssen Sie diese Notiz ganz am
Anfang des Diagramms definieren.
Es ist auch möglich, eine Notiz mit mehreren Zeilen zu erstellen. Dazu werden die
end note
Schlüsselworte verwendet.
🎉 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
|
Partitionen können mit dem
partition
Schlüsselwort erzeugt werden. Dabei kann
auch eine Hintergrundfarbe festgelegt werden.(Duch einen HTML Farbcode oder Namen).
Neue Aktivitäten werden automatisch in die zuletzt verwendete Partition eingefügt.
Eine Partition lässt sich über das
end partition
Schlüsselwort schließen.
🎉 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
|
Mit dem
skinparam
Befehl kann man die Farbe und die Schriftart der Zeichnung verändern.
Man kann diesen Befehl wie folgt verwenden:
Man kann spezifische Farben und Schriften für immer wiederkehrende Aktivitäten festlegen.
🎉 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
|
Man kann die Form zu einem Oktagon mit dem Befehl
skinparam activityShape octagon
ändern.
🎉 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
|