<!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>Algebraic Definition of iStar2.0 Models</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Barcelona</string-name>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Spain</string-name>
        </contrib>
        <contrib contrib-type="author">
          <string-name>franch</string-name>
        </contrib>
        <contrib contrib-type="author">
          <string-name>llopez}@essi.upc.edu</string-name>
        </contrib>
        <contrib contrib-type="author">
          <string-name>jmarco@cs.upc.edu</string-name>
        </contrib>
      </contrib-group>
      <abstract>
        <p>iStar2.0 was delivered in 2016 with the intention of becoming a standard de facto for the i* community. It includes a lightweight definition of the language adorned with a metamodel (in the form of a UML class diagram) that is useful for most purposes. However, in some contexts, a more precise algebraic definition including a notion of satisfaction is needed. This paper presents such elements. First, an algebraic definition of iStar2.0. Then, some auxiliary operations. Last, the notion of satisfaction over i* models using first order logic. Satisfaction is still defined mainly in a syntactic form, relying upon the satisfaction of the individual intentional elements comprising the model.</p>
      </abstract>
      <kwd-group>
        <kwd>iStar2</kwd>
        <kwd>0</kwd>
        <kwd>i* framework</kwd>
        <kwd>goal-oriented requirements engineering</kwd>
        <kwd>formal definition of languages</kwd>
        <kwd>satisfaction</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>Introduction</title>
      <p>
        Since its formulation in the mid-nineties [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ], the i* language has gone through a long
path of evolution in which different small variants, customizations to different needs
(e.g., dealing with security [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ]) or even dialects as GRL [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ] or Tropos [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ], have
emerged. A thorough comparison until 2006 can be checked at [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ], an historical
perspective until 2011 can be found at [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ] while a recent literature review [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ] complements
the analysis with newer references.
      </p>
      <p>
        While this diversity was considered overall positive because it facilitated the i*
community to grow lively, it has the other side of the coin in the lack of a well-established,
common core, acting as lingua franca for researchers, practitioners and tool developers.
With the purpose to solve this problem, the community launched in 2014 a task force
to define an agreed core of constructs to be used as the basis of any specialization of
the language. The most visible result was the formulation of the iStar2.0 language [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ],
which includes a syntactical definition of the core constructs of i*. The accurate
syntactic definition is based on a metamodel (a UML class diagram). This metamodel is
useful in a lot of contexts, e.g for developing tool support [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ], but when defining more
formally other constructs in top of iStar2.0, it may lack of accuracy or may become
cumbersome to deal with e.g. through OCL constraints. Also, the iStar2.0 definition
does not include any notion of satisfaction that could be eventually used to reason about
model correctness.
      </p>
      <p>
        To cope with this problem, the present document has the goal of defining the
structure of the iStar2.0 language in an algebraic form, and then providing the notion of
satisfaction of iStar2.0 models on top of this definition. It can be considered as an
auxiliary document when a high degree of formalization is needed, e.g. for defining the
meaning of complex language constructs as specialization, as already done in the past
[
        <xref ref-type="bibr" rid="ref10">10</xref>
        ] with a previous, simplified definition of this kind of description for the seminal i*
language [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ]. Given that ontological definitions of classical i* constructs (e.g. [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ])
are not incorporated, this definition is mainly of syntactic nature.
      </p>
      <p>The rest of the paper introduces one section per topic: algebraic definition of the
language, introduction of a collection of auxiliary operations that can be useful for
working with this algebraic definition, and formulation of the satisfaction function
using first order logic.
2</p>
    </sec>
    <sec id="sec-2">
      <title>Algebraic Definition of iStar2.0</title>
      <p>
        Algebraic definitions have a long tradition in theoretical computer science, to describe
complex structures as finite automata [
        <xref ref-type="bibr" rid="ref13">13</xref>
        ]. In the field of software engineering,
algebraic definitions became popular in the mid-nineties as a way to precisely describe
programming languages [
        <xref ref-type="bibr" rid="ref14">14</xref>
        ] and other related artifacts as abstract data types [
        <xref ref-type="bibr" rid="ref15">15</xref>
        ]. In all
these cases, the definition is used as the basis to formulate constructs, state properties
and theorems and develop formal demonstrations. Even if somehow difficult to read,
they provide a sound and accurate basis that makes them useful for their purpose. This
is the reason why we are adopting this approach in this paper.
      </p>
      <p>The algebraic definition for iStar2.0 language is shown in Table 1. The iStar2.0
