State Transition Diagram
A State Transition Diagram is a state-based system representations that is a graphical diagram.
- AKA: State Diagram, Finite State Diagram, State Machine Diagram.
- Context:
- It can typically represent State Transition Diagram States with state transition diagram nodes.
- It can typically represent State Transition Diagram Transitions with state transition diagram arcs.
- It can typically specify State Transition Diagram Events with state transition diagram trigger labels.
- It can typically define State Transition Diagram Actions with state transition diagram response notations.
- It can typically model State Transition Diagram Behaviors with state transition diagram execution paths.
- ...
- It can often visualize State Transition Diagram Flow with state transition diagram directional arrows.
- It can often document State Transition Diagram Conditions with state transition diagram guard expressions.
- It can often specify State Transition Diagram Entry Points with state transition diagram initial state markers.
- It can often specify State Transition Diagram Exit Points with state transition diagram final state markers.
- ...
- It can range from being a Simple State Transition Diagram to being a Complex State Transition Diagram, depending on its state transition diagram complexity level.
- It can range from being a Conceptual State Transition Diagram to being an Implementation State Transition Diagram, depending on its state transition diagram abstraction level.
- It can range from being a Partial State Transition Diagram to being a Complete State Transition Diagram, depending on its state transition diagram coverage scope.
- ...
- It can integrate with State Transition Diagram Modeling Tools for state transition diagram creation support.
- It can connect to State Transition Diagram Simulation Systems for state transition diagram execution validation.
- It can support State Transition Diagram Code Generators for state transition diagram implementation automation.
- ...
- Examples:
- Software System State Transition Diagrams, such as:
- User Interface State Transition Diagrams, such as:
- Protocol State Transition Diagrams, such as:
- Hardware System State Transition Diagrams, such as:
- Digital Circuit State Transition Diagrams, such as:
- Control System State Transition Diagrams, such as:
- Business Process State Transition Diagrams, such as:
- ...
- Software System State Transition Diagrams, such as:
- Counter-Examples:
- Flowcharts, which represent sequential processing steps rather than state transition diagram reactive behavior.
- Entity-Relationship Diagrams, which model data relationships rather than state transition diagram behavioral dynamics.
- Activity Diagrams, which focus on activity flows rather than state transition diagram event-driven transitions.
- Sequence Diagrams, which show interaction sequences rather than state transition diagram state-based behavior.
- See: Process Diagram, Activity Diagram, Mealy Machine, Moore Machine, Decision Table, Finite State Machine, UML State Machine, Petri Net.
References
- Google Images http://www.google.com/images?q="State+Diagram"
2017
- (Wikipedia, 2017) ⇒ https://en.wikipedia.org/wiki/state_diagram Retrieved:2017-1-27.
- A state diagram is a type of diagram used in computer science and related fields to describe the behavior of systems. State diagrams require that the system described is composed of a finite number of states; sometimes, this is indeed the case, while at other times this is a reasonable abstraction. Many forms of state diagrams exist, which differ slightly and have different semantics.
2017
- (Wikipedia, 2017) ⇒ https://en.wikipedia.org/wiki/state_diagram#Overview Retrieved:2017-1-27.
- State diagrams are used to give an abstract description of the behavior of a system. This behavior is analyzed and represented as a series of events that can occur in one or more possible states. Hereby "each diagram usually represents objects of a single class and track the different states of its objects through the system".
State diagrams can be used to graphically represent finite state machines. This was introduced by C.E. Shannon and W. Weaver in their 1949 book "The Mathematical Theory of Communication". Another source is Taylor Booth in his 1967 book "Sequential Machines and Automata Theory". Another possible representation is the State transition table.
- State diagrams are used to give an abstract description of the behavior of a system. This behavior is analyzed and represented as a series of events that can occur in one or more possible states. Hereby "each diagram usually represents objects of a single class and track the different states of its objects through the system".
2017
- (Wikipedia, 2017) ⇒ https://en.wikipedia.org/wiki/State_diagram#State_diagrams_versus_flowcharts Retrieved:2017-5-9.
- Newcomers to the state machine formalism often confuse state diagrams with flowcharts. The figure below shows a comparison of a state diagram with a flowchart. A state machine (panel (a)) performs actions in response to explicit events. In contrast, the flowchart (panel (b)) does not need explicit events but rather transitions from node to node in its graph automatically upon completion of activities.
...
You can compare a flowchart to an assembly line in manufacturing because the flowchart describes the progression of some task from beginning to end (e.g., transforming source code input into object code output by a compiler). A state machine generally has no notion of such a progression. The door state machine shown at the top of this article, for example, is not in a more advanced stage when it is in the "closed" state, compared to being in the "opened" state; it simply reacts differently to the open/close events. A state in a state machine is an efficient way of specifying a particular behavior, rather than a stage of processing.
- Newcomers to the state machine formalism often confuse state diagrams with flowcharts. The figure below shows a comparison of a state diagram with a flowchart. A state machine (panel (a)) performs actions in response to explicit events. In contrast, the flowchart (panel (b)) does not need explicit events but rather transitions from node to node in its graph automatically upon completion of activities.