Polyglot: modeling and analysis for multiple Statechart formalisms

In large programs such as NASA Exploration, multiple systems that interact via safety-critical protocols are already designed with different Statechart variants. To verify these safety-critical systems, a unified framework is needed based on a formal semantics that captures the variants of Statecharts. We describe Polyglot, a unified framework for the analysis of models described using multiple State-chart formalisms. In this framework, Statechart models are translated into Java and analyzed using pluggable semantics for different variants operating in a polymorphic execution environment. The framework has been built on the basis of a parametric formal semantics that captures the common core of Statecharts with extensions for different variants, and addresses previous limitations. Polyglot has been integrated with the Java Pathfinder verification tool-set, providing analysis and test-case generation capabilities. We describe the application of this unified framework to the analysis of NASA/JPL's MER Arbiter whose interacting components were modeled using multiple Statechart formalisms.

[1]  Michael von der Beeck A structured operational semantics for UML-statecharts , 2002 .

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

[3]  Corina S. Pasareanu,et al.  Symbolic PathFinder: symbolic execution of Java bytecode , 2010, ASE.

[4]  Charles André,et al.  Computing SyncCharts Reactions , 2004, SLAP.

[5]  Darren D. Cofer,et al.  Software model checking takes off , 2010, Commun. ACM.

[6]  Michael W. Whalen A parametric structural operational semantics for stateflow, uml statecharts , 2010 .

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

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

[9]  Gordon D. Plotkin,et al.  A structural approach to operational semantics , 2004, J. Log. Algebraic Methods Program..

[10]  Gabor Karsai,et al.  Composing Domain-Specific Design Environments , 2001, Computer.

[11]  Michael W. Whalen,et al.  A formal semantics for RSML- e , 2000 .

[12]  Gabor Karsai,et al.  Rapid property specification and checking for model-based formalisms , 2011, 2011 22nd IEEE International Symposium on Rapid System Prototyping.

[13]  Grégoire Hamon,et al.  A denotational semantics for stateflow , 2005, EMSOFT.

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

[15]  Gabor Karsai,et al.  Model Based Analysis and Test Generation for Flight Software , 2009, 2009 Third IEEE International Conference on Space Mission Challenges for Information Technology.

[16]  Nancy A. Day,et al.  Template Semantics for Model-Based Notations , 2003, IEEE Trans. Software Eng..

[17]  Heinrich Hußmann,et al.  Analysing UML Active Classes and Associated State Machines - A Lightweight Formal Approach , 2000, FASE.

[18]  David R. Cheriton,et al.  Big-Step Semantics , 2009 .

[19]  Nancy A. Day,et al.  Prescriptive Semantics for Big-Step Modelling Languages , 2010, FASE.

[20]  Edward A. Lee,et al.  Taming heterogeneity - the Ptolemy approach , 2003, Proc. IEEE.

[21]  John M. Rushby,et al.  An operational semantics for Stateflow , 2004, International Journal on Software Tools for Technology Transfer.

[22]  Martin Gogolla,et al.  State diagrams in UML: A formal semantics using graph transformations , 1998 .

[23]  Mauro Pezzè,et al.  Constructing Multi-Formalism State-Space Analysis Tools: Using rules to specify dynamic semantics of models , 1997, Proceedings of the (19th) International Conference on Software Engineering.

[24]  Kevin J. Compton,et al.  A Semantic Model for the State Machine in the Unified Modeling Language , 2000 .

[25]  Elvinia Riccobene,et al.  Modeling the Dynamics of UML State Machines , 2000, Abstract State Machines.

[26]  Gabor Karsai,et al.  Smart Dust: communicating with a cubic-millimeter computer , 2001 .

[27]  Corina S. Pasareanu,et al.  Towards a Compositional SPIN , 2006, SPIN.

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

[29]  Tara Estlin,et al.  PLAN EXECUTION INTERCHANGE LANGUAGE (PLEXIL) FOR EXECUTABLE PLANS AND COMMAND SEQUENCES , 2005 .

[30]  Matthew B. Dwyer,et al.  Cadena: An Integrated Development Environment for Analysis, Synthesis, and Verification of Component-Based Systems , 2004, FASE.

[31]  James C. King,et al.  Symbolic execution and program testing , 1976, CACM.