<!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>How sustainable are model software artifacts in the context of Model Driven Software Engineering</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Damiano Torre</string-name>
          <email>dctorre@sce.carleton.ca</email>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Coral Calero</string-name>
          <email>coral.calero@uclm.es</email>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Carleton University, Department of Systems and Computer</institution>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>University of Castilla-La Mancha, Department of Engineering, Technologies and Information Systems, Software Quality Engineering Laboratory ALARCOS Research Group</institution>
          ,
          <addr-line>1125 Colonel By Drive, Ottawa, ON K1S5B6</addr-line>
          ,
          <country>Canada Paseo</country>
          <institution>de la Universidad</institution>
          ,
          <addr-line>4 13071 Ciudad Real</addr-line>
          ,
          <country country="ES">Spain</country>
        </aff>
      </contrib-group>
      <pub-date>
        <year>2005</year>
      </pub-date>
      <abstract>
        <p>Today, software is pervasive in our daily lives and its sustainability and environmental impact have become major factors in the development of software systems. Due to increasing of software complexity, it is widely acknowledged that it is impossible to test every aspect of system software. One method of increasing understanding between the software developer and the customer, of deepening the understanding of how software works, and ultimately of reducing the complexity of software, is through the use of models. Model driven software engineering (MDSE) is an established approach for developing complex software systems. This work presents a first attempt at reshaping existing basic dimensions for software sustainability in terms of MDSE. Moreover, we describe 8 quality aspects and their relationships with each other. We also present a set of guidelines to identify the 8 quality aspects, and the paths to measure sustainability in terms of MDSE. Finally, we describe an example with a set of hypothetical scenarios where we show how our quality aspects could be helpful to measure and analyze the degree of sustainability in the context of MDSE.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>-</title>
      <p>Keywords Sustainability, Green, Model Driven Software
Engineering, MDSE, MDSE Sustainability, MDE, Model
Sustainability, Green IN models.</p>
      <p>Unless serious actions are taken immediately, we risk the
next threshold being the point of no return, when no amount
of cutbacks on greenhouse gas emissions will save us from
potentially catastrophic global warming.</p>
      <p>
        Having said that, it is not surprising that several initiatives
across different fields that try to contribute to a more
sustainable society, are gaining importance worldwide. In this
paper we focus on the sustainability in the area of object
oriented software engineering [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ], and specifically in the
context of the model driven software engineering [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ].
      </p>
      <p>
        Today, software is pervasive in our daily lives. Almost any
technical item comprises a little computer with a corresponding
software [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ]. With the usage of software, the development of
software has also become much more widespread. Today
software development is taught in school as any other subject
like mathematics or geography [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ]. According to [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ], in the
future, everyone will be a programmer for 15 minutes. For this
reason, the topic of software sustainability, although still in its
early stages, is a very important research topic. In fact, as [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ]
remark, sustainability has recently started to receive
recognition as a quality objective for software systems,
whereas other important qualities like software security has
been addressed from the 1980s onward and software safety
since the early 1990s. The initial goal of this work is to raise
awareness on the part of all those involved with software, such
as the companies that develop software.
      </p>
      <p>
        An organization may be considered sustainable depending,
among other issues, on the sustainability of its business
processes, services and information systems (IS). IS
sustainability depends, in turn, on the sustainability of ICT
(Information and Communications Technology) sustainability,
which is composed of communications and IT (Information
Technology) systems, whose sustainability is determined by
the sustainability of their hardware and software components
(see Fig. 2). A complete compilation of the definitions of the
organization sustainability levels presented in Fig. 2 can be
found in [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ].
      </p>
      <p>
        According to [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ], when pursuing strategic software
sustainability, the environmental impact of software is
classified in two categories:
· Software that helps tackle environmental issues (using
video conferences, software for car sharing, etc.), which is
called green "BY" software;
· Software itself that are often responsible for major
environmental degradation (amounts of energy consumed
by software engineering processes used to manufacture the
software), this is called green "IN" software.
      </p>
      <p>In this paper we focus on the latter green IN softwa.rIen
our case we focus on green IN mod.elsThis means to
develop models which later will be transformed in software, in
a way we can protect and reduce the depletion of natural
resources.</p>
      <p>
        According to [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ], software is becoming increasingly
complex, in fact, it is widely acknowledged that it is impossible
to test every aspect of system software or application programs
before release. One method of increasing understanding
between the software developer and the customer, of deepening
the understanding of how software works, and ultimately of
reducing the complexity of software, is done through the use of
models [
        <xref ref-type="bibr" rid="ref13">13</xref>
        ].
      </p>
      <p>
        Model driven software engineering (MDSE) is an
established approach for developing complex software systems
and has been adopted successfully in automotive, aerospace
and telecommunications industries, as well as in business
information systems [
        <xref ref-type="bibr" rid="ref14">14</xref>
        ]. MDSE can be defined as a
