=Paper= {{Paper |id=Vol-1239/paper5 |storemode=property |title=Flexible and Scalable Modelling in the MONDO Project: Industrial Case Studies |pdfUrl=https://ceur-ws.org/Vol-1239/xm14_submission_5.pdf |volume=Vol-1239 |dblpUrl=https://dblp.org/rec/conf/models/BagnatoBSMTMC14 }} ==Flexible and Scalable Modelling in the MONDO Project: Industrial Case Studies== https://ceur-ws.org/Vol-1239/xm14_submission_5.pdf
        Flexible and Scalable Modelling in the MONDO
               Project: Industrial Case Studies

Alessandra Bagnato1, Pedro Malo2, Salvador Trujillo3, Xabier Mendialdua3, Xabier de
                   Carlos3, Etienne Brosse1, Andrey Sadovykh1.

                    1
                      SOFTEAM, 8 Parc Ariane 78284 Guyancourt, France
              {alessandra.bagnato, etienne.brosse, andrey.sadovykh}@softeam.fr,
            2
              UNINOVA, Pedro Maló, Campus da FCT/UNL, Caparica, Portugal
                                       pmm@uninova.pt,
            3
              IKERLAN Paseo J.M. Arizmendiarrieta 2, 20500 Mondragon, Spain
                      { STrujillo, XMendialdua, XDeCarlos}@ ikerlan.es



      Abstract. Today, system designs and their management are crucial parts of
      most systems development processes. To stay competitive engineers from
      several expertise domains use Model-Based engineering (MBE) to design the
      systems they intend to implement in order to specify, test, simulate, validate
      and iterate their design as soon as possible. System designs are living and
      evolving artefacts this imply to be able to manage them in an efficient and agile
      way. The MONDO FP7 EU project aims to comprehensively tackle the
      challenge of scalability in system design and management by developing the
      theoretical foundations and an open-source implementation of a platform and
      will offer to Model-Driven Engineering (MDE) users advanced flexibility in
      their different modeling approaches. This paper describes three different
      industrial demonstrators and three different modelling approaches that will be
      utilised to evaluate the capabilities of the MONDO technologies. For each
      demonstrator the interests of the industrial user partners are described along
      with their current and desired improvements in technologies to support MBE in
      a much more flexible way. Specific evaluation scenarios are specified for each
      of the targeted industrial domains as well.
      Keywords: scalable modelling,           Model-Driven    Engineering,    software
      engineering, qualitative evaluation..



1 Introduction

    Model-Driven Engineering (MDE) has been shown to increase productivity and
reuse and it has significantly enhanced important aspects of software engineering
development such as consistency, maintainability and traceability [5]. MDE is
therefore increasingly applied to larger and more complex systems. However, the
current generation of modelling and model management technologies is being
stressed to their limits in terms of their capacity to accommodate, in an agile way,
collaborative development, efficient management and persistence of large models (
larger than a few hundreds of megabytes in size) . Thus, recent research has focused
on scalability and flexibility across the MDE technical space to enable MDE to
remain relevant and to continue delivering its widely recognized productivity, quality
and maintainability benefits. The MONDO [1] project proposes to look into the
scalability issues for MDE in order to give more flexibility in processes and to help
into the agile definition and management of large models. The purpose of this paper is
to provide a description of the challenges targeted by three of the industrial
demonstrators that will be utilised to evaluate the capabilities of the MONDO
technologies. The selected demonstrators are depicting typical MDE issues found in
industry and describe the the benefits to be achieved in the selected scenarios.
   The Use Cases that will be described herewith are the following:
   •      Use Case for Modelling Tool domain.
   •      Use Case for the Offshore Wind Power domain.
   •      Use Case for Open-BIM Construction domain.
   In the next sections we briefly outline the challenges tackled by the MONDO
project. We then describe three of the MONDO case studies and summarize the
general feedback received from the three industries on the expected benefits to be put
in place within the different contexts to achieve better flexibility during engineering
and storage of large models. Finally, the paper is concluded along with plans on our
future work.


2 The MONDO project

   Typically, achieving scalability involves being able to construct large models and
associated DSLs or meta-models in a systematic manner; enabling large teams of
modellers to construct and refine large models in a collaborative manner; advancing
the state of the art in model querying and transformations tools so that they can cope
with large models (of the order millions of model elements); and providing an
infrastructure for efficient storage, indexing and retrieval of such models [5]. In
particular, the maintenance and manipulation of large models unique scenarios
addressed by a novel class of model transformations (MT) able to extend the
capabilities of traditional MT approaches is under study within the MONDO project
[13] and a prototype tool supporting scalable concrete visual syntax enabling the rapid
construction of Domain Specific Languages (DSLs) with built-in capabilities to
navigate, explore and abstract large models is foreseen and under study by the project.
   The MONDO research roadmap towards achieving scalability in model driven
engineering is described in [4] and briefly summarized in Figure 1. The project builds
on MDE research issues aiming at dealing with industrial scale models that need to
be persisted in a way that allows for their seamless and efficient manipulation [6][7],
often by multiple stakeholders simultaneously and will tackle scalable queries and
transformations, scalable DSLs, scalable collaborative modelling [10][11][12] within
scalable model persistence [6]. All the project advances will be reported within the
main project web site at [1] for the whole project duration and all technologies
developed by research partners will be released as open-source software under EPL
[9]. As such, industrial partners within the project and outside it will be able develop
proprietary extensions on top of this infrastructure without having to open-source
them.




                  Fig. 1. Tackling the challenge of scalability in MDE
As part of the MONDO project, this paper looks closely into the needed efficient and
flexible engineering, storage, indexing and retrieval of large models within three
different industrial case studies selected to evaluate the project results.


2 The Modelling Tool domain case study

SOFTEAM aims at applying scalability in MDE technologies within the SOFTEAM
Modelio [2] modelling tool. Modelio is an open source modelling tool, providing
support for many kind of modelling e.g. UML2 modelling, Enterprise Architecture
modelling, Business Process modelling, and SOA modelling. The MONDO
technologies are expected to make possible to enhance Modelio capabilities in an
agile way and to allow it to manage very large models by gaining speed in the overall
design carried out. In particular the production chain that includes, the DSL
engineering, the DSL persistence, the model (conforms to a given DSL) engineering
and the model persistence, that is currently in place within Modelio and the Eclipse
Modeling Framework (EMF)[14] world is considered too much rigid and constrained
by MDE users e.g. modellers, architect and developers.
   The MONDO research and results will be key to meet the increasing need from
SOFTEAM customers to support a more agile production chain that considers larger
and larger models, and larger teams of developers.
   SOFTEAM will evaluate the MONDO improvements through an modelled
application called Voyages Discount. This modelled application uses TOGAF
modelling [3] which aims at improving business efficiency ensuring consistent
standards, methods, and communication among enterprise architecture professionals.
   The model has been chosen since it provides an industrial business process that
required multiple stockholders communications to be completed where the modelling
flexibility provided within MONDO will be helpful.
   Currently the Modelio Teamwork Manager feature endows Modelio with a
distributed collaborative modelling environment through a Subversion (SVN)
repository. The model fragments [8], composing the Modelio project, are managed
by Modelio Teamwork Manager and the enhancement of an improved collaboration
environment will be very helpful in increasing productivity.
   In Table 1 we present and summarize the expected targeted flexibility benefits and
we consider in particular the need to reduce the time to complete the production chain
above mentioned by means of structured EMF modularity and collaborations.

  Table 1. Overview of the scenarios within Modelling Tool use case of MONDO.
 Scenario        Purpose                                  Specific expected
                                                          MONDO/Extreme Modelling
                                                          benefits
 Scenario 1:     This scenario focusses on the            MONDO           technology      will
 MONDO           comparison of the query facilities and   improve the Modelio querying
 framework       performances provided by both            facilities to better meet end user’s
 querying        Modelio and MONDO frameworks. In         needs in terms of performance
 facility        the MBE approach, queries are often      (time       and     memory).      A
                 defined and performed to extract         methodology
                 specific and relevant information from   whereby the performance of
                 model. Modelio store offers a set of     model        queries     can      be
                 predefined scripts among thus the        systematically
                 “Simple Statistics Reporting” script     evaluated,         and      relevant
                 provides model statistics on objects     performance predictor metrics
                 present under selected element. This     can be identified is under study
                 latter will be used as reference to      within MONDO [15].             More
                 compare both technologies in terms of    advances in this direction are also
                 querying.                                under study within [10][11][12].

  Scenario 2:    The actual model usage across several MONDO         technology      will
 MONDO           domains, several teams and several    improve end users’ experience of
 framework       peoples implies to be able to         modelling gaining speed in the
 collaborating   collaborate    during     the  model  overall design in large team and
 modelling       specification. This scenario aims at  large model context. MONDO
                 integrating the MONDO technologies    will     provide     management
                 within the Modelio modelling tool for techniques for collaborative
                 supporting large and complex models   modelling adapted from version
                 and large collaborating teams.        control     systems      including
                                                       locking, transaction handling
                                                       with       commit,         conflict
                                                       management       and    resolution
                                                       [10][11][12].
 Scenario 3:     Specification   and    execution   of MONDO         technology      will
 MONDO            ModelToText transformations are the        overcome       the     lack     of
 framework        aim of this third evaluation scenario.     documentation by improving the
 support in       Capability     provided       by    both   scalability and performances of
 transforming     environment (MONDO and Modelio             Modelio             ModelToText
 model to text.   tool ) will be evaluated in term of        transformations in a large model
                  possibility, performance and easiness      context. First results in this
                  to use. Modelio document publisher         direction can be found at [13].
                  extension provides by default a set of
                  existing transformation including the
                  analysis and design one’s which will
                  be used as benchmark.
 Scenario 4:      The purpose of this scenario is to         MONDO        technology      will
 MONDO            compare        the       ModelToModel      improve the scalability and
 framework        transformation support by both             performances      of     Modelio
 support in       frameworks. Among all existing             ModelToModel transformations
 transforming     ModelToModel              transformation   in a large model context by
 model to         specified inside Modelio or its            reducing the amount of needed
 another          extension, the performance analysis        time and ressources . An EMF
 model.           will take EMF UML2 XMI                     Splitter with a structured
                  import/export facilities as reference.     Approach to EMF modularity is
                                                             under study within the project to
                                                             bring more agility in the overall
                                                             production chain and will be
                                                             evaluated.



3 The Offshore Wind Power domain case study

MONDO technology is designed to support collaborative domain specific modelling
for offshore wind turbines. Modelling tools will enable engineers to specify
concurrently control systems of wind turbines and to share different specifications
(model versions). This is expected to raise productivity during the development and
customization of software for wind turbine control systems.
   Wind turbines are complex systems composed by a set of physical subsystems.
Different subsystems must work in a coordinated manner to transform wind energy
into electrical energy. The purpose of a wind turbine control system is to supervise
and control all those subsystems for their correct operation.
   The Wind Turbine Control System Modelling Tool is a tool that the engineers use
for specifying behaviour of the system that will control the wind turbine. Software
code responsible for turbine control will be generated automatically from models.
Control system development entails collaboration between engineers of different
disciplines. Engineers of each discipline have different skills and they develop
specific-parts of the wind turbine subsystems. Consequently, model specification
implies the use of collaborative modelling tools. Moreover, since wind turbines’
control models are large and complex, modelling tools should be scalable and provide
agile mechanisms for model development (i.e. advanced queries, load-on-demand,
partial load of models, etc.).
   Wind Turbine Control System Modeling Tool has been developed based on
existing Open-source Eclipse modeling technology. Unfortunately, existing modeling
frameworks in which tools are based are not conceived to be used in an agile and
collaborative manner. This is the case of the design of a wind turbine in which several
engineers collaborate together step by step to define, integrate and validate models
incrementally that form subsystems and then complete systems.
In contrast to the work process described above, existing tools are conceived for a
single engineer to work on a complete specification, preventing collaboration beyond
the tool and the engineer. MONDO pursues to expand existing tools to support such
collaborative modeling of teams of engineers working together. MONDO
collaborative tools are expected to foster agility and collaboration in the modeling of
wind turbines.
   Results obtained on the MONDO Project will be the key to provide collaborative
modelling tools enabling to turn the wind turbine design process into a more agile and
flexible process. MONDO Project will enable to add new features to the modelling
tools such as concurrent model edition, partial load of models, advanced querying
capabilities, etc. Additionally, technology developed within the MONDO Project will
support modelling from mobile devices. It will allow performing modelling activities
also in environments where the conditions are not bests (in-situ maintenance of the
wind turbine).

Table 2. Overview of the scenarios within Offshore Wind Power use case of MONDO.

 Scenario         Purpose                                     Specific expected
                                                              MONDO/Extreme Modelling
                                                              benefits
 Scenario 1:      This scenario is focused on the design of   Technology provided by
 Wind turbine     wind turbines’ control systems. Several     MONDO will provide
 control system   system engineers participate at the same    mechanisms that allow working
 collaborative    time on the specification of wind turbine   concurrently on model
 modelling        control system. Generally, each system      elements. This will provide the
                  engineer focuses in one subsystem and       flexibility for different
                  specifies the control of the subsystem.     modeling engineers to work at
                  All those parts together specify the        the same time on different
                  behaviour of the control system that is     subsystems or even on the
                  responsible to control and supervise the    same subsystem. As a result,
                  wind turbine.                               this will ease teamwork when
                                                              modeling a complete system.
                                                              Apart from improving
                                                              communication among
                                                              engineers, it will favor an early
                                                              identification of potential
                                                              design flaws.
 Scenario 2:      This scenario is focused on the wind        MONDO technology will allow
 Partial   load   turbine commissioning process in which      system engineers to work only
 and load-on-     different physical subsystems (or sets of   with specific parts of the
 demand      of   subsystems)       are      commissioned     model, providing features that
 models related   separately.                                 allow partial load and
 to subsystems    This entails a scenario that from the       load/unload on demand of parts
                  view-point of system control, only a        of the model where different
                  fragment of the whole model must be         subsystems are specified.
                  taken into account. System engineer only    MONDO will provide
             needs the part of the model concerning      technology to enable a team of
             to the subsystem.                           engineers to work on parts of
             Therefore, system engineers involved on     models that can be validated
             the subsystem commissioning must be         partially. Enabling partial work
             able to work with a partial view of the     will make the process more
             whole model, having the ability to load     agile and flexible.
             and unload models fragments concerning
             to subsystems or parts of a subsystem.
 Scenario 3: This scenario is located on the             MONDO technology will
 Modelling   installation and maintenance activities     provide engineers solutions to
 from mobile performed within a wind farm. Often         perform installation and
 devices     during these activities, wind turbine       maintenance activities of the
             control     systems     require     small   wind turbines within a wind
             adjustments (i.e. modify parameters’        farm.
             values or activation/deactivation of non-   These solutions should support
             critical control algorithms). These         modelling from lightweight
             adjustments will be performed using         devices such as mobiles or
             handy devices. However, these changes       tablets. In this way, these
             imply also (i) re-generate code for the     solutions will facilitate
             control system and (ii) add the new         fieldwork where commonly
             model version to the repository.            conditions are not good.


Besides Offshore Wind Power domain, IKERLAN-IK4 also plans to use technology
developed within the MONDO Project on other domains such as transportation and
capital goods.


4 The Open-BIM Construction domain case study

A Building Information Model (BIM) is an instance of a populated data model of
buildings that contains multi-disciplinary data specific to a particular building, which
it describes unambiguously. BIM offers easier use of interoperable industry software
tools, fewer errors and omissions, and time and cost savings that can cumulatively
result in earlier building delivery. It can facilitate discussion, checking, analysis and
communication about a project much earlier and in much clearer and precise terms
than standard practice.
    The IFC (Industry Foundation Classes aka Information For Construction) is the
neutral and freely available specification (model) to describe, exchange and share
information typically used within the building and facility management industry
sector. As such, the IFC provides an Open-BIM as any single vendor or group of
vendors does not control it, is openly accessible and used free of charge, and it is a
standard de facto (in industry) and de jure (ISO 16739). BIM is a key enabler for
Model-Based Engineering in construction-related ICT industries. ICT solutions for
construction industries take advantage of MBE methods and practices to properly
manage and exploit BIM models. The key solution to take advantage of MBE in BIM
is the so-called Model Servers. Model Servers are a technological concept that was
coined by the AECO software industry that designates a specialised ICT solution
capable of providing BIM capabilities and services. A Model Server provides
supports for modelling, storing, sharing, inspect, visualise, and operate BIM models.
   Model Servers of today are generically using the Open-BIM IFC model. An Open-
BIM/IFC Model Server is thus a data repository/store with supporting services that
provide multi-user access, storage and management, and allow the use of the IFC data
model as the underlying representation structure (schema).
   A BIM-IFC data model of a not-so-complex building comprehends a huge number
of modelling elements (to the millions scale). A comprehensive building information
model enclosing all the building disciplines can rapidly go from few millions to many
dozens of million modelling elements. Moreover, BIM-IFC data models are shared
(serialized) using the text-based ISO10303 STEP Part#21 representations that rapidly
escalate file sizes to many Megabytes to Gigabytes.
The trouble is that today’s breed of Model Servers exhibits problems in presence of
big-to-huge BIM data models. Tools considerably degrade performance in presence of
large-size BIM models (i.e. with some few millions of modelling elements) or simply
“break” in presence of huge-size BIM models (in the scale of tens of millions of
modelling elements). This led to very inefficient solutions for BIM-based
collaboration like sharing partial models done by construction project designers and
engineers that then requires time consuming model aggregation by some person
(“model coordinator”) and make it difficult for model users (model
designers/engineers but also model clients) to get a comprehensive integral view of
the model (building or set of buildings in a landscape).
   The idea is for MONDO technologies to be able to take charge of addressing the
performance and scalability issues of BIM data models that are presently dealt
directly by its users (designers, engineers). The vision is that of a solution that enables
an efficient management and exploitation of BIM large-to-huge-scale data models by
both using best-of-breed MBE solutions and incorporating AECO domain knowledge
for the best possibly experience and performance.

Table 3. Overview of the scenarios within Open-BIM Construction case study.

 Scenario        Purpose                                        Specific expected
                                                                MONDO/Extreme
                                                                Modelling benefits
 Scenario 1:     The file-based collaboration scenario is one   Technology provided by
 File- (huge-)   where model designers work on separate         MONDO will allow
 based           models and share models (as huge files) with   designers & engineers to
 collaboration   a model coordinator (that aggregates models    work on a specific part of
                 altogether) and then with some model           the model, but with the
                 clients. Here the Heterogeneous Model          added flexibility of having
                 Server exists especially at the Model          all parts merged together
                 Coordinator that can “upload” models and       within a single model.
                 merge models together as well as doing         Technology is to allow
                 some validations and checks to provided        users to perform off-line
                 models. Data models are then exported in       work and then be able to
                 designated formats to be shared with model     readily reconvene for
                 clients.                                       review and development.
 Scenario 2:     The shared-model collaboration scenario is     MONDO technology will
 Shared-         one where all users (model designers, model,   allow system engineers to
 (huge-) model model coordinator, model clients) interact         work only with specific
 collaboration using a share-model hosted in a Model              parts of the model, with the
               Server. Users are provided with data models        added flexibility of
               views of the huge data models in the Model         providing features that
               Server and can check-in/check-off model            allow partial load and
               parts for off-line manipulation.                   load/unload on demand of
                                                                  parts of the model where
                                                                  different subsystems are
                                                                  specified.
 Scenario 3:      Quantity take-off’s (QTO) is a key process      On huge BIM data models
 Quantity         in construction. QTO are a detailed             performing QTO is a non-
 Take-Off         measurement of the materials needed to          trivial task due to the
 (QTO)       in   complete a construction project. These          complexity of the query
 huge      IFC    measurements are used to format a bid on        and need to traverse the
 models           the scope of construction. Estimators review    whole of the data model.
                  drawings and specifications to find these       The scenario tests then the
                  quantities, which is a very time consuming,     ability of MONDO to
                  and erroneous process. BIM provides a           report out of large-to-huge
                  direct way to extract the quantities of a       data models using complex
                  building. It is done using a complex query to   queries situations.[10] [11]
                  the BIM model.                                  [12]



5 Conclusion and future work

The case studies and evaluation scenarios selection presented herein was performed
during the first ten months of the MONDO project (with a total duration of 30
months). As a general conclusion from the use case and scenario descriptions and the
subsequent requirement gathering and prioritization phase form industry, it is believed
that adopting MONDO technologies will bring benefits to the current software
development processes used by all the involved industries, helping designers to work
with large models.
   In particular the MONDO technologies are expected to enable the Modelio tool to
provide scalability in modelling, being able to construct large models and to enable
large teams of modelers to construct and refine large models in a collaborative
manner. Moreover, MONDO technologies will provide a solution for collaborative
modelling within modelling tools to specify control systems for wind turbines. In this
way these modelling tools will support features that ease collaboration. Finally
MONDO technologies will be utilized within all the three case studies in the context
of large model transformations. More specifically being able to generate
documentation and to apply transformation on large models have been found as key
aspects of scalable Model-Based Engineering.
   The MONDO technologies evaluations within is planned for the end of second
year of MONDO Project (October 2015). These will be both a qualitative and
quantitative evaluations aimed at assessing the usefulness and ease of use when
actually performing scalable modelling on real case studies through supporting tools.
Acknowledgements

The research leading to these results has received funding from the European
Community Seventh Framework Programme (FP7/2007-2013) under grant agreement
no FP7-611125. We would also like to acknowledge all the members of the MONDO
Consortium for their valuable help and in particular Scott Hansen (The Open Group),
and Dimitris Kolovos (University of York) for their support in the case studies
scenarios and expected benefits definition.


References

1. MONDO Project Consortium: MONDO Project Homepage, http://www.mondo-project.org
2. Modelio Modelling Tool: Homepage, http://www.modeliosoft.com
3.    TOGAF®           Version      9.1      Enterprise      Edition            Web        Site:
http://www.opengroup.org/togaf/
4. Dimitrios S. Kolovos, Louis M. Rose, Nicholas Matragkas, Richard F. Paige, Esther Guerra,
Jesús Sánchez Cuadrado, Juan De Lara, István Ráth, Dániel Varró, Massimo Tisi, and Jordi
Cabot. 2013. A research roadmap towards achieving scalability in model driven engineering. In
Proceedings of the Workshop on Scalability in Model Driven Engineering (BigMDE '13)
5. Mohagheghi, P., Fernandez, M., Martell, J., Fritzsche, M., Gilani, W.: MDE Adoption in
Industry: Challenges and Success Criteria. In: Models in Software Engineering. Volume 5421
of Lecture Notes in Computer Science. Springer (2009) 54–59
6. Comparative analysis of data persistence technologies for large-scale models, K. Barmpis,
Dimitrios S. Kolovos, Proceeding XM '12 Proceedings of the 2012 Extreme Modeling
Workshop Pages 33-38 ACM New York, NY, USA ©2012
7. Hawk: towards a scalable model indexing architecture, K. Barmpis, D. Kolovos, BigMDE
'13 Proceedings of the Workshop on Scalability in Model Driven Engineering Article No. 6
ACM New York, NY, USA ©2013
8. OMG: World Wide Modeling: The Agility of the Web Applied to Model Repositories
SOFTEAM-Modelio:           http://www.omg.org/news/member-news/SOFTEAM-ModelioWhite-
Paper-WorldWideModeling.pdf
9. Eclipse Public License - v 1.0 - http://www.eclipse.org/org/documents/epl-v10.php
10. Ujhelyi, Z., Bergmann, G., Hegedüs, Á., Horváth, Á., Izsó, B., Ráth, I., Szatmári, Z., and
Varró, D., "EMF-IncQuery: An Integrated Development Environment for Live Model Queries",
Science of Computer Programming, 2014.
11. Debreceni, C., Horváth, Á., Hegedüs, Á., Ujhelyi, Z., Ráth, I., and Varró, D., "Query-driven
incremental synchronization of view models", Proceedings of the 2nd Workshop on View-
Based, Aspect-Oriented and Orthographic Software Modelling, York, ACM, pp. 31, 07/2014.
12. Szárnyas, G., Ráth, I., and Varró, D., "Scalable Query Evaluation in the Cloud", STAF
Doctoral Symposium, 07/2014.
13. Dávid, I., Ráth, I., and Varró, D., "Streaming Model Transformations By Complex Event
Processing", ACM/IEEE 17th International Conference on Model Driven Engineering
Languages and Systems, MODELS 2014, Valencia, Spain, Springer, 2014.
14. The Eclipse Project, “Eclipse Modeling Framework,” http://www.eclipse.org/emf/.
15. Izsó, B., Szatmári, Z., Bergmann, G., Horváth, Á., and Ráth, I., "Towards Precise Metrics
for Predicting Graph Query Performance", 2013 IEEE/ACM 28th International Conference on
Automated Software Engineering (ASE), Silicon Valley, CA, USA, IEEE, pp. 412--431,
11/2013.