=Paper= {{Paper |id=Vol-2541/paper3 |storemode=property |title=Systems re-design for sustainability: PetShop Case study |pdfUrl=https://ceur-ws.org/Vol-2541/paper3.pdf |volume=Vol-2541 |authors=Ruzanna Chitchyan,Nguyet Nguyen |dblpUrl=https://dblp.org/rec/conf/re/ChitchyanN19 }} ==Systems re-design for sustainability: PetShop Case study== https://ceur-ws.org/Vol-2541/paper3.pdf
         Copyright © 2019 for this paper by its authors. Use permitted under Creative Commons License Attribution 4.0 International (CC BY 4.0)




   Systems re-design for sustainability: PetShop
                   Case study
                               Nguyet Nguyena                                                         Ruzanna Chitchyan
                 Department of Computer Science                                              Department of Computer Science
                University of Leicester, Leicester, UK                                       University of Bristol, Bristol, UK



   Abstract—Recognition of the critical role of software                          study we explore what minimising such impact will
in promoting and maintaining sustainability has been                              imply for the requirements, design, and operation of
emerging recently. Yet, over the last 60 years a vast amount                      the resultant software. The findings from this case study
of software has been developed and deployed without any
consideration of sustainability. This paper presents a case                       demonstrate that there is an ever present tension between
study on how relevant sustainability requirements have                            the three “pillars” of sustainability (i.e., its environmen-
been identified (using goal-oriented techniques) and inte-                        tal, economic, and social) as they are perceived today.
grated into an existing software design and implementation.                       This is because economic sustainability for a business
It also discusses metrics used for evaluation of the sustain-                     supported via software aims to increase consumption,
ability effects of the new design. The evaluation of this
study demonstrates that the re-designed software is both                          while environmental sustainability aims to reduce it. The
more extendable and more sustainable. Thus, this paper                            social sustainability, in turn, is in conflict with itself -
presents an example process and case study for undertaking                        aiming at both increased, faster, and more convenient
sustainability-centred software re-design, as well as reports                     consumption available to all and vibrant, un-spoiled
on a number of trade-offs and interdependencies between                           natural environment at the same time.
the studied sustainability requirements.
                                                                                     We also present a process for identification of
                      I. I NTRODUCTION                                            sustainability-related requirements and evaluation meth-
                                                                                  ods and metrics for some aspects of the economic and
   While integration of ICT into business models and                              environmental sustainability requirements identified in
processes has a well-documented economic benefit, the                             this case study. Throughout this study we use the relevant
environmental and social aspects of its’ impact are less                          consolidated research on sustainability undertaken so far
clear-cut. For instance, while some e-businesses, such                            in the software engineering community and extend it
as eBay, encourage reuse of physical goods, they can                              where open issues are identified. In particular (similar
also cause over consumption [1] as well as bankrupt                               to [3] and [4], we use goal-oriented technique during
local producers and retailers, in turn dulling out the                            requirement engineering to identify relevant sustainabil-
vibrancy of local cultures. Hence, it is evident that, in                         ity requirements. The effect of the newly integrated
order to support long-term sustainability, such sustain-                          requirements on the sustainability of the system is then
ability requirements must become an integral part of                              measured using CO2 emissions [5] (as outlined in III-B).
each software system. However, software engineers have                               Since the present study aims at consolidating the rel-
still to understand what sustainability requirements are                          evant research of software engineering for sustainability,
and how would they impact the software development                                we must start by reviewing this research:
process and product.
   In this paper we present a case study of such require-                         A. Requirements Engineering for Sustainability
ments and the effects they have on an e-shop business                                Naumann et al. [6] propose GREENSOFT - a generic
for selling pets (called PetShop). The aim of this study                          process model to study the possible causes, effects, and
is in determining how retrofitting sustainability into an                         processes in achieving sustainability goals. This model
existent system will affect that system. Following [2]                            mandates a strict relationship between sustainability
we consider an activity sustainable if it’s “direct and                           tasks and software lifecycle, stating the need to observe
indirect negative impacts on economy, society, human                              first, second, and third-order effects in software devel-
beings, and environment ... are minimal and/or which                              opment and use. For example, in software engineering,
has a positive effect ...” Through the PetShop case                               the 1st order environmental impacts can result from
electricity consumed for software development. This can            •  “Deliver and Trace” allows users to monitor current
be monitored via power consumption of devices. On the                 state and location of the purchased item, as well as
other hand, working conditions impact more indirectly                 considers the delivery impact itself;
on social values that could be evaluated via interviews             • “Customer Relationship Management” focuses on
and be measured e.g., via employee satisfaction lev-                  social sustainability, which tends to improve cus-
els. This work provides an overall framework on how                   tomer satisfaction.
sustainability tasks could relate to software engineering           The idea that e-business is conducive to sustainability
process, but currently lack the necessary substantial body       is also advocated in [8], where the authors note that
of empirical evidence to exemplify its use in practice.          the development of such technologies as cloud comput-
   Cabot et al. [3] illustrate how sustainability require-       ing, mobile communications and social media helps to
ments are integrated in the early stages of development          advance sustainability of a business and contributes to
through Goal-Oriented techniques in order to consider            societal development.
the impact of alternative decisions about conference
                                                                 C. Measuring Impact of Sustainability Requirements
organisation on the eco-footprint of the event (e.g.,
printed vs. electronic proceedings). They aim at devel-             In order to measure the impact of sustainability-
opment of a generic sustainability taxonomy without              related requirements of the engineered system, one needs
focusing on quantifying the requirements impact (except          to utilize some evaluation metrics. Here two distinct
via help/hurt contributions within the goal model).              perspectives can be adopted: one focusing on the sus-
   The Yellow project [4] presents a mix of requirements         tainability of software itself (i.e., software quality), the
engineering techniques for elicitation and analysis of           other on the impact that this software has on the broader
sustainability requirements for an event management              environment (ecologic, economic, and social) within
system. This work emphasises the effect of stakeholders’         which it is situated. The prime interest of this study is in
(i.e., board members, project managers, technical man-           broader impact of the software system.The present study
agers and environmental champions, etc.) perspectives            aims to utilise the pre-existing metrics to the highest
on both functional and non-functional requirements and           possible degree, only providing additional metrics where,
proposes a process to produce a complete goal model              to the best of our knowledge, no previous metric exists.
with detailed requirements. It also considers the positive          When evaluating the impact of the software on the
and negative inter-dependencies between sustainability           business and its wider environment, the related work
requirements for the given system, but does not propa-           suggests focusing on the system effects in terms of
gate the study to design, implementation, or evaluation.         energy consumption or CO2 emission. For instance, [7]
                                                                 suggests a conversion factor between gasoline, CO2 and
B. Sustainability and e-Business Domain                          energy consumption; [9] points out the linear relation-
                                                                 ship between CPU usage and power consumption. And
   We consider [7] a particularly relevant work to our           [5] provides a detailed reference on carbon footprint
study as it focuses on the specificities of green e-             measurement for a multitude of products and activi-
business, for which our selected case study is an exam-          ties, ranging from purchase of a banana, to sending
ple. Here a number of key factors for a green e-business         SMS, etc. We utilise the estimates from [7] and [5] as
are pinpointed, including:                                       reference measures in evaluation of the impact of the
  • “Inform and Promote” through which e-business                environmental and economic requirements in terms of
    takes advantages of saving cost and transportation           the amount of energy consumption. However, impact of
    over advertising via papers;                                 the requirements related to social sustainability is much
  • “Present and Offer” allows customer to browse and            more difficult to evaluate. Some such requirements need
    select purchases online instead of through paper             a long verification time, as their effects will surface only
    catalogue or in store, which helps to reduce cost            on future generations (Korte et al. [8]), others require
    for storage and transportation of goods, as well as          access to system users. Since the system in our case
    energy consumption for maintaining warehouses;               study is not in real use, we have no means of collecting
  • “Select and Order” tends to improve environment              data for evolution of its social sustainability effects.
    by using secure email for negotiation instead of             Thus, although a number of social sustainability require-
    papers;                                                      ments are identified and discussed in this study, we do
  • “Trust and Pay” focuses on the reliability in pay-           not conduct evaluation of system’s social sustainability
    ment process;                                                impact.



                                                             2
   Thus, the contributions of this paper can be sum-
marised as:
   1) presentation of an end-to-end re-engineering study
       where sustainability requirements are identified,
       implemented for a pre-existing system, and evalu-
       ated;
   2) presentation of a set of metrics suitable for quan-
       tification of environmental sustainability in re-
       quirements;
   3) demonstration of the measurement process of en-
       vironmental sustainability requirements of a soft-
       ware system;
   4) demonstration of the application of the consoli-
       dated research on software engineering for sustain-
       ability.
   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 sus-
tainability 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.

   II. OVERVIEW OF THE P ET S HOP APPLICATION
   Java Pet Store 2.0 is a Reference Application [10]
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                Fig. 1. Use cases with sustainability integrated
application is freely available to general public, in case
others wish to replicate or extend out study.
   The Pet Store application provides basic e-shop func-           contact requires last name, first name and address.
tionality without concerning the sustainability require-           An image thumbnail will be created corresponding
ments. The supported functionality is shown with white             to the uploaded image;
and yellow coloured use cases in Figure 1 (use cases in          • Seller can tag an item;
red are to be discussed later). The Pet Store documen-           • Web user can locate items by choosing category or
tation states that:                                                searching them by tags, location or keywords;
   • Seller can upload information on a pet (including its       • When viewing an item, web user can also rate it in
     name, description, price, image and seller’s contact          range from 1-5.
     information) to a specific category. The seller’s           • Web user can set an item as inappropriate;




                                                             3
  •   Buyer can buy one item at a time;                           we rely on the goal decomposition structures that have
  •   The application can get and show RSS news of Java           emerged from the relevant previous studies, i.e., the key
      Blueprint on the top of the page;                           drivers for e-business success discussed in [7] that are
   • The application assumes that there is an existing list       directly relevant to economic, social, and environmental
      of categories with their appropriate images such as         sustainability, as well as the reduce-reuse-recycle goal
      “Cats”, “Dogs”, etc. Besides, each category has a           set aimed at environmental sustainability derived by [3].
      list of products with their appropriate image such             Using these generic goal structures as starting point,
      as “Medium Dogs”, “Small Dogs”, etc. An item is             we instantiated them within the context of the PetStore
      categorised according to products.                          application and operationalised them into tasks. These
   As shown in Figure 1, three types of actors are                tasks (also shown as red and yellow use cases in Figure
distinguished:                                                    1) have then been integrated into the updated system
   • A viewer, who is an ordinary web user and can
                                                                  design and implementation.
                                                                     To represent the goal decomposition and contribution
      access the PetStore site;
                                                                  models, we use the i* language to capture the context
   • A member is a viewer who has signed up and
                                                                  as well as relationships between sustainability and other
      logged in into the system;
                                                                  system goals [11], as i* is particularly effective in mod-
   • A manager administrates the PetStore application.
                                                                  elling the problem domain in the early stages1 . Moreover
      Manager has some unique behaviour, e.g., creating
                                                                  with i* we can model both hard (i.e., functional) and soft
      and viewing reports (as defined in Figure 1) but also
                                                                  (i.e., non-functional) goal structures, as well as represent
      has the same access and use rights as a member.
                                                                  the links between goals and their respective actors - all
   The colour of use cases in Figure 1 is used to                 of which is useful for the present study.
distinguish the originally defined and modified use cases:
   • use cases which have been defined in the original
                                                                  B. Metrics
      system and remained unchanged throughout the                   As pointed out above, our prime interest is in study-
      below discussed system re-design are not coloured           ing how consideration of sustainability requirements in
      (i.e., are white);                                          a software system impacts the sustainability, i.e., the
   • the yellow use cases were defined in the original use        broader (ecologic, economic, social) environment within
      case model, but their behaviours had to be changed          which the software system is located. Thus, we are in-
      due to the newly defined activities/requirements for        terested in measuring environmental impact (i.e., impact
      improved sustainability;                                    achieved due to use of software) in terms of emissions.
   • the red cases are the newly defined use cases, that             1) Measuring Environmental Impact: The environ-
      are to be discussed in following sub-sections.              mental impact of the re-design of the system can be
                                                                  measured by comparing its CO2 emissions to emissions
         III. M ETHODOLOGY AND M ETRICS                           from the original system.
   In order to undertake the intended system re-design               In particular, it can be estimated using the two follow-
study, we must define a process for relevant requirements         ing facts:
identification as well as a mechanism for comparing the              1) Fact 1: The amount of CO2 emitted (CO2 e) for
updated and original versions of the system. These are            a unit of electricity from UK grid2 is about 600g [5].
outlined in the following sub-sections.                           This includes both direct emissions (i.e., from power
                                                                  generation per unit consumed), and indirect emissions
A. Requirements identification and modelling                      (i.e., including the carbon cost of extracting fuel from
   As discussed previously, a number of researchers ([3],         ground, maintaining the buildings for the power stations,
[4]) describe successful use of goal-oriented technique           producing wind turbines, etc.).
for identification of sustainability requirements. Follow-           2) Fact 2: Empirical measurement of power use with
ing their lead, we too utilise this approach. This is             various types of servers has demonstrated a stable linear
particularly suitable for our case study as it involves             1 We used UML for later stages or detailed design.
re-designing an existing application, where the other                2 It is worth noting that this emissions number is very country-
goals of the application are already defined. Unlike              specific, ranging from 60g. for Iceland to 1060g for Australia. The
the cases of customer-commissioned systems, for 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
purposes of this case study, we have no direct access to          countries use a mix of sources, such as fossil fuels (oil, gas, and coal),
those commissioning the PetStore system. Thus, instead            nuclear power, renewable, etc.




                                                              4
relation (accurate to within 5%) across all CPU utiliza-         of a given task. The data collection set up is illustrated in
tion rates [12]. This relation is shown in the equation          Figure 2. For the present case study, a Java application
below, stating that the energy consumed by a CPU for             was implemented using Sigar library [13] to get the
a particular task (Px ) is made up by the sum of the             CPU percentage of server use during a given task. The
amount of energy the CPU consumes in idle state (Pmin )          application records the data into a log file on server side.
and the CPU utilisation rate (x as percentage) times                On the client side, we use the Firebug [14] tool to
the difference between its idle and fully occupied state         log the data on the network transport, including number
(Pmax -Pmin ) divided by 100:                                    of requests, total size, total of loading times, processing
   Px = Pmin + x*(Pmax -Pmin )/100                               time per request, in a HAR file. This is used to obtain
   Where :                                                       the processing time of a given task (Tx ).
   Px : Power consumption for x%CPU (watt)
   Pmin : energy consumption in idle state (watt)
   Pmax : energy consumption for 100% CPU usage
(watt)
   For example (as per [12], 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
   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 CO2 e ,
the CO2 e for a task (COx ) can be calculated in kilograms
per Watt as:
   COx = 0.6 * (Px - Pmin ) = 0.6 * x*(Pmax -Pmin )/100                     Fig. 2. Data collection setup for Pet Shop
= 0.006*(Pmax -Pmin ) *x
   To account for the duration of a given task, this                We use black box testing to verify the implementation
formula needs to be further adjusted for the time. Thus,         of our re-design for sustainability by defining a test
the emissions (in kilograms per Watt) for a task with a          scenario for a task to be evaluated, recording the Cx and
given duration in seconds (Tx ) will be calculated as:           Tx for each task in both original and updated versions,
   Tx = COx *3600/ Caverage seconds                              and comparing these. Where a task to be evaluated is not
   Where:                                                        supported by the original version of the system, the data
   Caverage is the average CO2 emission (CO2 e) in               on updated system is compared against an impact value
kilograms per hour                                               obtained from an alternative buy comparable way of
   COx is CO2 e (in kilograms per Watt) for doing the            conducting the required task without the system support
task.                                                            (further discussed for each relevant task in section IV).
   2) Implementation of Metrics Data Collection Frame-
work: In order to utilise the above discussed metrics, the          IV. S USTAINABILITY G OAL A NALYSIS FOR P ET
study needs to collect the relevant data. Data for envi-                         S HOP APPLICATION
ronmental sustainability requirements is to be evaluated            Having outlined the goal-based analysis process and
based on CO2 emission and task processing time. CO2              metrics to be used for case study evaluation, we now
emission for a task is measured as Cx = 0.006*(Pmax -            present the decomposition and operationalisation analy-
Pmin )*x. And the appropriate processing time for a task         sis of sustainability goals. Since the combination of all
is approximately Cexp *3600/ Caverage seconds in which           goal models on sustainability generates quite a large and
Cexp is the expected CO2 emission and Caverage is                complex picture of requirements, below we introduce
defined according to testing system.                             the three sustainability views one at a time. For each
   Therefore, to collect data for measurement of per-task        of the discussed views the task operationalisations are
emissions, CPU usage on server side and processing time          also discussed in terms of their expected environmental
on client side should be monitor throughout processing           impact.



                                                             5
               Fig. 3. Economic sustainability.                                    Fig. 4. Task: Manage offers



A. Economic sustainability                                        task is depicted in Figure 4.
   In economic sustainability view the emphasis is on                Sustainability impact measurement: In the original
two main goals: increasing profit and reducing cost.              version of the system, where this option was absent,
Figure 3 demonstrates the decomposition and opera-                whenever a seller needed to make a change (e.g., change
tionalisation of these two goals.                                 name or price of the offered item), he/she had to send an
   For e-business such as PetStore application, one of            email to the system requests, asking the administrator to
the most important factors supporting its’ economic sus-          make the change. After receiving the email, the admin-
tainability is the number of users accessing the website          istrator would browse for the specified item and apply
(shown as “Increase Number of Users” goal in Figure 4).           the requested change. Therefore, to improve system’s
In other words, the more users use the website, the more          impact, the CO2 e for making a change (Cx ) with the
potential benefits it will achieve. In accordance with [7],       updated version of the system should be less than the
this goal can be achieved via clear information presented         sum of CO2 e caused by a i) sending a change request
on the site, good usability, support and performance of           email and ii) carrying out the change by the admin.
the site, all of which are depicted via the goal contribu-           According to Berners-Lee [5]:
tions in Figure 4. Some other core goals related to cost             • a single (non-spam) email costs about 4g of CO2 e

reduction are, for instance, decreasing maintenance costs               (including sending, filtering and reading);
and reusing materials. Figure 4 shows several tasks (in              • CO2 e of a web search on the local network and host

green) aimed at operationalisation of the discussed goals               server is about 0.05g
(such as manage offers, manage orders, etc.), which are              • CO2 e of systems’ hardware required for a web

discussed below:                                                        search reaches up to 0.35g per search.
   Manage offers        task      allows      sellers    to          Let’s assume (for simplicity) that the only difference
view/add/remove/edit their uploaded pet items. The                in handling the change in the original and updated sys-
current system allows only uploading information,                 tems are in sending email for administrator to make the
without support for further review and change to the              change vs. doing a web search to implement the change
uploaded content. This is an obvious shortcoming                  in person by the seller (after which both sides will
in terms of system usability for clear information                presumably use the same web interface to carry out the
presentation to the seller. With the additional                   change). Then, to improve the system’s environmental
functionality to mange the sale items, a seller can               impact, Cx for seller should be less than 3.6g (i.e., 4g.
track the status of his/her items, change and upkeep              i.e. (0.05g+0.35g)). Moreover, as an average user takes
sale details. This also helps to reduce website support           about 30 seconds to search, wait and scan the result from
cost: instead of the seller sending change requests to            the web search [5], Tx must be less than 30 seconds.
the site administrator, he/she can make the necessary                Manage orders         task      allows     buyer     to
changes by him/herself. The contribution chain of this            view/add/remove/buy pet items. With the original



                                                              6
                                                                 Tx should be less than spent while using the original
                                                                 version.
                                                                    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 contribu-
                                                                 tions are shown in Figure 6.




                Fig. 5. Task: Manage orders



system a buyer can buy only one item per transaction.
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 in-
the 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 CO2 e 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 buy-
must 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’
   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
   Add to Card allows buyers to add item to a cart. The          web application, but also increases CO2 e 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.
   Sustainability impact measurement: the original ver-             Sustainability impact measurement: this task will in-
sion 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 CO2 e 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 CO2 e 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 per-
for 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



                                                             7
               Fig. 7. Task: Inform by emails                                   Fig. 9. Task: Add comments



presence of an employee to provide the requested help.             Sustainability impact measurement: Although this
The contributions for this goal are shown in Figure 8           function increases CO2 e due to posting on the web
below.                                                          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
                                                                CO2 e per email, out of which 0.4g CO2 e is caused by
                                                                the internet infrastructure [5]. Thus, CO2 e 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.
                                                                Thus, Tx should be less than 30 seconds (which is that
                                                                spent for sending, receiving, and reading an email as per
                                                                [5]).

                                                                B. Environmental sustainability
                Fig. 8. Task: Online support
                                                                   For environmental sustainability we also adopt the
   Add comments task allows users to add comments               overall “reduce-reuse-recycle” perspective advocated by
to each pet’s items or to news items. This is a mech-           Cabot et al.[3], as, reuse and recycling of already pro-
anism for user-initiated discussions as well as mutual          duced goods economises on the need for new produc-
support/help between Pet Shop customers with regards            tion, while reduction of resource consumption supports
to specific items. This will improve shopping experience,       longer-term availability of restricted resources as well
make the website more interactive, as well as more              as reduces the overall impact (emissions, extraction, soil
socially inclusive (and so, more socially sustainable).         degradation, etc.) of resource overuse.
On the other hand, the energy consumption for data                 In context of PetStore application, reuse and recycling
exchange and storage will increase, as shown in Figure          of other products made for pets and pet owners (e.g.,
9 below.                                                        carrier cases, accessories, etc.) were considered. Figure
   This task can be operationalised via addition                10 presents the goal contributions identified for the
of the “Comments” option that allows users to                   environmental sustainability of the Pet Store, with a
add/edit/remove their comments for each item.                   number of tasks operationalisations discussed below.



                                                            8
                                                                      Sustainability impact measurement: As a single search
                                                                  causes about 0.7 CO2 e which includes 0.1g for search-
                                                                  ing, waiting and scanning results, Cx for this task should
                                                                  be less than three searches, i.e., 3*0.6g = 1.8 g.[5].
                                                                  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 .
                                                                      Add category and Add product tasks allow for the
                                                                  PetStore to sell not only pets but also related pet
              Fig. 10. Environmental sustainability
                                                                  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.
   View distance and Find shortest path tasks aim at              The original application supports selling pets only. Thus,
reducing pollution caused due to transportation. View dis-        this functionality helps in both reusing items (reducing
tance shows the direct-line distance between user’s given         emissions for new item production and improving envi-
location and the location of the item-to-be-purchased.            ronmental impact) and in extending the business to other
Find shortest path provides travel directions for the route       related markets, which attracts more users and improves
between these points. These functions are useful for both         profits for the business, which is shown in Figure 12
buyers and the Pet Shop business. The buyers may be               below.
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.




                                                                           Fig. 12. Task: Add category and Add product


                                                                     These tasks are operationalised by providing the “Add
                                                                  Category” and “Add Product” options for new cate-
                                                                  gories and products respectively.
                                                                     Manage donations task allows the seller to donate the
       Fig. 11. Task: View distance and Find shortest path        pets and/or items to a particular charity. If this option
                                                                  is used, the Pet Store will receive payment from the
  This task can be operationalised via addition of the            buyer purchasing the donated item and transfer it to the
“View Distance” option.                                           charity selected by the seller. This will not only help



                                                              9
with reusing pet items but also support the community             products, corrugated cardboard, plastic bottles, hangers,
at large.                                                         bags) for donation.
   This task is operationalised via “Donate” option                  Sustainability impact measurement: This option car-
which allows users to donate items to charity. Such items         ries out a transaction for donating used items of a given
are marked as “donated”. The contribution structure of            weight (kg). According to [5], CO2 e caused by 1 kg of
this task is shown in Figure 13.                                  trash put into landfill for decomposition is 700g. While
   Sustainability impact measurement: Because this is an          a web base submission causes only 0.6 g. of emissions.
additional choice option added on top of the already              However, submission of recycling request via this task,
present functionality of uploading an item for sale, it is        is only the first step for further processing of submitted
necessary to maintain or improve the performance of the           goods, and will require such further tasks as collec-
original version. Besides, this function supports social          tion/transportation and actual recycling processes. These
sustainability, by promoting positive, helping attitude in        will, in turn, produce extra CO2 e. The actual amount
the participating Pet Store user community. The social            produced will depend on the distance between source
impact could be measured via responses from users over            and destination points for collection and delivery, as well
time, but that is not a part of the current study. For the        as the recycling technology. However, considering that:
purposes of this study we expect that Cx and Tx should               1) if submitted to waste, these items would still be
be no higher than those of the original version.                         collected and delivered (though to landfill instead
   Another utility of used items is in Recycling. Recy-                  of recycling plant), and
clable products can be donated for material reuse. Thus,             2) the cost in CO2 e of virgin (instead of recycled)
recycling items can be listed by customers, collected                    production is generally much higher for most items
and processed by recycling service providers such as                     (including aluminium from cans and plastic from
factories. Pet Store will donate the profits from the                    bottles as per [5]),
recycling contributing to social well being, as well as           We are confident that the impact of recycling is normally
improve environmental impact via reuse of materials.              less than that of landfill. Thus, in this case, the CO2 e
In general, although the energy consumption of the Pet            caused by this processing must be less than a one-off
Store system will increase due to more tasks to be                single request such as a web search without waiting and
processed, this task will reduce the overall pollution if         scanning result. Hence, Cx should be less than 0.6g and
it is well integrated with the “find shortest path” task          Tx < 0.6*3600/Caverage (s).
discussed above. The contribution structure of this task
is shown in Figure 13.                                            C. Social sustainability
                                                                     In terms of social sustainability, we review the re-
                                                                  quirements 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.
                                                                     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.
                                                                     This task is operationalised by provision of the “Add
                                                                  news” option to the site.
                                                                     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
              Fig. 13. Task: Manage donations                     g., excluding emission because of internet infrastructure
                                                                  is lower than that of printed latter (140 g), CO2 e for
   This task is operationalized via “Register recyclable          processing this task should be less than sending an email.
items” option that allow users to upload recyclable               As one may note, while in previous discussions we have
pet items into relevant category (e.g., Recycle into pet          used the lower limit of the email-motivated emissions,



                                                             10
                                                                      process. This task eases the managers’ work through
                                                                      coherent information provision.
                                                                         Sustainability impact measurement: To record the rele-
                                                                      vant information, CO2 e 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  Edit for an item


      TC02: Steps for Add item to cart:                                                                    4.26(*)   4.5(*)     2.91     7.41
        • Browse for a pet item
        • Click “Add to cart”
        • Repeat for original version: browse for a pet item then choose “Buy now”


      TC03: Steps for Cart for buy 1 item:                                                                 2.88(*)   1.42(*)    2.12     6.73
        • Logged in successfully with correct username and password
        • Browse a pet item
        • Click “Add to cart” > Click “Cart” link
        • Enter shipping contact
        • Choose “Buy now”
        • Repeat for original version: browse for a pet item then choose “Buy now”


      TC04: Steps for Cart for 5 items:                                                                    2.37(*)   4.6(*)     1.99     19.51
        • Logged in successfully with correct username and password
        • Browse for a pet item
        • Click “Add to cart” > Click “Add to cart”
        • Repeat above steps 5 times
        • Enter shipping contact
        • Choose “Buy now”
        • Repeat for original version: browse for a pet item then choose “Buy now”, do this for 5 items


      TC05: Steps for Add a comment:                                                                       3.6       30         1.94     3.57
        • Browse a pet item
        • Submit comment “This is TC05”


      TC06: Steps for View distance                                                                        1.8       259.2      1.81     3.4
        • Browse a pet item
        • Enter zip code “94105” to “Your location”
        • Click “Get distance”


      TC07: Steps for Add news                                                                             10        1440       4.36     10.89
        • Logged in successfully with correct username and password
        • Click “Admin” > “News” tab > “Add”
        • Enter required information for news
        • Submit
        • Browse the news


      TC08: Steps for Support donations                                                                    2.96(*)   13.96(*)   2.62     6.95
        • Logged in successfully with correct username and password
        • Click “Offer” > “Add new”
        • Enter required information for a pet item
        • Select “Donated” option
        • Submit
        • Repeat for original version (without “Donated” option)


      TC09: Steps for Register recyclables                                                                 0.6       86.4       2.99     4.80
        • Click “Recyclable”
        • Specify “Weight” is 1 kg and other required information
        • Submit


      TC10: Steps for Create report                                                                        0.07      10         1.27     1.13
        • Logged in successfully with correct username and password
        • Click “Admin” > “Report” tab > “Create Report”


      TC11: Steps for Load reports                                                                         0.07      10         0.73     1.61
        • Logged in successfully with correct username and password
        • Click “Admin” > “Report” tab > “Create Report”
        • Select “From” and “To”


      SUMMARY                                                                                              32.21     1890.08    25.87    64.53
                                                                                                                                                  3
                                             TABLE I: Evaluation results for sustainability requirements



3 (*) Value got from original version




                                                                          13
   estimate distance and cost of travel before making a               •   When choosing an expected emissions level (in
decision on purchasing or transportation. It also improves                section 4), we have consistently looked for lower-
awareness on CO2 e emissions to environment caused                        bound estimates which the updated system would
by transportation, as well as reduces processing time by                  have to fit into. Thus, it is very likely that the
factor of about 76.                                                       carbon reduction from the presented redesign is in
   The TC07 scenario for Add news evaluates to very                       fact larger than what we have reported it to be.
effective results with the emissions coming to under 50%
                                                                       Tensions within Sustainability: The findings from
of the expected value and over 100-fold improvement in
                                                                    this case study demonstrate that there is an ever present
processing time.
                                                                    tension between the three “pillars” of sustainability, i.e.,
   The TC08 scenario for Support donations task extends
                                                                    its environmental, economic, and social sides. This is
the original version (with marking selected items as
                                                                    because economic sustainability for a business supported
donations) with additional slight reduction in resultant
                                                                    via software aims to increase consumption, while en-
emissions. The processing time for uploading donation
                                                                    vironmental sustainability aims to reduce it. The social
items is also twice as quick. The time and emissions are
                                                                    sustainability, in turn, has a conflict with itself - aiming at
reduced since the user has to sign in with the updated
                                                                    both increased, faster, and more convenient consumption
version but must type in his/her contact information for
                                                                    available to all and vibrant, un-spoiled natural environ-
every new submission with the original system (as it does
                                                                    ment at the same time. Yet, as it stands today, increased
not support user accounts).
                                                                    consumption inevitably lead to environmental depletion.
   While the TC09 scenario for Register recyclables task
                                                                    This conflict has been observed within several discussed
takes much less time than expected, it causes 2.99 g
                                                                    requirements (e.g., should the system provide contin-
CO2 e emissions - about 5 times greater than a single
                                                                    uous on-line support at increased economic expense?
query (which we use as the expected emissions target).
                                                                    should the system increase number of users at the cost
Yet, as discussed in previous session, the overall environ-
                                                                    of increased emissions?, etc.). While conflicts within
mental benefit from this task is likely to be much greater
                                                                    system goals/requirements are quite commonplace in all
due to reduction in virgin resource extraction demand.
                                                                    development projects, there is an additional diminution
This, however, is not evaluated in the present study.
                                                                    to sustainability conflicts: since social and environmental
   The TC10 Create report and TC11 Load reports
                                                                    dimensions are “invisible” , until recently, the monetary
scenarios for the Reporting task both have much higher
                                                                    returns have massively biased trade-off resolutions in
emissions than the 10 seconds use of an efficient lap-
                                                                    favour of income maximisation. It is now necessary
top. One reason for this is that to create a report the
                                                                    to educate software professionals on the value of the
administrator has to access the admin page on the web
                                                                    invisible environmental and social dimensions. This does
and select the categories, products and articles which
                                                                    not mean that businesses must always lose income. On
are listed on it. This takes effort from both server and
                                                                    the contrary, many environmentally or socially motivated
client to process. However, the actual emissions values
                                                                    requirements will turn a profit. For instance, in Pet Shop,
are rather small and the processing time is also short.
                                                                    registration for collecting recycled products, not only
Since, these functions support monitoring sustainability
                                                                    helps to reduce a large amount of landfill rubbish but
benefits, which helps the manager to evaluate and plan
                                                                    also open new markets of providing materials to potential
further actions, all of which is useful to a system.
                                                                    manufactures, which contributes to business profit.
                    VI. D ISCUSSION                                    Domain-Dependent Sustainability: It should be
                                                                    noted that, as each domain has its own requirements,
  Validity of Results: While all code and experimental              so sustainability has different manifestations for differ-
data presented in this paper are freely available for cross-        ent domains. Sustainability for each domain must be
validation, there are two issues that are worth pointing            analysed with different criteria. PetShop application, for
out with regards to the validity:                                   example, is examined mostly under supply chain context
  •   The estimates for CO2 e emissions are largely taken           which focuses on how to increase the sales, effectively
      from [5] where they are calculated using the cur-             exploit existing resources and extend the market. There-
      rently accepted carbon calculation methodologies.             fore, besides basic function of selling products, the indi-
      However, it is worth noting that alternative carbon           rect criteria are improving customer satisfaction, reusing
      estimation techniques are also well used and differ-          or reducing resources through all phases of e-business
      ent techniques often lead to different estimates.             from viewing products to processing orders. Goals like



                                                               14
customer convenience, optimised travel routes, new mar-             implemented, and the re-designed system was evaluated.
kets etc. become important sustainability concerns for an           Compared with the similar functions in the original
e-business. This list will inevitably be very different for         version, the new version reduces CO2 emissions by 20%
a different study domain.                                           and increases processing time within the system by a fac-
   Metrics and Measurements: As discussed above,                    tor of 28. As a future work, we are researching on factors
we utilised measurements via power consumption and                  that impact on e-commerce application in terms of the
processing time to quantify environmental impact of the             relationship between power consumption and processing
software. This worked well in most scenarios, however,              time, deployment environment and data usage to achieve
in a few cases we observed a conflict between different             more accurate metrics to measure sustainability benefits,
runs of the scenarios. For instance, in case of TC09 2              as well as problems in measuring social sustainability.
runs of the scenario measured to a significantly lower
                                                                                               R EFERENCES
time than the other 3. It may be because some tasks
depend of several ‘outside’ factors, such as network                 [1] C. Canon and M. Mahaux. Integrating the complexity of
                                                                         sustainability in requirements engineering. First international
communications paths, loads on the DNS servers, etc.                     workshop on Requirements for Sustainable Systems, 2012.
This issue needs to be further investigated. Additional              [2] Eva Kern Markus Dick, Jakob Drangmeister and Stefan Nau-
work is required in evaluating the impact of the redesign                mann. Green software engineering with agile methods. In
                                                                         GREENS, pages 78–85. IEEE, 2013.
on the software quality through additional metrics. We               [3] J. Cabot, M. S. Easterbrook, J. Horkoff, L. Lessard, S. Liaskos,
also observed that measurement of social sustainability                  and N. J Mazón. Integrating sustainability in decision-making
impact was not feasible in this case study as our case                   processes: A modelling strategy. Software Engineering - Com-
                                                                         panion Volume, 2009. ICSE-Companion 2009. 31st International
study system was not in real use. However, the measure-                  Conference on, pages 207–210, 2009.
ment process and metrics for this area of sustainability             [4] M. Mahaux, P. Heymans, and G. Saval. Discovering sustainability
are also grossly under-researched at present.                            requirements: An experience report. Requirements Engineering:
                                                                         Foundation for Software Quality. 17th International Working
                   VII. C ONCLUSION                                      Conference, REFSQ 2011, pages 19–33, 2011.
                                                                     [5] M. Berners-Lee. How bad are bananas? Canada : Greystone
   With continuous improvements in technology, more                      Books, 2011.
and more applications are developed to support human                 [6] S. Naumann, M. Dick, E. Kern, and T. Johann. The greensoft
                                                                         model: A reference model for green and sustainable software and
demands. However, when software is integrated into                       its engineering. Sustainable Computing: Informatics and Systems,
physical world, it affects many wider aspects of life (such              1(4):294–304, 2011.
as environment and society at large) which are very often            [7] F. L Steimer and T Steimer. Green e-business. 2010 4th IEEE In-
                                                                         ternational Conference on Digital Ecosystems and Technologies
not considered relevant during software development.                     (DEST 2010), pages 252–253, 2010.
This study reports on an experience of discovering and               [8] M. Korte, K. Lee, and Chun Che Fung. Sustainability in
integrating such wider requirements into an existing ap-                 information systems: Requirements and emerging technologies.
                                                                         2012 International Conference on Innovation Management and
plication. Throughout the case study, we have observed                   Technology Research, pages 481–485, 2012.
a tension between different dimensions of sustainability.            [9] L. Minas and B Ellison. The problem of power consumption
Thus, it is not sufficient to simply ‘increase’ sustainabil-             in servers.        http://lass.cs.umass.edu/∼shenoy/courses/fall09/
                                                                         691gc/slides/Lec12-1-Slides-Power\%20Consumption\%20in\
ity of software, as this may very well mean that one                     %20Servers CS697GC Fall2009-V02.ppt, Fall 2009. Accessed:
sustainability dimension (e.g., economic) of that soft-                  20/03/2013.
ware system is very well supported, while others are ne-            [10] Oracle and/or its affiliates the source for java technol-
                                                                         ogy collaboration. https://java.net/projects/petstore/sources/svn/
glected. For a system to be truly sustainable the increase               show/tags/javapetstore-2 0-ea-v5 June 07?rev=699. Accessed:
in sustainability must also be achieved in balance, so that              20/12/2012.
all pillars of sustainability are equally well supported.           [11] istarwiki.org istarquickguide.           http://istar.rwth-aachen.de/
                                                                         tiki-index.php?page=iStarQuickGuide. Accessed: 20/03/2013.
In the presented study, we have considered economists,              [12] Mark Blackburn. Five ways to reduce data center server power
environmentalist and socially concerned stakeholders,                    consumption. White paper, The Green Grid, 2008.
as we think that including such diverse stakeholders                [13] Spring Source Hyperic sigar - system information gatherer and
                                                                         reporter. https://support.hyperic.com/display/SIGAR/Home. Ac-
is a productive approach for capturing sustainability                    cessed: 20/12/2012.
goals. Evaluation methods and metrics are also proposed             [14] Mozilla Foundation(US) add-ons. https://addons.mozilla.org/
for environmental and economic requirements. Here we                     en-US/firefox/addon/firebug/. Accessed: 12/05/2013.
                                                                    [15] Energy saving power meter.
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



                                                               15