methodology for applying the advantages of modeling to
software engineering activities [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ] that includes various
modeldriven approaches to software development, including
model
      </p>
    </sec>
    <sec id="sec-2">
      <title>BUSINESS PROCESS</title>
    </sec>
    <sec id="sec-3">
      <title>SUSTAINABILITY</title>
    </sec>
    <sec id="sec-4">
      <title>SERVICES</title>
    </sec>
    <sec id="sec-5">
      <title>SUSTAINABILITY</title>
      <sec id="sec-5-1">
        <title>ORGANIZATION</title>
      </sec>
      <sec id="sec-5-2">
        <title>SUSTAINABILITY</title>
      </sec>
    </sec>
    <sec id="sec-6">
      <title>INFORMATION SYSTEMS</title>
    </sec>
    <sec id="sec-7">
      <title>SUSTAINABILITY</title>
    </sec>
    <sec id="sec-8">
      <title>IT SUSTAINABILITY</title>
    </sec>
    <sec id="sec-9">
      <title>HARDWARE</title>
    </sec>
    <sec id="sec-10">
      <title>SUSTAINABILITY</title>
    </sec>
    <sec id="sec-11">
      <title>SOFTWARE</title>
    </sec>
    <sec id="sec-12">
      <title>SUSTAINABILITY</title>
      <p>
        driven development and model-driven architecture. Modeling
languages represent one of the main ingredients of MDSE.
They may consist of graphical representations (e.g. Unified
Modeling Language (UML) [
        <xref ref-type="bibr" rid="ref15">15</xref>
        ]), textual specifications (e.g.
the Backus Normal Form), or both [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ].
      </p>
      <p>With regard to the dimensions and quality aspects used to
measure degrees of software sustainability, given the sudden
burst of attention paid to the topic in recent years, the literature
proves to be rather chaotic and sometimes inconsistent. In an
attempt to improve the epistemology in the area of
sustainability in the context of MDSE, we present a proposal
that reshapes existing dimensions for software sustainability in
terms of MDSE, and add 8 quality aspects and their
relationships with each other.</p>
      <p>Later, we present a set of guidelines to obtain the 8 quality
aspects, and the paths to measure sustainability in terms of
MDSE. Finally, we describe an example with a set of
hypothetical scenarios where we show how our quality aspects
could be helpful to measure and analyze the degree of
sustainability in the context of MDSE.</p>
      <p>The remainder of this document is structured as followed:
Section 2 provides the summary of the related work; Section 3
describes the background along with the reshaping of the basic
dimensions for MDSE sustainability; Section 4 presents the
quality aspects for MDSE sustainability; Section 5 provides the
guidelines to identify the quality aspects and the paths to
measure MDSE sustainability. A small example of how the
quality aspects could be used in the context of MDSE
sustainability is presented in Section 6; finally, our conclusions
and outlines of future work are shown in Section 7.</p>
      <sec id="sec-12-1">
        <title>II. RELATED WORK</title>
        <p>
          We are not aware of any proposal that is specifically
dedicated to the issue of describing sustainable dimensions and
quality aspects in the context of MDSE (Green "IN" models).
We are aware of the workshop entitled 1st Modelling For
Sustainability Workshop [
          <xref ref-type="bibr" rid="ref16">16</xref>
          ] which took place in 2016. This
workshop and the proposals that were presented focused on
different goals than ours. In fact, they used a case study to
orient the workshop towards something more concrete to allow
attendees to create actual models. The options for the case
study considered by the workshop organizers were a) a smart
city project related to transportation, b) an electric vehicles
project, and c) a project related to sustainable agriculture.
        </p>
        <p>The 1st Modelling For Sustainability Workshop focused
on Green "BY" models, which means to use models to help
tackle environmental issues. Rather, in this paper we
specifically focus on Green IN models.</p>
      </sec>
      <sec id="sec-12-2">
        <title>III. BACKGROUND</title>
        <p>
          Sustainability is a widely-used term, several definitions of
which can be found in literature [
          <xref ref-type="bibr" rid="ref17">17</xref>
          ]. The most frequently
adopted is found in the United Nations (UN) s Brundtland
report, which defines sustainable development as the ability to
meet the needs of the present without compromising the
ability of future generations to satisfy their own needs [
          <xref ref-type="bibr" rid="ref18">18</xref>
          ].
According to the UN, sustainable development needs to satisfy
the requirements of three dimensions, which are society, the
economy, and the environment. With regards the UN
Brundtland report, economic development is afforded a priority
over the environment. If the debate truly was about
environmental and social sustainability, surely one would
expect the relationship to be reversed, on the assumption that
economic development proceeds within the constraints and
limits of the biophysical environment, meaning the reshaping
of markets and production processes to fit the logic of nature
[
          <xref ref-type="bibr" rid="ref19">19</xref>
          ]. For this reason, in this paper, we decided to simply report
the definition of the economic aspect without adopting it.
A. Reshaping basic dimensions for MDSE Sustainability
        </p>
        <p>Some authors consider that the dimensions of the UN
Brundtland report are not sufficient when applied to Software
Sustainability.</p>
        <p>
          For example, [
          <xref ref-type="bibr" rid="ref20">20</xref>
          ] propose five dimensions of sustainability
for software systems: Individual, Social, Economic,
Environmental and Technical sustainability.
        </p>
        <p>
          At the second GREENS workshop at ICSE 2013 [
          <xref ref-type="bibr" rid="ref21">21</xref>
          ], two
different working groups, which were created during the
workshop, proposed different sets of sustainability dimensions.
One of them identified: social, environmental, economic, and
technical sustainability. The other working group produced a
model containing four views of sustainability: business,
technical, environmental and social.
        </p>
        <p>
          Recently, in [
          <xref ref-type="bibr" rid="ref22">22</xref>
          ], four dimensions were included in a
