Skip to main content

Ten Years of Self-adaptive Systems: From Dynamic Ensembles to Collective Adaptive Systems

  • Chapter
  • First Online:
From Software Engineering to Formal Methods and Tools, and Back

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 11865))

Abstract

Self-adaptive systems have been introduced to manage situations where software systems operate under continuous perturbations due to the unpredicted behaviors of their clients and the occurrence of exogenous changes in the environment in which they operate. Adaptation is triggered by the run-time occurrence of an extraordinary circumstance, and it is handled by an adaptation process that involves components affected by the issue, and is able to handle the run-time modification of the structure and behavior of a running system. In this paper we report our experience gained in the last 10 years on models, techniques and applications in the field of self-adaptation. We present the various steps taken by means of a formal framework introduced to characterize the different aspects of an ensemble-based software engineering approach. We present (i) how to model dynamic ensembles using typed graph grammars, (ii) how to specialize and re-configure ensembles and, (ii) how to manage collective adaptations in an ensemble. All these aspects have been part of our research on self-adaptation and have been used to specify and deploy concrete solutions in different application domains.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Notes

  1. 1.

    For the interested reader, the prototype is available in its entirety on a GitHub repository https://github.com/das-fbk/CollectiveAdaptationEngine.

  2. 2.

    https://github.com/das-fbk/DeMOCAS.

