<!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>Managing i*-based Reusable Context Models Elements through a Semantic Repository</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Karina Abad</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Wilson Pérez</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Juan Pablo Carvallo</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Computer Science Department, Universidad de Cuenca</institution>
          ,
          <country country="EC">Ecuador</country>
        </aff>
      </contrib-group>
      <pub-date>
        <year>2016</year>
      </pub-date>
      <volume>1674</volume>
      <fpage>67</fpage>
      <lpage>72</lpage>
      <abstract>
        <p>In previous works, we have presented a catalogue of patterns aimed at improving context models' construction by departing from a set of predefined elements, instead of starting from scratch. Patterns were identified from i*- based context models constructed for several industrial cases (where the DHARMA method was used), packaged and stored in the form of i* SD actors and dependencies. In this paper we go one step further and present a framework, based in semantic technologies, designed to improve utilization of the catalog, which has been deployed as a semantic repository. The framework makes easier the construction of i*-based context models, by recommending knowledge elements stored in the repository.</p>
      </abstract>
      <kwd-group>
        <kwd>DHARMA Method</kwd>
        <kwd>semantic repository</kwd>
        <kwd>iStar Framework</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>-</title>
      <p>
        Modern enterprises rely on Information Systems (IS) specifically designed to manage
the increasing interactions with their context. Design of such systems requires deep
understanding of the enterprise context and strategies. To support this process, we have
proposed the DHARMA method [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ], aimed at discovering IS architecture departing
from the construction of Context Models (CM) expressed in i*. The application of the
first activities of this method in several industrial and academic cases, allowed us to
construct a catalog of patterns of context elements, represented as i* Strategic
Dependency models, which include generic environmental actors and their associated strategic
dependencies [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ]. Patterns in the catalogue are used to improve CM construction, by
reusing the stored intentional elements in new modes, instead of starting from scratch.
In this paper we go one step forward and introduce the Semantic DHARMA
(SDHARMA) framework, designed to automate the application of the DHARMA
method, making use of semantic techniques and an evolution of the catalogue of
patterns, which has been redefined as a semantic repository.
      </p>
      <p>Copyright © 2016 for this paper by its authors. Copying permitted for private and academic purposes.
2</p>
    </sec>
    <sec id="sec-2">
      <title>Related Works and Literature Review</title>
      <p>
        There are several tools supporting i*-based modeling and its variants (TROPOS,
Service Oriented i*, etc.), e.g., OpenOME [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ], E4J [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ] and iStarTool [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ], all of them allow
users to create and validate i* models. In [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ], authors conduct a systematic comparison
of i* modelling tools, focusing in both, syntactic and semantic support, in order to help
users to choose the most adequate tool. However, all these tools need user interaction
in order to construct i* models. In [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ], a collection of RESTful Web Services intended
to manipulate existing i* models is presented. More specifically, one service creates,
edits, deletes and stores iStarML files in an eXistDB; a second service creates SVG
files and shows them in a Web browser as an i* diagram, achieving semi-automatic
generation of i* SD models. In our approach, we aim at the automatic generation of i*
models from tables resulting from each DHARMA activity.
      </p>
      <p>
        In [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ], the development of the ontological meta-model for i* variants is presented;
this meta-model contributes to the development of a tool for the automatic generation
of organizational ontologies [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ]. Departing from an iStarML file, the tool joins the
ontological meta-model with domain models in order to extend the vocabulary, the
metamodel in [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ] will be the basis for this project.
3
      </p>
    </sec>
    <sec id="sec-3">
      <title>The DHARMA Method</title>
      <p>
        The DHARMA (Discovering Hybrid ARchitectures by Modelling Actors) method (see
Fig.1), aims at the definition of enterprise architectures using the i* framework [
        <xref ref-type="bibr" rid="ref14">14</xref>
        ].
The process is initiated in activity 1 by modeling the enterprise context. The
organization and its strategy are carefully analyzed, to identify its role inside the context, making
evident the Context Actors (CA) and the Organizational Areas (OA) structuring the
organization. i* SD models are built and used to support reasoning and represent results
from this activity. Next, in activity 2, an IS-to-be is placed into the organization and the
impact that it has over the elements in the CM is analyzed. Strategic dependencies
identified in the previous activity (internal and context), are inspected to determine which
of them may be totally or partially satisfied by IS. In activity 3, dependencies included
in the IS CM are analyzed and decomposed into a hierarchy of goals required to satisfy
them. The goals represent the services that IS must provide, to support interaction with
CA and OA activities. An i* SR diagram for the system is built. Finally, activity 4, is
used to identify the generic architecture of the system (system actors that structure the
system, the services -goals- that must be covered by each of them and the relationships
among them).
4
      </p>
    </sec>
    <sec id="sec-4">
      <title>Semantic DHARMA</title>
      <p>
        S-DHARMA is a web framework that allows the creation and maintenance of i*
