Modeling technologies help design software systems by offering the possibility to represent their different parts (e.g., user interface, class structure) more adequately as models defined in Domain-Specific Languages (DSLs). This contrasts with the traditional way of encoding all the functionality of a large system using a single General Purpose Language like Java. However, for the system to actually run, code has to be generated from these higher-level models. Model-to-Model (M2M) transformation is one of the key techniques that are used to achieve this result. The tools provided in the M2M Eclipse.org modeling project make it possible for developers to use this technique in practice. They are to model-to-model transformation what JDT (Java Development Tools) are to Java development.
This tutorial presents the ATL language and its toolbox, which are provided in the M2M project: editor (with syntax highlighting, content assist), execution engine, and debugger. Attendees will learn how to use ATL on concrete case-studies. The corresponding methodology will also be presented: creating metamodels (i.e., abstract syntaxes of DSLs) to capture the source and target domains, then writing transformation rules to map source concepts to target concepts. Full source code of the presented material will be made available.
The presentation will be performed by model-to-model transformation experts, among who is the architect of ATL, who designed the language and created the initial implementation (now further developed by contributors from the Eclipse.org community).
Frédéric is the architect and lead of M2M/ATL, and of GMT/TCS (soon TMF/TCS). He created these two languages, and tools as part of his Ph.D. thesis. Frédéric is continuing his research activities on model-to-model transformation, as well as on textual syntaxes. This notably results in improvements of ATL and TCS. He is also using these tools for teaching purposes.
Brahim Khalil Loukil is a software engineer at INRIA located in Nantes, France. He is a Eclipse committer working on the AM3 and AMW projects. He is also the author and architect of two modeling projects: OWL VE and BEM. His technical interests are model driven engineering, UI design and RCP. Brahim can be reached at http://brlouk2008.teamsoftsuite.com
William Piers, MDA Consultant at Obeo, is currently working on the m2m part of modeling, especially for ATL and QVT-R projects. He is committer on these two projects. He has graduated a Master at the University of Nantes and specialized himself in software engineering and model driven engineering.