ABSTRACT
Self-adaptation equips a software system with a feedback loop that automates tasks that otherwise need to be performed by operators. Such feedback loops have found their way to a variety of practical applications, one typical example is an elastic cloud. Yet, the state of the practice in self-adaptation is currently not clear. To get insights into the use of self-adaptation in practice, we are running a large-scale survey with industry. This paper reports preliminary results based on survey data that we obtained from 113 practitioners spread over 16 countries, 62 of them work with concrete self-adaptive systems. We highlight the main insights obtained so far: motivations for self-adaptation, concrete use cases, and difficulties encountered when applying self-adaptation in practice. We conclude the paper with outlining our plans for the remainder of the study.
- I. Alfonso, K. Garcés, and H. et al. Castro. 2021. Self-adaptive Architectures in IoT Systems: A Systematic Literature Review. Journal on Internet Services and Applications 12, 4 (2021).Google ScholarCross Ref
- U. Aßmann, S. Götz, J.M. Jézéquel, B. Morin, and M. Trapp. 2014. A Reference Architecture and Roadmap for [email protected] Systems. Springer, 1--18. Google ScholarCross Ref
- B. Beyer, C. Jones, N. Murphy, and J. Petoff. 2016. Site Reliability Engineering, How Google Runs Production Systems. O'Reilly Media, Inc.Google Scholar
- T. Bolender, G. BÃijrvenich, M. Dalibor, B. Rumpe, and A. Wortmann. 2021. Self-Adaptive Manufacturing with Digital Twins. In Software Engineering for Adaptive and Self-Managing Systems. IEEE, 156--166. Google ScholarCross Ref
- J. Camara, P. Correia, R. de Lemos, D. Garlan, P. Gomes, B. Schmerl, and R. Ventura. 2013. Evolving an adaptive industrial software system to use architecture-based self-adaptation. In 8th International Symposium on Software Engineering for Adaptive and Self-Managing Systems. Google ScholarDigital Library
- J. Cámara, P. Correia, R. de Lemos, D. Garlan, P. Gomes, B. Schmerl, and R. Ventura. 2016. Incorporating Architecture-Based Self-Adaptation into an Adaptive Industrial Software System. J. Syst. Softw. 122, C (dec 2016), 507âĂŞ523. Google ScholarDigital Library
- B. Cheng, R. de Lemos, H. Giese, et al. 2009. Software engineering for self-adaptive systems: A research roadmap. Software Engineering for Self-Adaptive Systems (2009), 1--26.Google Scholar
- C. da Silva, JosÃl'D. Saraiva da Silva, C. Paterson, and R. Calinescu. 2017. Self-Adaptive Role-Based Access Control for Business Processes. In 12th International Symposium on Software Engineering for Adaptive and Self-Managing Systems. Google ScholarDigital Library
- R. de Lemos, D. Garlan, C. Ghezzi, et al. 2017. Software Engineering for Self-Adaptive Systems: Research Challenges in the Provision of Assurances. In Software Engineering for Self-Adaptive Systems III. Assurances. Springer, 3--30.Google Scholar
- R. De Lemos, H. Giese, H. Müller, et al. 2013. Software engineering for self-adaptive systems: A second research roadmap. In Software Engineering for Self-Adaptive Systems II. Springer, 1--32.Google Scholar
- N. Esfahani and S. Malek. 2013. Uncertainty in Self-Adaptive Software Systems. In Software Engineering for Self-Adaptive Systems II. Springer.Google Scholar
- D. MÃl'ndez FernÃăndez, S. Wagner, M. Kalinowski, M. Felderer, P. Mafra, A. VetrÚ, T. Conte, M. Christiansson, D. Greer, C. Lassenius, T. MÃd'nnistÃű, M. Nayabi, M. Oivo, B. Penzenstadler, and D. Pfahl. 2016. Naming the Pain in Requirements Engineering. Empirical Software Engineering 22 (2016), 2298--2338.Google ScholarDigital Library
- D. Garlan, S.W. Cheng, A.C. Huang, et al. 2004. Rainbow: Architecture-based self-adaptation with reusable infrastructure. Computer 37, 10 (2004), 46--54.Google ScholarDigital Library
- O. Gheibi, D. Weyns, and F. Quin. 2021. Applying Machine Learning in Self-Adaptive Systems: A Systematic Literature Review. ACM Transactions on Autonomous and Adaptive Systems 15, 3 (2021).Google ScholarDigital Library
- D. Gray. 2013. Doing research in the real world. SAGE Publications Ltd.Google Scholar
- M. Grua, I. Malavolta, and P. Lago. 2019. Self-Adaptation in Mobile Apps: a Systematic Literature Study. In IEEE/ACM 14th International Symposium on Software Engineering for Adaptive and Self-Managing Systems. 51--62. Google ScholarDigital Library
- S. Hezavehi, D. Weyns, P. Avgeriou, R. Calinescu, R. Mirandola, and D. Perez-Palacin. 2021. Uncertainty in Self-Adaptive Systems: A Research Community Perspective. ACM Transactions on Autonomous and Adaptive Systems 15, 4, Article 10 (2021). Google ScholarDigital Library
- M. Hölzl, A. Rauschmayer, and M. Wirsing. 2008. Engineering of Software-Intensive Systems: State of the Art and Research Challenges. Springer, 1--44. Google ScholarDigital Library
- S. Hurtado, S. Sen, and R. Casallas. 2011. Reusing Legacy Software in a Self-Adaptive Middleware Framework. In Adaptive and Reflective Middleware. ACM, 29âĂŞ35. Google ScholarDigital Library
- J. Kephart and D. Chess. 2003. The Vision of Autonomic Computing. Computer 36, 1 (2003), 41--50.Google ScholarDigital Library
- J. Kramer and J. Magee. 2007. Self-Managed Systems: an Architectural Challenge. In Future of Software Engineering (FOSE '07). 259--268.Google Scholar
- P. Lalanda, J. McCann, and A. Diaconescu. 2013. Autonomic Computing Principles, Design and Implementation. Springer.Google Scholar
- S. Mahdavi-Hezavehi, P. Avgeriou, and D. Weyns. 2017. A Classification Framework of Uncertainty in Architecture-Based Self-Adaptive Systems With Multiple Quality Requirements. In Managing TradeOffs in Adaptable Software Architectures. Morgan Kaufmann. Google ScholarCross Ref
- M. Tourchi Moghaddam and É. Rutten. 2020. Self-adaptive Middleware Support for IoT and CPS A Systematic Literature Review. In https://cps4eu.eu/wp-content/uploads/2021/09/Self-adaptiveMiddlewareSupportforIoTandCPS.pdf.Google Scholar
- A. Musil, J. Musil, D. Weyns, T. Bures, H. Muccini, and M. Sharaf. 2017. Patterns for Self-Adaptation in Cyber-Physical Systems. Springer, 331--368. Google ScholarCross Ref
- P. Oreizy, M.M. Gorlick, R.N. Taylor, and Others. 1999. An architecture-based approach to self-adaptive software. Intelligent Systems and their Applications 14, 3 (1999), 54--62.Google Scholar
- A. Ramirez, A. Jensen, and B. Cheng. 2012. A taxonomy of uncertainty for dynamically adaptive systems. In 7th International Symposium on Software Engineering for Adaptive and Self-Managing Systems. Google ScholarCross Ref
- A. Spyker. 9/2020. Disenchantment: Netflix Titus, Its Feisty Team, and Daemons. InfoQ (9/2020). https://www.infoq.com/presentations/netflix-titus-2018/Google Scholar
- K. Stol, P. Ralph, and B. Fitzgerald. 2016. Grounded Theory in Software Engineering Research: A Critical Review and Guidelines. In 38th International conference on Software Engineering (ICSE). 120--131.Google Scholar
- A. Strauss and J. Corbin. 1990. Basics of Qualitative Research: Grounded Theory Procedures and Techniques. SAGE.Google Scholar
- D. Weyns. 2021. An Introduction to Self-adaptive Systems: A Contemporary Software Engineering Perspective. Wiley. https://books.google.be/books?id=zaC9vgEACAAJ ISBN: 978-1-119-57494-1.Google Scholar
- D. Weyns and T. Ahmad. 2013. Claims and Evidence for Architecture-based Self Adaptation- A Systematic Literature Review. In 7th European Conference on Software Architecture (ECSA). 249--265.Google Scholar
- D. Weyns, I. Gerostathopoulos, N. Abbas, et al. 2022. Project Website: Survey on the Use of Self-Adaptation in Industry. https://people.cs.kuleuven.be/~danny.weyns/surveys/sas-in-industry/. Last accessed: 2022-03-18.Google Scholar
- D. Weyns and U. Iftikhar. 2022. ActivFORMS: A Formally Founded Model-Based Approach to Engineer Self-Adaptive Systems. ACM Transactions on Software Engineering and Methodology (2022). (in print).Google Scholar
- D. Weyns, U. Iftikhar, D. Hughes, and N. Matthys. 2018. Applying Architecture-Based Adaptation to Automate the Management of Internet-of-Things. In Software Architecture. Springer, 49--67.Google Scholar
- T. Wong, M. Wagner, and C. Treude. 2021. Self-Adaptive Systems: A Systematic Literature Review Across Categories and Domains. arXiv:2101.00125 [cs.SE]Google Scholar
Index Terms
- Preliminary results of a survey on the use of self-adaptation in industry
Recommendations
Self-Adaptation in Industry: A Survey
Computing systems form the backbone of many areas in our society, from manufacturing to traffic control, healthcare, and financial systems. When software plays a vital role in the design, construction, and operation, these systems are referred to as ...
Dealing with Drift of Adaptation Spaces in Learning-based Self-Adaptive Systems Using Lifelong Self-Adaptation
Recently, machine learning (ML) has become a popular approach to support self-adaptation. ML has been used to deal with several problems in self-adaptation, such as maintaining an up-to-date runtime model under uncertainty and scalable decision-making. ...
A survey on engineering approaches for self-adaptive systems
The complexity of information systems is increasing in recent years, leading to increased effort for maintenance and configuration. Self-adaptive systems (SASs) address this issue. Due to new computing trends, such as pervasive computing, ...
Comments