<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>Evaluation of Software Product Quality Attributes and Environmental Attributes using ANP Decision Framework</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Sedef Akınlı Koçak</string-name>
          <email>Sedef.akinlikocak@ryerson.ca</email>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Gülfem Işıklar Alptekin</string-name>
          <email>gisiklar@gsu.edu.tr</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Ayşe Başar Bener</string-name>
          <email>Ayse.bener@ryerson.ca</email>
          <xref ref-type="aff" rid="aff2">2</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Computer Engineering, Galatasaray University</institution>
          ,
          <addr-line>Istanbul</addr-line>
          ,
          <country country="TR">Turkey</country>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>Data Science Laboratory, Environmental Applied Science, Ryerson University</institution>
          ,
          <addr-line>Toronto</addr-line>
          ,
          <country country="CA">Canada</country>
        </aff>
        <aff id="aff2">
          <label>2</label>
          <institution>Data Science Laboratory, Mechanical and Industrial, Engineering, Ryerson University</institution>
          ,
          <addr-line>Toronto</addr-line>
          ,
          <country country="CA">Canada</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>-Green software development is a relatively new research area within green IT. Software development industry has started getting pressure from regulators to consider green software development. As a result, green attributes of software products are gaining importance as quality attributes. In this study, we evaluate environmental sustainability and software quality criteria using a well-known multi criteria decision making approach: Analytical Network Process (ANP). The aim is to determine the relationships among quality and environmental attributes and relative priorities of attributes. The results are presented as a guide for green software developers. The priority weights of attributes may be used to analyze trade-off between conflicting product quality and environmental requirements. Index Terms- Green Software, Software Quality, Environmental Sustainability, Analytic Network Process</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>I. INTRODUCTION</title>
      <p>In software development, comprehensive specification and
evaluation of software product quality is a key factor in
ensuring desired level of quality. A desired level of quality for
software may be achieved by defining appropriate quality
characteristics, taking into account the purpose of usage of the
software product.</p>
      <p>
        Similarly, green information and communication
technologies (ICT) and green software have become important
research areas that aim to achieve environmentally sustainable
computing systems. Designing green and sustainable software
that also satisfies customer needs in new software products
and/ or legacy software are complex tasks. Developing green
software necessitates identification of the development
requirements as well as quality metrics. There have been
various software quality models in the literature. These models
propose sets of metrics to evaluate both product and process
quality [
        <xref ref-type="bibr" rid="ref1 ref2 ref3 ref4">1, 2, 3, 4</xref>
        ].
      </p>
      <p>
        Quality requirements (aka quality attributes) and customer
requirements (aka functional requirements) sometimes may
conflict. In these cases, practitioners make trade-off decisions
or prioritization to solve the conflict. However, in most cases
functional requirements and quality attributes depend on each
other, thereby complicating the trade-off decisions [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ]. In
addition, sustainability concerns induce environmental
requirements (green requirements) to the system. Those green
requirements generally create conflicts on both functional
requirements and quality attributes. Interdependencies
between environmental concerns and quality attributes are
typically hidden compared to the dependencies between
functional requirements and quality attributes. Hence, in order
to develop environmentally sustainable software products, we
need to address these conflicts and prioritize concerns and
requirements. A multi-criteria decision making (MCDM)
approach is suitable for this aim since it incorporates multiple
objectives for prioritizing conflicts [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ]. MCDM approaches are
known for their flexibility in handling complex information,
and their ability to construct values during priority-setting in
trade-off analysis.
      </p>
      <p>
        In our earlier work [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ], we built a framework using ANP
which is a widely used MCDM approach to prioritize quality
and environmental criteria in a general sense. The work in this
paper extends our previous framework by defining sub-criteria
of quality and environmental criteria. The main contribution of
this work is that it expands the framework that enables decision
makers determining the importance of each requirement when
deciding on the technical specifications of the software. A
trade-off analysis may also be applied during requirement
analysis step where making decisions regarding sustainability
affects both software product development and software system
itself.
      </p>
      <p>Another key consideration for delivering business value with
environmental responsiveness is deciding what requirements to
develop and how to develop. At this point, trade-offs among
different requirements and stakeholders emerge. Trade-offs are
inevitable and need to be balance wisely. Our research seeks to
analyze the various trade-off possibilities.</p>
      <p>This paper is organized as follows: Section II summarizes
the concepts of software quality models and evaluations,
requirement prioritization, software quality and environmental
attributes. This section also presents the related literature. In
Section III, the methodology used in the evaluation framework
is briefly explained. The analysis, the results and the discussion
with trade-off analysis are presented in Section IV. Section V
gives conclusions and future work.</p>
      <p>Criteria/Goals</p>
    </sec>
    <sec id="sec-2">
      <title>II. RELATED WORK AND BACKGROUND</title>
      <p>
        Researchers have been studying sustainability of software
from different perspectives: hardware energy efficiency in
terms of power consumption; optimization of algorithms and /
or software architecture; effective and efficient usage of
software engineering practices and tools as defined in ISO/IEC
system and software engineering standard series [
        <xref ref-type="bibr" rid="ref10 ref8 ref9">8, 9, 10</xref>
        ].
      </p>
      <sec id="sec-2-1">
        <title>A. Software Quality Models</title>
        <p>
          Software quality is defined as a “set of features and
characteristics of product or service that bears on its ability to
satisfy the stated or implied needs” [
          <xref ref-type="bibr" rid="ref8">8</xref>
          ]. Software development
projects need to be completed within certain constraints such as
time, budget, and resources. Therefore, managers need to make
trade-off decisions to determine how much functionality/ or
which features will be included in each release. In software
engineering literature, various software quality models have
been proposed. Some of the most standard and well-known
quality models are McCall’s model [
          <xref ref-type="bibr" rid="ref1">1</xref>
          ], Boehm’s model [
          <xref ref-type="bibr" rid="ref2">2</xref>
          ],
