A Generic White-Box Testing Framework for Model Transformations
A Generic White-Box Testing Framework for Model Transformations
Disciplines
Computer Sciences (100%)
Keywords
-
Model Transformation,
Model Transformation Testing,
Model-Driven Engineering,
White-Box Testing
Theproject TETRABox(A Generic White-Box TEsting Framework for Model TRAnsformations) resides in the context of Model-Driven Engineering (MDE), which proposes the use of models to conduct software development on a higher level of abstraction. These models are intended to be transformed into code by dedicated transformations, thereby achieving quality and productivity gains. Given the prominent role of transformations 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 test source model generation and fault localization, and they are 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 mostly 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 comprehensive testing framework for model transformations called TETRABox, whereby we base on the experiences gained in our previous FWF-funded project TROPIC. TETRABox supports all testing phases, ranging from test source model generation to fault localization especially focusing on configurable components. To keep the framework broadly applicable, the envisioned components for testing are independent of a transformation language, allowing new languages to be incorporated by providing a transformation to the common formalism of a control flow graph. Second, to leverage white-box testing, TETRABox allows the automatic generation of test source models on basis of the transformation definition by means of symbolic execution. Finally, for fault localization, oracles offering a dedicated failure trace are employed, which are used to provide an entry point for debugging by slicing techniques. The methodology for evaluating the TETRABox framework builds on three major pillars. First, transformations of the ATL model transformation zoo will be systematically tested by means of mutation testing and the results will be compared to existing testing techniques. Second, an empirical study with students from our model engineering courses (around 200 master students every year) will be conducted, whereby errors will be seeded into existing transformations, and the students will have to spot these errors with and without the help of the TETRABox framework. Finally, dedicated workshops will be held with (inter-)national partners. Consequently, the realization of the project TETRABox would represent a major cornerstone in letting the vision of Model-Driven Engineering coming true.
Model transformations are crucial for the success of Model-Driven Engineering (MDE) which aims at specifying software systems at a higher abstraction level using a network of models before the systems are realized for specific platforms using code generation techniques. Model transformations allow to manipulate existing as well as to generate new models by including or removing (un)necessary information for given purposes (e.g., assessing performance or safety aspects). Given their prominent role in MDE and their increasing use in safety critical areas such as production systems, automotive, or smart cities, proper means for testing the correctness of model transformations are inevitable. Although first testing approaches have been proposed in the past, they fall short in crucial phases such as the selection of the most important test models as well as to locate the faults in the transformation which are revealed by the test cases. In addition, existing approaches are tightly coupled with specific model transformation languages, neglect information about the inner structure of transformations, and finally, do not consider information about the progress of the testing process which is important for regression testing. To tackle these limitations, we worked on a comprehensive testing framework for model transformations called TETRABox (A Generic White-Box TEsting Framework for Model TRAnsformations). TETRABox supports all testing phases ranging from test case selection to fault localization considering the inner structure of transformations as well as the progress of the testing process. To keep TETRABox broadly applicable, we aimed for reusable concepts which are independent of specific transformation languages, but at the same time, we instantiated these concepts for particular model transformation languages such as the ATLAS Transformation Language (ATL) - one of the most used transformation languages. Furthermore, we have developed general testing and debugging support for executable modelling languages (model transformation languages can be considered as a specific kind of executable modelling languages) in the open-source GEMOC language workbench, which supports us in the specification of existing and future model transformation languages offering out-of-the-box testing and debugging support.
- Universität Linz - 100%
- Jordi Cabot, Luxembourg Institute of Science and Technology - Luxembourg
- Juan De Lara, Ciudad Universitaria de Cantoblanco - Spain
- Antonio Vallecillo, Universidad de Málaga - Spain
Research Output
- 507 Citations
- 31 Publications
- 7 Scientific Awards
- 2 Fundings
-
2022
Title Behavioral Typing to Support Offline and Online Analysis for Executable DSLs DOI 10.34726/hss.2022.102464 Type Other Author Leroy D Link Publication -
2022
Title Model Transformation Testing and Debugging: A Survey DOI 10.1145/3523056 Type Journal Article Author Troya J Journal ACM Computing Surveys Pages 1-39 Link Publication -
2024
Title Measuring the Fidelity of a Physical and a Digital Twin Using Trace Alignments DOI 10.1109/tse.2024.3462978 Type Journal Article Author Muñoz P Journal IEEE Transactions on Software Engineering Pages 3122-3145 -
2020
Title Behavioral Interfaces for Executable DSLs DOI 10.18420/se2021_25 Type Other Author Bousse E Link Publication -
2020
Title Runtime Monitoring for Executable DSLs. DOI 10.5381/jot.2020.19.2.a6 Type Journal Article Author Leroy D Journal The Journal of Object Technology Pages 6:1 Link Publication -
2020
Title Efficient Execution of ATL Model Transformations Using Static Analysis and Parallelism DOI 10.1109/tse.2020.3011388 Type Journal Article Author Cuadrado J Journal IEEE Transactions on Software Engineering Pages 1097-1114 Link Publication -
2019
Title On the Need for Data-Based Model-Driven Engineering DOI 10.1007/978-3-030-25312-7_5 Type Book Chapter Author Mazak A Publisher Springer Nature Pages 103-127 -
2019
Title Managing inter-model inconsistencies in model-based systems engineering: Application in automated production systems engineering DOI 10.1016/j.jss.2019.03.060 Type Journal Article Author Feldmann S Journal Journal of Systems and Software Pages 105-134 -
2019
Title Automated metamodel/model co-evolution: A search-based approach DOI 10.1016/j.infsof.2018.09.003 Type Journal Article Author Kessentini W Journal Information and Software Technology Pages 49-67 -
2019
Title Domain-Specific Model Distance Measures. DOI 10.5381/jot.2019.18.3.a3 Type Journal Article Author Syriani E Journal The Journal of Object Technology Pages 3:1 Link Publication -
2019
Title Searching for Optimal Models: Comparing Two Encoding Approaches. DOI 10.5381/jot.2019.18.3.a6 Type Journal Article Author John S Journal The Journal of Object Technology Pages 6:1 Link Publication -
2019
Title Model-driven Runtime State Identification Type Conference Proceeding Abstract Author Mazak Alexandra Conference 40 Years EMISA 2019 Pages 29-44 Link Publication -
2019
Title Domain-Level Observation and Control for Compiled Executable DSLs DOI 10.1109/models.2019.000-6 Type Conference Proceeding Abstract Author Bousse E Pages 150-160 Link Publication -
2019
Title Thirteen years of SysML: a systematic mapping study DOI 10.1007/s10270-019-00735-y Type Journal Article Author Wolny S Journal Software and Systems Modeling Pages 111-169 Link Publication -
2018
Title Automated Co-evolution of Metamodels and Transformation Rules: A Search-Based Approach DOI 10.1007/978-3-319-99241-9_12 Type Book Chapter Author Kessentini W Publisher Springer Nature Pages 229-245 -
2016
Title On Leveraging Executable Language Engineering for Domain-Specific Transformation Languages Type Conference Proceeding Abstract Author Bousse Erwan Conference Proceedings of the 2nd International Workshop on Executable Modeling (EXE 2016) @ MODELS 2016 Pages 41-43 Link Publication -
2016
Title Execution framework of the GEMOC studio (tool demo) DOI 10.1145/2997364.2997384 Type Conference Proceeding Abstract Author Bousse E Pages 84-89 Link Publication -
2016
Title Proceedings of the 2016 ACM SIGPLAN International Conference on Software Language Engineering, SLE 2016 DOI 10.1145/2997364 Type Journal Article -
2018
Title Omniscient debugging for executable DSLs DOI 10.1016/j.jss.2017.11.025 Type Journal Article Author Bousse E Journal Journal of Systems and Software Pages 261-288 Link Publication -
2018
Title Trace Comprehension Operators for Executable DSLs DOI 10.1007/978-3-319-92997-2_19 Type Book Chapter Author Leroy D Publisher Springer Nature Pages 293-310 -
2018
Title Concern-oriented language development (COLD): Fostering reuse in language engineering DOI 10.1016/j.cl.2018.05.004 Type Journal Article Author Combemale B Journal Computer Languages, Systems & Structures Pages 139-155 Link Publication -
2020
Title On the value of quality attributes for refactoring ATL model transformations: A multi-objective approach DOI 10.1016/j.infsof.2019.106243 Type Journal Article Author Alkhazi B Journal Information and Software Technology Pages 106243 -
2020
Title Towards Integrating Data-Driven Requirements Engineering into the Software Development Process: A Vision Paper DOI 10.1007/978-3-030-44429-7_10 Type Book Chapter Author Franch X Publisher Springer Nature Pages 135-142 -
2020
Title Multi-criteria test cases selection for model transformations DOI 10.1007/s10515-020-00271-w Type Journal Article Author Alkhazi B Journal Automated Software Engineering Pages 91-118 -
2020
Title Towards a Model-Based DevOps for Cyber-Physical Systems DOI 10.1007/978-3-030-39306-9_6 Type Book Chapter Author Combemale B Publisher Springer Nature Pages 84-94 -
2020
Title Behavioral interfaces for executable DSLs DOI 10.1007/s10270-020-00798-2 Type Journal Article Author Leroy D Journal Software and Systems Modeling Pages 1015-1043 Link Publication -
2017
Title A local and global tour on MOMoT DOI 10.1007/s10270-017-0644-3 Type Journal Article Author Bill R Journal Software & Systems Modeling Pages 1017-1046 -
2017
Title A Feature-Based Approach for Variability Exploration and Resolution in Model Transformation Migration DOI 10.1007/978-3-319-61482-3_5 Type Book Chapter Author Di Ruscio D Publisher Springer Nature Pages 71-89 -
2017
Title Advanced and efficient execution trace management for executable domain-specific modeling languages DOI 10.1007/s10270-017-0598-5 Type Journal Article Author Bousse E Journal Software & Systems Modeling Pages 1-37 Link Publication -
2017
Title Domain-Level Debugging for Compiled DSLs with the GEMOC Studio Type Conference Proceeding Abstract Author Bousse Erwan Conference Proceedings of the 1rst International Workshop on Debugging in Model-Driven Engineering (MDEbug) @ MODELS Pages 457-459 Link Publication -
2017
Title Create and Play Your Pac-Man Game with the GEMOC Studio Type Conference Proceeding Abstract Author Bousse Erwan Conference Proceedings of the 3rd International Workshop on Executable Modeling (EXE) @ MODELS Pages 84-87 Link Publication
-
2020
Title Keynote Talk at EDOC 2020 Conference Type Personally asked as a key note speaker to a conference Level of Recognition Continental/International -
2019
Title Editorial Board Member of IEEE Transactions on Automation Science and Engineering Type Appointed as the editor/advisor to a journal or book series Level of Recognition Continental/International -
2019
Title Editorial Board Member of Journal of Object Technology Type Appointed as the editor/advisor to a journal or book series Level of Recognition Continental/International -
2019
Title Keynote Talk at FlexMDE Workshop @ MODELS 2019 Type Personally asked as a key note speaker to a conference Level of Recognition Continental/International -
2018
Title Keynote Talk at RunMDE Workshop @ STAF 2018 Type Personally asked as a key note speaker to a conference Level of Recognition Continental/International -
2018
Title Keynote Talk at PNSE Workshop @ PetriNets 2018 Type Personally asked as a key note speaker to a conference Level of Recognition Continental/International -
2017
Title Editorial Board Member of Software and Systems Modeling Journal Type Appointed as the editor/advisor to a journal or book series Level of Recognition Continental/International
-
2021
Title AIDOaRt: AI-augmented DevOps, a model-based framework for continuous development At RunTime for CPSs, H2020-ECSEL-2020 Type Research grant (including intramural programme) Start of Funding 2021 -
2019
Title (Lowcomote) - Training the Next Generation of Experts in Scalable Low-Code Engineering Platforms Type Research grant (including intramural programme) Start of Funding 2019