<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>Systems re-design for sustainability: PetShop Case study</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Nguyet Nguyena</string-name>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Ruzanna Chitchyan</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Department of Computer Science, University of Bristol</institution>
          ,
          <addr-line>Bristol</addr-line>
          ,
          <country country="UK">UK</country>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>Department of Computer Science, University of Leicester</institution>
          ,
          <addr-line>Leicester</addr-line>
          ,
          <country country="UK">UK</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>-Recognition of the critical role of software in promoting and maintaining sustainability has been emerging recently. Yet, over the last 60 years a vast amount of software has been developed and deployed without any consideration of sustainability. This paper presents a case study on how relevant sustainability requirements have been identified (using goal-oriented techniques) and integrated into an existing software design and implementation. It also discusses metrics used for evaluation of the sustainability effects of the new design. The evaluation of this study demonstrates that the re-designed software is both more extendable and more sustainable. Thus, this paper presents an example process and case study for undertaking sustainability-centred software re-design, as well as reports on a number of trade-offs and interdependencies between the studied sustainability requirements.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>I. INTRODUCTION</title>
      <p>
        While integration of ICT into business models and
processes has a well-documented economic benefit, the
environmental and social aspects of its’ impact are less
clear-cut. For instance, while some e-businesses, such
as eBay, encourage reuse of physical goods, they can
also cause over consumption [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ] as well as bankrupt
local producers and retailers, in turn dulling out the
vibrancy of local cultures. Hence, it is evident that, in
order to support long-term sustainability, such
sustainability requirements must become an integral part of
each software system. However, software engineers have
still to understand what sustainability requirements are
and how would they impact the software development
process and product.
      </p>
      <p>
        In this paper we present a case study of such
requirements and the effects they have on an e-shop business
for selling pets (called PetShop). The aim of this study
is in determining how retrofitting sustainability into an
existent system will affect that system. Following [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ]
we consider an activity sustainable if it’s “direct and
indirect negative impacts on economy, society, human
beings, and environment ... are minimal and/or which
has a positive effect ...” Through the PetShop case
study we explore what minimising such impact will
imply for the requirements, design, and operation of
the resultant software. The findings from this case study
demonstrate that there is an ever present tension between
the three “pillars” of sustainability (i.e., its
environmental, economic, and social) as they are perceived today.
This is because economic sustainability for a business
supported via software aims to increase consumption,
while environmental sustainability aims to reduce it. The
social sustainability, in turn, is in conflict with itself
aiming at both increased, faster, and more convenient
consumption available to all and vibrant, un-spoiled
natural environment at the same time.
      </p>
      <p>
        We also present a process for identification of
sustainability-related requirements and evaluation
methods and metrics for some aspects of the economic and
environmental sustainability requirements identified in
this case study. Throughout this study we use the relevant
consolidated research on sustainability undertaken so far
in the software engineering community and extend it
where open issues are identified. In particular (similar
to [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ] and [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ], we use goal-oriented technique during
requirement engineering to identify relevant
sustainability requirements. The effect of the newly integrated
requirements on the sustainability of the system is then
measured using CO2 emissions [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ] (as outlined in III-B).
      </p>
      <p>Since the present study aims at consolidating the
relevant research of software engineering for sustainability,
we must start by reviewing this research:</p>
      <sec id="sec-1-1">
        <title>A. Requirements Engineering for Sustainability</title>
        <p>
          Naumann et al. [
          <xref ref-type="bibr" rid="ref6">6</xref>
          ] propose GREENSOFT - a generic
process model to study the possible causes, effects, and
processes in achieving sustainability goals. This model
mandates a strict relationship between sustainability
tasks and software lifecycle, stating the need to observe
first, second, and third-order effects in software
development and use. For example, in software engineering,
the 1st order environmental impacts can result from
electricity consumed for software development. This can
be monitored via power consumption of devices. On the
other hand, working conditions impact more indirectly
on social values that could be evaluated via interviews
and be measured e.g., via employee satisfaction
levels. This work provides an overall framework on how
sustainability tasks could relate to software engineering
process, but currently lack the necessary substantial body
of empirical evidence to exemplify its use in practice.
        </p>
        <p>
          Cabot et al. [
          <xref ref-type="bibr" rid="ref3">3</xref>
          ] illustrate how sustainability
requirements are integrated in the early stages of development
through Goal-Oriented techniques in order to consider
the impact of alternative decisions about conference
organisation on the eco-footprint of the event (e.g.,
printed vs. electronic proceedings). They aim at
development of a generic sustainability taxonomy without
focusing on quantifying the requirements impact (except
via help/hurt contributions within the goal model).
        </p>
        <p>
          The Yellow project [
          <xref ref-type="bibr" rid="ref4">4</xref>
          ] presents a mix of requirements
engineering techniques for elicitation and analysis of
sustainability requirements for an event management
system. This work emphasises the effect of stakeholders’
(i.e., board members, project managers, technical
managers and environmental champions, etc.) perspectives
on both functional and non-functional requirements and
proposes a process to produce a complete goal model
with detailed requirements. It also considers the positive
and negative inter-dependencies between sustainability
requirements for the given system, but does not
propagate the study to design, implementation, or evaluation.
        </p>
      </sec>
      <sec id="sec-1-2">
        <title>B. Sustainability and e-Business Domain</title>
        <p>
          We consider [
          <xref ref-type="bibr" rid="ref7">7</xref>
          ] a particularly relevant work to our
study as it focuses on the specificities of green
ebusiness, for which our selected case study is an
example. Here a number of key factors for a green e-business
are pinpointed, including:
“Inform and Promote” through which e-business
takes advantages of saving cost and transportation
over advertising via papers;
“Present and Offer” allows customer to browse and
select purchases online instead of through paper
catalogue or in store, which helps to reduce cost
for storage and transportation of goods, as well as
energy consumption for maintaining warehouses;
“Select and Order” tends to improve environment
by using secure email for negotiation instead of
papers;
“Trust and Pay” focuses on the reliability in
payment process;
“Deliver and Trace” allows users to monitor current
state and location of the purchased item, as well as
considers the delivery impact itself;
“Customer Relationship Management” focuses on
social sustainability, which tends to improve
customer satisfaction.
        </p>
        <p>
          The idea that e-business is conducive to sustainability
is also advocated in [
          <xref ref-type="bibr" rid="ref8">8</xref>
          ], where the authors note that
the development of such technologies as cloud
computing, mobile communications and social media helps to
advance sustainability of a business and contributes to
societal development.
        </p>
      </sec>
      <sec id="sec-1-3">
        <title>C. Measuring Impact of Sustainability Requirements</title>
        <p>In order to measure the impact of
sustainabilityrelated requirements of the engineered system, one needs
to utilize some evaluation metrics. Here two distinct
perspectives can be adopted: one focusing on the
sustainability of software itself (i.e., software quality), the
other on the impact that this software has on the broader
environment (ecologic, economic, and social) within
which it is situated. The prime interest of this study is in
broader impact of the software system.The present study
aims to utilise the pre-existing metrics to the highest
possible degree, only providing additional metrics where,
to the best of our knowledge, no previous metric exists.</p>
        <p>
          When evaluating the impact of the software on the
business and its wider environment, the related work
suggests focusing on the system effects in terms of
energy consumption or CO2 emission. For instance, [
          <xref ref-type="bibr" rid="ref7">7</xref>
          ]
suggests a conversion factor between gasoline, CO2 and
energy consumption; [
          <xref ref-type="bibr" rid="ref9">9</xref>
          ] points out the linear
relationship between CPU usage and power consumption. And
[
          <xref ref-type="bibr" rid="ref5">5</xref>
          ] provides a detailed reference on carbon footprint
measurement for a multitude of products and
activities, ranging from purchase of a banana, to sending
SMS, etc. We utilise the estimates from [
          <xref ref-type="bibr" rid="ref7">7</xref>
          ] and [
          <xref ref-type="bibr" rid="ref5">5</xref>
          ] as
reference measures in evaluation of the impact of the
environmental and economic requirements in terms of
the amount of energy consumption. However, impact of
the requirements related to social sustainability is much
more difficult to evaluate. Some such requirements need
a long verification time, as their effects will surface only
on future generations (Korte et al. [
          <xref ref-type="bibr" rid="ref8">8</xref>
          ]), others require
access to system users. Since the system in our case
study is not in real use, we have no means of collecting
data for evolution of its social sustainability effects.
Thus, although a number of social sustainability
requirements are identified and discussed in this study, we do
not conduct evaluation of system’s social sustainability
impact.
        </p>
        <p>Thus, the contributions of this paper can be
summarised as:
1) presentation of an end-to-end re-engineering study
where sustainability requirements are identified,
implemented for a pre-existing system, and
evaluated;
2) presentation of a set of metrics suitable for
quantification of environmental sustainability in
requirements;
3) demonstration of the measurement process of
environmental sustainability requirements of a
software system;
4) demonstration of the application of the
consolidated research on software engineering for
sustainability.</p>
        <p>Next, Section II of this paper presents the Pet Shop
