Next: 1.3 The DEVS Formalism
Up: 1.2 The Statecharts Formalism
Previous: 1.2.1 Finite State Automata
Contents
Index
David Harel has added extensions to FSA to make it a practical and
expressive formalism [4]. With those extensions,
it becomes possible to specify the complete reactive behavior of a
system in a model.
Figure 1.7:
The statecharts meta-model in an Entity-Relationship
diagram
|
The meta-model of statecharts is drawn in the ER diagram in Figure
1.7. Elements in the diagram are described below:
- The name Blob is used to distinguish hierarchical states
in statecharts from states in FSA. Since hierarchy and orthogonal
components are introduced in statecharts, the states may have
inner structures and are known as blobs. A blob has a Name
attribute.
- A Hyperedge connects two states and denotes a transition
between them. A transition has an event property, and may
or may not have properties guard and output. Those
properties and their meanings are discussed later.
- A blob may consist of one or more orthogonal components. Each
of them maintains a local current state. The Cartesian product of
the current states of all the orthogonal components belonging to
the same parent is equal to the current state of the parent
state. An orthogonal component may have blobs inside it.
- Like FSA, every statecharts model has an initial state. Within
every blob or orthogonal component there is also a default state.
The statecharts semantics has many variants. One popular semantics is
David Harel's STATEMATE semantics [5]. Another one
is the statecharts semantics described in the UML (Unified Modeling
Language) [6]. These variants are not compatible
with each other. There will be more discussion about the statecharts
variants in the latter part of this thesis work.
Next: 1.3 The DEVS Formalism
Up: 1.2 The Statecharts Formalism
Previous: 1.2.1 Finite State Automata
Contents
Index
Thomas Huining Feng
2004-04-28