framework for software-quality sustainability requirements:
social, environmental, technical, and economic.
s
s
        </p>
        <p>In Fig. 3, we merge and reshape, in terms of MDSE
sustainability, the definitions cited above; in Fig. 3 we identify
three main dimensions: green/environmental (that contain the
sub-dimensions Green IN and Green By ), human (that
contain the sub-dimensions individual and community), and
economic.</p>
        <p>As presented in Fig. 3, the dimensions that describe MDSE
sustainability are as followed:
a)</p>
        <p>Green/Environmental sustainability: how the
development, maintenance and use of model software
artifacts affect energy consumption and the usage of other
resources. In other words, it is the process of developing
model software artifacts with regard to protect and reduce
the depletion of natural resources.
a.1. Green
a.2. Green</p>
        <p>IN
BY;</p>
        <p>
          ;
The definitions for Green IN and BY are already
presented in Section 1. As we already said, this paper
is focused on Green IN models.
b) Human sustainability: how the development and
maintenance affect the sociological and psychological
aspects in the context of MDSE.
b.1. Individual sustainability: refers to the human
development (e.g. education), personal health and
well-being in the context of MDSE. This can be seen
as the amount of working time that should be spent
modeling, in a way that enables developers to be
satisfied with their job over a long period of time.
b.2. Community sustainability, also called social
sustainability [
          <xref ref-type="bibr" rid="ref20 ref21">20, 21</xref>
          ], in the context of MDSE, aims
at developing model software artifacts promoting
social equality, inclusiveness, and connectivity across
the communities.
c) Economic sustainability: this aims to maintain assets.
        </p>
        <p>
          Assets include not only capital but also added value. This
requires a definition of income as the amount one can
consume during a period and still be as well off at the end
of the period, as it devolves on consuming added value
(interest), rather than capital [
          <xref ref-type="bibr" rid="ref23">23</xref>
          ].
        </p>
        <p>We do not consider technical sustainability because it does
not map directly onto any of the resources needed in the
context of MDSE.</p>
        <p>IV. QUALITY ASPECTS FOR MDSE SUSTAINABILITY</p>
        <p>According to the MDSE sustainability dimensions
described in Section 3, in this section we present a set of
quality aspects that can help to measure how sustainable are
model software artifacts in the context of MDSE. In TABLE I.
we introduce the quality aspects and their acronyms that will be
explained in details in this section.
Energy efficiency (EE): developing model software
artifacts that require less energy. Improving EE may
affect:
(a.1) because it would reduce natural resources
such as electrical energy.</p>
        <p>Time effectiveness (TE): time spent to model is a valuable
resource that can be minimized along the MDSE activities.
Improving TE may affect:
(EE) because by spending less time modeling, we
would require less electrical energy.</p>
        <p>
          Portability and Reuse-Recycling (PRR): model software
artifacts where it is easy to import/export other model
software artifacts. Having high degree of PRR may affect:
·
·
·
o
o
Fig. 3. MDSE Sustainability Schema
(b.1) because it could help to reduce working
time by reusing model software artifacts;
(RP) because it allows that a model software
artifact can be used over a long period.
· Standardability (ST): model software artifacts that rely to a
standard specification (i.e. the UML metamodel [
          <xref ref-type="bibr" rid="ref15">15</xref>
          ]), and
maximizes compatibility, consistency, correctness,
interoperability, safety, repeatability, commoditization of
the MDSE activities. Using a ST may affect:
o
o
o
o
o
o
o
o
o
(b.1) because it could reduce/increase working
time;
(b.2) the presence of a standard could contribute
the inclusiveness, and connectivity in a
community that speak the same model
language;
(EE) because by adopting or not a model
standard, it could require less or more electrical
energy.
(TE) because it could increase/reduce the time
spent modelling;
(PRR) because it could improve the process of
importing/exporting other model software
artifacts;
(RP) because it could increase the degree to
which a model software artifact can be used over
a long period;
(TR) because it could help to make the
transformation of the models to the code
more/less easy;
·
·
(MQC) because it could help the process of
checking the model quality.
        </p>
        <p>
          Model Quality Checkability (MQC): is the degree of how
easy it is to check the qualities of a model software
artifact. For model qualities we refer the model
characteristics such as correctness, consistency,
completeness, maintainability, etc. For instance, the case
of model consistency: since various diagrams in a model
typically describe different views of one, and only one,
software system under development, they strongly depend
on each other and hence need to be consistent with one
another. Nevertheless, inconsistencies between different
diagrams may arise. Such inconsistencies may be a source
of faults in software systems down the road [
          <xref ref-type="bibr" rid="ref24">24</xref>
          ]. Having
model software artifact where it is easy to check MQC
may affect:
o
(TR) because a poor quality of models may be a
source of faults in the software systems (code).
        </p>
        <p>Reliability and Perdurability (RP): is the degree to which a
model software artifact can be used over a long period,
being, therefore, easy to modify, adapt and reuse. Having
model software artifact with a high degree of RP may
affect:
o
(TE) because it could reduce the time spent to
model.
· Transformability (TR): refers to how easy it is to transform
(automatically, semi-automatically, or manually) a model
software artifact into an executable code. Having model
software artifact easy to transform to code (TR), may
affect:
(b.1) because it could help to reduce working
time spent in the coding phase;
(EE) because by spending less/more time coding,
we would require less/more energy;
(TE) because it could increase/reduce the time
spent to code;
·</p>
        <p>Software System Dimension (SSD): refers to the
