Stefan Sachs
Dr. Ing.
Beratender Ingenieur

State Machines

The system uses finite state machines to model the control structure of the system. Finite state machines are a well understood technique to describe system behaviour. A state machine is triggered by external messages (internal events) to change its internal state. For each state, the response to each message is defined as a resulting state (which may equal the actual state) and an arbitrary number of actions, which are triggered by the transition. These actions trigger external events.

Finite state machines are equivalent to grammars of the type Chomsky III, that means, they cannot model recursive processes because a state machine can have only one state at a time. When the states of a system is described by more than one parameter, the only way to overcome this by a state machine is, to assign each possible combination of the system parameters values to a distinct state. So state machines describing real systems easily become unmanageable due to this combinatory explosion.

In practice, the interdependencies of the different parameters describing the system are sparse resulting in identical subgraphs. Therefore in  this toolkit, each subgraph is modelled as a distinct state machine. These state machines communicate using the same event-message mechanism like other components. Internal actions are mapped externally to events triggered by the state machine, messages sent to the state machine are mapped to events internally.

The user may define state machines using a graphical or a table representation within the  State Diagram Editor; furthermore state diagrams can be created automatically, when a sufficient variety of use cases has been defined.



About me


GUI Design

System Safety

System Design Toolkit

Interaction Diagrams

GUI Simulator

State Machines

Collaboration Diagrams

Code Generator

Java Applets

State Diagram Editor forMAC