Efficient Reconfigurations with Programmable Life Cycles: Contributions to Safety, Declarativity, and Decentralization

Hélène Coullon · HAL (Le Centre pour la Communication Scientifique Directe) · 2025

Large distributed software systems are now ubiquitous. A distributed system is typically deployed on heterogeneous distributed infrastructures with deployment dependencies between software entities that requirecoordination mechanisms. Once deployed, distributed systems may need to be reconfigured. Reconfiguring a system consists of changing the configuration while the system is running. Reconfigurations are critical procedures typically triggered when: the system enters an invalid or unstable state because of internal or external events; the system needs to be optimized or updated for energy, security, or quality-of-service reasons. For this reason, a reconfiguration should be as fast as possible. Reconfiguration procedures manipulate a cornerstone element: the life cycles of software entities. In this document, I present a full study on introducing programmable life cycles of software entities and their automatic coordination during reconfigurations. This programmability offers more opportunities for parallelism and concurrency. In consequence, programmable life cycles significantly reduce the execution time of reconfigurations. As more complexity is introduced, it is more difficult to guarantee other good properties offered in the literature: the safety of reconfigurations; the declarative approach to reconfigurations; the decentralization of the reconfiguration process. In this document, I present the feasibility of all these properties with programmable life cycles.

Read the paper · More papers on PaperTik