As software systems become more complex, researchers are looking for novel approaches to manage changes at scale without human intervention. As a result, on the one hand, dynamically reconfigurable software systems are designed to automatically adjust to environmental perturbations to help systems stay reliable even in uncertain situations. On the other hand, decentralised software systems are promising because they make it easier to manage large complex systems and they fit well in emergent paradigms like the Internet of Things. Most existing reconfiguration approaches rely on a central control to perform runtime changes, leading to well-known issues in terms of robustness and performance bottlenecks. In this paper, we introduce the notion of a Software Architecture Generator which enables the dynamic selection of concrete software architectures at runtime. Adaptive selection is performed in a decentralised manner using a hierarchical control structure that relies on protocols for starting reconfiguration as well as updating and aggregating weights without any exogenous, intrusive, centralised entity (e.g., a feedback control loop). Instead, software architectures themselves are equipped with multiple control entities which collectively find the optimal software architecture configuration that best adapts to the current operation environment.

错误:搜索内容不能为空,请输入英文关键词
错误:关键词超出字数限制,请精简
高级检索

Towards Decentralised Dynamic Reconfiguration of Software Systems

  • Mina Yavari,
  • Damian Arellanes

摘要

As software systems become more complex, researchers are looking for novel approaches to manage changes at scale without human intervention. As a result, on the one hand, dynamically reconfigurable software systems are designed to automatically adjust to environmental perturbations to help systems stay reliable even in uncertain situations. On the other hand, decentralised software systems are promising because they make it easier to manage large complex systems and they fit well in emergent paradigms like the Internet of Things. Most existing reconfiguration approaches rely on a central control to perform runtime changes, leading to well-known issues in terms of robustness and performance bottlenecks. In this paper, we introduce the notion of a Software Architecture Generator which enables the dynamic selection of concrete software architectures at runtime. Adaptive selection is performed in a decentralised manner using a hierarchical control structure that relies on protocols for starting reconfiguration as well as updating and aggregating weights without any exogenous, intrusive, centralised entity (e.g., a feedback control loop). Instead, software architectures themselves are equipped with multiple control entities which collectively find the optimal software architecture configuration that best adapts to the current operation environment.