Model Transformation: A Survey of the State of the Art
Tom Mens · 2013
Model-Driven Engineering (MDE) is an approach to software development where the principle artefacts are models. In contrast, the state of the art in MDE support is model centric, where the code can be fully generated from the models. Accepting the basic idea that everything is a model, and adopting a model-centric view, we need techniques and tools that allow us to manipulate and reason about such models. The technique that can be used to achieve this is commonly referred to as model transformation. It is needed for supporting a wide range of model-driven activities such as code generation, model extraction, model refactoring, model verification, model simulation, and many more. Model transformation languages serve to specify the syntax and semantics of model transformations, and are essential if we want to provide automated support for model transformation. This chapter overviews a wide variety of model-based activities in which model transformations are essential. Controlled Vocabulary Terms data models; simulation languages