A Generic Tool for Tracing Executions Back to a DSML's Operational Semantics

The increasing complexity of software development requires rigorously defined domain specific modeling languages (dsml). Modeldriven engineering (mde) allows users to define a dsml's syntax in terms of metamodels. The behaviour of a language can also be described, either operationally, or via transformations to other languages (e.g., by code generation). If the first approach requires to redefine analysis tools for each dsml (simulator, model-checker...), the second approach allows to reuse existing tools in the targeted language. However, the second approach (also called translational semantics) imply that the results (e.g., a program crash log, or a counterexample returned by a model checker) may not be straightforward to interpret by the users of a dsml. We propose in this paper a generic tool for formally tracing such analysis/execution results back to the original dsml's syntax and operational semantics, and we illustrate it on xSPEM, a timed process modeling language.

[1]  Juan de Lara,et al.  Supporting user-oriented analysis for multi-view domain-specific visual languages , 2009, Inf. Softw. Technol..

[2]  Philip Meir Merlin,et al.  A study of the recoverability of computing systems. , 1974 .

[3]  Johan Moe,et al.  Understanding distributed systems via execution trace data , 2001, Proceedings 9th International Workshop on Program Comprehension. IWPC 2001.

[4]  Jos Warmer,et al.  The object constraint language , 1998 .

[5]  Edmund M. Clarke,et al.  Counterexample-guided abstraction refinement , 2003, 10th International Symposium on Temporal Representation and Reasoning, 2003 and Fourth International Conference on Temporal Logic. Proceedings..

[6]  Wei Tang,et al.  Meta Object Facility , 2009, Encyclopedia of Database Systems.

[7]  Kevin Lano,et al.  Slicing of UML models using model transformations , 2010, MODELS'10.

[8]  Laure Gonnord,et al.  Formally Tracing Executions From an Analysis Tool Back to a Domain Specific Modeling Language's Operational Semantics , 2010 .

[9]  Mohamed Nassim Seghir,et al.  A Lightweight Approach for Loop Summarization , 2011, ATVA.

[10]  Benoît Combemale,et al.  Definition of an Executable SPEM 2.0 , 2007, 14th Asia-Pacific Software Engineering Conference (APSEC'07).

[11]  Benoît Combemale,et al.  Essay on Semantics Definition in MDE - An Instrumented Approach for Model Verification , 2009, J. Softw..

[12]  Antonio Vallecillo,et al.  Extending Visual Modeling Languages with Timed Behavior Specifications , 2009, CIbSE.

[13]  François Vernadat,et al.  Model Checking Bounded Prioritized Time Petri Nets , 2007, ATVA.

[14]  Dániel Varró,et al.  Back-annotation of Simulation Traces with Change-Driven Model Transformations , 2010, 2010 8th IEEE International Conference on Software Engineering and Formal Methods.

[15]  Amir Pnueli,et al.  Translation Validation: From SIGNAL to C , 1999, Correct System Design.

[16]  Vlad Rusu,et al.  Embedding Domain-Specic Modelling Languages in , 2011 .

[17]  Dániel Varró,et al.  VIATRA - visual automated transformations for formal verification and validation of UML models , 2002, Proceedings 17th IEEE International Conference on Automated Software Engineering,.

[18]  F. Vernadat,et al.  The tool TINA – Construction of abstract state spaces for petri nets and time petri nets , 2004 .

[19]  Jean-Marc Jézéquel,et al.  Weaving executability into object-oriented meta-languages , 2005, MoDELS'05.