models, following the activities defined in the DHARMA method. Its main objective is to
make easier the construction of organizational CMs and to visualize the models
resulting from each activity of the method.
As starting point, the framework recommends the dependencies stored in a semantic
repository, and then, in a refinement phase, the user can create additional dependencies
or modify existing ones using the tabular form of i* SD model presented in [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ]. The
framework makes use of OntoiStar [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ] and the DHARMA ontology [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ], thus, supports
all the elements of the i* notation.
4.1
      </p>
      <p>Architecture
Architecture of the semantic DHARMA framework (see Fig.2) is defined in three
layers, client, server and data layers. The client layer allows the interaction with the user,
and gives him the possibility to create, edit, store, and visualize context models based
in the i* notation, it has been constructed using JavaScript and makes use of the D3.js
library to generate i* diagrams.</p>
      <p>CLIENT LAYER
DATA LAYER</p>
      <p>Apache
Marmotta</p>
      <p>SERVER LAYER</p>
      <p>DHARMA</p>
      <p>Ontology
SPARQL
Generator</p>
      <p>Mapping</p>
      <p>Process Result</p>
      <p>
        The server layer works as a bridge between the client and the data layers. It receives
requests from the client layer in JSON format by invoking RESTful Web Services, and
then, through a mapping process between the data and the DHARMA ontology, creates
SPARQL queries [
        <xref ref-type="bibr" rid="ref13">13</xref>
        ], which are sent to the data layer through Apache Marmotta [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ]
Services. The S-DHARMA ontology conceptualizes the knowledge of the DHARMA
method in an ontological network (see fig. 3), which integrates different domains and
their vocabularies, such as Offer-job and Classification [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ] ontologies, to cover
concepts of size, sector and industry of an organization. The OntoiStar+ ontology is the
basis of the S-DHARMA ontology, it contains concepts of actors, dependencies,
intentional types, etc. The ValueChain [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ] ontology is used to cover requirements of the
OAs, and to manage features related to the activities of the DHARMA method, such as
the definition of relations between actors, organization, dependencies, areas, direction
of the dependencies, and the concept of coverage used in activity 2 of the DHARMA
method, to define if a dependency can be totally or partially satisfied by the IS, etc.
      </p>
      <p>The data layer stores and retrieves information from the triplestore based in Apache
Marmotta. The SPARQL queries generated in the server layer, either for insert, update
or delete, are processed in this layer and results are returned to the server in JSON
format. Immediately, the server layer retrieves the response to the client-layer.
classification offer-job</p>
      <sec id="sec-4-1">
        <title>DHARMA</title>
      </sec>
      <sec id="sec-4-2">
        <title>ValueChain</title>
      </sec>
      <sec id="sec-4-3">
        <title>OntoiStar+</title>
        <p>As mentioned before, the S-DHARMA framework supports the activities of the
DHARMA method; in this subsection we will focus on the support for activities 1 and
2. The first activity of the DHARMA method, “Context Modelling”, requires a deep
analysis of the organization and its OAs, so, as first step, the organization must be
created, by inputting its name, size, sector and industry. Immediately the framework will
show a group of OAs of interest for the organization under study, which are
automatically recommended and retrieved from the catalog and displayed as a tree, which
enables a consultor (user conducting the modeling activities) for its selection and the
creation of new OAs as needed. Next, the description of each OA and the specification of
a responsible for each of them is required; this information is stored in order to identify
the administrative stakeholder to be interviewed by the consultant during the modeling
process. Then, the analysis and modeling of each OA should be performed; the process
starts by selecting a group of actors, external and internal, with whom the OAs interact
(also retrieved and recommended from the semantic repository and displayed as a tree).
After that, the framework queries the semantic repository (see figure 4a for a query
example) and presents a group of generic dependencies of interest for each pair of
related actors (also retrieved from the semantic repository), the user can accept or not the
dependencies suggested.</p>
        <p>After saving the dependencies, the framework will show the tabular form of the CM
