SlideShare a Scribd company logo
Patricia Lago
Vrije Universiteit Amsterdam
Presented at: University of L’Aquila, Dec. 2021
Sustainability – The
Software Perspective
i. SOFTWARE CAN HELP, OR HINDER,
SUSTAINABILITY
ii. SOFTWARE ARCHITECTURE MAY PROVIDE THE
NEEDED “BIG PICTURE”
iii. DECISION MAKING MUST BE INFORMED
Takaways
https://vu.nl/en/about-vu/more-about/discover-our-campus
The S2 group @ VU Amsterdam
I/O Magazine, Issue 3, Dec. 2020
s2group.cs.vu.nl
The S2 group @ VU Amsterdam
• Software Architecture Design for Digital Sustainability
• Architectural Technical Debt
• Software Energy Footprint
• Robotics Software
• Software Engineering and Ethics
• Software Adaptation
s2group.cs.vu.nl
Highlights of my journey in Software and Sustainability
2015
ICSE SEIS
MASTER'S TRACK IN
COMPUTER SCIENCE
SOFTWARE
ENGINEERING
AND GREEN IT
WWW.VU.NL/COMPUTERSCIENCE
2012 2020 2023
Sustainability chair
2022
2014
Inaugural
lecture on
“software and
sustainability”
2016
SC chair
Official Launch
2021
se4gd.eu
WHEN WE THINK ABOUT
SOFTWARE AND SUSTAINABILITY
WHAT IS THE FIRST THING THAT COMES TO MIND?
“LIKE PERFORMANCE, RELIABILITY, SECURITY,
SUSTAINABILITY DOES NOT JUST HAPPEN
UNLESS WE PLAN FOR IT.”
Patricia Lago @ 2016 Inaugural speech
Part 1 - What is software sustainability? Why architecture?
Perspectives on Sustainability
Dimensions of focus Order of effects
UN Sustainable
Development Goals
DIRECT IMPACT
(technology)
ENABLING IMPACT
(supported processes)
SYSTEMIC IMPACT
(change in behavior)
https://sdgessentials.org/why-
the-world-needs-the-sdgs.html
REBOUND EFFECTS
(negate intended impact)
Technical
Environmental
Economic
Social
The role of software in sustainability: two perspectives
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
DIGITAL INCLUSIVENESS
The role of software in sustainability: dimensions of focus
Inward looking
SOFTWARE-INTENSIVE
SYSTEM
Outward looking
SOFTWARE-INTENSIVE
SYSTEM
Technical Environmental Economic
Social
Direct impact
(sustainable software)
Indirect impact
(software for sustainability)
The role of software in sustainability: order of impacts
S
O
F
T
W
A
R
E
I
M
M
E
D
I
A
T
E
I
M
P
A
C
T
E
N
A
B
L
I
N
G
I
M
P
A
C
T
S
Y
S
T
E
M
I
C
I
M
P
A
C
T
Impacts can be seen in different
timescales
• First order/Direct/Immediate
• Second order/Indirect/Enabling
• Third order/Structural/Systemic
The role of software in sustainability: rebound effects
• [Def] “... characterize the negative side effects of efficiency policies and
strategies that ended up taking back the environmental gains they had
permitted”.
• Intrinsically cross-dimensional
• Negative (but may be positive)
• Unpredictable àcountermeasures
What is the role of government in the digital age? (n.d.). Retrieved September 26, 2020, from
https://www.weforum.org/agenda/2017/02/role-of-government-digital-age-data/
Reflection point
WE CAN TALK ABOUT “SUSTAINABILITY” IF AND ONLY IF WE ADDRESS
BOTH THE DIMENSION(S) OF FOCUS
AND A TIMESCALE
Why software digital architecture?
DIGITAL
ARCHITECTURE
SYSTEMIC IMPACT
ENTERPRISE
organization à communities
CONTEXT
partnerships à multi-sector
BUSINESS
economic à ecologic
Digital transformation is
blurring the lines between
digital and physical
Part 2 - The SAF Toolkit and Decision Maps
SUSTAINABILITY
ASSESSMENT
FRAMEWORK
Condori-Fernandez, N., Lago, P., Luaces, M. R., & Places, Á. S. (2020). An action research for improving the sustainability assessment framework
instruments. Sustainability (Switzerland), 12(4), 1-25. https://doi.org/10.3390/su12041682
A Checklist to help define the
elements of a DM
The Decision Map (DM) to help explore
the design space and make decisions
The SQ dependency matrix to
help identify the dependencies
among DM elements
The Decision Graph to help
assign the right impact
timescale to DM elements
The Sustainability-Quality (SQ) Model to
define concerns and measures
The SAF Toolkit
Design Decision Maps’ Notation
An example with Decision maps: conferences
(*) for the sake of the presentation some concerns are over-simplified
1 M. Funke and P. Lago (2021), “Let’s start reducing the Carbon Footprint of Academic Conferences”, Technical Report VU Amsterdam. Under Submission.
2 Lago, P. (2019). Architecture design decision maps for software sustainability. In IEEE/ACM 41st International Conference on Software Engineering: Software
Engineering in Society, https://tinyurl.com/DesDmaps
SUSTAINABILITY
IMPACTS
FEATURE
CONCERN
EFFECT
Design Decision Maps’ Notation
An example with Decision maps: conferences
(*) for the sake of the presentation some concerns/effects are over-simplified
1 M. Funke and P. Lago (2021), “Let’s start reducing the Carbon Footprint of Academic Conferences”, Technical Report VU Amsterdam. Under Submission.
2 Lago, P. (2019). Architecture design decision maps for software sustainability. In IEEE/ACM 41st International Conference on Software Engineering: Software
Engineering in Society, https://tinyurl.com/DesDmaps
Example: KPMG Qubus Platform: visualization of
planned vs. actual effects
Verdecchia et al. (2017). Estimating Energy Impact of Software Releases and Deployment Strategies: The KPMG Case Study.
https://tinyurl.com/y63y2qfr
DECISION MAPS CAN BE
REFINED WITH THE ACTUAL
EFFECTS AND EFFECT MEASURES
(counter-intuitive) The
version with a ‘distributed’
deployment strategy led to a
-10% power consumption
wrt. the centralized one.
Performance (in terms of
execution time) largely
depends on the usage
scenarios’ requirements for
data load.
Example: smart work: reasoning
Amsterdam
Smart City
DECISION MAPS HELP
EXPLORE THE DESIGN SPACE
These effects could lead to
rebound impacts (e.g.
reinvesting savings
elsewhere, like a house
further away - hence leading
to longer travels when
needed)
Remote access leads to introducing
additional tech services (with increased
energy footprint) and may damage
collaboration (possibly with further negative
effects on work efficiency)
Niggebrugge, T., Vos, S., & Lago, P. (2018). The Sustainability of Mobility as a
Service Solutions Evaluated through the Software Sustainability Assessment
Method. VU Technical Report.
Example: WhatsApp Neighborhood Prevention: informed
decision making
• A sustainability goal à one or more
questions each regarding a
sustainability-quality (SQ) concern
GOAL à How to make neighborhoods safer?
- By engaging the citizen in informing the
police of criminal situations like suspect of
robberies
WhatsApp
Neighborhood
Prevention
Example: WhatsApp Neighborhood Prevention: informed
decision making
WhatsApp
Neighborhood
Prevention
1: the original plan
2: the measured impact
sustainability goal à
max safety, min criminality
Example: WhatsApp Neighborhood Prevention: informed
decision making
WhatsApp
Neighborhood
Prevention
1: the original plan
2: the measured impact 3: the corrected plan
sustainability goal à
max safety, min criminality
max social cohesion + police guidance
How can I build true impact?
• A sustainability goal à one or more
questions each regarding a
sustainability-quality (SQ) concern
• The measures of the SQ concerns
express the effects
• The variation (or trend) over time
expresses the impact towards
the sustainability goal
Decisions based on a (quantifiable) informed strategy
Renewable Energy Provisioning: Sharing IoT assets
[Vandebron]
Sustainability Goal = {
• Balance Energy prosumption
• Maximize Trust
• Enable positive behavioral
change }
Lago, P. et al (2020). Designing for Sustainability: Lessons
Learned from Four Industrial Projects. EnviroInfo.
https://tinyurl.com/fourcases
Reflection point
1Procaccianti, G., Lago, P., Vetrò, A., Méndez Fernández, D., & Wieringa, R. (2015). The Green Lab: Experimentation in Software Energy Efficiency. In IEEE/ACM ICSE.
https://doi.org/10.1109/ICSE.2015.297
HOLISTIC VIEW TRENDS OVER PRECISION
We understand real impact only
over time and space
Precise measures depend on too many
specific variables; trends help identifying
patterns hence energy (or sustainability)
hotspots1
Remember the example: a sustainability model for scientific
conferences
po i i e
po i i e
po i i e
ne al
ne al
ne al
ne al
nega i e
po i i e
nega i e
nega i e
nega i e
po i i e
po i i e
po i i e
ne al
ne al
ne al
ne al
nega i e
po i i e
nega i e
nega i e
nega i e
po i i e
po i i e
po i i e
ne al
ne al
ne al
ne al
nega i e
po i i e
nega i e
nega i e
nega i e
1 M. Funke and P. Lago (2021), “Let’s start reducing the Carbon Footprint of Academic Conferences”, Technical Report VU Amsterdam. Under Submission.
ON-SITE VIRTUAL HYBRID
Sustainability Goal = {
• Minimize carbon footprint
• Max knowledge transfer
• Balance ICT investments }
Reflection point
1 R. Alidoosti, P. Lago, M. Razavian, and A. Tang, “Ethics in software engineering: a systematic literature review,” 2021, under submission.
2 Moyer, A. :. K., Mingay, S., & Watt, S. (2021). Leading Sustainability Ambition, Goals and Technology in the 2020s. Gartner.
ON STAKEHOLDERS ON FLEXIBILITY
3-level stakeholder analysis: indirect ones = critical yet forgotten
The BIG assumption, and
challenge, is flexibility
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 digital architecture? choosing the dimensions of focus
(Software) sustainability is cross-dimensional: gather awareness
Lago, P. et al (2020). Designing for Sustainability: Lessons
Learned from Four Industrial Projects. EnviroInfo.
https://tinyurl.com/fourcases
AI-assisted desk workers
25
Lago, P. © 2016-2018 SoSA: A Software Sustainability
Assessment Method. Available at: https://goo.gl/HuY6tf
Why digital architecture? choosing the dimensions of focus
(Software) sustainability is cross-dimensional: gather awareness
Lago, P. et al (2020). Designing for Sustainability: Lessons
Learned from Four Industrial Projects. EnviroInfo.
https://tinyurl.com/fourcases
Condori-Fernandez, N., & Lago, P. (2018). Characterizing
the contribution of quality requirements to software
sustainability, Journal of Systems and Software, 137, 289-305.
AI-assisted desk workers
(Software) sustainability is measurable only over time:
gather awareness
Why digital architecture? making decisions that last
Lago, P. © 2016-2018 SoSA: A Software Sustainability
Assessment Method. Available at: https://goo.gl/HuY6tf
Lago, P. et al (2020). Designing for Sustainability: Lessons
Learned from Four Industrial Projects. EnviroInfo.
https://tinyurl.com/fourcases
AI-assisted desk workers
Condori-Fernandez, N., & Lago, P. (2018). Characterizing
the contribution of quality requirements to software
sustainability, Journal of Systems and Software, 137, 289-305.
(Software) sustainability is measurable only over time:
gather awareness
Why digital architecture? making decisions that last
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.
Lago, P. et al (2020). Designing for Sustainability: Lessons
Learned from Four Industrial Projects. EnviroInfo.
https://tinyurl.com/fourcases
AI-assisted desk workers
Reflection point
ARCHITECTURE AND TIME
TECHNICAL- VS. SUSTAINABILITY-DRIVEN
ARCHITECTURE DESIGN DECISIONS
Unknown by ISO/IEEE/IEC 42010
(among others)
Decision Maps provide “a” type of
(architecture) view.
The link with technical views needs work.
Want to know more? … some recent work
0740- 745 9/19©2019IEEE NOVEMBER/DECEMBER 2019 | IEEE SOFTWARE 79
REQUIREMENTS
Editor: Philippe Kruchten
University of British Columbia
pbk@ece.ubc.ca
SOUNDING BOARD
ACCORDING TO RECENT estimates,
computing and communications could
account for 20% of energy usage glob-
ally by 2025.1 This trend shows no
sign of slowing. The annual growth in
power consumption of Internet-con-
nected devices is 20%. Data centers
alone are now accounting for more
than 3% of global emissions. Even if
you are not worried about this trend
on the mega scale, you are likely con-
cerned with the power consumption
of the devices in your pocket, on your
wrist, and in your ears.
Software, hardware, and network
attributes all contribute to power
usage, but little attention has been
given to this topic by the informa-
tion and communications technol-
ogy (ICT) community. For example,
as software engineers, we were never
taught to consider, much less man-
age, the energy consumption of the
software systems we created. Despite
our lack of awareness and prepara-
tion, we are now facing an undeni-
able reality: the software community
must learn to design for, monitor,
and manage the energy usage of
software. For this reason, we argue
the need for energy-aware software
and present a manifesto describing
nine guiding principles. By energy-
aware software, we mean software
that is consciously designed and de-
veloped to monitor and react to en-
ergy preferences and usage. Energy
efficiency is, therefore, one possible
(but not the only) response to being
energy aware.
This manifesto and the principles
it proposes have arisen from our ex-
perience and from the experience of
more than 100 researchers and prac-
titioners who have participated in
six international workshops on the
engineering of green and sustainable
software.2 Why do we need a mani-
festo? Why now? Although there has
been some attention to this area,3 we
believe it has been grossly insuffi-
cient given the high stakes involved.
The vast majority of practitioners
(and researchers) are completely ig-
norant of energy concerns; they, and
the programs they create, are any-
thing but energy aware.4
The Nine Principles
of Energy Awareness
Energy awareness is a necessary but
not sufficient precondition for en-
ergy efficiency. Energy awareness
is required from all stakeholders,
such as end users who may choose
product A versus product B based
on energy characteristics. Our goal in
this manifesto is to call for changes
in how we think and what we do.
This will not come for free, but we
believe that the cost of inaction is
far greater.
Public Awareness Is Key for
Widespread Adoption
We believe that the key to widespread
adoption of energy-aware software
is to sensitize and empower end us-
ers. The scary statistics regularly
published have proven ineffective so
far (the amount of energy being con-
sumed by ICT, the increasing amount
of energy consumed by cloud provid-
ers, the massive amounts of data be-
ing stored in data centers as opposed
to the negligible percentages of data
being actually used, and so forth).
Neither do the worrisome energy-
consumption predictions seem to spur
us to action (such as the increasing
number of things being connected to
the Internet or the booming growth
in mobile devices and their increas-
ingly sophisticated applications).
We need to turn these alarming
trends into an opportunity: 1) to sen-
sitize end users to the amount of en-
ergy consumed by the software they
use and 2) to create awareness of
A Manifesto for
Energy-Aware Software
Alcides Fonseca, Rick Kazman, and Patricia Lago
Digital Object Identifier 10.1109/MS.2019.2924498
Date of current version: 22 October 2019
Alcides Fonseca and Rick Kazman and
Patricia Lago. (2019). A Manifesto for
Energy-Aware Software. IEEE Software,
36(6), 79–82
Andrikopoulos, V., & Lago, P. (2021).
Software Sustainability in the Age of
Everything as a Service. In Next-Gen
Digital Services. A Retrospective and
Roadmap for Service Computing of the
Future (pp. 35-47). LNCS, Springer, Vol.
12521
Software Sustainability in the Age
of Everything as a Service
Vasilios Andrikopoulos1(B)
and Patricia Lago2,3
1
University of Groningen, Groningen, The Netherlands
v.andrikopoulos@rug.nl
2
Vrije Universiteit Amsterdam, Amsterdam, The Netherlands
p.lago@vu.nl
3
Chalmers University of Technology, Gothenburg, Sweden
Abstract. The need for acknowledging and managing sustainability as
an essential quality of software systems has been steadily increasing over
the past few years, in part as a reaction to the implications of “software
eating the world”. Especially the widespread adoption of the Everything
as a Service (*aaS) model of delivering software and (virtualized) hard-
ware through cloud computing has put two sustainability dimensions
upfront and center. On the one hand, services must be sustainable on
a technical level by ensuring continuity of operations for both providers
and consumers despite, or even better, while taking into account their
evolution. On the other hand, the prosuming of services must also be
financially sustainable for the involved stakeholders.
In this work, we discuss the need for a software architecting approach
that encompasses in a holistic manner the other two dimensions of soft-
ware sustainability as well, namely the social and environmental aspects
of services. We highlight relevant works and identify key challenges still
to be addressed in the context of software systems operating across differ-
ent models for cloud delivery and deployment. We then present our vision
for an architecting framework that allows system stakeholders to work in
tandem towards improving a set of sustainability indicators specifically
tailored for the *aaS model.
Keywords: Software sustainability · *aaS · Cloud computing ·
Software architecture · Vision
1 Introduction
The last decades have generated an increasing awareness of the need for a more
sustainable world that is at the same time increasingly being run by software sys-
tems [13]. Sustainability can be defined under two lenses as discussed in [16]: that
of sustainable use of a system with regard to a function over a time horizon, and
that of sustainable development that meets current needs without compromising
the ability of future generations to do the same. Computing in general, and soft-
ware in particular has the potential to enable sustainability across the societal
c
! Springer Nature Switzerland AG 2021
M. Aiello et al. (Eds.): Papazoglou Festschrift, LNCS 12521, pp. 35–47, 2021.
https://doi.org/10.1007/978-3-030-73203-5_3
Gupta, S., Lago, P., & Donker, R. (2021).
A Framework of Software Architecture
Principles for Sustainability-driven Design
and Measurement. In 18th International
Conference on Software Architecture
Companion (ICSA-C), pp. 31-37, IEEE
A Framework of Software Architecture Principles
for Sustainability-driven Design and Measurement
Sarthak Gupta
Vrije Universiteit Amsterdam
The Netherlands
Patricia Lago
Vrije Universiteit Amsterdam, The Netherlands &
Chalmers University of Technology, Sweden
Roel Donker
CGI Group,
The Netherlands
Abstract—Aviation connects our world by efficiently and
rapidly moving people, opening new economic opportunities and
transporting food and goods globally. But the notable growth of
air travel in recent years has led to increasingly crowded airspace.
According to the 2019 European Aviation Environment Report,
aviation is responsible for about 3% of global CO2 emissions,
which translates into a big ecological impact. It is imperative
to steer the aviation industry towards optimizing resources, re-
ducing costs, improving decision-making and increasing systems’
resilience to unexpected events.
In this work, we study the sustainability impact of software
architecture principles at Amsterdam Schiphol Airport. To this
aim, we create a framework that relates architecture principles
with sustainability concerns, with the aim of seeking the right
balance toward a positive impact on the sustainable development
of the organization and its services. We combine techniques like
OGSM and Decision Maps to extend the current architecture
principles, and elicit Key Performance Indicators from current
industrial practice.
The resulting framework is the first step towards adopting
sustainability in architecting and laying the foundation to monitor
the effectiveness of the implemented architecture principles on
the target sustainability goals of the organization.
Index Terms—Software Architecture; Architecture Principles;
Sustainability; Aviation Industry; Key Performance Indicators.
I. INTRODUCTION
The aviation industry has always been seeking technological
progress that optimizes the economic, operational and environ-
mental implications of flying. Global demand for aviation has
increased substantially since the first commercial jet airliner
went into service in the 1950s. Since then, demand has risen
9% per year [1]. The aviation industry has always been re-
garded as one of the major contributors to global warming and
pollution. In 2018, CO2 emissions totalled 747 million tonnes
for passenger transport, for 8.5 trillion revenue passenger
kilometers (RPK), giving an average of 88 gram CO2 per RPK
[2]. Over the years, the airliners have become aware of their
societal responsibility to reduce carbon emissions, and several
initiatives such as the Paris Agreement and the Aviation Action
Plan have been launched aiming for a sustainable future with
ICT playing a major role [3].
A software architecture is defined as the “fundamental
organization of a system embodied in its components, their
relationships to each other, and to the environment, and the
principles guiding its design and evolution” [4]. Accordingly,
enterprise architecture can be defined as the fundamental
organization of an enterprise embodied in its components, their
relationships to each other, and to the environment, and the
principles guiding its design and evolution. Adding to that,
Lindström [5] defines architecture principles as the underlying
general rules and guidelines for the use of IT resources across
the organization. In the IT departments of airlines and air-
ports, architecture principles are defined to provide boundaries
and guidelines for IT development; approved by enterprise
architects, and applied in solution architecture. Examples of
architectural principles are: “SAAS over PAAS over IAAS
over on-premise” or “reuse over buy over custom-build”.
Software architecture principles for sustainable development
have, so far, not been given prime importance within airline
and airport organizations. To this aim, we must understand
the impact of the current and future software architecture
principles on sustainability goals.
Worldwide, the demand for aviation doubles every 15 years
[6]. The aviation sector itself is responsible for about 3% of
global CO2 emissions globally, and 7% of the emissions of
The Netherlands [7] – where this study was performed. The
demand for aviation has outpaced the efficiency of the activ-
ities of the sector and as a result, no absolute CO2 reduction
has been realised. As aviation enters a post-pandemic world
and begins recovery, minimizing costs wherever possible and
keeping up with innovation and changes in technology will be
imperative for the aviation industry to bounce back. Improving
the IT infrastructure with more effective principles aimed
towards positive sustainable development and maintaining the
corporate social responsibility, with a balance in all four
dimensions of sustainability (i.e., technical, environmental,
social and economic [8]), would help the Schiphol airport
operated by Schiphol Group to achieve their aim to be zero-
emission and zero-waste by 2030.
The main focus of this research is to understand how the
architecture principles defined by an organization can have an
impact on its sustainable development, and its contribution to
global sustainability. The research has been carried out in the
context of the Royal Schiphol Group for Amsterdam Schiphol
Airport in the Netherlands, which provided the architecture
principles specific to the organization’s data, strategy, princi-
ples and future architecture plans.
The paper presents our study, which has resulted in a frame-
work of software architecture principles, which are meant
to support sustainability-driven design and measurement. In
collaboration with the architects and IT experts in Schiphol,
2021
IEEE
18th
International
Conference
on
Software
Architecture
Companion
(ICSA-C)
|
978-1-6654-3910-7/20/$31.00
©2021
IEEE
|
DOI:
10.1109/ICSA-C52384.2021.00012
Verdecchia, R., Lago, P., & de Vries, C. (2021). The
LEAP Technology Landscape: Lower Energy
Acceleration Program (LEAP) Solutions, Adoption
Factors, Impediments, Open Problems, and Scenarios.
https://tinyurl.com/leap-tech-landscape
0740-7459/21©2021IEEE N OV E M BE R /D ECE M BE R 2021 | IEEE SOFTWARE 7
Editor: Christof Ebert
Vector Consulting Services
christof.ebert@vector.com
SOFTWARE
TECHNOLOGY
SOFTWARE AND IT usage are con-
tinuously growing to keep our soci-
ety active and manage our individual
lives. But as they grow, their energy
demand is exploding. By 2030, data
centers alone will already consume
some 10% of the global electricity.1
Including the Internet, telecommuni-
cations, and embedded devices, the
energy consumption will be one-third
of the global demand. Understanding
that end users only consume what we
offer, it is the community of software
developers who must become active
in ecologic behaviors. Green IT is the
call of today. Each single line of code
that we develop today may still be
running years from now on zillions of
processors, eating energy and contrib-
uting to global climate change.
Green IT and green coding de-
scribe a paradigm switch in which
software engineers, developers, tes-
ters, and IT administrators can make
their solutions and services more en-
ergy efficient. Every single software
person can contribute. In this article,
we provide hands-on guidance on
how to reduce the energy waste of
your software and thus contribute to
more ecologic behaviors.
Green IT
With the introduction of high-band-
width data transfers, affordable data
plans, the generalized migration of
software applications and data man-
agement to the cloud, the wide usage
of streaming services, and, obviously,
the many embedded computers
in our everyday lives, digital infra-
structures are experiencing an ever-
growing demand for energy. While
digital transformation looks impres-
sive from an economic perspective,
it has its downside on the ecologic
footprint of these businesses.
An immediate action is to adopt
more renewable energy. Energy-hun-
gry companies such as Microsoft,
Google, and Amazon are currently
investing in water energy, for exam-
ple, to cool their data centers; solar
energy; and wind farms. Many com-
panies engage in trading CO2 cer-
tificates to give a green color to the
energy waste of their data centers.
But renewable energy only “cures”
the symptoms. It does not really
solve reducing the need for energy.
Digital Object Identifier 10.1109/MS.2021.3102254
Date of current version: 22 October 2021
Green IT and
Green Software
Roberto Verdecchia and Patricia Lago, Vrije Universiteit Amsterdam
Christof Ebert, Vector Consulting Services
Carol de Vries, PhotonDelta
From the Editor
Ecologic behavior is the need across the world to mitigate the impacts of climate
change. Software and IT play a pivotal role toward ecologic behaviors for many rea-
sons. Being aware that IT systems alone already consume 10% of global electricity, the
leading software practitioners must embark on green IT and green coding. Read in
this article about hands-on guidance on how you can contribute toward more ecologic
software. I look forward to hearing from you about this column and the technologies
that matter most for your work.—Christof Ebert
Verdecchia, R., Lago, P., Ebert, C., & De
Vries, C. (2021). Green IT and Green Software.
IEEE Software, 38(6), 7-15
Want to know more? … on visualization of impacts
Verdecchia, R., Lago, P., Malavolta, I.,
& Ozkaya, I. (2020). ATDx: Building an
Architectural Technical Debt Index. In R.
Ali, H. Kaindl, & L. Maciaszek (Eds.),
ENASE 2020: Proceedings of the 15th
International Conference on Evaluation
of Novel Approaches to Software
Engineering (pp. 531-539). SciTePress.
Ospina, S., Verdecchia, R., Malavolta, I.,
& Lago, P. (2021). ATDx: A tool for
providing a data-driven overview of
architectural technical debt in software-
intensive systems. In ECSA 2021
Companion
https://github.com/S2-group/ATDx
ATDx: Building an Architectural Technical Debt Index
Roberto Verdecchia1
, Patricia Lago1
, Ivano Malavolta1
, and Ipek Ozkaya2
1Vrije Universiteit Amsterdam, The Netherlands
2Software Engineering Institute, Carnegie Mellon University, USA
{r.verdecchia, p.lago, i.malavolta}@vu.nl, ozkaya@sei.cmu.edu
Keywords: Software Architecture, Technical Debt, Software Analytics, Software Metrics, Software Maintenance
Abstract: Architectural technical debt (ATD) in software-intensive systems refers to the architecture design decisions
which work as expedient in the short term, but later negatively impact system evolvability and maintainability.
Over the years numerous approaches have been proposed to detect particular types of ATD at a refined level
of granularity via source code analysis. Nevertheless, how to gain an encompassing overview of the ATD
present in a software-intensive system is still an open question. In this study, we present a multi-step approach
designed to build an ATD index (ATDx), which provides insights into a set of ATD dimensions building
upon existing architectural rules by leveraging statistical analysis. The ATDx approach can be adopted by
researchers and practitioners alike in order to gain a better understanding of the nature of the ATD present in
software-intensive systems, and provides a systematic framework to implement concrete instances of ATDx
according to specific project and organizational needs.
1 INTRODUCTION
Architectural Technical Debt (ATD) in a software-
intensive system denotes architectural design choices
which, while being suitable or even optimal when
adopted, lower the maintainability and evolvability of
the system in the long term, hindering future develop-
ment activities [Li et al., 2015b]. With respect to other
types of debt, e.g., test or build debt [Li et al., 2015a],
ATD is characterized by being widespread throughout
code-bases, mostly invisible [Kruchten et al., 2012],
and of high remediation costs.
Due to its impact on software development prac-
tices, and its high industrial relevance, ATD is attract-
ing a growing interest within the scientific commu-
nity and software analysis tool vendors [Verdecchia
et al., 2018]. Notably, over the years, numerous ap-
proaches have been proposed to detect, mostly via
source code analysis, ATD instances present in soft-
ware intensive-systems. Such methods rely on the
analysis of symptoms through which ATD manifests
itself, and are conceived to detect specific types of
ATD by adopting heterogeneous strategies, ranging
from the inspection of bug-prone components [Xiao
et al., 2016], to the analysis of dependency anti-
patterns [Arcelli Fontana et al., 2017], maintainability
issues [Malavolta et al., 2018], and the evaluation of
components modularity [Martini et al., 2018b]. Addi-
tionally, numerous static analysis tools, such as NDe-
pend1, CAST2, and SonarQube3, are currently avail-
able on the market, enabling to keep track of tech-
nical debt and architecture-related issues present in
code-bases. Both academic and industrial approaches
currently focus on fine-grained analysis techniques,
considering ad-hoc definitions of technical debt and
software architecture, in order to best fit their anal-
ysis processes. Nevertheless, to date, how to gain an
encompassing overview of the (potentially highly het-
erogeneous) ATD present in a software-intensive sys-
tem is still an open question.
In order to fill this gap, in this study we present
ATDx, an approach designed to provide data-driven,
intuitive, and actionable insights on the ATD
present in a software-intensive system. ATDx con-
sists of a theoretical, multi-step, and semi-automated
process, concisely entailing (i) the inclusion of archi-
tectural rules supported by pre-existing analysis tools,
(ii) the identification of outlier values (after normal-
ization) via statistical analysis, and (iii) the aggrega-
tion of analysis results into a set of customizable ATD
dimensions. ATDx is meant to serve two types of
stakeholders: (i) researchers conducting quantitative
studies on source-related ATD and (ii) practitioners
carrying out software portfolio analysis and manage-
ment, to suitably detect ATD items and get actionable
1https://www.ndepend.com
2https://www.castsoftware.com/
3https://www.sonarqube.org
ATDx: A tool for Providing a Data-driven Overview
of Architectural Technical Debt in So�ware-intensive
Systems
Sebastian Ospina1
, Roberto Verdecchia1
, Ivano Malavolta1
and Patricia Lago1,2
1
Vrije Universiteit Amsterdam, The Netherlands
2
Chalmers University of Technology, Gothenburg, Sweden
Abstract
Architectural technical debt (ATD) in software-intensive systems is mostly invisible to software de-
velopers, can be widespread throughout entire code-bases, and its remediation cost is often steep. In
recent years, numerous approaches have been proposed to identify, keep track, and ultimately manage
ATD. The variety of approaches available opens a new problem, namely how to gain an encompassing
overview of the ATD identi�ed in a software-intensive system. With this paper we make available the
ATDx tool, an implementation of ATDx written in Python, designed in a plug-in fashion. ATDx is an
approach designed to provide a data-driven, intuitive, and actionable overview of the ATD present in
a portfolio of software projects. ATDx is based on third-party source code analysis tools, architectural
issue severity calculation via clustering, and aggregation of measurements into di�erent architectural
technical debt dimensions. The ATDx tool allows users to automatically run the ATDx analysis, gener-
ate reports containing the ATDx analysis results, and is integrated with GitHub. In addition to the tool,
we provide two already implemented plugins, allowing users to run the ATDx tool out-of-the-box.
GitHub repository: https://github.com/S2-group/ATDx
Video: https://youtu.be/ULT9fgxuB7E
Keywords
Software Engineering, Software Architecture, Technical Debt, Index, Tool
1. Introduction
Context. Architectural Technical Debt (ATD) in a software-intensive system encompasses all
architectural design or implementation constructs that, while being suitable today, will lower
the maintainability and evolvability of the system in the long term. ATD is mostly invisible
to software developers, can be widespread throughout entire code-bases, and its remediation
cost is often steep [1]. Tool support can aid software practitioners by providing automated and
semi-automated approaches to systematically identify, keep track, and ultimately manage ATD.
In recent years numerous �ne-grained approaches, leveraging di�erent de�nitions of ATD, have
ECSA’21: European Conference on Software Architecture, September 12–17, 2021, Virtual
� s.ospinacamacho@vu.nl (S. Ospina); r.verdecchia@vu.nl (R. Verdecchia); i.malavolta@vu.nl (I. Malavolta);
p.lago@vu.nl (P. Lago)
� https://robertoverdecchia.github.io/ (R. Verdecchia); http://www.ivanomalavolta.com/ (I. Malavolta);
http://patricialago.nl/ (P. Lago)
� 0000-0001-9206-6637 (R. Verdecchia); 0000-0001-5773-8346 (I. Malavolta); 0000-0002-2234-0845 (P. Lago)
© 2021 Copyright for this paper by its authors. Use permitted under Creative Commons License Attribution 4.0 International (CC BY 4.0).
C
E
U
R
Wo
r
k
s
h
o
p
P
r
o
c
e
e
d
i
n
g
s
h
t
t
p
:
/
/
c
e
u
r
-
w
s
.
o
r
g
I
S
S
N1
6
1
3
-
0
0
7
3 CEUR Workshop Proceedings (CEUR-WS.org)
Inheritance
Complexity
JVMS
Interface
Exception
Threading
apache_sling-org-apache-sling-api
Inheritance
Complexity
Exception
Interface JVMS
Threading
apache_sling-org-apache-sling-clam apache_sling-org-apache-commons-html
Inheritance
Threading
JVMS
Complexity
Exception
Interface
Thank you
Credits: slides, ideas and results are a collective effort with my
bright and energetic colleagues in the S2 Group
@Vrije Universiteit Amsterdam s2group.cs.vu.nl
Download our papers from the S2 VU Research Portal
Check out what we teach: s2group.cs.vu.nl/pages/courses
My virtual presence: www.patricialago.nl