case study. It is followed by discussion of the methods
and metrics used in this study in Section III. The
sustainability requirements and their mutual dependencies
and contributions to environmental impact are discussed
in Section IV. The details on the actual and expected
impact due to system re-engineering are presented in
Section V. We then discuss several points relevant to
this study in Section VI.</p>
      </sec>
    </sec>
    <sec id="sec-2">
      <title>II. OVERVIEW OF THE PETSHOP APPLICATION</title>
      <p>
        Java Pet Store 2.0 is a Reference Application [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ]
provided by Sun Microsystem as a demonstrator for
J2EE. It is a web application that allows customers
to search, buy, and sell animals online. Several factors
were considered in choosing this application for our case
study. Firstly, as noted above, e-business is becoming
an increasingly widespread medium of business conduct
with an ever larger portion of transactions undertaken
over the internet, which makes this domain worthy of
attention. Secondly, as a reference application provided
by Sun, Pet Store should minimise (and ideally avoid)
any potential findings caused by poor system design or
inappropriate use of programming language. Finally, the
application is freely available to general public, in case
others wish to replicate or extend out study.
      </p>
      <p>The Pet Store application provides basic e-shop
functionality without concerning the sustainability
requirements. The supported functionality is shown with white
and yellow coloured use cases in Figure 1 (use cases in
red are to be discussed later). The Pet Store
documentation states that:</p>
      <p>Seller can upload information on a pet (including its
name, description, price, image and seller’s contact
information) to a specific category. The seller’s
contact requires last name, first name and address.
An image thumbnail will be created corresponding
to the uploaded image;
Seller can tag an item;
Web user can locate items by choosing category or
searching them by tags, location or keywords;
When viewing an item, web user can also rate it in
range from 1-5.</p>
      <p>Web user can set an item as inappropriate;</p>
    </sec>
    <sec id="sec-3">
      <title>Buyer can buy one item at a time;</title>
      <p>The application can get and show RSS news of Java
Blueprint on the top of the page;
The application assumes that there is an existing list
of categories with their appropriate images such as
“Cats”, “Dogs”, etc. Besides, each category has a
list of products with their appropriate image such
as “Medium Dogs”, “Small Dogs”, etc. An item is
categorised according to products.</p>
      <p>As shown in Figure 1, three types of actors are
distinguished:</p>
      <p>A viewer, who is an ordinary web user and can
access the PetStore site;
A member is a viewer who has signed up and
logged in into the system;
A manager administrates the PetStore application.
Manager has some unique behaviour, e.g., creating
and viewing reports (as defined in Figure 1) but also
has the same access and use rights as a member.</p>
      <p>The colour of use cases in Figure 1 is used to
distinguish the originally defined and modified use cases:
use cases which have been defined in the original
system and remained unchanged throughout the
below discussed system re-design are not coloured
(i.e., are white);
the yellow use cases were defined in the original use
case model, but their behaviours had to be changed
due to the newly defined activities/requirements for
improved sustainability;
the red cases are the newly defined use cases, that
are to be discussed in following sub-sections.</p>
    </sec>
    <sec id="sec-4">
      <title>III. METHODOLOGY AND METRICS</title>
      <p>In order to undertake the intended system re-design
study, we must define a process for relevant requirements
identification as well as a mechanism for comparing the
updated and original versions of the system. These are
outlined in the following sub-sections.</p>
      <sec id="sec-4-1">
        <title>A. Requirements identification and modelling</title>
        <p>
          As discussed previously, a number of researchers ([
          <xref ref-type="bibr" rid="ref3">3</xref>
          ],
[
          <xref ref-type="bibr" rid="ref4">4</xref>
          ]) describe successful use of goal-oriented technique
for identification of sustainability requirements.
Following their lead, we too utilise this approach. This is
particularly suitable for our case study as it involves
re-designing an existing application, where the other
goals of the application are already defined. Unlike
the cases of customer-commissioned systems, for the
purposes of this case study, we have no direct access to
those commissioning the PetStore system. Thus, instead
we rely on the goal decomposition structures that have
emerged from the relevant previous studies, i.e., the key
drivers for e-business success discussed in [
          <xref ref-type="bibr" rid="ref7">7</xref>
          ] that are
directly relevant to economic, social, and environmental
sustainability, as well as the reduce-reuse-recycle goal
set aimed at environmental sustainability derived by [
          <xref ref-type="bibr" rid="ref3">3</xref>
          ].
        </p>
        <p>Using these generic goal structures as starting point,
we instantiated them within the context of the PetStore
application and operationalised them into tasks. These
tasks (also shown as red and yellow use cases in Figure
1) have then been integrated into the updated system
design and implementation.</p>
        <p>
          To represent the goal decomposition and contribution
models, we use the i* language to capture the context
as well as relationships between sustainability and other
system goals [
          <xref ref-type="bibr" rid="ref11">11</xref>
          ], as i* is particularly effective in
modelling the problem domain in the early stages1. Moreover
with i* we can model both hard (i.e., functional) and soft
(i.e., non-functional) goal structures, as well as represent
the links between goals and their respective actors - all
of which is useful for the present study.
        </p>
      </sec>
      <sec id="sec-4-2">
        <title>B. Metrics</title>
        <p>As pointed out above, our prime interest is in
