A Systems Thinking Approach to Improve Sustainability in Software Engineering—A Grounded Capability Maturity Framework
Abstract
:1. Introduction
- Why is sustainable software development a priority for an organization?
- How can organizations create a roadmap for deploying sustainable software practices?
- What practices, policies, and decisions can they carry out to improve sustainability?
- When can an organization say they have reached their desired level of sustainability?
2. Related Work
3. Research Methodology
- RQ1
- Is sustainable software development and operations a priority for the organization?
- RQ2
- Is there a roadmap and thought leadership within the organization for sustainable software development?
- RQ3
- What are the organization’s primary capabilities for driving sustainable software?
- RQ4
- What industry practices were followed in the specific organization, and were they successful in realizing the planned outcome?
- RQ5
- What challenges do organizations face to improve sustainable software development and operations?
- RQ6
- Do the organizations have the proper skills and technology acumen to drive sustainable software?
4. Results and Discussion
- RQ1
- The priority of sustainable software development and operations varied from organization to organization. Some organizations might prioritize sustainability as part of their core values and mission. In contrast, others might view it as a secondary consideration or might not have considered it at all. Of the survey respondents, 60% confirmed that sustainability was already a priority in their organizations, whereas 14% disagreed. As sustainability becomes increasingly important to consumers and stakeholders, organizations will prioritize sustainable software development and operations as part of their overall strategy.The major reasons for prioritizing sustainable computing appear to be cost optimization, improving efficiency and quality, to retain top talent, and drive innovation.
- RQ2
- The existence of a roadmap and thought leadership within an organization for sustainable software development varies depending on the size of the organization, the industry, and the level of commitment to sustainability. Only 21% of respondents confirmed the availability of a sustainable software development roadmap in their organization, and the majority (52%) were neutral.
- RQ3
- The primary capabilities for driving sustainable software in an organization can be summarized as follows: sustainable software design, development, and operations; using data analytics to monitor and measure sustainability metrics such as energy consumption, carbon footprint, and waste generation; using the insights to drive sustainability improvements; sourcing sustainable hardware, software, and other resources for software development and operations; promoting sustainable practices among suppliers and partners; educating employees on sustainable software development and operation practices and engaging them in sustainability initiatives to foster a culture of sustainability within the organization; engaging with customers, partners, and other stakeholders to promote sustainable software development and operations and drive sustainability across the value chain.
- RQ4
- Some of the industry best practices shared by subject matter experts included Agile and DevOps methods to promote iterative, collaborative, and efficient software development and operation practices, which can reduce waste and energy consumption. Cloud computing can enable organizations to scale their IT infrastructure efficiently, reduce hardware and energy costs, and optimize resource usage. Virtualization enables organizations to consolidate their IT infrastructure, reducing the number of physical servers and associated energy consumption. Data center optimization involves using energy-efficient hardware, cooling systems, and other technologies to reduce energy consumption and carbon emissions in data centers. Monitoring and optimizing software performance can help organizations identify opportunities to reduce energy consumption and resource usage.
- RQ5
- The answers to challenges can be summarized as follows. There has been a shift in the organizational culture and mindset toward long-term sustainability instead of short-term profits. Many developers and organizations lack understanding and skills in sustainable software development. Implementing sustainable practices can require significant time and financial resources, and these are limited. The absence of universally accepted standards makes it challenging to adopt sustainable practices. Few incentives exist for developers and organizations to invest in sustainable practices because of the upfront investment required. Evaluating the environmental, social, and economic sustainability of software products can be complex. Regulatory compliance: organizations may face additional challenges posed by regulatory requirements related to sustainability.
- RQ6
- According to the industry experts, the skill sets the industry should build for sustainable software development include sustainable software design that considers energy efficiency, reuse, and recyclability; data analytics that help monitor energy consumption and greenhouse gas emissions; cloud computing, which reduces energy consumption and emissions by providing on-demand computing resources; open-source software to promote software reuse and thus reduce environmental impact; Agile development methodologies to encourage collaboration and continuous improvement for sustainable practices; sustainable procurement to source eco-friendly hardware and resources; user experience design to ensure software accessibility and usability for social sustainability.
5. Proposed Capability Maturity Model
5.1. Levels of Maturity
5.2. Core Capabilities and Practices
5.3. Assessment Criteria and Metrics
5.4. Implications for Theory and Practice
5.5. Use Cases of Model
- Create an awareness and understanding of the capabilities referred to in the maturity framework.
- Perform a mapping assessment to validate the current practices of the organization practices against the proposed model.
- Identify the gaps and challenges related to these capabilities.
- Create an action plan to improve the capabilities and execute the same.
- Repeat the above steps for a defined duration, preferably every quarter until the organization reaches the desired maturity.
5.6. Limitations of the Study
6. Conclusions and Future Work
Author Contributions
Funding
Informed Consent Statement
Data Availability Statement
Acknowledgments
Conflicts of Interest
Appendix A
Appendix B
References
- Cai, K.Y.; Card, D. An analysis of research topics in software engineering. J. Syst. Softw. 2006, 81, 1051–1058. [Google Scholar] [CrossRef]
- Agarwal, S.; Ghosh, A.; Bhattacharyya, S.; Nath, A. Green solutions: A pilot study on green technology and green computing. Int. J. 2015, 5, 680–686. [Google Scholar]
- Agarwal, S.; Nath, A.; Chowdhury, D. Sustainable approaches and good practices in green software engineering. Int. J. Res. Rev. Comput. Sci. 2012, 3, 1425–1428. [Google Scholar]
- Dick, M.; Naumann, S. Enhancing software engineering processes towards sustainable software product design. In Proceedings of the EnviroInfo, Cologne/Bonn, Germany, 6–8 October 2010; pp. 706–715. [Google Scholar]
- Shenoy, S.S.; Eeratta, R. Green software development model: An approach towards sustainable software development. In Proceedings of the 2011 Annual IEEE India Conference, Hyderabad, India, 16–18 December 2011; pp. 1–6. [Google Scholar]
- Thiry, M.; Frez, L.; Zoucas, A. GreenRM: A reference model for sustainable software development. In Proceedings of the SEKE, Vancouver, BC, Canada, 1–3 July 2014; pp. 39–42. [Google Scholar]
- Albertao, F. Sustainable software development. In Harnessing Green IT; Wiley: Hoboken, NJ, USA, 2012; pp. 63–83. [Google Scholar]
- Raturi, A.; Tomlinson, B.; Richardson, D. Green software engineering environments. In Green in Software Engineering; Springer: Cham, Switzerland, 2015; pp. 31–59. [Google Scholar]
- Naumann, S.; Dick, M.; Kern, E.; Johann, T. The GREENSOFT Model: A reference model for green and sustainable software and its engineering. Sustain. Comput. Inf. Syst. 2011, 1, 294–304. [Google Scholar] [CrossRef]
- Govindasamy, A.; Joseph, K.S. Optimization of operating systems towards green computing. Int. J. Combinatorial Optim. Probl. Inform. 2011, 2, 39–45. [Google Scholar]
- Lo, C.-T.D.; Qian, K. Green computing methodology for next generation computing scientists. In Proceedings of the 2010 IEEE 34th Annual Computer Software and Applications Conference, Seoul, Republic of Korea, 19–23 July 2010; pp. 250–251. [Google Scholar]
- Erdelyi, K. Special factors of development of green software supporting eco sustainability. In Proceedings of the 2013 IEEE 11th International Symposium on Intelligent Systems and Informatics (SISY), Subotica, Serbia, 26–28 September 2013; pp. 337–340. [Google Scholar]
- Mahmoud, S.S.; Ahmad, I. A green model for sustainable software engineering. Int. J. Softw. Eng. Appl. 2013, 7, 55–74. [Google Scholar]
- Dick, M.; Drangmeister, J.; Kern, E.; Naumann, S. Green software engineering with agile methods. In Proceedings of the 2013 2nd International Workshop on Green and Sustainable Software (GREENS), San Francisco, CA, USA, 20 May 2013; pp. 78–85. [Google Scholar]
- Aguado, S.; Alvarez, R.; Domingo, R. Model of efficient and sustainable improvements in a lean production system through processes of environmental innovation. J. Clean. Prod. 2013, 47, 141–148. [Google Scholar] [CrossRef]
- Tate, K. Sustainable Software Development: An Agile Perspective; Addison-Wesley: Reading, MA, USA, 2005. [Google Scholar]
- Abdullah, R.; Abdullah, S.; Din, J.; Tee, M. A systematic literature review of green software development in collaborative knowledge management environment. Int. J. Adv. Comput. Technol. 2015, 9, 136. [Google Scholar]
- Calero, C.; Mancebo, J.; Garcia, F.; Moraga, M.A.; Berna, J.A.G.; Fernandez-Aleman, J.L.; Toval, A. 5Ws of green and sustainable software. Tsinghua Sci. Technol. 2020, 25, 401–414. [Google Scholar] [CrossRef]
- Tanveer, B. Sustainable software engineering–Have we neglected the software engineer’s perspective? In Proceedings of the 2021 36th IEEE/ACM International Conference on Automated Software Engineering Workshops (ASEW), Melbourne, Australia, 15–19 November 2021; pp. 267–270. [Google Scholar] [CrossRef]
- Babin, G.; Marlier, F. Towards Sustainable Software Development: A Taxonomy. In Proceedings of the 2013 IEEE Sixth International Conference on Software Testing, Verification and Validation Workshops, Luxembourg, 18–22 March 2013; pp. 435–442. [Google Scholar]
- Stol, K.J.; Ralph, P.; Fitzgerald, B. Grounded theory in software engineering research: Acritical review and guidelines. In Proceedings of the 38th International Conference on Software Engineering, Austin, TX, USA, 14–22 May 2016; pp. 120–131. [Google Scholar]
- Mourão, B.C.; Karita, L.; Machado, I.D.C. Green and Sustainable Software Engineering—A Systematic Mapping Study. In Proceedings of the XVII Brazilian Symposium on Software Quality (SBQS ’18), Curitiba, Brazil, 17–19 October 2018; Association for Computing Machinery: New York, NY, USA, 2018; pp. 121–130. [Google Scholar] [CrossRef]
- Jain, R.; Wullert, J. Challenges: Environmental design for pervasive computing systems. In Proceedings of the 8th Annual International Conference on Mobile Computing and Networking—MobiCom, Atlanta, GA, USA, 23–28 September 2002; Volume 2, p. 263. [Google Scholar]
- Sardjono, W.; Lusia, E.; Utomo, H.; Sukardi, S.; Rahmasari, A.; Montororing, Y.D.R. Competitive Advantage Model Through Knowledge Management Systems Implementation to Optimize Business Sustainability. In Proceedings of the 2021 9th International Conference on Information Technology: IoT and Smart City (ICIT ′21), Guangzhou, China, 22–25 December 2022; Association for Computing Machinery: New York, NY, USA, 2022; pp. 154–160. [Google Scholar] [CrossRef]
- Russ, M. Knowledge Management for Sustainable Development in the Era of Continuously Accelerating Technological Revolutions: A Framework and Models. Sustainability 2021, 13, 3353. [Google Scholar] [CrossRef]
- Ali, N.; Raza, S. Green software engineering: A systematic literature review. Sustain. Comput. Inf. Syst. 2016, 12, 60–71. [Google Scholar]
- Fuchs, C. The implications of new information and communication technologies for sustainability. Environ. Dev. Sustain. 2008, 10, 291–309. [Google Scholar] [CrossRef]
- Ghosh, S.; Sarkar, S. Green software engineering: An overview and research directions. J. Clean. Prod. 2019, 240, 118194. [Google Scholar] [CrossRef]
- Sarkar, S.; Basu, A. Sustainability in software engineering: A systematic literature review. J. Clean. Prod. 2017, 148, 53–64. [Google Scholar] [CrossRef]
- Sutherland, S.; Remling, R. Sustainable software development: An empirical investigation of the state of practice. J. Syst. Softw. 2017, 125, 87–101. [Google Scholar] [CrossRef]
- Gandomani, T.J.; Zowghi, D. A systematic review of sustainability research in software engineering. J. Syst. Softw. 2018, 138, 63–82. [Google Scholar] [CrossRef]
- Saputri, T.R.D.; Lee, S.-W. Software sustainability requirements: A unified method for improving requirements process for software development. In Proceedings of the 2021 IEEE 29th International Requirements Engineering Conference (RE), Notre Dame, IN, USA, 20–24 September 2021; pp. 506–507. [Google Scholar] [CrossRef]
- Swacha, J. Models of Sustainable Software: A Scoping Review. Sustainability 2022, 14, 551. [Google Scholar] [CrossRef]
- Johann, T.; Dick, M.; Kern, E.; Naumann, S. Sustainable development, sustainable software, and sustainable software engineering: An integrated approach. In Proceedings of the 2011 International Symposium on Humanities, Science and Engineering Research, Kuala Lumpur, Malaysia, 6–7 June 2011; pp. 34–39. [Google Scholar] [CrossRef]
- Abdullah, Z.H.; Yahaya, J.; Rohana, S.; Fadzli, S.; Deraman, A. The Implementation of Software Anti-Ageing Model towards Green and Sustainable Products. Int. J. Adv. Comput. Sci. Appl. 2019, 10, 42–50. [Google Scholar] [CrossRef]
- Penzenstadler, B.; Femmer, H. A generic model for sustainability with process-and product-specific instances. In Proceedings of the 2013 Workshop on Green in/by Software Engineering, Fukuoka, Japan, 26 March 2013; ACM: New York, NY, USA, 2013; pp. 3–8. [Google Scholar]
- Koçak, S.A. Green Software Development and Design for Environmental Sustainability. In Proceedings of the 11th International Doctoral Symposium an Empirical Software Engineering (IDOESE 2013), Baltimore, MD, USA, 10–11 October 2013; IEEE: Piscataway, NJ, USA, 2013. [Google Scholar]
- Naumann, S.; Kern, E.; Dick, M.; Johann, T. Sustainable Software Engineering: Process and Quality Models, Life Cycle, and Social Aspects. In ICT Innovations for Sustainability; Hilty, L.M., Aebischer, B., Eds.; Advances in Intelligent Systems and Computing; Springer: Cham, Switzerland, 2015; Volume 310, pp. 191–205. [Google Scholar]
- Hou, G.; Zhou, K.; Qiu, T.; Cao, X.; Li, M.; Wang, J. A novel green software evaluation model for cloud robotics. Comput. Electr. Eng. 2017, 63, 139–156. [Google Scholar] [CrossRef]
- Kalaitzoglou, G.; Bruntink, M.; Visser, J. A Practical Model for Evaluating the Energy Efficiency of Software Applications. In Advances in Computer Science Research, Proceedings of the 2014 Conference ICT for Sustainability, Stockholm, Sweden, 24–27 August 2014; Hojer, M., Lago, P., Wangel, J., Eds.; Atlantis Press: Dordrecht, The Netherlands, 2014; pp. 77–86. [Google Scholar]
- Ibrahim, S.R.A.; Yahaya, J.; Sallehudin, H. Green Software Process Based on Sustainability, Waste and Evaluation Theory Approach: The Conceptual Model. In Proceedings of the 2022 IEEE International Conference on Computing (ICOCO), Kota Kinabalu, Malaysia, 14–16 November 2022; pp. 283–288. [Google Scholar] [CrossRef]
- Principles of Green Software Engineering Model. Available online: https://principles.green/ (accessed on 1 March 2023).
- Software Sustainability Maturity Model by Ross Gardler. Available online: http://oss-watch.ac.uk/resources/ssmm (accessed on 5 February 2023).
- SO/IEC 29110; Series Systems and Software Engineering Standards and Guides for Very Small Entities (VSEs). Available online: https://committee.iso.org/sites/jtc1sc7/home/projects/flagship-standards/isoiec-29110-series.html#:~:text=The%20ISO%2FIEC%2029110%20series,%2Dups%20to%20Grown%2Dups (accessed on 24 January 2023).
- Furstenau, L.B.; Sott, M.K.; Kipper, L.M.; Machado, E.L.; Lopez-Robles, J.R.; Dohan, M.S.; Cobo, M.J.; Zahid, A.; Abbasi, Q.H.; Imran, M.A. Link Between Sustainability and Industry 4.0: Trends, Challenges and New Perspectives. IEEE Access 2020, 8, 140079–140096. [Google Scholar] [CrossRef]
- Loucopoulos, P.; Stratigaki, C.; Danesh, M.H.; Bravos, G.; Anagnostopoulos, D.; Dimitrakopoulos, G. Enterprise Capability Modeling: Concepts, Method, and Application. In Proceedings of the 2015 International Conference on Enterprise Systems (ES), Basel, Switzerland, 14–15 October 2015; pp. 66–77. [Google Scholar] [CrossRef]
- Chen, L.; Babar, M.A.; Na Zhang, H. Towards an evidence-based understanding of electronic data sources. In Proceedings of the 14th International Conference on Evaluation and Assessment in Software Engineering (EASE), Sydney, Australia, 12–13 April 2010; pp. 1–4. [Google Scholar]
- Page, M.J.; McKenzie, J.E.; Bossuyt, P.M.; Boutron, I.; Hoffmann, T.C.; Mulrow, C.D.; Shamseer, L.; Tetzlaff, J.M.; Akl, E.A.; Brennan, S.E.; et al. The PRISMA 2020 Statement: An Updated Guideline for Reporting Systematic Reviews. BMJ 2021, 372, n71. [Google Scholar] [CrossRef] [PubMed]
Model Name | Findings and Limitations |
---|---|
Green Software Engineering (GSE) model | A narrow focus on the environmental dimension. It does not provide guidance on how to measure the environmental impact. It does not cover software maintenance and operations and is more focused on software development aspects. Lacks empirical evidence. |
Software Sustainability Maturity Model (SSMM) | The SSMM emphasizes the importance of considering social, environmental, and economic sustainability factors in software development and maintenance. It is considered complex and prescriptive. Designed for large organizations and lacks overall industry recognition. Focused on software development but lightweight on the general organization aspects of sustainability. |
ISO/IEC 29110 | Provides a valuable framework for software development. The limited scope focuses on software development in small organizations. It covers engineering practices but lacks a focus on sustainability. It does not provide guidelines on tools and techniques. |
Sustainable Software Development Framework (SSDF) | Offers insights into the intersection of sustainability and Agile software development practices. It takes an empirical approach, drawing on research and case studies to explore the challenges and opportunities of integrating sustainability into software development processes. Its focus is limited to the development and software engineering process aspects of sustainability. |
Level | Maturity Description |
---|---|
1 | At the ad hoc level, the organization has no formal sustainability policies or practices for software development and operations. Sustainability considerations are made ad hoc, and there needs to be a consistent approach to sustainability. |
2 | At the reactive level, the organization recognizes the importance of sustainability in software development and operations and takes some reactive measures to address sustainability issues. For example, the organization may implement energy-efficient hardware or take steps to reduce waste in data center operations. |
3 | At the proactive level, the organization takes a more systematic approach to the sustainability of software development and operations. The organization has established sustainability policies and procedures and actively seeks to integrate sustainability considerations into all aspects of software development and operations. |
4 | At the strategic level, the organization has fully integrated sustainability into its overall business strategy. The organization has a well-defined sustainability roadmap and regularly measures and reports its sustainability performance. The organization also actively engages with stakeholders to promote the sustainability of software development and operations. |
5 | Leading: At the top level, the organization is a recognized leader in sustainable software development and operation practices. The organization has established best practices and benchmarks for sustainable software development and operations and shares its knowledge and experience with other organizations. The organization also actively contributes to developing standards and guidelines for sustainable software development and operations. |
Capabilities | Description |
---|---|
Sustainable design: | This capability focuses on designing software that minimizes the environmental impact of software and systems including security, experience, and performance. |
Energy efficiency: | This capability focuses on developing energy-efficient software such as by reducing the computational power needed to run the software, optimizing code for energy efficiency, and using energy-efficient hardware. |
Sustainable procurement: | This deals with decisions on procuring the right technologies such as cloud computing, use of renewable energy, and energy-efficient equipment. |
Collaboration: | This capability focuses on collaborating with stakeholders to develop software that meets the needs of all stakeholders and on ways of working such as Agile and DevOps practices. |
Continuous improvement: | This capability focuses on continually improving the sustainability of software development practices by monitoring the environmental impact, setting sustainability targets, and implementing procedures to reduce the environmental impact over time. |
Green testing: | This capability focuses on developing and running tests to evaluate environmental impact such as energy consumption as a key factor in determining the software quality. |
Life cycle assessment: | This capability focuses on assessing the environmental impact of software development throughout its life cycle, from design to disposal. |
Use of open source: | This capability focuses on using open-source software to reduce the environmental impact of software development as open-source software can be reused, modified, and improved, reducing the need for new software development. |
Social responsibility: | This capability focuses on considering the social impact of software development such as ensuring software accessibility and usability for all users and respecting user privacy. |
Capability | Assessment Criteria and Metrics |
---|---|
Sustainable Design | Maintainability index (MI): MI is a software metric that measures code maintainability based on various factors such as complexity, size, and documentation. Cyclomatic complexity: This metric calculates the number of independent paths through a program module. The lower the number of paths, the more sustainable and maintainable the software. Technical debt: Technical debt is a metaphor for the additional work required to fix issues not resolved during development. It is a measure of the long-term sustainability of software architecture. Software reusability: Software reusability measures the extent to which software components can be used in other software systems. Modularity: Modularity measures how well the software is organized into modules or components. Scalability: Scalability measures how well the software can manage increasing workloads or more extensive datasets. Leverage of cloud and big data analytics as part of the foundation design to ensure it is future proof. |
Energy Efficiency | Power consumption: Power consumption is the most direct way to measure the energy usage of a system. This metric can determine the energy consumed by the system either as a whole or by specific software components. CPU utilization: CPU utilization measures the time the CPU takes to process data. Higher CPU utilization usually leads to higher energy consumption. Memory utilization: Memory utilization measures the amount of RAM used by an application. The higher the memory usage, the more energy the system will consume. Disk utilization: Disk utilization measures the amount of disk space used by an application. The more data an application stores on a disk, the more energy the system will consume. Network utilization: Network utilization measures the network traffic an application generates. The more data an application transfers over the network, the more energy the system will consume. Code complexity: Code complexity measures the number of instructions or lines of code in a software application. Higher code complexity can lead to higher energy consumption due to increased CPU and memory usage. |
Sustainable Procurement | Ethical sourcing: Software suppliers should be evaluated based on their ethical sourcing practices including human rights, labor rights, and environmental impact. This can be carried out through a supplier assessment or a third-party certification such as Fair Trade. Product life cycle: The life cycle of software can have a significant impact on its sustainability. Metrics such as product longevity, repairability, and recyclability can be used to evaluate the sustainability of software. Open source: Open-source software can be a more sustainable option as it allows for collaboration and reuse of code, reducing the need for new software development and resource consumption. Metrics such as the percentage of open-source code or the use of open-source licenses can be used to evaluate the sustainability of software. Future-proofed technical stack: considering the latest technology developments, such as cloud, artificial intelligence, generative AI, and big data, so that the software and systems developed are relevant for the future and do not become outdated early. |
Collaboration | Team diversity: This metric measures the diversity of the team in terms of their backgrounds, experiences, and perspectives. A diverse team is more likely to produce innovative solutions and make better decisions. Issue resolution time: This metric measures the time it takes to resolve issues or bugs in the software. A shorter issue resolution time indicates a more efficient collaboration process. Code review feedback: This metric measures the feedback provided during code reviews. Constructive feedback can improve the quality of the code and promote a continuous improvement culture. Contribution rate: This metric measures how team members contribute to the project. A high contribution rate indicates active participation and engagement. User feedback: This metric measures the feedback from users of the software. Positive user feedback indicates a successful collaboration process that produces sustainable software. |
Continuous Improvement | Cycle time: This metric measures the time it takes to move a software feature from concept to production. By measuring cycle time, teams can identify bottlenecks and optimize the development process to reduce delays and improve efficiency. Lead time: This metric measures the time it takes to deliver a software feature to the end user. By measuring lead time, teams can identify areas where they can improve delivery speed and reduce the time it takes to obtain user feedback. Deployment frequency: This metric measures how frequently code changes are deployed to production. By increasing the frequency of deployments, teams can reduce the risk of introducing bugs and other issues into the software. Defect density: This metric measures the number of defects in the software relative to the size of the codebase. By reducing the defect density, teams can improve the overall quality of the software and reduce the time spent on bug fixing. Time to recovery: This measures the time it takes to recover from a production issue or outage. |
Green Testing | Automated testing: Use of automated testing tools to reduce the need for manual testing, which can save time and reduce the carbon footprint of the testing process. Code efficiency: This evaluates the efficiency of the code to ensure that it is optimized for resource usage and energy consumption. Green hosting: The selection of environmentally friendly hosting options for the software, such as cloud providers that use renewable energy sources. Performance optimization: This metric measures the software performance optimization to reduce its energy consumption and carbon footprint. |
Life Cycle Assessment | Energy use: This metric measures the amount of energy consumed throughout the life cycle of the software including that used during development, distribution, and use. Material use: This metric measures the number of materials used throughout the life cycle of the software including any physical components of the software Social impact: This metric measures the social impact of the software including its effect on user privacy, data security, and other social issues. End-of-life considerations: This metric evaluates the end-of-life considerations relating to the software including the ability to recycle or dispose of any physical components and any plans for decommissioning or retiring the software. |
Use of Open Source | Contribution diversity: This metric measures the diversity of contributions to the open-source project. By measuring the diversity of contributors, developers can ensure that the software is developed in a way that is inclusive and representative of different perspectives. Release frequency: This metric measures how frequently new software releases are made. By releasing software updates often, developers can ensure that the software remains relevant and current. Community health: This metric measures the health of the community engaged in the open-source project. |
Social Responsibility | Design software with sustainability in mind: Developers can design energy-efficient software that uses fewer resources such as memory and storage. Ensure accessibility: Developers can ensure their software is accessible to all users including those with disabilities or limited resources. Use ethical data practices: Companies can collect, store, and use data ethically and responsibly to protect user privacy and prevent discrimination or bias. |
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content. |
© 2023 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (https://creativecommons.org/licenses/by/4.0/).
Share and Cite
Sriraman, G.; Raghunathan, S. A Systems Thinking Approach to Improve Sustainability in Software Engineering—A Grounded Capability Maturity Framework. Sustainability 2023, 15, 8766. https://doi.org/10.3390/su15118766
Sriraman G, Raghunathan S. A Systems Thinking Approach to Improve Sustainability in Software Engineering—A Grounded Capability Maturity Framework. Sustainability. 2023; 15(11):8766. https://doi.org/10.3390/su15118766
Chicago/Turabian StyleSriraman, Gopalakrishnan, and Shriram Raghunathan. 2023. "A Systems Thinking Approach to Improve Sustainability in Software Engineering—A Grounded Capability Maturity Framework" Sustainability 15, no. 11: 8766. https://doi.org/10.3390/su15118766
APA StyleSriraman, G., & Raghunathan, S. (2023). A Systems Thinking Approach to Improve Sustainability in Software Engineering—A Grounded Capability Maturity Framework. Sustainability, 15(11), 8766. https://doi.org/10.3390/su15118766