More Related Content

What's hot

Machine Learning and Internet of Things
Machine Learning and Internet of ThingsMachine Learning and Internet of Things
Machine Learning and Internet of Things
Sofian Hadiwijaya
 
IoT sensor devices
IoT sensor devicesIoT sensor devices
IoT sensor devices
Roman Staszewski
 
Digital Carbon Footprint.pptx
Digital Carbon Footprint.pptxDigital Carbon Footprint.pptx
Digital Carbon Footprint.pptx
Pranjal Chaturvedi
 
Internet of Things & Its application in Smart Agriculture
Internet of Things & Its application in Smart AgricultureInternet of Things & Its application in Smart Agriculture
Internet of Things & Its application in Smart Agriculture
Mohammad Zakriya
 
Introduction to IOT & Smart City
Introduction to IOT & Smart CityIntroduction to IOT & Smart City
Introduction to IOT & Smart City
Dr. Mazlan Abbas
 
Green internet of things for smart world(2)
Green internet of things for smart world(2)Green internet of things for smart world(2)
Green internet of things for smart world(2)
Divas K Das
 
Software sustainability and Green IT
Software sustainability and Green ITSoftware sustainability and Green IT
Software sustainability and Green IT
Ivano Malavolta
 
Green Software and Green Software Engineering - Definitions, Measurements, an...
Green Software and Green Software Engineering - Definitions, Measurements, an...Green Software and Green Software Engineering - Definitions, Measurements, an...
Green Software and Green Software Engineering - Definitions, Measurements, an...
green-soft
 
