TETRABox - A Generic White-Box Testing Framework for Model Transformations

Partners: Business Informatics Group (BIG) of the Vienna Institute of Technology (TU Wien), Cooperative Information Systems (CIS) group of the Johannes Kepler University Linz (JKU Linz)

Funding: FWF Stand-alone Project

Employed Technologies: GEMOC Studio, Ecore, Xtext, Kermeta 3, Melange

Web: http://modeltransformation.net/tetrabox/

Team: Ass. Prof. Mag. Dr. Elisabeth Kapsammer, Assoc. Prof. Mag. Dr. Wieland Schwinger M.Sc., a.Univ.-Prof. Mag. Dr. Werner Retschitzegger


Model transformations are crucial for the success of Model-Driven Engineering (MDE), comparable in role and importance to compilers for programming languages, allowing to transform models between languages and abstraction levels, e.g., to generate platform-dependent models from platform-independent ones. Given their prominent role in MDE and their increasing use in safety critical areas such as the aviation industry, proper means for testing the correctness of model transformations are inevitable.

 

Although first testing frameworks have been proposed, they fall short with respect to the crucial phases of test source model generation and fault localization, and they are typically hardly configurable and tightly coupled to a certain transformation language. Second, apart of these frameworks, first isolated approaches for the phase of test source model generation have been proposed, which, however, rely on black-box testing techniques, thus, incorporating the source metamodels and the requirements, but neglect the transformation definition, which may lead to untested parts of the transformation definition. Finally, means for fault localization are missing, since testing approaches identify the failing of a test case, but miss to provide the failing parts of the transformation definition.

 

For tackling these limitations, the aim of this project is to establish a generic and comprehensive testing framework for model transformations called TETRA Box (A Generic White-Box TEsting Framework for Model TRAnsformations), whereby we base on the experiences gained in our previous FWF-funded project TROPIC. The goal of TETRA Box is to support all testing phases, ranging from test source model generation to fault localization especially focusing on configurable components. To keep the framework broadly applicable,  components must be independent of a transformation language, either through the use of a common formalism (eg. control flow graph), or by analyzing the semantics of the considered model transformation language. Envisioned components include a  generator of test source models on basis of the transformation definition by means of symbolic execution, and a fault localization tool to trace failures back to the correct part of the executed transformation.


Publications:

    2016

  1. Erwan Bousse, Manuel Wimmer, Wieland Schwinger, Elisabeth Kapsammer. On Leveraging Executable Language Engineering for Domain-Specific Transformation Languages. Proceedings of the 2nd International Workshop on Executable Modeling co-located with ACM/IEEE 19th International Conference on Model Driven Engineering Languages and Systems (MODELS 2016), Saint-Malo, France, . Tanja Mayerhofer and Philip Langer and Ed Seidewitz and Jeff Gray, editors, Saint-Malo, France,Vol. 1760 of CEUR Workshop Proceedings, pages: 41--43. October, 2016. PDF BibTeX
    @inproceedings{DBLP:conf/models/BousseWSK16,
       title = {On Leveraging Executable Language Engineering for Domain-Specific Transformation Languages},
       author = {Erwan Bousse and Manuel Wimmer and Wieland Schwinger and Elisabeth Kapsammer},
       year = {2016},
       booktitle = {Proceedings of the 2nd International Workshop on Executable Modeling co-located with {ACM/IEEE} 19th International Conference on Model Driven Engineering Languages and Systems {(MODELS} 2016), Saint-Malo, France, },
       pages = {41--43},
       volume = {Vol. 1760 },
       month = {10},
       series = {CEUR Workshop Proceedings},
       address = {Saint-Malo, France}
    }