On the Correctness of Model Transformations in the Development of Embedded Systems

Model based techniques have become very popular in the development of software for embedded systems, with a variety of tools for design, simulation and analysis of model based systems being available (such as Matlab's Simulink [20], the model checking tool NuSMV [4] etc.). Model transformations usually play a critical role in such model based development approaches. While the available tools are geared to verify properties about individual models, the correctness of model transformations is generally not verified. However, errors in the transformation could present serious problems. Proving a property for a certain source model becomes irrelevant if an erroneous transformation produces an incorrect target model. One way to provide assurance about a transformation would be to prove that it preserves certain properties of the source model (such as reachability) in the target model. In this paper, we present some general approaches to providing such assurances about model transformations. We will present some case studies where these techniques can be applied.

[1]  Bernhard Rumpe,et al.  Behavioral Specifications of Businesses and Systems , 1999, Behavioral Specifications of Businesses and Systems.

[2]  Gabor Karsai,et al.  The design of a language for model transformations , 2006, Software & Systems Modeling.

[3]  Bernhard Rumpe,et al.  Meta-Modelling Semantics of UML , 2014, Behavioral Specifications of Businesses and Systems.

[4]  Gerard J. Holzmann,et al.  The Model Checker SPIN , 1997, IEEE Trans. Software Eng..

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

[6]  Alex K. Simpson,et al.  Computational Adequacy in an Elementary Topos , 1998, CSL.

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

[8]  Dániel Varró,et al.  A Formal Semantics of UML Statecharts by Model Transition Systems , 2002, ICGT.

[9]  Faron Moller,et al.  Weak Bisimulation Approximants , 2006, CSL.

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

[11]  Ewen Denney,et al.  Certifiable program generation , 2005, GPCE'05.

[12]  Egon Börger Specification and validation methods , 1995 .

[13]  Davide Sangiorgi Bisimulation: from the origins to today , 2004, LICS 2004.

[14]  Yuri Gurevich,et al.  Evolving algebras 1993: Lipari guide , 1995, Specification and validation methods.

[15]  Amir Pnueli,et al.  VOC: A Translation Validator for Optimizing Compilers , 2002, COCV@ETAPS.

[16]  Sherif Abdelwahed,et al.  Semantic Anchoring with Model Transformations , 2005, ECMDA-FA.

[17]  Amir Pnueli,et al.  TVOC: A Translation Validator for Optimizing Compilers , 2005, CAV.

[18]  Bernhard Rumpe,et al.  Meaningful modeling: what's the semantics of "semantics"? , 2004, Computer.