Abstract
The role of sustainable approaches has never been as important as it is today, especially with the rising concerns of climate change. Since software is everywhere, sustainability is a key aspect also for software systems. In recent years, the software engineering community is considering more and more the reduction of the overall energy consumption as a key goal for software systems during their execution. To address sustainability from the software engineering perspective, various approaches have been proposed, self-adaptation being one of them. Self-adaptation enables software to be context-aware and self-aware, hence, to change its functioning and performance based on the current execution conditions. From the sustainability point of view, self-adaptation ensures flexibility and efficiency in resource and energy management, for example based on current energy sources, energy consumers, tasks to be executed, and user expectations. In this research, we perform a systematic literature review (SLR) on (1) the use of self-adaptation for achieving sustainability, and (2) the existing approaches in various application domains. Identified studies show that self-adaptation is an effective approach to reach sustainability, mainly reflected in the key abilities of ensuring performance, efficient resource management, and adaptability.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Similar content being viewed by others
References
Andrikopoulos, V., Boza, R., Perales, C., Lago, P.: Sustainability in software architecture: a systematic mapping study. In: Callicó, G.M., Hebig, R., Wortmann, A. (eds.) 48th Euromicro Conference on Software Engineering and Advanced Applications, pp. 426–433 (2022). https://doi.org/10.1109/SEAA56994.2022.00073
Becker, C., et al.: Sustainability design and software: The karlskrona manifesto. In: 37th International Conference on Software Engineering, pp. 467–476 (2015). https://doi.org/10.1109/ICSE.2015.179
Bergen, A., Desmarais, R., Ganti, S., Stege, U.: Towards software-adaptive green computing based on server power consumption. In: 3rd International Workshop on Green and Sustainable Software, pp. 9–16 (2014). https://doi.org/10.1145/2593743.2593745
Betz, S., Caporale, T.: Sustainable software system engineering. In: 4th International Conference on Big Data and Cloud Computing, pp. 612–619 (2014). https://doi.org/10.1109/BDCloud.2014.113
Calero, C., et al.: 5ws of green and sustainable software. Tsinghua Sci. Technol. 25(3), 401–414 (2020). https://doi.org/10.26599/TST.2019.9010006
Dustdar, S., et al.: A roadmap towards sustainable self-aware service systems. In: ICSE Workshop on Software Engineering for Adaptive and Self-Managing Systems, pp. 10–19 (2010). https://doi.org/10.1145/1808984.1808986
Fierro, G.: Self-Adapting Software for Cyberphysical Systems. Ph.D. thesis, EECS Department, University of California, Berkeley (2021). http://www2.eecs.berkeley.edu/Pubs/TechRpts/2021/EECS-2021-159.html
Ganek, A.G., Corbi, T.A.: The dawning of the autonomic computing era. IBM Syst. J. 42(1), 5–18 (2003). https://doi.org/10.1147/sj.421.0005
Gerostathopoulos, I., Raibulet, C., Lago, P.: Expressing the adaptation intent as a sustainability goal. In: International Conference on Software Engineering: New Ideas and Emerging Results, pp. 36–40 (2022). https://doi.org/10.1145/3510455.3512776
Gianluigi, V.R.B.G.: The goal question metric paradigm: The goal question metric approach. Encycl. Softw. Eng. 1, 528–532 (1994)
Hidaka, S., et al.: Design and engineering of adaptive software systems, pp. 1–33 (2019). https://doi.org/10.1007/978-981-13-2185-6_1
Johann, T., Dick, M., Kern, E., Naumann, S.: Sustainable development, sustainable software, and sustainable software engineering: an integrated approach. In: 2011 International Symposium on Humanities, Science and Engineering Research, pp. 34–39 (2011). https://doi.org/10.1109/SHUSER.2011.6008495
Kitchenham, B., Pearl Brereton, O., Budgen, D., Turner, M., Bailey, J., Linkman, S.: Systematic literature reviews in software engineering - a systematic literature review. Inf. Softw. Technol. 51(1), 7–15 (2009). https://doi.org/10.1016/j.infsof.2008.09.009
Kumar, S., Chen, T., Bahsoon, R., Buyya, R.: Datesso: self-adapting service composition with debt-aware two levels constraint reasoning. In: 15th International Symposium on Software Engineering for Adaptive and Self-Managing Systems, pp. 96–107 (2020). https://doi.org/10.1145/3387939.3391604
Lago, P., Greefhorst, D., Woods, E.: Architecting for sustainability. In: Wohlgemuth, V., Naumann, S., Arndt, H., Behrens, G., Höb, M. (eds.) 36th International Conference on Informatics for Environmental Protection. LNI, vol. P-328, pp. 199–210 (2022). https://dl.gi.de/20.500.12116/39397
Macías-Escrivá, F.D., Haber, R., del Toro, R., Hernandez, V.: Self-adaptive systems: a survey of current approaches, research challenges and applications. Expert Syst. Appl. 40(18), 7267–7279 (2013). https://doi.org/10.1016/j.eswa.2013.07.033
Masciadri, L., Raibulet, C.: Frameworks for the development of adaptive systems: evaluation of their adaptability feature through software metrics. In: 4th International Conference on Software Engineering Advances, ICSEA 2009, pp. 309–312 (2009). https://doi.org/10.1109/ICSEA.2009.51
Michanan, J., Dewri, R., Rutherford, M.J.: Greenc5: an adaptive, energy-aware collection for green software development. Sustain. Comput. Inf. Syst. 13, 42–60 (2017). https://doi.org/10.1016/j.suscom.2016.11.004
Moghaddam, A.: Self-adaptation for energy efficiency in software systems. Ph.D. thesis, University of Amsterdam (2019)
Moghaddam, F.A., Simaremare, M., Lago, P., Grosso, P.: A self-adaptive framework for enhancing energy efficiency in mobile applications. In: 2017 Sustainable Internet and ICT for Sustainability (SustainIT), pp. 1–3 (2017). https://doi.org/10.23919/SustainIT.2017.8379811
Moghaddam, F.A., Lago, P., Ban, I.C.: Self-adaptation approaches for energy efficiency: a systematic literature review. In: 6th International Workshop on Green and Sustainable Software, pp. 35–42 (2018). https://doi.org/10.1145/3194078.3194084
Perez-Palacin, D., Mirandola, R., Merseguer, J.: Enhancing a QoS-based self-adaptive framework with energy management capabilities. In: 7th International Conference on the Quality of Software Architectures and 2nd International Symposium on Architecting Critical Systems, pp. 165–170 (2011). https://doi.org/10.1145/2000259.2000287
Petersen, K., Feldt, R., Mujtaba, S., Mattsson, M.: Systematic mapping studies in software engineering. In: 12th International Conference on Evaluation and Assessment in Software Engineering, pp. 68–77 (2008)
Raibulet, C., Fontana, F.A., Carettoni, S.: A preliminary analysis of self-adaptive systems according to different issues. Software Qual. J. 28(3), 1213–1243 (2020). https://doi.org/10.1007/s11219-020-09502-5
Restrepo, L., Aguilar, J., Toro, M., Suescún, E.: A sustainable-development approach for self-adaptive cyber-physical system’s life cycle: a systematic mapping study. J. Syst. Softw. 180, 111010 (2021). https://doi.org/10.1016/j.jss.2021.111010
Salama, M., Bahsoon, R., Bencomo, N.: Chapter 11 - managing trade-offs in self-adaptive software architectures: a systematic mapping study. In: Mistrik, I., Ali, N., Kazman, R., Grundy, J., Schmerl, B. (eds.) Managing Trade-Offs in Adaptable Software Architectures, pp. 249–297. Morgan Kaufmann, Boston (2017). https://doi.org/10.1016/B978-0-12-802855-1.00011-3
Salehie, M., Tahvildari, L.: Self-adaptive software: Landscape and research challenges. ACM Trans. Auton. Adapt. Syst. 4(2), 14:1–14:42 (2009). https://doi.org/10.1145/1516533.1516538
Weyns, D.: An Introduction to Self-adaptive Systems: A Contemporary Software Engineering Perspective (2020)
Weyns, D., et al.: Preliminary results of a survey on the use of self-adaptation in industry. In: 17h Symposium on Software Engineering for Adaptive and Self-Managing Systems, pp. 70–76 (2022). https://doi.org/10.1145/3524844.3528077
Weyns, D., et al.: Self-adaptation in industry: a survey. ACM Trans. Auton. Adapt. Syst. 18(2), 5:1–5:44 (2023). https://doi.org/10.1145/3589227
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2024 The Author(s), under exclusive license to Springer Nature Switzerland AG
About this paper
Cite this paper
Raibulet, C., Fu, Q. (2024). Self-adaptation for Sustainable Software and Its Application in Current Approaches - An SLR. In: Bertolino, A., Pascoal Faria, J., Lago, P., Semini, L. (eds) Quality of Information and Communications Technology. QUATIC 2024. Communications in Computer and Information Science, vol 2178. Springer, Cham. https://doi.org/10.1007/978-3-031-70245-7_15
Download citation
DOI: https://doi.org/10.1007/978-3-031-70245-7_15
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-031-70244-0
Online ISBN: 978-3-031-70245-7
eBook Packages: Computer ScienceComputer Science (R0)