=Paper= {{Paper |id=Vol-2983/iStar21_paper_8 |storemode=property |title=Beyond Conventional Model-Driven Development: From Strategy to Code |pdfUrl=https://ceur-ws.org/Vol-2983/iStar21_paper_8.pdf |volume=Vol-2983 |authors=Rene Noel,Marcela Ruiz,Ignacio Panach,Oscar Pastor |dblpUrl=https://dblp.org/rec/conf/istar/NoelRP021 }} ==Beyond Conventional Model-Driven Development: From Strategy to Code== https://ceur-ws.org/Vol-2983/iStar21_paper_8.pdf
Beyond Conventional Model-Driven Development:
From Strategy to Code
Rene Noel1,2 , Marcela Ruiz3 , Ignacio Panach4 and Oscar Pastor1
1
  PROS-VRAIN: Valencian Research Institute for Artificial Intelligence - Universitat Politècnica de València
2
  Escuela de Ingeniería Informática, Universidad de Valparaíso, Chile
3
  Zürich University of Applied Sciences, Winterthur, Switzerland
4
  Escola Tècnica Superior d’Enginyeria, Universitat de València, Spain


                                         Abstract
                                         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 effort 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.

                                         Keywords
                                         business strategy modelling, organisational modelling, model-driven development




1. Introduction
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) [1] is a software
production method that provides a systematic approach for modeling the IS and for transforming
the model into working code. INTEGRANOVA [2], 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.


Proceedings of the 14th International iStar Workshop, October 18-21, 2021, St. Johns (NL), Canada
Envelope-Open rnoel@pros.upv.es (R. Noel); ruiz@zhaw.ch (M. Ruiz); joigpana@uv.es (I. Panach); opastor@pros.upv.es
(O. Pastor)
Orcid 0000-0002-3652-4645 (R. Noel); 0000-0002-0592-1779 (M. Ruiz); 0000-0002-7043-6227 (I. Panach);
0000-0002-1320-8471 (O. Pastor)
                                       © 2021 Copyright for this paper by its authors. Use permitted under Creative Commons License Attribution 4.0 International (CC BY 4.0).
    CEUR
    Workshop
    Proceedings
                  http://ceur-ws.org
                  ISSN 1613-0073
                                       CEUR Workshop Proceedings (CEUR-WS.org)




                                                                                                                                                                                 49
   Even though the implementation of MDD allows to improve the software development process,
new technological challenges affect 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 [3]). However, big-upfront enterprise modelling efforts are aligned with long-term
business plans and, in an agile organisational context, suffer from similar drawbacks as heavy-
weight software models in agile software development. We believe that there is a different 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.
   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 affecting the organization is modelled with i*, following a well-defined modelling
procedure. The procedure is inspired by agile organization’s approach to business strategy [4],
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.
   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 sta-
ble 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 [5]. 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.


2. From Strategy to Code
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 [6, 7, 1],
whose ontological connection have been previously demonstrated [8, 9]. 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




                                                                                                     50
Figure 1: Modeling intentions and strategies for the S2C method.


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.

2.1. Stage I: Using i* for Business Strategy Modelling
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 affect 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 offer 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.




                                                                                                        51
Figure 2: Business strategy model using i*.


2.2. Stage II: Business Process Transformation and Modeling
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 [8]. 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 [7] (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.
   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.

2.3. Stage III and IV: Conceptual Model Programming and System
     Generation
Following the guidelines proposed in [9] it is possible to transform the business process models
into the conceptual schema of the information system. This semi-automated technique is based




                                                                                                    52
Figure 3: Business process model using Communication Analysis. (A) Communicative events diagram,
(B) Communicative event specification and Message structure specification


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) [1]. 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 different 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.


3. Discussion: Using i* for Strategy Modelling
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 organi-
zational units are affected 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 affect many




                                                                                                   53
Figure 4: (A) Extract of the conceptual schema of the information system with OO-Method, (B)
INTEGRANOVA transformation services for code generation.


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 different
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 [10] could mitigate this issue.
   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).


4. Conclusions and Future Work
The S2C method approach presents a new perspective on the strategic alignment of technology
through conceptual modelling. By integrating business strategy, business process, and informa-




                                                                                                    54
tion 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 [11] approach.


Acknowledgments
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.


References
 [1] O. Pastor, J. C. Molina, Model-driven architecture in practice: a software production
     environment based on conceptual modeling, Springer, 2007.
 [2] INTEGRANOVA, Integranova model execution system, 2021. URL: https://www.
     integranova.com/es/integranova-m-e-s/.
 [3] M. Lankhorst, Enterprise Architecture at Work: Modelling, Communication and Analysis,
     Springer, 2017.
 [4] J. Highsmith, L. Luu, D. Robinson, EDGE: Value-Driven Digital Transformation, Addison-
     Wesley Professional, 2019.
 [5] B. Hippchen, P. Giessler, R. Steinegger, M. Schneider, S. Abeck, Designing microservice-
     based applications by using a domain-driven design approach, International Journal on
     Advances in Software 10 (2017) 432–445.
 [6] S. Eric, P. Giorgini, N. Maiden, J. Mylopoulos, Social modeling for requirements engineering,
     Mit Press, 2011.
 [7] S. España, A. González, ó. Pastor, Communication analysis: a requirements engineering
     method for information systems, in: International Conference on Advanced Information
     Systems Engineering, Springer, 2009, pp. 530–545.
 [8] M. Ruiz, D. Costal, S. España, X. Franch, O. Pastor, Gobis: An integrated framework to
     analyse the goal and business process perspectives in information systems, Information
     Systems 53 (2015) 330–345.
 [9] S. España Cubillo, Methodological integration of communication analysis into a model-
     driven software development framework, Ph.D. thesis, Universitat Politècnica de València,
     Valencia (Spain), 2011.
[10] J. Horkoff, D. Barone, L. Jiang, E. Yu, D. Amyot, A. Borgida, J. Mylopoulos, Strategic
     business modeling: representation and reasoning, Software & Systems Modeling 13 (2014)
     1015–1041.
[11] B. Henderson-Sellers, J. Ralyté, P. J. Ågerfalk, M. Rossi, Situational method engineering,
     Springer, 2014.




                                                                                                         55