studying how consideration of sustainability requirements in
a software system impacts the sustainability, i.e., the
broader (ecologic, economic, social) environment within
which the software system is located. Thus, we are
interested in measuring environmental impact (i.e., impact
achieved due to use of software) in terms of emissions.</p>
      </sec>
      <sec id="sec-4-3">
        <title>1) Measuring Environmental Impact: The environ</title>
        <p>mental impact of the re-design of the system can be
measured by comparing its CO2 emissions to emissions
from the original system.</p>
        <p>In particular, it can be estimated using the two
following facts:</p>
        <p>
          1) Fact 1: The amount of CO2 emitted (CO2e) for
a unit of electricity from UK grid2 is about 600g [
          <xref ref-type="bibr" rid="ref5">5</xref>
          ].
This includes both direct emissions (i.e., from power
generation per unit consumed), and indirect emissions
(i.e., including the carbon cost of extracting fuel from
ground, maintaining the buildings for the power stations,
producing wind turbines, etc.).
        </p>
        <p>2) Fact 2: Empirical measurement of power use with
various types of servers has demonstrated a stable linear
1We used UML for later stages or detailed design.</p>
        <p>
          2It is worth noting that this emissions number is very
countryspecific, ranging from 60g. for Iceland to 1060g for Australia. The
exact value depends on the fuel mix used by the given country’s
grid with Iceland using only natural geo-thermal sources where other
countries use a mix of sources, such as fossil fuels (oil, gas, and coal),
nuclear power, renewable, etc.
relation (accurate to within 5%) across all CPU
utilization rates [
          <xref ref-type="bibr" rid="ref12">12</xref>
          ]. This relation is shown in the equation
below, stating that the energy consumed by a CPU for
a particular task (Px) is made up by the sum of the
amount of energy the CPU consumes in idle state (Pmin)
and the CPU utilisation rate (x as percentage) times
the difference between its idle and fully occupied state
(Pmax-Pmin) divided by 100:
        </p>
        <p>Px = Pmin + x*(Pmax-Pmin)/100
Where :
Px: Power consumption for x%CPU (watt)
Pmin : energy consumption in idle state (watt)
Pmax: energy consumption for 100% CPU usage
(watt)</p>
        <p>
          For example (as per [
          <xref ref-type="bibr" rid="ref12">12</xref>
          ], if a server has a maximum
power draw of 300 watts (W) and an idle power draw
of 200W, then at 5% utilization the power draw would
approximate to: Power Utilization at 5% = (300 - 200)
* 5/100 + 200 =100 * 0.05 + 200 =205W
        </p>
        <p>Thus, the [x*(Pmax-Pmin)/100] component in the
above equation marks out the additional energy used
for the completion of a given task (on top of the idle
state consumption). Since, as per Fact 1, each unit of
electricity from the UK grid produces 600g of CO2e ,
the CO2e for a task (COx) can be calculated in kilograms
per Watt as:</p>
        <p>COx = 0.6 * (Px - Pmin) = 0.6 * x*(Pmax-Pmin)/100
= 0.006*(Pmax-Pmin) *x</p>
        <p>To account for the duration of a given task, this
formula needs to be further adjusted for the time. Thus,
the emissions (in kilograms per Watt) for a task with a
given duration in seconds (Tx) will be calculated as:
Tx = COx*3600/ Caverage seconds
Where:</p>
        <p>Caverage is the average CO2 emission (CO2e) in
kilograms per hour</p>
        <p>COx is CO2e (in kilograms per Watt) for doing the
task.</p>
      </sec>
      <sec id="sec-4-4">
        <title>2) Implementation of Metrics Data Collection Frame</title>
        <p>work: In order to utilise the above discussed metrics, the
study needs to collect the relevant data. Data for
environmental sustainability requirements is to be evaluated
based on CO2 emission and task processing time. CO2
emission for a task is measured as Cx =
0.006*(PmaxPmin)*x. And the appropriate processing time for a task
is approximately Cexp*3600/ Caverage seconds in which
Cexp is the expected CO2 emission and Caverage is
defined according to testing system.</p>
        <p>
          Therefore, to collect data for measurement of per-task
emissions, CPU usage on server side and processing time
on client side should be monitor throughout processing
of a given task. The data collection set up is illustrated in
Figure 2. For the present case study, a Java application
was implemented using Sigar library [
          <xref ref-type="bibr" rid="ref13">13</xref>
          ] to get the
CPU percentage of server use during a given task. The
application records the data into a log file on server side.
        </p>
        <p>
          On the client side, we use the Firebug [
          <xref ref-type="bibr" rid="ref14">14</xref>
          ] tool to
log the data on the network transport, including number
of requests, total size, total of loading times, processing
time per request, in a HAR file. This is used to obtain
the processing time of a given task (Tx).
        </p>
        <p>Fig. 2. Data collection setup for Pet Shop</p>
        <p>We use black box testing to verify the implementation
of our re-design for sustainability by defining a test
scenario for a task to be evaluated, recording the Cx and
Tx for each task in both original and updated versions,
and comparing these. Where a task to be evaluated is not
supported by the original version of the system, the data
on updated system is compared against an impact value
obtained from an alternative buy comparable way of
conducting the required task without the system support
(further discussed for each relevant task in section IV).</p>
        <p>IV. SUSTAINABILITY GOAL ANALYSIS FOR PET</p>
        <p>SHOP APPLICATION</p>
        <p>Having outlined the goal-based analysis process and
metrics to be used for case study evaluation, we now
present the decomposition and operationalisation
analysis of sustainability goals. Since the combination of all
goal models on sustainability generates quite a large and
complex picture of requirements, below we introduce
the three sustainability views one at a time. For each
of the discussed views the task operationalisations are
also discussed in terms of their expected environmental
impact.</p>
        <p>In economic sustainability view the emphasis is on
two main goals: increasing profit and reducing cost.</p>
        <p>Figure 3 demonstrates the decomposition and
operationalisation of these two goals.</p>
        <p>For e-business such as PetStore application, one of
the most important factors supporting its’ economic
sustainability is the number of users accessing the website
(shown as “Increase Number of Users” goal in Figure 4).</p>
        <p>
          In other words, the more users use the website, the more
potential benefits it will achieve. In accordance with [
          <xref ref-type="bibr" rid="ref7">7</xref>
          ],
this goal can be achieved via clear information presented
on the site, good usability, support and performance of
the site, all of which are depicted via the goal
contributions in Figure 4. Some other core goals related to cost
reduction are, for instance, decreasing maintenance costs
and reusing materials. Figure 4 shows several tasks (in
green) aimed at operationalisation of the discussed goals
(such as manage offers, manage orders, etc.), which are
discussed below:
        </p>
        <p>Manage offers task allows sellers to
view/add/remove/edit their uploaded pet items. The
current system allows only uploading information,
without support for further review and change to the
uploaded content. This is an obvious shortcoming
in terms of system usability for clear information
presentation to the seller. With the additional
functionality to mange the sale items, a seller can
track the status of his/her items, change and upkeep
sale details. This also helps to reduce website support
cost: instead of the seller sending change requests to
the site administrator, he/she can make the necessary
changes by him/herself. The contribution chain of this
task is depicted in Figure 4.</p>
        <p>Sustainability impact measurement: In the original