Bowen’s model [
          <xref ref-type="bibr" rid="ref3">3</xref>
          ], Dromey’s model [
          <xref ref-type="bibr" rid="ref4">4</xref>
          ], ISO/EC 9126-1 [
          <xref ref-type="bibr" rid="ref8">8</xref>
          ],
and ISO/EC 25010 [
          <xref ref-type="bibr" rid="ref10">10</xref>
          ] models. The considered quality criteria
in each model is summarized in Table 1. The common criteria
found in the majority of these models are: efficiency,
reliability, usability, functionality, maintainability, and
portability.
        </p>
      </sec>
      <sec id="sec-2-2">
        <title>B. Decision Making in Software Requirements</title>
        <p>Software development is a design intensive process. Every
person involved in this process has to make a number of
decisions, each of them with several possible choices. Most of
the time, decisions are made according to personal knowledge
and experience. But, as software development projects get
complex and diverse, decision making becomes a group
activity where people need to use decision tools and techniques
to communicate and coordinate their decisions.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+</p>
        <p>
          Requirement prioritization is a process of managing the
relative importance and determination of different requirements
within the limited resources. It is a challenging activity to find
the right balance among competing quality requirements. In
this paper, ANP, a well-known MCDM approach, is used to
prioritize the criteria. It improves the quality of decisions by
providing information on trade-offs, and it increases confidence
in decisions and provide insights into the criteria and the
alternatives. In decision support systems studies, Analytical
Hierarchy Process (AHP), hybrid ANP/AHP method, fuzzy
AHP [
          <xref ref-type="bibr" rid="ref11">11</xref>
          ], AHP-goal model, binary search tree creation,
greedy-type algorithms [
          <xref ref-type="bibr" rid="ref12">12</xref>
          ] are the most commonly used
methods. Most of the above mentioned tools and methods
recognize the AHP as a reference method. However, AHP is
difficult to use with large sets of requirements. In order to solve
this problem, a case-based ranking method [
          <xref ref-type="bibr" rid="ref13">13</xref>
          ] is introduced
for decision support system based on a machine learning
approach. Another technique is called quality function
deployment (QFD) which helps the organization from the early
stages of production process (i.e. designing phase) to reach the
customer’s satisfaction with proper technical requirements.
QFD has been adopted as a software quality function
deployment (SQFD) [
          <xref ref-type="bibr" rid="ref14">14</xref>
          ] and utilized to plan and design new
software or improved software. Although the number of
research on applying SQFD to software industry is limited
compared to manufacturing industry, the use of QFD in
software engineering has gained more attention in recent years.
        </p>
      </sec>
      <sec id="sec-2-3">
        <title>C. Software Quality Attributes and Sustainability</title>
        <p>
          Various systems (e.g. energy systems, management
systems, and computer systems) take sustainability as an
objective for reaching a high quality level. Penzenstadler,
Mahaux, and Salinesi [
          <xref ref-type="bibr" rid="ref15">15</xref>
          ] stated that current discussions on the
sustainability requirements foster on how to define, measure
and assess sustainability as quality attribute of software. A first
quality model for green and sustainable software was
developed by Kern, Dick, Naumann, Guldner, and Johann [
          <xref ref-type="bibr" rid="ref16">16</xref>
          ].
It refers to quality factors from ISO /IEC 25000, and it is based
on the directly and indirectly related criteria of software. It
gives an overview of potential aspects which may be taken as
sustainability criteria and metrics for software products. Calero
and Bertoa [
          <xref ref-type="bibr" rid="ref17">17</xref>
          ] considered sustainability as a new factor that
affects software product and process quality. In their work, a
new quality model (ISO 2510+S) is presented based on
ISO/25010. The authors differentiated the quality factors in
respect to the sustainability impact and described related and
unrelated sub-characteristics. All of these studies discuss the
relation of the software quality with the sustainability in a
general manner. They point out that the product, as well as the
quality in use, needs to be considered when evaluating the
sustainability of the software. So far, to the best of our
knowledge, there is no empirical study that uses the quality
attributes with sustainability attributes.
        </p>
      </sec>
      <sec id="sec-2-4">
        <title>D. Environmental Criteria and Green Metrics</title>
        <p>
          With the purpose of clarifying different ways that ICT can
contribute to the reduction of CO2 emissions and sustainable
development, three levels of effects of ICT have been
identified [
          <xref ref-type="bibr" rid="ref18 ref19">18, 19</xref>
          ]: direct, indirect and systematic. In terms of
identifying environmental criteria, in this paper, we are
interested in direct effects. Direct effects refer to those caused
by software product, i.e. the resource consumption when using
the applications. Environmental performance of the software
systems can be evaluated with environmental criteria and
green metrics. They are also necessary for practitioners to
develop, deploy and control the system sustainability. Here, we
address this point by analyzing green metrics as a criteria set.
Those criteria may be used in setting up environmental
objectives and evaluating the sustainability of software
products. In order to refine such a group of criteria, we
reviewed recent green metrics studies. Kansal and Zhao [
          <xref ref-type="bibr" rid="ref20">20</xref>
          ]
presented an energy profiling metric for applications at design
phase. The energy consumed by an application is divided into
two parts: the performance required by the application and the
system resources used. Their application energy profiling
approach considers how energy consumption is spanned across
the involved resources such as CPU, disk, memory and
network interfaces during different states. Lago and Jansen [
          <xref ref-type="bibr" rid="ref21">21</xref>
          ]