(see fig.4b), and additional options to support a refinement phase, where the user can
either create specific dependencies needed to improve the model, or parametrize
dependencies and actors. The framework also includes an option to show i* diagrams for
each pair of actors modelled in this activity (see fig. 4c).</p>
        <p>The second activity of the DHARMA method, “System Context Modelling”,
consists in the identification of the dependencies that can be solved by the IS, so, the
framework allows its identification using radio buttons to specify whether a dependency can
be totally or partially covered by the IS. After that, new i* diagrams can be generated,
including the IS as an actor.</p>
        <p>SELECT distinct ?URI ?Actor1 ?Dependum ?Actor2 ?IntentionalType ?direction WHERE {
GRAPH &lt;http://www.ucuenca.edu.ec/graph/DHARMA/production&gt;
{
?DependerLink OntoIStar:has_Dependency_DependerLink_target_ref ?DependerE .
?DependerLink OntoIStar:has_Dependency_DependerLink_source_ref ?URI .
?DependeeLink OntoIStar:has_Dependency_DependeeLink_target_ref ?DependeeE .
?DependeeLink OntoIStar:has_Dependency_DependeeLink_source_ref ?URI .
?URI OntoIStar:Node_sannotation ?direction .
?URI dharma:has_Dependency_Area_source_ref ?URIArea .
?DependerE OntoIStar:Node_label ?Actor2 .
?DependeeE OntoIStar:Node_label ?Actor1 .
?DependumLink OntoIStar:has_Dependency_DependumLink_target_ref ?DependumE .
?DependumE OntoIStar:Node_label ?Dependum .
?DependumE OntoIStar:has_IntentionalElement_IntentionalType ?IntentionalTypeE .</p>
        <p>?IntentionalTypeE rdfs:label ?IntentionalType .
}}</p>
        <p>(a)
(b) (c)</p>
        <p>Fig. 4. Screenshots of the Semantic DHARMA Framework
5</p>
      </sec>
    </sec>
    <sec id="sec-5">
      <title>Conclusions and Future Work</title>
      <p>In this paper, we presented the S-DHARMA framework, a web framework to support
the construction of CM based in the activities of the DHARMA method. Its interactive
interface, helps users to create models in short time, reducing typical errors commonly
associated to the i* notation. The framework makes use of semantic technologies that
allow the retrieval, recommendation and instantiation of i* SD context models elements
which have been annotated, packaged and stored in a semantic repository.</p>
      <p>Currently, the S-DHARMA framework supports the construction of SD models
required by activity 1 and 2 of the DHARMA method. As future work, we plan to extend
it to support SR models and the identification of the system architecture required by
activities 3 and 4 of the method. Also, we pretend to incorporate semantic reasoners
and include synonymy modules to avoid dependency duplication. Furthermore, we
pretend to adapt the constructors in order to implement the iStar2.0 standard and allow the
user to import and export i* models in existing formats, such as iStarML. Finally, we
pretend to incorporate the framework in academic activities aiming at improving the
DHARMA Method and the i* framework teaching-learning process.</p>
    </sec>
    <sec id="sec-6">
      <title>Acknowledgment</title>
      <p>This work has been conducted with the support of a grant from the Research Direction
