Statechart development beyond WYSIWYG

Modeling systems based on semi-formal graphical formalisms, such as Statecharts, have become standard practice in the design of reactive embedded devices. Statecharts are often more intuitively understandable than equivalent textual descriptions, and their animated simulation can help to visualize complex behaviors. However, in terms of editing speed, project management, and meta-modeling, textual descriptions have advantages. As alternative to the standard WYSIWYG editing paradigm, we present an approach that is also graphical but oriented on the underlying structure of the system under development, and another approach based on a textual, dialect-independent Statechart description language. These approaches have been implemented in a prototypical modeling tool, which encompasses automatic Statechart layout. An empirical study on the usability and practicability of our Statechart editing techniques, including a Statechart layout comparison, indicates significant performance improvements in terms of editing speed and model comprehension compared to traditional modeling approaches.

[1]  Gérard Berry,et al.  The Esterel Synchronous Programming Language: Design, Semantics, Implementation , 1992, Sci. Comput. Program..

[2]  Laurie J. Hendren,et al.  SableCC, an object-oriented compiler framework , 1998, Proceedings. Technology of Object-Oriented Languages. TOOLS 26 (Cat. No.98EX176).

[3]  Marian Petre,et al.  When Visual Programs are Harder to Read than Textual Programs , 1992 .

[4]  Juan de Lara,et al.  Meta-modelling and graph grammars for multi-paradigm modelling in AToM3 , 2004, Software & Systems Modeling.

[5]  Amnon Naamad,et al.  Statemate: a working environment for the development of complex reactive systems , 1988, ICSE '88.

[6]  Reinhard von Hanxleden,et al.  Synthesizing safe state machines from Esterel , 2006, LCTES '06.

[7]  G. Plotkin,et al.  Proof, language, and interaction: essays in honour of Robin Milner , 2000 .

[8]  Reinhard von Hanxleden,et al.  Analyzing Robustness of UML State Machines , 2006 .

[9]  Roswitha Bardohl,et al.  A visual environment for visual languages , 2002, Sci. Comput. Program..

[10]  Emden R. Gansner,et al.  An open graph visualization system and its applications to software engineering , 2000, Softw. Pract. Exp..

[11]  David A. Carrington,et al.  Graph Drawing Aesthetics and the Comprehension of UML Class Diagrams: An Empirical Study , 2001, InVis.au.

[12]  Reinhard von Hanxleden,et al.  Comfortable Modeling of Complex Reactive Systems , 2006, Proceedings of the Design Automation & Test in Europe Conference.

[13]  Florence Maraninchi,et al.  The Argos Language: Graphical Representation of Automata and Description of Reactive Systems , 2007 .

[14]  Marian Petre,et al.  Why looking isn't always seeing: readership skills and graphical programming , 1995, CACM.

[15]  David Harel,et al.  Statecharts: A Visual Formalism for Complex Systems , 1987, Sci. Comput. Program..

[16]  Nancy G. Leveson,et al.  Completeness and Consistency in Hierarchical State-Based Requirements , 1996, IEEE Trans. Software Eng..

[17]  Gérard Berry,et al.  The foundations of Esterel , 2000, Proof, Language, and Interaction.

[18]  Philip T. Cox,et al.  Human Centric Computing Languages and Environments , 2003 .