<!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>Beyond Conventional Model-Driven Development: From Strategy to Code</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Rene Noel</string-name>
          <email>rnoel@pros.upv.es</email>
          <xref ref-type="aff" rid="aff1">1</xref>
          <xref ref-type="aff" rid="aff2">2</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Marcela Ruiz</string-name>
          <email>ruiz@zhaw.ch</email>
          <xref ref-type="aff" rid="aff3">3</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Ignacio Panach</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Oscar Pastor</string-name>
          <email>opastor@pros.upv.es</email>
          <xref ref-type="aff" rid="aff2">2</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Escola Tècnica Superior d'Enginyeria, Universitat de València</institution>
          ,
          <country country="ES">Spain</country>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>Escuela de Ingeniería Informática, Universidad de Valparaíso</institution>
          ,
          <country country="CL">Chile</country>
        </aff>
        <aff id="aff2">
          <label>2</label>
          <institution>PROS-VRAIN: Valencian Research Institute for Artificial Intelligence - Universitat Politècnica de València</institution>
        </aff>
        <aff id="aff3">
          <label>3</label>
          <institution>Zürich University of Applied Sciences</institution>
          ,
          <addr-line>Winterthur</addr-line>
          ,
          <country country="CH">Switzerland</country>
        </aff>
      </contrib-group>
      <fpage>49</fpage>
      <lpage>55</lpage>
      <abstract>
        <p>Context. Business strategy and intentional factors that drive the information systems development and evolution have been addressed by several conceptual modelling initiatives, mostly from goal modelling and enterprise architecture domains. As agility scales to top executive levels, business strategy becomes adaptive, frequently and objectively assessed, while shapes the structure of the organisation around business capabilities. Problem. On the one hand, modelling several business layer views with EA frameworks to represent business strategy could be a challenging efort under a constantly changing environment. On the other hand, using more lightweight but flexible goal modelling frameworks could hinder the aim of getting well-bounded and repeatable business strategy models. Objective. In this paper, we explore the feasibility of connecting well-defined business strategy models using i* and, by exploiting existing modelling methods and transformation techniques, connect them with business process and information system models, to finally generate the working code of the software product. Contribution. We present an initial approach of a modelling procedure to capture business strategy using i* under an adaptive, agile approach, and show a practical integration with a software production method from requirements to code.</p>
      </abstract>
      <kwd-group>
        <kwd>business strategy modelling</kwd>
        <kwd>organisational modelling</kwd>
        <kwd>model-driven development</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>1. Introduction</title>
      <p>
        Model-Driven Development (MDD) aims for the automatic generation of working code from
the conceptual schema of the information system (IS). The OO-Method (OOM) [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ] is a software
production method that provides a systematic approach for modeling the IS and for transforming
the model into working code. INTEGRANOVA [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ], the tool support of OOM, has more than 25
years in the market and has been used in many industrial projects. While INTEGRANOVA’s
code generation component has been conveniently extended to support the latest technological
platforms, the model-programming language has not changed since its original version.
nEvelop-O
(O. Pastor)
CEUR
      </p>
      <p>
        Even though the implementation of MDD allows to improve the software development process,
new technological challenges afect technology-intensive organisations in times of constant
change and high uncertainty. These new technological challenges regard an agile strategic,
operative, and technological reaction of the organisations to changes in its environment. In
the last decades, conceptual modelling initiatives aiming to align strategy and technology have
emerged and have been materialized in Enterprise Architecture (EA) modelling frameworks (i.e.,
Archimate [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ]). However, big-upfront enterprise modelling eforts are aligned with long-term
business plans and, in an agile organisational context, sufer from similar drawbacks as
heavyweight software models in agile software development. We believe that there is a diferent and
agile way of using conceptual modelling for strategy and technology alignment, by connecting
lightweight modelling methods from the business strategy level to the IS level, exploiting MDD
features of model transformation and integration.
      </p>
      <p>
        To achieve strategic alignment in MDD in a lightweight manner, thus, without performing a
big upfront organizational modelling, we propose a case-based approach, where an external
influence afecting the organization is modelled with i*, following a well-defined modelling
procedure. The procedure is inspired by agile organization’s approach to business strategy [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ],
which conceives the organization as a continuously adapting actor. The proposal allow both
capturing business strategy information which is needed for designing the business processes
and systems to implement the strategy, and to get to repeatable and transformable models for
automatically integrating its information into the MDD method.
      </p>
      <p>
        Since MDD approaches are criticized for being too rigid to generate usable information