version of the system, where this option was absent,
whenever a seller needed to make a change (e.g., change
name or price of the offered item), he/she had to send an
email to the system requests, asking the administrator to
make the change. After receiving the email, the
administrator would browse for the specified item and apply
the requested change. Therefore, to improve system’s
impact, the CO2e for making a change (Cx) with the
updated version of the system should be less than the
sum of CO2e caused by a i) sending a change request
email and ii) carrying out the change by the admin.</p>
        <p>
          According to Berners-Lee [
          <xref ref-type="bibr" rid="ref5">5</xref>
          ]:
a single (non-spam) email costs about 4g of CO2e
(including sending, filtering and reading);
CO2e of a web search on the local network and host
server is about 0.05g
CO2e of systems’ hardware required for a web
search reaches up to 0.35g per search.
        </p>
        <p>
          Let’s assume (for simplicity) that the only difference
in handling the change in the original and updated
systems are in sending email for administrator to make the
change vs. doing a web search to implement the change
in person by the seller (after which both sides will
presumably use the same web interface to carry out the
change). Then, to improve the system’s environmental
impact, Cx for seller should be less than 3.6g (i.e., 4g.
i.e. (0.05g+0.35g)). Moreover, as an average user takes
about 30 seconds to search, wait and scan the result from
the web search [
          <xref ref-type="bibr" rid="ref5">5</xref>
          ], Tx must be less than 30 seconds.
        </p>
        <p>Manage orders task allows buyer to
view/add/remove/buy pet items. With the original
Tx should be less than spent while using the original
version.</p>
        <p>Add guideline task assists customers in understanding
how to use the web application. The guidelines are
provided by the site Manager. This task helps to ease
the site use via clear information presentation, which is
conducive of user number increase. The task
contributions are shown in Figure 6.
system a buyer can buy only one item per transaction.</p>
        <p>The extended system will allow the buyer to reserve
several items while shopping, and then process the
payment for all reserved items at once. For multi-item Fig. 6. Task: Add guidelines
purchases, this update will both reduce the need of
repeated data exchange and payment processing between Sustainability impact measurement: this task will
inthe customers and server, and make shopping process crease the environmental impact of the system by the
easier. As shown in Figure 5 below, this change should value of CO2e for web search and review of the help
result in reduced energy consumption (due to reduction pages, but will decrease the emissions by the value of
in payment request processing). On the other side, we incorrect system use (e.g., mistakes in sale uploads and
observe a negative contribution between the “increase related correction requests, etc.). The net impact value
number of users” and the “decrease data transfer” goals. of this task is very dependent on the help content and
However, this is unavoidable as attracting more users system use patterns.
will lead to the need to process more data. This tradeoff Inform by email task informs the corresponding
buymust be resolved through discussion with the owners of ers and sellers on the payment processing success or
the system. failure. This is a necessary function to build the users’</p>
        <p>This task can be operationalized via addition of “Add trust in the business’ service. The impact of the task
to cart” and “Card” links to the system. is two-fold: it increases the perceived reliability of the</p>
        <p>Add to Card allows buyers to add item to a cart. The web application, but also increases CO2e emissions due
item is marked as “Booked”. to extra emails. The contribution chain for this task is
Cart link allows buyer to view/remove/buy items. shown in Figure 7 below.</p>
        <p>Sustainability impact measurement: the original ver- Sustainability impact measurement: this task will
insion of the system supports only buying one item at one crease the environmental impact of the system by the
time. To improve sustainability, the updated system must, value of CO2e of an email for each purchase. On the
at least, deliver the same performance, as use of the cart other hand, the improved trust into the system by users
will, at minimum, improve the shopping experience (i.e., is not easy to measure, especially in the present case
social sustainability). This means that the CO2e and time study where the system is not in actual use.
processing for buying a single item in updated system Online support task provides quick on-line help to
must not be greater than that of the original version. the customers, improving their shopping experience.
Moreover, the summative power and time consumption However, this will negatively affect the application
perfor buying n items at once has to be less than that of formance due to use of real-time technology, which also
buying n items one-by-one. This means that Cx should increases energy consumption. Besides, the real-time
be less than one caused by the original version and support leads to additional costs required for continuous
presence of an employee to provide the requested help.</p>
        <p>The contributions for this goal are shown in Figure 8
below.</p>
        <p>Add comments task allows users to add comments
to each pet’s items or to news items. This is a
mechanism for user-initiated discussions as well as mutual
support/help between Pet Shop customers with regards
to specific items. This will improve shopping experience,
make the website more interactive, as well as more
socially inclusive (and so, more socially sustainable).</p>
        <p>On the other hand, the energy consumption for data
exchange and storage will increase, as shown in Figure
9 below.</p>
        <p>This task can be operationalised via addition
of the “Comments” option that allows users to
add/edit/remove their comments for each item.</p>
        <p>
          Sustainability impact measurement: Although this
function increases CO2e due to posting on the web
site, it is also very useful in attracting more users
and supporting community. On the other hand, it can
indirectly support users’ query resolution. In absence
of comments, an email has to be sent for each query
(e.g., to administrators, or sellers) with the cost of 4g
CO2e per email, out of which 0.4g CO2e is caused by
the internet infrastructure [
          <xref ref-type="bibr" rid="ref5">5</xref>
          ]. Thus, CO2e for posting
a comment (Cx) must be less than 3.6g (i.e., 4g - 0.4g
as comments too use web infrastructure). Moreover, the
comments function displays the posted comments on the
web site right after a member submits it, which is similar
to the process of sending, receiving and reading an email.
        </p>
        <p>
          Thus, Tx should be less than 30 seconds (which is that
spent for sending, receiving, and reading an email as per
[
          <xref ref-type="bibr" rid="ref5">5</xref>
          ]).
        </p>
      </sec>
      <sec id="sec-4-5">
        <title>B. Environmental sustainability</title>
        <p>
          For environmental sustainability we also adopt the
overall “reduce-reuse-recycle” perspective advocated by
Cabot et al.[
          <xref ref-type="bibr" rid="ref3">3</xref>
          ], as, reuse and recycling of already
produced goods economises on the need for new
production, while reduction of resource consumption supports
longer-term availability of restricted resources as well
as reduces the overall impact (emissions, extraction, soil
degradation, etc.) of resource overuse.
        </p>
        <p>In context of PetStore application, reuse and recycling
of other products made for pets and pet owners (e.g.,
carrier cases, accessories, etc.) were considered. Figure
10 presents the goal contributions identified for the
environmental sustainability of the Pet Store, with a
number of tasks operationalisations discussed below.</p>
        <p>View distance and Find shortest path tasks aim at
reducing pollution caused due to transportation. View
distance shows the direct-line distance between user’s given
location and the location of the item-to-be-purchased.
Find shortest path provides travel directions for the route
between these points. These functions are useful for both
buyers and the Pet Shop business. The buyers may be
choosing to purchase in environmentally-friendly way
(with transportation emissions in mind), or planning on
collecting items in person. The Pet Store will also use
this for choosing their delivery and/or collection routes.
The contribution structure of this task to the goals is
shown in Figure 11.</p>
        <p>This task can be operationalised via addition of the
