A statechart consists of a number of different elements. The following list gives an overview of these elements in the order they are listed in the editor palette.
Statechart Element | Description |
---|---|
![]() |
Transitions connect states with each other. Transition reactions define under which conditions a transition is taken. Read more in section States and transitions. |
![]() |
A state is the most basic building block of a statechart. A state can define reactions for when it gets entered or left. Read more in section States and transitions. |
![]() |
A composite state groups a number of substates. It can be used to express state hierarchies. Read more in section Composite states. |
![]() |
An orthogonal state is used to express concurrency. Read more in section Orthogonality. |
![]() |
A region is a container for states and transitions. Regions can exist as top-level elements or inside of a composite or orthogonal state. Multiple regions that coexist on the same level express concurrency as in an orthogonal state. |
![]() |
Entry points mark the initial state of a region. A region can have multiple named entry points to specify different execution flows. Learn more about them in section Composite states. |
![]() |
A shallow history remembers the last active state inside a composite state. Read more in section History nodes. |
![]() |
A deep history remembers all nested active state inside a composite state. Read more in section History nodes. |
![]() |
A final state denotes the end of the execution flow. Read more in chapter final state of the complete reference. |
![]() |
Exit points are used to leave a composite state and are the counterparts of entry points. Read more about them in section Composite states. |
![]() |
A choice node is used to model a conditional path. Read more in section Choices. |
![]() |
Synchronization nodes are used to model forks and joins in combination with orthogonal states. Read more in section Orthogonality. |