A Safe Stopping Protocol to Enable Reliable Reconfiguration for Component-Based Distributed Systems

  • Mohammad Ghafari
  • Abbas Heydarnoori
  • Hassan Haghighi
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 9392)


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.


Reconfiguration Safe stopping Consistency 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Kramer, J., Magee, J.: The evolving philosophers problem: Dynamic change management. IEEE Transactions on Software Engineering 16(11), 1293–1306 (1990)CrossRefGoogle Scholar
  2. 2.
    Crnković, I., Sentilles, S., Vulgarakis, A., Chaudron, M.: A Classification Framework for Software Component Models. IEEE Transactions on Software Engineering 37(5), 593–615 (2011)CrossRefGoogle Scholar
  3. 3.
    Costa, C., Ali, N., Pérez, J., Carsí, J.Á., Ramos, I.: Dynamic reconfiguration of software architectures through aspects. In: Oquendo, F. (ed.) ECSA 2007. LNCS, vol. 4758, pp. 279–283. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  4. 4.
    Jackson, D.: Alloy: A lightweight object modelling notation. ACM Transactions on Software Engineering and Methodology 11(2), 256–290 (2002)CrossRefGoogle Scholar
  5. 5.
    Ghafari, M., Heydarnoori, A., Haghighi, H.: A safe stopping protocol to enable reliable reconfiguration for component-based distributed systems (2015),
  6. 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. 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
  8. 8.
    Vandewoude, Y., Ebraert, P., Berbers, Y., D’Hondt, T.: Tranquility: A low disruptive alternative to quiescence for ensuring safe dynamic updates. IEEE Transactions on Software Engineering 33(12), 856–868 (2007)CrossRefGoogle Scholar
  9. 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. 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. 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. 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. 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
  14. 14.
    Kim, J.S., Garlan, D.: Analyzing architectural styles. Journal of Systems and Software 83(7), 1216–1235 (2010)CrossRefGoogle Scholar
  15. 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. 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

Copyright information

© IFIP International Federation for Information Processing 2015

Authors and Affiliations

  • Mohammad Ghafari
    • 1
    • 2
    • 3
  • Abbas Heydarnoori
    • 1
    • 2
    • 3
  • Hassan Haghighi
    • 1
    • 2
    • 3
  1. 1.DeepSE Group @ Politecnico di MilanoMilanoItaly
  2. 2.Sharif University of TechnologyTehranIran
  3. 3.Shahid Beheshti UniversityTehranIran

Personalised recommendations