Finding and Fixing Bugs in Model Transformations with Formal Verification: An Experience Report

We report on the use of a formal verification tool for a graph-based transformation language in the context of a case study. The tool identified two bugs in the transformation that had eluded all previous testing efforts. The paper describes what we learned about the analysis of model transformations and how we intend to use these insights to improve the verification tool.

[1]  Arend Rensink,et al.  Modelling and analysis using GROOVE , 2010, International Journal on Software Tools for Technology Transfer.

[2]  Jürgen Dingel,et al.  Theory and Implementation of a Real-Time Extension to the pi-Calculus , 2010, FMOODS/FORTE.

[3]  Jesús Sánchez Cuadrado,et al.  Modularization of model transformations through a phasing mechanism , 2009, Software & Systems Modeling.

[4]  Bran Selic,et al.  Using UML for Modeling Complex Real-Time Systems , 1998, LCTES.

[5]  Jürgen Dingel,et al.  Model transformation intents and their properties , 2016, Software & Systems Modeling.

[6]  Jürgen Dingel,et al.  Specification and Verification of Graph-Based Model Transformation Properties , 2014, ICGT.

[7]  Eyrak Paen,et al.  Measuring Incrementally Developed Model Transformations Using Change Metrics , 2012 .

[8]  Levi Lucio,et al.  DSLTrans: A Turing Incomplete Transformation Language , 2010, SLE.

[9]  Yves Le Traon,et al.  Qualifying input test data for model transformations , 2009, Software & Systems Modeling.

[10]  Juan de Lara,et al.  Uncovering Errors in ATL Model Transformations Using Static Analysis and Constraint Solving , 2014, 2014 IEEE 25th International Symposium on Software Reliability Engineering.

[11]  Jürgen Dingel,et al.  Kiltera: A Language for Timed, Event-Driven, Mobile and Distributed Simulation , 2010, 2010 IEEE/ACM 14th International Symposium on Distributed Simulation and Real Time Applications.

[12]  Jürgen Dingel,et al.  Automated Verification of Model Transformations in the Automotive Industry , 2013, MoDELS.

[13]  Martin Gogolla,et al.  Verification of ATL Transformations Using Transformation Models and Model Finders , 2012, ICFEM.

[14]  Gabriele Taentzer,et al.  AGG: A Graph Transformation Environment for Modeling and Validation of Software , 2003, AGTIVE.

[15]  Gehan M. K. Selim Formal Verification of Graph-Based Model Transformations , 2015 .

[16]  Esther Guerra,et al.  Specification-driven model transformation testing , 2015, Software & Systems Modeling.

[17]  Jürgen Dingel,et al.  A Tridimensional Approach for Studying the Formal Verification of Model Transformations , 2012, 2012 IEEE Fifth International Conference on Software Testing, Verification and Validation.

[18]  Juan de Lara,et al.  Verification and validation of declarative model-to-model transformations through invariants , 2010, J. Syst. Softw..

[19]  Gerti Kappel,et al.  Automated verification of model transformations based on visual contracts , 2013, Automated Software Engineering.

[20]  Jürgen Dingel,et al.  An executable formal semantics for UML-RT , 2014, Software & Systems Modeling.

[21]  Jürgen Dingel,et al.  Formal Verification Techniques for Model Transformations: A Tridimensional Classification , 2015, J. Object Technol..

[22]  Kevin Lano,et al.  Constraint-based specification of model transformations , 2013, J. Syst. Softw..