“View Distance” option.</p>
      </sec>
      <sec id="sec-4-6">
        <title>Sustainability impact measurement: As a single search</title>
        <p>
          causes about 0.7 CO2e which includes 0.1g for
searching, waiting and scanning results, Cx for this task should
be less than three searches, i.e., 3*0.6g = 1.8 g.[
          <xref ref-type="bibr" rid="ref5">5</xref>
          ].
This is because a similar search can be done by e.g.,
using AA route planner, but only after an additional
search for finding such a route planning site. So, adding
this functionality should be better than finding the same
service via an extra web search. Which means: one
search for finding the link to a given page, then loading
it, typing in the start and end points for the travel and,
finally, loading the suggested route page. In other words,
Tx has to be less than 3*0.6*3600/ Caverage seconds .
        </p>
        <p>Add category and Add product tasks allow for the
PetStore to sell not only pets but also related pet
products. In practice, when a user sells a pet, he/she
often wants to sell the pet’s accessories as well. This
functionality then helps to reuse/re-sell pet products.
The original application supports selling pets only. Thus,
this functionality helps in both reusing items (reducing
emissions for new item production and improving
environmental impact) and in extending the business to other
related markets, which attracts more users and improves
profits for the business, which is shown in Figure 12
below.</p>
        <p>These tasks are operationalised by providing the “Add
Category” and “Add Product” options for new
categories and products respectively.</p>
        <p>Manage donations task allows the seller to donate the
pets and/or items to a particular charity. If this option
is used, the Pet Store will receive payment from the
buyer purchasing the donated item and transfer it to the
charity selected by the seller. This will not only help
with reusing pet items but also support the community
at large.</p>
        <p>This task is operationalised via “Donate” option
which allows users to donate items to charity. Such items
are marked as “donated”. The contribution structure of
this task is shown in Figure 13.</p>
        <p>Sustainability impact measurement: Because this is an
additional choice option added on top of the already
present functionality of uploading an item for sale, it is
necessary to maintain or improve the performance of the
original version. Besides, this function supports social
sustainability, by promoting positive, helping attitude in
the participating Pet Store user community. The social
impact could be measured via responses from users over
time, but that is not a part of the current study. For the
purposes of this study we expect that Cx and Tx should
be no higher than those of the original version.</p>
        <p>Another utility of used items is in Recycling.
Recyclable products can be donated for material reuse. Thus,
recycling items can be listed by customers, collected
and processed by recycling service providers such as
factories. Pet Store will donate the profits from the
recycling contributing to social well being, as well as
improve environmental impact via reuse of materials.
In general, although the energy consumption of the Pet
Store system will increase due to more tasks to be
processed, this task will reduce the overall pollution if
it is well integrated with the “find shortest path” task
discussed above. The contribution structure of this task
is shown in Figure 13.</p>
        <p>This task is operationalized via “Register recyclable
items” option that allow users to upload recyclable
pet items into relevant category (e.g., Recycle into pet
products, corrugated cardboard, plastic bottles, hangers,
bags) for donation.</p>
      </sec>
      <sec id="sec-4-7">
        <title>Sustainability impact measurement: This option car</title>
        <p>
          ries out a transaction for donating used items of a given
weight (kg). According to [
          <xref ref-type="bibr" rid="ref5">5</xref>
          ], CO2e caused by 1 kg of
trash put into landfill for decomposition is 700g. While
a web base submission causes only 0.6 g. of emissions.
However, submission of recycling request via this task,
is only the first step for further processing of submitted
goods, and will require such further tasks as
collection/transportation and actual recycling processes. These
will, in turn, produce extra CO2e. The actual amount
produced will depend on the distance between source
and destination points for collection and delivery, as well
as the recycling technology. However, considering that:
1) if submitted to waste, these items would still be
collected and delivered (though to landfill instead
of recycling plant), and
2) the cost in CO2e of virgin (instead of recycled)
production is generally much higher for most items
(including aluminium from cans and plastic from
bottles as per [
          <xref ref-type="bibr" rid="ref5">5</xref>
          ]),
We are confident that the impact of recycling is normally
less than that of landfill. Thus, in this case, the CO2e
caused by this processing must be less than a one-off
single request such as a web search without waiting and
scanning result. Hence, Cx should be less than 0.6g and
Tx &lt; 0.6*3600/Caverage (s).
        </p>
      </sec>
      <sec id="sec-4-8">
        <title>C. Social sustainability</title>
        <p>In terms of social sustainability, we review the
requirements that aim to achieve customer satisfaction and
knowledge exchange in society. Both of these tasks help
in contributing to long-term social well-building. The
goal model for social impact is shown in Figure 14, with
a set of relevant tasks analysed below.</p>
        <p>Add news task allows site manager to add/edit/remove
news. News are articles related to pets, such as pet
policies, pet care or training programs.</p>
        <p>This task is operationalised by provision of the “Add
news” option to the site.</p>
        <p>
          Sustainability impact measurement: This task must
cost less than a printed latter or an advertising email
which carry out the same function as posting news
articles. Since cost of a non-spam email is at 3.6g - to 50
g., excluding emission because of internet infrastructure
is lower than that of printed latter (140 g), CO2e for
processing this task should be less than sending an email.
As one may note, while in previous discussions we have
used the lower limit of the email-motivated emissions,
in here we would consider a somewhat higher value, as
news articles would normally be longer than a standard
email. It is known [
          <xref ref-type="bibr" rid="ref5">5</xref>
          ] that the CO2 emissions of an email
is dependent on the email’s length and attachments. For
example, processing a long email with large attachment
will emit up to 50g CO2. Thus, putting a rather restrictive
target, we would aim to keep Cx to about 10g CO2e and
the processing time Txe should be less than 10*3600/
Ccoverage.
        </p>
        <p>Share page task allows users to share pages on social
networks such as Facebook, and Twitter. It not only helps
the business reach potential users but also helps to share
knowledge in interested communities, e.g., how to train
a pet, or care for it.</p>
        <p>Sustainability impact measurement: The effect of this
task comprises of submitting a single ‘share page’
request to a social network site. Thus, CO2e caused
by its processing must be less than of a single web
search (i.e., 0.7g.) which would otherwise be needed (by,
e.g., a Facebook user) for searching for and finding the
information on a page of interest.</p>
        <p>Support discussion: This task allows users to create
and discuss specific topics. It gives a place for members
to exchange knowledge. However, this task will require
extra effort for managing and exchange of data, which
can impact on performance of more prominent functions
such as selling items.</p>
        <p>Reporting allows managers to view
sustainabilityrelated data, such as profits, donation rate, rates of selling
recycleable and reuseable items, CO2e emissions,
number of members at a given time, etc. Strictly speaking,
this task did not originate in the goal analysis patters we
chose to instantiate. Instead, it surfaced from re-design
process. This task eases the managers’ work through
coherent information provision.</p>
      </sec>
      <sec id="sec-4-9">
        <title>Sustainability impact measurement: To record the rele</title>
        <p>vant information, CO2e must be less than those for using
