Section: New Results
Model Weaving and Model Matching
Our initial investigation in the area of model weaving has lead us to consider three problems: (a) the representation of correspondences between models, (b) the computation of correspondence sbetween models and (c) the utilization of correspondences between models. The Eclipse AMW prototype has allowed to experiment in these three situations and to propose a first spectrum of use cases  . Starting from this situation we are improving the AMW prototype to investigate in several areas for example:
Problem 1. Provide a development environment such that, given two metamodels, one may partially automate the creation of matching rules between them. One way to achieve this is to define a new DSL more adapted to this task than a simple transformation language. Also the expression of matching heuristics requires a specific DSL. In 2009, AtlanMod has defined the AML  (AtlanMod Matching Language) for this purpose.
Problem 2. Provide a development environment such that, given two metamodels and matching rules between them, one may easily create transformation code. This is also related to the next problem (Model Driven Software Modernization).
Problem 3. Model weaving may also be applied to model driven software modernization. In a given organization, there are a lot of evolving software fragments. One typical problem is the change of versions of schemas, grammars, metamodels, APIs, etc. We are working on the partial automation of these operations. The idea is to compute weaving difference models between different versions by the way of a sequence of matching heuristics. From there we can apply higher order transformations to generate the tools that will perform the conversion  .