Modern agriculture with Internet Of Things
Modern agriculture with Internet Of ThingsModern agriculture with Internet Of Things
Modern agriculture with Internet Of Things
MKMK40
 
Smart Irrigation System Using IoT
Smart Irrigation System Using IoTSmart Irrigation System Using IoT
Smart Irrigation System Using IoT
Lokesh Parihar
 
Leverage IoT to Setup Smart Manufacturing Solutions
Leverage IoT to Setup Smart Manufacturing SolutionsLeverage IoT to Setup Smart Manufacturing Solutions
Leverage IoT to Setup Smart Manufacturing Solutions
Softweb Solutions
 
Green computing
Green computingGreen computing
Green computing
Mariya Zafar
 
Cyber Security Services
Cyber Security ServicesCyber Security Services
Cyber Security Services
Saratechnology
 
Green computing
Green computingGreen computing
Green computing
Haider Ali Malik
 
IoT [Internet of Things]
IoT [Internet of Things]IoT [Internet of Things]
IoT [Internet of Things]
Er. Arpit Sharma
 
SMARTIE
SMARTIESMARTIE
SMARTIE
DunavNET
 
IoT Update Oktober 2019 | Jan Depping @Microsoft | The next step in IoT
IoT Update Oktober 2019 | Jan Depping @Microsoft | The next step in IoTIoT Update Oktober 2019 | Jan Depping @Microsoft | The next step in IoT
IoT Update Oktober 2019 | Jan Depping @Microsoft | The next step in IoT
IoT Academy
 