focused on process, service and people aspects and proposed a
framework which makes environmental strategies and green
indicators available as-a-service. Their adaptation strategies are
based on one single metric for each. The metrics are not
analyzed together and their dependencies are not considered.
However, in our proposed approach, we analyze priorities
based on the dependencies of metrics using ANP approach.
        </p>
        <p>
          In a recent systematic literature review, Bozzelli, Gu, and
Lago [
          <xref ref-type="bibr" rid="ref22">22</xref>
          ] identified that most of the measures were defined to
measure energy consumption, either directly or as a
performance indicator. Following that study, Agarwal, Nath,
and Chowdhur [
          <xref ref-type="bibr" rid="ref23">23</xref>
          ] indicated that software performance
depends on the basic computing resources like the CPU and the
memory. Software is required for faster CPUs and increased
memory. In this situation, sustainability is affected from the
increasing resource consumption. Therefore, we concluded that
we need to evaluate software products sustainability in terms of
resource usage.
        </p>
        <p>
          According to Kipp, Jiang, and Fugini [
          <xref ref-type="bibr" rid="ref24">24</xref>
          ], green metrics are
the key drivers to identify the “greenness” of an IT application
and to indicate the energy consumption, energy efficiency, and
energy saving possibilities. They classify four clusters of
metrics: a) IT resource usage that is related to energy
consumption, b) lifecycle metrics that monitor energy
consumption and metrics that develop energy aware
indicators, c) energy impact metrics that are related to the
lifecycle impact on the environment (i.e. the electricity, the
power supply, the consumed material, and the CO2 emissions),
and d) organizational metrics that consider the assessment of
additional costs due to energy-related initiatives. The
following table (Table II) summarizes the main categories of
metrics used for each cluster [
          <xref ref-type="bibr" rid="ref24">24</xref>
          ].
        </p>
        <p>
          Using the same classification, Ferreira, Pernici, and Plebani
[
          <xref ref-type="bibr" rid="ref25">25</xref>
          ] recently have presented two different types of indicators
for different system layers: Key Performance Indicators
(KPIs) and Green Performance Indicators (GPIs). KPIs
measure system attributes that are based on quality models,
IT resource
        </p>
        <p>usage
- CPU usage
- Memory
usage
- Storage
usage
- I/O usage
while GPIs measure the system greenness with respect to
energy consumption. Their approach focuses on GPIs, in
particular, usage and energy related indicators. Although most
of them may represent different system layers, their proposed
framework turns indicators through normalization functions
such that they can be compared and aggregated within
meaningful clusters.</p>
        <p>
          In our study, we focus on the criteria that are directly related
to the quality and environmental attributes. Hence, we
aggregate two sub-criteria sets for our study using Kipp, Jiang,
and Fugini [
          <xref ref-type="bibr" rid="ref24">24</xref>
          ] and Ferreira, Pernici, and Plebani [
          <xref ref-type="bibr" rid="ref25">25</xref>
          ]
classifications: resource consumption that have the higher
influence over energy consumption and energy impact which is
closely related to the resource usage. The cluster criteria,
subcriteria and their indicators are listed in Section IV.B.
        </p>
      </sec>
    </sec>
    <sec id="sec-3">
      <title>III. ANALYTIC NETWORK PROCESS (ANP)</title>
      <p>
        The ANP generalizes a widely used multi-criteria decision
making tool, the AHP, by replacing hierarchies with networks.
The AHP is a well-known technique that decomposes a
problem into several levels in such a way that they form a
hierarchy [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ]. ANP uses a network structure with
interrelationships among the decision levels and attributes [
        <xref ref-type="bibr" rid="ref26">26</xref>
        ].
A relative ratio scale of each element measurement is derived
from pairwise comparisons of the elements in a level of the
hierarchy with respect to an element of the preceding level.
ANP provides a general approach to deal with decisions
considering the dependence of higher level elements to lower
level elements and the dependence of the elements within a
level. In general the ANP consists of three stages:
1. Defining the goal, criteria, sub-criteria,
2. Defining the interdependencies and the network, and
3. Calculation of the priorities of the elements [
        <xref ref-type="bibr" rid="ref26">26</xref>
        ].
      </p>
      <p>
        The relative importance value according to pairwise
comparisons between criteria and sub-criteria are performed
using a scale of 1–9, where a score of 1 indicates equal
importance between the two elements and 9 represents the
extreme importance of one element compared to the other one.
The relations are calculated as in Equation.1
a ji 
1
aij
(1)
where aij denotes the importance of the ith element compared to
the jth element, and aii=1 are preserved in the pairwise
comparison matrix to improve the consistency of the
judgments. The ANP requires that the consistencies of pairwise
comparison matrices are checked to prove the consistency of
comparisons. A zero value would indicate perfect consistency
whereas larger values indicating increasing levels of
inconsistency. Saaty [
        <xref ref-type="bibr" rid="ref26">26</xref>
        ] has indicated that the consistency
should be about 10% or less to be acceptable. If it exceeds the
10% level, value judgment may need to be revised.
      </p>
      <p>
        After calculating the importance aij, the composite weights
are extracted considering the interrelationships between criteria
and sub-criteria [
        <xref ref-type="bibr" rid="ref27">27</xref>
        ]. We utilized ANP approach to define
priority weights of the quality and environmental criteria and
their sub-criteria. This approach best suits in our aim since it
identifies the interdependencies between criteria and their
subcriteria in the network structure.
      </p>
    </sec>
    <sec id="sec-4">
      <title>IV. EVALUATION FRAMEWORK</title>
      <sec id="sec-4-1">
        <title>A. Integrating Environmental Requirements in Decision</title>
      </sec>
      <sec id="sec-4-2">
        <title>Making</title>
        <p>Users as well as other stakeholders, such as project
