A Catalogue Supporting Software Sustainability Design
- How do the principles detailed in the Karlskrona manifesto relate to the software development life-cycle phases (SDLC) in general and the design stage especially? SSDC suggests concrete guidelines to apply the high levels and abstracts principles of sustainability.
- How do the SSDC and the underlying perceptions of sustainability relate to the first-, second- and third-order impacts of software sustainability as well as the five dimensions of sustainability? SSDC tried to bridge the current gaps between the principles and the indicators of sustainability.
- How can these principles be applied while ensuring that sustainability is achieved during design? The SSDC can be viewed as a tool supporting the sustainability by design approach.
- How should these principles be applied for the wide diversity of software systems that exists today and those in the future that should consider sustainability as a quality in the same way we engineer the other quality attributes today of such security and usability? A pilot framework is described portraying the applicability of the SSDC for diverse software systems.
2. Sustainability in Software Design: Background and Related Research
- There is no single reference point where measures of software sustainability are gathered and exemplified.
- Design is key to achieve software sustainability, thus the need to show how software designers can incorporate sustainability during software design to improve ICT energy usage and CO2 emission.
- The need for a framework or model to assist and guide developers during software design to incorporate sustainability requirements.
3. The Foundations of Sustainability by Design: The Karlskrona Manifesto
- The principles are abstract and generic to serve all the possible stakeholders interested in sustainability in all the stages of the software development and management phases.
- The principles are at a high level of abstraction, missing many details for their practical usage.
- The principles are closely related, making a trade-off among them difficult, especially for a novice in the field of sustainability.
- The principles are not connected to tangible measures but serve as a guide to create measures.
4. Structure of the Proposed Software Sustainability Design Catalogue (SSDC)
- One or more Karlskrona principle (the 9 principles in Table 1) is used in the evaluation of each system category. Not all principles necessarily can be applied to all systems. The principles are identified using a tag of P1 to P9 (Principle 1 to 9).
- Goal/requirement: this highlights the desired end result for each system category based on sustainability consideration.
- Stakeholders: those responsible for implementing the goals/requirement.
- Questions characterizing each goal. From each goal, a set of questions are derived that will determine if each goal is being met.
- Indicators are used to answer the questions as a way to evaluate if the goals were achieved.
- Current principle usage in software: this covers the current application of the principle in existing system design and development, even if it is not explicitly stated in current system documentation.
- Future principle usage in software: based on the evaluation of the current principle application in existing system design and development, a potential usage of the principle in future system enhancement and design is suggested.
- The individual dimension covers individual freedom and agency (the ability to act in an environment), human dignity, and fulfilment. It includes individuals’ ability to thrive, exercise their rights, and develop freely.
- The social dimension covers relationships between individuals and groups. For example, it covers the structures of mutual trust and communication in a social system and the balance between conflicting interests.
- The economic dimension covers financial aspects and business value. It includes capital growth and liquidity, investment questions, and financial operations.
- The technical dimension covers the ability to maintain and evolve artificial systems (such as software) over time. It refers to maintenance and evolution, resilience, and the ease of system transitions.
- The environmental dimension covers the use and stewardship of natural resources. It includes questions ranging from immediate waste production and energy consumption to the balance of local ecosystems and climate change concerns.
5. How the SSDC Have Been Derived and Can Be Used
- Environment: reduce household energy consumption.
- Economic: reduce household cost on energy.
- Individual: provide user friendly solution for home users with easy to use user interface and information to induce sustainable behaviour among users.
- Technical: provide good security for user personal data and avoid technical glitch that could lead high energy usage.
- Social: encourage users to form communities to share data as a way of encouraging each other to be energy conscious and environmentally aware of the consequences of their actions and inaction while using smart home solutions.
6. Application of the SSDC and the Pilot Framework
“A software engineer called Henry has the task of eliciting and documenting the requirements for a new smart home system. Being aware of his responsibility for the software system sustainability he creates, and its impacts, he takes the template of the sustainability analysis of the five dimensions and the three orders of effects from the design catalogue with him to the customer during their first meeting. The customer is curious about these additional analysis ideas, and Henry explains to his client what they mean and gives his client a couple of examples. Then, together with the customer, he fills out the template applying the concepts from the design catalogue (SSDC) to find out what those dimensions and orders of impact mean for the smart home system the customer wants for his house. The information from the activity goes into the requirements analysis that is subsequently conducted and used as a measurement yardstick during the smart home system development and deployment.”
A company named Energy Life, based on the SSDC analysis, provides a game like menu to control smart home devices for a family named Miralles. The family only wants to reduce household energy cost. Mark, the deployment manager, after reading the SSDC for smart homes (see Table 4 and Table 5), pilot framework (see Figure 2), Table 6 (framework description) and the sustainability analysis for smart home solution (see Figure 3), realizes that the best way to reduce the energy cost of the Miralles is to implement a game-like menu for the Miralles to control their smart home devices. This provides information about the energy consumption of each home device. Within a few days the Miralles were able to see the flow of their energy usage and how their daily habits impact the unnecessarily high energy use within their household with impacts on the environment. The game also provides the family with tips on how they can save energy and the amount of CO2 emissions. Members of the family are able to identify the amount of energy consumed by their washing machine. They decided not to run a half empty washing machine again as they can see that this happens almost every day, and even with the half-load mode it would make more sense to run a full one every two days instead. The Miralles also started a new habit of reminding each other to switch off the computer, TV and other household appliances when they are not in use.Later on, when the company wants to update their system, developers revisit those orders of effect and the different dimensions. Developers also thought about what may and may not have changed in order to improve their system to be more efficient and effectively with regards to sustainability.
- Automatic analysis of users’ data to educate them and induce sustainable behaviour among users.
- Alerting users through notification when electrical devices or appliances are running without being used.
- Automatic scheduling of task such as washing cloths and dishes when energy rate is low during the day.
- Planning when to turn on/off heating and lighting based on season and user behaviour (prediction).
- For companies and software developers, it serves as guide on how sustainability can be incorporated into software design and development. It can also enable them to identify the effects of their project on technical, economic, social, individual, and environmental sustainability. Furthermore, we support the current revision of the Association for Computing Machinery (ACM) code of ethics and propose to incorporate sustainability principles and explicitly acknowledge the need to consider sustainability as part of professional practice .
- Standardization organizations can benefit from it to create future standards for software and organizational sustainability. SSDC shows areas where software applications can impact the environment and humans, and this information can help create standards that would encourage companies and stakeholders to improve existing and new applications and policies to promote sustainability.
- Public authorities will be able to use the information from the catalogue to enact new laws persuading industry practitioners to design software systems, applications and devices in a more sustainable manner.
- Academic institutions can identify avenues to advance research on sustainability by design, sustainability design patterns and tools to support, among others.
Conflicts of Interest
- Environment: optimize energy and computing resource consumption during game development and when users are playing game.
- Economic: provide continuous innovation on the game features to encourage current users to keep playing the game and attract new users and ensure game is maintainable (longevity).
- Technical: ensure that game does not encourage quick hardware wear and tear and at same time has the ability to evolve with new demands of the market.
- Individual: good user experience while interacting with the game and serves as a medium of inducing sustainable behaviour.
- Social: create good community sense among angry bird users and educate them about sustainability.
|Karlskrona Principles and Goal||Current Principle Usage||Future Principle Usage||Stakeholders||Question||Indicator|
Efficient water usage
|Current washing machine has some design features to help reduce water wastage during washing circle.||Good mechanism within the washing machine to aid efficient use of water during washing cycle and also display the amount of water saved to users. This will serve as means of educating users about water wastage. This will aid positive impact on the amount of water usage in a household.||Software developer||Does the washing machine reduce water usage?||Washing cycle/total amount of water used.|
|(P 6, 8)|
|Some current sets of washing machine have eco-friendly features to reduce energy usage.||One good feature to reduce energy usage of washing is to turn off or hibernate automatically after washing cycle if idle for 2 min. It will help reduce energy cost (P 6) and also reduce resource usage in the long term (P 8). This will help reduce energy consumption when machine is idle.|
Incorporate the use of scheduler to the washing machine as a way to time when the washing cycle should start during the period of the day when energy cost is less.
|Software developer||Does the machine use too much energy for a single washing cycle?||Energy efficiency (washing cycle/total amount of energy used).|
|(P 8, 9)|
|Allows collection of grey water from washing machine.||Encourage reuse of greywater (with biodegradable laundry detergent) in garden watering.||Business analyst||How much of the greywater gets reused afterwards?||Percentage (%) of reused water.|
|Order of Impacts||Environment||Economic||Technical||Social||Individual|
|1st||Increase in the use of natural resources in the production of washing machine components such as iron, copper, medium-density fibreboard, ethylene propylene diene monomer (EPDM) rubber.||High demand for natural resources boosts the economies of countries with those natural resources.||Increase demand for new technologies, tools and equipment for extracting raw materials.||New job opportunities for people.||Increase the risk of having skin diseases due to toxic material exposure.|
|2nd||Increase in water and energy usage when using a washing machine as opposed to manual washing.||High energy cost for household as a result of increase in energy usage due to ease of washing cloths (convenience factor and little manual labour).||Demand for energy and water saving mechanism in washing machine.||More job opportunities for technicians with knowledge of washing machine technologies.||Increase the ease of washing for users.|
|3rd||Over a long time it lead to increase water usage and a culture of washing a lot (e.g., California). In turn, that leads to a higher wear and tear of the hardware.||Increase in profit for washing machine production companies with high demand for washing machine from users.||Over time there will be pressure to build a more energy and water efficient washing machine from manufacturers to have a competitive edge over other competitors.||Increase job creation over time both from industry for skilled workers and in household for technicians to fix minor issues of washing machine.||Over a long time it leads to increased water usage and a culture of washing a lot (e.g., California). In turn, that leads to a higher wear and tear of the hardware|
|Karlskrona Principles and Goal||Current Principle Usage||Future Principle Usage||Stakeholders||Question||Indicator|
|Currently game development focus more on usability and fun factor aspect than sustainability aspect.||Create the mobile game architecture with sustainability consideration. Since sustainability is systemic, it should be core of the application structure.|
Consider energy efficiency during game development. Incorporate green patterns to game application development.
|Software developer||Is the mobile energy Efficient?||(Energy efficiency) useful-work done/energy used.|
Reduce wear and tear of hardware
|Although sustainability is not the core of current game development practices, although game developer tries to ensure optimal use of hardware resources to make game run faster and better on hardware (phone, computer, tablets).||Ensure that the mobile game during operation uses hardware resources (memory, CPU etc.) in efficient and sustainable manner to reduce wear and tear.||Software developer||What is the impact of the game on hardware components like CPU and RAM?||Does the game use too much hardware resources?|
Sense of belonging to a community and connectedness to other people
|Current game development provide sort of community for it users in form of forums and groups online.||There is a digital community surrounding most games and the question is how it compares to face to face communities for gamers.|
Create a community that make gamers feel connected to both the digital and real worlds.
Make gamers feel like they are part of something (people always want to belong to a tribe).
|Business analysts, software developer||Is there a sense of community amongst players?||Connectedness in community? Number of ‘friends’ in a particular gaming community?|
Good user experience
|Current game development incorporates user experience into their production to gain more user base and profit.||Game should use reasonable lighting effect for the game display which can help reduce energy usage and also incorporate sustainability concept in the total overall design of the game.|
It can also add features that will educate users about sustainability.
|User experience (UX) engineer and software developer||Can users complete their task easily?||Gateway metrics.|
|Order of Impacts||Environment||Economic||Technical||Social||Individual|
|1st||Increase in energy usage from computers and mobile devices used for developing and testing game application.||Cost of production for game development companies.||Increase in demand for sophisticated hardware and software for game development.||Open job opportunities for game developers.||Provides avenues for leisure activities for users.|
|2nd||Increase in energy usage because users are using mobile phone, laptops, iPad to play game. There will also be need for charging of these devices coupled with the energy consumption when playing the game.||Company make profit from game purchase.|
Increase demand and user cost for hardware (computers, phones and tablets).
|Demand for better graphics and quick game response from users.||Create community sense among Angry Bird users.||Demand for good user experience while interacting with the game.|
|3rd||Over time leads to hardware wear and tear because of continuous game time from user side on computer/phones and continuous game development from game production company side.||Increase in profit from huge user and fan base for the game company.||Demand for newer features and innovation from customers||Increase the sense of belonging in form of community among users.||Lead to game addiction and lack of social interaction with outside world.|
|Karlskrona Principles and Goal||Current Principle Usage||Future Principle Usage||Stakeholders||Question||Indicator|
Incorporate sustainability into development process.
|Current development framework allow the use of scrum and version control.||Provide a development framework that support sustainability focusing on the software and those developing the software itself.||(Development) process engineer||Are guidelines available?||Boolean (Yes or No).|
Offer reasonable amount of features.
|Currently all office application comes with all the features which sometimes are rarely used by users.||Provide all basic features for office application and allow users to add other features when needed.||Business analyst and software developer||What is the number of changes to be made to add new features?||Rework metric.|
Add green print (and let user know how many pages they save over time).
|Users can print any document as their need requires.||Incorporate green print to office application that inform users whenever they want to print a document for the second time that they can skip few pages because changes were not made on those pages.||Software developer||Do people print less by using this green print button?||Number of pages printed compared to if there was no green button.|
|Order of Impacts||Environment||Economic||Technical||Social||Individual|
|1st||Reduce the amount of manual writing on papers which in turn reduces the amount of paper used by people for writing.||Open new potential market for company to explore.||Ensure the ability of Word application to meet new market demands from the technical implementation aspect.||Creates new job opportunities for those that are expert with most of the office applications.||Provide efficient way of doing daily task such as documentation, project management and design.|
|2nd||Reduce paper resource wastage.||Increase in profit for Microsoft and other partner companies through sales of office application.||Increase in use of computers for development of add-ons and plugins for office applications.||Provides a community feeling among users.||Guarantee that user will easily finish their task while using the application for their day-to-day work.|
|3rd||It will increase energy usage over time due to ease of doing daily task on computers, phones and tablets.||Rise in company’s profit through product innovation as demands change from generation to generation.||Demand for new features to meet new demands.||Improves connectedness among users through collaboration online.||Improves the overall ability of users completing their task (documentation, project management and design).|
- Microsoft. Microsoft 2015 Citizenship Report Letter from Our CEO. 2015. Available online: http://download.microsoft.com/download/7/3/6/736CED21-9D8B-4CBB-98E8-DCBAE7026251/Microsoft%202015%20Citizenship%20Report.pdf (accessed on 20 March 2018).
- IBM. Global CEO Study: The Enterprise of the Future. Available online: https://www-935.ibm.com/services/uk/gbs/pdf/ibm_ceo_study_2008.pdf (accessed on 11 October 2017).
- Nidumolu, R.; Prahalad, C.K.; Rangaswami, M.R. Why sustainability is now the key driver of innovation. IEEE Eng. Manag. Rev. 2013, 41, 30–37. [Google Scholar] [CrossRef]
- Firstcarbon Solutions. Constructing Sustainable Business Models. Available online: http://www.firstcarbonsolutions.com/resources/newsletters/january-2014-constructing-sustainable-business-models/constructing-sustainable-business-models/ (accessed on 18 June 2018).
- Knut, H.; Martin, R.; Ingridvon, S.; Michael, A.; David, K.; Nina, K. Sustainability Nears a Tipping Point Sustainability Nears a Tipping Point. MIT Sloan Manag. Rev. 2012, 53, 69–74. [Google Scholar]
- Calero, C.; Piattini, M. Introduction to Green in software engineering. Green Softw. Eng. 2015, 3–27. [Google Scholar] [CrossRef]
- Becker, C.; Betz, S.; Chitchyan, R.; Duboc, L.; Easterbrook, S.M.; Penzenstadler, B.; Ssyff, N.; Venters, C.C. Requirements: The key to sustainability. IEEE Softw. 2016, 33, 56–65. [Google Scholar] [CrossRef]
- Koçak, S.A.; Alptekin, G.I.; Bener, A.B. Evaluation of software product quality attributes and environmental attributes using ANP decision framework. CEUR Workshop Proc. 2014, 1216, 37–44. [Google Scholar]
- Ericsson. Technology for Good. Available online: https://www.ericsson.com/assets/local/about-ericsson/sustainability-and-corporate-responsibility/documents/2015-corporate-responsibility-and-sustainability-report.pdf (accessed on 30 November 2014).
- Ericsson. Energy and Carbon Report. 2013. Available online: http://www.ericsson.com/res/docs/2013/ericsson-energy-and-carbon-report.pdf (accessed on 11 November 2017).
- Digiconomist. Bitcoin Energy Consumption Index. Available online: https://digiconomist.net/bitcoin-energy-consumption (accessed on 18 June 2018).
- Elbahrawy, A.; Alessandretti, L.; Kandler, A.; Pastor-satorras, R. Evolutionary dynamics of the cryptocurrency market. R. Soc. Open Sci. 2017, 1–16. [Google Scholar] [CrossRef] [PubMed]
- Chris, P.; Dan, S.; Eli, B. Understanding and Mitigating the Effects of Device and Cloud Service Design Decisions on the Environmental Footprint of Digital Infrastructure. In Proceedings of the 2016 CHI Conference on Human Factors in Computing Systems (CHI’16), San Jose, CA, USA, 7–12 May 2016; ACM/IEEE: New York, NY, USA, 2016; pp. 1324–1337. [Google Scholar][Green Version]
- Al Hinai, M.; Chitchyan, R. Engineering Requirements for Social Sustainability. 2016. Available online: http://www.cs.le.ac.uk/people/rc256/ict4s2016_hinai_chitchyan.pdf (accessed on 20 June 2018).[Green Version]
- Penzenstadler, B. Software Engineering for Sustainability. Available online: https://www.ics.uci.edu/~djr/DebraJRichardson/SE4S.html (accessed on 20 June 2018).
- Blevis, E.; Preist, C.; Schien, D.; Ho, P. Further Connecting Sustainable Interaction Design with Sustainable Digital Infrastructure Design. In Proceedings of the 2017 Workshop on Computing Within Limits (LIMITS’17), Santa Barbara, CA, USA, 22–24 June 2017; ACM/IEEE: New York, NY, USA, 2017; pp. 71–83. [Google Scholar][Green Version]
- 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 (GIBSE’13), Fukuoka, Japan, 26 March 2013; ACM: New York, NY, USA, 2013; pp. 3–7. [Google Scholar]
- Jeanette Schwarz, E.B.; Beloff, B. Use Sustainability Metrics to Guide Decision Making. CEP 2002, 98, 58–63. [Google Scholar]
- Penzenstadler, B. What does Sustainability mean in and for Software Engineering? In Proceedings of the 1st International Conference on ICT for Sustainability (ICT4S), Zurich, Switzerland, 14–16 February 2013. [Google Scholar]
- Venters, C.C.; Jay, C.; Lau, L.M.S.; Griffiths, M.K.; Holmes, V.; Ward, R.R.; Austin, J.; Dibsdale, C.E.; Xu, J. Software sustainability: The modern tower of babel. In Proceedings of the Third International Workshop on Requirements Engineering for Sustainable Systems Co-Located with 22nd International Conference on Requirements Engineering (RE 2014), Karlskrona, Sweden, 26 August 2014. [Google Scholar]
- Ehrenfeld, J.R. Sustainability by Design: A Subversive Strategy for Transforming Our Consumer Culture; Yale University Press: New Haven, Ct, USA; London, UK, 2008. [Google Scholar]
- Freeman, P. The Central Role of Design in Software Engineering: Implications for Research. Softw. Eng. Res. Dir. 1980, 121–132. [Google Scholar] [CrossRef]
- Becker, C.; Chitchyan, R.; Duboc, L.; Easterbrook, S.; Mahaux, M.; Penzenstadler, B.; Rodriguez-Navas, G.; Salinesi, C.; Seyff, N.; Venters, C.; et al. The Karlskrona manifesto for sustainability design. Softw. Eng. 2014, 20, 2014. [Google Scholar]
- Becker, C.; Chitchyan, R.; Duboc, L.; Easterbrook, S.; Penzenstadler, B.; Seyff, N.; Venters, C.C. Sustainability Design and Software: The Karlskrona Manifesto. In Proceedings of the 2015 IEEE/ACM 37th IEEE International Conference on Software Engineering, Florence, Italy, 16–24 May 2015. [Google Scholar]
- Saval, G.; Mahaux, M.; Heymans, P. Discovering Sustainability Requirements: An Experience Report. In Proceedings of the 20th International Working Conference on Requirements Engineering: Foundation for Software Quality, Essen, Germany, 7–10 April 2014. [Google Scholar]
- Chitchyan, R.; Betz, S.; Duboc, L.; Penzenstadler, B.; Ponsard, C.; Venters, C.C. Evidencing Sustainability Design Through Examples. 2015. Available online: http://eprints.hud.ac.uk/id/eprint/25699/1/Session2Paper3.pdf (accessed on 28 June 2018).
- Groher, I.; Weinreich, R. An Interview Study on Sustainability Concerns in Software Development Projects. In Proceedings of the 2017 43rd Euromicro Conference on Software Engineering and Advanced Applications (SEAA), Vienna, Austria, 30 August–1 September 2017. [Google Scholar]
- Pargman, D.; Eriksson, E.; Höjer, M.; Östling, U.G.; Borges, L.A. The (Un)sustainability of Imagined Future Information Societies. In Proceedings of the 2017 CHI Conference on Human Factors in Computing Systems (CHI’17), Denver, CO, USA, 6–11 May 2017; ACM: New York, NY, USA, 2017; pp. 773–785. [Google Scholar]
- Ilstedt, S.; Eriksson, E.; Hesselgren, M.I.A. Sustainable Lifestyles–How Values Affect Sustainable Practises. 2017. Available online: http://www.nordes.org/nordes2017/assets/full_papers/nordes17a-sub1039-cam-i26_ILSTEDT_v2.pdf (accessed on 28 June 2018).
- Shedroff, N. Design is the Problem: The Future of Design Must be Sustainable. 2009, p. 582. Available online: https://designethosandaction.files.wordpress.com/2015/01/design-is-the-problem.pdf (accessed on 28 June 2018).
- Bibri, M. Sustaining ICT for Sustainability. 2009. Available online: https://www.diva-portal.org/smash/get/diva2:833352/FULLTEXT01.pdf (accessed on 28 June 2018).
- Eriksson, E.; Pargman, D.; Bates, O.; Normark, M.; Gulliksen, J.; Anneroth, M.; Berndtsson, J. HCI and UN’s Sustainable Development Goals: Responsibilities, Barriers and Opportunities. In Proceedings of the 9th Nordic Conference on Human-Computer Interaction (NordiCHI’16), Gothenburg, Sweden, 23–27 October 2016; ACM: New York, NY, USA, 2016; pp. 140:1–140:2. [Google Scholar]
- Vister, K.K.; Evans, R.D. Identifying Contributing Factors to Sustainability Awareness in the Norwegian Software Industry. In Proceedings of the 2017 IEEE 4th International Conference on Knowledge-Based Engineering and Innovation (KBEI), Tehran, Iran, 22 December 2017. [Google Scholar]
- Musthaler, L. Energy-Aware Software Design Can Reduce Energy Consumption by 30% to 90%. Network World. 2014. Available online: https://www.networkworld.com/article/2861005/green-it/energy-aware-software-design-can-reduce-energy-consumption-by-30-to-90.html (accessed on 28 June 2018).
- Durdik, Z.; Klatt, B.; Koziolek, H.; Krogmann, K.; Stammel, J.; Weiss, R. Sustainability Guidelines for Long-Living Software Systems. In Proceedings of the 2012 28th IEEE International Conference on Software Maintenance (ICSM), Trento, Italy, 23–28 September 2012; pp. 517–526. [Google Scholar]
- Malik, M.N.; Khan, H.H. Investigating Software Standards: A Lens of Sustainability for Software Crowdsourcing. IEEE Access 2018, 6, 5139–5150. [Google Scholar] [CrossRef]
- Nina, W.; Patricia, L.; Francesco, O. Sustainability in Software Engineering. 2017. Available online: http://dl.ifip.org/db/conf/ifip6-3/sustainit2017/08_P08_S21_SustainIT2017.pdf (accessed on 28 June 2018).
- Robillard, M.P. Sustainable Software Design. In Proceedings of the 2016 24th ACM SIGSOFT International Symposium on Foundations of Software Engineering, Seattle, WA, USA, 13–18 November 2016; ACM: New York, NY, USA; pp. 920–923. [Google Scholar]
- Lago, P.; Koçak, S.A.; Crnkovic, I.; Penzenstadler, B. Framing Sustainability as a Property of Software Quality. Commun. ACM 2012, 55, 56–64. [Google Scholar] [CrossRef][Green Version]
- Chitchyan, R.; Duboc, L.; Becker, C.; Betz, S.; Penzenstadler, B.; Venters, C.C. Sustainability Design in Requirements Engineering: State of Practice. In Proceedings of the 2016 IEEE/ACM 38th International Conference on Software Engineering Companion (ICSE-C), Austin, TX, USA, 14–22 May 2016. [Google Scholar]
- Calienes, G.G. Requirements Prioritization Framework for developing Green and Sustainable Software Using ANP—Based Decision Making. 2013. Available online: http://enviroinfo.eu/sites/default/files/pdfs/vol7995/0327.pdf (accessed on 28 June 2018).
- Penzenstadler, B. RE4ES: Support Environmental Sustainability by Requirements Engineering. 2012. Available online: http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.382.9172&rep=rep1&type=pdf (accessed on 28 June 2018).
- Bozzelli, P.; Gu, Q.; Lago, P. A Systematic Literature Review on Green Software Metrics. 2013. Available online: http://dare.ubvu.vu.nl/bitstream/handle/1871/52417/SLR?sequence=1 (accessed on 28 June 2018).
- Kern, E.; Dick, M.; Naumann, S.; Guldner, A.; Johann, T. Green Software and Green Software Engineering—Definitions, Measurements, and Quality Aspects. In Proceedings of the First International Conference on Information and Communication for Sustainability, Zurich, France, 14–16 February 2013; pp. 87–94. [Google Scholar]
- 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]
- Sawyer, P.; Paech, B.; Heymans, P. (Eds.) Requirements Engineering: Foundation for Software Quality. In Proceedings of the 13th International Working Conference (REFSQ 2007), Trondheim, Norway, 11–12 June 2007; pp. 247–261. [Google Scholar]
- Dick, M.; Naumann, S. Enhancing Software Engineering Processes Towards Sustainable Software Product Design. 2010. Available online: https://pdfs.semanticscholar.org/98d0/4de0318b252f273e3cf36cc385253542b924.pdf (accessed on 28 June 2018).
- Erdélyi, 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. [Google Scholar]
- Oyedeji, S.; Seffah, A.; Penzenstadler, B. Sustainability Quantification in Requirements Informing Design. 2017. Available online: http://ceur-ws.org/Vol-1944/paper6.pdf (accessed on 28 June 2018).
- Penzenstadler, B. Infusing Green: Requirements Engineering for Green in and through Software Systems. 2014. Available online: http://ceur-ws.org/Vol-1216/paper8.pdf (accessed on 28 June 2018).
- Roher, K.; Richardson, D. Sustainability Requirement Patterns. In Proceedings of the 2013 3rd International Workshop on Requirements Patterns (RePa), Rio de Janeiro, Brazil, 15–19 July 2013. [Google Scholar]
- Colmant, M.; Rouvoy, R.; Seinturier, L. Improving the Energy Efficiency of Software Systems for Multi-Core Architectures. In Proceedings of the 11th Middleware Doctoral Symposium, Bordeaux, France, 8–9 December 2014. [Google Scholar]
- Lami, G.; Buglione, L. Measuring Software Sustainability from a Process-Centric Perspective. In Proceedings of the 2012 Joint Conference of the 22nd International Workshop on Software Measurement and the 2012 Seventh International Conference on Software Process and Product Measurement, Assisi, Italy, 17–19 October 2012. [Google Scholar]
- Calero, C.; Bertoa, M.F.; Moraga, M.A. A Systematic Literature Review for Software Sustainability Measures. In Proceedings of the 2013 2nd International Workshop on Green and Sustainable Software (GREENS), San Francisco, CA, USA, 20 May 2013. [Google Scholar]
- Seacord, R.; Elm, J.; Goethert, W.; Lewis, G.A.; Plakosh, D.; Robert, J.; Wrage, L.; Lindvall, M. Measuring Software Sustainability. In Proceedings of the International Conference on Software Maintenance, Amsterdam, The Netherlands, 22–26 September 2003. [Google Scholar]
- Penzenstadler, B.; Martin, M.; Camille, S. RE4SuSy: Requirements Engineering for Sustainable Systems. J. Syst. Softw. 2013, 995. Available online: http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.415.8601&rep=rep1&type=pdf (accessed on 28 June 2018).
- Christoph, B. Sustainability and longevity: Two sides of the same quality? CEUR Workshop Proc. 2014, 1216, 1–6. [Google Scholar]
- Becker, C. Website for The Karlskrona Manifesto for Sustainability Design. 2014. Available online: http://sustainabilitydesign.org/karlskrona-manifesto/ (accessed on 10 October 2017).
- Fowler, M.; Highsmith, J. The agile manifesto. Softw. Dev. 2001, 9, 28–35. [Google Scholar]
- Bussiness Rules Group. The Business Rules Manifesto. Available online: http://www.businessrulesgroup.org/brmanifesto.htm (accessed on 12 November 2017).
- Arsanjani, A.; Booch, G.; Boubez, T.; Brown, P.; Chappell, D.; de Vadoss, J.; Loesgen, B. The SOA Manifesto. SOA Manifesto 2009, 35, 82–88. [Google Scholar]
- Felikson, L. The SOA Manifesto: Establishing a Common Understanding about SOA and Service-Orientation History of The SOA Manifesto. 2010. Available online: http://2010.secrus.org/wp-content/uploads/download/Felikson.pdf (accessed on 28 June 2018).
- Gent, I. The Recomputation Manifesto. Available online: https://www.software.ac.uk/blog/2016-10-05-recomputation-manifesto (accessed on 12 November 2016).
- Langer, A.M. Guide to Software Development—Designing and Managing the Life Cycle. 2016, p. 402. Available online: https://www.springer.com/la/book/9781447167976 (accessed on 28 June 2018).
- Berkhout, F.; Hertin, J. Impacts of Information and Communication Technologies on Environmental Sustainability: Speculations and Evidence. Available online: http://www.oecd.org/sti/inno/1897156.pdf (accessed on 28 June 2018).
- Hilty, L.M.; Aebischer, B. ICT for Sustainability: An Emerging Research Field. In ICT Innovations for Sustainability; Advances in Intelligent Systems and Computing; Hilty, L., Aebischer, B., Eds.; Springer: Cham, Switzerland, 2015; Volume 310. [Google Scholar]
- ETH Sustainability Summer School 2011. Washing Machine. 2011. Available online: http://webarchiv.ethz.ch/sustainability-v2/lehre/Sommerakademien/so2011/washies_report.pdf (accessed on 10 December 2017).
- Consumer Reports. Washing Machines That Save Water and Money. 2017. Available online: https://www.consumerreports.org/cro/news/2015/04/washing-machines-that-save-water-and-money/index.htm (accessed on 28 June 2018).
- National Geographic. Washing Machines Buying Guide. 2017. Available online: http://environment.nationalgeographic.com/environment/green?guide/washing?machine?buying?guide/environmental?impact/ (accessed on 5 May 2017).
- Jack, T. The dirt on clothes: Why washing less is more sustainable. J. Home Econ. Inst. Aust. 2013, 20, 44. [Google Scholar]
- Ross, C. The Damage I Cause When I Wash My Clothes. 2015. Available online: https://theswatchbook.offsetwarehouse.com/2015/07/16/environmental-impact-of-the-washing-machine/ (accessed on 28 June 2018).
- Markham, D. How to Reuse Grey Water in the Home and Yard. 2017. Available online: https://www.treehugger.com/green-home/how-reuse-grey-water-home-and-yard.html (accessed on 28 June 2018).
- R Entertainment. UN Honours ‘Angry Birds, Happy Planet’ Campaign. 2017. Available online: http://www.goodnewsfinland.com/un-honours-angry-birds-happy-planet-campaign/ (accessed on 28 June 2018).
- Deloittte, G. 2016 Mobile Industry Impact Report: Sustainable Development Goals. 2016. Available online: https://www.gsma.com/betterfuture/wp-content/uploads/2016/09/_UN_SDG_Report_FULL_R1_WEB_Singles_LOW.pdf (accessed on 28 June 2018).
- Arndt, H.; Dziubaczyk, B.; Mokosch, M. Information Technology in Environmental Engineering; Springer International Publishing: Cham, Switzerland, 2014; pp. 13–24. [Google Scholar]
- Sony Pictures. Make the Angry Birds Happy! Take Climate Actio Send a Tweet, Record a Vine, Take a Photo That Shows Raising Your Voice for Good Cause. Available online: http://www.angrybirdshappyplanet.net/ (accessed on 13 October 2017).
- Sony Pictures. The Angry Birds Movie Themed Angry Birds for a Happy Planet. Available online: http://www.sonypicturesgreenerworld.com/articles/angry-birds-for-a-happy-planet (accessed on 14 October 2017).
- Accenture. Microsoft, Accenture and WSP Environment & Energy Study Shows Significant Energy and Carbon Emissions Reduction Potential from Cloud Computing. Available online: https://newsroom.accenture.com/article_display.cfm?article_id=5089 (accessed on 20 November 2017).
- Microsoft. Microsoft Products Our Products are Empowering People and Organizations to Achieve More While Improving Efficiency and Reducing Carbon Emissions. Cloud Services. Available online: https://www.microsoft.com/about/csr/environment/solutions/cloud/ (accessed on 11 November 2017).
- Ahmad, I.; Ranka, S. (Eds.) Handbook of Energy-Aware and Green Computing–Two Volume Set; Chapman and Hall/CRC: New York, NY, USA, 2012. [Google Scholar]
- Accenture. Cloud Computing and Sustainability: The Environmental Benefits of Moving to the Cloud. Available online: http//download.microsoft.com/download/A/F/F/AFFEB671-FA27-45CF-9373-0655247751CF/Cloud Comput. Sustain.-Whitepaper-Nov 2010.pdf (accessed on 22 August 2017).
- Queensland Department of Public Works. Smart and Sustainable Homes Design Objectives. 2016. Available online: http://www.hpw.qld.gov.au/construction/sustainability/smartsustainablehomes/Pages/Default.aspx (accessed on 28 June 2018).
- Wilson, C.; Hargreaves, T.; Hauxwell-Baldwin, R. Benefits and risks of smart home technologies. Energy Policy 2017, 103, 72–83. [Google Scholar] [CrossRef]
- Bhati, A.; Hansen, M.; Chan, C.M. Energy conservation through smart homes in a smart city: A lesson for Singapore households. Energy Policy 2017, 104, 230–239. [Google Scholar] [CrossRef]
- Monaghan, A. Seven Things You Need to Know about the UK Economy. Available online: https://www.theguardian.com/sustainable-business/2015/apr/17/things-need-know-sustainable-smart-technology (accessed on 18 December 2017).
- Solanki, V.K.; Muthusamy, V.; Katiyar, S. Think Home: A Smart Home as Digital Ecosystem. Circuits Syst. 2016, 7. [Google Scholar] [CrossRef]
- Li, R.Y.M. The Usage of Automation System in Smart Home to Provide a Sus-Tainable Indoor Environment: A Content Analysis in Web 1.0. Int. J. Smart Home 2013, 7, 47–60. [Google Scholar]
- Barker, S.; Mishra, A.; Irwin, D.; Cecchet, E.; Shenoy, P.; Albrecht, J. Smart*: An Open Data Set and Tools for Enabling Research in Sustainable Home. 2012. Available online: http://www.ecs.umass.edu/~deirwin/sustkdd12.pdf (accessed on 28 June 2018).
- Makonin, S.; Bartram, L.; Popowich, F. A Smarter Smart Home: Case Studies of Ambient Intelligence. IEEE Pervasive Comput. 2013, 12, 58–66. [Google Scholar] [CrossRef]
- Kramer, K.-L. User Experience in the Age of Sustainability; Morgan Kaufmann: Burlington, MA, USA, 2012. [Google Scholar]
- Spinellis, D. The Social Responsibility of Software Development. IEEE Softw. 2017, 34, 4–6. [Google Scholar] [CrossRef]
- Nicholl, A.; Perry, M. Smart Home Systems and the Code for Sustainable Homes: A BRE Guide; IHS BRE Press: Bracknell, UK, 2009; ISBN 9781848061125. [Google Scholar]
- Brouwers, M.C.; Kho, M.E.; Browman, G.P.; Burgers, J.S.; Cluzeau, F.; Feder, G.; Fervers, B.; Graham, I.D.; Grimshaw, J.; Hanna, S.; et al. AGREE II: Advancing guideline development, reporting and evaluation in healthcare. Can. Med. Assoc. J. 2010, 182, E839–E842. [Google Scholar] [CrossRef] [PubMed]
|P1||Sustainability is systemic||Sustainability is never an isolated property. It requires transdisciplinary common ground of sustainability as well as a global picture of sustainability within other properties.|
|P2||Sustainability has multiple dimensions.||We have to include those dimensions into our analysis if we are to understand the nature of sustainability in any given situation.|
|P3||Sustainability transcends multiple disciplines.||Working in sustainability means working with people from across many disciplines, addressing the challenges from multiple perspectives.|
|P4||Sustainability is a concern independent of the purpose of the system.||Sustainability has to be considered even if the primary focus of the system under design is not sustainability.|
|P5||Sustainability applies to both a system and its wider contexts.||There are at least two spheres to consider in system design: the sustainability of the system itself and how it affects the sustainability of the wider system of which it will be part.|
|P6||System visibility is a necessary precondition and enabler for sustainability design.||Strive to make the status of the system and its context visible at different levels of abstraction and perspectives to enable participation and informed responsible choice.|
|P7||Sustainability requires action on multiple levels.||Seek interventions that have the most leverage on a system and consider the opportunity costs: whenever you are taking action towards sustainability, consider whether this is the most effective way of intervening in comparison to alternative actions (leverage points).|
|P8||Sustainability requires meeting the needs of future generations without compromising the prosperity of the current generation||Innovation in sustainability can play out as decoupling present and future needs. By moving away from the language of conflict and the trade-off mindset, we can identify and enact choices that benefit both present and future.|
|P9||Sustainability requires long-term thinking.||Multiple timescales, including longer-term indicators in assessment and decisions, should be considered.|
|SDLC Phases||Karlskrona Manifesto Principles|
|P1- This ensures that the project initiation considers sustainability in the overall project definition from the beginning.|
P2- Software sustainability has different dimensions that have to be considered from the beginning for better project management with different stakeholders.
P3- Software project usually involves stakeholders from different domains, incorporating their sustainability concerns provides better management of those concerns from multiple perspectives which can help the incorporation of sustainability for the software.
User Requirements Definition
|P2- It is important to take note of user requirements in relation to each of the sustainability dimensions in order to have better sustainability analysis during the analysis and design phase|
System Requirements Definition
|P4- During elicitation of system requirements, requirement engineers should consider sustainability concerns for the system during the requirements definition even when it is not a core part of the user requirements.|
P5- Cross evaluate the consequential impacts of the system sustainability requirements and the environment in which the system will function.
Analysis and Design
|P2- Applying this principle provides a blueprint for system evaluation from all sustainability dimensions (economic, environment, social, individual and technical).|
P4- At this phase, this principle helps to encourage analysis of system design based on sustainability in order to facilitate better sustainable system.
P6- Application of this principle enables better visual and visible overview of the system from different levels of abstraction.
P8- This will provide better understanding during analysis to make better choices that will help the potential users of the system in present and in future when the system evolves.
|P2- This will encourage developers during this phase to consider different sustainability dimensions, especially technical, social and individual dimensions.|
P4- Encourage the search for better avenues to make the system sustainable from the development perspective (developers) and also the functions of the system to aid longevity.
Integration and Testing
|P2- Provides integration and for test team to have a sustainability template that can be used to test the system for all sustainability dimensions based on the sustainability requirement output from phases 2, 3 and 4.|
P4- Application of this principle will aid consideration of sustainability in this phase even if the primary focus of system is not about sustainability.
|P5- Provides beforehand reasoning for the development team to consider the sustainability of the system, its production environment and when pushing it live for use.|
P7- Based on principle 5 (P5), this principle will aid consideration of seeking the involvement of different stakeholders to make the actualization of the system sustainability possible in the production environment and when pushed live.
|P9- This principle at this stage help to create the conscious awareness so that when the system is in a live environment, there will be continuous evaluation to assess the system sustainability and think of ways for optimizing and improving the sustainability of the system from the different dimensions.|
|System Category||System Type|
|Cyber physical system||Smart home system|
|Embedded system||Washing machine|
|Desktop application||Microsoft office|
|Karlskrona Principle and Goal||Principle Usage||Stakeholders||Question||Indicator|
|(P2) Cross platform compatibility||Current: Smart home appliances are compatible with only few other manufacturers’ devices in the market.|
Future: Smart home appliances should be compatible with other devices from different manufacturers based on standard interface to avoid increases in energy usage. This can be achieved by enforcing device standards that can be used for cross-platform compatibility.
Home automation appliances should be economic and at same time environmental friendly.
|Business analyst||Can device function with other device from different manufacturer?||Device cross-platform compatibility|
|(P4) Educate Users||Current: Smart home solutions provides graphical information about energy usage but not necessarily educate users on how to be energy conscious based on their daily habit over a period of time.|
Future: User data from smart home solution should be used for educating users thereby encouraging users to behave more sustainably by presenting energy usage in an informative and educative manner (for example, relate energy usage to the amount of killed trees).
User data could also be used for prediction aimed at optimizing the use resources such as water and energy within a household or company.
The solutions could help interconnect other systems that can help save resources like water and electricity in a household or company.
|Are users aware of their actions relating to electrical appliances in the house or company?||Usage data over time to detect changes in user habits|
|(P9) Reduce production and solution cost||Current: There are currently few cost-effective solutions that will encourage users to adopt home automation solutions in the long term.|
Future: Use cheap, environmentally friendly resources in the production of home automation device (hardware) that can reduce production cost.
If the cost of production reduces, the overall cost of smart home solution will also reduce which will increase its affordability among users.
There can also be low-cost solutions for poor countries to assist in the use of water and energy judiciously (reduce waste).
|Business Analyst||Did we manage to reduce costs compared to previous years (before solution was a smart home)?||Net cost of smart home solution|
|Order of Impacts||Environment||Economic||Technical||Social||Individual|
|1st||Increase in the use of natural resources in the production of hardware for smart home devices and pollution of the environment from toxic material used in production.||Creates new business opportunities for those in this sector (setup and installation of devices at home).||Pave way for improving existing technologies and development of new tools to meet new market demands for sustainable usage of these technologies.||Breeds new communities of users and suppliers.||Users rely on devices to control some aspects of their lives at home and in offices.|
|2nd||Reduce household energy consumption.||Reduce household bill for energy consumption.||High demand for security of user personal data (privacy).||Increase comfort, safety, flexibility, and security of user.||Demand for sustainable user-friendly solution for home users.|
|3rd||Increase in the use of toxic material for production of hardware.|
Less energy consumption over a long period of time.
|Decrease cost of energy through optimized solution over time.||Efficient provision of sound technical solutions to avoid technical glitch that could lead to high energy usage.|
Encourage innovation on how to create cost-effective technologies and devices to reduce household and company energy usage
|Encourage users to form communities to share data as a way of encouraging each other to be energy conscious||Induces sustainable behaviour among users.|
|SDLC Phases and Karlskrona Manifesto Principles||Sustainability Goals||Sustainability Concepts, Methods and Tools||Indicators|
Project Definition, P1, P2 and P3
|Transmaterialization, design for sustainable efficiency, reusability.||Cradle to cradle, biomimicry, sustainable business canvas.||Carbon footprint, material footprint, end of life footprint.|
User Requirements Definition, P2
|Increase sustainability awareness among users.||Helix of sustainability.||Total number of sustainability requirements, priority assign to sustainability requirements.|
System Requirements Definition, P4, and P5
|Design for efficiency, sustainability awareness and interoperability.||Biomimicry, cradle to cradle, goal model.||Total number of system goals relating to sustainability dimensions.|
Analysis and Design, P2, P4, P6 and P8
|Design for reuse and efficiency, localization, interoperability||Biomimicry, helix of sustainability, Life-cycle sustainability assessment, social return on investment, sustainability analysis radar chart.||Number of first-, second- and third-order impacts of system identified.|
Development, P2 and P4
|Design for reuse, design for module replicability, design for efficiency, design for sustainability awareness, design for efficiency, design for easy service and maintenance.||Biomimicry, cradle to cradle.||Number of coding choices influenced by sustainability, number of features (functions) added to systems to inform users about sustainability through functions like eco feedback.|
Integration and Testing, P2 and P4
|Design for easy assembly and disassembly, design for durability,||Cradle to cradle, sustainability analysis radar chart, life-cycle sustainability assessment.||How much information from sustainability analysis chart was used during integration and testing such as the number of systems functions tested against sustainability concerns such as the first-order (immediate) impact and possible second-order (enabling) impacts of the system.|
Implementation, P5 and P7
|Design for easy use, design to induce conscious sustainability awareness, design to educate users about sustainability, design for easy recycle.||Biomimicry, cradle to cradle.||The priority assign to sustainability by developers and the system owners/users during after implementation|
|Proper design for serviceability, design for easy replacement of code modules, design for continuous user engagement through sustainability awareness.||Life-cycle sustainability assessment, sustainability analysis radar chart, cradle to cradle.||Number of improvements to system based on sustainability requirements either from users’ feedback or developers.|
© 2018 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 (http://creativecommons.org/licenses/by/4.0/).
Oyedeji, S.; Seffah, A.; Penzenstadler, B. A Catalogue Supporting Software Sustainability Design. Sustainability 2018, 10, 2296. https://doi.org/10.3390/su10072296
Oyedeji S, Seffah A, Penzenstadler B. A Catalogue Supporting Software Sustainability Design. Sustainability. 2018; 10(7):2296. https://doi.org/10.3390/su10072296Chicago/Turabian Style
Oyedeji, Shola, Ahmed Seffah, and Birgit Penzenstadler. 2018. "A Catalogue Supporting Software Sustainability Design" Sustainability 10, no. 7: 2296. https://doi.org/10.3390/su10072296