iot based agriculture
 iot based agriculture iot based agriculture
iot based agriculture
Tanish Khilani
 
Top 10 Green IT Initiatives
Top 10 Green IT InitiativesTop 10 Green IT Initiatives
Top 10 Green IT Initiatives
SalesQuest
 
Internet of things - challenges scopes and solutions
Internet of things - challenges scopes and solutionsInternet of things - challenges scopes and solutions
Internet of things - challenges scopes and solutions
Shivam Kumar
 

What's hot (20)

Machine Learning and Internet of Things
Machine Learning and Internet of ThingsMachine Learning and Internet of Things
Machine Learning and Internet of Things
 
IoT sensor devices
IoT sensor devicesIoT sensor devices
IoT sensor devices
 
Digital Carbon Footprint.pptx
Digital Carbon Footprint.pptxDigital Carbon Footprint.pptx
Digital Carbon Footprint.pptx
 
Internet of Things & Its application in Smart Agriculture
Internet of Things & Its application in Smart AgricultureInternet of Things & Its application in Smart Agriculture
Internet of Things & Its application in Smart Agriculture
 
Introduction to IOT & Smart City
Introduction to IOT & Smart CityIntroduction to IOT & Smart City
Introduction to IOT & Smart City
 
Green internet of things for smart world(2)
Green internet of things for smart world(2)Green internet of things for smart world(2)
Green internet of things for smart world(2)
 
Software sustainability and Green IT
Software sustainability and Green ITSoftware sustainability and Green IT
Software sustainability and Green IT
 
Green Software and Green Software Engineering - Definitions, Measurements, an...
Green Software and Green Software Engineering - Definitions, Measurements, an...Green Software and Green Software Engineering - Definitions, Measurements, an...
Green Software and Green Software Engineering - Definitions, Measurements, an...
 
Modern agriculture with Internet Of Things
Modern agriculture with Internet Of ThingsModern agriculture with Internet Of Things
Modern agriculture with Internet Of Things
 
Smart Irrigation System Using IoT
Smart Irrigation System Using IoTSmart Irrigation System Using IoT
Smart Irrigation System Using IoT
 
Leverage IoT to Setup Smart Manufacturing Solutions
Leverage IoT to Setup Smart Manufacturing SolutionsLeverage IoT to Setup Smart Manufacturing Solutions
Leverage IoT to Setup Smart Manufacturing Solutions
 
Green computing
Green computingGreen computing
Green computing
 
Cyber Security Services
Cyber Security ServicesCyber Security Services
Cyber Security Services
 
Green computing
Green computingGreen computing
Green computing
 
IoT [Internet of Things]
IoT [Internet of Things]IoT [Internet of Things]
IoT [Internet of Things]
 
SMARTIE
SMARTIESMARTIE
SMARTIE
 
IoT Update Oktober 2019 | Jan Depping @Microsoft | The next step in IoT
IoT Update Oktober 2019 | Jan Depping @Microsoft | The next step in IoTIoT Update Oktober 2019 | Jan Depping @Microsoft | The next step in IoT
IoT Update Oktober 2019 | Jan Depping @Microsoft | The next step in IoT
 
iot based agriculture
 iot based agriculture iot based agriculture
iot based agriculture
 
Top 10 Green IT Initiatives
Top 10 Green IT InitiativesTop 10 Green IT Initiatives
Top 10 Green IT Initiatives
 
Internet of things - challenges scopes and solutions
Internet of things - challenges scopes and solutionsInternet of things - challenges scopes and solutions
Internet of things - challenges scopes and solutions
 

Similar to Sustainability - The Software Perspective

Software Sustainability: The Challenges and Opportunities for Enterprises and...
Software Sustainability: The Challenges and Opportunities for Enterprises and...Software Sustainability: The Challenges and Opportunities for Enterprises and...
Software Sustainability: The Challenges and Opportunities for Enterprises and...
Patricia Lago
 
How to bring Sustainability in your Organization – Green IT
How to bring Sustainability in your Organization – Green ITHow to bring Sustainability in your Organization – Green IT
How to bring Sustainability in your Organization – Green IT
Patricia Lago
 
BIG IOT AND SOCIAL NETWORKING DATA FOR SMART CITIES Alg.docx
BIG IOT AND SOCIAL NETWORKING DATA FOR SMART CITIES Alg.docxBIG IOT AND SOCIAL NETWORKING DATA FOR SMART CITIES Alg.docx
BIG IOT AND SOCIAL NETWORKING DATA FOR SMART CITIES Alg.docx
jasoninnes20
 
BIG IOT AND SOCIAL NETWORKING DATA FOR SMART CITIES Alg.docx
BIG IOT AND SOCIAL NETWORKING DATA FOR SMART CITIES Alg.docxBIG IOT AND SOCIAL NETWORKING DATA FOR SMART CITIES Alg.docx
BIG IOT AND SOCIAL NETWORKING DATA FOR SMART CITIES Alg.docx
tangyechloe
 
BIG IOT AND SOCIAL NETWORKING DATA FOR SMART CITIES Alg.docx
BIG IOT AND SOCIAL NETWORKING DATA FOR SMART CITIES Alg.docxBIG IOT AND SOCIAL NETWORKING DATA FOR SMART CITIES Alg.docx
BIG IOT AND SOCIAL NETWORKING DATA FOR SMART CITIES Alg.docx
hartrobert670
 
Chapter 10 Google The Drive to Balance Privacy with Profit C.docx
Chapter 10 Google The Drive to Balance Privacy with Profit C.docxChapter 10 Google The Drive to Balance Privacy with Profit C.docx
Chapter 10 Google The Drive to Balance Privacy with Profit C.docx
bartholomeocoombs
 
Muki Haklay (UCL) Mapping For Sustainable Communities 170608
Muki Haklay (UCL) Mapping For Sustainable Communities 170608Muki Haklay (UCL) Mapping For Sustainable Communities 170608
Muki Haklay (UCL) Mapping For Sustainable Communities 170608
Muki Haklay
 
New Research Articles 2020 July Issue International Journal of Software Engin...
New Research Articles 2020 July Issue International Journal of Software Engin...New Research Articles 2020 July Issue International Journal of Software Engin...
New Research Articles 2020 July Issue International Journal of Software Engin...
ijseajournal
 
Designing Software with a Sustainability Intent - The Software Sustainability...
Designing Software with a Sustainability Intent - The Software Sustainability...Designing Software with a Sustainability Intent - The Software Sustainability...
Designing Software with a Sustainability Intent - The Software Sustainability...
Patricia Lago
 
Skill Intelligence in the Steel Sector mc 220329.pdf
Skill Intelligence in the Steel Sector mc 220329.pdfSkill Intelligence in the Steel Sector mc 220329.pdf
Skill Intelligence in the Steel Sector mc 220329.pdf
BEYOND4.0
 
Cloud and Big Data Come Together in the Ocean Observatories Initiative to Giv...
Cloud and Big Data Come Together in the Ocean Observatories Initiative to Giv...Cloud and Big Data Come Together in the Ocean Observatories Initiative to Giv...
Cloud and Big Data Come Together in the Ocean Observatories Initiative to Giv...
Dana Gardner
 
Towards Software Sustainability Assessment
Towards Software Sustainability AssessmentTowards Software Sustainability Assessment
Towards Software Sustainability Assessment
Patricia Lago
 
Nokia smart city_machina_research_playbook_en
Nokia smart city_machina_research_playbook_enNokia smart city_machina_research_playbook_en
Nokia smart city_machina_research_playbook_en
Victor Gridnev
 
Software Sustainability Institute
Software Sustainability InstituteSoftware Sustainability Institute
Software Sustainability Institute
Neil Chue Hong
 
A Co-Design Prototyping Approach For Building A Precinct Planning Tool
A Co-Design Prototyping Approach For Building A Precinct Planning ToolA Co-Design Prototyping Approach For Building A Precinct Planning Tool
A Co-Design Prototyping Approach For Building A Precinct Planning Tool
Scott Donald
 
Final Poster_updated
Final Poster_updatedFinal Poster_updated
Final Poster_updated
Badr Abdalla (EMBA)
 
Journal of Architectural Environment & Structural Engineering Research | Vol....
Journal of Architectural Environment & Structural Engineering Research | Vol....Journal of Architectural Environment & Structural Engineering Research | Vol....
Journal of Architectural Environment & Structural Engineering Research | Vol....
Bilingual Publishing Group
 
Hetherington
HetheringtonHetherington
Hetherington
anesah
 
Naturnet newsletter04
Naturnet newsletter04Naturnet newsletter04
Naturnet newsletter04
WirelessInfo
 
sustainability-14-01332.pdf
sustainability-14-01332.pdfsustainability-14-01332.pdf
sustainability-14-01332.pdf
NituMarilena
 

Similar to Sustainability - The Software Perspective (20)

Software Sustainability: The Challenges and Opportunities for Enterprises and...
Software Sustainability: The Challenges and Opportunities for Enterprises and...Software Sustainability: The Challenges and Opportunities for Enterprises and...
Software Sustainability: The Challenges and Opportunities for Enterprises and...
 
How to bring Sustainability in your Organization – Green IT
How to bring Sustainability in your Organization – Green ITHow to bring Sustainability in your Organization – Green IT
How to bring Sustainability in your Organization – Green IT
 
BIG IOT AND SOCIAL NETWORKING DATA FOR SMART CITIES Alg.docx
BIG IOT AND SOCIAL NETWORKING DATA FOR SMART CITIES Alg.docxBIG IOT AND SOCIAL NETWORKING DATA FOR SMART CITIES Alg.docx
BIG IOT AND SOCIAL NETWORKING DATA FOR SMART CITIES Alg.docx
 
BIG IOT AND SOCIAL NETWORKING DATA FOR SMART CITIES Alg.docx
BIG IOT AND SOCIAL NETWORKING DATA FOR SMART CITIES Alg.docxBIG IOT AND SOCIAL NETWORKING DATA FOR SMART CITIES Alg.docx
BIG IOT AND SOCIAL NETWORKING DATA FOR SMART CITIES Alg.docx
 
BIG IOT AND SOCIAL NETWORKING DATA FOR SMART CITIES Alg.docx
BIG IOT AND SOCIAL NETWORKING DATA FOR SMART CITIES Alg.docxBIG IOT AND SOCIAL NETWORKING DATA FOR SMART CITIES Alg.docx
BIG IOT AND SOCIAL NETWORKING DATA FOR SMART CITIES Alg.docx
 
Chapter 10 Google The Drive to Balance Privacy with Profit C.docx
Chapter 10 Google The Drive to Balance Privacy with Profit C.docxChapter 10 Google The Drive to Balance Privacy with Profit C.docx
Chapter 10 Google The Drive to Balance Privacy with Profit C.docx
 
Muki Haklay (UCL) Mapping For Sustainable Communities 170608
Muki Haklay (UCL) Mapping For Sustainable Communities 170608Muki Haklay (UCL) Mapping For Sustainable Communities 170608
Muki Haklay (UCL) Mapping For Sustainable Communities 170608
 
New Research Articles 2020 July Issue International Journal of Software Engin...
New Research Articles 2020 July Issue International Journal of Software Engin...New Research Articles 2020 July Issue International Journal of Software Engin...
New Research Articles 2020 July Issue International Journal of Software Engin...
 
Designing Software with a Sustainability Intent - The Software Sustainability...
Designing Software with a Sustainability Intent - The Software Sustainability...Designing Software with a Sustainability Intent - The Software Sustainability...
Designing Software with a Sustainability Intent - The Software Sustainability...
 
Skill Intelligence in the Steel Sector mc 220329.pdf
Skill Intelligence in the Steel Sector mc 220329.pdfSkill Intelligence in the Steel Sector mc 220329.pdf
Skill Intelligence in the Steel Sector mc 220329.pdf
 
Cloud and Big Data Come Together in the Ocean Observatories Initiative to Giv...
Cloud and Big Data Come Together in the Ocean Observatories Initiative to Giv...Cloud and Big Data Come Together in the Ocean Observatories Initiative to Giv...
Cloud and Big Data Come Together in the Ocean Observatories Initiative to Giv...
 