constructs can be grouped into seven concepts: models (D1), actors (D2), intentional
elements (D3), intentional element links (D4), dependencies (D5) and dependencies ends
(D6), and actor links (D7). For every concept, we show the domains and the most
significant properties that they need to fulfil.
3</p>
    </sec>
    <sec id="sec-3">
      <title>A Collection of Auxiliary Operations</title>
      <p>• O1-O3 return the name of named iStar2.0 constructs, which is needed to establish
identity of elements in definitions and proofs.
• O4-O6: return descendants and parents of actors through actor links. We included
operations for direct descendants of an actor a (O4), actors with an actor link to
a, and the transitive clousure of descendants (O5), linked directly to a or to any
of its descendants.
• O7 returns the actor that acts as dependency end in a dependency. This operation
is useful given that a dependency end can be the actor itself (in SD views mainly)
and an intentional element (IE) inside an actor (in SR views mainly).</p>
      <sec id="sec-3-1">
        <title>Id Definition Components i* model</title>
        <p>D1 M = (A, DL, DP, AL) A: set of actors; DL: set of dependencies
DP: set of dependums; AL: set of actor links
─ a,bA: name(a)  name(b) (all actors have different names)
─ x,yDL: name(x)  name(y) (all dependums have different names)
─ aA: adescendants_trans(a, M) (avoid cycles in actor links)</p>
      </sec>
      <sec id="sec-3-2">
        <title>Actor</title>
        <p>D2 a = (n, IE, IEL)
n: name; IE: set of IEs; IEL: set of IE links
─ x,y  IE: name(x)  name(y) (all IEs have different names)
─ m,n  IEL: source(m) = source(n)  type(m) = type(n) = refinement
 (refinementValue(m) = refinementValue(n)) , an IE cannot be
ORand AND-refined simultaneously</p>
      </sec>
      <sec id="sec-3-3">
        <title>Intentional Element (IE)</title>
        <p>D3 ie = (n, t) n: name; t: type of IE, t{goal, quality, task, resource}</p>
      </sec>
      <sec id="sec-3-4">
        <title>Intentional Element link</title>
        <p>D4 iel = (p, q, t, rv, cv) p, q: IEs (source and target)
t: type of IE link, t{refinement, qualification, neededBy, contribution}
─ t = refinement  type(p)  {goal, task}  type(q)  {goal, task}
─ t = qualification  type(p) = quality  type(q)  quality
─ t = neededBy  type(p) = resource  type(q) = task
─ t = contribution  type(q) = quality</p>
      </sec>
      <sec id="sec-3-5">
        <title>Dependency</title>
        <p>D5 d = (der, dee, dm)</p>
      </sec>
      <sec id="sec-3-6">
        <title>Dependency end</title>
        <p>D6 de = (a, ie)</p>
      </sec>
      <sec id="sec-3-7">
        <title>Actor link</title>
        <p>D7 al = (a, b, t)
rv: refinement value, rv  {AND, OR, ⊥}
─ t = refinement  rv  ⊥
cv: contribution value, cv  CT+  CT– {⊥}
─ CT+ = {make, help}, CT– = {break, hurt}
─ t = contribution  cv  ⊥
der, dee: dependency ends (depender and dependee respectively)
dm: IE (dependum), dm = (n, t) (see D3)
─ actor(der) ≠ actor(dee) (an actor cannot depend on itself)
a: actor (depender or dependee)
ie: IE (from depender or dependee), ie  IE(a) ∪ {⊥}
a, b: actors (source and target), t  {is-a, participates-in}</p>
      </sec>
      <sec id="sec-3-8">
        <title>Id Definition Components</title>
        <p>O1 Actor name a = (n, IE, IEL)  M: name(a) = n
