A Safe Stopping Protocol to Enable Reliable Reconfiguration for Component-Based Distributed Systems
Despite the need for change, highly available software systems cannot be stopped to perform changes because disruption in their services may consequent irrecoverable losses. Current work on runtime evolution are either too disruptive, e.g., “blackouts” in unnecessary components in the quiescence criterion approach or presume restrictive assumptions such as the “black-box design” in the tranquility approach. In this paper, an architecture-based approach, called SAFER, is proposed which provides a better timeliness by relaxing any precondition required to start reconfiguration. We demonstrate the validity of the SAFER through model checking and a realization of the approach on a component model.
KeywordsReconfiguration Safe stopping Consistency
Unable to display preview. Download preview PDF.
- 5.Ghafari, M., Heydarnoori, A., Haghighi, H.: A safe stopping protocol to enable reliable reconfiguration for component-based distributed systems (2015), http://home.deib.polimi.it/ghafari/SAFER.html
- 6.Bruneton, E., Coupaye, T., Leclercq, M., Quéma, V., Stefani, J.B.: The FRACTAL component model and its support in Java: Experiences with auto-adaptive and reconfigurable systems. Software: Practice and Experience 36(11-12), 1257–1284 (2006)Google Scholar
- 7.Ghafari, M., Jamshidi, P., Shahbazi, S., Haghighi, H.: Safe stopping of running component-based distributed systems: Challenges and research gaps. In: 21st IEEE International Workshop on Enabling Technologies: Infrastructure for Collaborative Enterprises, pp. 66–71 (2012)Google Scholar
- 9.Ma, X., Baresi, L., Ghezzi, C., Panzica La Manna, V., Lu, J.: Version-consistent dynamic reconfiguration of component-based distributed systems. In: 19th ACM SIGSOFT Symposium and the 13th European Conference on Foundations of Software Engineering, pp. 245–255 (2011)Google Scholar
- 10.Banno, F., Marletta, D., Pappalardo, G., Tramontana, E.: Tackling consistency issues for runtime updating distributed systems. In: IEEE International Symposium on Parallel Distributed Processing, Workshops and PhD Forum, pp. 1–8 (April 2010)Google Scholar
- 11.Oreizy, P., Medvidovic, N., Taylor, R.N.: Runtime software adaptation: Framework, approaches, and styles. In: Companion of the 30th International Conference on Software Engineering, pp. 899–910 (2008)Google Scholar
- 12.Cook, J.E., Dage, J.A.: Highly reliable upgrading of components. In: 21st International Conference on Software Engineering, pp. 203–212 (1999)Google Scholar
- 13.Mikic-Rakic, M., Medvidovic, N.: Architecture-level support for software component deployment in resource constrained environments. In: IFIP/ACM Working Conference on Component Deployment, pp. 31–50 (2002)Google Scholar
- 15.Canavera, K.R., Esfahani, N., Malek, S.: Mining the execution history of a software system to infer the best time for its adaptation. In: 20th ACM SIGSOFT International Symposium on the Foundations of Software Engineering, pp. 1–11 (2012)Google Scholar
- 16.Ghafari, M., Heydarnoori, A.: Partial Scalability to Ensure Reliable Dynamic Reconfiguration. In: 7th IEEE International Conference on Self-Adaptation and Self-Organizing Systems Workshops, pp. 83–88 (September 2013)Google Scholar