Towards Software Sustainability Assessment
Towards Software Sustainability AssessmentTowards Software Sustainability Assessment
Towards Software Sustainability Assessment
 
Nokia smart city_machina_research_playbook_en
Nokia smart city_machina_research_playbook_enNokia smart city_machina_research_playbook_en
Nokia smart city_machina_research_playbook_en
 
Software Sustainability Institute
Software Sustainability InstituteSoftware Sustainability Institute
Software Sustainability Institute
 
A Co-Design Prototyping Approach For Building A Precinct Planning Tool
A Co-Design Prototyping Approach For Building A Precinct Planning ToolA Co-Design Prototyping Approach For Building A Precinct Planning Tool
A Co-Design Prototyping Approach For Building A Precinct Planning Tool
 
Final Poster_updated
Final Poster_updatedFinal Poster_updated
Final Poster_updated
 
Journal of Architectural Environment & Structural Engineering Research | Vol....
Journal of Architectural Environment & Structural Engineering Research | Vol....Journal of Architectural Environment & Structural Engineering Research | Vol....
Journal of Architectural Environment & Structural Engineering Research | Vol....
 
Hetherington
HetheringtonHetherington
Hetherington
 
Naturnet newsletter04
Naturnet newsletter04Naturnet newsletter04
Naturnet newsletter04
 
sustainability-14-01332.pdf
sustainability-14-01332.pdfsustainability-14-01332.pdf
sustainability-14-01332.pdf
 

More from Patricia Lago

Teaching and Instructional Work
Teaching and Instructional WorkTeaching and Instructional Work
Teaching and Instructional Work
Patricia Lago
 
The History of Software Architecture: In the eye of the practitioner
The History of Software Architecture: In the eye of the practitionerThe History of Software Architecture: In the eye of the practitioner
The History of Software Architecture: In the eye of the practitioner
Patricia Lago
 
VERSEN @NWO SIG software
VERSEN @NWO SIG softwareVERSEN @NWO SIG software
VERSEN @NWO SIG software
Patricia Lago
 
Self-adaptation Approaches for Energy Efficiency
Self-adaptation Approaches for Energy EfficiencySelf-adaptation Approaches for Energy Efficiency
Self-adaptation Approaches for Energy Efficiency
Patricia Lago
 
Adopting sustainability in ICT industry: from the trenches
Adopting sustainability in ICT industry: from the trenchesAdopting sustainability in ICT industry: from the trenches
Adopting sustainability in ICT industry: from the trenches
Patricia Lago
 
Sustainable Software for a Digital Society
Sustainable Software for a Digital SocietySustainable Software for a Digital Society
Sustainable Software for a Digital Society
Patricia Lago
 
SoSA: A Software Sustainability Assessment Method
SoSA: A Software Sustainability Assessment MethodSoSA: A Software Sustainability Assessment Method
SoSA: A Software Sustainability Assessment Method
Patricia Lago
 
Software with a Sustainability Intent
Software with a Sustainability IntentSoftware with a Sustainability Intent
Software with a Sustainability Intent
Patricia Lago
 
The legacy of unsustainable software
The legacy of unsustainable softwareThe legacy of unsustainable software
The legacy of unsustainable software
Patricia Lago
 
The Ghosts of Legacy SOftware
The Ghosts of Legacy SOftwareThe Ghosts of Legacy SOftware
The Ghosts of Legacy SOftware
Patricia Lago
 
Novel Perspectives on Mentoring in Computer Science
Novel Perspectives on Mentoring in Computer ScienceNovel Perspectives on Mentoring in Computer Science
Novel Perspectives on Mentoring in Computer Science
Patricia Lago
 
Green Software at VU University Amsterdam
Green Software at VU University AmsterdamGreen Software at VU University Amsterdam
Green Software at VU University Amsterdam
Patricia Lago
 
20141203 sen plago
20141203 sen plago20141203 sen plago
20141203 sen plago
Patricia Lago
 
Lago enviroinfo2014
Lago enviroinfo2014Lago enviroinfo2014
Lago enviroinfo2014
Patricia Lago
 
Cloudlet-Based Cyber-Foraging in Resource-Constrained Environments
Cloudlet-Based Cyber-Foraging in Resource-Constrained EnvironmentsCloudlet-Based Cyber-Foraging in Resource-Constrained Environments
Cloudlet-Based Cyber-Foraging in Resource-Constrained Environments
Patricia Lago
 
Green scan methodology for green software assessment
Green scan methodology for green software assessmentGreen scan methodology for green software assessment
Green scan methodology for green software assessment
Patricia Lago
 
Master Information Sciences 2013-2014 at VU University Amsterdam
Master Information Sciences 2013-2014 at VU University AmsterdamMaster Information Sciences 2013-2014 at VU University Amsterdam
Master Information Sciences 2013-2014 at VU University Amsterdam
Patricia Lago
 
The Shrinking Woman in Computer Science
The Shrinking Woman in Computer ScienceThe Shrinking Woman in Computer Science
The Shrinking Woman in Computer Science
Patricia Lago
 

More from Patricia Lago (18)

Teaching and Instructional Work
Teaching and Instructional WorkTeaching and Instructional Work
Teaching and Instructional Work
 
The History of Software Architecture: In the eye of the practitioner
The History of Software Architecture: In the eye of the practitionerThe History of Software Architecture: In the eye of the practitioner
The History of Software Architecture: In the eye of the practitioner
 
VERSEN @NWO SIG software
VERSEN @NWO SIG softwareVERSEN @NWO SIG software
VERSEN @NWO SIG software
 
Self-adaptation Approaches for Energy Efficiency
Self-adaptation Approaches for Energy EfficiencySelf-adaptation Approaches for Energy Efficiency
Self-adaptation Approaches for Energy Efficiency
 
Adopting sustainability in ICT industry: from the trenches
Adopting sustainability in ICT industry: from the trenchesAdopting sustainability in ICT industry: from the trenches
Adopting sustainability in ICT industry: from the trenches
 
Sustainable Software for a Digital Society
Sustainable Software for a Digital SocietySustainable Software for a Digital Society
Sustainable Software for a Digital Society
 
SoSA: A Software Sustainability Assessment Method
SoSA: A Software Sustainability Assessment MethodSoSA: A Software Sustainability Assessment Method
SoSA: A Software Sustainability Assessment Method
 
Software with a Sustainability Intent
Software with a Sustainability IntentSoftware with a Sustainability Intent
Software with a Sustainability Intent
 
The legacy of unsustainable software
The legacy of unsustainable softwareThe legacy of unsustainable software
The legacy of unsustainable software
 
The Ghosts of Legacy SOftware
The Ghosts of Legacy SOftwareThe Ghosts of Legacy SOftware
The Ghosts of Legacy SOftware
 
Novel Perspectives on Mentoring in Computer Science
Novel Perspectives on Mentoring in Computer ScienceNovel Perspectives on Mentoring in Computer Science
Novel Perspectives on Mentoring in Computer Science
 
Green Software at VU University Amsterdam
Green Software at VU University AmsterdamGreen Software at VU University Amsterdam
Green Software at VU University Amsterdam
 
20141203 sen plago
20141203 sen plago20141203 sen plago
20141203 sen plago
 
Lago enviroinfo2014
Lago enviroinfo2014Lago enviroinfo2014
Lago enviroinfo2014
 
Cloudlet-Based Cyber-Foraging in Resource-Constrained Environments
Cloudlet-Based Cyber-Foraging in Resource-Constrained EnvironmentsCloudlet-Based Cyber-Foraging in Resource-Constrained Environments
Cloudlet-Based Cyber-Foraging in Resource-Constrained Environments
 
Green scan methodology for green software assessment
Green scan methodology for green software assessmentGreen scan methodology for green software assessment
Green scan methodology for green software assessment
 
Master Information Sciences 2013-2014 at VU University Amsterdam
Master Information Sciences 2013-2014 at VU University AmsterdamMaster Information Sciences 2013-2014 at VU University Amsterdam
Master Information Sciences 2013-2014 at VU University Amsterdam
 
The Shrinking Woman in Computer Science
The Shrinking Woman in Computer ScienceThe Shrinking Woman in Computer Science
The Shrinking Woman in Computer Science
 

Recently uploaded

DDS-Security 1.2 - What's New? Stronger security for long-running systems
DDS-Security 1.2 - What's New? Stronger security for long-running systemsDDS-Security 1.2 - What's New? Stronger security for long-running systems
DDS-Security 1.2 - What's New? Stronger security for long-running systems
Gerardo Pardo-Castellote
 
May Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdfMay Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdf
Adele Miller
 
GOING AOT WITH GRAALVM FOR SPRING BOOT (SPRING IO)
GOING AOT WITH GRAALVM FOR  SPRING BOOT (SPRING IO)GOING AOT WITH GRAALVM FOR  SPRING BOOT (SPRING IO)
GOING AOT WITH GRAALVM FOR SPRING BOOT (SPRING IO)
Alina Yurenko
 
Atelier - Innover avec l’IA Générative et les graphes de connaissances
Atelier - Innover avec l’IA Générative et les graphes de connaissancesAtelier - Innover avec l’IA Générative et les graphes de connaissances
Atelier - Innover avec l’IA Générative et les graphes de connaissances
Neo4j
 
Using Xen Hypervisor for Functional Safety
Using Xen Hypervisor for Functional SafetyUsing Xen Hypervisor for Functional Safety
Using Xen Hypervisor for Functional Safety
Ayan Halder
 
Orion Context Broker introduction 20240604
Orion Context Broker introduction 20240604Orion Context Broker introduction 20240604
Orion Context Broker introduction 20240604
Fermin Galan
 
E-commerce Application Development Company.pdf
E-commerce Application Development Company.pdfE-commerce Application Development Company.pdf
E-commerce Application Development Company.pdf
Hornet Dynamics
 
Enterprise Resource Planning System in Telangana
Enterprise Resource Planning System in TelanganaEnterprise Resource Planning System in Telangana
Enterprise Resource Planning System in Telangana
NYGGS Automation Suite
 
LORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOM
LORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOMLORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOM
LORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOM
lorraineandreiamcidl
 
Vitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke Java Microservices Resume.pdfVitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke
 
What is Augmented Reality Image Tracking
What is Augmented Reality Image TrackingWhat is Augmented Reality Image Tracking
What is Augmented Reality Image Tracking
pavan998932
 
UI5con 2024 - Boost Your Development Experience with UI5 Tooling Extensions
UI5con 2024 - Boost Your Development Experience with UI5 Tooling ExtensionsUI5con 2024 - Boost Your Development Experience with UI5 Tooling Extensions
UI5con 2024 - Boost Your Development Experience with UI5 Tooling Extensions
Peter Muessig
 
E-commerce Development Services- Hornet Dynamics
E-commerce Development Services- Hornet DynamicsE-commerce Development Services- Hornet Dynamics
E-commerce Development Services- Hornet Dynamics
Hornet Dynamics
 
Mobile App Development Company In Noida | Drona Infotech
Mobile App Development Company In Noida | Drona InfotechMobile App Development Company In Noida | Drona Infotech
Mobile App Development Company In Noida | Drona Infotech
Drona Infotech
 
Empowering Growth with Best Software Development Company in Noida - Deuglo
Empowering Growth with Best Software  Development Company in Noida - DeugloEmpowering Growth with Best Software  Development Company in Noida - Deuglo
Empowering Growth with Best Software Development Company in Noida - Deuglo
Deuglo Infosystem Pvt Ltd
 
Why Choose Odoo 17 Community & How it differs from Odoo 17 Enterprise Edition
Why Choose Odoo 17 Community & How it differs from Odoo 17 Enterprise EditionWhy Choose Odoo 17 Community & How it differs from Odoo 17 Enterprise Edition
Why Choose Odoo 17 Community & How it differs from Odoo 17 Enterprise Edition
Envertis Software Solutions
 
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptx
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptxTop Features to Include in Your Winzo Clone App for Business Growth (4).pptx
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptx
rickgrimesss22
 
Hand Rolled Applicative User Validation Code Kata
Hand Rolled Applicative User ValidationCode KataHand Rolled Applicative User ValidationCode Kata
Hand Rolled Applicative User Validation Code Kata
Philip Schwarz
 
Oracle Database 19c New Features for DBAs and Developers.pptx
Oracle Database 19c New Features for DBAs and Developers.pptxOracle Database 19c New Features for DBAs and Developers.pptx
Oracle Database 19c New Features for DBAs and Developers.pptx
Remote DBA Services
 
