Sustainable Software Development
Sustainable Software Development
DEVELOPMENT
– CRITERIA FROM THEORY AND THEIR USE
IN PRACTICE
Kandidatuppsats i Informatik
Ishtar Starxin
VT 2019KANI41
Svensk titel: Hållbar Mjukvaruutveckling – Kriterier från Teori och deras Användning i
Praktiken
Engelsk titel: Sustainable Software Development – Criteria from Theory and Their Use in
Practice
Utgivningsår: 2020
Abstract
The need for software continues to grow exponentially within every aspect of our society and
the demand for intricate software solutions have led to many attempts at improving the
development of software. In this overwhelming wave of the positive impact of software on the
world, it is easy to dismiss the negative effects software has on the environment. The effects of
climate change are becoming more evident day by day and it is crucial to learn the impact of
software, and particularly the development of software, on the environment and through which
means it can be mitigated.
This research paper aims at identifying methods and practices that can be used to improve
existing software development methodologies with regards to sustainability. The software
development processes in question are Scrum and Kanban.
The research is done over two phases, the first of which is a literature review that is aimed at
identifying existing solutions and guidelines for ensuring sustainability within software
development. The second is a set of interviews with developers and managers that work with
Scrum and Kanban on daily bases in order to collect information regarding how sustainable
their ways of software development are and how they can be improved.
I
Sammanfattning
Behovet av mjukvara fortsätter att växa exponentiellt inom alla delar av vårt samhälle, och
efterfrågan på komplicerade mjukvarulösningar har lett till många försök att förbättra
mjukvaruutveckling. I denna överväldigande våg av programvarans positiva påverkan på
världen, är det lätt att bortse från de negativa effekterna programvaran har på miljön. Effekterna
av klimatförändringar blir tydligare dag efter dag och det är avgörande att lära sig effekterna av
mjukvara, och särskilt utvecklingen av mjukvara, på miljön och på vilket sätt det kan mildras.
Detta forskningsdokument syftar till att identifiera olika metoder som kan användas för att
förbättra befintliga mjukvaruutvecklingsmetoder med avseende på hållbarhet. De
mjukvaruutvecklingsprocesserna i fråga är Scrum och Kanban.
Forskningen görs över två faser, varav den första är en litteraturstudie som syftar till att
identifiera befintliga lösningar och riktlinjer för att säkerställa hållbarhet inom
mjukvaruutveckling. Den andra är en uppsättning intervjuer med utvecklare och chefer som
arbetar med Scrum och Kanban dagligen för att samla in information om hur hållbara deras sätt
att utveckla mjukvara är och hur de kan förbättras.
II
Table of Contents
1.1 Problem Formulation ......................................................................................................... - 1 -
1.2 Research Questions ............................................................................................................ - 2 -
1.3 Research Goals................................................................................................................... - 2 -
1.4 Significance of Study ......................................................................................................... - 2 -
1.5 Impact of Study .................................................................................................................. - 3 -
2.1 Sustainability...................................................................................................................... - 4 -
2.1.1 Green IT......................................................................................................................... - 4 -
2.1.2 Green IS ......................................................................................................................... - 5 -
2.2 Software Development Processes ...................................................................................... - 5 -
3.1 Research Methodology ...................................................................................................... - 8 -
3.2 Research Approach ............................................................................................................ - 8 -
3.3 Literature Review Process ................................................................................................. - 8 -
3.3.1 Data Sources .................................................................................................................. - 9 -
3.3.2 Search Strategy .............................................................................................................. - 9 -
3.3.3 Inclusion Criteria ......................................................................................................... - 10 -
3.3.4 Data Extraction ............................................................................................................ - 10 -
3.3.5 Data Analysis and Storage ........................................................................................... - 10 -
3.4 Conducting Interviews ..................................................................................................... - 11 -
3.4.1 Technical Aspects ........................................................................................................ - 11 -
3.4.2 Criteria for Company Inclusion ................................................................................... - 11 -
3.4.3 Target Group................................................................................................................ - 12 -
3.4.4 Guidelines for Interview Questions ............................................................................. - 12 -
3.4.5 Pilot Interview ............................................................................................................. - 13 -
3.4.6 Interview Respondents ................................................................................................ - 13 -
3.4.7 Data Collection ............................................................................................................ - 14 -
3.5 Combining the Results ..................................................................................................... - 14 -
3.6 Result Presentation........................................................................................................... - 15 -
4.1 Empirical Results of the Literature Review ..................................................................... - 16 -
4.1.1 The GREENSOFT Model............................................................................................ - 16 -
4.1.2 Software Sustainability Metrics ................................................................................... - 17 -
4.1.3 ISO/IEC 25010 ............................................................................................................ - 17 -
4.1.4 ISO/IEC 25010 ............................................................................................................ - 17 -
4.1.5 Quality Aspects in Model Driven Software Engineering (MDSE) ............................. - 18 -
4.2 Analysis of the Literature Review Results ....................................................................... - 19 -
4.3 Results of the Interviews .................................................................................................. - 21 -
4.4 Analysis of the interview results ...................................................................................... - 23 -
4.5 Discussion ........................................................................................................................ - 25 -
4.6 Recommended Practices for Agile Software Development ............................................. - 26 -
4.6.1 Planning Phase............................................................................................................. - 26 -
4.6.2 Development Phase ..................................................................................................... - 27 -
5.1 Threats to Literature Review Process .............................................................................. - 29 -
5.2 Threats to Interview ......................................................................................................... - 29 -
5.3 Threats to Data ................................................................................................................. - 29 -
5.4 Threats to Results ............................................................................................................. - 29 -
6.1 Future Work ..................................................................................................................... - 30 -
8.1 Appendix 1 – Interview Questions................................................................................... - 35 -
III
1 Introduction
Climate change has been a recurring topic in various aspects of life. No day goes by without
news regarding how climate change is impacting life in all its forms. It is affecting all life on
the planet including all living creatures and even air, water, and land. The reasons why climate
change is a growing issue is long, and several of these reasons are related to how humans are
living their lives, indulging in the different delights offered by the planet's resources. One of
these delights is information technology (IT) in all its varieties, from companies’ servers and
clouds to private individuals’ smartphones.
No one can deny the impact of IT on the world. It made things people thought impossible,
possible, easily and inexpensively. Everything is being digitalized constantly. The typing
machine of the past is now part of almost every electronic device and physical shops are slowly
being replaced by online shops. While humans are making great progress on every level thanks
to IT, the cost of this progress is the planet itself, and if they do not change their ways of
manufacturing, using and disposing of these electronic devices, they might cease to exist
altogether.
IT has long been seen as a factor that contributed to the deterioration of the environment since
it requires resources for hardware manufacturing, emits heat during usage and adds to the
growing problem of electronic waste (E-waste) contaminating the environment. However, in
recent years, there has been an awareness regarding IT’s different functions (Piccoli 2008) and
how IT can be used to enable sustainable processes, services, and products (Melville 2010).
One of the attempts to make IT more environmentally friendly, or greening IT, is the green
movement within the business sector (Molla, Cooper, Corbitt, Deng, Peszynski, Pittayachawan,
and Teoh 2008). Green IT and Green information systems (IS) focus on energy equipment
utilization of IT, energy efficiency as well as design and implementation of IS (Watson,
Boudreau, & Chen 2010). An important part that plays a big role in IT and IS is software
development processes, that is, the design and implementation mentioned as part of Green IT
and Green IS. There are diverse ways to develop software from a simple thought to a complete
product. This paper will focus on agile software development, more specifically, Scrum and
Kanban and how they can be improved to take sustainability into account when designing and
developing software.
To understand the importance of software development for the software industry and its effect
on the environment, Iacoban (2004) states that developing a single software needs about “7
person-years of effort”, and with the industry's 7 million developers, there is a release of about
1 million software per year. Evidently, this is guaranteed to have a major effect on the
environment considering the heat emission, electricity consumption, and e-waste generation
during that period. Therefore, the software development industry needs to optimize software
development processes in the near future since it is responsible for environmental degradation.
1.2 Research Questions
Based on the problem formulation, the paper thus intends to establish an answer to the following
questions:
a. What kind of methods and techniques are being used to account for sustainability
within software development?
These questions will be answered through a combination of a literature review and interviews
with companies. The literature review will be used mainly for answering the first question and
will help in creating the questions that will be used for the interviews. The combination of the
two methods is used to establish an answer to the second question.
• Explore and identify existing research about general criteria that can be used for
improving agile development processes with regards to sustainability.
• Utilize the results of the literature review in order to create a list of questions that can
be used for the interviews.
• Set up a number of interviews with development teams from various software
development industries.
• Analyze the results of the interviews in order to extract a list of the most important
criteria that should be used in software development.
• Based on the criteria, create a list of recommended practices that can be used to improve
the agile development processes.
The literature review and the number of interviews that are conducted are dependent on the time
frame of the thesis.
Another research that addresses IS and sustainability is that of Watson et al. (2010) where the
researchers mentioned how environmental sustainability, while an urgent issue, is still not
receiving enough recognition from the IS community. Therefore, their goal was to engage IS
educators, researchers and association leaders in developing Green IS. They chose to focus on
energy consumption and proposed establishing a subfield of energy informatics, where IS skills
apply to reduce energy consumption. The researchers also laid a groundwork for IS scholars to
integrate sustainability as a fundamental aspect when teaching IS development. Finally, they
aimed for IS leaders to adopt environmental sustainability as a core principle and advocated
changes that can help reduce the negative environmental effects of IS.
Furthermore, in an interview with Steve Raspudic, a manager and deployment and provisioning
architect at IBM Canada, by Bener and Miranskyy (2014), Raspudic discussed how Software
developers can incorporate green software development practices. Raspudic (2014) stated that
although developers are aware of the effect of IT on the environment, which is why they are
using hardware in the most efficient way they can find; they still do not have any active action
plans when it comes to software development. He also believes that this area has not been
explored correctly thus far and to make sustainability a norm in software development, a
standard must be implemented, otherwise, Green IS will never exceed the scope of separate
individuals who only focus on developing efficient software to reduce energy consumption.
Raspudic (2014) suggests that the only way to promote Green IS is to make it attractive to
business leaders, that is, have a clear advantage for the business. He continues to highlight the
importance of sustainability during the design phase and that it should be a normal consideration
for those who want more efficient software. Raspudic (2014) explains that efficient software is
as good as the algorithms used are and that the goal should be to have the software run fast with
minimum hardware requirements. He mentions that efficient software can mean lower costs
since it consumes less energy and requires less powerful software, but consumers do not usually
concern themselves with efficient software as much as they concentrate on lower costs which
do not always mean a green design.
Finally, a research paper by Dick, Drangmeister, Kern & Naumann (2013) examines the
increasing energy consumption of information and communication technology (ICT). They rate
the impact of ICT using carbon footprint. They present a method to calculate the carbon
footprint over a software’s life cycle. They also suggest ways to integrate carbon footprint
measurement strategies in software development processes. They introduce impacts and tools
regarding carbon footprint calculation to be able to show how software development processes
can become more sustainable.
The purpose of this paper is to continue previous research within the area of software
development processes and sustainability by finding a set of applicable criteria for agile
software development, mainly scrum and Kanban. Unlike previous research, these criteria
intend to not only affect energy consumption and Carbon dioxide emission but also how
sustainability can be incorporated in scrum and Kanban activities to create a culture where
sustainability is the norm.
From an academic point of view the results of this thesis can be used to expand on existing
research within academia for improving agile software development processes, particularly
Scrum and Kanban, and possibly other processes.
2 Theory
This chapter aims to explain the terminology used in sustainability within software
development. It should give the reader an explanation of what these different terms mean and
how they relate to each other, as well as sustainable software development.
2.1 Sustainability
Sustainability is a simple, self-explanatory word and it means “The ability to be maintained at
a certain rate or level” (Sustainability n.d). There are several types of sustainability such as
environmental and development sustainability. Environmental sustainability aims to preserve a
planet where all living beings can thrive in water, air and on land (Leemans & Solecki 2013).
There have been attempts in many fields to work towards environmental sustainability from
different perspectives and using a variety of approaches depending on the field. IT is no
different than any other field in striving to achieve environmental sustainability, especially
considering the unfavorable impact of IT on the environment as mentioned before. While IT
has been associated with negative environmental effects, it still has the potential to assist
different fields into becoming more environmentally sustainable (Piccoli 2008), but a good start
can be by making IT itself Green, which is where Green IT and Green IS come forth.
2.1.1 Green IT
As mentioned before, Green IT is a recent addition to the green movement, and while it has
been surfacing in several papers and conversations in the IT world, it still lacks a clear
explanation as to what is actually meant by it (Molla et al. 2008). Some believe Green IT to be
related to an economic concern (Schmidt, Cruz & Iyengar 2005), an environmental concern
(Green, Morton & New 1996), a social concern (Galtung 1986), a strategic differentiator (Porter
and Van der Linde 1995) and an enabler of other green initiatives (Jones & Mingay 2008).
Molla et al. (2018) believe green It to be an approach that is both systematic and holistic that
focuses on the issues surrounding the IT infrastructure such as energy efficiency and data center
space as well as IT’s contribution to improve businesses and their effect on the environment,
IT’s support for sustainable business practices, and the role of IT in low-carbon economy.
To understand what Green IT is and how it affects the environment and corporation, one can
study a corporation’s costs. According to Rasmussen (2006), electricity costs make a
considerable portion of the costs of running a data center. Green It is expected to help
corporations reduce energy costs and it is also expected to support businesses in enabling
sustainability initiatives such as creating analytical tools and IS that can manage carbon
emission. Equally, Green It will make business practices, such as meetings and information
sharing more environmentally friendly by using online platforms (Jones & Mingay 2008).
To summarize the different research papers, Green IT utilizes all the benefits IT has to offer in
order to make work practices more environmentally sustainable. It does not stop there, however,
because it focuses on improving the way software is developed, used, reused and even includes
hardware and how it is disposed of at the end of its lifecycle.
2.1.2 Green IS
While green IT focuses on the entire IT field, Green IS are specifically the systems being
developed as part of Green IT. Green IS means to develop new and dedicated systems to solve
current business and social issues (Gregor & Jones 2007) through utilizing IT infrastructure to
alter organizational processes and practices to better energy efficiency, reduce environmental
effects and present “environmentally healthy products and services” (Brooks, Wang, & Sarker,
2012).
For a long time, IS have been classified as a key enabler for leading companies and societies
towards environmental sustainability (Elliot 2001). Other expectations of Green IS include
having an effect on individual fundamentals regarding environmental sustainability (Melville
2010), facilitate sustainable work practices by virtualization and remote work (Bose and Luo
2011), facilitate organizations to meet compliance mandate and social norms (Butler 2011) and
use Business intelligence systems to supply environmental data to assist sensemaking or
decision-making processes (Seidel et al. 2013).
Software is growing more complex by the day, which is why software development processes
need to meet up this complexity using a set of tools to help manage and speed up the
development processes. Some examples of these tools are an integrated development
environment, a system that controls the different versions of the software being developed,
including all files and their editors, an issue tracker that consists of a list of all comments
available for a specific issue, an integration framework and a system that can manage all
documents related to the developed software (Wendel, Kunde & Schreiber 2010).
Agile development processes are software development processes that emerged after the
articulation of the agile manifesto in 2001 (The Agile Manifesto 2001). At the time, they were
met by a series of speculation and skepticism from different communities within the It field.
These development processes revolve around the agile principles stated in the agile manifesto
(The Agile Manifesto 2001). These principles emphasize people and the interaction between
people in the development processes over traditional processes and tools, software that works
over extensive documentation, a collaboration between the development team and the
customers rather than negotiations in contracts, and finally the ability to adapt to changes during
the development processes instead of following long term plans. According to the Agile
Manifesto (2001), these principles are supposed to make software development easy and
flexible for everyone.
An example of agile software development processes is Scrum. Scrum consists of a scrum team,
which include the development team members, who develop the product, a scrum master, who
coaches the team and keeps the client from requesting new changes during the sprint, and the
product owner, representing the client (Moe, Dingsøyr & Dybå 2010). Rising and Janoff (2000)
explain the processes of Scrum as a process for small teams that consist of a series of iterations,
called sprints. The researchers continue to clarify that the scrum team has authority and
responsibility over their work. The team is responsible for planning the assignments and they
can decide on how their work should be done. The image below in Figure (1) displays the cycle
of the scrum process (Scrum.org, 2019).
One more agile software development process is Kanban which is shown in Figure (2.a). Unlike
scrum, Kanban does not have iterations, but is made up of a continuous workflow structure,
keeping the teams active and ready for new requests or changes from the client (Esparrago
1988). The tasks, listed as cards on a board, known as the Kanban board, are moved between
different stages. The stages are represented as columns and they are usually categorized into 5
categories: (To Do, In Progress, In Review, Blocked, and Done).
There are no defined roles in Kanban teams. Instead, each member of the team has the
responsibility of managing and delivering tasks. Figure (3.a) shows the Kanban board where
tasks are sorted to reflect the daily ways of working of the process.
Figure 2.a The Kanban Framework
It is important to note that this thesis does not follow the rules of design research to the letter,
as the goal is to extrapolate the most useful elements of this methodology and apply it to this
thesis, thus the research can be considered similar to, or based on design research.
The next phase is a planning phase that is done in order to create a plan for the thesis to be done,
this includes looking for an appropriate research methodology, along with setting up the various
objectives and milestones of the thesis.
The next phase is the literature review, which is described in detail in the next section. The
results of the literature review will help in creating the questions that will be used for the next
phase, conducting interviews, the results of which will be analyzed alongside the literature
review results in order to come up with a set of criteria and practices that can be used for
improving the agile software development processes (Scrum and Kanban). Thus, the results of
the literature review, interviews, and the set of criteria and practices will be the results of this
thesis.
The final phases of the thesis include writing the research paper, conducting a presentation and
a defense, and submitting a camera-ready version for the examiner.
• ACM
• AIS E-Library
• ArXiV
• CiteSeerX
• Digital Library
• DOAJ
• IEEE Xplore
• Inspect
• Springer
All of the above libraries are accessible online through Google Scholar and other search
engines. Those libraries are well known and are some of the most reliable sources of
information with regards to the fields of information technology, computer science as well as
software development and sustainability. They contain some of the oldest as well as the latest
publications and their content are regularly maintained.
There were other search queries that were used in the search process; however, the above strings
were the ones that yielded the most useful and related results.
3.3.3 Inclusion Criteria
The search strings were used in all data sources that were mentioned above and yielded almost
identical results with slight variations from one library to the other. However, the number of
resulting papers was still too large to be handled throughout this brief literature review process.
In order to further limit the number of resulting papers and articles, a number of inclusion
criteria were set out to exclude papers that are not relevant to the study (Booth, Papaioannou,
& Sutton 2012). The criteria state that the paper must:
All papers that did not match one of the above criteria was excluded, thus severely limiting the
resulting number of relevant papers.
• Going over the research paper’s abstract as well as the introduction, to establish an
overview of the paper.
• Identifying the problem that the paper is attempting to resolve.
• Establishing the method by which the paper is attempting to resolve the problem.
• Understanding the results and conclusions of the paper.
• Establishing the level of relevance of that paper to the subject of software process
improvement with regards to sustainability.
The above steps are done for each paper, for as long as the time span of the phase allows.
The data that is gathered from these interviews will provide the study with valuable insight into
what sustainable criteria and practices are used today through the software development process
(Barriball & While 1994). However, due to time constraints, and the fact that not all companies
are available for interviews at any given time, the number of interviews that can be conducted
is limited to the duration of the thesis.
Thus, the interview questions are designed to be semi-structured, with the majority of the
questions formed in an open-ended way, thus leaving the possibility for discussion and
elaboration for each question.
The interviews are meant to be on-site with face to face discussions, failing that, it should be
possible to conduct them over a video-chat or over the phone, and in the worst-case scenario in
the form of E-mail with questionnaires. Each interview session is estimated to take about 40 to
60 minutes depending on how long the discussions and elaborations will continue (Barriball &
While 1994).
The companies are allowed to be anonymous, in which case they will be referred to as
“Company X”, and the interviewees are allowed to remain anonymous as well, or they might
not want to reveal their position or role in the company, in which case such information will be
redacted. The data that are gathered from the interviews will be summarized, transcribed and
stored into data sheets for future reference and for later analysis.
The next chapter will describe the chosen respondents based on the above-mentioned criteria.
Ideally the actors will be playing daily roles within those software development processes, such
as Developers, Tests and Designers. It is also likely to be very useful to meet with management
level actors, such as Scrum Masters, Product Owners and Managers.
It might also be useful to interview multiple participants from the same company, however in
that case, it would be more useful to select the participants from different teams, or even
products, as that will result in a larger spread of data.
Thus, the respondents of the interview ought to have the following criteria to be eligible for the
interview, they:
The above criteria are enough to limit the number of interviewees to a small pool which can be
done over the time scale of the thesis.
Moreover, the interviews are designed to include questions that are meant to explore the nature
of the software development processes that are currently being utilized by those companies.
The questions are also intended to find out if there are other applicable criteria that these
companies use, or plan on using, or even consider using for improving their software
development processes in terms of sustainability. Thus, the main list of questions will be about:
• The role that the interviewee plays in the software development process.
• The software development process in general.
• The relevance of sustainability to the software development process.
• The criteria from the literature review.
• Plans for criteria or practices beyond what has been discussed.
• Other criteria or practices that the interviewee may think of.
It is possible for some interviews to deviate a little from the main list of questions that were
formulated for the interview, however the goal is to keep the discussions related and relevant
to what the thesis is about. The full list of the questions along with their answers from each of
the interviewees can be found in (Appendix 1 – Interview Questions).
The interview questions will then go through a round of modification based on the information
that was gathered from the pilot interview in order to have the optimal set of questions for the
next interviews. It is important that this process is only conducted once, as not to deviate too
much from the original set of questions and therefore the original goal of the thesis (Barriball
& While 1994). The pilot interview revealed a number of issues with the questions, such as:
• The first interview did not have an intro to the background of agile development and
sustainability, this was taken into account for later interviews.
• The original questions did not have questions about the company’s background. While
this may not be vital information, it might be useful in identifying whether some criteria
are company specific or not.
• The original questions did not include the role that the interviewee plays in the software
development process.
• The questions about the criteria were repetitive, because some of the criteria were
similar or related to each other. The modified questions grouped those criteria together.
There were some other minor changes that were made to the questions, which are not worth
mentioning here. The above issues, while minor, still resulted in very useful modifications to
the list of questions, which made the later interviews go much more smoothly.
The interviews were carried out with a total of 6 people. The age range is between 23 and 38,
and there were 4 males and 2 females. One person, a developer at HiQ working in an agile team.
The person was only interviewed once for the pilot interview, while the others were interviewed
twice, once to answer the interview questions and the second time to validate the newly
generated sustainability criteria in software development. There were 4 companies involved in
the interviews, Volvo Cars, Volvo Trucks, Ericsson and HiQ, all based in Gothenburg, Sweden.
The first respondent (Excluding the pilot interviewee) is a developer from Volvo Cars, working
in a team that has recently adapted an agile way of working, namely Kanban. This person has
been working as a developer at Volvo Cars for 5 years. This person showed interest in the study
and was curious to find out how his company measure up to the questions of the interview since
Volvo is keen on releasing sustainability reports annually. while this person could not always
provide concrete answers on the company’s overall action plans to be more sustainable, they
were able to answer the questions related to agile software development and sustainability
accurately.
The second respondent is a scrum master from Volvo Trucks, working in a team that has been
working in an agile way for over 2 years now, which makes them experts compared to the team
in the first of the first respondents. This person has been the scrum master since the team
switched to scrum, therefore, they were able to provide answers relating to the company’s way
of working more accurately, as well as questions related to scrum and sustainability.
The third respondent is a design architect from HiQ who’s been working with software
development for several years, and has been working in a scrum team for one year and a half,
but they have worked before in a team that used Kanban as a way of working. This person was
highly invested and focused in the process of developing software rather than the effect it has
on the environment believing that well developed software does not have a great negative
impact on the environment.
The fourth respondent is a scrum master from HiQ, who has been working as a scrum master
for almost 2 years. This person believes that sustainability issues are to be taken by the
stakeholders and HiQ before the scrum teams can do anything of effect regarding the question
of sustainability. In other words, it is the upper management that should pick up the issue of
sustainability and make it a clear goal for the company before the teams can be interested in it
and start working towards it.
The fifth respondent is a product owner from Ericsson, who has been working at Ericsson for
over 10 years, but they have only been a product owner for 4 years. This person could give
answers that were more general to the company’s attitude towards sustainability in different
forms, rather than just the software the company develops, mentioning that sustainability is a
natural result of the quality they demand of their software.
• Results of the literature review process, which includes a number of papers summarized
and analyzed, along with a taxonomy of the criteria that were found. The results of the
literature review provide an answer to the first research question (RQ1.2.A).
• Results of the interviews, which are also summarized into the most important criteria
for software development.
• A set of best practices or recommendations that are based on those criteria, which can
be used to improve agile software development methodologies (e.g. Scrum, Kanban).
• The results of the interview along with the set of best practices provide an answer to the
second research question (RQ1.2.B).
Some information from the interviews might be omitted in the cases that it reveals sensitive
data about the interviewing company. The set of practices and recommendations are also sent
to all interviewed companies, in case they are interested in utilizing them for their own
development.
4 Introduction
In this section, the results of this research will be presented, which include the results of the
literature review and the results from the interviews, as well as the final results introduced in
the form of a set of criteria.
• RQ1.2.A: What kind of methods and techniques are being used to account for
sustainability within software development?
After applying the literature review process that was discussed in Chapter 3.3, an initial number
of 16 papers were identified with matching results to the searched keywords of sustainability
and software development. However, from those, only 5 were qualified as related to the subject
of this research paper, as these were the only papers that provided models, techniques, methods
or processes that involve applying sustainability to software development.
The following is a summary of these methods and processes, along with a set of attributes that
were extracted from them which are important for sustainability within software development.
• Reusability is the ability to use software components to build other software, this allows
for reduced efforts in building new software.
• Modifiability is having the ability to make quick changes to the software with minimum
effort and time.
• Usability is making the software user friendly, thus making it easier to accept and learn.
• Accessibility aims to make the software suitable for all types of users including users
with varied levels of physical and mental abilities, as well as users who have hardware
with limited functionality.
• Predictability is being able to predict the amount of time it takes for the development
team to implement certain functionality. All these criteria contribute to environmental
sustainability on social and economic levels.
• Efficiency focuses on runtime and usage of memory.
• Performance which relates directly to efficiency since both affect runtime, leading to
reduced energy consumption.
• Portability means hardware obsolescence and it works by measuring the amount of
hardware that will be replaced until the software reaches its end of life.
• Feasibility considers how development processes follow sustainability criteria during
development
• Reflectivity which does not have reliable metrics at the moment, and sustainability,
which includes aspects of purpose, reduction and beauty.
• Complexity
• Modularity
• Analyzability
• Effectiveness
• Understandability
• Reusability
• Modifiability
• Changeability
• Cost
• Stability
• Evolvability
• Timeliness
• Effectiveness
• Efficiency
• Satisfaction (Usefulness, Trust, Pleasure, Comfort)
• Freedom from risk (Economic risk mitigation, Health and safety risk mitigation,
Environmental risk mitigation)
• Context coverage (Context Completeness, Flexibility)
• Functional suitability (Functional completeness, Functional correctness, Functional
appropriateness)
• Performance efficiency (Time behavior, Resource utilization, Capacity)
• Compatibility (Co-existence, Interoperability)
• Usability (Appropriateness recognizability, Learnability, Operability, User error
protection, User interface aesthetics, Accessibility)
• Reliability (Maturity, Availability, Fault tolerance, Recoverability)
• Security (Confidentiality, Integrity, Non-repudiation, Accountability, Authenticity)
• Maintainability (Modularity, Reusability, Analyzability, Modifiability, Testability)
• Portability (Adaptability, Installability, Replaceability)
Second is to identify a set of themes and patterns that are shared between these methods. A set
of attributes that are grouped together under relevant categories which serve as the most
important aspects of sustainability within software development, and serve as the basis for
setting up the interview questions and an important part of the set of best practices that will be
The empirical results of the literature review show that while there has been quite a bit of
research into the subject of sustainability within software development, there is no clear
guideline or a set of best practices that can be recommended to engineers and developers
working within the industry in order to ensure sustainable software development. This is further
evidence of the importance of establishing the set of practices which are the main goal of this
research paper.
The results also show that there are many attributes that researchers are paying attention to with
regards to sustainability within software development. These attributes can be grouped under
certain themes which share common characteristics between them. The following is a list of all
the attributes that were identified and extracted from the literature’s empirical results:
The goal of grouping the above attributes is to create a method of understanding and therefore
explaining how the attributes can be utilized in a way that relates to sustainability within
software development. Looking at the attributes, it is possible to identify four categories which
combine the attributes that share common or relative characteristics. These four groups are
(Functional Attributes, Performance Attributes, Coding Attributes, Security Attributes).
• Functional Attributes:
Combines the set of attributes which decide how the resulting system should operate
and how users can interact with it, this includes the following attributes:
o Usability, Operability
o Learnability, Recognizability, Reflectivity
o Availability, Reliability, Maturity
• Performance Attributes:
Combines the set of attributes which reflect the behavior of the resulting system in terms
of sustainability, this includes the following attributes:
o Energy Efficiency, Capacity, Utilization, Cost
o Feasibility, Effectiveness
o Stability, Perdurability
• Coding Attributes:
Combines the set of attributes which elaborate how the codebase of a resulting system
ought to be in terms of sustainability, this includes the following attributes:
o Reusability, Portability, Flexibility, Adaptability, Transformability
o Modifiability, Changeability, Evolvability, Replaceability
o Complexity, Modularity
o Analyzability, Understandability
o Testability, Maintainability, Compatibility
• Safety Attributes:
Combines the set of attributes which determine the qualities of a sustainable resulting
system should be with regards to sustainability, this includes the following attributes:
o Security, Accessibility, Authenticity
o Integrity, Recoverability, Fault tolerance
o Confidentiality, Obscureness
o Traceability, Accountability
The above categories serve as a means of classifying the attributes into groups that combine
similar aspects with the goal of making it easier to follow and understand these attributes.
The four categories of software sustainability and their attributes are then visualized in a
diagram that can be used in order to summarize and quickly elaborate them. Thus, a visual
representation of the classification of these attributes can be found in the diagram shown in
Figure (3).
Before each interview, a quick explanation of the results of the literature review was carried out
in the form of the diagram showing the software sustainability attributes and their classification,
then the questions were presented to the interviewees.
Since listing the answers from all the interviewees for each question would yield a lengthy bulk
of text, it was advisable to list a summary of the results for each question instead. The summary
of the questions can be found below:
• Q1: The roles of the respondents were a developer, 2 scrum masters, a design architect
and a product owner.
• Q2: All the respondents assured that their companies take sustainability into account.
Some respondents, like the product owner at Ericsson stated that since Ericsson is a big
company with many software products, they find it as part of their social corporate
responsibility to constantly aim for a better future through sustainable choices. The
respondents from Volvo Cars and Volvo Trucks also mentioned that Volvo as a
company has always worked on having environmentally sustainable product lifecycle.
However, when asked specifically about sustainability at a development level, the point
that was taken up the most was having energy-saving hardware and developing high
performance software since that is a goal that interests everyone involved.
• Q4: To this question, the respondents all agreed that as far as the customers are
concerned, they are being provided with what they are paying for, that is, software with
the functions they required that is stable and easy to use. Even though energy costs are
high, the companies involved wish to reduce energy usage mainly to reduce costs, and
the positive environmental result of this step is a bonus.
• Q5: The majority of the respondents stated that environmental sustainability is not
directly considered during design. what is considered is aspects of usability,
functionality and safety. Some respondents said that a high performing software can be
seen as environmentally sustainable but environmental sustainability is not a goal that
the teams or customers actively pursue.
• Q6: All the respondents stated that environmental sustainability is not considered during
sprint planning or replenishment modeling session and that what is considered is only
what to do in the upcoming sprint.
• Q7: The respondents stated that environmental sustainability is not considered during
backlog refinement and that only matters of functionality, usability and security are
discussed, as well as how a feature for example should be implemented.
• Q8: All respondents stated that environmental sustainability is not part of their daily
ways of working, therefore it is not considered during their sprint retrospectives.
• Q9: Those of the respondents who work with development stated that their aspiration
is for their code to follow all the attributes they were presented with and that they
constantly work to improve it since that will improve their software and simplify their
daily work. This is why they have high standards on how new code should be added and
how existing code can be modified.
• Q10: The scrum masters the developer and the design architect all though that they are
and can affect all categories, but some attributes such as availability, capacity, cost,
security, traceability and accountability are more likely to be affected by a product
owner or those who have a high position in the company since they require major
changes in their way of working. One example would be cost. costs are managed by the
customer through the product owner making the effect of all others little, if non-existing.
Another example is that of capacity, since the software is usually hosted and managed
by the customer company, the developers and scrum masters normally have no access
to change how much memory is available for their product, but must go through the
product owner or others who manage the hosting services to have more memory. The
product owner believes that he can affect the software by having specific requirements
that are related to all attributes and that he can work together with the team to help them
achieve that which they may not be able to do alone.
• Q11: While Volvo measures their cars’ greenhouse gas emissions and energy
consumption and while Ericsson measure their hardware’s heat emission, neither of
them measure any parameters when it comes to their software. All the respondents stated
that, as far as they know, there are no measurements of any parameters being recorded
when developing software and that these kinds of measurements are applied to hardware
or cars instead of software.
The above interview answers represent the empirical results of the interview process. An
analysis is then carried out on these results in order to establish commonalities and differences
between the ways of working of the companies based on the answers of the interviewees.
4.4 Analysis of the interview results
The main goal of conducting the interviews is to establish whether environmental sustainability
is being considered in the way of working for any of the software development teams within
the industry. Another goal is to find out whether these companies are interested in adopting
modifications to their way of working, specifically their software development processes, that
would yield improvements to their end products with regards to sustainability.
The empirical results of the interviews clearly show that sustainability is one of the last aspects
that are taken into account in a software development process. This is especially true if the goals
of sustainability conflict with other goals that the company may have such as economy,
expediency, and time.
Further analysis of the results of the interviews and obtained by looking for themes and patterns
in the answers to each question helped establish differences and similarities between the
companies and the teams. The following has been identified with regards to sustainability
within the industry:
• The companies had an interest in their impact on the environment. but only on a
general level:
While everyone stated that their company has sustainability in the plans, they still had
a tough time pointing out exactly how the company is carrying out sustainability in their
plans of action. Of course, there were also some differences from one company to
another. Being a company with several software products, Ericsson’s sustainability plan
was more focused on having sustainable software development. Volvo on the other hand
leans more towards making their cars and trucks have a less negative environmental
effects. HiQ is a consultancy, which means that their software is as sustainable as their
customers want it to be, even if they try to promote environmental sustainability as a
company. All of the respondents claimed that their companies follow general rules of
environmental sustainability, such as using energy saving hardware, reusing and
recycling hardware as much as possible.
• Companies do not consider their software effect on the environment and are
unaware of it.:
Due to the lack of awareness and interest from the companies developing the software
and their customers, having any parameters to measure the effect of the software on the
environment is not considered. By comparison, Volvo Cars, Volvo Trucks and Ericsson
all measure various parameters when it comes to their hardware such as heat emission,
greenhouse gas emission and energy usage. HiQ does most of their work on their
customer’s machines, therefore they do not measure any parameters. None of the above-
mentioned companies have any parameters to measure as part of the agile software
development processes.
The interview results share a similarity with the previous research found in this paper. Most
companies do in fact aim to be more sustainable in their daily work (Raspudic 2014) but they
lack the knowledge of how to make their efforts effective. For example, the interviewed
companies try to have energy saving solutions and reuse and recycle hardware, however, they
forget to concentrate on their main products, the software, or the practices around them to make
them more sustainable. The solution presented in this paper, supported by the literature review
results, can help these companies achieve their sustainability goals with their most important
products, while maximizing profits and having high quality products.
Another issue that was revealed through the interviews, which was also mentioned by Raspudic
(2014), is the fact that the main focus for most IT companies is profit, and that they will not be
convinced or encouraged to make any changes unless that change results in a higher profit.
Adapting to a new way of working, where sustainability is at the center, can be challenging
because it means the company needs to acquire the resources to help establish sustainability as
a norm. There is no denying the fact that changing the way a company works will be time
consuming and costly to say the least, but if applied the same way the GREENSOFT model,
The Karlskrona manifesto or in a combination of the mentioned methods this paper presents, it
can quickly become the normal way of working. Companies can start applying these criteria on
a smaller scale, which will surely prove to be beneficial and will lead to higher quality software.
In effect, it will be easy to promote sustainability for customers and maximize profits.
Any business in the world aims to maximize profits and gain more customers, and since
customers are how profit is generated, satisfying customers is one of the main goals for
businesses. A sustainable way of working has two direct results. The first result is maximizing
profits for the company, by making work more effective and reducing working hours on things
that may be unnecessary or that can be made more efficient, along with reducing energy
consumption as a natural result of the reduced work. The second result is minimizing costs for
the customer, while still providing them with high quality software. Avoiding time and energy
spent on unimportant tasks or tasks that can be improved in order to be done more efficiently
makes the way of working more concise and simpler, at the same time, have a less of a negative
impact on the environment. In addition, customers are more likely to encourage sustainable
software if they experienced their benefits, and the customers might be inspired themselves to
pursue a more sustainable way of working.
As mentioned before in this paper, software is one of the most important, if not the only, product
the companies interviewed provide for their customers. It is a major source of profit, making it
natural for companies to focus on the quality of their software to ensure their survival. This is
one reason why sustainability is neglected since companies are unaware of the value it will add
for the quality of their software or the contentment of their customers. However, the results of
this research show that by creating sustainable software, the quality of the software will be
improved immediately because the focus of sustainable software is directly related to how well
the software is designed, implemented, and maintained. To put it differently, sustainable
software is high quality software, therefore it should not be a difficult decision for companies
to make their software more sustainable.
The effect of sustainability extends throughout the entire lifecycle of software. It affects those
who design it, those who implement it and those who maintain it and those who use it, thus
affecting the entire company and the customers. The changes may only apply to the software
development processes, but the effects transcend the company’s limits and eventually, end up
affecting the world through their effect on the environment. It is surprising to see companies
unaware of this effect, but considering the results of this paper, it will not be long until
companies realize the importance of sustainable software, both for them and for the world.
The intention is to provide a recommended set of best practices that should be taken into account
during the planning and development phases of software which would put some focus on the
sustainability of the resulting software.
Thus, these practices serve as an answer to the second research question of this paper (e.g.
Research Question 1.2.B).
The recommended improvements that are introduced here can be divided into two categories.
The first category focuses on the planning phase of a development cycle, this would entail
discussing what can be done as part of the development processes activity, such as sprint
planning in Scrum (Rising & Janoff 2000) and replenishment modeling session in Kanban
(Esparrago 1988).
The second category focuses on the development phase. In this phase, a set of criteria can be
applied over the implementation of a software and how the code can be made sustainable
according to the criteria that was established as a result of the literature review.
• Backlog Refinement: During the refinement phase of a backlog, new stories or requests
are added and are then refined into tasks that describe the steps by which these stories
can be completed. An ideal practice in terms of sustainability would be to add an extra
task or an additional definition of done that takes into account the effect of the feature
on the environment. The team can also take into consideration whether something is
worth making into a story since each story takes time and energy to be completed.
• Sprint Review/Demonstration: When the results of a sprint are being presented to the
customers, the environmental impact of the software or feature developed can also be
mentioned in order to make customers aware of the product’s effect on the environment,
and to raise interest in sustainable software by showing the benefits of sustainability and
its effect on the customer’s products.
• Usability
What is meant with usability is for the code to be easy to read, learn, recognize and
manage. In order to have a code with these qualities, it needs to be able to reflect the
actual system that is being presented. For example, if the code is making up a library
system, it should be easy to recognize what items, such as books, are reflected in the
code variables and what operations, such as borrowing books, are reflected in the code
functions. This will make the code available for any programmer to work with it and
maintain it. This is especially important in agile development processes where the code
is revisited on a regular basis by several developers with varying levels of skills in
programming.
• High performance
High performance is directly dependent on effectiveness and efficiency, and for a code
to be efficient, it will have to be stable and durable. These attributes are acquired with
continuous improvements, which is a natural part of agile development processes. The
code needs to be tested repeatedly to see how stable and durable it is with all the
continuous changes it undergoes as part of the agile way of working. All of this will
make the code easier to maintain and modify whenever needed. It will also increase the
system’s ability to cope with larger capacities as they arise and eliminates the need to
make small changes constantly to adapt to new changes being made in other parts of the
system.
A result of high performing code is lower costs. High performing code requires less
work from the developers, which means less time spent on correcting and adapting to
new small changes made to the overall system. High performing code also requires less
powerful hardware to run. A combination of less powerful hardware and less time spent
fixing bugs and problems means lower energy costs and ultimately decreasing the
overall cost for the company and the customers. It is also worth noting that all these
results are directly related to the software having less impact on the environment.
• High quality
For a code to be considered of high quality, it needs to follow various rules, usually set
by the developers since it is related to their daily work, and eventually to the quality of
their software. Based on the attributes collected in this paper, high quality code needs
to be reusable, that is to say, it can be used in more than one place or even in more than
one software. This is part of having the code being flexible, portable and easy to adapt
to new environments. Having a code that can easily be moved from one place to another
and is easy to adapt into new software, also means that the code has high modifiability
and can be evolved into more complex functions to accommodate the customers’ ever-
changing needs. However, it is important to consider not having a complex code that
will make it difficult to understand, maintain, analyze and test.
In conclusion, high quality code is meant to make the developers’ daily work easier by
aspiring to adapt to several rules. These rules are set to refine the code continuously
which is exactly what software agile development processes helps one achieve by
revisiting the code and improving the overall functionality of the software. High quality
software is a consequential result of high-quality code and one cannot have one without
the other.
While there are certainly plenty of other ways to improve the development phase towards
sustainability, it is important to make sure that the development team members do not go out
of their daily ways of working in order to ensure sustainability. The goal is to encompass
these practices into the team’s development phase without affecting the existing process
otherwise the team is very likely to abandon these practices.
5 Threats to Validity and Management
Any study or research comes with its risks to validity. This chapter deals with the various types
of risks and threats that could arise from the research methodology, and how they are handled.
• The literature review may have skipped a number of important papers due to lack of
time of processing all related papers on the subject. This was dealt with through the
regress inclusion criteria.
• The literature review results might be summarized a bit too much in order to limit the
result section, otherwise the paper would be out of proportion.
• The literature review may have included a paper that is not peer review. All papers were
checked from the data sources to make sure that they are, but it could still happen.
• The literature review results may have included a paper that is outdated or deprecated.
This was dealt with by setting a limit on how old the research papers should be.
• The questions that were prepared for the interviews are based on the results of the
literature review, as well as the author’s own knowledge on the matter. Beyond that, it
might be possible that the questions may have skipped an important criteria or factor
that needs to be taken into account in the research. This was avoided by pilot testing,
which did result in modification of the questions, which yielded better results for later
interviews.
• The participants might not be willing to answer all questions, this was avoided by
interviewing more than one member from the same team, or different team.
• The data that was collected from the interviews might reveal information that are
sensitive to the company, this was avoided by showing all the answers of the interview
to the company and getting their permission to publish them.
However, the journey for sustainable software development is long for a list of reasons. One of
these reasons, and it is probably the most important reason of al, is that of resources and profit.
Companies in general, IT companies included, have only recently started to try and adapt to a
more environmentally friendly way of work because the concept of environmental concern is
still relatively new, and while companies are focusing on it, they may still be lacking the
knowledge and tools that can help transform their entire work routines to be sustainable. In
order to adapt entirely to a sustainable way of working, companies will need to have the
resources to train their employees, and companies may not have the motivation to spend their
funds on something as trivial as sustainability since they do not see the benefit of it.
Companies need to be encouraged to adapt a sustainable way of working, and this can be done
if companies learned of the financial benefits of sustainability. An increase in profits of a
decrease of costs can steer the company’s and the customer’s interest towards sustainability.
How that can be done in software development is through embedding sustainability criteria into
the company’s way of working. More specifically, into the way software is being developed.
Agile is a relatively new way to develop software (The Agile Manifesto 2001) where the focus
is on software that can adapt to changes throughout the entire development processes. Scrum
and Kanban are two of the most used processes in agile software development. Since Agile
processes focus on the ability to adapt and change over time, it makes them perfect candidates
to adopt sustainable software development. Scrum and Kanban can be made sustainable through
a set of criteria that can be applied to their activities and development.
The activities included in Scrum and Kanban such as sprint planning and backlog refinement
can be adjusted to include sustainable aspects where the environmental effect of each story or
task can be discussed and reduced, to help make clearer stories and tasks that are also easier to
implement since sustainability supports efficient development. The development part of the
aforementioned agile processes can also be made sustainable by applying some coding rules
such as flexibility and efficiency. A flexible code will enable developers to reuse it and modify
it for instance, while an efficient code will run faster and help reduce the time and energy
consumed to run the software, leading to reduced costs and pleased customers.
In conclusion, sustainability is far more important than the IT fields considers it to be, but it is
the lack of awareness that is a setback for it to become a central aspect of software development.
Although it can be difficult to implement sustainable software development processes at first,
it will be advantageous in the long run to develop sustainable software sustainably because it
will come at a lower price and with a higher quality. Finally, the possibility of developing
sustainable software through agile processes exists and is not far-fetched, but it only requires
time for sustainability to be normalized into IT companies.
A study that tests the implementation of the results of this research can be of interest for those
interested in green software development and can be beneficial for companies striving to reduce
their carbon footprint and the costs of software development. Other studies can be carried out
to discover more specific criteria for a specific software development processes, or a specific
company and that company’s way of working.
There are many ways to expand the research towards green software development and to
explore the results of this study towards different levels, including software development
processes, ways of working, specific companies or teams, and even specific development
languages. Sustainable IT can and should be delved into since it will be inevitable at some point
in the future and software development will be difficult, or even impossible without it being
sustainable.
7 References
Agile Manifesto (2001). The agile manifesto. https://agilemanifesto.org/ [2019-05-03].
Avison, D. E., Lau, F., Myers M. D. & Nielsen, P. A. (1999). Action research. Commun. ACM,
42(1):94–97. doi: 10.1145/291469.291479
Bener, A. B. & Miranskyy, A. (2014). Deploying and provisioning green software. IEEE
Software. 31(3), pp.76–78. doi: 10.1109/MS.2014.59
Bener, A. B., Morisio, M. & Miranskyy, A. (2014). Green software. IEEE Software. 31 (3),
pp.36–39. doi: 10.1109/MS.2014.62
Bose, R. & Luo, X. (2011). Integrative framework for assessing firms’ potential to undertake
Green IT initiatives via virtualization – A theoretical perspective. Journal of Strategic
Information Systems, 20(1), pp.38–54. doi: 10.1016/j.jsis.2011.01.003
Brooks, S., Wang, X. & Sarker, S. (2012). Unpacking Green IS: A review of the existing
literature and directions for the future. Green Business Process Management: Towards the
Sustainable Enterprise. Springer-Verlag Berlin Heidelberg. pp. 15–37. doi: 10.1007/978-3-
642-27488-6_2
Esparrago, R. (1988). Kanban. Production and Inventory Management Journal. 29 (1), pp.6-
10.
Estdale, J. & Georgiadou, E. (2018). Applying the ISO/IEC 25010 quality models to software
product. Communications in Computer and Information Science. Springer Verlag. pp. 492–
503. doi: 10.1007/978-3-319-97925-0_42
Gregor, S. & Jones, D. (2007). The anatomy of a design theory. Journal of the Association of
Information Systems, 8(5), pp.312–335.
Guest, G., Macqueen, K. & Namey, E. (2011). Applied thematic analysis. SAGE Publications.
Kern, E., Dick, M., Naumann, S. & Hiller, T. (2015). Impacts of software and its engineering
on the carbon footprint of ICT. Environmental Impact Assessment Review. pp.52, 53–61. doi:
10.1016/j.eiar.2014.07.003
Mills, A. J., Durepos, G. & Wiebe, E. (2010). Encyclopedia of case study research, volumes I
and II. Thousand Oaks, CA: Sage. doi: 10.4135/9781412957397
Rising, L. & Janoff, N. S. (2000). The scrum software development process for small teams.
IEEE Software.17 (4), pp.26–32. doi: 10.1109/52.854065
Jones, A. R. & Mingay, S. (2008). Executive summary: going green: The CIO’s role in
enterprisewide environmental sustainability, Gartner Exp Premier.
Moe, N. B., Dingsøyr, T. & Dybå, T. (2010). A teamwork model for understanding an agile
team: A case study of a scrum project. Information and Software Technology. 52(5), pp.480–
491. doi: 10.1016/j.infsof.2009.11.004
Molla, A., Cooper, V., Corbitt, B., Deng, H., Peszynski, K., Pittayachawan, S. & Teoh, S.
(2008). E-Readiness to G-Readiness: Developing a Green Information Technology Readiness
Framework. ACIS 2008 Proceedings. 35, pp. 669-678.
Naumann, S., Dick, M., Kern, E. & Johann, T. (2011). The GREENSOFT Model: A reference
model for green and sustainable software and its engineering. Sustainable Computing:
Informatics and Systems. 1(4), pp.294–304. doi: 10.1016/j.suscom.2011.06.004
Piccoli, G. (2008). Information systems for managers: Texts & cases. Wiley & Sons.
Rasmussen, N. (2006) Implementing energy efficient data centres. APC White Paper. (114).
Schmidt, R., Cruz, E. & Iyengar, M. (2005). Challenges of data center thermal management.
IBM Journal of Research and Development, 49(4-5), pp.709–723.
Seidel, S., Recker, J. & Vom Brocke, J. (2013). Sensemaking and sustainable practicing
functional affordances of information systems in green transformations. Management
Information Systems: Mis Quarterly, 37(4), pp.1275–1299.
Venters, C. C, Capilla, R., Betz, S., Penzenstadler, B., Crick, T., Crouch, S., Nakagawa, E. Y.,
Becker, C. & Carrillo, C. (2018). Software sustainability: Research and practice from a
software architecture viewpoint. The Journal of Systems & Software, 138 (C), 174–188. doi:
10.1016/j.jss.2017.12.026
Vom Brocke, J., Seidel, S., Loos, P. & Watson, R. T. (2013). Green IS. Business &
Information Systems Engineering, 5(5), pp. 295-297. doi: 10.1007/s12599-013-0288-y
Watson, R.T., Boudreau, M.C. & Chen, A.J. (2010). Information systems and environmentally
sustainable development: Energy informatics and new directions for the IS community. MIS
Quarterly, 34(1), pp. 23–38.
På sektionen för informationsteknologi har vi tagit fasta på studenternas framtida behov. Därför har vi
skapat utbildningar där anställningsbarhet är ett nyckelord. Ämnesintegration, helhet och sammanhang är
andra viktiga begrepp. På sektionen råder en närhet, såväl mellan studenter och lärare som mellan företag
och utbildning.
Våra utbildningar med huvudområdet informatik är centrerade kring grundläggande begrepp som
systemutveckling och verksamhetsutveckling. Inom vårt breda spektrum av inriktningar finns allt ifrån att
programmera avancerade system, analysera behov och krav på verksamheter, till att bedriva integrerad IT-
och affärsutveckling, dock med gemensamt syfte att verka för god IT-användning i företag och
organisationer.
Vid sektionen bedrivs IT-relaterad forskning inom högskolans forskningsområde Handel & IT.
Forskningsverksamheten är huvudsakligen ämnesmässigt inom datavetenskap respektive
systemvetenskap. Speciella fokusområden är data science respektive information systems science.
Forskningen är både vetenskapligt och professions-orienterad, vilket bland annat tar sig uttryck i att
forskningen i många fall bedrivs med grund i domänspecifika verksamhetsbehov, med företag och offentliga
organisationer på lokal, nationell och internationell arena. Forskningens professionsinriktning manifesteras
också ofta genom vår delaktighet i Swedish Institute for Innovative Retailing (SIIR), som är en
centrumbildning vid Högskolan med syfte att bidra till handelsföretag och det omgivande samhället med
utveckling av innovativ och hållbar handel.