Model transformation

Model transformations (also model-to- model transformation or M2M - transformation ) are an important means for the model-driven software development (MDSD / MDA).

This model transformations occur usually on as an additional step between the validating and code generation. You prepare the imported models such as the code generator to expect. Transformation rules are defined at the level of meta-models. Thus, both the source and the target model instances defined metamodels need to be.

  • 3.1 Overview of work on model transformations
  • 3.2 Literature on model-driven software development in general

Types of model transformations

Model modification ( also: inplace transformation )

Here, the transformation does not generate a new model, but modified the source model. This type of transformation is often used to extend models to a few simple things. For example, you may have a ' emergency stop ' state add and then connect these new transitions to all states modeled for a state machine.

Here always, the source model == target model

Model-to- model transformation (M2M )

In these more complex scenarios, one or more source models into one or more target models are transformed. The source models are not changed and the metamodels can ( but need not) be different.

This is always the case! Source model = target model

Model-to- text transformation ( M2T )

In some circuits, the generation of text (in this case the model -to-text ) is called transformation. In fact, it involves code generators, whereby this term is not quite ideal, because it suggests that it only generates source code ( Code ) with it. In fact, all kinds of text from models are derived in practice.

Technologies

  • QVT - The OMG standard for Meta- model-to- model transformation
  • MOF2Text - The OMG standard for Meta- Model to Text Transformation
  • Xpand - part of the generator frameworks OpenArchitectureWare to describe both model-to- model transformations, Modellmodifkation and code generators.
  • Atlas Transformation Language (ATL ) - A model to model transformation toolkit based on the Eclipse Modeling Framework
  • Graph rewriting - models are usually graphs, which can be transformed with the help of graph rewriting tools and declarative graph rewriting rules. Triple Graph Grammar - A graph -based model transformation technique substitutions
577335
de