of the University of Cuenca (DIUC), in the framework of the project “Hacia la
identificación, validación, y enriquecimiento semántico de patrones de modelos de contexto
a ser utilizados como base para la definición de arquitecturas de sistemas de
información empresariales”.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <surname>Abad</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Carvallo</surname>
            ,
            <given-names>J. P.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Espinoza</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Saquicela</surname>
            ,
            <given-names>V.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Hacia la Creación de un Repositorio Semántico de Modelos de Contexto</surname>
          </string-name>
          <article-title>Basados en i* y el método DHARMA</article-title>
          . Revista Ibérica de Sistemas y Tecnologías de la Información,
          <year>2016</year>
          , pp.
          <fpage>41</fpage>
          -
          <lpage>56</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <surname>Abad</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Carvallo</surname>
            ,
            <given-names>J. P.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Peña</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          <article-title>iStar in Practice: On the identification of reusable SD Context Models Elements</article-title>
          .
          <source>Proceedings of i* Workshop</source>
          <year>2015</year>
          , pp.
          <fpage>43</fpage>
          -
          <lpage>48</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <surname>Almeida</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Goulao</surname>
          </string-name>
          ,. M.,
          <string-name>
            <surname>Araújo</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          <article-title>A Systematic Comparison of i* Modelling Tools Based on Syntactic and Well-formedness Rules</article-title>
          .
          <source>Proceedings of i* workshop</source>
          <year>2013</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <surname>Carvallo</surname>
            ,
            <given-names>J. P.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Franch</surname>
            ,
            <given-names>X.</given-names>
          </string-name>
          <article-title>Descubriendo la arquitectura de sistemas de software híbridos: un enfoque basado en Modelos i*</article-title>
          .
          <source>Proceedings of RE'09</source>
          , pp.
          <fpage>45</fpage>
          -
          <lpage>56</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <surname>Horkoff</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Yijun</surname>
            ,
            <given-names>Y.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Yu</surname>
            ,
            <given-names>E.</given-names>
          </string-name>
          <article-title>OpenOME: An Open-source Goal and Agent-Oriented Model Drawing and Analysis Tool</article-title>
          . CEUR Workshop Proceedings, vol.
          <volume>766</volume>
          ,
          <year>2011</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <surname>Malta</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Soares</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Santos</surname>
            ,
            <given-names>E.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Paes</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Alencar</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Castro</surname>
          </string-name>
          , J. iStarTool:
          <article-title>Modeling requirements using the i* framework</article-title>
          , vol.
          <volume>766</volume>
          ,
          <year>2011</year>
          , pp.
          <fpage>163</fpage>
          -
          <lpage>165</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <surname>Merlin</surname>
            ,
            <given-names>L. P.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>De Borba Silva</surname>
            ,
            <given-names>A. L.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Santander</surname>
            ,
            <given-names>V. F. A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Da</surname>
            <given-names>Silva</given-names>
          </string-name>
          ,
          <string-name>
            <given-names>I. F.</given-names>
            ,
            <surname>Castro</surname>
          </string-name>
          ,
          <string-name>
            <surname>J.</surname>
          </string-name>
          <article-title>Integrating the E4J editor to the JGOOSE tool</article-title>
          . CIBSE 2015
          <string-name>
            <surname>- XVIII</surname>
          </string-name>
          Ibero-American Conference on Software Engineering,
          <year>2015</year>
          , pp.
          <fpage>646</fpage>
          -
          <lpage>659</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8.
          <string-name>
            <surname>Najera</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          ,.
          <article-title>An ontology-based approach for integrating i* variants</article-title>
          .
          <source>Master's thesis</source>
          ,
          <source>National Center of Research and Technological Development</source>
          , Cuernavaca, Morelos, Mexico,
          <year>2011</year>
          . www.tagoon.semanticbuilder.com/NajeraThesis.pdf.
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9.
          <string-name>
            <surname>Najera</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Vazquez</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          , et. al..
          <source>TAGOON+: Generation and Integration of Organizational Ontologies. Proceedings of i* workshop 2013</source>
          , pp.
          <fpage>125</fpage>
          -
          <lpage>127</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          10.
          <string-name>
            <surname>Petrushyna</surname>
            ,
            <given-names>Z.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Ruppert</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Klamma</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Renzel</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Jarke</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          <article-title>i*-REST: Light-Weight i* Modeling with RESTful Web Services</article-title>
          .
          <source>Proceedings of i* workshop</source>
          <year>2014</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>11. The Apache Software Foundation, Apache Marmotta, http://marmotta.apache.org/ (28/6/16)</mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          12.
          <string-name>
            <surname>Villazón-Terrazas</surname>
          </string-name>
          , Boris; Ramírez, Jaime;
          <string-name>
            <surname>Gómez-Pérez</surname>
            <given-names>Asunción</given-names>
          </string-name>
          , Human Resources Management Ontology, http://mayor2.dia.fi.upm.es/oeg-upm/index.php/en/ontologies/99- hrmontology/index.html (last accessed:
          <volume>28</volume>
          /06/2016)
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          13.
          <article-title>W3C, SPARQL Query Language for RDF</article-title>
          , https://www.w3.org/TR/rdf-sparql-query/ (last accessed:
          <volume>28</volume>
          /06/2016)
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          14.
          <string-name>
            <surname>Yu</surname>
            ,
            <given-names>E.</given-names>
          </string-name>
          ,
          <article-title>Modelling strategic relationships for process reengineering</article-title>
          ,
          <source>PhD thesis</source>
          , University of Toronto, Department of Computer Science, Canadá,
          <year>1995</year>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>