Model transformation, abilities and perspectives through ATL and Declarative QVT
With Eclipse Modeling Framework (EMF), one can already define a modeling language and use it to model whatever he wants.
Once the language is defined, it is used, in a modeling effort, to describe its subject.
This is where things goes wild (as in every IT engineering field):
- What if your neighbor do not use the same language as yours?
- What if the domain evolves and makes you language (and thus your models) obsolete?
- How to ensure the consistency of your many models representing the same system?
The answer for all of this is model transformation!
And this is where a model transformation language gets involved!
Indeed, even though EMF provides a very good quality API to handle models, the M2M project aims at providing programming languages specialized in model transformation. The use of a M2M language leads in shorter, simpler and more maintainable transformation programs!
If those languages can be imperative (much more Java or C), they can also leverage a declarative style closer to human mind and closer to the modeling process: This is the case for ATL
and the Declarative QVT languages : QVT Core
and QVT Relations
is historically the first model transformation language in Eclipse whereas QVT
is the OMG standard.
In this talk, a comparison of these two languages will be made in real world scenarii.
A demonstration of their abilities will be shown to exemplify the use of model engineering in every day's development.
The talk will then present the tools created inside eclipse to facilitate the model engineer's life and it will end up by making a a point on the future developments.