A compositional approach to Statecharts semantics

  • Authors:
  • Gerald L\"uttgen;Michael Beeck;and R Cleaveland

  • Affiliations:
  • -;-;-

  • Venue:
  • A compositional approach to Statecharts semantics
  • Year:
  • 2000

Quantified Score

Hi-index 0.00

Visualization

Abstract

Statecharts is a visual language for specifying reactive system behavior. The formalism extends traditional finite-state machines with notions of hierarchy and concurrency, and it is used in many popular software design notations. A large part of the appeal of Statecharts derives from its basis in state machines, with their intuitive operational interpretation. The traditional semantics of Statecharts, however, suffers from a serious defect: it is not compositional, meaning that the behavior of system descriptions cannot be inferred from the behavior of their subsystems. Compositionality is a prerequisite for exploiting the modular structure of Statecharts for simulation, verification, and code generation, and it also provides the necessary foundation for reusability. This paper suggests a new compositional approach to formalizing Statecharts semantics as flattened transition systems in which transitions represent system steps. The approach builds on ideas developed for timed process calculi and employs structural operational rules to define the transitions of a Statecharts expression in terms of the transitions of its subexpressions. It is first investigated for a simple dialect of Statecharts, with respect to a variant of Pnueli and Shalev''s semantics, and is illustrated by means of a small example. To demonstrate its flexibility, the proposed approach is then extended to deal with practically useful features available in many Statecharts variants, namely state references, history states, and priority concepts along state hierarchies.