|
by Venu Kosuri
Start ý Basic
Views ý The Whole Picture ý Use
Case View ý Use Case Diagram ý Structural
View ý Domain Modeling ý Class
Diagram ý Behavioral View ý Sequence
Diagram ý Collaboration Diagram ý
FSM ý Scalability
Limitations ý Lack of Support ý State
Charts ý Activity Diagram ý Implementation
View ý Environmental View ý Sources
and PDF
LACK OF SUPPORT
Another serious problem with the traditional
state machine is its lack of support for concurrency. This leads to
a combinatorial explosion in the number of states to model. Consider
a simple system that can be thought of as in one of four statesýoff,
start-up, operational, or error. Also, it can run from either battery
or main.
The fact that the system is in operational
state is totally independent of whether or not it is running from
battery or main. However, because traditional FSMs have no notion
of independence, you must combine the independent states together.
This yields a state like operational-battery and operational-main.
If you could model the FSM as two independent
parts, the diagram would be simplified. This is called the combinatorial
state explosion because the modeling of multiple concurrent FSMs requires
the multiplication of the number of states in each to model all conditions.
This requires O(xn) states to model N state machines with an average
of X states in each. Logically, it should be possible to model such
a concurrent system in O(xn) states, a much simpler proposition.
PREVIOUS
NEXT
Circuit Cellar provides up-to-date information for engineers. Visit
www.circuitcellar.com for
more information and additional articles.
For subscription information, call (860) 875-2199, subscribe@circuitcellar.com
or subscribe online.
ýCircuit Cellar, the Magazine for Computer Applications. Posted with
permission. |