magnitude of the model software artifact that we want to
develop by using MDSE. SSD represent the number of
views (e.g. diagrams such as classes, use case, associations
and so on) that we want to develop. The SSD may affect:
(ST) in the decision regarding the use of a
standard or not.</p>
        <p>SSD definitely affects the rest of the quality aspects, but we
decided not to describe them because, we think, that these
"affect relationships" between SSD and the other quality
aspects would be all static. In other words, the increase or
decrease of the SSD would probably affect in the same way
the rest of the other quality aspects.</p>
        <p>
          The definitions of EE, RP, and TE (from Resource
effectiveness, where time is the only resource considered in
this work) have been adapted from the context of software
sustainability [
          <xref ref-type="bibr" rid="ref1">1</xref>
          ] to the MDSE one. PRR, ST, MQC and TR
are quality aspects used in MDSE, and here were adapted to the
sustainability context.
        </p>
        <p>In Fig. 4 we present the interactability and interconnectivity of
the quality aspects (presented above) with each other and with
the dimensions (described in Section 3). The affect
relationships (a quality aspect that may affect another one)
described between quality aspects and dimensions is expressed
in Fig. 4 by a directional arrow from a quality aspect to another
affected quality aspect or dimension. As already explained in
the previous section, in this paper we chose to focus only on
the environmental (in our context Green IN models) and
human (divided in individual and community sustainability)
dimensions.</p>
        <p>V. GUIDELINES AND PATHS FOR MDSE SUSTAINABILITY</p>
        <p>In this section we present an initial set of guidelines
obtained from the affect relationships between the quality
aspects presented in Fig. 4.</p>
        <p>The guidelines presented in TABLE II. could be helpful to
identify quality aspects (qa) in the context of MDSE
sustainability.</p>
        <p>The three tables below describe respectively the navigable
paths to measure Green IN sustainability (a.1) TABLE III. ,
Individual sustainability (b.1) 0, and Community sustainability
(b2) TABLE V.</p>
        <p>With the character # we create a reference number that
will be used later in later in TABLE VI. Each of the 13 paths
presented in these three tables begin with SSDST which
represent 1) the dimensions of the software system that we
want to design with models (SSD); 2) the choice of using or
not a standard (ST). SSD and ST are the only two quality
aspects assumed to be static in our example.</p>
        <p>THE CONTEXT OF MDSE SUSTAINABILITY</p>
        <p>In this sub-section we present a small example of how the
sustainability quality aspects and the paths presented above
could be used in the context of MDSE.</p>
        <p>
          In the example, we intend to develop a software system
using a MDSE methodology where we want to design a view
of the software describing 100 classes and their relationships
(this would be our SSD). We consider two hypothetical case
solutions to design this model software artifact:
Case 1) It is decided to use Model Driven Architecture (MDA)
[
          <xref ref-type="bibr" rid="ref25">25</xref>
          ] as standard of MDSE methodology. UML will be
used as modeling language, and the 100 class and
their relationships will be designed with a UML class
diagram.
        </p>
        <p>Case 2) It is decided to not use any standard, the 100 class and
their relationships will be designed manually
(sketches by hand).</p>
        <p>
          In TABLE VI. we present a set of hypothetical scenarios of
how the decision of using MDA in Case 1, and not using any
standard in Case 2, could affect the degree of sustainability in
this example.
The fact that we use UML
(ST), it could help the
process of checking (e.g. by
Object Constraint Language
(OCL) in UML [
          <xref ref-type="bibr" rid="ref26">26</xref>
          ]) the
quality (MQC) of the 100
classes (SSD). The
improvement of the quality
of models could also help the
process of the transformation
(TR) of the models to the
code (that could be done
automatically or
semiautomatically). All these
factors could result in
reducing the time spent
modeling and coding (TE)
which could require less
energy for the process of
model software artifacts
development (EE). This
could finally lead to reduce
the depletion of electrical
energy (a.1).
        </p>
        <p>The fact that we use UML
(ST) to represent the 100
classes (SSD), it could help
the process of the
transformation (TR) of the
models to the code (that
could be done automatically
or semi-automatically).</p>
        <p>These factors could result in
reducing the time spent
modeling and coding (TE)
which could require less
energy for the process of
model software artifacts
development (EE). This
could finally lead to reduce
the depletion of electrical
energy (a.1).</p>
        <p>The fact that we use UML
(ST) to represent the 100
classes (SSD), it could
reduce the time spent
modeling and coding (TE)
which could require less
energy for the process of
model software artifacts
development (EE). This
could finally lead to reduce
the depletion of electrical
energy (a.1).
The fact that we represent
manually (not using any specific
ST) the 100 classes (SSD), it could
affect negatively the process of
checking the quality (MQC) of the
software model artifact under
development. The possible
decrease of the quality of models
could also negatively affect the
process of the transformation (TR)
of the models to the code (that has
to be done manually). All these
factors could result in increasing
the time spent modeling and
coding (TE), which, on one hand,
will require no electrical energy for
the design of the models (made by
hand); on the other hand, due to the
missing of the benefits related to
using a ST, the MQC, and the TR,
will probably require more
electrical energy (than in the Case
1) for the coding phase (EE and
then a.1).</p>
        <p>The fact that we represent