systems, we aim for a more stable ground: the digitalized business domain. In the last two
decades, novel software design and architecture approaches have focused on isolating a
stable software layer the domain model and the business services, setting them apart from the
constantly-changing front-end applications. These approaches have been widely adopted by
practitioners [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ]. Under this approach, we think that it is possible to show in almost real-time
the impact of strategic definitions over digitized business processes and information system
components of the domain model and services. In this article, we introduce the main concepts of
a holistic modelling method from strategy to code, with two main goals: 1) to capture business
strategy knowledge and the organisational structure that is required for its implementation, and
2) to support the traceability and, when possible, the automatic generation of the information
structure and services that support the organisational change, by the subsequent transformation
of strategic models to business process models and to information system models.
      </p>
    </sec>
    <sec id="sec-2">
      <title>2. From Strategy to Code</title>
      <p>
        The proposal, named S2C (from Strategy-to-Code), integrates business strategy modelling,
business process modelling, and information system modelling, into a single software production
method. It is based on existing modelling frameworks with sound theoretical foundations [
        <xref ref-type="bibr" rid="ref1 ref6 ref7">6, 7, 1</xref>
        ],
whose ontological connection have been previously demonstrated [
        <xref ref-type="bibr" rid="ref8 ref9">8, 9</xref>
        ]. Our contribution is
to intentionally connect these theoretical advances to support the organizational change from
requirements to code. The S2C method defines four modelling intentions, as depicted in Figure
1. The initial context to apply the method is the necessity of the organization to change, due to
the influence of external actors. Then, as described in the following subsections, each of the
modelling intentions is fulfilled through subsequent modelling and transformation activities.
      </p>
      <sec id="sec-2-1">
        <title>2.1. Stage I: Using i* for Business Strategy Modelling</title>
        <p>We apply i* to model business strategy and organisational structure, following four steps:
• Step 1 - Model external events: We propose to model external events that afect the
organisation as social dependencies. In the example shown in Figure 2, a specific customer
segment requires that the organisation a Real Estate Agency, provides an online renting
service, to avoid the physical signature of documents.
• Step 2 - Model strategy: we propose to use goals, tasks, and means to ends refinements to
specify 1) the high-level goal of the organisation under the new requirement, 2) high-level
strategic actions to achieve the goal, 3) more specific actions for implementing the strategy.
For this more specific level, the organization depends on the organizational units that
have the capabilities to perform these actions. The organizational units are modelled
as agents. In the example, the main goal is to increase the abroad customers market
share, the high-level strategy is to ofer the online renting service, and specific actions are
to develop a virtual showroom, and allow booking and payment for the online renting
process, assigned to the Rentals Teams, and to provide legal support for online contracts,
assigned to the Legal Department.
• Step 3 - Model roles and responsibility: we use i* roles to model specific responsibilities
for implementing the strategy, and assign specific and measurable goals for allowing to
follow up the performance of the strategy. In the example, the Agents are responsible for
attaining 10 bookings from abroad customers per week, while Head of Legal Department
must comply with having less than 1% of rents with legal problems.
• Step 4 - Model Organisational Reaction: we use goal dependencies to model the reaction
of the organisation toward its customers with a new service. For simplicity, we just model
”show available properties” and ”booking” services and connect them with the Tenants.</p>
      </sec>
      <sec id="sec-2-2">
        <title>2.2. Stage II: Business Process Transformation and Modeling</title>
        <p>
          We propose to automatically trace and transform the organizational concepts into business
process concepts, context, and documentation. To achieve this, we follow the approach of
the GoBIS transformation technique [
          <xref ref-type="bibr" rid="ref8">8</xref>
          ]. The main construct of this technique is that social
dependency between two actors can be mapped into concrete interactions between these actors
to interchange information for the achievement of the dependency. The relationship among
organizational and business process concepts has been semantically supported using a reference
ontology. To model the business process elements, and as the target of the GoBIS transformations,
we propose to use the Communication Analysis method [
          <xref ref-type="bibr" rid="ref7">7</xref>
          ] (CA). CA is a business process
modelling method, which allows expressing the flow of communicative interaction among
actors and the requirements for the information system that support each interaction.
        </p>
        <p>The business process is modelled through A) communicative event diagrams, which represents
the flow of communicative interactions among actors, B) specifications of communicative events,
where the requirements are documented in terms of structured text, and C) message structures
which allows specifying the content and structure of the messages among actors. Figure 3.(A)
presents a Communicative Event Diagram, Figure 3.(B) shows an extract of a communicative
event specification, as well as the message structure. As GoBIs proposes, the communicative
events BOOK01 and BOOK03 have been directly mapped from the dependencies between the
agent and the tenant in the business strategy model shown in Figure 2.</p>
      </sec>
      <sec id="sec-2-3">
        <title>2.3. Stage III and IV: Conceptual Model Programming and System</title>
      </sec>
      <sec id="sec-2-4">
        <title>Generation</title>
        <p>
          Following the guidelines proposed in [
          <xref ref-type="bibr" rid="ref9">9</xref>
          ] it is possible to transform the business process models