O2 IE name x = (n, t)IE: name(x) = n
O3 Dependum name d = (der, dee, dm)  DL: name(d) = name(dm) -- dm is an IE; C2 applies
O4 Descendants descendants(b, M) = {a | (a, b, t)  AL}
O5 Transitive clousure descendants_trans(b, M) = descendants(b, M) </p>
        <p>of descendants (a: a  descendants(b, M): descendants_trans(a, M)
O6 Parent actor parent(a, M) = (b: (a, b, t)  AL)
O7 Dependency end d = ((a, ie1), (b, ie2), dm)  DL: actor((a, ie1)) = a  actor((b, ie2)) = b
O8 Source and target iel = (p, q, t, rv, cv)  IEL: source(iel) = p  target(iel) = q</p>
        <p>IEs of an IE link
O9 Type of an IE link iel = (p, q, t, rv, cv)  IEL: type(iel) = t
O10 Actor outgoing de- outgoingDep(a, M) = {d: d = (der, dee, dm)  DL: actor(der) = a}
pendencies
O11 Actor incoming de- incomingDep(a, M) = {d: d = (der, dee, dm)  DL: actor(dee) = a}
pendencies
O12 Dependums of a set dependums(DL) = {dm: (der, dee, dm)  DL}</p>
        <p>of dependencies
O13 Main IEs of an actor mainIEs((n, IE, IEL)) = {ie  IE | ancestors(ie, IE, IEL) = },
where ancestors(IEL, ie) returns the set of IEs for which ie belongs to
their decomposition, according to IEL (see below)
O14 Ancestors of an IE Let be parents(ies, IE, IEL) = {iet: iet  IE: (ies, iet, t, rv, cv)  IEL)
ancestors(ie, IE, IEL) = parents(ie, IE, IEL) </p>
        <p>(ie2: ie2 parents(ie, IE, IEL): ancestors(ie2, IE, IEL)
O15 Substituting an ac- substituteActor(M, a, a’) = (A\{a}{a’}, substituteActor(DL, a, a’),
tor by another in a DP, substituteActor(AL, a, a’)
model
O16 Substituting an ac- substituteActor(DL, a, a’) =
tor by another in a {d=((x, ie1), (y, ie2), dm): dDL  x  a  y  a: d} 
set of dependencies {d=((x, ie1), (y, ie2), dm): dDL  x = a: ((a’, ie1), (y, ie2), dm)} 
{d=((x, ie1), (y, ie2), dm): dDL  y = a: ((x, ie1), (a’, ie2), dm)}
O17 Substituting an ac- substituteActor(AL, a, a’) =
tor by another in a {(x, y, t): (x, y, t)AL  x  a  y  a: (x, y, t)} 
set of actor links {(x, y, t): (x, y, t)AL  x = a: (a’, y, t)} </p>
        <p>{(x, y, t): (x, y, t)AL  y = a: (x, a’, t)}
O18 Substituting an IE bysubstituteIE(M, a, ie, ie’) = (A, substituteIE(DL, ie, ie’), DP\{ie}{ie’), AL)
another in a model
O19 Substituting an IE substituteIE(DL, ie, ie’) =
by another in a set {d=(der, dee, dm): dDL  dm  ie: d} 
of dependencies {d=(der, dee, dm): dDL  dm = ie: (der, dee, ie’)}
• O8-O9 gives a set of operations useful to handle with IE links.
• O10-O12 gives a set of predicates useful to handle dependencies and dependums.</p>
        <p>For the definition of the operation related to specialization (O12), we assumed
that the subactor inherits all the superactor elements.
• O13 provides an operation for getting the main IEs in an actor, i.e. IEs without
ancestors.
• O14 provides an operation for getting the ancestors of IEs in an actor through IE
links.
• O15-O19 provide a set of useful functions that substitute one element by another
in a given context. We are using them in the definition of specialization, where
refined elements need to be substituted by their redefinition.
4</p>
      </sec>
    </sec>
    <sec id="sec-4">
      <title>The Notion of Satisfaction in iStar2.0</title>
      <p>
        Finally, this section presents the most restricted notion of satisfaction (e.g. full
satisfied/full denied satisfaction values in [
        <xref ref-type="bibr" rid="ref16">16</xref>
        ]) of the iStar2.0 model elements using the
provided algebraic definition.
a) Satisfaction of actors
• SD1. An actor a that contains IEs, is satisfied if all its main IEs are satisfied.
• SD2. An actor a that does not contain IEs, is satisfied if all its outgoing
dependencies are satisfied.
b) Satisfaction of dependencies
• SD3. A dependency d is satisfied if its dependum is satisfied.
• SD4. The satisfaction of the dependum is not independent from the dependency
ends.
c) Satisfaction of IEs
• SD5-SD10. The satisfaction of an IE depends on the IE type: goal satisfactibility:
the goal attains the desired state; task satisfactibility: the task follows the defined
procedure; resource satisfactibility: the resource is produced or delivered; quality
satisfactibility: the modeled condition fulfills some agreed fit criterion. But note
the IE satisfaction itself is not defined. IE satisfaction is defined by the modeler,
when the IE is a leaf. When it is not a leaf, the only thing that can be done is to
identify several properties depending on the type of links involved.
      </p>
      <p>Fig 1. includes the elements used in the satisfaction definition predicates (see Table 3).
