Validation in model-driven engineering: testing model transformations

The OMG's model-driven architecture is quickly attracting attention as a method of constructing systems that offers advantages over traditional approaches in terms of reliability, consistency, and maintainability. The key concepts in the MDA are models that are related by model transformations. However, for the MDA to provide an adequate alternative to existing approaches, it must offer comparable support for software engineering processes such as requirements analysis, design and testing. This paper attempts to explore the application of the last of these processes, testing, to the most novel part of the MDA, that of model transformation. We present a general view of the roles of testing in the different stages of model-driven development, and a more detailed exploration of approaches to testing model transformations. Based on this, we highlight the particular issues for the different testing tasks, including adequacy criteria, test oracles and automatic test data generation. We also propose possible approaches for the testing tasks, and show how existing functional and structural testing techniques can be adapted for use in this new development context.

[1]  Jean-Marc Jézéquel,et al.  Automatic test case optimization using a bacteriological adaptation model: application to .NET components , 2002, Proceedings 17th IEEE International Conference on Automated Software Engineering,.

[2]  Robert V. Binder,et al.  Testing Object-Oriented Systems: Models, Patterns, and Tools , 1999 .

[3]  Marc J. Balcer,et al.  The category-partition method for specifying and generating fuctional tests , 1988, CACM.

[4]  Stuart Kent,et al.  A Relational Approach to Defining Transformations in a Metamodel , 2002, UML.

[5]  Robert B. France,et al.  Test adequacy criteria for UML design models , 2003, Softw. Test. Verification Reliab..

[6]  Jean-Marc Jézéquel,et al.  Genes and bacteria for automatic test cases optimization in the .NET environment , 2002, 13th International Symposium on Software Reliability Engineering, 2002. Proceedings..

[7]  Jim Steel,et al.  Transformation: The Missing Link of MDA , 2002, ICGT.

[8]  Jean-Marc Jézéquel,et al.  Reliable Objects : Lightweight Testing for OO Languages , 2001 .

[9]  Jim Steel,et al.  Model transformation: a declarative, reusable patterns approach , 2003, Seventh IEEE International Enterprise Distributed Object Computing Conference, 2003. Proceedings..

[10]  Alexander L. Wolf,et al.  A Case for Test-Code Generation in Model-Driven Systems , 2003, GPCE.

[11]  Jean-Marc Jézéquel,et al.  Reflective Model Driven Engineering , 2003, UML.

[12]  Jean-Marc Jézéquel,et al.  OCL as a Core UML Transformation Language WITUML 2002 – Position Paper , 2002 .

[13]  Richard Mark Soley Model Driven Architecture: Three Years On , 2003, CoopIS/DOA/ODBASE.

[14]  Sinan Si Alhir The Object Constraint Language (OCL) , 2002 .

[15]  Reiko Heckel,et al.  Towards Model-Driven Testing , 2003, TACoS.

[16]  Colin Atkinson,et al.  Built-in Contract Testing in Model-driven , Component-Based Development , 2002 .

[17]  Axel Uhl,et al.  Model-Driven Architecture , 2002, OOIS Workshops.