managers, regulators, other decision makers, recognize the
limited resources of the system and introduce green
requirements to the development process. In addition to
quality requirements, environmental concerns possess multiple
viewpoints and conflicts. They must be identified and
eventually resolved. The value here is not only identifying the
conflicts but also eliciting the opportunities resulting from the
trade-offs.</p>
        <p>
          Resource concerns, efficiency and time constraints have
direct effects on software development life cycle. Integrating
green requirements to the development process creates
diversity in understandings, source of knowledge, and
opportunities based on interdependencies rather than conflicts
between requirements. Resource usage, for example, directly
leads to changes in efficiency and reliability, which affects the
quality. While resource usage affects functionality of the
product, it also brings the opportunity to save energy [
          <xref ref-type="bibr" rid="ref28 ref29">28, 29</xref>
          ].
        </p>
        <p>As a result, presence of green requirements in the process
of developing the decision framework provides an opportunity
to explore and construct different development outcomes
regarding different goals.</p>
        <p>The objective of our proposed framework is to determine
the priority weights of software quality and environmental
characteristics. Those weights will help to identify technical
requirements and their correlations that will be useful in
design and development processes of green software.
Calculation of the metrics used in the framework are not
detailed in this paper since the main focus is on the relative
importance and priorities of the criteria on their cluster. The
decision process addresses the problem of selecting the most
important criteria that a software developer needs to focus in
the design process. The process can be divided into three main
steps:
1. Identifying the criteria and sub-criteria and their
interdependencies.
2. Making pairwise comparisons using questionnaire.
3. Obtaining the interdependent priorities of the criteria
and sub-criteria.</p>
        <p>Each step is presented in more detail in the following
subsections.</p>
      </sec>
      <sec id="sec-4-3">
        <title>B. Determination of Criteria and Sub-Criteria</title>
        <p>
          Quality criteria (functionality, usability, efficiency,
reliability) and their related sub-criteria were adopted from
common software product criteria in the literature.
Environmental criteria were adopted from IT resource usage
and energy impact categories (see sub-section II.D) [
          <xref ref-type="bibr" rid="ref24">24</xref>
          ].
Table III describes the criteria and the selected sub-criteria.
Figure 1 depicts our decision framework. Here metrics and
indicators are used interchangeably.
        </p>
        <p>For environmental dimension of sustainability, the
classification is important since all the interdependencies
related to both quality and environment are elicited for the
trade-off analysis. Similar classification may also be used to
identify other aspects of sustainability dimensions that
correspond to quality requirements.</p>
      </sec>
      <sec id="sec-4-4">
        <title>C. Questionnaire and Pairwise Comparisons</title>
        <p>
          Our proposed approach has two major criteria in the first
level, six sub-criteria in the second level and twenty one
subcriteria in the third level. In our previous study [
          <xref ref-type="bibr" rid="ref7">7</xref>
          ], we
calculated the priority weights of two criteria (quality and
environment) and related sub-criteria (Qi, Ei).
        </p>
        <p>
          We prepared a questionnaire for experts in order to find out
the weights for criteria and interactions among all the second
and third level indicators. Hence, we extended the framework
by integrating third level indicators. The questionnaire was
filled out by the same expert group as in our first study. Experts
are from four different software development companies. They
are software experts with an experience of 4 to 20 years in the
field. Khorramshahgol and Moustakis [
          <xref ref-type="bibr" rid="ref30">30</xref>
          ] pointed out that best
suited number of experts as an interviewee is in general 5–15
persons.
        </p>
        <p>
          In order to avoid any vagueness or hard readability that
may affect the answers given by the experts, and facilitate the
understanding about criteria and the ANP model, we conducted
personal interviews. At the beginning of the questionnaire, the
meaning of the criteria and comparison of criteria were
provided to advance understanding of the contents in the
questionnaire by the experts. The geometric mean of 10
questionnaires is used to form the output of the pairwise
comparisons [
          <xref ref-type="bibr" rid="ref27">27</xref>
          ].
        </p>
      </sec>
      <sec id="sec-4-5">
        <title>D. Analysis of the interdependencies between the criteria and sub-criteria</title>
        <p>In this step of the methodology, we applied the ANP
approach. We used the Super Decisions1 software tool in order
to calculate the results of final priorities of the sub-criteria
(Figure 1). The Super Decisions is a simple and easy-to-use
software for constructing decision models with dependence and
feedback. The consistency indexes of all these matrices were
found to be smaller than 0.10, which is in the acceptable range.
Small consistency indicates the consistency of experts’
evaluations. The pairwise comparisons enabled us to retrieve
relative weights of criteria and sub-criteria and indicators.</p>
      </sec>
      <sec id="sec-4-6">
        <title>E. Results and Discussion</title>
        <p>Each expert has to decide which one of the two given
criteria is more important in developing a green and sustainable
software product, along with its relative importance degree.
They defined the degree of importance using the 1-9 scale. (For
instance, 9 means that the first criterion is extremely important
compared to the second one). In order to determine aggregate
individual judgments, we took the geometric average of the
responses. Table IV through Table XI represent the geometric
means of pairwise comparisons between environmental
sustainability criteria and quality criteria.
1 Super Decisions (ver. 2.2.6) [Open source Software]. Available
from: http://www.superdecisions.com</p>
        <p>These comparison values were used as input to the ANP
methodology, and we calculated the priorities which are
summarized in Table XII. As the last step of the proposed
procedure, the final priorities of the each criteria, sub-criteria
and indicators were calculated.</p>
        <p>The results indicate that, among the two environmental
