16. – 21. Januar 2011, Dagstuhl-Seminar 11031

Bidirectional Transformations "bx"


Zhenjiang Hu (National Institute of Informatics – Tokyo, JP)
Andy Schürr (TU Darmstadt, DE)
Perdita Stevens (University of Edinburgh, GB)
James F. Terwilliger (Microsoft Corporation – Redmond, US)

Auskunft zu diesem Dagstuhl-Seminar erteilt

Dagstuhl Service Team


Dagstuhl Report, Volume 1, Issue 1 Dagstuhl Report
Dagstuhl's Impact: Dokumente verfügbar
Programm des Dagstuhl-Seminars [pdf]


The Dagstuhl seminar intended to go a step further and begin to identify commonalities between the disciplines and start to set a cross-disciplinary research agenda. The first part of the seminar consisted of tutorials from each of the four represented disciplines on the various bidirectional transformation solutions that field has to offer. The second part consisted of cross-disciplinary working groups dedicated to investigating specific examples of commonality between solutions or identifying requirements, terminology, or scenarios that may reach across fields. There were also a number of sessions reserved for participants to give position statements regarding their individual fields of research.

Participation at both the Dagstuhl and GRACE seminars came from four disciplines:(1) Programming Languages (PL), (2) Graph Transformations (GT), (3) Software Engineering (SE), and (4) Databases (DB). Each of the first three disciplines made up about 2/7 of the participants, while databases took the remaining 1/7 out of about 39 participants. Representation from the database field was, nevertheless, an improvement over the turnout from the GRACE meeting.

The first part of the workshop was allocated for representatives from each of the four disciplines giving deep tutorials of about two hours length on the various solutions to bidirectional transformation problems offered by that discipline. In all cases these tutorials were presented by groups of scientists, who were responsible to offer the attendants of the other disciplines a basic introduction into their field as well as to highlight different aspects of ongoing research activities. The PL-related tutorial consisted of five parts presented by Nate Foster, Robert Gl\"{u}ck, Zhenjiang Hu, Benjamin Pierce, and Janis Voigtl\"{a}nder. It contained a general introduction to the whole research area of bx. Furthermore, it addressed a large variety of different aspects ranging from specific types of bx programming languages on one hand to model/graph transformation approaches in the software-engineering world and lense-based view definition approaches in the database system world on the other hand. As a consequence this set of (sub-)tutorials also was responsible for highlighting already existing links between the existing bx subcommunities. The DB-tutorial offered by Jean-Luc Hainaut and James Terwilliger nicely complemented the preceding tutorial. A survey of various opportunities for using bx transformations in database engineering processes as well as for specifying views by means of bx technologies was presented. The GT-related tutorial afterwards given by Andy Sch\"{u}rr and Frank Hermann focused on one special category of bidirectional graph transformations. Its two parts dealt with practical as well as theoretical aspects of bx graph transformations. Finally, the SE-related tutorial of Krzysztof Czarnecki and Stephan Hildebrandt concluded the first 2.5 days long introduction to the field of bx with a discussion of model synchronization and incremental change propagation techniques from the point of view of the software engineering community. For a more detailed description of the four (sets of) tutorials the reader is referred to their abstracts collected in this Proceedings.

Working Groups

After the ground had been prepared by the above mentioned list of tutorials the participants had the opportunity to present specific research results and challenges in the form of 27 short presentations. Furthermore, six working groups were organized related to cross-disciplinary topics that were identified during the first days of the Seminar. The summaries of three of these working groups only finally made into the Proceedings, but all of them were very helpful to deepen our understanding of common challenges and triggered new research cooperations across the four disciplines. The list of addressed topics included aspects like the design of bx benchmarks, the identification of typical bx application scenarios and their requirements as well as options for the joint development of a new generation of bx languages that would incorporate and combine elements from solutions developed in different disciplines. The individual position statements covered a very broad spectrum of topics; they were used to intensify already started discussions of the first tutorial days and gave further input for the identification of new workshop topics. Again the reader is referred to the abstracts collected here for more details.

We went into the seminar knowing that longer-term ideas like a common research agenda or a benchmark would take longer than a single week. The participants decided on several follow-up actions to keep work progressing:

  • A follow-up meeting in the same style as the GRACE and Dagstuhl seminars to continue collaborating on a cross-disciplinary research agenda
  • Workshops at conferences associated with each of the disciplines to work toward specific, targeted goals (a first one has already been scheduled associated with GTTSE 2011, and will focus on developing a benchmark; a second follow-up event has just been accepted as a satellite workshop for ETAPS.)
  • Tutorials and other assorted smaller, education-minded events at conferences to continue bringing awareness of bidirectional solutions from other disciplines, as well as awareness of the general BX effort
  • Smaller-scale research cooperations that combine techniques from different fields like merging concepts from bidirectional programming languages and triple graph grammars as envisaged in one of the seminar's working groups.

In particular, one goal of the upcoming seminars and workshops is to increase participation from the database community. The bidirectional transformation problem has origins deep in the database community, but now has grown so that solutions are being driven from many different directions in different fields across computer science. The plan is to hold some of the tutorials or workshops at database venues to help solicit more ideas and opportunities for collaboration; details will be made available once they are scheduled.

Related Dagstuhl-Seminar


In der Reihe Dagstuhl Reports werden alle Dagstuhl-Seminare und Dagstuhl-Perspektiven-Workshops dokumentiert. Die Organisatoren stellen zusammen mit dem Collector des Seminars einen Bericht zusammen, der die Beiträge der Autoren zusammenfasst und um eine Zusammenfassung ergänzt.


Download Übersichtsflyer (PDF).

Dagstuhl's Impact

Bitte informieren Sie uns, wenn eine Veröffentlichung ausgehend von Ihrem Seminar entsteht. Derartige Veröffentlichungen werden von uns in der Rubrik Dagstuhl's Impact separat aufgelistet  und im Erdgeschoss der Bibliothek präsentiert.


Es besteht weiterhin die Möglichkeit, eine umfassende Kollektion begutachteter Arbeiten in der Reihe Dagstuhl Follow-Ups zu publizieren.