An architectural approach to ensure globally consistent dynamic reconfiguration of component-based systems
Mohammad Hossein Ghafari, Pooyan Jamshidi, Saeed Shahbazi, Hassan Karnameh Haghighi · 2012
One of the key issues that should be considered when addressing reliable evolution is to place a software system in a consistent status before and after change. This issue becomes more critical at runtime because it may lead to the failure on running mission-critical systems. In order to place the affected elements in a safe state before dynamic changes take place, the notion of tranquility has been proposed to make quiescence criterion less disruptive and easier to obtain. However, it only ensures consistency in applications with restrictive black-box design. In this paper, an architecture-based approach is proposed to preserve global consistency during runtime reconfiguration of component-based systems in distributed contexts. An initial evaluation through a prototypical implementation shows that this approach not only enables tranquility to be applicable for distributed transactions, but also significantly reduces required time to achieve a safe state and increases system availability during runtime evolution.