Energy consumption of Database Management - Florina Jonuzi
Energy consumption of Database Management - Florina JonuziEnergy consumption of Database Management - Florina Jonuzi
Energy consumption of Database Management - Florina Jonuzi
Green Software Development
 

Recently uploaded (20)

DDS-Security 1.2 - What's New? Stronger security for long-running systems
DDS-Security 1.2 - What's New? Stronger security for long-running systemsDDS-Security 1.2 - What's New? Stronger security for long-running systems
DDS-Security 1.2 - What's New? Stronger security for long-running systems
 
May Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdfMay Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdf
 
GOING AOT WITH GRAALVM FOR SPRING BOOT (SPRING IO)
GOING AOT WITH GRAALVM FOR  SPRING BOOT (SPRING IO)GOING AOT WITH GRAALVM FOR  SPRING BOOT (SPRING IO)
GOING AOT WITH GRAALVM FOR SPRING BOOT (SPRING IO)
 
Atelier - Innover avec l’IA Générative et les graphes de connaissances
Atelier - Innover avec l’IA Générative et les graphes de connaissancesAtelier - Innover avec l’IA Générative et les graphes de connaissances
Atelier - Innover avec l’IA Générative et les graphes de connaissances
 
Using Xen Hypervisor for Functional Safety
Using Xen Hypervisor for Functional SafetyUsing Xen Hypervisor for Functional Safety
Using Xen Hypervisor for Functional Safety
 
Orion Context Broker introduction 20240604
Orion Context Broker introduction 20240604Orion Context Broker introduction 20240604
Orion Context Broker introduction 20240604
 
E-commerce Application Development Company.pdf
E-commerce Application Development Company.pdfE-commerce Application Development Company.pdf
E-commerce Application Development Company.pdf
 
Enterprise Resource Planning System in Telangana
Enterprise Resource Planning System in TelanganaEnterprise Resource Planning System in Telangana
Enterprise Resource Planning System in Telangana
 
LORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOM
LORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOMLORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOM
LORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOM
 
Vitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke Java Microservices Resume.pdfVitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke Java Microservices Resume.pdf
 
What is Augmented Reality Image Tracking
What is Augmented Reality Image TrackingWhat is Augmented Reality Image Tracking
What is Augmented Reality Image Tracking
 
UI5con 2024 - Boost Your Development Experience with UI5 Tooling Extensions
UI5con 2024 - Boost Your Development Experience with UI5 Tooling ExtensionsUI5con 2024 - Boost Your Development Experience with UI5 Tooling Extensions
UI5con 2024 - Boost Your Development Experience with UI5 Tooling Extensions
 
E-commerce Development Services- Hornet Dynamics
E-commerce Development Services- Hornet DynamicsE-commerce Development Services- Hornet Dynamics
E-commerce Development Services- Hornet Dynamics
 
Mobile App Development Company In Noida | Drona Infotech
Mobile App Development Company In Noida | Drona InfotechMobile App Development Company In Noida | Drona Infotech
Mobile App Development Company In Noida | Drona Infotech
 
Empowering Growth with Best Software Development Company in Noida - Deuglo
Empowering Growth with Best Software  Development Company in Noida - DeugloEmpowering Growth with Best Software  Development Company in Noida - Deuglo
Empowering Growth with Best Software Development Company in Noida - Deuglo
 
Why Choose Odoo 17 Community & How it differs from Odoo 17 Enterprise Edition
Why Choose Odoo 17 Community & How it differs from Odoo 17 Enterprise EditionWhy Choose Odoo 17 Community & How it differs from Odoo 17 Enterprise Edition
Why Choose Odoo 17 Community & How it differs from Odoo 17 Enterprise Edition
 
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptx
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptxTop Features to Include in Your Winzo Clone App for Business Growth (4).pptx
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptx
 
Hand Rolled Applicative User Validation Code Kata
Hand Rolled Applicative User ValidationCode KataHand Rolled Applicative User ValidationCode Kata
Hand Rolled Applicative User Validation Code Kata
 
Oracle Database 19c New Features for DBAs and Developers.pptx
Oracle Database 19c New Features for DBAs and Developers.pptxOracle Database 19c New Features for DBAs and Developers.pptx
Oracle Database 19c New Features for DBAs and Developers.pptx
 
Energy consumption of Database Management - Florina Jonuzi
Energy consumption of Database Management - Florina JonuziEnergy consumption of Database Management - Florina Jonuzi
Energy consumption of Database Management - Florina Jonuzi
 

