SlideShare une entreprise Scribd logo
1  sur  37
Télécharger pour lire hors ligne
Ivano Malavolta
VRIJE
UNIVERSITEIT
AMSTERDAM
Ivano Malavolta
Assistant professor
Vrije Universiteit Amsterdam
Software
sustainability
and Green IT
Ivano Malavolta
Hello
Ivano Malavolta
Our platform for experimenting
on software
– energy efficiency
– performance
A PLATFORM
A MASTER COURSE
The Green Lab
Students measure
real software products
A COLLABORATION PLATFORM
Industry-driven experiments
Ivano Malavolta
amsterdamyoungacademy.nl
Ivano Malavolta
Software sustainability?
1
Ivano Malavolta
Ivano Malavolta
Total number of views:
3,362,297,996
Total energy consumed: ~672 GWh in less than 7 years
x27,000 for 7 years!
ICT is unsustainable
Total energy per view:
0.2 kWh
https://www.youtube.com/watch?v=9bZkp7q19f0
http://shrinkthatfootprint.com/average-household-electricity-consumption
Ivano Malavolta
CPU: 500 - 2,000 mW
GSM: 800 mW
Display: 400 mW
GPS: 176 mW
Gyroscope: 130 mW
Microphone: 101 mW
Bluetooth: 100 mW
Accelerometer: 21 mW
Battery charge efficiency: 90%
Where does this energy go?
Ivano Malavolta
Energy loss:
• Low utilization
• Cooling
• Lighting
PUE = "Good" PUE = 1.4 = 30% loss
Where does this energy go?
Min utilization rate: 10%
Max utilization rate: 80%
Ivano Malavolta
”The number of transistors in a
circuit doubles about every 2 years"
(Moore's law)
Is hardware efficient?
Ivano Malavolta
"The energy efficiency of hardware
doubles every 1.5 years"
(Koomey's law)
Is hardware efficient?
Ivano Malavolta
"Software gets slower more
rapidly than hardware gets faster"
(Wirth's law)
Ok, so what about software?
Ivano Malavolta
Nathan P. Myhrvold, Microsoft, ACM 1997
Why is software consuming more and more?
1. Software is a gas
Software always expands to fit whatever container it is stored in
2. Software grows until it becomes limited by Moore's Law
The initial growth of software is rapid, like gas expanding, but is
inevitably limited by the rate of increase in hardware speed
3. Software growth makes Moore's Law possible
People buy new hardware because the software requires it
4. Software is only limited by human ambition and expectation
We'll always find new algorithms, new applications, and new
users
Ivano Malavolta
Energy efficiency
in the back-end2
Ivano Malavolta
Research questions
• .NET Platform supporting Governance,
Risk and Compliance (GRC) processes.
• Thousands of users worldwide
• ~11.000 eLOCs
• Personalized questionnaires
• Dashboard and reports for results overview
The KPMG case
Ivano Malavolta
Collaboration between academia
and industry
We want to consume
less energy
Introduction to
Qubus
We are interested in releases
and deployment strategies
Validation of general
characteristics
Qubus 6.2.3 or Qubus 6.5.7?
Centralized or Distributed?
Empirical
experiment
Clarifications and
refinements
Results
discussion
Preliminary
experiment
definition
The KPMG case
Ivano Malavolta
Research questions
How can we improve the energy efficiency of Qubus?
• Which release is more energy efficient?
• Qubus 6.2.3 VS Qubus 6.5.7
• Which deployment strategy is more energy efficient?
• Centralized VS Distributed
VS
Ivano Malavolta
Old - C Old - D New - C New - D
Results Scenario 1
Old - C Old - D New - C New - D
Scenario 2
Know precisely the usage scenarios of
your software applications!
Using a higher number of machines does NOT
always imply higher energy consumption
Energyconsumption
Ivano Malavolta
Energy efficiency
in the front-end3
Ivano Malavolta
Average Daily Hours per Mobile App Visitor by Age
Source: comScore Mobile Metrix, U.S., Age 18+, June 2017
Why mobile apps?
Ivano Malavolta
The journey of a Progressive Web
Application (PWA)
1. The user accesses the website as
usual
https://goo.gl/KIZydg
Ivano Malavolta
The journey of a PWA
1. The user accesses the website as
usual
2. After the 3rd-4th visit, the website
asks to be installed
https://goo.gl/KIZydg
Ivano Malavolta
The journey of a PWA
1. The user accesses the website as
usual
2. After the 3rd-4th visit, the website
asks to be installed
3. From now on, the app lives in the
home screen, runs full-screen, can
receive push notifications
https://goo.gl/KIZydg
Ivano Malavolta
Service workers
Implemented in JavaScript
Multithreading
→ runs in a separate thread w.r.t.
the main thread
Used for:
• push notifications
• background operations
• content caching
– offline functionality
Ivano Malavolta
PWAs have been advertised as:
• performance boosters
• network savers
• providers of better UX
However…
Ivano Malavolta
Experiment design
What we measure
Energy consumption of the device in Joules
Factor Treatments
SW status <on, off>
Android device <high-end, low-end>
Network condition <2G, WiFi>
What we control
What we measure
Ivano Malavolta
Experiment design
• All possible combinations of treatments
• 8 combinations x 7 PWAs x 8 runs
à
• each run executes a typical usage
scenario (10-15 gestures)
448 runs
SW status Device Network
on low-end 2G
on low-end WiFi
on high-end 2G
on high-end WiFi
off low-end 2G
off low-end WiFi
off high-end 2G
off high-end WiFi
Ivano Malavolta
Results
Low-end High-end
Smaller difference in the high-end device
Service workers DO NOT influence the energy
consumption of a PWA running on a mobile device
Ivano Malavolta
Taking decisions about
software sustainability4
Ivano Malavolta
What is software sustainability?
Direct impact
(sustainable software)
Inward looking
SOFTWARE-INTENSIVE
SYSTEM
ENERGY EFFICIENCY
MAINTAINABILITY
STABILITY
Indirect impact
(software for sustainability)
Outward looking
SOFTWARE-INTENSIVE
SYSTEM
TRUSTABILITY
USABILITY
SURVIVABILITY
Is software sustainability only about the system itself?
Ivano Malavolta
ECO
NO
M
IC
SO
CIAL
ENVIRO
NM
ENTAL
TECHNICAL
SO
FTW
ARE
IM
M
ED
IATE
IM
PAC
T
EN
AB
LIN
G
IM
PAC
T
SYSTEM
IC
IM
PAC
T
Lago, P. © 2016-2018 SoSA: A Software Sustainability
Assessment Method. Available at: https://goo.gl/HuY6tf
Condori-Fernandez, N., & Lago, P. (2018). Characterizing the
contribution of quality requirements to software sustainability,
Journal of Systems and Software, 137, 289-305.
Why should we
care?
Sustainability is multi-dimensional
A new perspective on
sustainability
Ivano Malavolta
ECO
NO
M
IC
SO
CIAL
ENVIRO
NM
ENTAL
TECHNICAL
SO
FTW
ARE
IM
M
ED
IATE
IM
PAC
T
EN
AB
LIN
G
IM
PAC
T
SYSTEM
IC
IM
PAC
T
Why should we
care?
A new perspective on
sustainability
Lago, P. © 2016-2018 SoSA: A Software Sustainability
Assessment Method. Available at: https://goo.gl/HuY6tf
Condori-Fernandez, N., & Lago, P. (2018). Characterizing the
contribution of quality requirements to software sustainability,
Journal of Systems and Software, 137, 289-305.
Ivano Malavolta
Design Decision Maps framing Sustainability
Concerns [notation]
Philips Lightning (now Signify)
Design decision maps
Ivano Malavolta
Decision maps + planned effects + monitoring
KPMG Qubus platform
Ivano Malavolta
Amsterdam Smart City
Decision maps for scoping the sustainability of a project
Ivano Malavolta
Wrap up
Ivano Malavolta
Total number of views:
2,307,082,001
Total energy consumed: ~450 GWh in less than 3 years
x 41,000
ICT is unsustainable
Total energy per view:
0.2 kWh
Ivano Malavolta
Research questions
• .NET Platform supporting Governance,
Risk and Compliance (GRC) processes.
• Thousands of users worldwide
• ~11.000 eLOCs
• Personalized questionnaires
• Dashboard and reports for results overview
The KPMG case
Ivano Malavolta
Service workers
Implemented in JavaScript
Multithreading
→ runs in a separate thread w.r.t.
the main thread
Used for:
• push notifications
• background operations
• content caching
– offline functionality
Ivano Malavolta
Design Decision Maps framing Sustainability
Concerns [notation]
Philips Lightning (now Signify)
Design decision maps
Ivano Malavolta
Acknowledgements
Some slides of this presentation have been inspired by talks by:
• Patricia Lago
• Giuseppe Procaccianti
• Roberto Verdecchia

Contenu connexe

Tendances

ABN AMRO DevSecOps Journey
ABN AMRO DevSecOps JourneyABN AMRO DevSecOps Journey
ABN AMRO DevSecOps JourneyDerek E. Weeks
 
The Paved Road at Netflix
The Paved Road at NetflixThe Paved Road at Netflix
The Paved Road at NetflixDianne Marsh
 
Four pillars of DevOps - John Shaw - Agile Cambridge 2014
Four pillars of DevOps - John Shaw - Agile Cambridge 2014Four pillars of DevOps - John Shaw - Agile Cambridge 2014
Four pillars of DevOps - John Shaw - Agile Cambridge 2014johnfcshaw
 
Anatomy of a Continuous Integration and Delivery (CICD) Pipeline
Anatomy of a Continuous Integration and Delivery (CICD) PipelineAnatomy of a Continuous Integration and Delivery (CICD) Pipeline
Anatomy of a Continuous Integration and Delivery (CICD) PipelineRobert McDermott
 
Exploring the Phases of DevOps Lifecycle: Case Studies and Tools
Exploring the Phases of DevOps Lifecycle: Case Studies and ToolsExploring the Phases of DevOps Lifecycle: Case Studies and Tools
Exploring the Phases of DevOps Lifecycle: Case Studies and ToolsSofiaCarter4
 
Chris OBrien - Azure DevOps for managing work
Chris OBrien - Azure DevOps for managing workChris OBrien - Azure DevOps for managing work
Chris OBrien - Azure DevOps for managing workChris O'Brien
 
H2O.ai's Driverless AI
H2O.ai's Driverless AIH2O.ai's Driverless AI
H2O.ai's Driverless AISri Ambati
 
Backstage l'Internal Developer Portal Open Source per una migliore Developer ...
Backstage l'Internal Developer Portal Open Source per una migliore Developer ...Backstage l'Internal Developer Portal Open Source per una migliore Developer ...
Backstage l'Internal Developer Portal Open Source per una migliore Developer ...Commit University
 
Why we need more women in science and tech
Why we need more women in science and techWhy we need more women in science and tech
Why we need more women in science and techShiftbalance
 
Connected Vehicles and V2X with Apache Kafka
Connected Vehicles and V2X with Apache KafkaConnected Vehicles and V2X with Apache Kafka
Connected Vehicles and V2X with Apache KafkaKai Wähner
 
Longenesis_Investors_TechChill.pdf
Longenesis_Investors_TechChill.pdfLongenesis_Investors_TechChill.pdf
Longenesis_Investors_TechChill.pdfPaoloMalerba9
 
An Introduction to Software Testing
An Introduction to Software TestingAn Introduction to Software Testing
An Introduction to Software TestingThorsten Frommen
 
Dark Energy, Dark Matter and the Microservices Patterns?!
Dark Energy, Dark Matter and the Microservices Patterns?!Dark Energy, Dark Matter and the Microservices Patterns?!
Dark Energy, Dark Matter and the Microservices Patterns?!Chris Richardson
 

Tendances (20)

ABN AMRO DevSecOps Journey
ABN AMRO DevSecOps JourneyABN AMRO DevSecOps Journey
ABN AMRO DevSecOps Journey
 
The Paved Road at Netflix
The Paved Road at NetflixThe Paved Road at Netflix
The Paved Road at Netflix
 
Welcome to Azure Devops
Welcome to Azure DevopsWelcome to Azure Devops
Welcome to Azure Devops
 
DevOps Overview
DevOps OverviewDevOps Overview
DevOps Overview
 
Four pillars of DevOps - John Shaw - Agile Cambridge 2014
Four pillars of DevOps - John Shaw - Agile Cambridge 2014Four pillars of DevOps - John Shaw - Agile Cambridge 2014
Four pillars of DevOps - John Shaw - Agile Cambridge 2014
 
Anatomy of a Continuous Integration and Delivery (CICD) Pipeline
Anatomy of a Continuous Integration and Delivery (CICD) PipelineAnatomy of a Continuous Integration and Delivery (CICD) Pipeline
Anatomy of a Continuous Integration and Delivery (CICD) Pipeline
 
Introduction to flutter
Introduction to flutter Introduction to flutter
Introduction to flutter
 
Exploring the Phases of DevOps Lifecycle: Case Studies and Tools
Exploring the Phases of DevOps Lifecycle: Case Studies and ToolsExploring the Phases of DevOps Lifecycle: Case Studies and Tools
Exploring the Phases of DevOps Lifecycle: Case Studies and Tools
 
SAFe and DevOps - better together
SAFe and DevOps - better togetherSAFe and DevOps - better together
SAFe and DevOps - better together
 
Chris OBrien - Azure DevOps for managing work
Chris OBrien - Azure DevOps for managing workChris OBrien - Azure DevOps for managing work
Chris OBrien - Azure DevOps for managing work
 
Internship report
Internship reportInternship report
Internship report
 
DevOps Best Practices
DevOps Best PracticesDevOps Best Practices
DevOps Best Practices
 
H2O.ai's Driverless AI
H2O.ai's Driverless AIH2O.ai's Driverless AI
H2O.ai's Driverless AI
 
Backstage l'Internal Developer Portal Open Source per una migliore Developer ...
Backstage l'Internal Developer Portal Open Source per una migliore Developer ...Backstage l'Internal Developer Portal Open Source per una migliore Developer ...
Backstage l'Internal Developer Portal Open Source per una migliore Developer ...
 
Why we need more women in science and tech
Why we need more women in science and techWhy we need more women in science and tech
Why we need more women in science and tech
 
DevOps on AWS
DevOps on AWSDevOps on AWS
DevOps on AWS
 
Connected Vehicles and V2X with Apache Kafka
Connected Vehicles and V2X with Apache KafkaConnected Vehicles and V2X with Apache Kafka
Connected Vehicles and V2X with Apache Kafka
 
Longenesis_Investors_TechChill.pdf
Longenesis_Investors_TechChill.pdfLongenesis_Investors_TechChill.pdf
Longenesis_Investors_TechChill.pdf
 
An Introduction to Software Testing
An Introduction to Software TestingAn Introduction to Software Testing
An Introduction to Software Testing
 
Dark Energy, Dark Matter and the Microservices Patterns?!
Dark Energy, Dark Matter and the Microservices Patterns?!Dark Energy, Dark Matter and the Microservices Patterns?!
Dark Energy, Dark Matter and the Microservices Patterns?!
 

Similaire à Software sustainability and Green IT

Mobile Apps quality - a tale about energy, performance, and users’ perception
Mobile Apps quality - a tale about energy, performance, and users’ perceptionMobile Apps quality - a tale about energy, performance, and users’ perception
Mobile Apps quality - a tale about energy, performance, and users’ perceptionIvano Malavolta
 
How to (Help to) Save Our Planet with Green Coding
How to (Help to) Save Our Planet with Green CodingHow to (Help to) Save Our Planet with Green Coding
How to (Help to) Save Our Planet with Green CodingMindtrek
 
Energy hub disaster tech innovation program
Energy hub disaster tech innovation programEnergy hub disaster tech innovation program
Energy hub disaster tech innovation programMilan Sadhwani
 
IRJET-Garbage Monitoring and Management using Internet of things
IRJET-Garbage Monitoring and Management using Internet of thingsIRJET-Garbage Monitoring and Management using Internet of things
IRJET-Garbage Monitoring and Management using Internet of thingsIRJET Journal
 
Are service workers draining my battery? [Talk at AmsterdamJS 2017]
Are service workers draining my battery? [Talk at AmsterdamJS 2017]Are service workers draining my battery? [Talk at AmsterdamJS 2017]
Are service workers draining my battery? [Talk at AmsterdamJS 2017]Ivano Malavolta
 
Seldon @ PAPIs Connect, Valencia, 2016-03-14
Seldon @ PAPIs Connect, Valencia, 2016-03-14Seldon @ PAPIs Connect, Valencia, 2016-03-14
Seldon @ PAPIs Connect, Valencia, 2016-03-14Alex Housley
 
Beyond the IOPS: Flash Storage Essentials for Performance & Uptimes
Beyond the IOPS: Flash Storage Essentials for Performance & UptimesBeyond the IOPS: Flash Storage Essentials for Performance & Uptimes
Beyond the IOPS: Flash Storage Essentials for Performance & UptimesSolarWinds
 
AI and Machine Learning for the Connected Home with Stephen Galsworthy
AI and Machine Learning for the Connected Home with Stephen GalsworthyAI and Machine Learning for the Connected Home with Stephen Galsworthy
AI and Machine Learning for the Connected Home with Stephen GalsworthyDatabricks
 
16 Best Practices for Mobile Customer Engagement & Data Collection in the Ent...
16 Best Practices for Mobile Customer Engagement & Data Collection in the Ent...16 Best Practices for Mobile Customer Engagement & Data Collection in the Ent...
16 Best Practices for Mobile Customer Engagement & Data Collection in the Ent...Avoka
 
UberCloud HPC Experiment Introduction for Beginners
UberCloud HPC Experiment Introduction for BeginnersUberCloud HPC Experiment Introduction for Beginners
UberCloud HPC Experiment Introduction for Beginnershpcexperiment
 
“Shift-Left.” Performance And Architecture Validation with Continuous Integra...
“Shift-Left.” Performance And Architecture Validation with Continuous Integra...“Shift-Left.” Performance And Architecture Validation with Continuous Integra...
“Shift-Left.” Performance And Architecture Validation with Continuous Integra...Deborah Schalm
 
"Shift-Left." Performance And Architecture Validation with Continuous Integra...
"Shift-Left." Performance And Architecture Validation with Continuous Integra..."Shift-Left." Performance And Architecture Validation with Continuous Integra...
"Shift-Left." Performance And Architecture Validation with Continuous Integra...DevOps.com
 
DIYguru Labview Course Syllabus
DIYguru Labview Course SyllabusDIYguru Labview Course Syllabus
DIYguru Labview Course SyllabusSrishti Sikaria
 
Six Principles of Software Design to Empower Scientists
Six Principles of Software Design to Empower ScientistsSix Principles of Software Design to Empower Scientists
Six Principles of Software Design to Empower ScientistsDavid De Roure
 
SPARK16 Presentation: IoT, Data, and New Business Models are Disrupting Build...
SPARK16 Presentation: IoT, Data, and New Business Models are Disrupting Build...SPARK16 Presentation: IoT, Data, and New Business Models are Disrupting Build...
SPARK16 Presentation: IoT, Data, and New Business Models are Disrupting Build...Urjanet
 
Four Best Practices for Modern Performance Testing
Four Best Practices for Modern Performance TestingFour Best Practices for Modern Performance Testing
Four Best Practices for Modern Performance TestingSOASTA
 
Switch Automation Case study v2.0
Switch Automation Case study v2.0Switch Automation Case study v2.0
Switch Automation Case study v2.0Oleh Mykhaylovych
 

Similaire à Software sustainability and Green IT (20)

Mobile Apps quality - a tale about energy, performance, and users’ perception
Mobile Apps quality - a tale about energy, performance, and users’ perceptionMobile Apps quality - a tale about energy, performance, and users’ perception
Mobile Apps quality - a tale about energy, performance, and users’ perception
 
How to (Help to) Save Our Planet with Green Coding
How to (Help to) Save Our Planet with Green CodingHow to (Help to) Save Our Planet with Green Coding
How to (Help to) Save Our Planet with Green Coding
 
Energy hub disaster tech innovation program
Energy hub disaster tech innovation programEnergy hub disaster tech innovation program
Energy hub disaster tech innovation program
 
IRJET-Garbage Monitoring and Management using Internet of things
IRJET-Garbage Monitoring and Management using Internet of thingsIRJET-Garbage Monitoring and Management using Internet of things
IRJET-Garbage Monitoring and Management using Internet of things
 
Are service workers draining my battery? [Talk at AmsterdamJS 2017]
Are service workers draining my battery? [Talk at AmsterdamJS 2017]Are service workers draining my battery? [Talk at AmsterdamJS 2017]
Are service workers draining my battery? [Talk at AmsterdamJS 2017]
 
Seldon @ PAPIs Connect, Valencia, 2016-03-14
Seldon @ PAPIs Connect, Valencia, 2016-03-14Seldon @ PAPIs Connect, Valencia, 2016-03-14
Seldon @ PAPIs Connect, Valencia, 2016-03-14
 
Smarter Apps for Smarter phones - see me at bit.ly/1ezHj0c
Smarter Apps for Smarter phones - see me at bit.ly/1ezHj0cSmarter Apps for Smarter phones - see me at bit.ly/1ezHj0c
Smarter Apps for Smarter phones - see me at bit.ly/1ezHj0c
 
Beyond the IOPS: Flash Storage Essentials for Performance & Uptimes
Beyond the IOPS: Flash Storage Essentials for Performance & UptimesBeyond the IOPS: Flash Storage Essentials for Performance & Uptimes
Beyond the IOPS: Flash Storage Essentials for Performance & Uptimes
 
AI and Machine Learning for the Connected Home with Stephen Galsworthy
AI and Machine Learning for the Connected Home with Stephen GalsworthyAI and Machine Learning for the Connected Home with Stephen Galsworthy
AI and Machine Learning for the Connected Home with Stephen Galsworthy
 
16 Best Practices for Mobile Customer Engagement & Data Collection in the Ent...
16 Best Practices for Mobile Customer Engagement & Data Collection in the Ent...16 Best Practices for Mobile Customer Engagement & Data Collection in the Ent...
16 Best Practices for Mobile Customer Engagement & Data Collection in the Ent...
 
ravindra_job
ravindra_jobravindra_job
ravindra_job
 
UberCloud HPC Experiment Introduction for Beginners
UberCloud HPC Experiment Introduction for BeginnersUberCloud HPC Experiment Introduction for Beginners
UberCloud HPC Experiment Introduction for Beginners
 
“Shift-Left.” Performance And Architecture Validation with Continuous Integra...
“Shift-Left.” Performance And Architecture Validation with Continuous Integra...“Shift-Left.” Performance And Architecture Validation with Continuous Integra...
“Shift-Left.” Performance And Architecture Validation with Continuous Integra...
 
"Shift-Left." Performance And Architecture Validation with Continuous Integra...
"Shift-Left." Performance And Architecture Validation with Continuous Integra..."Shift-Left." Performance And Architecture Validation with Continuous Integra...
"Shift-Left." Performance And Architecture Validation with Continuous Integra...
 
Minh nguyen 2021 (2)
Minh nguyen 2021 (2)Minh nguyen 2021 (2)
Minh nguyen 2021 (2)
 
DIYguru Labview Course Syllabus
DIYguru Labview Course SyllabusDIYguru Labview Course Syllabus
DIYguru Labview Course Syllabus
 
Six Principles of Software Design to Empower Scientists
Six Principles of Software Design to Empower ScientistsSix Principles of Software Design to Empower Scientists
Six Principles of Software Design to Empower Scientists
 
SPARK16 Presentation: IoT, Data, and New Business Models are Disrupting Build...
SPARK16 Presentation: IoT, Data, and New Business Models are Disrupting Build...SPARK16 Presentation: IoT, Data, and New Business Models are Disrupting Build...
SPARK16 Presentation: IoT, Data, and New Business Models are Disrupting Build...
 
Four Best Practices for Modern Performance Testing
Four Best Practices for Modern Performance TestingFour Best Practices for Modern Performance Testing
Four Best Practices for Modern Performance Testing
 
Switch Automation Case study v2.0
Switch Automation Case study v2.0Switch Automation Case study v2.0
Switch Automation Case study v2.0
 

Plus de Ivano Malavolta

Conducting Experiments on the Software Architecture of Robotic Systems (QRARS...
Conducting Experiments on the Software Architecture of Robotic Systems (QRARS...Conducting Experiments on the Software Architecture of Robotic Systems (QRARS...
Conducting Experiments on the Software Architecture of Robotic Systems (QRARS...Ivano Malavolta
 
The Green Lab - Research cocktail @Vrije Universiteit Amsterdam (October 2020)
The Green Lab - Research cocktail  @Vrije Universiteit Amsterdam (October 2020)The Green Lab - Research cocktail  @Vrije Universiteit Amsterdam (October 2020)
The Green Lab - Research cocktail @Vrije Universiteit Amsterdam (October 2020)Ivano Malavolta
 
Navigation-aware and Personalized Prefetching of Network Requests in Android ...
Navigation-aware and Personalized Prefetching of Network Requests in Android ...Navigation-aware and Personalized Prefetching of Network Requests in Android ...
Navigation-aware and Personalized Prefetching of Network Requests in Android ...Ivano Malavolta
 
How Maintainability Issues of Android Apps Evolve [ICSME 2018]
How Maintainability Issues of Android Apps Evolve [ICSME 2018]How Maintainability Issues of Android Apps Evolve [ICSME 2018]
How Maintainability Issues of Android Apps Evolve [ICSME 2018]Ivano Malavolta
 
Collaborative Model-Driven Software Engineering: a Classification Framework a...
Collaborative Model-Driven Software Engineering: a Classification Framework a...Collaborative Model-Driven Software Engineering: a Classification Framework a...
Collaborative Model-Driven Software Engineering: a Classification Framework a...Ivano Malavolta
 
Experimenting on Mobile Apps Quality - a tale about Energy, Performance, and ...
Experimenting on Mobile Apps Quality - a tale about Energy, Performance, and ...Experimenting on Mobile Apps Quality - a tale about Energy, Performance, and ...
Experimenting on Mobile Apps Quality - a tale about Energy, Performance, and ...Ivano Malavolta
 
Modeling objects interaction via UML sequence diagrams [Software Design] [Com...
Modeling objects interaction via UML sequence diagrams [Software Design] [Com...Modeling objects interaction via UML sequence diagrams [Software Design] [Com...
Modeling objects interaction via UML sequence diagrams [Software Design] [Com...Ivano Malavolta
 
Modeling behaviour via UML state machines [Software Design] [Computer Science...
Modeling behaviour via UML state machines [Software Design] [Computer Science...Modeling behaviour via UML state machines [Software Design] [Computer Science...
Modeling behaviour via UML state machines [Software Design] [Computer Science...Ivano Malavolta
 
Object-oriented design patterns in UML [Software Design] [Computer Science] [...
Object-oriented design patterns in UML [Software Design] [Computer Science] [...Object-oriented design patterns in UML [Software Design] [Computer Science] [...
Object-oriented design patterns in UML [Software Design] [Computer Science] [...Ivano Malavolta
 
Structure modeling with UML [Software Design] [Computer Science] [Vrije Unive...
Structure modeling with UML [Software Design] [Computer Science] [Vrije Unive...Structure modeling with UML [Software Design] [Computer Science] [Vrije Unive...
Structure modeling with UML [Software Design] [Computer Science] [Vrije Unive...Ivano Malavolta
 
Requirements engineering with UML [Software Design] [Computer Science] [Vrije...
Requirements engineering with UML [Software Design] [Computer Science] [Vrije...Requirements engineering with UML [Software Design] [Computer Science] [Vrije...
Requirements engineering with UML [Software Design] [Computer Science] [Vrije...Ivano Malavolta
 
Modeling and abstraction, software development process [Software Design] [Com...
Modeling and abstraction, software development process [Software Design] [Com...Modeling and abstraction, software development process [Software Design] [Com...
Modeling and abstraction, software development process [Software Design] [Com...Ivano Malavolta
 
[2017/2018] Agile development
[2017/2018] Agile development[2017/2018] Agile development
[2017/2018] Agile developmentIvano Malavolta
 
Reconstructing microservice-based architectures
Reconstructing microservice-based architecturesReconstructing microservice-based architectures
Reconstructing microservice-based architecturesIvano Malavolta
 
[2017/2018] AADL - Architecture Analysis and Design Language
[2017/2018] AADL - Architecture Analysis and Design Language[2017/2018] AADL - Architecture Analysis and Design Language
[2017/2018] AADL - Architecture Analysis and Design LanguageIvano Malavolta
 
[2017/2018] Architectural languages
[2017/2018] Architectural languages[2017/2018] Architectural languages
[2017/2018] Architectural languagesIvano Malavolta
 
[2017/2018] Introduction to Software Architecture
[2017/2018] Introduction to Software Architecture[2017/2018] Introduction to Software Architecture
[2017/2018] Introduction to Software ArchitectureIvano Malavolta
 
[2017/2018] RESEARCH in software engineering
[2017/2018] RESEARCH in software engineering[2017/2018] RESEARCH in software engineering
[2017/2018] RESEARCH in software engineeringIvano Malavolta
 
[13 - B] Experiment reporting
[13 - B] Experiment reporting[13 - B] Experiment reporting
[13 - B] Experiment reportingIvano Malavolta
 

Plus de Ivano Malavolta (20)

Conducting Experiments on the Software Architecture of Robotic Systems (QRARS...
Conducting Experiments on the Software Architecture of Robotic Systems (QRARS...Conducting Experiments on the Software Architecture of Robotic Systems (QRARS...
Conducting Experiments on the Software Architecture of Robotic Systems (QRARS...
 
The H2020 experience
The H2020 experienceThe H2020 experience
The H2020 experience
 
The Green Lab - Research cocktail @Vrije Universiteit Amsterdam (October 2020)
The Green Lab - Research cocktail  @Vrije Universiteit Amsterdam (October 2020)The Green Lab - Research cocktail  @Vrije Universiteit Amsterdam (October 2020)
The Green Lab - Research cocktail @Vrije Universiteit Amsterdam (October 2020)
 
Navigation-aware and Personalized Prefetching of Network Requests in Android ...
Navigation-aware and Personalized Prefetching of Network Requests in Android ...Navigation-aware and Personalized Prefetching of Network Requests in Android ...
Navigation-aware and Personalized Prefetching of Network Requests in Android ...
 
How Maintainability Issues of Android Apps Evolve [ICSME 2018]
How Maintainability Issues of Android Apps Evolve [ICSME 2018]How Maintainability Issues of Android Apps Evolve [ICSME 2018]
How Maintainability Issues of Android Apps Evolve [ICSME 2018]
 
Collaborative Model-Driven Software Engineering: a Classification Framework a...
Collaborative Model-Driven Software Engineering: a Classification Framework a...Collaborative Model-Driven Software Engineering: a Classification Framework a...
Collaborative Model-Driven Software Engineering: a Classification Framework a...
 
Experimenting on Mobile Apps Quality - a tale about Energy, Performance, and ...
Experimenting on Mobile Apps Quality - a tale about Energy, Performance, and ...Experimenting on Mobile Apps Quality - a tale about Energy, Performance, and ...
Experimenting on Mobile Apps Quality - a tale about Energy, Performance, and ...
 
Modeling objects interaction via UML sequence diagrams [Software Design] [Com...
Modeling objects interaction via UML sequence diagrams [Software Design] [Com...Modeling objects interaction via UML sequence diagrams [Software Design] [Com...
Modeling objects interaction via UML sequence diagrams [Software Design] [Com...
 
Modeling behaviour via UML state machines [Software Design] [Computer Science...
Modeling behaviour via UML state machines [Software Design] [Computer Science...Modeling behaviour via UML state machines [Software Design] [Computer Science...
Modeling behaviour via UML state machines [Software Design] [Computer Science...
 
Object-oriented design patterns in UML [Software Design] [Computer Science] [...
Object-oriented design patterns in UML [Software Design] [Computer Science] [...Object-oriented design patterns in UML [Software Design] [Computer Science] [...
Object-oriented design patterns in UML [Software Design] [Computer Science] [...
 
Structure modeling with UML [Software Design] [Computer Science] [Vrije Unive...
Structure modeling with UML [Software Design] [Computer Science] [Vrije Unive...Structure modeling with UML [Software Design] [Computer Science] [Vrije Unive...
Structure modeling with UML [Software Design] [Computer Science] [Vrije Unive...
 
Requirements engineering with UML [Software Design] [Computer Science] [Vrije...
Requirements engineering with UML [Software Design] [Computer Science] [Vrije...Requirements engineering with UML [Software Design] [Computer Science] [Vrije...
Requirements engineering with UML [Software Design] [Computer Science] [Vrije...
 
Modeling and abstraction, software development process [Software Design] [Com...
Modeling and abstraction, software development process [Software Design] [Com...Modeling and abstraction, software development process [Software Design] [Com...
Modeling and abstraction, software development process [Software Design] [Com...
 
[2017/2018] Agile development
[2017/2018] Agile development[2017/2018] Agile development
[2017/2018] Agile development
 
Reconstructing microservice-based architectures
Reconstructing microservice-based architecturesReconstructing microservice-based architectures
Reconstructing microservice-based architectures
 
[2017/2018] AADL - Architecture Analysis and Design Language
[2017/2018] AADL - Architecture Analysis and Design Language[2017/2018] AADL - Architecture Analysis and Design Language
[2017/2018] AADL - Architecture Analysis and Design Language
 
[2017/2018] Architectural languages
[2017/2018] Architectural languages[2017/2018] Architectural languages
[2017/2018] Architectural languages
 
[2017/2018] Introduction to Software Architecture
[2017/2018] Introduction to Software Architecture[2017/2018] Introduction to Software Architecture
[2017/2018] Introduction to Software Architecture
 
[2017/2018] RESEARCH in software engineering
[2017/2018] RESEARCH in software engineering[2017/2018] RESEARCH in software engineering
[2017/2018] RESEARCH in software engineering
 
[13 - B] Experiment reporting
[13 - B] Experiment reporting[13 - B] Experiment reporting
[13 - B] Experiment reporting
 

Dernier

Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...gurkirankumar98700
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Paola De la Torre
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 

Dernier (20)

Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 

Software sustainability and Green IT

  • 1. Ivano Malavolta VRIJE UNIVERSITEIT AMSTERDAM Ivano Malavolta Assistant professor Vrije Universiteit Amsterdam Software sustainability and Green IT
  • 3. Ivano Malavolta Our platform for experimenting on software – energy efficiency – performance A PLATFORM A MASTER COURSE The Green Lab Students measure real software products A COLLABORATION PLATFORM Industry-driven experiments
  • 7. Ivano Malavolta Total number of views: 3,362,297,996 Total energy consumed: ~672 GWh in less than 7 years x27,000 for 7 years! ICT is unsustainable Total energy per view: 0.2 kWh https://www.youtube.com/watch?v=9bZkp7q19f0 http://shrinkthatfootprint.com/average-household-electricity-consumption
  • 8. Ivano Malavolta CPU: 500 - 2,000 mW GSM: 800 mW Display: 400 mW GPS: 176 mW Gyroscope: 130 mW Microphone: 101 mW Bluetooth: 100 mW Accelerometer: 21 mW Battery charge efficiency: 90% Where does this energy go?
  • 9. Ivano Malavolta Energy loss: • Low utilization • Cooling • Lighting PUE = "Good" PUE = 1.4 = 30% loss Where does this energy go? Min utilization rate: 10% Max utilization rate: 80%
  • 10. Ivano Malavolta ”The number of transistors in a circuit doubles about every 2 years" (Moore's law) Is hardware efficient?
  • 11. Ivano Malavolta "The energy efficiency of hardware doubles every 1.5 years" (Koomey's law) Is hardware efficient?
  • 12. Ivano Malavolta "Software gets slower more rapidly than hardware gets faster" (Wirth's law) Ok, so what about software?
  • 13. Ivano Malavolta Nathan P. Myhrvold, Microsoft, ACM 1997 Why is software consuming more and more? 1. Software is a gas Software always expands to fit whatever container it is stored in 2. Software grows until it becomes limited by Moore's Law The initial growth of software is rapid, like gas expanding, but is inevitably limited by the rate of increase in hardware speed 3. Software growth makes Moore's Law possible People buy new hardware because the software requires it 4. Software is only limited by human ambition and expectation We'll always find new algorithms, new applications, and new users
  • 15. Ivano Malavolta Research questions • .NET Platform supporting Governance, Risk and Compliance (GRC) processes. • Thousands of users worldwide • ~11.000 eLOCs • Personalized questionnaires • Dashboard and reports for results overview The KPMG case
  • 16. Ivano Malavolta Collaboration between academia and industry We want to consume less energy Introduction to Qubus We are interested in releases and deployment strategies Validation of general characteristics Qubus 6.2.3 or Qubus 6.5.7? Centralized or Distributed? Empirical experiment Clarifications and refinements Results discussion Preliminary experiment definition The KPMG case
  • 17. Ivano Malavolta Research questions How can we improve the energy efficiency of Qubus? • Which release is more energy efficient? • Qubus 6.2.3 VS Qubus 6.5.7 • Which deployment strategy is more energy efficient? • Centralized VS Distributed VS
  • 18. Ivano Malavolta Old - C Old - D New - C New - D Results Scenario 1 Old - C Old - D New - C New - D Scenario 2 Know precisely the usage scenarios of your software applications! Using a higher number of machines does NOT always imply higher energy consumption Energyconsumption
  • 20. Ivano Malavolta Average Daily Hours per Mobile App Visitor by Age Source: comScore Mobile Metrix, U.S., Age 18+, June 2017 Why mobile apps?
  • 21. Ivano Malavolta The journey of a Progressive Web Application (PWA) 1. The user accesses the website as usual https://goo.gl/KIZydg
  • 22. Ivano Malavolta The journey of a PWA 1. The user accesses the website as usual 2. After the 3rd-4th visit, the website asks to be installed https://goo.gl/KIZydg
  • 23. Ivano Malavolta The journey of a PWA 1. The user accesses the website as usual 2. After the 3rd-4th visit, the website asks to be installed 3. From now on, the app lives in the home screen, runs full-screen, can receive push notifications https://goo.gl/KIZydg
  • 24. Ivano Malavolta Service workers Implemented in JavaScript Multithreading → runs in a separate thread w.r.t. the main thread Used for: • push notifications • background operations • content caching – offline functionality
  • 25. Ivano Malavolta PWAs have been advertised as: • performance boosters • network savers • providers of better UX However…
  • 26. Ivano Malavolta Experiment design What we measure Energy consumption of the device in Joules Factor Treatments SW status <on, off> Android device <high-end, low-end> Network condition <2G, WiFi> What we control What we measure
  • 27. Ivano Malavolta Experiment design • All possible combinations of treatments • 8 combinations x 7 PWAs x 8 runs à • each run executes a typical usage scenario (10-15 gestures) 448 runs SW status Device Network on low-end 2G on low-end WiFi on high-end 2G on high-end WiFi off low-end 2G off low-end WiFi off high-end 2G off high-end WiFi
  • 28. Ivano Malavolta Results Low-end High-end Smaller difference in the high-end device Service workers DO NOT influence the energy consumption of a PWA running on a mobile device
  • 29. Ivano Malavolta Taking decisions about software sustainability4
  • 30. Ivano Malavolta What is software sustainability? Direct impact (sustainable software) Inward looking SOFTWARE-INTENSIVE SYSTEM ENERGY EFFICIENCY MAINTAINABILITY STABILITY Indirect impact (software for sustainability) Outward looking SOFTWARE-INTENSIVE SYSTEM TRUSTABILITY USABILITY SURVIVABILITY Is software sustainability only about the system itself?
  • 31. Ivano Malavolta ECO NO M IC SO CIAL ENVIRO NM ENTAL TECHNICAL SO FTW ARE IM M ED IATE IM PAC T EN AB LIN G IM PAC T SYSTEM IC IM PAC T Lago, P. © 2016-2018 SoSA: A Software Sustainability Assessment Method. Available at: https://goo.gl/HuY6tf Condori-Fernandez, N., & Lago, P. (2018). Characterizing the contribution of quality requirements to software sustainability, Journal of Systems and Software, 137, 289-305. Why should we care? Sustainability is multi-dimensional A new perspective on sustainability
  • 32. Ivano Malavolta ECO NO M IC SO CIAL ENVIRO NM ENTAL TECHNICAL SO FTW ARE IM M ED IATE IM PAC T EN AB LIN G IM PAC T SYSTEM IC IM PAC T Why should we care? A new perspective on sustainability Lago, P. © 2016-2018 SoSA: A Software Sustainability Assessment Method. Available at: https://goo.gl/HuY6tf Condori-Fernandez, N., & Lago, P. (2018). Characterizing the contribution of quality requirements to software sustainability, Journal of Systems and Software, 137, 289-305.
  • 33. Ivano Malavolta Design Decision Maps framing Sustainability Concerns [notation] Philips Lightning (now Signify) Design decision maps
  • 34. Ivano Malavolta Decision maps + planned effects + monitoring KPMG Qubus platform
  • 35. Ivano Malavolta Amsterdam Smart City Decision maps for scoping the sustainability of a project
  • 36. Ivano Malavolta Wrap up Ivano Malavolta Total number of views: 2,307,082,001 Total energy consumed: ~450 GWh in less than 3 years x 41,000 ICT is unsustainable Total energy per view: 0.2 kWh Ivano Malavolta Research questions • .NET Platform supporting Governance, Risk and Compliance (GRC) processes. • Thousands of users worldwide • ~11.000 eLOCs • Personalized questionnaires • Dashboard and reports for results overview The KPMG case Ivano Malavolta Service workers Implemented in JavaScript Multithreading → runs in a separate thread w.r.t. the main thread Used for: • push notifications • background operations • content caching – offline functionality Ivano Malavolta Design Decision Maps framing Sustainability Concerns [notation] Philips Lightning (now Signify) Design decision maps
  • 37. Ivano Malavolta Acknowledgements Some slides of this presentation have been inspired by talks by: • Patricia Lago • Giuseppe Procaccianti • Roberto Verdecchia