Showing Full Semantics Preservation in Model Transformation - A Comparison of Techniques

Model transformation is a prime technique in modern, model-driven software design. One of the most challenging issues is to show that the semantics of the models is not affected by the transformation. So far, there is hardly any research into this issue, in particular in those cases where the source and target languages are different. In this paper, we are using two different state-of-the-art proof techniques (explicit bisimulation construction versus borrowed contexts) to show bisimilarity preservation of a given model transformation between two simple (self-defined) languages, both of which are equipped with a graph transformation-based operational semantics. The contrast between these proof techniques is interesting because they are based on different model transformation strategies: triple graph grammars versus in situ transformation. We proceed to compare the proofs and discuss scalability to a more realistic setting.

[1]  George C. Necula,et al.  Translation validation for an optimizing compiler , 2000, PLDI '00.

[2]  Andy Schürr,et al.  15 Years of Triple Graph Grammars , 2008, ICGT.

[3]  Tom Mens,et al.  Towards Automating Source-Consistent UML Refactorings , 2003, UML.

[4]  Graeme Smith,et al.  Architectural design in object-Z , 2004, 2004 Australian Software Engineering Conference. Proceedings..

[5]  Olaf Zimmermann,et al.  Incremental Development of Model Transformation Chains Using Automated Testing , 2009, MoDELS.

[6]  Jan Hendrik Hausmann,et al.  Dynamic META modeling: a semantics description technique for visual modeling languages , 2005 .

[7]  Robin Milner,et al.  Deriving Bisimulation Congruences for Reactive Systems , 2000, CONCUR.

[8]  Derrick G. Kourie,et al.  Towards proving preservation of behaviour of refactoring of UML models , 2005 .

[9]  C NeculaGeorge Translation validation for an optimizing compiler , 2000 .

[10]  Wilhelm Schäfer,et al.  Towards Verified Model Transformations , 2006 .

[11]  Arend Rensink,et al.  Defining Object-Oriented Execution Semantics Using Graph Transformations , 2006, FMOODS.

[12]  Hartmut Ehrig,et al.  Deriving Bisimulation Congruences in the Presence of Negative Application Conditions , 2008, FoSSaCS.

[13]  Perdita Stevens,et al.  Modelling Recursive Calls with UML State Diagrams , 2003, FASE.

[14]  Rob J. van Glabbeek,et al.  The Linear Time - Branching Time Spectrum II , 1993, CONCUR.

[15]  Hartmut Ehrig,et al.  Behavior Preservation in Model Refactoring Using DPO Transformations with Borrowed Contexts , 2008, ICGT.

[16]  Tom Mens,et al.  A survey of software refactoring , 2004, IEEE Transactions on Software Engineering.

[17]  Gabor Karsai,et al.  Towards Verification of Model Transformations Via Goal-Directed Certification , 2006, ASWSD.

[18]  Arend Rensink Model Driven Architecture - Foundations and Applications, 5th European Conference, ECMDA-FA 2009, Enschede, The Netherlands, June 23-26, 2009. Proceedings , 2009, ECMDA-FA.

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

[20]  Alexander Königs,et al.  Model transformation with triple graph grammars , 2005 .

[21]  Thomas Ruhroth,et al.  Refactoring Object-Oriented Specifications with Data and Processes , 2007, FMOODS.

[22]  Gregor Engels,et al.  From UML Activities to TAAL - Towards Behaviour-Preserving Model Transformations , 2008, ECMDA-FA.

[23]  Hartmut Ehrig,et al.  Deriving bisimulation congruences in the DPO approach to graph rewriting with borrowed contexts , 2006, Mathematical Structures in Computer Science.

[24]  Hartmut Ehrig,et al.  Deriving Bisimulation Congruences in the DPO Approach to Graph Rewriting , 2004, FoSSaCS.

[25]  Arend Rensink,et al.  Full Semantics Preservation in Model Transformation – A Comparison of Proof Techniques , 2010 .

[26]  Jorge C. A. de Figueiredo,et al.  Checking Semantics Equivalence of MDA Transformations in Concurrent Systems , 2009, J. Univers. Comput. Sci..

[27]  Gabor Karsai,et al.  Towards Verifying Model Transformations , 2008, GT-VMT@ETAPS.

[28]  Ian Stark,et al.  Free-Algebra Models for the pi-Calculus , 2005, FoSSaCS.

[29]  Daniel Hirschkoff On the Benefits of Using the Up-To Techniques for Bisimulation Verification , 1999, TACAS.

[30]  Reiko Heckel,et al.  Verification of Architectural Refactorings by Rule Extraction , 2008, FASE.

[31]  Luciano Baresi,et al.  Verification of Model Transformations: A Case Study with BPEL , 2006, TGC.

[32]  Yania Crespo,et al.  Exploring a Method to Detect Behaviour-Preserving Evolution Using Graph Transformation , 2007 .

[33]  Kousha Etessami,et al.  Optimizing Büchi Automata , 2000, CONCUR.