Sustainability - The Software Perspective

  • 1. Patricia Lago Vrije Universiteit Amsterdam Presented at: University of L’Aquila, Dec. 2021 Sustainability – The Software Perspective
  • 2. i. SOFTWARE CAN HELP, OR HINDER, SUSTAINABILITY ii. SOFTWARE ARCHITECTURE MAY PROVIDE THE NEEDED “BIG PICTURE” iii. DECISION MAKING MUST BE INFORMED Takaways
  • 4. The S2 group @ VU Amsterdam I/O Magazine, Issue 3, Dec. 2020 s2group.cs.vu.nl
  • 5. The S2 group @ VU Amsterdam • Software Architecture Design for Digital Sustainability • Architectural Technical Debt • Software Energy Footprint • Robotics Software • Software Engineering and Ethics • Software Adaptation s2group.cs.vu.nl
  • 6. Highlights of my journey in Software and Sustainability 2015 ICSE SEIS MASTER'S TRACK IN COMPUTER SCIENCE SOFTWARE ENGINEERING AND GREEN IT WWW.VU.NL/COMPUTERSCIENCE 2012 2020 2023 Sustainability chair 2022 2014 Inaugural lecture on “software and sustainability” 2016 SC chair Official Launch 2021 se4gd.eu
  • 7. WHEN WE THINK ABOUT SOFTWARE AND SUSTAINABILITY WHAT IS THE FIRST THING THAT COMES TO MIND?
  • 8. “LIKE PERFORMANCE, RELIABILITY, SECURITY, SUSTAINABILITY DOES NOT JUST HAPPEN UNLESS WE PLAN FOR IT.” Patricia Lago @ 2016 Inaugural speech
  • 9. Part 1 - What is software sustainability? Why architecture?
  • 10. Perspectives on Sustainability Dimensions of focus Order of effects UN Sustainable Development Goals DIRECT IMPACT (technology) ENABLING IMPACT (supported processes) SYSTEMIC IMPACT (change in behavior) https://sdgessentials.org/why- the-world-needs-the-sdgs.html REBOUND EFFECTS (negate intended impact) Technical Environmental Economic Social
  • 11. The role of software in sustainability: two perspectives 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 DIGITAL INCLUSIVENESS
  • 12. The role of software in sustainability: dimensions of focus Inward looking SOFTWARE-INTENSIVE SYSTEM Outward looking SOFTWARE-INTENSIVE SYSTEM Technical Environmental Economic Social Direct impact (sustainable software) Indirect impact (software for sustainability)
  • 13. The role of software in sustainability: order of impacts S O F T W A R E I M M E D I A T E I M P A C T E N A B L I N G I M P A C T S Y S T E M I C I M P A C T Impacts can be seen in different timescales • First order/Direct/Immediate • Second order/Indirect/Enabling • Third order/Structural/Systemic
  • 14. The role of software in sustainability: rebound effects • [Def] “... characterize the negative side effects of efficiency policies and strategies that ended up taking back the environmental gains they had permitted”. • Intrinsically cross-dimensional • Negative (but may be positive) • Unpredictable àcountermeasures What is the role of government in the digital age? (n.d.). Retrieved September 26, 2020, from https://www.weforum.org/agenda/2017/02/role-of-government-digital-age-data/
  • 15. Reflection point WE CAN TALK ABOUT “SUSTAINABILITY” IF AND ONLY IF WE ADDRESS BOTH THE DIMENSION(S) OF FOCUS AND A TIMESCALE
  • 16. Why software digital architecture? DIGITAL ARCHITECTURE SYSTEMIC IMPACT ENTERPRISE organization à communities CONTEXT partnerships à multi-sector BUSINESS economic à ecologic Digital transformation is blurring the lines between digital and physical
  • 17. Part 2 - The SAF Toolkit and Decision Maps SUSTAINABILITY ASSESSMENT FRAMEWORK
  • 18. Condori-Fernandez, N., Lago, P., Luaces, M. R., & Places, Á. S. (2020). An action research for improving the sustainability assessment framework instruments. Sustainability (Switzerland), 12(4), 1-25. https://doi.org/10.3390/su12041682 A Checklist to help define the elements of a DM The Decision Map (DM) to help explore the design space and make decisions The SQ dependency matrix to help identify the dependencies among DM elements The Decision Graph to help assign the right impact timescale to DM elements The Sustainability-Quality (SQ) Model to define concerns and measures The SAF Toolkit
  • 19. Design Decision Maps’ Notation An example with Decision maps: conferences (*) for the sake of the presentation some concerns are over-simplified 1 M. Funke and P. Lago (2021), “Let’s start reducing the Carbon Footprint of Academic Conferences”, Technical Report VU Amsterdam. Under Submission. 2 Lago, P. (2019). Architecture design decision maps for software sustainability. In IEEE/ACM 41st International Conference on Software Engineering: Software Engineering in Society, https://tinyurl.com/DesDmaps SUSTAINABILITY IMPACTS FEATURE CONCERN EFFECT
  • 20. Design Decision Maps’ Notation An example with Decision maps: conferences (*) for the sake of the presentation some concerns/effects are over-simplified 1 M. Funke and P. Lago (2021), “Let’s start reducing the Carbon Footprint of Academic Conferences”, Technical Report VU Amsterdam. Under Submission. 2 Lago, P. (2019). Architecture design decision maps for software sustainability. In IEEE/ACM 41st International Conference on Software Engineering: Software Engineering in Society, https://tinyurl.com/DesDmaps
  • 21. Example: KPMG Qubus Platform: visualization of planned vs. actual effects Verdecchia et al. (2017). Estimating Energy Impact of Software Releases and Deployment Strategies: The KPMG Case Study. https://tinyurl.com/y63y2qfr DECISION MAPS CAN BE REFINED WITH THE ACTUAL EFFECTS AND EFFECT MEASURES (counter-intuitive) The version with a ‘distributed’ deployment strategy led to a -10% power consumption wrt. the centralized one. Performance (in terms of execution time) largely depends on the usage scenarios’ requirements for data load.
  • 22. Example: smart work: reasoning Amsterdam Smart City DECISION MAPS HELP EXPLORE THE DESIGN SPACE These effects could lead to rebound impacts (e.g. reinvesting savings elsewhere, like a house further away - hence leading to longer travels when needed) Remote access leads to introducing additional tech services (with increased energy footprint) and may damage collaboration (possibly with further negative effects on work efficiency) Niggebrugge, T., Vos, S., & Lago, P. (2018). The Sustainability of Mobility as a Service Solutions Evaluated through the Software Sustainability Assessment Method. VU Technical Report.
  • 23. Example: WhatsApp Neighborhood Prevention: informed decision making • A sustainability goal à one or more questions each regarding a sustainability-quality (SQ) concern GOAL à How to make neighborhoods safer? - By engaging the citizen in informing the police of criminal situations like suspect of robberies WhatsApp Neighborhood Prevention
  • 24. Example: WhatsApp Neighborhood Prevention: informed decision making WhatsApp Neighborhood Prevention 1: the original plan 2: the measured impact sustainability goal à max safety, min criminality
  • 25. Example: WhatsApp Neighborhood Prevention: informed decision making WhatsApp Neighborhood Prevention 1: the original plan 2: the measured impact 3: the corrected plan sustainability goal à max safety, min criminality max social cohesion + police guidance
  • 26. How can I build true impact? • A sustainability goal à one or more questions each regarding a sustainability-quality (SQ) concern • The measures of the SQ concerns express the effects • The variation (or trend) over time expresses the impact towards the sustainability goal
  • 27. Decisions based on a (quantifiable) informed strategy Renewable Energy Provisioning: Sharing IoT assets [Vandebron] Sustainability Goal = { • Balance Energy prosumption • Maximize Trust • Enable positive behavioral change } Lago, P. et al (2020). Designing for Sustainability: Lessons Learned from Four Industrial Projects. EnviroInfo. https://tinyurl.com/fourcases
  • 28. Reflection point 1Procaccianti, G., Lago, P., Vetrò, A., Méndez Fernández, D., & Wieringa, R. (2015). The Green Lab: Experimentation in Software Energy Efficiency. In IEEE/ACM ICSE. https://doi.org/10.1109/ICSE.2015.297 HOLISTIC VIEW TRENDS OVER PRECISION We understand real impact only over time and space Precise measures depend on too many specific variables; trends help identifying patterns hence energy (or sustainability) hotspots1
  • 29. Remember the example: a sustainability model for scientific conferences po i i e po i i e po i i e ne al ne al ne al ne al nega i e po i i e nega i e nega i e nega i e po i i e po i i e po i i e ne al ne al ne al ne al nega i e po i i e nega i e nega i e nega i e po i i e po i i e po i i e ne al ne al ne al ne al nega i e po i i e nega i e nega i e nega i e 1 M. Funke and P. Lago (2021), “Let’s start reducing the Carbon Footprint of Academic Conferences”, Technical Report VU Amsterdam. Under Submission. ON-SITE VIRTUAL HYBRID Sustainability Goal = { • Minimize carbon footprint • Max knowledge transfer • Balance ICT investments }
  • 30. Reflection point 1 R. Alidoosti, P. Lago, M. Razavian, and A. Tang, “Ethics in software engineering: a systematic literature review,” 2021, under submission. 2 Moyer, A. :. K., Mingay, S., & Watt, S. (2021). Leading Sustainability Ambition, Goals and Technology in the 2020s. Gartner. ON STAKEHOLDERS ON FLEXIBILITY 3-level stakeholder analysis: indirect ones = critical yet forgotten The BIG assumption, and challenge, is flexibility
  • 31. 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 digital architecture? choosing the dimensions of focus (Software) sustainability is cross-dimensional: gather awareness Lago, P. et al (2020). Designing for Sustainability: Lessons Learned from Four Industrial Projects. EnviroInfo. https://tinyurl.com/fourcases AI-assisted desk workers 25
  • 32. Lago, P. © 2016-2018 SoSA: A Software Sustainability Assessment Method. Available at: https://goo.gl/HuY6tf Why digital architecture? choosing the dimensions of focus (Software) sustainability is cross-dimensional: gather awareness Lago, P. et al (2020). Designing for Sustainability: Lessons Learned from Four Industrial Projects. EnviroInfo. https://tinyurl.com/fourcases Condori-Fernandez, N., & Lago, P. (2018). Characterizing the contribution of quality requirements to software sustainability, Journal of Systems and Software, 137, 289-305. AI-assisted desk workers
  • 33. (Software) sustainability is measurable only over time: gather awareness Why digital architecture? making decisions that last Lago, P. © 2016-2018 SoSA: A Software Sustainability Assessment Method. Available at: https://goo.gl/HuY6tf Lago, P. et al (2020). Designing for Sustainability: Lessons Learned from Four Industrial Projects. EnviroInfo. https://tinyurl.com/fourcases AI-assisted desk workers Condori-Fernandez, N., & Lago, P. (2018). Characterizing the contribution of quality requirements to software sustainability, Journal of Systems and Software, 137, 289-305.
  • 34. (Software) sustainability is measurable only over time: gather awareness Why digital architecture? making decisions that last 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. Lago, P. et al (2020). Designing for Sustainability: Lessons Learned from Four Industrial Projects. EnviroInfo. https://tinyurl.com/fourcases AI-assisted desk workers
  • 35. Reflection point ARCHITECTURE AND TIME TECHNICAL- VS. SUSTAINABILITY-DRIVEN ARCHITECTURE DESIGN DECISIONS Unknown by ISO/IEEE/IEC 42010 (among others) Decision Maps provide “a” type of (architecture) view. The link with technical views needs work.
  • 36. Want to know more? … some recent work 0740- 745 9/19©2019IEEE NOVEMBER/DECEMBER 2019 | IEEE SOFTWARE 79 REQUIREMENTS Editor: Philippe Kruchten University of British Columbia pbk@ece.ubc.ca SOUNDING BOARD ACCORDING TO RECENT estimates, computing and communications could account for 20% of energy usage glob- ally by 2025.1 This trend shows no sign of slowing. The annual growth in power consumption of Internet-con- nected devices is 20%. Data centers alone are now accounting for more than 3% of global emissions. Even if you are not worried about this trend on the mega scale, you are likely con- cerned with the power consumption of the devices in your pocket, on your wrist, and in your ears. Software, hardware, and network attributes all contribute to power usage, but little attention has been given to this topic by the informa- tion and communications technol- ogy (ICT) community. For example, as software engineers, we were never taught to consider, much less man- age, the energy consumption of the software systems we created. Despite our lack of awareness and prepara- tion, we are now facing an undeni- able reality: the software community must learn to design for, monitor, and manage the energy usage of software. For this reason, we argue the need for energy-aware software and present a manifesto describing nine guiding principles. By energy- aware software, we mean software that is consciously designed and de- veloped to monitor and react to en- ergy preferences and usage. Energy efficiency is, therefore, one possible (but not the only) response to being energy aware. This manifesto and the principles it proposes have arisen from our ex- perience and from the experience of more than 100 researchers and prac- titioners who have participated in six international workshops on the engineering of green and sustainable software.2 Why do we need a mani- festo? Why now? Although there has been some attention to this area,3 we believe it has been grossly insuffi- cient given the high stakes involved. The vast majority of practitioners (and researchers) are completely ig- norant of energy concerns; they, and the programs they create, are any- thing but energy aware.4 The Nine Principles of Energy Awareness Energy awareness is a necessary but not sufficient precondition for en- ergy efficiency. Energy awareness is required from all stakeholders, such as end users who may choose product A versus product B based on energy characteristics. Our goal in this manifesto is to call for changes in how we think and what we do. This will not come for free, but we believe that the cost of inaction is far greater. Public Awareness Is Key for Widespread Adoption We believe that the key to widespread adoption of energy-aware software is to sensitize and empower end us- ers. The scary statistics regularly published have proven ineffective so far (the amount of energy being con- sumed by ICT, the increasing amount of energy consumed by cloud provid- ers, the massive amounts of data be- ing stored in data centers as opposed to the negligible percentages of data being actually used, and so forth). Neither do the worrisome energy- consumption predictions seem to spur us to action (such as the increasing number of things being connected to the Internet or the booming growth in mobile devices and their increas- ingly sophisticated applications). We need to turn these alarming trends into an opportunity: 1) to sen- sitize end users to the amount of en- ergy consumed by the software they use and 2) to create awareness of A Manifesto for Energy-Aware Software Alcides Fonseca, Rick Kazman, and Patricia Lago Digital Object Identifier 10.1109/MS.2019.2924498 Date of current version: 22 October 2019 Alcides Fonseca and Rick Kazman and Patricia Lago. (2019). A Manifesto for Energy-Aware Software. IEEE Software, 36(6), 79–82 Andrikopoulos, V., & Lago, P. (2021). Software Sustainability in the Age of Everything as a Service. In Next-Gen Digital Services. A Retrospective and Roadmap for Service Computing of the Future (pp. 35-47). LNCS, Springer, Vol. 12521 Software Sustainability in the Age of Everything as a Service Vasilios Andrikopoulos1(B) and Patricia Lago2,3 1 University of Groningen, Groningen, The Netherlands v.andrikopoulos@rug.nl 2 Vrije Universiteit Amsterdam, Amsterdam, The Netherlands p.lago@vu.nl 3 Chalmers University of Technology, Gothenburg, Sweden Abstract. The need for acknowledging and managing sustainability as an essential quality of software systems has been steadily increasing over the past few years, in part as a reaction to the implications of “software eating the world”. Especially the widespread adoption of the Everything as a Service (*aaS) model of delivering software and (virtualized) hard- ware through cloud computing has put two sustainability dimensions upfront and center. On the one hand, services must be sustainable on a technical level by ensuring continuity of operations for both providers and consumers despite, or even better, while taking into account their evolution. On the other hand, the prosuming of services must also be financially sustainable for the involved stakeholders. In this work, we discuss the need for a software architecting approach that encompasses in a holistic manner the other two dimensions of soft- ware sustainability as well, namely the social and environmental aspects of services. We highlight relevant works and identify key challenges still to be addressed in the context of software systems operating across differ- ent models for cloud delivery and deployment. We then present our vision for an architecting framework that allows system stakeholders to work in tandem towards improving a set of sustainability indicators specifically tailored for the *aaS model. Keywords: Software sustainability · *aaS · Cloud computing · Software architecture · Vision 1 Introduction The last decades have generated an increasing awareness of the need for a more sustainable world that is at the same time increasingly being run by software sys- tems [13]. Sustainability can be defined under two lenses as discussed in [16]: that of sustainable use of a system with regard to a function over a time horizon, and that of sustainable development that meets current needs without compromising the ability of future generations to do the same. Computing in general, and soft- ware in particular has the potential to enable sustainability across the societal c ! Springer Nature Switzerland AG 2021 M. Aiello et al. (Eds.): Papazoglou Festschrift, LNCS 12521, pp. 35–47, 2021. https://doi.org/10.1007/978-3-030-73203-5_3 Gupta, S., Lago, P., & Donker, R. (2021). A Framework of Software Architecture Principles for Sustainability-driven Design and Measurement. In 18th International Conference on Software Architecture Companion (ICSA-C), pp. 31-37, IEEE A Framework of Software Architecture Principles for Sustainability-driven Design and Measurement Sarthak Gupta Vrije Universiteit Amsterdam The Netherlands Patricia Lago Vrije Universiteit Amsterdam, The Netherlands & Chalmers University of Technology, Sweden Roel Donker CGI Group, The Netherlands Abstract—Aviation connects our world by efficiently and rapidly moving people, opening new economic opportunities and transporting food and goods globally. But the notable growth of air travel in recent years has led to increasingly crowded airspace. According to the 2019 European Aviation Environment Report, aviation is responsible for about 3% of global CO2 emissions, which translates into a big ecological impact. It is imperative to steer the aviation industry towards optimizing resources, re- ducing costs, improving decision-making and increasing systems’ resilience to unexpected events. In this work, we study the sustainability impact of software architecture principles at Amsterdam Schiphol Airport. To this aim, we create a framework that relates architecture principles with sustainability concerns, with the aim of seeking the right balance toward a positive impact on the sustainable development of the organization and its services. We combine techniques like OGSM and Decision Maps to extend the current architecture principles, and elicit Key Performance Indicators from current industrial practice. The resulting framework is the first step towards adopting sustainability in architecting and laying the foundation to monitor the effectiveness of the implemented architecture principles on the target sustainability goals of the organization. Index Terms—Software Architecture; Architecture Principles; Sustainability; Aviation Industry; Key Performance Indicators. I. INTRODUCTION The aviation industry has always been seeking technological progress that optimizes the economic, operational and environ- mental implications of flying. Global demand for aviation has increased substantially since the first commercial jet airliner went into service in the 1950s. Since then, demand has risen 9% per year [1]. The aviation industry has always been re- garded as one of the major contributors to global warming and pollution. In 2018, CO2 emissions totalled 747 million tonnes for passenger transport, for 8.5 trillion revenue passenger kilometers (RPK), giving an average of 88 gram CO2 per RPK [2]. Over the years, the airliners have become aware of their societal responsibility to reduce carbon emissions, and several initiatives such as the Paris Agreement and the Aviation Action Plan have been launched aiming for a sustainable future with ICT playing a major role [3]. A software architecture is defined as the “fundamental organization of a system embodied in its components, their relationships to each other, and to the environment, and the principles guiding its design and evolution” [4]. Accordingly, enterprise architecture can be defined as the fundamental organization of an enterprise embodied in its components, their relationships to each other, and to the environment, and the principles guiding its design and evolution. Adding to that, Lindström [5] defines architecture principles as the underlying general rules and guidelines for the use of IT resources across the organization. In the IT departments of airlines and air- ports, architecture principles are defined to provide boundaries and guidelines for IT development; approved by enterprise architects, and applied in solution architecture. Examples of architectural principles are: “SAAS over PAAS over IAAS over on-premise” or “reuse over buy over custom-build”. Software architecture principles for sustainable development have, so far, not been given prime importance within airline and airport organizations. To this aim, we must understand the impact of the current and future software architecture principles on sustainability goals. Worldwide, the demand for aviation doubles every 15 years [6]. The aviation sector itself is responsible for about 3% of global CO2 emissions globally, and 7% of the emissions of The Netherlands [7] – where this study was performed. The demand for aviation has outpaced the efficiency of the activ- ities of the sector and as a result, no absolute CO2 reduction has been realised. As aviation enters a post-pandemic world and begins recovery, minimizing costs wherever possible and keeping up with innovation and changes in technology will be imperative for the aviation industry to bounce back. Improving the IT infrastructure with more effective principles aimed towards positive sustainable development and maintaining the corporate social responsibility, with a balance in all four dimensions of sustainability (i.e., technical, environmental, social and economic [8]), would help the Schiphol airport operated by Schiphol Group to achieve their aim to be zero- emission and zero-waste by 2030. The main focus of this research is to understand how the architecture principles defined by an organization can have an impact on its sustainable development, and its contribution to global sustainability. The research has been carried out in the context of the Royal Schiphol Group for Amsterdam Schiphol Airport in the Netherlands, which provided the architecture principles specific to the organization’s data, strategy, princi- ples and future architecture plans. The paper presents our study, which has resulted in a frame- work of software architecture principles, which are meant to support sustainability-driven design and measurement. In collaboration with the architects and IT experts in Schiphol, 2021 IEEE 18th International Conference on Software Architecture Companion (ICSA-C) | 978-1-6654-3910-7/20/$31.00 ©2021 IEEE | DOI: 10.1109/ICSA-C52384.2021.00012 Verdecchia, R., Lago, P., & de Vries, C. (2021). The LEAP Technology Landscape: Lower Energy Acceleration Program (LEAP) Solutions, Adoption Factors, Impediments, Open Problems, and Scenarios. https://tinyurl.com/leap-tech-landscape 0740-7459/21©2021IEEE N OV E M BE R /D ECE M BE R 2021 | IEEE SOFTWARE 7 Editor: Christof Ebert Vector Consulting Services christof.ebert@vector.com SOFTWARE TECHNOLOGY SOFTWARE AND IT usage are con- tinuously growing to keep our soci- ety active and manage our individual lives. But as they grow, their energy demand is exploding. By 2030, data centers alone will already consume some 10% of the global electricity.1 Including the Internet, telecommuni- cations, and embedded devices, the energy consumption will be one-third of the global demand. Understanding that end users only consume what we offer, it is the community of software developers who must become active in ecologic behaviors. Green IT is the call of today. Each single line of code that we develop today may still be running years from now on zillions of processors, eating energy and contrib- uting to global climate change. Green IT and green coding de- scribe a paradigm switch in which software engineers, developers, tes- ters, and IT administrators can make their solutions and services more en- ergy efficient. Every single software person can contribute. In this article, we provide hands-on guidance on how to reduce the energy waste of your software and thus contribute to more ecologic behaviors. Green IT With the introduction of high-band- width data transfers, affordable data plans, the generalized migration of software applications and data man- agement to the cloud, the wide usage of streaming services, and, obviously, the many embedded computers in our everyday lives, digital infra- structures are experiencing an ever- growing demand for energy. While digital transformation looks impres- sive from an economic perspective, it has its downside on the ecologic footprint of these businesses. An immediate action is to adopt more renewable energy. Energy-hun- gry companies such as Microsoft, Google, and Amazon are currently investing in water energy, for exam- ple, to cool their data centers; solar energy; and wind farms. Many com- panies engage in trading CO2 cer- tificates to give a green color to the energy waste of their data centers. But renewable energy only “cures” the symptoms. It does not really solve reducing the need for energy. Digital Object Identifier 10.1109/MS.2021.3102254 Date of current version: 22 October 2021 Green IT and Green Software Roberto Verdecchia and Patricia Lago, Vrije Universiteit Amsterdam Christof Ebert, Vector Consulting Services Carol de Vries, PhotonDelta From the Editor Ecologic behavior is the need across the world to mitigate the impacts of climate change. Software and IT play a pivotal role toward ecologic behaviors for many rea- sons. Being aware that IT systems alone already consume 10% of global electricity, the leading software practitioners must embark on green IT and green coding. Read in this article about hands-on guidance on how you can contribute toward more ecologic software. I look forward to hearing from you about this column and the technologies that matter most for your work.—Christof Ebert Verdecchia, R., Lago, P., Ebert, C., & De Vries, C. (2021). Green IT and Green Software. IEEE Software, 38(6), 7-15
  • 37. Want to know more? … on visualization of impacts Verdecchia, R., Lago, P., Malavolta, I., & Ozkaya, I. (2020). ATDx: Building an Architectural Technical Debt Index. In R. Ali, H. Kaindl, & L. Maciaszek (Eds.), ENASE 2020: Proceedings of the 15th International Conference on Evaluation of Novel Approaches to Software Engineering (pp. 531-539). SciTePress. Ospina, S., Verdecchia, R., Malavolta, I., & Lago, P. (2021). ATDx: A tool for providing a data-driven overview of architectural technical debt in software- intensive systems. In ECSA 2021 Companion https://github.com/S2-group/ATDx ATDx: Building an Architectural Technical Debt Index Roberto Verdecchia1 , Patricia Lago1 , Ivano Malavolta1 , and Ipek Ozkaya2 1Vrije Universiteit Amsterdam, The Netherlands 2Software Engineering Institute, Carnegie Mellon University, USA {r.verdecchia, p.lago, i.malavolta}@vu.nl, ozkaya@sei.cmu.edu Keywords: Software Architecture, Technical Debt, Software Analytics, Software Metrics, Software Maintenance Abstract: Architectural technical debt (ATD) in software-intensive systems refers to the architecture design decisions which work as expedient in the short term, but later negatively impact system evolvability and maintainability. Over the years numerous approaches have been proposed to detect particular types of ATD at a refined level of granularity via source code analysis. Nevertheless, how to gain an encompassing overview of the ATD present in a software-intensive system is still an open question. In this study, we present a multi-step approach designed to build an ATD index (ATDx), which provides insights into a set of ATD dimensions building upon existing architectural rules by leveraging statistical analysis. The ATDx approach can be adopted by researchers and practitioners alike in order to gain a better understanding of the nature of the ATD present in software-intensive systems, and provides a systematic framework to implement concrete instances of ATDx according to specific project and organizational needs. 1 INTRODUCTION Architectural Technical Debt (ATD) in a software- intensive system denotes architectural design choices which, while being suitable or even optimal when adopted, lower the maintainability and evolvability of the system in the long term, hindering future develop- ment activities [Li et al., 2015b]. With respect to other types of debt, e.g., test or build debt [Li et al., 2015a], ATD is characterized by being widespread throughout code-bases, mostly invisible [Kruchten et al., 2012], and of high remediation costs. Due to its impact on software development prac- tices, and its high industrial relevance, ATD is attract- ing a growing interest within the scientific commu- nity and software analysis tool vendors [Verdecchia et al., 2018]. Notably, over the years, numerous ap- proaches have been proposed to detect, mostly via source code analysis, ATD instances present in soft- ware intensive-systems. Such methods rely on the analysis of symptoms through which ATD manifests itself, and are conceived to detect specific types of ATD by adopting heterogeneous strategies, ranging from the inspection of bug-prone components [Xiao et al., 2016], to the analysis of dependency anti- patterns [Arcelli Fontana et al., 2017], maintainability issues [Malavolta et al., 2018], and the evaluation of components modularity [Martini et al., 2018b]. Addi- tionally, numerous static analysis tools, such as NDe- pend1, CAST2, and SonarQube3, are currently avail- able on the market, enabling to keep track of tech- nical debt and architecture-related issues present in code-bases. Both academic and industrial approaches currently focus on fine-grained analysis techniques, considering ad-hoc definitions of technical debt and software architecture, in order to best fit their anal- ysis processes. Nevertheless, to date, how to gain an encompassing overview of the (potentially highly het- erogeneous) ATD present in a software-intensive sys- tem is still an open question. In order to fill this gap, in this study we present ATDx, an approach designed to provide data-driven, intuitive, and actionable insights on the ATD present in a software-intensive system. ATDx con- sists of a theoretical, multi-step, and semi-automated process, concisely entailing (i) the inclusion of archi- tectural rules supported by pre-existing analysis tools, (ii) the identification of outlier values (after normal- ization) via statistical analysis, and (iii) the aggrega- tion of analysis results into a set of customizable ATD dimensions. ATDx is meant to serve two types of stakeholders: (i) researchers conducting quantitative studies on source-related ATD and (ii) practitioners carrying out software portfolio analysis and manage- ment, to suitably detect ATD items and get actionable 1https://www.ndepend.com 2https://www.castsoftware.com/ 3https://www.sonarqube.org ATDx: A tool for Providing a Data-driven Overview of Architectural Technical Debt in So�ware-intensive Systems Sebastian Ospina1 , Roberto Verdecchia1 , Ivano Malavolta1 and Patricia Lago1,2 1 Vrije Universiteit Amsterdam, The Netherlands 2 Chalmers University of Technology, Gothenburg, Sweden Abstract Architectural technical debt (ATD) in software-intensive systems is mostly invisible to software de- velopers, can be widespread throughout entire code-bases, and its remediation cost is often steep. In recent years, numerous approaches have been proposed to identify, keep track, and ultimately manage ATD. The variety of approaches available opens a new problem, namely how to gain an encompassing overview of the ATD identi�ed in a software-intensive system. With this paper we make available the ATDx tool, an implementation of ATDx written in Python, designed in a plug-in fashion. ATDx is an approach designed to provide a data-driven, intuitive, and actionable overview of the ATD present in a portfolio of software projects. ATDx is based on third-party source code analysis tools, architectural issue severity calculation via clustering, and aggregation of measurements into di�erent architectural technical debt dimensions. The ATDx tool allows users to automatically run the ATDx analysis, gener- ate reports containing the ATDx analysis results, and is integrated with GitHub. In addition to the tool, we provide two already implemented plugins, allowing users to run the ATDx tool out-of-the-box. GitHub repository: https://github.com/S2-group/ATDx Video: https://youtu.be/ULT9fgxuB7E Keywords Software Engineering, Software Architecture, Technical Debt, Index, Tool 1. Introduction Context. Architectural Technical Debt (ATD) in a software-intensive system encompasses all architectural design or implementation constructs that, while being suitable today, will lower the maintainability and evolvability of the system in the long term. ATD is mostly invisible to software developers, can be widespread throughout entire code-bases, and its remediation cost is often steep [1]. Tool support can aid software practitioners by providing automated and semi-automated approaches to systematically identify, keep track, and ultimately manage ATD. In recent years numerous �ne-grained approaches, leveraging di�erent de�nitions of ATD, have ECSA’21: European Conference on Software Architecture, September 12–17, 2021, Virtual � s.ospinacamacho@vu.nl (S. Ospina); r.verdecchia@vu.nl (R. Verdecchia); i.malavolta@vu.nl (I. Malavolta); p.lago@vu.nl (P. Lago) � https://robertoverdecchia.github.io/ (R. Verdecchia); http://www.ivanomalavolta.com/ (I. Malavolta); http://patricialago.nl/ (P. Lago) � 0000-0001-9206-6637 (R. Verdecchia); 0000-0001-5773-8346 (I. Malavolta); 0000-0002-2234-0845 (P. Lago) © 2021 Copyright for this paper by its authors. Use permitted under Creative Commons License Attribution 4.0 International (CC BY 4.0). C E U R Wo r k s h o p P r o c e e d i n g s h t t p : / / c e u r - w s . o r g I S S N1 6 1 3 - 0 0 7 3 CEUR Workshop Proceedings (CEUR-WS.org) Inheritance Complexity JVMS Interface Exception Threading apache_sling-org-apache-sling-api Inheritance Complexity Exception Interface JVMS Threading apache_sling-org-apache-sling-clam apache_sling-org-apache-commons-html Inheritance Threading JVMS Complexity Exception Interface
  • 38. Thank you Credits: slides, ideas and results are a collective effort with my bright and energetic colleagues in the S2 Group @Vrije Universiteit Amsterdam s2group.cs.vu.nl Download our papers from the S2 VU Research Portal Check out what we teach: s2group.cs.vu.nl/pages/courses My virtual presence: www.patricialago.nl