Plenary
Lecture
Statecharts Disentangled
Professor Albert Hoogewijs
Co-Author: Benjamin De Leeuw
Ghent University
Department of Pure Mathematics and Computer Algebra
Krijgslaan 281, S22
B-9000 GHENT
BELGIUM
E-mail:
albert.hoogewijs@ugent.be
Abstract: We present the main results of the
research obtained by Benjamin De Leeuw in his PhD
thesis: Statechart DNA: Formal and Psychological
Investigation into a Machine Theory. We derive the
simplified statechart (language) by excluding all
redundant constructs of the UML (Unified Modeling
Language) metamodel on statecharts. Simplified state
machines and their memory model are the central
abstraction used throughout this work. Any UML state
machine or procedural program transforms to exactly one
simplified state machine. We derive the language grammar
for simplified state machines by composing a scripting
language that further abstracts any useful state
machine. Each grammar rule gets a visual counterpart
within the state machine diagram and we show how all
useful state machines can be grown from these scripts.
The parse tree of this grammar can be normalized such
that any state machine has exactly one script, called
statechart dna.
The first practical application is the generation of
state machine test cases for tools having them as their
domain of discourse. The second application of the
theory is model checking state machine behavior without
assuming interleaved action execution. We show how the
less strenuous location consistency ordering, can be
used to calculate more realistic views on memory state
values. We introduce a weighted and recursively
calculated numerical value to each grammar rule
application and from it derive a useful and measurable
state machine complexity metric. Another important
application is the detection of changes in state machine
specifications. Text versioning systems use the ability
to reconstruct any previously checked-in version from
keeping track of so-called delta sets or change sets. In
case of structured text like procedural program code it
is even possible to automatically merge these text
documents. Within the above theoretical framework we
derive a technique to calculate delta sets on state
machines and on how to handle merges consistently.
Brief Biography of the Speaker:
Albert Hoogewijs obtained his PhD in mathematics from
the University of Ghent in 1974. He studied logic at the
University of Utrecht with Dirk van Dalen. He worked on
three-valued logic for software specification, and was
visiting professor at several European Universities, in
the context of the Galois Network, an Erasmus project in
mathematics and computer science. He is full professor
at the Department of Pure Mathematics and Computer
Algebra of the University of Ghent. He supervised
several PhD theses and wrote a lot of articles in the
area of automated theorem proving and software
specification.
|