Electronic Communications of the EASST Volume 49 (2012) Proceedings of the First International Workshop on Bidirectional Transformations (BX 2012) Preface 4 pages Guest Editors: Frank Hermann, Janis Voigtländer Managing Editors: Tiziana Margaria, Julia Padberg, Gabriele Taentzer ECEASST Home Page: http://www.easst.org/eceasst/ ISSN 1863-2122 http://www.easst.org/eceasst/ ECEASST Preface Bidirectional transformations (bx) are a mechanism for maintaining the consistency of two (or perhaps more) related sources of information. Such sources can be databases, software mod- els, documents, or their abstract models like graphs or trees. BX are an emerging topic in a wide range of research areas with prominent presence at top conferences in different fields. The methodologies used for bx range from classical program transformation to graph transformation techniques, from ad-hoc techniques for data synchronization to the development of domain- specific languages and their integration. The First International Workshop on Bidirectional Transformations (BX 2012) established a dedicated venue for bx in all relevant areas. It was initiated by the participants of the Dagstuhl Seminar “Bidirectional Transformations "bx"” in Germany 2011, which continued the GRACE International Meeting on Bidirectional Transformations held in Japan 2008. The workshop BX 2012 took place at the Tallinn University of Technology, Estonia on the 25th of March 2012, as a satellite event of ETAPS 2012, the European Joint Conferences on Theory and Practice of Software. The aim of BX 2012 was to bring together researchers, established and new, interested in bidi- rectional transformations from different perspectives, such as: language-based approaches, soft- ware/model transformations, and model/metamodel co-evolution, which is a different yet closely related subject. The call for papers attracted 15 submissions, of which 2 were in the category of short papers. Each submission received at least four reviews, by programme committee members assisted by external reviewers. After thorough discussion the programme committee accepted 6 regular submissions and both the 2 short paper submissions for presentation at the workshop and inclusion in the pre-proceedings distributed at the workshop. The workshop programme also included two invited presentations: • Jean-Luc Hainaut (University of Namur, Belgium): Bidirectional Transformations in Database Engineering. Abstract. Most processes in database engineering consist in transforming schemas according to def- inite requirements. Basically, a schema transformation is a rewriting rule that allows schema constructs to be replaced by other constructs that are expected to better meet these requirements. Schema normalization, logical design, schema integration, view derivation, proving schema equivalence, data conversion, database reverse engineering, database evo- lution, schema optimization, ETL, wrapper generation are some popular database related processes that can be modelled as schema transformations. In most cases, schemas have instances, so that parallel data transformation rules are associated with schema transfor- mations in order to adapt the contents of the source database to the new target schema. A transformation is qualified semantics-preserving, or bidirectional, if there exists an in- verse transformation through which the source database (schema and instances) can be recovered from the target database. This class of transformations are important in that they guarantee the preservation of information capacity of the source database through an arbitrary chain of transformations. For instance, describing the database design process as a bidirectional transformation ensures that all the user requirements expressed by the 1 / 4 Volume 49 (2012) Preface conceptual schema have been translated into the physical database. Conversely, modeling database reverse engineering as a chain of (mostly) bidirectional transformations helps in recovering the hidden intended semantics of a physical database. In this talk, we briefly recall the principles of database engineering as a specific domain of complex software sys- tems engineering. We then describe basic and practical aspects of database transformation techniques including their properties of semantics preservation. Major database engineer- ing activities are redefined in terms of transformation techniques, and the impact on CASE technology is discussed and illustrated. • Juan de Lara (Autonomous University of Madrid, Spain): Bidirectional Transformations with Graphical Constraints. (joint talk with GT-VMT 2012) Abstract. Model Driven Engineering (MDE) is a software engineering paradigm that attacks the accidental complexity in the development process by increasing the abstraction level at which engineers work. In this way, models (in contrast to programs) are the core assets, and model transformations become first-class citizens. Still, most current transformation languages are directed to the implementation of model transformations, and little effort is currently devoted to support other phases of the transformation development, like require- ments specification or testing. In this talk, I will first present a formal language (called PAMOMO) for the specification of model transformations in a declarative, graphical, bidi- rectional way. The approach is based on patterns or constraints describing the allowed and forbidden relations between two models. Such specification can be compiled into oper- ational mechanisms, based on Graph Transformation, to perform forward and backward transformations. The language has a general semantics, which makes it applicable to sev- eral scenarios and activities relevant for MDE, which will be explored in the second part of the talk. First, PAMOMO can be used as a general framework supporting inter-modelling, which is the activity of building models that describe how other models should be related. This includes many common activities in MDE, like the specification of model-to-model transformations seen before, but also the definition of model matching and model trace- ability constraints, the development of inter-model consistency maintainers and exogenous model management operators. Second, PAMOMO can be used as a language for speci- fying transformation contracts, enabling the verification of transformations implemented with any transformation language. The verification can be performed by compiling the contracts either into OCL expressions, which can then be used as partial oracle functions, or into QVT Relations check-only transformations to detect disconformities of transfor- mation results with respect to the contracts. Finally, the general bi-directional semantics of PAMOMO can be used as a basis to describe other languages, like QVT Relations. Proc. BX 2012 2 / 4 ECEASST After the workshop, an additional review phase was conducted on most of the pre-proceedings papers, resulting in the final acceptance of 7 full papers. Several of the articles have been signifi- cantly revised or extended in extra time given to the authors after the workshop. The outcome is this volume of Electronic Communications of the EASST, constituting the final post-proceedings of BX 2012. The following contributions are included: LIST OF ARTICLES • Jeremy Gibbons and Michael Johnson: Relating Algebraic and Coalgebraic Descriptions of Lenses • Hugo Pacheco, Alcino Cunha and Zhenjiang Hu: Delta Lenses over Inductive Types • Vadim Zaytsev: Language Evolution, Metasyntactically • Michael Johnson and Robert Rosebrugh: Lens put-put laws: Monotonic and mixed • Anthony Anjorin, Gergely Varró and Andy Schürr: Complex Attribute Manipulation in TGGs with Constraint-Based Programming Tech- niques • Leen Lambers, Stephan Hildebrandt, Holger Giese and Fernando Orejas: Attribute Handling for Bidirectional Model Transformations: The Triple Graph Gram- mar Case • Perdita Stevens: Observations relating to the equivalences induced on model sets by bidirectional transformations 3 / 4 Volume 49 (2012) Preface Thanks are due to many people for their help and support in bringing BX 2012 and this journal special issue to life. First of all, we would like to thank the authors and invited speakers for providing the content of the programme. Moreover, we would like to express our gratitude to the programme committee members and external reviewers of BX 2012: LIST OF REVIEWERS PC members Paolo Atzeni (Roma Tre University, Italy) Benjamin Braatz (University of Luxembourg, Luxembourg) Anthony Cleve (University of Namur, Belgium) Alcino Cunha (University of Minho, Portugal) Carlo Curino (Yahoo! Research, USA) Davide Di Ruscio (University of L’Aquila, Italy) Zinovy Diskin (University of Waterloo, Canada) Ulrike Golas (Zuse Institute Berlin, Germany) Ekkart Kindler (Technical University of Denmark, Denmark) Kazutaka Matsuda (Tohoku University, Japan) Fernando Orejas (Technical University of Catalonia, Spain) Benjamin Pierce (University of Pennsylvania, USA) Andy Schürr (Technical University of Darmstadt, Germany) Perdita Stevens (University of Edinburgh, UK) James Terwilliger (Microsoft, USA) Antonio Vallecillo (University of Málaga, Spain) Yingfei Xiong (Peking University, China) External Reviewers Xiao He, Martin Hofmann, Russell O’Connor, Daniel Wagner They all worked very hard in reviewing papers within a short time (often twice, due to the two review phases pre- and post-workshop) and providing extensive feedback to the authors. The submission and reviewing processes and programme committee discussions were handled by the EasyChair conference management system, for which we express our appreciation to Andrei Voronkov. Funding for covering invited speaker travel costs was provided by the DFG under grant VO 1512/2-1. Last, but not least, many thanks to the Organizing Committee of ETAPS 2012, and in particular the Workshop Chair, Keiko Nakata. June 2012 Frank Hermann (University of Luxembourg, Luxembourg) Janis Voigtländer (University of Bonn, Germany) PC chairs of BX 2012 Proc. BX 2012 4 / 4