criteria, the resource usage criterion has the highest priority
with 66%. This shows that it has a high impact on green
software development. Among the four quality related
subcriteria, the reliability has the highest priority with 43%,
followed by the efficiency and the functionality with 24%, and
23%, respectively.</p>
        <p>The reliability of a system is a measure of its ability to
provide a failure-free operation. This also means the actual
usage time of the product by user. Therefore, the reliability is
correlated with the behavior of software with respect to time,
and it is one of the sub-criteria of the efficiency. The
efficiency is the second important quality criteria, with 28% of
weight, followed by usability and functionality. Software
efficiency considers the amount of information technology
resources that are used efficiently in terms of energy.
Undoubtedly, the priority weights may depend on the software
type.</p>
        <p>The results related to environmental criteria show that
CPU usage has the highest priority with 43% followed by I/O
usage and memory usage with 24% and storage usage with
9%. This demonstrates that the most important energy related
resource is the CPU. The resource usage has a direct influence
on the energy consumption sub-criteria, which has the higher
relative weight with 41% in the energy impact criteria
followed by CO2 emission with 33%.</p>
        <p>
          Figure 2 shows the comparison of results of our findings
in this paper with our previous study [
          <xref ref-type="bibr" rid="ref7">7</xref>
          ]. The results reveal
that the priority ranking of the criteria is different. In our
previous work, the efficiency had the highest priority (34%)
followed by reliability (24%), functionality (23%) and
usability (19%). However, in this work, the reliability of the
product has the highest weight (43%) followed by efficiency
(28%), usability (14%) and functionality (13%). The reason is
that the integration of more detailed sub-criteria and indicators
enables DMs to better analyze interdependencies. Therefore,
the final priority ranking may change if we ignore the
interactions of detailed sub–criteria and indicators.
        </p>
      </sec>
      <sec id="sec-4-7">
        <title>F. Assessing the Criteria and Trade-off Analysis</title>
        <p>The sub-criteria describe the entire system with a given
goal and are, therefore, usable and widely understood
indicators of quality and green attributes of software. Criteria
with higher influence to the system’s goal get higher weights.
For instance, considering the energy consumption, criteria
related to the CPU power consumption have higher importance
than I/O. Hence, we can conclude that CPU related events
represent higher risk for both quality and environment.</p>
        <p>The set of quality and environmental criteria are highly
related to the time behaviour that has high impact on resource
usage, energy consumption and efficiency. The results indicate
two major trade-offs: First one is between reliability, which is
threatened by performance degradation, system behavior and
functionality loss, and limited resource usage. The second one
is between energy impact which is threatened by energy
consumption and related CO2 emissions, and efficiency of the
product which is threatened by time behaviour. Although
resource usage has high priority, resource utilization does not
show the same behaviour as quality criteria.</p>
        <p>The analysis reveals that future action would be converting
reliability, efficiency and resource usage trade-offs into the
opportunities for saving energy.</p>
      </sec>
      <sec id="sec-4-8">
        <title>G. Threats to Validity</title>
        <p>The overall objective of the study is to evaluate the
priorities of the criteria to achieve green software. We
introduced a prioritization method to gain a better
understanding of interdependencies of the quality and
environmental criteria in green software development.
Selection of the criteria may introduce bias. We chose the
quality criteria from well-known and mostly used quality
models. We selected the environmental criteria from the IT
related environmental studies. Environmental applications on
IT systems are fairly new research area. Therefore, the
environmental criteria might be different according to the
application area. The number of questionnaires filled by the
experts may be another threat to validity. Since a continuous
nature of the study, we needed to interview the same DMs in
order to be consistent and be able to make comparisons.</p>
      </sec>
    </sec>
    <sec id="sec-5">
      <title>V. CONCLUSION AND FUTURE WORK</title>
      <p>Most software development companies need to adapt their
development processes to meet new software business
standards. One of these standards is the development of
environmentally friendly products. In many cases, these
objectives are achieved at a cost of reducing or increasing the
consumption of various resources within the organization. As
a result, the software development industry needs making
certain trade-offs between the demands of end-users and the
requirements for environmental sustainability. This work is an
initial attempt to prioritize quality and environmental
attributes, and further to build trade-off models. We made use
of ANP, a well-known MCDM technique, for dealing with
conflicting criteria.</p>
      <p>The proposed ANP framework is subject to the judgment of
experts for the comparison among the criteria, sub-criteria and
indicators. In the process of creating the ANP decision
framework, the discussion with experts was made before the
relationships among levels and criteria are given. Therefore,
the ANP structure in this research is reliable and valid.</p>
      <p>Using our approach and framework, decision makers may
determine requirements’ priorities and use the framework as
the basis to see the potential outcomes and impacts of the
criteria. Additionally, this approach offers an opportunity to
properly shape software development projects from the
beginning to the maintenance phase in a strategic way.</p>
      <p>Next steps will be constructing a QFD model for new
