<!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>Measurement of Actor External Dependencies in GRL Models</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Jameleddine Hassine</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Mohammad Alshayeb</string-name>
          <email>alshayebg@kfupm.edu.sa</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Department of Information and Computer Science King Fahd University of Petroleum and Minerals</institution>
          ,
          <addr-line>Dhahran</addr-line>
          ,
          <country country="SA">Saudi Arabia</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>Goal models represent interests, intentions, and strategies of di erent stakeholders in early requirements engineering. When capturing requirements of socio-technical systems, goal models evolve quickly to become large and complex. Hence, understanding and maintaining such goal models become more challenging. Software engineering metric-based approaches have shown good potential in measuring software designs. In this paper, we propose a structural metric to measure actor external dependencies in GRL (Goal-oriented Requirement Language) models. We illustrate our approach by applying our metric to a goal model describing undergraduate students' involvement in research activities.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>Introduction</title>
      <p>
        Goal models have been introduced as a means to ensure that stakeholders'
interests and expectations are met in the early requirements engineering stages. As
goal models gain in complexity (e.g., large systems involving many
stakeholders and many dependencies), they become di cult to validate, maintain, and
comprehend. These challenges led to the development of many goal-oriented
metric-based approaches [1{4]. These approaches di er in their targeted
notation, their purpose, their analysis type (e.g., quantitative, qualitative), and
their scope (e.g., global, local). In order to support the assessment and
selection of Commercial O -The-Shelf (COTS) components, Franch and Maiden [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ]
have proposed and applied quantitative metrics to i* SD (Strategic Dependency)
models. The proposed metrics are based on a classi cation of SD dependencies
(e.g., duplicated and non-duplicated, hidden and non-hidden, etc.) and they are
used to measure system properties such as diversity and vulnerability. Franch et
al. [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ] have introduced a generic framework with three structural metrics,
aiming to evaluate system properties such as privacy and accuracy. The proposed
framework supports both global and local metrics, and considers actor and
dependency weights (i.e., importance values). Grau and Franch [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ], have applied
the approaches introduced in [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ] and [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ] to evaluate the e ectiveness of
alternative architectures based on metrics derived using the Goal-Question-Metric
(GQM) approach. Sutcli e and Minocha [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ] have proposed a method to measure
and analyze dependencies between systems and their users (described as an i*
model) based on operational scenarios (e.g., using use case interaction diagrams).
To the best of our knowledge, none of the existing goal model approaches have
conducted theoretical validation of their proposed metrics.
      </p>
      <p>
        Many simple GRL metrics (e.g., number of goals, number of actors, etc.)
are captured using the jUCMNav [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ] tool, an Eclipse-based graphical tool that
supports GRL (Goal-oriented Requirement Language) [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ] modeling. In addition,
jUCMNav [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ] supports the computation of user-de ned metrics (expressed in
OCL). However, so far, no GRL-based quality metrics have been proposed.
      </p>
      <p>The main motivation of this research is to provide a quanti cation of
structural properties of GRL models. This paper aims to:
{ Propose a quantitative metric to measure the Actor External Dependencies
(AED) in GRL goal models (i.e., local metric at the actor level).
{ Provide a basis for systematic assessment of goal models with respect to the
interactions between the involved actors (i.e., global metric at the model
level).</p>
      <p>{ Provide a theoretical evaluation of the proposed AED metric.
The remainder of this paper is organized as follows. Our proposed GRL actor
external dependency metric is presented Sect. 2. In Sect. 3, we apply our
proposed metric to a GRL model describing the involvement of students in research
activities. A discussion of the bene ts and threats to validity of our approach is
provided in Sect. 4. Finally, conclusions and future work are presented in Sect. 5.
2</p>
    </sec>
    <sec id="sec-2">
      <title>Measuring actor external dependencies</title>
      <p>
        Dependencies enable reasoning about how actor de nitions depend on each other
to achieve their goals. Dependencies between stakeholders can be classi ed as
explicit or implicit. Explicit dependencies are modeled as dependency links ,
while implicit dependencies are modeled using contributions and
decompositions crossing actor boundaries. Explicit dependency links can be used in
many types of con gurations according to the required level of detail [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ]. GRL
actors can be used as source and/or destination of an explicit dependency link.
Intentional elements inside actor de nitions can be used as source and/or
destination of a dependency link. It is worth noting that GRL is permissive in
how intentional elements can be linked to each other. We further classify
dependencies as internal (the source and the target of the dependency (explicit or
implicit) are within the same actor), or external (the source and the target of
the dependency (explicit or implicit) belong to di erent actors).
      </p>
      <p>In what follows, we propose the Actor External Dependency metric (AED)
to measure the GRL external dependencies at the actor level. The metric tends
to measure the level of which the actor depends on other services provided by
other actors. We use the term \element" to denote a GRL intentional element
of type goal, softgoal, or task.
2.1</p>
      <p>Metrics de nitions
Dependencies between intentional elements are counted as follows:
{ Explicit dependencies: Goal1 Goal2, denotes \Goal1 depends on Goal2".</p>
      <p>Hence, the outgoing dependency link is counted as a dependency for Goal1.
{ Implicit dependencies: (1) Goal1 Goal2, denotes \G1 is contributing to the
achievement of G2", meaning that G2 depends on G1. Hence, the incoming
contribution is counted as a dependency for Goal2, (2) Goal1 (Goal2,
Goal3), expresses the fact that \Goal2 and/or/xor Goal3 contribute to the
realization of Goal1". Therefore, the two decomposition links are counted as
two dependencies for Goal1.</p>
      <p>To measure the Actor External Dependency metric for actor a having k
elements, we de ne the AED metric as follows:</p>
      <p>AED(a) =</p>
      <p>Pi=k a(nAEDi)
i=1 nSE k
k
where nAED (Number of Actor External Dependencies), denotes the number
of external dependencies (incoming contribution and decomposition links, and
outgoing explicit dependencies) for each element enclosed in actor \a", and nSE
denotes the total number of intentional elements in the model.</p>
      <p>In addition, we calculate the average model dependency for a GRL model
with m actors as:</p>
      <p>AM D =</p>
      <p>Pnn==1m AED(n)
m</p>
      <p>Where AED(n) is the Actor External Dependency of actor \n".
2.2</p>
      <p>
        AED theoretical validation
To validate the proposed metric theoretically, we use the properties proposed by
Kitchenham et al. [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ]. The authors [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ] have proposed four properties to be
satis ed in order for the metric to be theoretically valid. The theoretical validation
of AED, based on these properties, is as follows:
Property 1 Let A and B be two actors in a GRL model M. Assume that actors
A and B have \i" and \j" elements, respectively. Also, assume that actors A and
B have \k" and \m" total external dependencies, respectively, where k 6= m:
k
AED(A) = j and AED(B) =
i
m
i then AED(A) 6= AED(B)
j
Property 2 Let A and B be two actors in a GRL model M. Assume that actors
A and B have \i" and \j" elements, respectively, where i=j. Also, assume that
actors A and B have \k" and \m" total external dependencies, respectively, where
k &gt; m, then: AED(A) &gt; AED(B).
Property 3 Let A and B be two actors in a GRL model M. Assume that actors
A and B have \i" and \j" elements, respectively, where i=j. Also, assume that
actors A and B have \k" and \m" total external dependencies, respectively, where
m = k+1. then:
1
AED(B) = AED(A) + i
j
Property 4 Let A and B be two actors in a GRL model M. Assume that actors
A and B have \i" and \j" elements, respectively, where i=j. Also, assume that
actors A and B have \k" and \m" total external dependencies, respectively, where
m=k. then: AED(A)= AED(B).
      </p>
      <p>As AED satis es these properties, then this metric is theoretically valid.
2.3</p>
      <p>AED Interpretation
AED metric computes a normalized value for the actor external dependency. A
lower AED value means the actor does not depend much on the services provided
by other actors and hence, it is more independent. The higher the AED value, the
more dependent the actor. Since AED metric measures the external dependency
only, the internal connections within actors are not considered, and hence do not
a ect the metric value.
3</p>
    </sec>
    <sec id="sec-3">
      <title>Case Study: Undergraduate Student Involvement in</title>
    </sec>
    <sec id="sec-4">
      <title>Research Activities</title>
      <p>In this section, we apply the proposed AED metric to a GRL model (see Fig. 1)
that describes undergraduate student involvement in research activities. The
model involves two actors (Professor and Undergraduate Student) and describes
one explicit dependency stating that \In order to ensure active involvement of
students in research projects, professors depend on students to show their
commitment to research activities". Research opportunities may take one of the
following forms: (1) Perform programming duties, and (2) Perform experiments
and data collection, (3) Perform engineering or scienti c design tasks, and (4)
Perform mechanical oand/or electrical assembly tasks. They are described as
four tasks contributing positively (i.e., using the GRL help contribution type) to
the softgoal \active involvement of undergraduate students in research projects".
Student commitment to research activities is subject to either getting an
academic credit for their performed tasks or have a nancial support (through hourly
wages) from professors.</p>
      <p>The AED metric is calculated as follows:</p>
      <p>AED(P rof essor) = 6
5
+</p>
      <p>+
In general system design, dependencies are clearly undesirable. However, in a
socio-technical context dependencies may be desirable. For instance, it might be
appropriate to o oad a human actor by moving some of his responsibilities to a
software actor (i.e., by implementing more automation), creating new external
dependencies between the human and the software actors. Hence, specifying an
adequate level of dependencies requires an expert judgment and the agreement
of the intervening stakeholders. While a dependency metric helps the assessment
of actor interactions within a GRL model, a theoretical framework is required
to guide the model redesign.</p>
      <p>A simplistic dependency metric would consider the number of outgoing
connections regardless of how many elements an actor has, while the proposed AED
metric considers the number of connections with respect to the elements an actor
has, which tends to show the relative dependency.</p>
      <p>Our metric and the illustrative example are subject to some limitations and
threats to validity. These limitations and threats are related to the extent to
which our results can be generalized. A possible threat is that we have considered
all external relations to have the same weight. However, de ning a dependency
weight will always be subjective and hence we have decided to ignore the weight
factor. Another possible threat is that we only proposed the Actor External
Dependency. Although, this metric by itself may not provide a complete picture
to understand the system complexity or dependency, it seems to be a good
indicator.</p>
    </sec>
    <sec id="sec-5">
      <title>Conclusions and future work</title>
      <p>The quantitative Actor External Dependency (AED) metric described in this
paper provides a basis for systematic investigation of socio-technical system
dependencies expressed in the GRL language. We have validated theoretically our
proposed metric and have applied it to a GRL example to demonstrate its
applicability. As future work, we plan to propose a metric to measure the actor
internal dependencies (i.e., between intentional elements within an actor) and
another metric to measure actor stability.</p>
    </sec>
    <sec id="sec-6">
      <title>Acknowledgment References</title>
      <p>The authors would like to acknowledge the support provided by King Fahd
University of Petroleum &amp; Minerals (KFUPM).</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <surname>Franch</surname>
            ,
            <given-names>X.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Maiden</surname>
          </string-name>
          , N.:
          <article-title>Modelling component dependencies to inform their selection</article-title>
          . In Erdogmus, H.,
          <string-name>
            <surname>Weng</surname>
          </string-name>
          , T., eds.
          <source>: COTS-Based Software Systems. Volume 2580 of LNCS</source>
          . Springer Berlin Heidelberg (
          <year>2003</year>
          )
          <volume>81</volume>
          {
          <fpage>91</fpage>
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <surname>Franch</surname>
            ,
            <given-names>X.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Grau</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Quer</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          :
          <article-title>A framework for the de nition of metrics for actordependency models</article-title>
          .
          <source>In: Requirements Engineering Conference</source>
          ,
          <year>2004</year>
          .
          <source>Proceedings. 12th IEEE International. (Sept</source>
          <year>2004</year>
          )
          <volume>348</volume>
          {
          <fpage>349</fpage>
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <surname>Grau</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Franch</surname>
            ,
            <given-names>X.</given-names>
          </string-name>
          :
          <article-title>A goal-oriented approach for the generation and evaluation of alternative architectures</article-title>
          . In Oquendo, F., ed.:
          <source>Software Architecture. Volume 4758 of LNCS</source>
          . Springer Berlin Heidelberg (
          <year>2007</year>
          )
          <volume>139</volume>
          {
          <fpage>155</fpage>
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <surname>Sutcli</surname>
            <given-names>e</given-names>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            ,
            <surname>Minocha</surname>
          </string-name>
          ,
          <string-name>
            <surname>S.</surname>
          </string-name>
          :
          <article-title>Linking business modelling to socio-technical system design</article-title>
          . In Jarke,
          <string-name>
            <given-names>M.</given-names>
            ,
            <surname>Oberweis</surname>
          </string-name>
          , A., eds.:
          <source>Advanced Information Systems Engineering</source>
          . Volume
          <volume>1626</volume>
          <source>of LNCS</source>
          . Springer Berlin Heidelberg (
          <year>1999</year>
          )
          <volume>73</volume>
          {
          <fpage>87</fpage>
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5. jUCMNav: jUCMNav Project,
          <year>v5</year>
          .
          <fpage>4</fpage>
          .0 (
          <issue>tool</issue>
          , documentation, and meta-model) (
          <year>2013</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <surname>ITU-T:</surname>
          </string-name>
          Recommendation Z.
          <volume>151</volume>
          (
          <issue>10</issue>
          /12),
          <article-title>User Requirements Notation (URN) language de nition</article-title>
          , Geneva, Switzerland (
          <year>2012</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <surname>Kitchenham</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          , P eeger, S.,
          <string-name>
            <surname>Fenton</surname>
          </string-name>
          , N.:
          <article-title>Towards a framework for software measurement validation</article-title>
          .
          <source>Software Engineering</source>
          , IEEE Transactions on
          <volume>21</volume>
          (
          <issue>12</issue>
          ) (
          <year>Dec 1995</year>
          )
          <volume>929</volume>
          {
          <fpage>944</fpage>
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>