Reconciling statechart semantics

Statecharts are a visual technique for modelling reactive behaviour. Over the years, a plethora of statechart semantics have been proposed. The three most widely used are the fixpoint, Statemate, and UML semantics. These three semantics differ considerably from each other. In general, they interpret the same statechart differently, which impedes the communication of statechart designs among both designers and tools. In this paper, we identify a set of constraints on statecharts that ensure that the fixpoint, Statemate and UML semantics coincide, if observations are restricted to linear, stuttering-closed, separable properties. Moreover, we show that for a subset of these constraints, a slight variation of the Statemate semantics coincides for linear stuttering-closed properties with the UML semantics.

[1]  Michelle L. Crane,et al.  UML vs. classical vs. rhapsody statecharts: not all models are created equal , 2005, MoDELS'05.

[2]  Michael von der Beeck A structured operational semantics for UML-statecharts , 2002, Software and Systems Modeling.

[3]  Joaquín Aguado,et al.  Constructive semantics for instantaneous reactions , 2011, Theor. Comput. Sci..

[4]  Amir Pnueli,et al.  A Compositional Real-Time Semantics of STATEMATE Designs , 1997, COMPOS.

[5]  Amir Pnueli,et al.  A discrete-time UML semantics for concurrency and communication in safety-critical applications , 2005, Sci. Comput. Program..

[6]  Diego Latella,et al.  Automatic Verification of a Behavioural Subset of UML Statechart Diagrams Using the SPIN Model-checker , 1999, Formal Aspects of Computing.

[7]  Doron A. Peled,et al.  All from One, One for All: on Model Checking Using Representatives , 1993, CAV.

[8]  David Harel,et al.  Executable object modeling with statecharts , 1996, Proceedings of IEEE 18th International Conference on Software Engineering.

[9]  Michael von der Beeck,et al.  A Comparison of Statecharts Variants , 1994, FTRTFT.

[10]  David Harel,et al.  Statecharts in Use: Structured Analysis and Object-Orientation , 1996, European Educational Forum: School on Embedded Systems.

[11]  David Harel,et al.  Modeling Reactive Systems With Statecharts : The Statemate Approach , 1998 .

[12]  Yassine Lakhnech,et al.  Hierarchical Automata as Model for Statecharts , 1997, ASIAN.

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

[14]  Amnon Naamad,et al.  The STATEMATE semantics of statecharts , 1996, TSEM.

[15]  Martin Fränzle,et al.  A Semantics for Distributed Execution of Statemate , 2003, Formal Aspects of Computing.

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

[17]  David Notkin,et al.  Model checking large software specifications , 1996, SIGSOFT '96.

[18]  Amir Pnueli,et al.  What is in a Step: On the Semantics of Statecharts , 1991, TACS.

[19]  Roel Wieringa,et al.  Design methods for reactive systems - Yourdon, Statemate, and the UML , 2003 .

[20]  Zohar Manna,et al.  The Temporal Logic of Reactive and Concurrent Systems , 1991, Springer New York.

[21]  Edmund M. Clarke,et al.  Characterizing Finite Kripke Structures in Propositional Temporal Logic , 1988, Theor. Comput. Sci..

[22]  Amir Pnueli,et al.  On the Formal Semantics of Statecharts (Extended Abstract) , 1987, LICS.

[23]  Rik Eshuis,et al.  Requirements-Level Semantics and Model Checking of Object-Oriented Statecharts , 2002, Requirements Engineering.

[24]  Nancy G. Leveson,et al.  Requirements Specification for Process-Control Systems , 1994, IEEE Trans. Software Eng..

[25]  Francesca Levi,et al.  A Compositional µ-Calculus Proof System for Statecharts Processes , 1999, Theor. Comput. Sci..

[26]  Alan Bundy,et al.  Constructing Induction Rules for Deductive Synthesis Proofs , 2006, CLASE.

[27]  David Harel,et al.  Statecharts in the making: a personal account , 2009, CACM.

[28]  Rob Gerth,et al.  Semantics of Reactive Systems in Abstract Time , 1991, REX Workshop.

[29]  Andrea Maggiolo-Schettini,et al.  A comparison of Statecharts step semantics , 2003, Theor. Comput. Sci..

[30]  Michael Mendler,et al.  The NASA STI Program Office provides , 2000 .

[31]  Rik Eshuis,et al.  Symbolic model checking of UML activity diagrams , 2006, TSEM.

[32]  Amir Pnueli,et al.  On the Development of Reactive Systems , 1989, Logics and Models of Concurrent Systems.

[33]  Leslie Lamport,et al.  What Good is Temporal Logic? , 1983, IFIP Congress.

[34]  Doron A. Peled On Projective and Separable Properties , 1997, Theor. Comput. Sci..

[35]  David Harel,et al.  The Rhapsody Semantics of Statecharts (or, On the Executable Core of the UML) - Preliminary Version , 2004, SoftSpez Final Report.

[36]  Nancy G. Leveson,et al.  Designing specification languages for process control systems: lessons learned and steps to the future , 1999, ESEC/FSE-7.

[37]  Bruce Powel Douglass Real Time UML: Advances in the UML for Real-Time Systems (3rd Edition) , 2004 .

[38]  Somesh Jha,et al.  Combining Partial Order and Symmetry Reductions , 1997, TACAS.

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

[40]  Bran Selic,et al.  Real-time object-oriented modeling , 1994, Wiley professional computing.

[41]  James E. Rumbaugh,et al.  Object-Oriented Modelling and Design , 1991 .

[42]  Willem P. de Roever,et al.  Introduction to Design Choices in the Semantics of Statecharts , 1991, Inf. Process. Lett..

[43]  Michael Mendler,et al.  Towards a Model-Theory for Esterel , 2002, SLAP@ETAPS.