green software product development, by using the ANP
weights obtained from this study. We plan to integrate a goal
programming technique to QFD in order to consider resource
and budget limitations.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [1]
          <string-name>
            <given-names>J. A.</given-names>
            <surname>McCall</surname>
          </string-name>
          ,
          <string-name>
            <given-names>P. K.</given-names>
            <surname>Richards</surname>
          </string-name>
          , and
          <string-name>
            <given-names>G. F.</given-names>
            <surname>Walters</surname>
          </string-name>
          . Factors in software quality,
          <source>General Electric, National Technical Information Service</source>
          ,
          <year>1977</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [2]
          <string-name>
            <given-names>B. W.</given-names>
            <surname>Boehm</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J. R.</given-names>
            <surname>Brownand</surname>
          </string-name>
          , and
          <string-name>
            <given-names>J. R.</given-names>
            <surname>Kaspar</surname>
          </string-name>
          ,
          <source>Characteristics of Software Quality, TRW Series of Software Technology</source>
          , Amsterdam, North Holland,
          <year>1978</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [3]
          <string-name>
            <given-names>T .P.</given-names>
            <surname>Bowen</surname>
          </string-name>
          ,
          <string-name>
            <given-names>G. B.</given-names>
            <surname>Wigle</surname>
          </string-name>
          , and
          <string-name>
            <given-names>J. T.</given-names>
            <surname>Tsai</surname>
          </string-name>
          . “
          <article-title>Specification of software quality attributes</article-title>
          ,
          <source>” Technical Report RADC-TR-85-37</source>
          , Rome Air Development Center,
          <year>1985</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [4]
          <string-name>
            <surname>R. G</surname>
          </string-name>
          . Dromey, “
          <article-title>A model for software product quality,” Software Engineering</article-title>
          , IEEE Transaction, vol.
          <volume>21</volume>
          , no.
          <issue>2</issue>
          ,
          <issue>1995</issue>
          , pp.
          <fpage>146</fpage>
          -
          <lpage>162</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          [5]
          <string-name>
            <given-names>E. E.</given-names>
            <surname>Karsak</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Sozer</surname>
          </string-name>
          and
          <string-name>
            <given-names>S. E.</given-names>
            <surname>Alptekin</surname>
          </string-name>
          <article-title>“Product planning in quality function deployment using a combined analytic network process and goal programming approach</article-title>
          ,”,
          <source>Computers &amp; Industrial Engineering</source>
          , vol.
          <volume>44</volume>
          ,
          <year>2002</year>
          , pp.
          <fpage>171</fpage>
          -
          <lpage>190</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          [6]
          <string-name>
            <given-names>T. L.</given-names>
            <surname>Saaty</surname>
          </string-name>
          , The Analytic Hierarchy Process,
          <string-name>
            <surname>McGraw-Hill</surname>
          </string-name>
          , New York, NY,
          <year>1980</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          [7]
          <string-name>
            <given-names>S.</given-names>
            <surname>Akınlı Koçak</surname>
          </string-name>
          ,
          <string-name>
            <given-names>G. Gonzales</given-names>
            <surname>Calienes</surname>
          </string-name>
          ,
          <string-name>
            <surname>G.</surname>
          </string-name>
          <article-title>Işıklar Alptekin, and</article-title>
          <string-name>
            <given-names>A.</given-names>
            <surname>Başar</surname>
          </string-name>
          <string-name>
            <surname>Bener</surname>
          </string-name>
          , “
          <article-title>Requirements prioritization framework for developing green and sustainable software using ANP - based decision making,”</article-title>
          <source>In Proceedings of the Environmental Informatics Conference</source>
          ,
          <year>2013</year>
          (Hamburg, Germany, September 2-
          <issue>4</issue>
          ,
          <year>2013</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          <source>[8] ISO/IEC 9126-1. Information technology - Software quality characteristics and metrics - Part</source>
          <volume>1</volume>
          :
          <article-title>Quality characteristics and sub-characteristics, ISO, Int</article-title>
          . Electrotechnical Commission, Geneva,
          <year>2001</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          [9] ISO/IEC IS 12207.
          <article-title>Systems and software engineering- Software life cycle processes</article-title>
          , International Organization for Standardization, Geneva,
          <year>2008</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          [10] ISO/IEC, IS 25010.
          <article-title>Systems and software engineering - Systems and software Quality Requirements and Evaluation (SQuaRE) - System and software quality models</article-title>
          ,
          <source>Geneva</source>
          ,
          <year>2011</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          [11]
          <string-name>
            <given-names>Z</given-names>
            <surname>Sener</surname>
          </string-name>
          and
          <string-name>
            <surname>E. E. Karsak. “</surname>
          </string-name>
          <article-title>A fuzzy regression and optimization approach for setting target levels in software quality function deployment</article-title>
          ,
          <source>” Software Quality Journal</source>
          ,
          <year>2010</year>
          , vol.
          <volume>18</volume>
          , pp.
          <fpage>323</fpage>
          -
          <lpage>339</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          [12]
          <string-name>
            <given-names>G.</given-names>
            ,
            <surname>Ruhe</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            ,
            <surname>Eberlein</surname>
          </string-name>
          , and
          <string-name>
            <given-names>D.</given-names>
            <surname>Pfahl</surname>
          </string-name>
          , “
          <article-title>Quantitative Win-win: A New Method for Decision Support in Requirements Negotiation,” In proceeding of the 14th Int'l</article-title>
          <string-name>
            <given-names>Conf. Software</given-names>
            <surname>Eng</surname>
          </string-name>
          . and
          <string-name>
            <surname>Knowledge Eng.</surname>
          </string-name>
          , (Ischia, Italy),
          <year>2002</year>
          , pp.
          <fpage>159</fpage>
          -
          <lpage>166</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          [13]
          <string-name>
            <given-names>P.</given-names>
            <surname>Avesani</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Bazzanella</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Perini</surname>
          </string-name>
          ,
          <article-title>and</article-title>
          <string-name>
            <given-names>A.</given-names>
            <surname>Susi</surname>
          </string-name>
          . “
          <source>Supporting the Requirements Prioritization Process. A Machine Learning Approach,” In proceeding of 16th Int'l Conf. Software Eng. and Knowledge Eng</source>
          .
          <article-title>(Maurer F. and</article-title>
          <string-name>
            <surname>Ruhe</surname>
          </string-name>
          , G., Eds, Banff, Canada),
          <year>2004</year>
          , pp.
          <fpage>306</fpage>
          -
          <lpage>311</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          [14]
          <string-name>
            <given-names>S.</given-names>
            <surname>Haag</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Raja</surname>
          </string-name>
          , and
          <string-name>
            <given-names>L. L.</given-names>
            <surname>Schkade</surname>
          </string-name>
          . “
          <article-title>Quality function deployment usage in software development</article-title>
          ,
          <source>” Communications of the ACM</source>
          ,
          <year>1996</year>
          , vol.
          <volume>39</volume>
          , no.
          <issue>1</issue>
          , pp.
          <fpage>41</fpage>
          -
          <lpage>49</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          [15]
          <string-name>
            <given-names>B.</given-names>
            <surname>Penzenstadler</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Mahaux</surname>
          </string-name>
          , and
          <string-name>
            <given-names>C.</given-names>
            <surname>Salinesi</surname>
          </string-name>
          . “
          <article-title>Requirements engineering for sustainable systems</article-title>
          , In proceeding of the International Working Conference on Requirements Engineering:
          <article-title>Foundation for Software Quality</article-title>
          . (Essen, Germany),
          <year>2012</year>
          , vol.
          <volume>52</volume>
          , pp.
          <fpage>8</fpage>
          -
          <lpage>13</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          [16]
          <string-name>
            <given-names>E.</given-names>
            <surname>Kern</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Dick</surname>
          </string-name>
          ,
          <string-name>
            <surname>S</surname>
          </string-name>
          , Naumann,
          <string-name>
            <given-names>A</given-names>
            , Guldner, and T. Johann, “
            <surname>Green Software</surname>
            and Green Software
          </string-name>
          Engineering - Definitions, Measurements, and Quality Aspects,”
          <article-title>In proceeding of the First International Conference on ICR for Sustainability (Zurich</article-title>
          , Switzerland,
          <fpage>14</fpage>
          -
          <lpage>16</lpage>
          February
          <year>2013</year>
          ),
          <year>2013</year>
          , pp.
          <fpage>87</fpage>
          -
          <lpage>94</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          [17]
          <string-name>
            <given-names>C.</given-names>
            <surname>Calero</surname>
          </string-name>
          and
          <string-name>
            <given-names>M. F.</given-names>
            <surname>Bertoa</surname>
          </string-name>
          . “25010+
          <string-name>
            <given-names>S</given-names>
            <surname>:</surname>
          </string-name>
          <article-title>A software quality model with sustainable characteristics. Sustainability as an element of software quality,”</article-title>
          <source>In Proceeding of the GIBSE</source>
          <year>2013</year>
          ,
          <article-title>(Fukuoka</article-title>
          , Japan),
          <year>2013</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          [18]
          <article-title>Organization for Economic Co-operation and Development (OECD</article-title>
          ),
          <year>2010</year>
          ,
          <string-name>
            <given-names>OECD</given-names>
            <surname>Greener</surname>
          </string-name>
          and
          <article-title>Smarter: ICTs, the environment and climate change 2010</article-title>
          . OECD Pub. Paris, France.
        </mixed-citation>
      </ref>
      <ref id="ref19">
        <mixed-citation>
          [19]
          <string-name>
            <given-names>L. M.</given-names>
            ,
            <surname>Hilty</surname>
          </string-name>
          ,
          <string-name>
            <given-names>P.</given-names>
            <surname>Arnfalk</surname>
          </string-name>
          ,
          <string-name>
            <given-names>L.</given-names>
            <surname>Erdmann</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Goodman</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Lehmann</surname>
          </string-name>
          , and
          <string-name>
            <given-names>P. A.</given-names>
            <surname>Wäger</surname>
          </string-name>
          , “
          <article-title>The relevance of information and communication technologies for environmental sustainability-A prospective simulation study</article-title>
          ,
          <source>” Environmental Modelling &amp; Software</source>
          ,
          <year>2006</year>
          , vol.
          <volume>21</volume>
          , no.
          <issue>1</issue>
          , pp.
          <fpage>1618</fpage>
          -
          <lpage>1629</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref20">
        <mixed-citation>
          [20]
          <string-name>
            <given-names>A.</given-names>
            <surname>Kansal</surname>
          </string-name>
          ,
          <string-name>
            <given-names>F.</given-names>
            <surname>Zhao</surname>
          </string-name>
          , “
          <article-title>Fine-grained energy profiling for poweraware application design,” SIGMETRICS Performance Evaluation Review,</article-title>
          <year>2008</year>
          , vol.
          <volume>36</volume>
          , no.
          <issue>2</issue>
          , pp.
          <fpage>26</fpage>
          -
          <lpage>31</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref21">
        <mixed-citation>
          [21]
          <string-name>
            <given-names>P.</given-names>
            <surname>Lago</surname>
          </string-name>
          , T. Jansen, “Creating Environmental Awareness in Service Oriented Software Engineering,” In: Maximilien,
          <string-name>
            <given-names>E.M.</given-names>
            ,
            <surname>Rossi</surname>
          </string-name>
          ,
          <string-name>
            <given-names>G.</given-names>
            ,
            <surname>Yuan</surname>
          </string-name>
          , S.-T.,
          <string-name>
            <surname>Ludwig</surname>
            ,
            <given-names>H.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Fantinato</surname>
            ,
            <given-names>M. (eds.) ICSOC</given-names>
          </string-name>
          <year>2010</year>
          . LNCS, Springer, Heidelberg,
          <year>2011</year>
          , vol.
          <volume>6568</volume>
          , pp.
          <fpage>181</fpage>
          -
          <lpage>186</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref22">
        <mixed-citation>
          [22]
          <string-name>
            <given-names>P.</given-names>
            <surname>Bozzelli</surname>
          </string-name>
          ,
          <string-name>
            <given-names>Q.</given-names>
            <surname>Gu</surname>
          </string-name>
          , and
          <string-name>
            <given-names>P.</given-names>
            <surname>Lago</surname>
          </string-name>
          . “
          <article-title>A systematic literature review on green software metrics</article-title>
          ,
          <source>” Technical Report:</source>
          VU University Amsterdam,
          <year>2013</year>
          , Available at: http://www.sis.uta.fi/~pt/TIEA5_Thesis_Course/Session_
          <volume>10</volume>
          _
          <fpage>20</fpage>
          13_02_18/SLR_GreenMetrics.pdf
        </mixed-citation>
      </ref>
      <ref id="ref23">
        <mixed-citation>
          [23]
          <string-name>
            <given-names>S.</given-names>
            <surname>Agarwal</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Nath</surname>
          </string-name>
          , and
          <string-name>
            <given-names>D.</given-names>
            <surname>Chowdhury</surname>
          </string-name>
          , “Sustainable Approaches and Good Practices in Green Software Engineering,”
          <source>International Journal of Research and Reviews in Computer Science (IJRRCS)</source>
          ,
          <year>2012</year>
          , vol.
          <volume>3</volume>
          , no.
          <issue>1</issue>
          . pp.
          <fpage>1425</fpage>
          -
          <lpage>1428</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref24">
        <mixed-citation>
          [24]
          <string-name>
            <given-names>A.</given-names>
            <surname>Kipp</surname>
          </string-name>
          ,
          <string-name>
            <given-names>T.</given-names>
            <surname>Jiang</surname>
          </string-name>
          , and
          <string-name>
            <given-names>M.</given-names>
            <surname>Fugini</surname>
          </string-name>
          , “
          <article-title>Green metrics for energyaware IT systems</article-title>
          ,” IEEE Computer Society,
          <year>2011</year>
          , vol.
          <volume>42</volume>
          , pp.
          <fpage>241</fpage>
          -
          <lpage>248</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref25">
        <mixed-citation>
          [25]
          <string-name>
            <surname>A. M. Ferreira</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          <string-name>
            <surname>Pernici</surname>
            , and
            <given-names>P. Plebani. “</given-names>
          </string-name>
          <article-title>Green performance indicators aggregation through composed weighting system,” ICT as Key Technology against Global Warming</article-title>
          . Springer Berlin Heidelberg,
          <year>2012</year>
          , pp.
          <fpage>79</fpage>
          -
          <lpage>93</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref26">
        <mixed-citation>
          [26]
          <string-name>
            <given-names>T. L.</given-names>
            <surname>Saaty</surname>
          </string-name>
          ,
          <article-title>Decision making with dependence and feedback: The analytic network process</article-title>
          .
          <source>RWS Publications</source>
          ,
          <year>1996</year>
          , Pittsburgh, PA.
        </mixed-citation>
      </ref>
      <ref id="ref27">
        <mixed-citation>
          [27]
          <string-name>
            <given-names>T. L.</given-names>
            <surname>Saaty</surname>
          </string-name>
          and
          <string-name>
            <surname>L. G.</surname>
          </string-name>
          <article-title>Vargas “Diagnosis with dependent symptoms: Bayes theorem and the analytic hierarchy process"</article-title>
          <source>Operations Research</source>
          ,
          <year>1998</year>
          , vol.
          <volume>46</volume>
          , no.
          <issue>4</issue>
          , pp.
          <fpage>491</fpage>
          -
          <lpage>502</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref28">
        <mixed-citation>
          [28]
          <string-name>
            <given-names>S.</given-names>
            <surname>Akınlı Koçak</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Miransky</surname>
          </string-name>
          ,
          <string-name>
            <given-names>G. Işıklar</given-names>
            <surname>Alptekin</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A. Başar</given-names>
            <surname>Bener</surname>
          </string-name>
          , E. Cialini, “
          <article-title>The impact of improving software functionality on environmental sustainability,”</article-title>
          <source>In: Proceedings of the First International Conference on ICT for Sustainability (ICT4S</source>
          , Zurich, Switzerland),
          <year>2013</year>
          , pp.
          <fpage>104</fpage>
          -
          <lpage>110</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref29">
        <mixed-citation>
          [29]
          <string-name>
            <given-names>A.</given-names>
            <surname>Miransky</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S. Akınlı</given-names>
            <surname>Koçak</surname>
          </string-name>
          ,
          <string-name>
            <given-names>E.</given-names>
            <surname>Cialini</surname>
          </string-name>
          ,
          <article-title>and</article-title>
          <string-name>
            <given-names>A.</given-names>
            <surname>Başar</surname>
          </string-name>
          <string-name>
            <surname>Bener</surname>
          </string-name>
          , “A.
          <article-title>Save energy with the DB2 10.1 for Linux, UNIX, and Windows data compression feature,” IBM DeveloperWoks</article-title>
          ,
          <source>Technical Library</source>
          ,
          <year>2013</year>
          , Available at: http://www.ibm.com/developerworks/data/library/techarticle/dm -1302db2compression/
        </mixed-citation>
      </ref>
      <ref id="ref30">
        <mixed-citation>
          [30]
          <string-name>
            <surname>Khorramshahgol</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          , and
          <string-name>
            <surname>Moustakis</surname>
            ,
            <given-names>V. S. “</given-names>
          </string-name>
          <article-title>Delphic hierarchy process (DHP): A methodology for priority setting derived from the Delphi method and analytical hierarchy process</article-title>
          ,”
          <source>European Journal of Operational Research</source>
          ,
          <year>1988</year>
          , vol.
          <volume>37</volume>
          , no.
          <issue>3</issue>
          , pp.
          <fpage>347</fpage>
          -
          <lpage>354</lpage>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>