into the conceptual schema of the information system. This semi-automated technique is based
on the idea that the communication content can be mapped into the structural model of the
information system, while the flow of the communicative interactions among actors can be
mapped into the behavioural and functional model of the information system. The structural,
behavioural, and functional models are part of the OO-Method (OOM) [
          <xref ref-type="bibr" rid="ref1">1</xref>
          ]. Figure 4(A) presents
a partial example of the OOM’s structure model that could be derived from the business process
model detailed in Figure 3. OOM’s tool support, INTEGRANOVA, allows the generation of the
system code in diferent platforms, separating front-end applications from back-end services,
as shown in Figure 4(B). While S2C emphasizes the strategical, operational, and technological
alignment of the information structure and back-end services, regardless of the user interface
of the system, INTEGRANOVA supports the automatic generation of user interfaces. In the
context of the S2C, this automatic support is an added value to the rapid evaluation of the
impact of strategic definitions on new information services and applications.
        </p>
      </sec>
    </sec>
    <sec id="sec-3">
      <title>3. Discussion: Using i* for Strategy Modelling</title>
      <p>
        The proposed modelling procedure exploits i*’s approach to considering social actors and
strategic elements in the same model, in order to benefit both business strategy analysis and
mode-driven development. Regarding business strategy analysis, it is possible to assess whether
the organization could have an agile reaction to external events, by checking how many
organizational units are afected to deploy the strategy. Considering the working example, as shown in
Figure 2 Legal Department and Rentals Team have responsibilities, which implies coordination
between them. In a more complex real-world case, the organization could need to afect many
organizational units and/or trigger several influences among them, which might indicate a
lack of cohesion and/or a high coupling of the organizational capabilities, thus, providing
hints on the need for a organization structure refactoring. To do this, using i*’s relationship
participates-in to model organizational structure is of utter importance, however, designing
an understandable diagram including both the graphical representations of participates-in and
dependency relationships in the same layout could be challenging. A drawback of i* in strategy
modelling is that some environmental events that cannot be modelled as social dependencies,
such as competitors’ actions, for instance, while using the same constructs to model diferent
levels of abstraction could be confusing when sharing the model with stakeholders which are
unfamiliar with i*. Using an extended version of i*, including influence constructs such as those
proposed in [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ] could mitigate this issue.
      </p>
      <p>With respect to the advantages of i* and the proposal for model-driven software development,
we think that, besides the GoBIS transformations, the strategic elements in i* models could set
a context for the modular design of business processes, by considering the second and more
specific level of strategic actions modelled in i* can provide the context for a [ ? ], and the
specific, measurable goals which relate to the implementation of these actions can be mapped
into business process elements that report the performance of the process. For example, in
Figure 2 the action legal support for online contract sets the context for a new business process
module that details the interaction among actors needed to fulfil the legal requirements for each
new online contract, and the associated goal less than 1% of rents with legal problems can be
mapped into a communicative event in this business process model, where the Head of Legal
reports the accomplishment of the objective. The traceability can be documented by tracing the
objective to the goal in the communicative event specification (Figure 3.B).</p>
    </sec>
    <sec id="sec-4">
      <title>4. Conclusions and Future Work</title>
      <p>
        The S2C method approach presents a new perspective on the strategic alignment of technology
through conceptual modelling. By integrating business strategy, business process, and
information system models, we aim for the generation of strategically aligned software systems. i*’s
unique approach for representing social actors and strategic elements serves as the starting
point for a lightweight business strategy modelling approach, although challenges regarding the
lack of influence constructs and graphical representation of the organization structure must be
addressed. Future work will address these challenges as well as the articulation of the method
parts using a Situational Method Engineering [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ] approach.
      </p>
    </sec>
    <sec id="sec-5">
      <title>Acknowledgments</title>
      <p>This work has been developed with the support of the Spanish State Research Agency and the Generalitat
