Abstract
Sustainability refers to the ability of an architecture to achieve its goals and continue to deliver value on technical, environmental, social, and/or economic dimensions. Given the increased awareness of the need to conserve resources and be more sustainable, users are becoming more reluctant to support design decisions that are overdesigned or underperforming. There is a need for an efficient requirement evaluation framework that ensures that optimal software performance is achieved at a minimal cost. The goal of this chapter is to develop an objective decision-support framework for reasoning about sustainability requirements in relation to architecture decisions under uncertainty. We propose an economics-driven architectural evaluation method which extends Cost Benefit Analysis Method (CBAM) and integrates principles of modern portfolio theory to address the risks when linking sustainability requirements to architectural design decisions. The method aims at identifying portfolios of architecture design decisions which are more promising for adding/delivering value while reducing risk on the sustainability dimensions, and it quantifies the sustainability debt of these decisions. The results show that the method can make the value, cost, and risks of architectural design decisions and sustainability requirements explicit.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
References
Asundi J, Kazman R, Klein M (2001) Using economic considerations to choose among architecture design alternatives
World Commission on Environment and Development (1987) Report of the world commission on environment and development: our common future (the Brundtland report). Med Conflict Survival 4
Penzenstadler B (2013) Towards a definition of sustainability in and for software engineering
Brown N, Ozkaya I, Sangwan R, Seaman C, Sullivan K, Zazworka N, Cai Y, Guo Y, Kazman R, Kim M, Kruchten P, Lim E, MacCormack A, Nord R, Guo R, Ozkaya R (2010) Managing technical debt in software-reliant systems. In: Proceedings of the FSE/SDP workshop on Future of software engineering research, ser. FoSER ’10, p 47
Ernst NA (2012) On the role of requirements in understanding and managing technical debt
Ojameruaye B, Bahsoon R (2014) Systematic elaboration of compliance requirements using compliance debt and portfolio theory. LNCS vol 8396
Chen L, Babar MA, Nuseibeh B (2013) Characterizing architecturally significant requirements. IEEE Softw 30
Penzenstadler B, Raturi A, Richardson D, Calero C, Femmer H, Franch X (2014) Systematic mapping study on software engineering for sustainability (se4s)
van Lamsweerde A, Letier E (1998) Integrating obstacles in goal-driven requirements engineering
Kazman R, Asundi J, Klein M (2001) Quantifying the costs and benefits of architectural decisions. In: Proceedings – International Conference on Software Engineering
Kazman R, Asundi J, Klein M (2002) Making architecture design decisions: an economic approach. Software Engineering Institute Technical Report CMU/SEI-2002-TR-035
Markowitz H (1957) Portfolio selection: efficient diversification of investments
Butler S, Chalasani P, Jha S, Raz O, Shaw M (1999) The potential of portfolio analysis in guiding software decisions. In: Proceedings of the First Workshop on Economics-Driven Software Engineering Research (EDSER1)
Sivzattian S, Nuseibeh B (2001) Linking the selection of requirements to market value: a portfolio-based approach. In: REFS 2001. pp 202–213
Khurum M, Gorschek T, Wilson M (2013) The software value map – an exhaustive collection of value aspects for the development of software intensive products. J Softw Evol Process 25
Clements P, Kazman R, Klein M (2001) Evaluating software architectures: methods and case studies. Addison-Wesley Professional
Kazman R, Bass L, Abowd G, Webb M (1994) Saam: a method for analyzing the properties of software architectures
Esfahani N, Malek S, Razavi K (2013) GuideArch: Guiding the exploration of architectural solution space under uncertainty
Letier E, Stefan D, Barr ET (2014) Uncertainty, risk, and information value in software requirements and architecture
Kazman R, Klein M, Clements P (2000) Atam: Method for architecture evaluation. Cmusei 4:83
Raturi A, Penzenstadler B, Tomlinson B, Richardson D (2014) Developing a sustainability non-functional requirements framework. In: Proceedings of the 3rd International Workshop on Green and Sustainable Software – GREENS 2014. pp 1–8
Van Lamsweerde A, Letier E (1998) B-Louvain la-neuve Belgium. Integrating obstacles in goal-driven requirements engineering
van Lamsweerde A (2001) Goal-oriented requirements engineering: a guided tour
Venters CC, Lau L, Griffiths MK, Holmes V, Ward RR, Jay C, Dibsdale CE, Xu J (2014) The blind men and the elephant: towards an empirical evaluation framework for software sustainability. J Open Res Softw 2
Van Lamsweerde A (2004) Elaborating security requirements by construction of intentional antimodels
Wohlin C, Runeson P, M Höst, Ohlsson MC, Regnell B, Wesslén A (2012) Experimentation in software engineering, vol 9783642290442
Babar MA, Zhu L, Jeffery R (2004) A framework for classifying and comparing software architecture evaluation methods, vol 2004
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2021 Springer Nature Switzerland AG
About this chapter
Cite this chapter
Ojameruaye, B., Bahsoon, R. (2021). Sustainability ArchDebts: An Economics-Driven Approach for Evaluating Sustainable Requirements. In: Calero, C., Moraga, M.Á., Piattini, M. (eds) Software Sustainability. Springer, Cham. https://doi.org/10.1007/978-3-030-69970-3_16
Download citation
DOI: https://doi.org/10.1007/978-3-030-69970-3_16
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-030-69969-7
Online ISBN: 978-3-030-69970-3
eBook Packages: Computer ScienceComputer Science (R0)