Plenary Lecture

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.

WSEAS Unifying the Science