Valenciana under the projects TIN2016-80811-P and PROMETEO/2018/176, and co-financed with ERDF
and the National Agency for Research and Development (ANID)/ Scholarship Program/ Doctorado Becas
Chile/ 2020-72210494.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [1]
          <string-name>
            <given-names>O.</given-names>
            <surname>Pastor</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J. C.</given-names>
            <surname>Molina</surname>
          </string-name>
          ,
          <article-title>Model-driven architecture in practice: a software production environment based on conceptual modeling</article-title>
          , Springer,
          <year>2007</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [2]
          <string-name>
            <surname>INTEGRANOVA</surname>
          </string-name>
          ,
          <article-title>Integranova model execution system</article-title>
          ,
          <year>2021</year>
          . URL: https://www. integranova.com/es/integranova-m-e-s/.
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [3]
          <string-name>
            <given-names>M.</given-names>
            <surname>Lankhorst</surname>
          </string-name>
          , Enterprise Architecture at Work: Modelling,
          <source>Communication and Analysis</source>
          , Springer,
          <year>2017</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [4]
          <string-name>
            <given-names>J.</given-names>
            <surname>Highsmith</surname>
          </string-name>
          ,
          <string-name>
            <given-names>L.</given-names>
            <surname>Luu</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Robinson</surname>
          </string-name>
          , EDGE:
          <string-name>
            <surname>Value-Driven Digital</surname>
            <given-names>Transformation</given-names>
          </string-name>
          ,
          <source>AddisonWesley Professional</source>
          ,
          <year>2019</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          [5]
          <string-name>
            <given-names>B.</given-names>
            <surname>Hippchen</surname>
          </string-name>
          ,
          <string-name>
            <given-names>P.</given-names>
            <surname>Giessler</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            <surname>Steinegger</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Schneider</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Abeck</surname>
          </string-name>
          ,
          <article-title>Designing microservicebased applications by using a domain-driven design approach</article-title>
          ,
          <source>International Journal on Advances in Software 10</source>
          (
          <year>2017</year>
          )
          <fpage>432</fpage>
          -
          <lpage>445</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          [6]
          <string-name>
            <given-names>S.</given-names>
            <surname>Eric</surname>
          </string-name>
          ,
          <string-name>
            <given-names>P.</given-names>
            <surname>Giorgini</surname>
          </string-name>
          ,
          <string-name>
            <given-names>N.</given-names>
            <surname>Maiden</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Mylopoulos</surname>
          </string-name>
          ,
          <article-title>Social modeling for requirements engineering</article-title>
          , Mit Press,
          <year>2011</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          [7]
          <string-name>
            <given-names>S.</given-names>
            <surname>España</surname>
          </string-name>
          ,
          <string-name>
            <surname>A</surname>
          </string-name>
          . González, ó. Pastor,
          <article-title>Communication analysis: a requirements engineering method for information systems</article-title>
          ,
          <source>in: International Conference on Advanced Information Systems Engineering</source>
          , Springer,
          <year>2009</year>
          , pp.
          <fpage>530</fpage>
          -
          <lpage>545</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          [8]
          <string-name>
            <given-names>M.</given-names>
            <surname>Ruiz</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Costal</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>España</surname>
          </string-name>
          ,
          <string-name>
            <given-names>X.</given-names>
            <surname>Franch</surname>
          </string-name>
          ,
          <string-name>
            <given-names>O.</given-names>
            <surname>Pastor</surname>
          </string-name>
          ,
          <article-title>Gobis: An integrated framework to analyse the goal and business process perspectives in information systems</article-title>
          ,
          <source>Information Systems</source>
          <volume>53</volume>
          (
          <year>2015</year>
          )
          <fpage>330</fpage>
          -
          <lpage>345</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          [9]
          <string-name>
            <given-names>S.</given-names>
            <surname>España</surname>
          </string-name>
          <string-name>
            <surname>Cubillo</surname>
          </string-name>
          ,
          <article-title>Methodological integration of communication analysis into a modeldriven software development framework</article-title>
          ,
          <source>Ph.D. thesis</source>
          , Universitat Politècnica de València,
          <source>Valencia (Spain)</source>
          ,
          <year>2011</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          [10]
          <string-name>
            <given-names>J.</given-names>
            <surname>Horkof</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Barone</surname>
          </string-name>
          ,
          <string-name>
            <given-names>L.</given-names>
            <surname>Jiang</surname>
          </string-name>
          ,
          <string-name>
            <given-names>E.</given-names>
            <surname>Yu</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Amyot</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Borgida</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Mylopoulos</surname>
          </string-name>
          ,
          <article-title>Strategic business modeling: representation and reasoning</article-title>
          ,
          <source>Software &amp; Systems Modeling</source>
          <volume>13</volume>
          (
          <year>2014</year>
          )
          <fpage>1015</fpage>
          -
          <lpage>1041</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          [11]
          <string-name>
            <given-names>B.</given-names>
            <surname>Henderson-Sellers</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Ralyté</surname>
          </string-name>
          ,
          <string-name>
            <given-names>P. J.</given-names>
            <surname>Ågerfalk</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Rossi</surname>
          </string-name>
          , Situational method engineering, Springer,
          <year>2014</year>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>