towards software sustainability assessment
TRANSCRIPT
![Page 1: Towards Software Sustainability Assessment](https://reader035.vdocuments.net/reader035/viewer/2022062503/5a66a38d7f8b9ac5128b5ed1/html5/thumbnails/1.jpg)
Towards Software Sustainability Assessment Prof. dr. Patricia Lago Software and Services research group M: [email protected] T: @patricia_lago
Software and Services
Chalmers seminar / brainstorming session
![Page 2: Towards Software Sustainability Assessment](https://reader035.vdocuments.net/reader035/viewer/2022062503/5a66a38d7f8b9ac5128b5ed1/html5/thumbnails/2.jpg)
Contents Ø About us
• Green IT, green software, sustainability • The SoSA method: Software Sustainability Assessment©
![Page 3: Towards Software Sustainability Assessment](https://reader035.vdocuments.net/reader035/viewer/2022062503/5a66a38d7f8b9ac5128b5ed1/html5/thumbnails/3.jpg)
Researchers in Green Software @S2
Giuseppe Procaccianti
Grace Lewis
Patricia Lago
Fahimeh Alizadeh
Nelly Condori-Fernandez
Albert Hankel Gianantonio Me
![Page 4: Towards Software Sustainability Assessment](https://reader035.vdocuments.net/reader035/viewer/2022062503/5a66a38d7f8b9ac5128b5ed1/html5/thumbnails/4.jpg)
Our research • Software engineering and
software architecture
• Service orientation
• Migration, modernization, re-engineering
• Design decision making and modeling
© Patricia Lago 2014
![Page 5: Towards Software Sustainability Assessment](https://reader035.vdocuments.net/reader035/viewer/2022062503/5a66a38d7f8b9ac5128b5ed1/html5/thumbnails/5.jpg)
Our research • Green software engineering • Green (cloud) migration and
management
• Software architecture & sustainability
© Patricia Lago 2014
green
![Page 6: Towards Software Sustainability Assessment](https://reader035.vdocuments.net/reader035/viewer/2022062503/5a66a38d7f8b9ac5128b5ed1/html5/thumbnails/6.jpg)
Education
Why the Track Software Engineering and Green IT? • Provide current professionals
and future generations • with the appropriate skills and
competencies • to engineer energy-aware
software and ICT systems
![Page 7: Towards Software Sustainability Assessment](https://reader035.vdocuments.net/reader035/viewer/2022062503/5a66a38d7f8b9ac5128b5ed1/html5/thumbnails/7.jpg)
Amsterdam Data Science Marcel Worring
Amsterdam Data Science
Basic Facts Founded Fall 2013 Four academic partners Built around multiple proven research strengths in which we are world leaders
Applications
Creative Industry Health Care Life Science
Smart cities / Smart Citizen ICT and Sustainability
![Page 8: Towards Software Sustainability Assessment](https://reader035.vdocuments.net/reader035/viewer/2022062503/5a66a38d7f8b9ac5128b5ed1/html5/thumbnails/8.jpg)
Contents • About us
Ø Green IT, green software, sustainability
• The SoSA method: Software Sustainability Assessment©
![Page 9: Towards Software Sustainability Assessment](https://reader035.vdocuments.net/reader035/viewer/2022062503/5a66a38d7f8b9ac5128b5ed1/html5/thumbnails/9.jpg)
Green IT
The study and practice of designing, manufacturing, using, and disposing of computers, servers, and associated subsystems—such as monitors, printers, storage devices, and networking and communications systems — efficiently and effectively with minimal or no impact on the environment [San Murugesan, “Harnessing Green IT: Principles and Practices,” IEEE IT Professional, January–February 2008, pp 24-33]
![Page 10: Towards Software Sustainability Assessment](https://reader035.vdocuments.net/reader035/viewer/2022062503/5a66a38d7f8b9ac5128b5ed1/html5/thumbnails/10.jpg)
Green software The study and practice of designing, manufacturing, using, and disposing of computers, servers, and associated subsystems—such as monitors, printers, storage devices, and networking and communications systems — efficiently and effectively with minimal or no impact on the environment [San Murugesan, “Harnessing Green IT: Principles and Practices,” IEEE IT Professional, January–February 2008, pp 24-33]
energy efficient software
the software influences a
green behavior
hardware
development process
![Page 11: Towards Software Sustainability Assessment](https://reader035.vdocuments.net/reader035/viewer/2022062503/5a66a38d7f8b9ac5128b5ed1/html5/thumbnails/11.jpg)
Two types of environmental impacts
Decisions embedded in software
With direct impact (greening of IT)
With indirect impact (greening by IT)
Energy efficient software
The software influences a green behavior
Energy-aware software
![Page 12: Towards Software Sustainability Assessment](https://reader035.vdocuments.net/reader035/viewer/2022062503/5a66a38d7f8b9ac5128b5ed1/html5/thumbnails/12.jpg)
Sustainable software
SUSTAINABILITY IS DEFINED(3) as the capacity to endure(1) and “preserve the function of a system over an extended period of time(2).
(1) Hilty et al. The relevance of information and communication technologies for environmental sustainability: A prospective simulation study. Environmental Modelling & Software, 21(11), 2006 (2) Sustainability: Can our society endure? On-line at www.sustainability.com/sustainability (3) Lago et al. Framing sustainability as a property of software quality, ACM Communications, 58(10), 2015
![Page 13: Towards Software Sustainability Assessment](https://reader035.vdocuments.net/reader035/viewer/2022062503/5a66a38d7f8b9ac5128b5ed1/html5/thumbnails/13.jpg)
Two types of sustainability impacts
The [software] capacity to support sustainable processes and inject a positive behavioral
change
![Page 14: Towards Software Sustainability Assessment](https://reader035.vdocuments.net/reader035/viewer/2022062503/5a66a38d7f8b9ac5128b5ed1/html5/thumbnails/14.jpg)
The [software] capacity to support sustainable processes and inject a positive behavioral
change
Source: engineering.com
“Sustainable platforms can incorporate sustainable energy production, monitor energy supply and demand, detect sub-optimal usages, elicit opportunities for energy savings, create novel services, change life styles”.
![Page 15: Towards Software Sustainability Assessment](https://reader035.vdocuments.net/reader035/viewer/2022062503/5a66a38d7f8b9ac5128b5ed1/html5/thumbnails/15.jpg)
Two types of sustainability impacts
(4) Avgeriou et al. Architecture sustainability: Guest Editor introduction, IEEE Software, Nov./Dec. 2013
The [software] capacity to support sustainable processes and inject a positive behavioral
change
The [software] capacity to endure different types of change through efficient maintenance and orderly evolution over its entire life cycle(4)
![Page 16: Towards Software Sustainability Assessment](https://reader035.vdocuments.net/reader035/viewer/2022062503/5a66a38d7f8b9ac5128b5ed1/html5/thumbnails/16.jpg)
John Koster Director Software Development ASML
“Technology changes frequently, but software stays for 10 to 20 years. The challenge is to make sure that when we change the software it will just improve.” [ICT.OPEN 2015]
The [software] capacity to endure different types of change through efficient maintenance and orderly evolution over its entire life cycle(4)
![Page 17: Towards Software Sustainability Assessment](https://reader035.vdocuments.net/reader035/viewer/2022062503/5a66a38d7f8b9ac5128b5ed1/html5/thumbnails/17.jpg)
Environmental + Sustainability impacts
Decisions embedded in software
With direct impact (greening of IT)
With indirect impact (greening by IT)
Energy efficient software
The software influences a green behavior
Energy-aware software
Software supporting sustainable processes Sustainable software development
![Page 18: Towards Software Sustainability Assessment](https://reader035.vdocuments.net/reader035/viewer/2022062503/5a66a38d7f8b9ac5128b5ed1/html5/thumbnails/18.jpg)
Direct impact and energy efficiency
reduce the amount of energy the software requires to provide a service more energy efficient == less energy consumption
![Page 19: Towards Software Sustainability Assessment](https://reader035.vdocuments.net/reader035/viewer/2022062503/5a66a38d7f8b9ac5128b5ed1/html5/thumbnails/19.jpg)
Indirect impact and sustainability
• use software (or IT) to organize better the supported services • the software (or IT) is not energy efficient • the supported services have a lesser environmental impact
![Page 20: Towards Software Sustainability Assessment](https://reader035.vdocuments.net/reader035/viewer/2022062503/5a66a38d7f8b9ac5128b5ed1/html5/thumbnails/20.jpg)
Indirect impact and awareness creation
(use software/IT to) make people aware of their environmental impact additional software (or IT) consumes additional energy people will improve their behavior to consume less
![Page 21: Towards Software Sustainability Assessment](https://reader035.vdocuments.net/reader035/viewer/2022062503/5a66a38d7f8b9ac5128b5ed1/html5/thumbnails/21.jpg)
Indirect impact and Energy Efficiency:"Virtualization & Consolidation(*)
1. [Defini)on] Create virtual instances of (previously physical) servers. Virtual servers retain server name, IP address, etc. [Effects] This ac)on (a) eliminates physical bonds, allowing for flexible capacity management; (b) allows to execute hybrid servers on the same physical device, hence reducing investment in mul)ple specialized HW.
2. [Definition] Replace devices with newer technology following technology renovation cycles. This allows to increase capacity, and get faster and more energy efficient processors with the same number of physical servers. [Effects] This action (a) reduces power consumption, and (b) may lead to better performance.
3. [Definition] combine multiple (virtual) servers on one shared physical server, hence decreasing the overall number HW devices. [Effects] This action (a) reduces investments for maintenance and management (M&M); (b) decreases the required space in server rooms (c) reduces HW costs, (d) reduces overall power consumption, (e) reduces heat load. [Notes] Requires virtualization.
(*) Applicable for both servers, storage and applica)ons.
![Page 22: Towards Software Sustainability Assessment](https://reader035.vdocuments.net/reader035/viewer/2022062503/5a66a38d7f8b9ac5128b5ed1/html5/thumbnails/22.jpg)
How expensive is adopting a Green IT practice? Environmental effect
![Page 23: Towards Software Sustainability Assessment](https://reader035.vdocuments.net/reader035/viewer/2022062503/5a66a38d7f8b9ac5128b5ed1/html5/thumbnails/23.jpg)
Four relevant concerns for greener software
Technical Economic
Social Environmental
Source: P. Lago et al. “Framing Sustainability as a Software Quality Property”, ACM Communications, 2015.
![Page 24: Towards Software Sustainability Assessment](https://reader035.vdocuments.net/reader035/viewer/2022062503/5a66a38d7f8b9ac5128b5ed1/html5/thumbnails/24.jpg)
P. Lago et al. “Framing Sustainability as a Software Quality Property”, ACM Communications, 2015. To appear.
70 COMMUNICATIONS OF THE ACM | OCTOBER 2015 | VOL. 58 | NO. 10
contributed articles
IMA
GE
BY
CIE
NP
IES
DES
IGN
DOI:10.1145/2714560
This framework addresses the environmental dimension of software performance, as applied here by a paper mill and a car-sharing service.
BY PATRICIA LAGO, SEDEF AKINLI KOÇAK, IVICA CRNKOVIC, AND BIRGIT PENZENSTADLER
SUSTAINABILITY IS DEFINED as the “capacity to endure”34 and “preserve the function of a system over an extended period of time.”13 Discussing sustainability consequently requires a concrete system (such as a specific software system) or a specific software-intensive system. Analysis of the sustainability of a specific software system requires software developers weigh four major dimensions of sustainability—economic, social, environmental, and technical—affecting their related trade-offs.32
The first three stem from the Brundtland report,4 whereas technical is added for software-intensive systems27 at a level of abstraction closer to implementation. The economic dimension is concerned with preserving
capital and value. The social dimen-sion is concerned with maintaining communities. The environmental di-mension seeks to improve human wel-fare by protecting natural resources. And the technical dimension is con-cerned with supporting long-term use and evolution of software-intensive systems. Sustainability is achievable only when accounting for all dimen-sions. Including the environmental dimension makes it possible to aim at dematerializing production and con-sumption processes to save natural re-sources.12 Connections among the four dimensions involve different depen-dencies and stakeholders.28,31 Poten-tial conflicts among stakeholder inter-ests means software developers must understand the relationships among goals of the four dimensions.
The shortcoming of current soft-ware engineering practice with regard to sustainability is that the technical and economic dimensions are taken into account while the environmental and social dimensions are not. The question we address here is how these concepts relate to software and how to break down the respective concerns into software-quality requirements. We focus on the (currently neglected) environmental dimension and its re-lation to the other dimensions. While most efforts in environmental sustain-ability through software have focused on energy efficiency, we tie the con-cept of environmental sustainability to other sustainability dimensions of a software system, particularly to ad-
Framing Sustainability as a Property of Software Quality
key insights ! The sustainability analysis framework
enables software developers to specifically consider environmental and social dimensions relative to technical and economic dimensions.
! Sustainability requirements and concerns will increase system scope, requiring extended analysis during requirements engineering.
! The framework helps draw a more comprehensive picture of the relevant quality dimensions and, as a result, improve decision making.
The source
![Page 25: Towards Software Sustainability Assessment](https://reader035.vdocuments.net/reader035/viewer/2022062503/5a66a38d7f8b9ac5128b5ed1/html5/thumbnails/25.jpg)
ISO/IEC 42030 Systems and Software Engineering Architecture Evaluation, Technical Report WD3. ISO/IEC, New York, 2013.
70 COMMUNICATIONS OF THE ACM | OCTOBER 2015 | VOL. 58 | NO. 10
contributed articles
IMA
GE
BY
CIE
NP
IES
DES
IGN
DOI:10.1145/2714560
This framework addresses the environmental dimension of software performance, as applied here by a paper mill and a car-sharing service.
BY PATRICIA LAGO, SEDEF AKINLI KOÇAK, IVICA CRNKOVIC, AND BIRGIT PENZENSTADLER
SUSTAINABILITY IS DEFINED as the “capacity to endure”34 and “preserve the function of a system over an extended period of time.”13 Discussing sustainability consequently requires a concrete system (such as a specific software system) or a specific software-intensive system. Analysis of the sustainability of a specific software system requires software developers weigh four major dimensions of sustainability—economic, social, environmental, and technical—affecting their related trade-offs.32
The first three stem from the Brundtland report,4 whereas technical is added for software-intensive systems27 at a level of abstraction closer to implementation. The economic dimension is concerned with preserving
capital and value. The social dimen-sion is concerned with maintaining communities. The environmental di-mension seeks to improve human wel-fare by protecting natural resources. And the technical dimension is con-cerned with supporting long-term use and evolution of software-intensive systems. Sustainability is achievable only when accounting for all dimen-sions. Including the environmental dimension makes it possible to aim at dematerializing production and con-sumption processes to save natural re-sources.12 Connections among the four dimensions involve different depen-dencies and stakeholders.28,31 Poten-tial conflicts among stakeholder inter-ests means software developers must understand the relationships among goals of the four dimensions.
The shortcoming of current soft-ware engineering practice with regard to sustainability is that the technical and economic dimensions are taken into account while the environmental and social dimensions are not. The question we address here is how these concepts relate to software and how to break down the respective concerns into software-quality requirements. We focus on the (currently neglected) environmental dimension and its re-lation to the other dimensions. While most efforts in environmental sustain-ability through software have focused on energy efficiency, we tie the con-cept of environmental sustainability to other sustainability dimensions of a software system, particularly to ad-
Framing Sustainability as a Property of Software Quality
key insights ! The sustainability analysis framework
enables software developers to specifically consider environmental and social dimensions relative to technical and economic dimensions.
! Sustainability requirements and concerns will increase system scope, requiring extended analysis during requirements engineering.
! The framework helps draw a more comprehensive picture of the relevant quality dimensions and, as a result, improve decision making.
The source
![Page 26: Towards Software Sustainability Assessment](https://reader035.vdocuments.net/reader035/viewer/2022062503/5a66a38d7f8b9ac5128b5ed1/html5/thumbnails/26.jpg)
Two views
What qualities are relevant? What qualities influence which dimension?
scope category
![Page 27: Towards Software Sustainability Assessment](https://reader035.vdocuments.net/reader035/viewer/2022062503/5a66a38d7f8b9ac5128b5ed1/html5/thumbnails/27.jpg)
View #1: classify quality concerns What are the quality concerns in which dimension? Are there cross-dependencies between them?
![Page 28: Towards Software Sustainability Assessment](https://reader035.vdocuments.net/reader035/viewer/2022062503/5a66a38d7f8b9ac5128b5ed1/html5/thumbnails/28.jpg)
View #2: scoping quality concerns What are the quality concerns? Are they within, near, or outside the project scope? Are there cross-dependencies between them?