Foundations, Applications and Tools for Bidirectional Transformation


Dez 23

New papers accepted for publication at PEPM'14 and FASE'14.

Aug 26

Tool demo accepted for publication at ASE'13: Nuno Macedo, Tiago Guimarães, and Alcino Cunha, Model Repair and Transformation with Echo.

Mar 18

Our FASE'13 paper on Implementing QVT-R Bidirectional Model Transformations using Alloy is one of the nominated for best paper at ETAPS.

Feb 1

Paper accepted for publication at BX'13: N. Macedo, H. Pacheco, A. Cunha, and J. N. Oliveira: Composing Least-change Lenses.

Dec 21

Two new students have joined the project team as BI grant holders. Nuno Sousa will be working on bidirectionalizing spreadsheet formulas, and Tiago Guimarães will help in the implementation of a QVT-R bidirectional transformation tool.

Dec 18

Paper accepted for publication at FASE'13: N. Macedo and A. Cunha: Implementing QVT-R Bidirectional Model Transformations using Alloy.

Oct 10

Two 6 month grants available to work on bidirectional transformations!

Jun 16

Paper accepted for publication at RAMICS'12: N. Macedo, H. Pacheco and A. Cunha: Relations as executable specifications: taming partiality and non-determinism using invariants.

Jun 1

Paper accepted for publication at the post-proceedings of BX'12: H. Pacheco, A. Cunha and Z. Hu. Delta Lenses over Inductive Types.

Old News

Research » FATBIT » WebHome » FctForm » T4

T4 - Application Domain 2: Model-Driven Engineering

The objective of this task is to provide a MDA compliant bidirectional model transformation language. The proposed language should be expressive enough to handle the following model-driven software development scenarios:

  • Refining UML class diagram to relational database schemas. This is the "hello-world" of MDE and the classic benchmark of every new model transformation language. The benefits from bidirectionalization are obvious: a database schema has the unpleasant tendency to gain a life of its own, and this would allow an effective documentation of such evolution, by reflecting the changes back to the UML class diagram. There are several variants of this case-study, using different source modeling languages, that should also be considered.
  • Viewpoint modeling is a technique for specifying complex software systems in terms of views, possibly independent or at different abstraction levels, that allow the user to focus just on modeling artifacts related to a particular interest area. Obviously, different views may share elements, and specifying and ensuring the consistency between them is a key issue. If views are extracted from the global model using a bidirectional transformation, consistency between views could be achieved using a technique similar to Harmony [7], a data synchronization framework built using lenses. In particular, we intend to target UML, whose daunting meta-model could benefit from this approach: independent teams could focus on different modeling aspects (for instance, class and sequence diagrams), with predictable synchronization guarantees.

In order to foster its widespread adoption, the proposed language should be compatible with the MOF standard. As such, the first step will be to define an encoding from MOF meta-models to the data structures of the common framework to be defined in task 2. The second step will be the definition of the bidirectional transformation language itself. Instead of proposing a completely new language, we intend to research the possibility of defining it as a variation of an existing model transformation language, such as the unidirectional ATLAS Transformation Language (ATL) or the bidirectional QVT-R domain-specific language. The key problem will be to identify subsets of these languages with precise bidirectional semantics. Since they are highly declarative, namely simple mapping rules expressing relationships between elements of the meta-model, we believe that our common framework based on relational calculus will be ideal to support their implementation. The relationships described by the mapping rules can be transliterated to relational specifications in our PF calculus, from which we expect to calculate the required data dependencies and corresponding valid bidirectionalizations. Effective data redundancy and alignment mechanisms must be provided to tame the non-determinism and control flow of the global transformation.

Given his experience on defining BTs on top of 2LT, namely on model transformation from XML schemas to database schemas [31], Hugo Pacheco will be responsible for this task. Nuno Macedo is involved since this application domain is central to the validation of the techniques to be defined on his PhD thesis. The research team of this task includes also Alcino Cunha (supervisor of this thesis) and a BI grant holder (master student) to support the implementation of the parser and compiler of the proposed language.

The expected deliverables of this task are:

  • A MDA compliant bidirectional model transformation language.
  • Two international conference papers and a journal paper describing the proposed language and its application to the aforementioned scenarios.
  • A master thesis describing the implementation of the language.


  • Hugo Pacheco
  • Manuel Alcino Cunha
  • Nuno Macedo [PhD]
  • BI3

r10 - 22 Feb 2011 - 14:41:42 - AlcinoCunha
This site is powered by the TWiki collaboration platform Copyright © by the contributing authors. Ideas, requests, problems? Send feedback.
Syndicate this site RSSATOM