manually (not using any specific
ST) the 100 classes (SSD), it could
affect negatively the process of the
transformation (TR) of the models
to the code (that has to be done
manually). These factors could
result in increasing the time spent
modeling and coding (TE), which,
on one hand, will require no
electrical energy for the design of
the models (made by hand); on the
other hand, due to the missing of
the benefits related to to using a
ST, and the TR, will probably
require more electrical energy
(than in the example 1) for the
coding phase (EE and then a.1).</p>
        <p>The fact that we represent
manually (not using any specific
ST) the 100 classes (SSD), it could
increase the time spent modeling
and coding (TE), which, on one
hand, will require no electrical
energy for the design of the models
(made by hand); on the other hand,
due to the missing of the benefits
related to using a ST, will probably
require more electrical energy
(than in the Case 1) for the coding
phase (EE and then a.1).
#
7
8
9
10
11
12
The fact that we use UML
(ST) to represent the 100
classes (SSD), it could
increase the degree of how
easy is to import/export other
model software artifacts
(PRR), and consequently the
degree to which a model
software artifact can be used
over a long period (RP). All
these factors could result in
reducing the time spent
modeling and coding (TE)
which could require less
energy for the process of
model software artifacts
development (EE). This
could finally lead to reduce
the depletion of electrical
energy (a.1).</p>
        <p>The fact that we use UML
(ST), it could help the
process of checking (e.g. by
Object Constraint Language
(OCL) in UML) the quality
(MQC) of the 100 classes
(SSD). The improvement of
the quality of models could
also help the process of the
transformation (TR) of the
models to the code (that
could be done automatically
or semi-automatically). All
these factors could help to
reduce the working time
spent modelling and coding
(b.1).</p>
        <p>The fact that we use UML
(ST) to represent the 100
classes (SSD), it could
increase the degree of how
easy is to import/export other
model software artifacts
(PRR), which could help to
reduce working time by
reusing model software
artifacts (b.1).</p>
        <p>The fact that we use UML
(ST) to represent the 100
classes (SSD), it could
increase the the working time
spent learning the UML
standard, and then also the
time spent modelling (b.1).
The fact that we represent
manually (not using any specific
ST) the 100 classes (SSD), it could
decrease the degree of how easy is
to import/export other model
software artifacts (PRR), and then
also the degree to which a model
software artifact can be used over a
long period (RP). All these factors
could result in increasing the time
spent modeling and coding (TE),
which, on one hand, will require no
electrical energy for the design of
the models (made by hand); on the
other hand, due to the missing of
the benefits related to using a ST,
the PRR, and the RP, will probably
require more electrical energy
(than in the Case 1) for the coding
phase (EE and then a.1).</p>
        <p>The fact that we represent
manually (not using any specific
ST) the 100 classes (SSD), it could
affect negatively the process of
checking the quality (MQC) of the
software model artifact under
development. The possible
decrease of the quality of models
could also negatively affect the
process of the transformation (TR)
of the models to the code (that has
to be done manually). All these
factors could increase the working
time spent modelling and coding
The fact that we represent
manually (not using any specific
ST) the 100 classes (SSD), it
could decrease the degree of how
easy is to import/export other
model software artifacts (PRR)
which could increase the working
time spent modelling (b.1).</p>
        <p>The fact that we represent
manually (not using any specific
ST) the 100 classes (SSD), it
could decrease the the working
time spent learning the model
standard (in this case UML), and
then also the time spent modelling
(b.1).
#
13
The fact that we use UML
(ST) to represent the 100
classes (SSD), it could
contribute to improve the
inclusiveness and
connectivity in a community
(b.2) that "speak" the same
(model) language.
The fact that we represent
manually (not using any specific
ST) the 100 classes (SSD), it could
affect negatively the inclusiveness
and connectivity (b.2) in a
community that do not "speak" the
same (model) language.</p>
        <p>Some of the paths presented in TABLE VI. were
