Dynamic modeling overview
Dynamic Modeling represents the temporal aspects of a system, capturing the control elements through which the behavior of objects can be understood over time. The Dynamic Model describes those aspects of a system concerned with time and the sequencing of operations - events that mark changes, sequences of events, and the organizing of events and states. The Dynamic Model does not consider what the operations do, what they operate on, nor how they are implemented.
The Dynamic Model is represented graphically by a set of State Diagrams (called State Charts in UML). Each State Diagram (and its sub-diagrams) models all the possible state and event sequences permitted for one class of objects in response to external and internal events and can be seen as a behavioral template for the class it is modeling. It is necessary to model only those objects with a definite lifecycle or those which exhibit significant behavior. A State Diagram shows the states and the transitions between states through which an object passes during its lifetime, together with its responses to external events.
State Diagrams provide a rich syntax for Dynamic Modeling, including the ability to model:
• States—comprise Atomic States, Sequential States, Concurrent States and Submachine States that represent the condition or situation of an object at some point during its lifecycle, during which it satisfies a condition, performs an action or waits for an event.
• Transitions—represents a relationship between two states, indicating that an object in the first state will enter the second state and perform specified actions when a specified event occurs.
• Events—represents a noteworthy occurrence that may trigger a State transition. Events are modeled through Event Action Blocks.
• Actions—correspond to functions from the functional model and specify responses to events. Actions are modeled through Event Action Blocks.
• Guard Conditions—a Boolean condition associated with a transition event that determines whether the transition actually occurs when the event fires. Guard Conditions are modeled through Event Action Blocks.
• Pseudostates—comprise Initial States, Final States, History States, Junction States, Entry States, Exit States, Fork States and Join States. Pseudostates are used to build up compound transitions.
• Activities—describe continuous state behavior and correspond to Operations, Activities or Activities in the Class Model.