Daniel Matusek

Relaxed Consistency for Decentralized Role-Based Self-Adaptive Software Systems

In recent years the complexity and thus the maintenance effort of interconnected devices and systems has been growing continuously. An approach to handle this complexity are so-called self-adaptive software systems (SAS) which adapt themselves to new circumstances and a changed context. To realise the dynamic behaviour of the underlying system so-called role-based systems are used to change the behaviour of the software at run-time. Current approaches for the execution of decentralized adaptations in role-based systems are realised in a strict and blocking transactional way, i.e. atomic execution. In case of a single failure in a large-scale system, all changes must be reverted and further processing is blocked in the meantime, leading to longer downtimes and eventually costly repair actions.

We aim for relaxing the consistency constraint to allow the adaptation process to continue even in case of failing instances. This would impact the time to adapt the overall system beneficially. Already adapted devices can continue to work and do not need to wait until all devices in a transaction are finished. If a device fails to apply the changes, reverting all changes in the system is obsolete. An error compensation mechanism for the affected device is applied instead. Those mechanisms would also apply if a targeted node is not reachable due to a link failure and the adaptation process can continue.