represented within only one scenario. We decided to merge 2
different paths because they present similar situations. For
example, between the following two paths:
#2 (SSDSTMQCTREE(a.1));
#3 (SSDSTMQCTRTEEE(a.1));
They only difference is the presence of the TE in path #3.
These two paths were merged in TABLE VI. (see scenario
#23) where we described a scenario that covers both of the two
paths. The same procedure was used to merge the paths #4 with
#5, #7 with #8, and #9 with #10.</p>
        <p>The example presented in TABLE VI. represents a first
attempt of describing possible scenarios where, the quality
aspects and the paths presented in section 4, could be helpful to
measure and analyze the degree of sustainability in the context
of MDSE.</p>
        <p>In the three tables below (TABLE VII. , 0, and TABLE IX.
), we show the summary of the scenarios presented in TABLE
VI. where for each path(s) and Case solution adopted (1 or 2),
we assign the symbol + o-r . The symbol +represent the
hypothetical positiveaffect relationship of the quality aspects
described in a given scenario in regards to a specific MDSE
sustainability dimension; on the other hand, the symbol
mean the hypothetical negative affect relationship of the
quality aspects described in a given scenario in regards to a
specific MDSE sustainability dimension.</p>
        <p>For example, according to the scenarios described in
TABLE VI. for the dimension GreenIN (a.1) sustainability
(TABLE VII. ), for the scenario 1, the Case 2 (+) may be
considered more sustainable than Case 1 (-); on the contrary,
for the scenarios 2-3, 4-5, 6, and 7-8, the Case 1 (+) may be
considered more sustainable than Case 2 (-).</p>
        <p>The three tables TABLE VII. , 0, and TABLE IX. may be
useful to measure how sustainable are model software artifacts
in the context of MDSE because, by depending to the quality
aspects (Section 4) on which we want to focus on, we could see
how these quality aspects may affect the MDSE sustainability
dimensions.</p>
        <p>Regarding our example, if we know that the system under
development will not need to be implemented in an actual
software, we would not be interested in considering quality
aspects such as PRR, MQC, RP and TR; in this context, the
Case 2 solution may be considered more sustainable than Case
1 for the reason explained in scenario #1 and #12 of the Case 2
in the TABLE VI. On the other hand, if we focus on all the
quality aspects presented in Section 4, the Case 1 solution may
be considered (for the majority of the quality aspects) more
sustainable than the Case 2 solution.</p>
      </sec>
      <sec id="sec-12-3">
        <title>VII. CONCLUSION</title>
        <p>In recent years, great attention has been paid to the topic of
Software Sustainability. However, no previous study has, to the
best of our knowledge, described sustainable dimensions and
quality aspects in the context of Model Driven Software
Engineering (MDSE) (Green "IN" models).</p>
        <p>
          In this work we presented a first attempt of reshaping
existing dimensions for software sustainability in terms of
MDSE along with 8 quality aspects and their relationships with
each other. Later, we present a set of guidelines to obtain the 8
quality aspects, and the paths to measure sustainability in terms
of MDSE. Finally, we described an example with a set of
hypothetical scenarios where we showed how the 8 quality
aspects (Section 4) and the paths (Section 5) are used to
measure and analyze the degree of sustainability in the context
of MDSE. According to [
          <xref ref-type="bibr" rid="ref27">27</xref>
          ], the software development life
cycle and related development tools and methodologies rarely,
if ever, consider energy efficiency as an objective. In this
paper, we tried to put particular attention on the Energy
Efficiency (EE) by describing quality aspects that may affect it.
        </p>
        <p>We believe that this first attempt of work in the context of
MDSE sustainability could be used as a starting point in the
future by researchers in this field.</p>
        <p>As future work we are planning to develop a survey in the
MDSE community about this topic to see how models are seen
in terms of the sustainability dimensions and quality aspects
identified in this paper. The final and more future goal will be
to develop a consolidated and as much as possible valid set of
guidelines in the context of MDSE sustainability.</p>
      </sec>
      <sec id="sec-12-4">
        <title>ACKNOWLEDGMENT</title>
        <p>Yvan Labiche (Carleton University, Ottawa, Canada),
Marcela Genero, and Mario Piattini (University of Castilla-La
Mancha, Ciudad Real, Spain). This work has been funded by
the GINSENG project (TIN2015-70259-C2-1-R) (Ministerio
de Economía y Competitividad and Fondo Europeo de
Desarrollo Regional FEDER).</p>
      </sec>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [1]
          <string-name>
            <given-names>C.</given-names>
            <surname>Calero</surname>
          </string-name>
          and
          <string-name>
            <given-names>M.</given-names>
            <surname>Piattini</surname>
          </string-name>
          , Green in Software Engineering: Springer,
          <year>2015</year>
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [2]
          <string-name>
            <surname>NOAA.</surname>
          </string-name>
          (
          <year>2016</year>
          ).
          <article-title>National Oceanic and Atmospheric Administration. June marks 14 consecutive months of record heat for the globe</article-title>
          . Available: http://www.noaa.gov/
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [3]
          <string-name>
            <surname>NASA.</surname>
          </string-name>
          (
          <year>2016</year>
          , last access on
          <year>June 2016</year>
          ).
          <article-title>Carbon Dioxide, Direct mesaurament 2005-Present</article-title>
          . Available: http://climate.nasa.gov/vitalsigns/carbon-dioxide/
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [4]
          <string-name>
            <surname>CARVE.</surname>
          </string-name>
          (
          <year>2012</year>
          , last access on
          <year>June 2016</year>
          ).
          <article-title>NASA - Carbon in Arctic Reservoirs Vulnerability Experiment</article-title>
          . Available: http://science.nasa.gov/missions/carve/
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          [5]
          <string-name>
            <surname>C. Miller.</surname>
          </string-name>
          (
          <year>2016</year>
          , last access on
          <year>June 2016</year>
          ).
          <article-title>NASA scientists react to 400 ppm carbon milestone</article-title>
          . Available: http://climate.nasa.gov/400ppmquotes/
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          [6]
          <string-name>
            <given-names>B.</given-names>
            <surname>Bruegge</surname>
          </string-name>
          and
          <string-name>
            <surname>A. Dutoit.</surname>
          </string-name>
          ,
          <article-title>"Object-Oriented Software Engineering Using Uml, Patterns,</article-title>
          and
          <string-name>
            <surname>Java</surname>
          </string-name>
          (3rd ed.),
          <article-title>" Upper Saddle River</article-title>
          , NJ, USA2009
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          [7]
          <string-name>
            <given-names>M.</given-names>
            <surname>Brambilla</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Cabot</surname>
          </string-name>
          , and
          <string-name>
            <given-names>M.</given-names>
            <surname>Wimmer</surname>
          </string-name>
          ,
          <string-name>
            <surname>Model-Driven Software</surname>
          </string-name>
          Engineering in Practice, 1st ed.,
          <year>2012</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          [8]
          <string-name>
            <given-names>R.</given-names>
            <surname>Gutbrod</surname>
          </string-name>
          and
          <string-name>
            <given-names>C.</given-names>
            <surname>Wiele</surname>
          </string-name>
          ,
          <source>The Software Dilemma Balancing Creativity and Control on the Path to Sustainable</source>
          Software Springer,
          <year>2012</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          [9]
          <string-name>
            <given-names>F.</given-names>
            <surname>Hermans</surname>
          </string-name>
          ,
          <article-title>"Leaders of Tomorrow on the Future of Software Engineering: A Roundtable,"</article-title>
          <source>IEEE Software</source>
          , vol.
          <volume>33</volume>
          , pp.
          <fpage>99</fpage>
          -
          <lpage>104</lpage>
          ,
          <year>March 2016</year>
          2016.
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          [10]
          <string-name>
            <given-names>B.</given-names>
            <surname>Penzenstadler</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Raturi</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Richardson</surname>
          </string-name>
          , and T. B,
          <string-name>
            <surname>"Safety</surname>
          </string-name>
          , Security, Now Sustainability:
          <article-title>The Nonfunctional Requirement for the 21st Century,,"</article-title>
          <source>IEEE Software</source>
          , vol.
          <volume>31</volume>
          pp.
          <fpage>40</fpage>
          -
          <lpage>47</lpage>
          ,
          <year>2014</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          [11]
          <string-name>
            <given-names>W. Y.</given-names>
            <surname>Du</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S. L.</given-names>
            <surname>Pan</surname>
          </string-name>
          , and
          <string-name>
            <given-names>M. Y.</given-names>
            <surname>Zuo</surname>
          </string-name>
          ,
          <article-title>"How to balance sustainability and profitability in technology organizations: an ambidextrous perspective "</article-title>
          <source>IEEE Transactions on Engineering Management</source>
          vol.
          <volume>60</volume>
          , pp.
          <fpage>366</fpage>
          <lpage>385</lpage>
          ,
          <year>2013</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          [12]
          <string-name>
            <given-names>M.</given-names>
            <surname>Genero</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A. M.</given-names>
            <surname>Fernández-Saez</surname>
          </string-name>
          ,
          <string-name>
            <given-names>H. J.</given-names>
            <surname>Nelson</surname>
          </string-name>
          , G. Poels, and
          <string-name>
            <given-names>M.</given-names>
            <surname>Piattini</surname>
          </string-name>
          ,
          <article-title>"A Systematic Literature Review on the Quality of UML Models,"</article-title>
          <source>Journal of Database Management</source>
          , vol.
          <volume>22</volume>
          , pp.
          <fpage>46</fpage>
          -
          <lpage>70</lpage>
          ,
          <year>2011</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          [13]
          <string-name>
            <given-names>D.</given-names>
            <surname>Thomas</surname>
          </string-name>
          ,
          <article-title>"MDA: Revenge of the modelers or UML utopia?,"</article-title>
          <source>IEEE Software</source>
          , vol.
          <volume>21</volume>
          , pp.
          <fpage>15</fpage>
          <lpage>17</lpage>
          ,
          <year>2004</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          [14]
          <string-name>
            <given-names>G.</given-names>
            <surname>Mussbacher</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Amyot</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            <surname>Breu</surname>
          </string-name>
          ,
          <string-name>
            <surname>J.-M. Bruel</surname>
            ,
            <given-names>B. H. C.</given-names>
          </string-name>
          <string-name>
            <surname>Cheng</surname>
          </string-name>
          , P. Collet, et al.,
          <article-title>"The relevance of model-driven engineering thirty years from now,"</article-title>
          <source>in Proceedings of the 17th International Conference Modeldriven engineering languages and systems (MODELS'2014)</source>
          ,
          <year>2014</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          [15]
          <string-name>
            <surname>OMG</surname>
          </string-name>
          ,
          <article-title>"</article-title>
          <source>OMG Unified Modeling LanguageTM - Superstructure Version 2</source>
          .5,"
          <year>2015</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          [16] (
          <year>2016</year>
          , last access on
          <year>June 2016</year>
          ). 1st Modelling For Sustainability Workshop at Bellairs'
          <volume>16</volume>
          . Available: http://cs.mcgill.ca/~joerg/SEL/Sustainability_Bellairs_
          <year>2016</year>
          .html/
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          [17]
          <string-name>
            <given-names>B. C. K.</given-names>
            <surname>Choi</surname>
          </string-name>
          and
          <string-name>
            <given-names>A. W. P.</given-names>
            <surname>Pak</surname>
          </string-name>
          ,
          <article-title>"Multidisciplinarity, interdisciplinarity, and transdisciplinarity in health research, services, education and policy: 1," Definitions, objectives</article-title>
          , and evidence of effectiveness,
          <source>Clin. Invest. Med</source>
          ., vol.
          <volume>29</volume>
          pp.
          <fpage>351</fpage>
          -
          <lpage>364</lpage>
          ,
          <year>2006</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          [18]
          <string-name>
            <surname>UN</surname>
          </string-name>
          ,
          <article-title>"</article-title>
          <source>United Nations World Commission on Environment and Development. Report of the World Commission on Environment and Development: Our Common Future</source>
          ,"
          <year>1987</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref19">
        <mixed-citation>
          [19]
          <string-name>
            <given-names>S. B.</given-names>
            <surname>Banerjee</surname>
          </string-name>
          ,
          <article-title>"Who Sustains Whose Development? Sustainable Development and the Reinvention of Nature,"</article-title>
          <source>Organization Studies</source>
          vol.
          <volume>24</volume>
          , pp.
          <fpage>143</fpage>
          -
          <lpage>180</lpage>
          ,
          <year>2003</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref20">
        <mixed-citation>
          [20]
          <string-name>
            <given-names>B.</given-names>
            <surname>Penzenstadler</surname>
          </string-name>
          and
          <string-name>
            <given-names>H.</given-names>
            <surname>Femmer</surname>
          </string-name>
          ,
          <article-title>"A generic model for sustainability with process- and product-specific instances, ,"</article-title>
          <source>in Proceedings of the 2013 workshop on Green in/by software engineering Fukuoka</source>
          , Japan,
          <year>2013</year>
        </mixed-citation>
      </ref>
      <ref id="ref21">
        <mixed-citation>
          [21]
          <string-name>
            <given-names>P.</given-names>
            <surname>Lago</surname>
          </string-name>
          , N. Meyer, M. Morisio,
          <string-name>
            <given-names>H. A.</given-names>
            <surname>Müller</surname>
          </string-name>
          , and
          <string-name>
            <given-names>G.</given-names>
            <surname>Scanniello</surname>
          </string-name>
          ,
          <article-title>"Leveraging "energy efficiency to software users": summary of the second</article-title>
          GREENS workshop,
          <source>at ICSE</source>
          <year>2013</year>
          ,
          <article-title>"</article-title>
          <source>ACM SIGSOFT Software Engineering Notes</source>
          , vol.
          <volume>39</volume>
          , pp.
          <fpage>36</fpage>
          -
          <lpage>38</lpage>
          ,
          <year>2014</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref22">
        <mixed-citation>
          [22]
          <string-name>
            <given-names>P.</given-names>
            <surname>Lago</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Akinli</surname>
          </string-name>
          ,
          <string-name>
            <surname>I. Crnkovic</surname>
          </string-name>
          , and
          <string-name>
            <given-names>B.</given-names>
            <surname>Penzenstadler</surname>
          </string-name>
          ,
          <article-title>"Framing sustainability as a property of software quality,"</article-title>
          <source>Commun. ACM</source>
          , vol.
          <volume>58</volume>
          , pp.
          <fpage>70</fpage>
          -
          <lpage>78</lpage>
          ,
          <year>2015</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref23">
        <mixed-citation>
          [23]
          <string-name>
            <given-names>B.</given-names>
            <surname>Penzesdtadler</surname>
          </string-name>
          ,
          <article-title>"Towards a definition of sustainability in and for software engineering,"</article-title>
          <source>in Proceedings of the 28th Annual ACM Symposium on Applied Computing (SAC '13)</source>
          ,
          <year>2013</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref24">
        <mixed-citation>
          [24]
          <string-name>
            <given-names>D.</given-names>
            <surname>Torre</surname>
          </string-name>
          ,
          <string-name>
            <given-names>Y.</given-names>
            <surname>Labiche</surname>
          </string-name>
          , and
          <string-name>
            <given-names>M.</given-names>
            <surname>Genero</surname>
          </string-name>
          ,
          <article-title>"UML consistency rules: a systematic mapping study,"</article-title>
          <source>in Proceedings of 18th International Conference on Evaluation and Assessment in Software Engineering (EASE</source>
          <year>2014</year>
          ), London, UK,
          <year>2014</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref25">
        <mixed-citation>
          [25]
          <string-name>
            <given-names>J.</given-names>
            <surname>Mukerji</surname>
          </string-name>
          and
          <string-name>
            <given-names>J.</given-names>
            <surname>Miller</surname>
          </string-name>
          ,
          <article-title>"Overview and guide to OMG's architecture,"</article-title>
          <source>Object Management Group</source>
          .
          <year>2003</year>
          . Available: http://www.omg.org/mda/
        </mixed-citation>
      </ref>
      <ref id="ref26">
        <mixed-citation>
          [26]
          <string-name>
            <surname>OMG.</surname>
          </string-name>
          (
          <year>2016</year>
          , last access on
          <year>June 2016</year>
          ).
          <article-title>Object Management Group - Object Constraint Language (OCL)</article-title>
          . Available: http://www.omg.org/spec/OCL/
        </mixed-citation>
      </ref>
      <ref id="ref27">
        <mixed-citation>
          [27]
          <string-name>
            <given-names>C.</given-names>
            <surname>Calero</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M. F.</given-names>
            <surname>Bertoa</surname>
          </string-name>
          , and
          <string-name>
            <given-names>M. A.</given-names>
            <surname>Moraga</surname>
          </string-name>
          ,
          <article-title>"A systematic literature review for software sustainability measures "</article-title>
          <source>in Proceedings of the 2nd International workshop on green and sustainable software (GREENS</source>
          <year>2013</year>
          ),
          <year>2013</year>
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>