Testing Model Transformations: A Case for Test Generation from Input Domain Models 1
Model transformation is a key mechanism when building distributed real-time systems (DRES) with model-driven development (MDD). It is used to automatically perform a large number of tasks in the development of DRES. The DOC group at Vanderbilt University has extensively investigated MDD for DRES. In this context, Madl et al. [MAD 06] use model transformations in order to apply model checking techniques on early design models, Gokhale et al. [GOK 08] develop model transformations that automate deployment tasks of component-based DRES and Shankaran et al. [SHA 09] use model transformations to dynamically adapt a DRES when its environment changes. The ACCORD/UML [GER 00] methodology developed by CEA also makes an extensive use of model transformations for a model-driven development of DRES. Model transformations encapsulate specific steps in the development methodology and generate optimized code. Airbus develops large model transformations that automatically generate optimized embedded code for the A380 from SCADE models.
Due to the critical role that model transformations play in the development of DRES, thorough validation techniques are required to ensure their correctness. A fault in a transformation can introduce a fault in the transformed model, which, if undetected and not removed, can propagate to other models in successive development steps. As a fault propagates ...