computer in 10 seconds, which is about how long it will
take to submit a report request, get the results back, and
quickly scan them. This means that Cx &lt;Caverage/360g
and Txe &lt;10 (s).</p>
      </sec>
    </sec>
    <sec id="sec-5">
      <title>V. RESULT EVALUATION</title>
      <sec id="sec-5-1">
        <title>A. Environmental Sustainability Evaluation</title>
        <p>To evaluate sustainability requirements, task
simulation was set up on a laptop with the following
configuration: Gateway Intel(R) Core(TM) i5 CPU M430
@ 2.27GHz, 4GB RAM. A server was deployed on
Glassfish 3.1.2 run with Java EE 6.0 and built-in Derby
database. On client side, the chosen browser was Firefox
20 because it supported the Firebug plugin which is used
to collect data to measure the task processing times.</p>
        <p>
          As discussed in section 3:
1) For calculating CO2 emission corresponding to
CPU usage, it is necessary to determine maximum
and minimum power usage of the computer used.
We used a power meter Energenie [
          <xref ref-type="bibr" rid="ref15">15</xref>
          ] to monitor
the maximum and minimum value of the laptop’s
power consumption within one hour. We observed
the maximum power usage Pmax of 60 Watts and
the minimum power usage Pmin of 20 Watts.
2) The CPU usage for a task is the difference between
CPU usage monitored during the task and the
average CPU usage in idle mode where the laptop
is connected to internet but is not doing any
specific task. Thus, CPU usage in idle mode is
observed for 10 minutes before carrying out a task
(for both original and new versions), in order to
obtain the average value for the idle mode before
each data collection task.
3) If both original and new versions of the system
support a given scenario, Cexp is taken to be the
amount of CO2 emissions caused by the original
version. However, if the original version does not
support a given scenario, the Cexp is the value
calculated for an alternative but comparable way of
handling the identified task/requirements. The CO2
emission of the updated version should be less than
this calculated value to improve sustainability, as
defined in section 4.
        </p>
        <p>
          Another parameter used in this evaluation is time of
processing (Texp). In the scenarios supported in both
versions of the system, time of processing of new version
is compared with that of the original version. Where a
task is newly defined, and so absent from the original
system, Texp is defined according to Caverage and Cexp.
Caverage is amount of CO2 emitted by an efficient laptop
in an hour, which is set to 25g as per [
          <xref ref-type="bibr" rid="ref5">5</xref>
          ].
        </p>
        <p>Thus, in order to demonstrate improvement in the
system sustainability, the CO2 emissions (Cx) for the
tasks defined in the updated version should be less than
Cexp and the processing time (Texp) has to be less than
Cexp*3600/Caverage seconds.</p>
      </sec>
      <sec id="sec-5-2">
        <title>B. Sustainability evaluation Results</title>
        <p>Table I shows the values collected from running a
selection of the scenarios from the above discussed tasks.
Scenarios used for evaluation of the updated system
through simulation are those for which we could collect
comparison data either from the original version, or by
building a comparable estimate form alternative tasks.
Since the present system is not in actual use, we had
no access to users to conduct any social sustainability
comparison, thus all such scenarios are left out. The
summative results show in the Summary row of Table
I demonstrate that the updated version of the system
reduces overall emissions by about 25% and the overall
required processing time by a factor of 28. These results
are obtained with substantial new functionality added to
the system.</p>
        <p>The above results demonstrate that the actual values
are not always within the bounds of the expected ones.</p>
        <p>The TC01 scenario of the Edit an offer task has CO2e
of 3.13g which, as expected, is less than that caused
by requesting changes via email. Thus, this function
helps users to save time and resources. Also, the time
processing for this scenario is around 30% of expected
time. Although the test is run over a local network this
time efficiency suggests that even when running over
internet, the processing time should take less than 30s.</p>
        <p>In the TC02 scenario of Add item to cart task the
buyers have not yet requested to buy an item, but have
placed it into a cart, which gives them a change to
review their decisions and expenses, without forcing the
purchase. This is a positive contribution to the shopping
experience. The amount of CO2e of this task is about
30% of the respective processing in the original version
which is accessing Paypal service without processing
any payment (estimated to 4.26 g). The time used for
processing, however, is nearly double that of expected,
which could be explained by the need for the application
to access the database, mark the chosen items as booked,
and return.</p>
        <p>In scenario TC03 to buy 1 item through Cart the
server processes the purchase of a booked item from
the member’s cart. In the original version, this action
directly connects to Paypal service (but does not carry
out processing due to security concerns). In the new
version it instead connects to the server to simulate
payment. In terms of CO2e both versions are similar,
with the updated system causing approximately 74%
of the original one’s emissions, and so showing some
improvement of application. However, it has a longer
processing time (5 seconds above the original system’s).
This is caused by the need to enter shipping address
and create a payment (coming to 3.5 seconds), as well
as the additional information provided in the new layout
display, which takes additional time when a user browses
the catalogue. Yet, it must be noted also that the
original version doesn’t allow for simulation of an actual
payment processing, so the time taken for this task in
that version is likely to be under-estimated.</p>
        <p>The TC04 scenario extends the previous one through
Cart scenario with purchase of more than one item.
We observe the amount of CO2e emissions is less than
that of the original version. Moreover, there is only 9%
increase (from 74% to 83%) when buying 5 items instead
of 1. However, processing time is more than 4 times
of the expected. Looking at this time in more detail,
we note that it takes about 2 seconds between booking
each item, while in the original version the in-between
time is shorter because a new window is opened for
processing purchasing, which was not taken into account
in the previous measurement. Moreover, as in the case
of scenario TC03, the original version does not support
actual payment processing simulation, while the updated
one does.</p>
        <p>In TC05 scenario for Add a comment task the length
of the comment is limited to 255 characters, which
is comparable to an average (non-spam) email. The
emissions and time used results include monitoring the
whole process (i.e., signing in, posting and reloading
comment list). Therefore, 50% reduction in emissions
and large reduction in processing time (over 8 times)
are good results.</p>
        <p>The TC06 scenario of View distance task emits nearly
exactly as much CO2e as 3 single searches set as
expected value, with only 0.1 g. more. One of the main
reasons for this extra bit of emissions is that the system
connects to Google Maps service and downloads images
which usually take longer to load than text. Moreover,
this task also helps to improve social sustainability. For
example, user now can visualise item’s location and
Task Scenario and Steps
TC01: Steps for Edit an offer:
TC02: Steps for Add item to cart:</p>
        <p>Logged in successfully with correct username and password
Click Offers &gt; Edit for an item
Browse for a pet item
Click “Add to cart”
Repeat for original version: browse for a pet item then choose “Buy now”
Logged in successfully with correct username and password
Browse a pet item
Click “Add to cart” &gt; Click “Cart” link
Enter shipping contact
Choose “Buy now”</p>
        <p>Repeat for original version: browse for a pet item then choose “Buy now”
TC03: Steps for Cart for buy 1 item:
Logged in successfully with correct username and password
Browse for a pet item
Click “Add to cart” &gt; Click “Add to cart”
Repeat above steps 5 times
Enter shipping contact
Choose “Buy now”</p>
        <p>Repeat for original version: browse for a pet item then choose “Buy now”, do this for 5 items
TC05: Steps for Add a comment:</p>
        <p>Browse a pet item</p>
        <p>Submit comment “This is TC05”
