Component Dynamic Behavior Template
Dynamic behavior template for components.
dynamic_behavior.md
Copy the contents to an empty markdown file and start editing. Remove the help text in block quotes and any unused sections.
# Dynamic Behavior for ComponentName \{#DynamicBehavior_ComponentName}
<!-- This template is to be used to describe the dynamic behavior of a component, it shows how the component behaves for important use cases. It shall be used together with the main markdown file describing the complete component. -->
---
<!-- List of different behaviors with sequence diagrams or activity diagrams -->
## Dynamic Behavior Title1
<!-- Textual description for the behavior. -->
Behavior description...
```plantuml
@startuml
!include dynamic_behavior_sequence.puml
@enduml
```
## Dynamic Behavior Title2
<!-- Textual description for the behavior. -->
Behavior description...
```plantuml
@startuml
!include dynamic_behavior_activity.puml
@enduml
```
Note: The "!include dynamic_behavior_activity.puml" above don't work in an ADO Wiki. You have to convert the .puml to a .png and include it in the markdown. It may work in Visual Studio with the right plugins - but it doesn't help much if it is visualized with the ADO Wiki.
dynamic_behavior_sequence.puml
Copy the text to an empty plantuml file and start editing.
@startuml
skinparam sequence {
ArrowColor Black
ActorBorderColor Black
ParticipantBorderColor Black
LifeLineBorderColor Black
BoxBorderColor Black
}
skinparam note {
BorderColor Black
BackgroundColor AliceBlue
}
participant Client
box "Platform1"
participant "Object1:Class1" AS Obj1
participant "Object2:Class1" as Obj2
end box
participant "Class2" AS Class2
participant "Class3:Interface1" AS IF1
loop cyclic execution.
Client -> Class2: Get()
activate Class2
Class2 -> IF1: Get()
activate IF1
IF1 --> Class2: data
deactivate IF1
== Initial data retrieved, \
create all objects that are not already created. ==
loop for each property
Class2 -> Obj1: Method1()
alt New Request
Class2 -> Obj2**: Create()
note right
Note text with extra description.
end note
end /'end alt New Request'/
end /'end loop for each property'/
destroy Class2
end /'end loop cyclic execution'/
@enduml
dynamic_behavior_activity.puml
Copy the text to an empty plantuml file and start editing.
@startuml
<!-- <style>
activityDiagram {
BorderColor black
diamond {
LineColor black
}
arrow {
}
partition {
LineColor black
}
note {
FontColor Blue
LineColor Navy
BackgroundColor #ccf
}
}
document {
BackgroundColor transparent
}
</style> -->
title Template example
start
:ClickServlet.handleRequest();
:new page;
if (Page.onSecurityCheck) then (true)
:Page.onInit();
note left: Init the page
if (isForward?) then (no)
:Process controls;
if (continue processing?) then (no)
stop
endif
if (isPost?) then (yes)
:Page.onPost();
else (no)
:Page.onGet();
endif
:Page.onRender();
endif
else (false)
endif
if (do redirect?) then (yes)
:redirect process;
else
if (do forward?) then (yes)
:Forward request;
else (no)
:Render page template;
endif
endif
stop
@enduml
Owner: Software Development Team