Bidirectional transformations for self-adaptive systems

Lionel Montrieux, Naoyasu Ubayashi, Tianqi Zhao, Zhi Jin, Zhenjiang Hu

Research output: Chapter in Book/Report/Conference proceedingChapter


Bidirectional transformations are a synchronisation mechanism between documents, a source, and a view. A bidirectional transformation is a pair of functions, one that extracts a view from a source and the other that updates a source according to changes made to the view. Bidirectional programming is a recent technique that helps developers to easily write bidirectional transformations and ensure that they satisfy properties of interest. In this chapter, we argue that bidirectional transformations and bidirectional programming are useful techniques in the context of self-adaptive systems.We present four applications of bidirectional transformation for construction of adaptive systems: abstraction, separation of concerns, rule-based adaptation, and uncertainty-aware programming.

Original languageEnglish
Title of host publicationEngineering adaptive software systems
Subtitle of host publicationCommunications of nii shonan meetings
PublisherSpringer Singapore
Number of pages20
ISBN (Electronic)9789811321856
ISBN (Print)9789811321849
Publication statusPublished - Jan 14 2019

All Science Journal Classification (ASJC) codes

  • General Computer Science


Dive into the research topics of 'Bidirectional transformations for self-adaptive systems'. Together they form a unique fingerprint.

Cite this