A Statechart Diagram describes the state-based behavior of a block. It is one of the most important behavior
diagrams because it aggregates the information from both the activity diagram (functional flow) and the sequence
diagrams (interactions with the environment), and adds the event-driven block behavior to the diagram. As the
"language" of statecharts is formally defined, the correctness and completeness of the resulting behavior can be
verified/validated through model execution.
Statechart diagrams are finite state machines that are extended by the notation of Hierarchy
and Concurrency.
Basically, a statechart diagram is comprised of a set of states joined by transitions and various connectors. An event
may trigger a transition from one state to another. Actions can be performed on transitions and on state entry/exit.
In most of the cases a System Block Statechart Diagram is defined for each leaf system block. The
emergent behavior that results from the collaboration of each leaf block statechart diagram must reflect the
functional flow captured in the white-box activity diagram as well as the associated white-box sequence
diagrams.
|