This section includes the individual cases for the refinement, i.e. only one type of
link arriving to the IE. In the case of combining different types of links, for example a
goal refined using an OR-refinement with a qualification link (Fig.1, left), the
satisfaction would be the result applying a logical AND of each link type result. In the example
in Fig. 1 (left), it would be the result of applying a logical AND between the sat(ieq)
and the result of the sat(ie) applying SD5.
5</p>
    </sec>
    <sec id="sec-5">
      <title>Conclusions</title>
      <p>
        This paper has provided an algebraic definition of the iStar2.0 language. We argue that
this work can help researchers when defining new constructs in a formal way, or even
making precise concepts already defined as inheritance or other related constructs as
metrics [
        <xref ref-type="bibr" rid="ref17">17</xref>
        ][
        <xref ref-type="bibr" rid="ref18">18</xref>
        ]. This formal definition of iStar2.0 and the notion of satisfaction have
been used for the formal definition of the specialization construct (is-a actor link) [
        <xref ref-type="bibr" rid="ref19">19</xref>
        ].
      </p>
      <p>The main limitation is that this work is still at the syntactic level. Future work should
go on this direction by considering ontologies in the notion of satisfaction.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <surname>Yu</surname>
            <given-names>E.</given-names>
          </string-name>
          :
          <article-title>Modelling Strategic Relationships for Process Reengineering</article-title>
          .
          <source>PhD. Computer Science</source>
          , University of Toronto, Toronto,
          <year>1995</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <surname>Mouratidis</surname>
            <given-names>H.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Giorgini</surname>
            <given-names>P.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Manson</surname>
            <given-names>G.</given-names>
          </string-name>
          :
          <article-title>Integrating Security and Systems Engineering: Towards the Modelling of Secure Information Systems</article-title>
          .
          <source>CAiSE</source>
          <year>2003</year>
          , pp.
          <fpage>63</fpage>
          -
          <lpage>78</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <surname>Mussbacher</surname>
            <given-names>G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Amyot</surname>
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Heymans</surname>
            <given-names>P.</given-names>
          </string-name>
          :
          <source>Eight Deadly Sins of GRL. iStar 2011</source>
          , pp.
          <fpage>2</fpage>
          -
          <lpage>7</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <surname>Bresciani</surname>
            <given-names>P.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Perini</surname>
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Giorgini</surname>
            <given-names>P.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Giunchiglia</surname>
            <given-names>F.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Mylopoulos</surname>
            <given-names>J</given-names>
          </string-name>
          .:
          <source>Tropos: An Agent-Oriented Software Development Methodology. Autonomous Agents and Multi-Agent Systems</source>
          ,
          <volume>8</volume>
          (
          <issue>3</issue>
          ),
          <year>2004</year>
          , pp.
          <fpage>203</fpage>
          -
          <lpage>236</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <surname>Grau</surname>
            <given-names>G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Cares</surname>
            <given-names>C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Franch</surname>
            <given-names>X.</given-names>
          </string-name>
          , Navarrete F.
          <article-title>: A Comparative Analysis of i* Agent-Oriented Modelling Techniques</article-title>
          .
          <source>SEKE</source>
          <year>2006</year>
          , p
          <fpage>57</fpage>
          -
          <lpage>663</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <surname>Cares</surname>
            <given-names>C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Franch</surname>
            <given-names>X.:</given-names>
          </string-name>
          <article-title>A Metamodelling Approach for i* Model Translations</article-title>
          .
          <source>CAiSE</source>
          <year>2011</year>
          , pp.
          <fpage>337</fpage>
          -
          <lpage>351</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <surname>Horkoff</surname>
            <given-names>J</given-names>
          </string-name>
          . et al.:
          <string-name>
            <surname>Goal-Oriented Requirements Engineering</surname>
          </string-name>
          :
          <article-title>An Extended Systematic Mapping Study</article-title>
          .
          <source>Requirements Engineering Journal</source>
          <volume>24</volume>
          ,
          <year>2019</year>
          , pp.
          <fpage>103</fpage>
          -
          <lpage>160</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8.
          <string-name>
            <surname>Dalpiaz</surname>
            <given-names>F.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Franch</surname>
            <given-names>X.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Horkoff</surname>
            <given-names>J</given-names>
          </string-name>
          .:
          <year>iStar2</year>
          .
          <article-title>0 Language Guide</article-title>
          .
          <source>CoRR abs/1605.07767</source>
          ,
          <year>2016</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9.
          <string-name>
            <surname>Pimentel</surname>
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Castro J.: piStar Tool - A Pluggable Online</surname>
          </string-name>
          <article-title>Tool for Goal Modeling</article-title>
          .
          <source>RE</source>
          <year>2018</year>
          , pp.
          <fpage>498</fpage>
          -
          <lpage>499</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          10.
          <string-name>
            <surname>López</surname>
            <given-names>L.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Franch</surname>
            <given-names>X.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Marco</surname>
            ,
            <given-names>J.:</given-names>
          </string-name>
          <article-title>Specialization in i* Strategic Rationale Models</article-title>
          .
          <source>ER</source>
          <year>2012</year>
          , pp.
          <fpage>267</fpage>
          -
          <lpage>281</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          11.
          <string-name>
            <surname>López</surname>
            <given-names>L.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Franch</surname>
            <given-names>X.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Marco</surname>
            <given-names>J</given-names>
          </string-name>
          .:
          <source>Making Explicit Some Implicit i* Language Decisions. ER</source>
          <year>2011</year>
          , pp.
          <fpage>62</fpage>
          -
          <lpage>77</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          12.
          <string-name>
            <surname>Guizzardi</surname>
            <given-names>R.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Franch</surname>
            <given-names>X.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Guizzardi</surname>
            <given-names>G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Wieringa</surname>
          </string-name>
          , R.:
          <article-title>Ontological Distinctions between Means-End and Contribution Links in the i* Framework</article-title>
          .
          <source>ER</source>
          <year>2013</year>
          , pp.
          <fpage>463</fpage>
          -
          <lpage>470</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          13.
          <string-name>
            <surname>Ullman</surname>
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Hopcroft</surname>
            <given-names>J</given-names>
          </string-name>
          .: Introduction to Automata Theory, Languages, and
          <string-name>
            <surname>Computation</surname>
          </string-name>
          . Addison-Wesley,
          <year>1979</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          14.
          <string-name>
            <surname>Broy</surname>
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Wirsing</surname>
            <given-names>M.</given-names>
          </string-name>
          :
          <article-title>Algebraic Definition of a Functional Programming Language and its Semantic Models</article-title>
          .
          <source>RAIRO Informatique Théorique</source>
          ,
          <volume>17</volume>
          (
          <issue>2</issue>
          ),
          <year>1983</year>
          , pp.
          <fpage>137</fpage>
          -
          <lpage>161</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          15.
          <string-name>
            <surname>Ehrig</surname>
            <given-names>H.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Mahr</surname>
            <given-names>B.</given-names>
          </string-name>
          :
          <article-title>Fundamentals of Algebraic Specification 1</article-title>
          . Equations and
          <string-name>
            <given-names>Initial</given-names>
            <surname>Semantics</surname>
          </string-name>
          . Springer,
          <year>1985</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          16.
          <string-name>
            <surname>Giorgini</surname>
            <given-names>P.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Mylopoulos</surname>
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Nicchiarelli</surname>
            <given-names>E.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Sebastiani</surname>
            <given-names>R.</given-names>
          </string-name>
          :
          <article-title>Reasoning with Goal Models</article-title>
          .
          <source>ER</source>
          <year>2002</year>
          , pp.
          <fpage>167</fpage>
          -
          <lpage>181</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          17.
          <string-name>
            <surname>Franch</surname>
            <given-names>X.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Grau</surname>
            <given-names>G.</given-names>
          </string-name>
          , Quer C.
          <article-title>: A Framework for the Definition of Metrics for Actor-Dependency Models</article-title>
          .
          <source>RE</source>
          <year>2004</year>
          , pp.
          <fpage>348</fpage>
          -
          <lpage>349</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          18.
          <string-name>
            <surname>Franch</surname>
            <given-names>X.</given-names>
          </string-name>
          :
          <article-title>A Method for the Definition of Metrics over i* Models</article-title>
          .
          <source>CAiSE</source>
          <year>2009</year>
          , pp.
          <fpage>201</fpage>
          -
          <lpage>215</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref19">
        <mixed-citation>
          19.
          <string-name>
            <surname>López</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Franch</surname>
            ,
            <given-names>X.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Marco</surname>
            ,
            <given-names>J.:</given-names>
          </string-name>
          <article-title>Specialization in the iStar2.0 language</article-title>
          . IEEE Access. doi:
          <volume>10</volume>
          .1109/ACCESS.
          <year>2019</year>
          .2940094
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>