References

  1. Hölzl, M., Rauschmayer, A., Wirsing, M.: Engineering of software-intensive systems: state of the art and research challenges. In: Wirsing, M., Banâtre, J.-P., Hölzl, M., Rauschmayer, A. (eds.) Software-Intensive Systems and New Computing Paradigms. LNCS, vol. 5380, pp. 1–44. Springer, Heidelberg (2008). https://doi.org/10.1007/978-3-540-89437-7_1

    Chapter  MATH  Google Scholar 

  2. Zambonelli, F., Bicocchi, N., Cabri, G., Leonardi, L., Puviani, M.: On self-adaptation, self-expression, and self-awareness in autonomic service component ensembles. In: SASOW, pp. 108–113. IEEE Computer Society (2011)

    Google Scholar 

  3. Preda, M.D., Gabbrielli, M., Giallorenzo, S., Lanese, I., Mauro, J.: Developing correct, distributed, adaptive software. Sci. Comput. Program. 97, 41–46 (2015)

    Article  Google Scholar 

  4. Hennicker, R., Klarl, A.: Foundations for ensemble modeling–the Helena approach. In: Iida, S., Meseguer, J., Ogata, K. (eds.) Specification, Algebra, and Software. LNCS, vol. 8373, pp. 359–381. Springer, Heidelberg (2014). https://doi.org/10.1007/978-3-642-54624-2_18

    Chapter  Google Scholar 

  5. Bonnet, J., Gleizes, M.P., Kaddoum, E., Rainjonneau, S., Flandin, G.: Multi-satellite mission planning using a self-adaptive multi-agent system. In: 2015 IEEE 9th International Conference on Self-Adaptive and Self-Organizing Systems, Cambridge, MA, USA, 21–25 September 2015, pp. 11–20. IEEE Computer Society (2015)

    Google Scholar 

  6. Zambonelli, F., et al.: Self-aware pervasive service ecosystems. Procedia Comput. Sci. 7, 197–199 (2011). Proceedings of the 2nd European Future Technologies Conference and Exhibition 2011 (FET 2011)

    Article  Google Scholar 

  7. de Lemos, R., et al.: Software engineering for self-adaptive systems: a second research roadmap. In: de Lemos, R., Giese, H., Müller, H.A., Shaw, M. (eds.) Software Engineering for Self-Adaptive Systems II. LNCS, vol. 7475, pp. 1–32. Springer, Heidelberg (2013). https://doi.org/10.1007/978-3-642-35813-5_1

    Chapter  Google Scholar 

  8. Krupitzer, C., Breitbach, M., Roth, F.M., VanSyckel, S., Schiele, G., Becker, C.: A survey on engineering approaches for self-adaptive systems (extended version) (2018)

    Google Scholar 

  9. Weyns, D., Andersson, J.: On the challenges of self-adaptation in systems of systems. In: Proceedings of the First International Workshop on Software Engineering for Systems-of-Systems, pp. 47–51. ACM (2013)

    Google Scholar 

  10. Jennings, N.R.: An agent-based approach for building complex software systems. Commun. ACM 44(4), 35–41 (2001)

    Article  Google Scholar 

  11. Kephart, J.O., Chess, D.M.: The vision of autonomic computing. Computer 36(1), 41–50 (2003)

    Article  MathSciNet  Google Scholar 

  12. Tinnemeier, N.A.M., Dastani, M., Meyer, J.-J.C.: Roles and norms for programming agent organizations. In: 8th International Joint Conference on Autonomous Agents and Multiagent Systems (AAMAS 2009), Budapest, Hungary, 10–15 May 2009, vol. 1, pp. 121–128 (2009)

    Google Scholar 

  13. Andersson, J., De Lemos, R., Malek, S., Weyns, D.: Reflecting on self-adaptive software systems. In 2009 ICSE Workshop on Software Engineering for Adaptive and Self-Managing Systems, pp. 38–47. IEEE (2009)

    Google Scholar 

  14. Cheng, B.H.C., et al.: Software engineering for self-adaptive systems: a research roadmap. In: Cheng, B.H.C., de Lemos, R., Giese, H., Inverardi, P., Magee, J. (eds.) Software Engineering for Self-Adaptive Systems. LNCS, vol. 5525, pp. 1–26. Springer, Heidelberg (2009). https://doi.org/10.1007/978-3-642-02161-9_1

    Chapter  Google Scholar 

  15. FOCAS Partners: FoCAS manifesto - a roadmap to the future of collective adaptive systems (2016). http://www.focas.eu/focas-manifesto.pdf

  16. Bucchiarone, A., Mezzina, C.A., Pistore, M., Raik, H., Valetto, G.: Collective adaptation in process-based systems. In: SASO 2014, pp. 151–156. IEEE Computer Society (2014)

    Google Scholar 

  17. Bures, T., et al.: A life cycle for the development of autonomic systems: the e-mobility showcase. In: 2013 IEEE 7th International Conference on Self-Adaptation and Self-Organizing Systems Workshops, pp. 71–76. IEEE (2013)

    Google Scholar 

  18. Wirsing, M., Hölzl, M., Koch, N., Mayer, P. (eds.): Software Engineering for Collective Autonomic Systems. LNCS, vol. 8998. Springer, Cham (2015). https://doi.org/10.1007/978-3-319-16310-9

    Book  Google Scholar 

  19. Bucchiarone, A., Dennis, G., Gnesi, S.: A graph-based design framework for global computing systems. Electr. Notes Theor. Comput. Sci. 236, 117–130 (2009)

    Article  Google Scholar 

  20. Bruni, R., Bucchiarone, A., Gnesi, S., Melgratti, H.: Modelling dynamic software architectures using typed graph grammars. Electron. Notes Theoret. Comput. Sci. 213(1), 39–53 (2008)

    Article  Google Scholar 

  21. ter Beek, M.H., Bucchiarone, A., Gnesi, S.: Dynamic software architecture development: towards an automated process. In: 35th Euromicro Conference on Software Engineering and Advanced Applications, SEAA 2009, Proceedings, Patras, Greece, 27–29 August 2009, pp. 105–108 (2009)

    Google Scholar 

  22. Bucchiarone, A., Marconi, A., Pistore, M., Raik, H.: A context-aware framework for dynamic composition of process fragments in the Internet of Services. J. Internet Serv. Appl. 8(1), 601–623 (2017)

    Article  Google Scholar 

  23. Bucchiarone, A., Ehrig, H., Ermel, C., Pelliccione, P., Runge, O.: Rule-based modeling and static analysis of self-adaptive systems by graph transformation. In: Software, Services, and Systems - Essays Dedicated to Martin Wirsing on the Occasion of His Retirement from the Chair of Programming and Software Engineering, pp. 582–601 (2015)

    Chapter  Google Scholar 

  24. Hölzl, M., Wirsing, M.: Towards a system model for ensembles. In: Agha, G., Danvy, O., Meseguer, J. (eds.) Formal Modeling: Actors, Open Systems, Biological Systems. LNCS, vol. 7000, pp. 241–261. Springer, Heidelberg (2011). https://doi.org/10.1007/978-3-642-24933-4_12

    Chapter  Google Scholar 

  25. Bucchiarone, A., Marconi, A., Mezzina, C.A., Pistore, M.: A conceptual framework for collective adaptive systems. In: Proceedings of the 28th Annual ACM Symposium on Applied Computing, SAC 2013, Coimbra, Portugal, 18–22 March 2013, pp. 1935–1936 (2013)

    Google Scholar 

  26. Bucchiarone, A., Lluch-Lafuente, A., Marconi, A., Pistore, M.: A formalisation of adaptable pervasive flows. In: 6th International Workshop, Web Services and Formal Methods, WS-FM 2009, Bologna, Italy, 4–5 September 2009, Revised Selected Papers, pp. 61–75 (2009)

    Google Scholar 

  27. Bures, T., Gerostathopoulos, I., Hnetynka, P., Keznikl, J., Kit, M., Plasil, F.: DEECO: an ensemble-based component system. In: Proceedings of the 16th International ACM SIGSOFT Symposium on Component-Based Software Engineering, pp. 81–90. ACM (2013)

    Google Scholar 

  28. Bucchiarone, A., De Sanctis, M., Marconi, A., Martinelli, A.: DeMOCAS: domain objects for service-based collective adaptive systems. In: Drira, K., et al. (eds.) ICSOC 2016. LNCS, vol. 10380, pp. 174–178. Springer, Cham (2017). https://doi.org/10.1007/978-3-319-68136-8_19

    Chapter  Google Scholar 

  29. Bucchiarone, A., De Sanctis, M., Marconi, A.: ATLAS: a world-wide travel assistant exploiting service-based adaptive technologies. In: Maximilien, M., Vallecillo, A., Wang, J., Oriol, M. (eds.) ICSOC 2017. LNCS, vol. 10601, pp. 561–570. Springer, Cham (2017). https://doi.org/10.1007/978-3-319-69035-3_41

    Chapter  Google Scholar 

  30. Furelos-Blanco, D., Bucchiarone, A., Jonsson, A.: CARPooL: collective adaptation using concurrent planning. In: Proceedings of the 17th International Conference on Autonomous Agents and MultiAgent Systems, AAMAS 2018, Stockholm, Sweden, 10–15 July 2018, pp. 1815–1817. International Foundation for Autonomous Agents and Multiagent Systems Richland, SC, USA/ACM (2018)

    Google Scholar 

  31. Alkhabbas, F., De Sanctis, M., Spalazzese, R., Bucchiarone, A., Davidsson, P., Marconi, A.: Enacting emergent configurations in the iot through domain objects. In: Pahl, C., Vukovic, M., Yin, J., Yu, Q. (eds.) ICSOC 2018. LNCS, vol. 11236, pp. 279–294. Springer, Cham (2018). https://doi.org/10.1007/978-3-030-03596-9_19

    Chapter  Google Scholar 

  32. Bucchiarone, A., Cicchetti, A., De Sanctis, M.: Towards a domain specific language for engineering collective adaptive systems. In: 2nd IEEE International Workshops on Foundations and Applications of Self* Systems, FAS*W@SASO/ICCAC 2017, Tucson, AZ, USA, 18–22 September 2017, pp. 19–26. IEEE Computer Society (2017)

    Google Scholar 

  33. Bucchiarone, A., Cicchetti, A., De Sanctis, M.: CAStlE: a tool for collective adaptive systems engineering. In: 2nd IEEE International Workshops on Foundations and Applications of Self* Systems, FAS*W@SASO/ICCAC 2017, Tucson, AZ, USA, 18–22 September 2017, pp. 385–386. IEEE Computer Society (2017)

    Google Scholar 

  34. Bucchiarone, A., Furelos-Blanco, D., Jonsson, A., Khandokar, F., Mourshed, M.M.: Collective adaptation through concurrent planning: the case of sustainable urban mobility. In: Proceedings of the 17th International Conference on Autonomous Agents and MultiAgent Systems, AAMAS 2018, Stockholm, Sweden, 10–15 July 2018, pp. 1880–1882. International Foundation for Autonomous Agents and Multiagent Systems Richland, SC, USA/ACM (2018)

    Google Scholar 

  35. Andrikopoulos, V., et al.: A game theoretic approach for managing multi-modal urban mobility systems. In: Ahram, T., Karwowski, W., Marek, T. (eds.) Proceedings of the 5th International Conference on Applied Human Factors and Ergonomics AHFE 2014, Krakow, Poland, 19–23 July 2014, pp. 5716–5725 (2014)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Antonio Bucchiarone .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2019 Springer Nature Switzerland AG

About this chapter

Check for updates. Verify currency and authenticity via CrossMark

Cite this chapter

Bucchiarone, A., Mongiello, M. (2019). Ten Years of Self-adaptive Systems: From Dynamic Ensembles to Collective Adaptive Systems. In: ter Beek, M., Fantechi, A., Semini, L. (eds) From Software Engineering to Formal Methods and Tools, and Back. Lecture Notes in Computer Science(), vol 11865. Springer, Cham. https://doi.org/10.1007/978-3-030-30985-5_3

Download citation

  • DOI: https://doi.org/10.1007/978-3-030-30985-5_3

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-030-30984-8

  • Online ISBN: 978-3-030-30985-5

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics