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