TC06: Steps for View distance</p>
        <p>Browse a pet item
Enter zip code “94105” to “Your location”</p>
        <p>Click “Get distance”
TC07: Steps for Add news
TC08: Steps for Support donations</p>
        <p>Logged in successfully with correct username and password
Click “Admin” &gt; “News” tab &gt; “Add”
Enter required information for news
Submit
Browse the news
Logged in successfully with correct username and password
Click “Offer” &gt; “Add new”
Enter required information for a pet item
Select “Donated” option
Submit</p>
        <p>Repeat for original version (without “Donated” option)
TC09: Steps for Register recyclables</p>
        <p>Click “Recyclable”
Specify “Weight” is 1 kg and other required information</p>
        <p>Submit
TC10: Steps for Create report
TC11: Steps for Load reports
SUMMARY</p>
        <p>Logged in successfully with correct username and password
Click “Admin” &gt; “Report” tab &gt; “Create Report”
Logged in successfully with correct username and password
Click “Admin” &gt; “Report” tab &gt; “Create Report”</p>
        <p>Select “From” and “To”</p>
      </sec>
    </sec>
    <sec id="sec-6">
      <title>3(*) Value got from original version</title>
      <p>4.26(*)
4.5(*)
estimate distance and cost of travel before making a
decision on purchasing or transportation. It also improves
awareness on CO2e emissions to environment caused
by transportation, as well as reduces processing time by
factor of about 76.</p>
      <p>The TC07 scenario for Add news evaluates to very
effective results with the emissions coming to under 50%
of the expected value and over 100-fold improvement in
processing time.</p>
      <p>The TC08 scenario for Support donations task extends
the original version (with marking selected items as
donations) with additional slight reduction in resultant
emissions. The processing time for uploading donation
items is also twice as quick. The time and emissions are
reduced since the user has to sign in with the updated
version but must type in his/her contact information for
every new submission with the original system (as it does
not support user accounts).</p>
      <p>While the TC09 scenario for Register recyclables task
takes much less time than expected, it causes 2.99 g
CO2e emissions - about 5 times greater than a single
query (which we use as the expected emissions target).
Yet, as discussed in previous session, the overall
environmental benefit from this task is likely to be much greater
due to reduction in virgin resource extraction demand.
This, however, is not evaluated in the present study.</p>
      <p>The TC10 Create report and TC11 Load reports
scenarios for the Reporting task both have much higher
emissions than the 10 seconds use of an efficient
laptop. One reason for this is that to create a report the
administrator has to access the admin page on the web
and select the categories, products and articles which
are listed on it. This takes effort from both server and
client to process. However, the actual emissions values
are rather small and the processing time is also short.
Since, these functions support monitoring sustainability
benefits, which helps the manager to evaluate and plan
further actions, all of which is useful to a system.</p>
    </sec>
    <sec id="sec-7">
      <title>VI. DISCUSSION</title>
      <p>Validity of Results: While all code and experimental
data presented in this paper are freely available for
crossvalidation, there are two issues that are worth pointing
out with regards to the validity:</p>
      <p>
        The estimates for CO2e emissions are largely taken
from [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ] where they are calculated using the
currently accepted carbon calculation methodologies.
However, it is worth noting that alternative carbon
estimation techniques are also well used and
different techniques often lead to different estimates.
      </p>
      <p>When choosing an expected emissions level (in
section 4), we have consistently looked for
lowerbound estimates which the updated system would
have to fit into. Thus, it is very likely that the
carbon reduction from the presented redesign is in
fact larger than what we have reported it to be.</p>
      <p>Tensions within Sustainability: The findings from
this case study demonstrate that there is an ever present
tension between the three “pillars” of sustainability, i.e.,
its environmental, economic, and social sides. This is
because economic sustainability for a business supported
via software aims to increase consumption, while
environmental sustainability aims to reduce it. The social
sustainability, in turn, has a conflict with itself - aiming at
both increased, faster, and more convenient consumption
available to all and vibrant, un-spoiled natural
environment at the same time. Yet, as it stands today, increased
consumption inevitably lead to environmental depletion.
This conflict has been observed within several discussed
requirements (e.g., should the system provide
continuous on-line support at increased economic expense?
should the system increase number of users at the cost
of increased emissions?, etc.). While conflicts within
system goals/requirements are quite commonplace in all
development projects, there is an additional diminution
to sustainability conflicts: since social and environmental
dimensions are “invisible” , until recently, the monetary
returns have massively biased trade-off resolutions in
favour of income maximisation. It is now necessary
to educate software professionals on the value of the
invisible environmental and social dimensions. This does
not mean that businesses must always lose income. On
the contrary, many environmentally or socially motivated
requirements will turn a profit. For instance, in Pet Shop,
registration for collecting recycled products, not only
helps to reduce a large amount of landfill rubbish but
also open new markets of providing materials to potential
manufactures, which contributes to business profit.</p>
      <p>Domain-Dependent Sustainability: It should be
noted that, as each domain has its own requirements,
so sustainability has different manifestations for
different domains. Sustainability for each domain must be
analysed with different criteria. PetShop application, for
example, is examined mostly under supply chain context
which focuses on how to increase the sales, effectively
exploit existing resources and extend the market.
Therefore, besides basic function of selling products, the
indirect criteria are improving customer satisfaction, reusing
or reducing resources through all phases of e-business
from viewing products to processing orders. Goals like
customer convenience, optimised travel routes, new
markets etc. become important sustainability concerns for an
e-business. This list will inevitably be very different for
a different study domain.</p>
      <p>Metrics and Measurements: As discussed above,
we utilised measurements via power consumption and
processing time to quantify environmental impact of the
software. This worked well in most scenarios, however,
in a few cases we observed a conflict between different
runs of the scenarios. For instance, in case of TC09 2
runs of the scenario measured to a significantly lower
time than the other 3. It may be because some tasks
depend of several ‘outside’ factors, such as network
communications paths, loads on the DNS servers, etc.
This issue needs to be further investigated. Additional
work is required in evaluating the impact of the redesign
on the software quality through additional metrics. We
also observed that measurement of social sustainability
impact was not feasible in this case study as our case
study system was not in real use. However, the
measurement process and metrics for this area of sustainability
are also grossly under-researched at present.</p>
    </sec>
    <sec id="sec-8">
      <title>VII. CONCLUSION</title>
      <p>With continuous improvements in technology, more
