BX

© CSXW 2011

The CSXW 2011 workshop is a spinn-off from a seminar series on bidirectional transformations (BX) [2] which started with the BX Grace Seminar in Japan in 2009 and continued with the BX Dagstuhl Seminar 11031 in Germany in 2011. BX constitute a prominent class of coupled transformations. For clarification, consider the following definition of BX: "A BX between two sources of information A and B ... comprises a pair of unidirectional transformations: one from A to B and another from B back to A." [2]. This definition stipulates a certain restriction with regard to the involved artifacts and the relationship between them.

For instance, updatable views in databases toegther with the underlying tables quite reasonably correspond to the two sources of the BX definition, where the materialization of a view from a table is one uni-directional transformation, and the propagation of updates of the view back into the table is the other uni-directional transformation. In contrast, consider model evolution in reply to metamodel evolution. The two artifacts model and metamodel cannot be reasonably viewed as two sources of information with transformations between them. Instead, these two artifacts participate in a conformance relationship, which is to be preserved or re-established. Such coverage of arbitrary relationships is served by coupled software transformations.

Some transformation scenarios that appear to be "degenerated BX" scenarios are nevertheless interesting from a general software transformation perspective and they are pretty complicated in nature and not degenerated in terms of a focus on coupling changes and co-changes. For instance, XML data binding seems to boil down to a degenerated BX scenario since XML data biding essentially deals with injective mappings from serialized XML to suitable object trees. However, these mappings are still difficult to design, and the coupling between type-level mapping vs. instance-level mapping is part of the challenge. Overall, it is hoped that a broader discussion of coupled software transformations will also feed into a better understanding of bidrectional transformations.

A more detailed discussion of transformation scenarios is available.