Skip to content The Open University

Can bidirectional transformation be used for implementing Adaptive Software Systems?

Bidirectional transformations [1,2] provide a novel change propagation mechanism for synchronizing and maintaining the consistency of information between input and output, while adaptive software systems are able to adapt to changes that may occur in the system, its requirements, or the environment in which it is deployed. However, the relationship between bidirectional transformations and adaptive software systems are unclear. In this talk, after reformulating the concepts of component-based systems, system scopes, and contexts, we explain how changes on components can be globally propagated based on the predefined local change propagation policies assigned to the components, and show how bidirectional transformations would play a key role in this global change propagation. It would be interesting in the future to investigate whether the local change propagation policies and the local feedback loop of bidirectional transformations could provide yet another implementation of adaptive software systems rather than using the existing global MAPE loop.


[1]K. Czarnecki, J.N. Foster, Z. Hu, R. Lammel, A. Schurr, J.F. Terwilliger, ``Bidirectional Transformations: A Cross-Discipline Perspective'', International Conference on Model Transformation (ICMT 2009), ETH Zurich, Switzerland, June 29-July 3 2009. LNCS 5563, Springer. pp. 260--283.
[2]Z. Hu, A. Schurr, P. Stevens, J. Terwilliger, ``Dagstuhl Seminar on Bidirectional Transformations'', SIGMOD Record, Vol.40, No.1, 2011. pp. 35--39.