and more applications are developed to support human
demands. However, when software is integrated into
physical world, it affects many wider aspects of life (such
as environment and society at large) which are very often
not considered relevant during software development.
This study reports on an experience of discovering and
integrating such wider requirements into an existing
application. Throughout the case study, we have observed
a tension between different dimensions of sustainability.
Thus, it is not sufficient to simply ‘increase’
sustainability of software, as this may very well mean that one
sustainability dimension (e.g., economic) of that
software system is very well supported, while others are
neglected. For a system to be truly sustainable the increase
in sustainability must also be achieved in balance, so that
all pillars of sustainability are equally well supported.
In the presented study, we have considered economists,
environmentalist and socially concerned stakeholders,
as we think that including such diverse stakeholders
is a productive approach for capturing sustainability
goals. Evaluation methods and metrics are also proposed
for environmental and economic requirements. Here we
convert performance of requirements into an amount of
CO2 emissions, which is used as a common unit to
measure sustainability. Overall, we have identified 19
sustainability requirements out of which which 11 were
implemented, and the re-designed system was evaluated.
Compared with the similar functions in the original
version, the new version reduces CO2 emissions by 20%
and increases processing time within the system by a
factor of 28. As a future work, we are researching on factors
that impact on e-commerce application in terms of the
relationship between power consumption and processing
time, deployment environment and data usage to achieve
more accurate metrics to measure sustainability benefits,
as well as problems in measuring social sustainability.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [1]
          <string-name>
            <given-names>C.</given-names>
            <surname>Canon</surname>
          </string-name>
          and
          <string-name>
            <given-names>M.</given-names>
            <surname>Mahaux</surname>
          </string-name>
          .
          <article-title>Integrating the complexity of sustainability in requirements engineering</article-title>
          .
          <source>First international workshop on Requirements for Sustainable Systems</source>
          ,
          <year>2012</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [2]
          <string-name>
            <given-names>Eva</given-names>
            <surname>Kern Markus Dick</surname>
          </string-name>
          , Jakob Drangmeister and
          <string-name>
            <given-names>Stefan</given-names>
            <surname>Naumann</surname>
          </string-name>
          .
          <article-title>Green software engineering with agile methods</article-title>
          .
          <source>In GREENS</source>
          , pages
          <fpage>78</fpage>
          -
          <lpage>85</lpage>
          . IEEE,
          <year>2013</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [3]
          <string-name>
            <given-names>J.</given-names>
            <surname>Cabot</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M. S.</given-names>
            <surname>Easterbrook</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Horkoff</surname>
          </string-name>
          ,
          <string-name>
            <given-names>L.</given-names>
            <surname>Lessard</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Liaskos</surname>
          </string-name>
          , and
          <string-name>
            <given-names>N. J</given-names>
            <surname>Mazo</surname>
          </string-name>
          <article-title>´n. Integrating sustainability in decision-making processes: A modelling strategy</article-title>
          .
          <source>Software</source>
          Engineering - Companion Volume,
          <year>2009</year>
          . ICSE-Companion
          <year>2009</year>
          . 31st International Conference on, pages
          <fpage>207</fpage>
          -
          <lpage>210</lpage>
          ,
          <year>2009</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [4]
          <string-name>
            <given-names>M.</given-names>
            <surname>Mahaux</surname>
          </string-name>
          ,
          <string-name>
            <given-names>P.</given-names>
            <surname>Heymans</surname>
          </string-name>
          , and
          <string-name>
            <given-names>G.</given-names>
            <surname>Saval</surname>
          </string-name>
          .
          <article-title>Discovering sustainability requirements: An experience report</article-title>
          . Requirements Engineering:
          <article-title>Foundation for Software Quality</article-title>
          . 17th International Working Conference,
          <source>REFSQ 2011</source>
          , pages
          <fpage>19</fpage>
          -
          <lpage>33</lpage>
          ,
          <year>2011</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          [5]
          <string-name>
            <given-names>M.</given-names>
            <surname>Berners-Lee</surname>
          </string-name>
          .
          <article-title>How bad are bananas?</article-title>
          <source>Canada : Greystone Books</source>
          ,
          <year>2011</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          [6]
          <string-name>
            <given-names>S.</given-names>
            <surname>Naumann</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Dick</surname>
          </string-name>
          , E. Kern, and
          <string-name>
            <given-names>T.</given-names>
            <surname>Johann</surname>
          </string-name>
          .
          <article-title>The greensoft model: A reference model for green and sustainable software and its engineering</article-title>
          .
          <source>Sustainable Computing: Informatics and Systems</source>
          ,
          <volume>1</volume>
          (
          <issue>4</issue>
          ):
          <fpage>294</fpage>
          -
          <lpage>304</lpage>
          ,
          <year>2011</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          [7]
          <string-name>
            <given-names>F. L</given-names>
            <surname>Steimer</surname>
          </string-name>
          and
          <string-name>
            <given-names>T</given-names>
            <surname>Steimer. Green</surname>
          </string-name>
          e-business.
          <source>2010 4th IEEE International Conference on Digital Ecosystems and Technologies (DEST</source>
          <year>2010</year>
          ), pages
          <fpage>252</fpage>
          -
          <lpage>253</lpage>
          ,
          <year>2010</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          [8]
          <string-name>
            <given-names>M.</given-names>
            <surname>Korte</surname>
          </string-name>
          ,
          <string-name>
            <given-names>K.</given-names>
            <surname>Lee</surname>
          </string-name>
          , and Chun Che Fung.
          <source>Sustainability in information systems: Requirements and emerging technologies</source>
          .
          <source>2012 International Conference on Innovation Management and Technology Research</source>
          , pages
          <fpage>481</fpage>
          -
          <lpage>485</lpage>
          ,
          <year>2012</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          [9]
          <string-name>
            <given-names>L.</given-names>
            <surname>Minas</surname>
          </string-name>
          and
          <string-name>
            <given-names>B</given-names>
            <surname>Ellison</surname>
          </string-name>
          .
          <article-title>The problem of power consumption in servers</article-title>
          . http://lass.cs.umass.edu/ shenoy/courses/fall09/ 691gc/slides/Lec12-1
          <string-name>
            <surname>-</surname>
          </string-name>
          Slides-Powern%
          <article-title>20Consumptionn%20inn %20Servers CS697GC Fall2009-V02</article-title>
          .ppt,
          <year>Fall 2009</year>
          . Accessed:
          <volume>20</volume>
          /03/
          <year>2013</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          [10]
          <article-title>Oracle and/or its affiliates the source for java technology collaboration</article-title>
          . https://java.net/projects/petstore/sources/svn/ show/tags/javapetstore-2 0-ea-v5 June 07?rev=
          <fpage>699</fpage>
          . Accessed:
          <volume>20</volume>
          /12/
          <year>2012</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          [11] istarwiki.org istarquickguide. http://istar.rwth-aachen.de/ tiki-index.php?page=iStarQuickGuide. Accessed:
          <volume>20</volume>
          /03/
          <year>2013</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          [12]
          <string-name>
            <given-names>Mark</given-names>
            <surname>Blackburn</surname>
          </string-name>
          .
          <article-title>Five ways to reduce data center server power consumption</article-title>
          .
          <source>White paper</source>
          ,
          <source>The Green Grid</source>
          ,
          <year>2008</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          [13]
          <string-name>
            <given-names>Spring</given-names>
            <surname>Source</surname>
          </string-name>
          <article-title>Hyperic sigar - system information gatherer and reporter</article-title>
          . https://support.hyperic.com/display/SIGAR/Home. Accessed:
          <volume>20</volume>
          /12/
          <year>2012</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          [14]
          <string-name>
            <surname>Mozilla</surname>
          </string-name>
          <article-title>Foundation(US) add-ons</article-title>
          . https://addons.mozilla.org/ en-US/firefox/addon/firebug/. Accessed:
          <volume>12</volume>
          /05/
          <year>2013</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          [15]
          <article-title>Energy saving power meter</article-title>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>