University of Minnesota
Software Engineering Center

You are here

Polyglot: Modeling and Analysis for Multiple Statechart Formalisms

Date of Publication: 
July 2011
Associated Research Groups: 
Publication Files: 
In large programs such as NASA Exploration, multiple systems that interact via safety-critical protocols are already designed with dierent Statechart variants. To verify these safety-critical systems, a unied framework is needed based on a formal semantics that captures the variants of Statecharts. We describe Polyglot, a unied framework for the analysis of models described using multiple Statechart 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 dierent variants, and addresses previous limitations. Polyglot has been integrated with the Java Pathnder verication tool-set, providing analysis and test-case generation capabilities. We describe the application of this unied framework to the analysis of NASA/JPL's MER Arbiter whose interacting components were modeled using multiple Statechart formalisms.
Proceedings of the International Symposium on Software Testing and Analysis (ISSTA), Toronto, Ontario, Canada, July 17-21, 2011.
@inproceedings{Balasubramanian:2011:PMA:2001420.2001427, author = {Balasubramanian, Daniel and P\u{a}s\u{a}reanu, Corina S. and Whalen, Michael W. and Karsai, G\'{a}bor and Lowry, Michael}, title = {Polyglot: modeling and analysis for multiple Statechart formalisms}, booktitle = {Proceedings of the 2011 International Symposium on Software Testing and Analysis}, series = {ISSTA '11}, year = {2011}, isbn = {978-1-4503-0562-4}, location = {Toronto, Ontario, Canada}, pages = {45--55}, numpages = {11}, url = {}, doi = {10.1145/2001420.2001427}, acmid = {2001427}, publisher = {ACM}, address = {New York, NY, USA}, keywords = {analysis, semantics of models, statecharts, testing}, }