<!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>Tool-Support to Foster Model-based Requirements Engineering for Cyber-Physical Systems</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Kevin Keller</string-name>
          <email>kevin.keller@paluno.uni-due.de</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Adrian Neubauer</string-name>
          <email>adrian.neubauer@paluno.uni-due.de</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Jennifer Brings</string-name>
          <email>jennifer.brings@paluno.uni-due.de</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Marian Daun</string-name>
          <email>marian.daun@paluno.uni-due.de</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>University of Duisburg-Essen, paluno-The Ruhr Institute for Software Technology</institution>
          ,
          <addr-line>Gerlingstraße 16, DE- 45127 Essen</addr-line>
          ,
          <country country="US">USA</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>Requirements modeling is known not only as a technique for documenting requirements but also for eliciting requirements from and discussing requirements with stakeholders. Modeling tools used in requirements engineering range from simple paper sketches to sophisticated model editors that allow for code generation from requirements models. While the former can be used by virtually anybody, tools that provide functionalities beyond creating simple drawings are based on underlying formalisms, which makes such tools not only unable to accommodate even the smallest deviations from the underlying modeling principles but also often unintuitive when it comes to the creation of simple diagrams. To bridge this divide, we suggest developing Visio extensions that extend Visio's user-friendly diagramming functionalities with custom-made shapes and code/model generation and verification functionalities as needed. This paper presents a solution for the SPES XT modeling framework that supports the model-based development of embedded and cyber-physical systems by providing shapes and model-generation and verification capabilities to aid developing systems according to the SPES XT modeling framework. The extension has proven itself valuable in university education and industry training, as it allows learners to easily create and verify diagrams that conform to the SPES approach. Modeling requirements is an important activity during the requirements engineering process, as it supports elicitation by facilitating communication between stakeholders and engineers and documentation of requirements [Po12]. There are different possibilities to create diagrams, e.g., with computer-aided tools or by hand. Hand-drawn models (including those created with drawing tools like PowerPoint, Visio, etc.) are fairly easy to create and offer a lot of freedom to express the desired concepts [Sh05] while dedicated modeling tools (e.g., Enterprise Architect) allow for automated verification and code generation and thus support further development activities [Sp16].</p>
      </abstract>
      <kwd-group>
        <kwd>Model-based engineering</kwd>
        <kwd>model editor</kwd>
        <kwd>model verification</kwd>
        <kwd>Microsoft Visio</kwd>
        <kwd>tool support</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>Introduction</title>
      <p>Consequently, both ways have their advantages but also disadvantages. Drawing tools
allow for customizing figures and creating domain specific modeling languages easily,
but offer no code generation and verification of the created diagrams. In addition, often
only a few basic shapes, such as rectangles and ellipses are available out of the box.
Dedicated model editors exist for a large number of standardized modeling languages
and often offer the possibilities to verify diagrams and generate code artifacts from the
created diagrams (e.g., [Be12]). However, apart from often being expensive (at least for
small and medium sized companies), these kinds of tools usually require intensive
training due to their large set of features and often unintuitive use [Am06]. Another
disadvantage of model editors is their limitation to pre-defined modeling languages.
While some allow the definition of other modeling languages, this usually requires the
manual creation of profiles and extensions, which can be quite laborious (e.g., [Sp16]).
In this paper, we propose to bridge the gap between both approaches by customizing
common off the shelf software. Namely, we propose to create a customized model editor
with integrated formal methods using Microsoft Visio. This allows not only to tailor tool
support for requirements elicitation but to integrate model-based requirements
engineering seamlessly into a continuous model-based engineering framework.
Specifically, we show how to use extension, stencils and hyperlinked shapes to adapt
Microsoft Visio in such a way that it can serve as model editor for requirements
engineering models which are in accordance with the SPES XT modeling framework
[Bö16]. Furthermore, we show that automated methods such as model verification
techniques, which were defined to ensure consistency among the different models of the
SPES XT modeling framework can be implemented and applied using the approach.
Hence, the resulting tool support cannot only serve as model editor that allows
documenting requirements in model-based fashion as foreseen by the SPES XT
modeling framework, but to also allow implementation of advanced automated
techniques, which have been defined for diagrams and models of the SPES XT modeling
framework (cf. [Po16]). Thereby, we show that this approach combines the easy-to-use
nature of diagramming tools and the powerful capabilities of dedicated model editors.
The paper is structured as follows: Section 2 introduces the SPES XT modeling
framework for which we developed a Visio-extension. In Section 3, the shapes and the
functions of the extension are presented. Subsequently, a brief overview of related
approaches for customizing model editors for specific model generations and model
verifications is given in Section 4. Finally, Section 5 concludes the paper and discusses
future work.
2</p>
    </sec>
    <sec id="sec-2">
      <title>The SPES XT Modeling Framework</title>
      <p>The SPES XT modeling framework [Bö16] is an artifact-centric approach to continuous
model-based engineering of embedded systems. The SPES XT modeling framework
defines four viewpoints and several granularity levels as can be seen from Fig. 1. The</p>
      <p>Tool-SuppoTrtotoolF-SoustpeproMrtodtoelF-boassteedr RMeqoudierle-mbeansetsdERnegqinueierreimngefnotrsCEynbgeirn-PeheyrisnicgalfoSryCstePmSs 493
granularity levels allow reducing complexity by supporting the decomposition of the
system into subsystems, while the viewpoints allow reducing complexity by allowing for
separation of concerns. The four viewpoints are:
•
•
•
•</p>
      <p>The requirements viewpoint addresses the model-based documentation of
requirements and the separation of the system from system context. To this end the
requirements viewpoint supports the creation of context, goal, scenario, and
requirements models.</p>
      <p>The functional viewpoint addresses the functional system specifications (derived
from the requirements viewpoint) and modeling of system functions.</p>
      <p>The logical viewpoint addresses the decomposition of the functional building blocks
into logical sub-systems with the main goal of delivering a logical architecture i.e.
functions are clustered into logical components and
The technical viewpoint addresses the mapping of logical components to the
technical realization and their hardware and software components.</p>
      <p>R1
RN
R1
RN
Requirements</p>
      <p>Viewpoint
solution-oriented</p>
      <p>system
requirements
3</p>
    </sec>
    <sec id="sec-3">
      <title>The SPES Visio Extension</title>
      <p>Microsoft Visio offers a model editor for standardized modeling languages. In addition,
by using stencils and associated shapes, new modeling languages can be created.
Furthermore, Visio provides an API to write specific functions for model generation,
verification, and import and export. In this section, we will show how to make use of
these functionalities to create a Visio extension which provides support for the SPES XT
modeling framework by ensuring conformance to the defined modeling languages and
which implements defined methodological building blocks of the SPES XT modeling
framework.</p>
      <p>Visio provides a selection of pre-installed stencils for various modeling languages such
as UML or BPMN and layout functions for creating diagrams. The Visio model editor
consists (as shown in Fig. 2) of the shape view, the opened drawing sheet, the toolbar
and existent drawing sheets for the document. In the shape view (left side), the installed
stencils can be viewed and selected to be used in the drawing sheet. It is also possible to
model on different sheets, which are located at the bottom of the editor window. The
toolbar (top) provides various functionalities such as changing color, size, or alignment
of model elements. To provide support for modeling languages not included in Visio,
new stencils can be defined.</p>
      <p>Tool-SuppoTrtotoolF-SoustpeproMrtodtoelF-boassteedr RMeqoudierle-mbeansetsdERnegqinueierreimngefnotrsCEynbgeirn-PeheyrisnicgalfoSryCstePmSs 515
Beyond the definition of stencils, Visio extensions can add new functionalities to the
application and provide them to the user via the toolbar. For model generation and
formalization, the necessary functionality has been added via the Visio API and SDK. It
offers the possibility to control the Visio application in a programmatic way and all
interaction possibilities that are available to the user as well.
3.1</p>
      <p>Model Generation
The SPES Visio extension5 enables users to create diagrams according to the SPES XT
modeling framework and helps them navigate between the various viewpoints and
granularity layers. As the system or a subsystem is further decomposed, a tree hierarchy
of the system is automatically defined and each element in the tree is linked to the sheet
of the related viewpoints. An example of an automatically generated decomposition
hierarchy is shown in Fig. 3. In a first step, the user specifies the name Adaptive Cruise
Control as the system under development. Next, the user can navigate to the logical
viewpoint and select specific model elements to decompose the system into sub systems.
In this example, the system Adaptive Cruise Control is divided into the sub-systems
System Management, Speed Adjustment and Data Processing.
Each node is linked to a corresponding template (shown in Fig. 4 for the adaptive cruise
control node). The template contains links to models from the various viewpoints
(however, tracing for inter-model changes is not yet supported). The root node and the
corresponding template is defined initially for each SPES modeling project. Subsystems
and their corresponding templates are automatically added when the user designates a
certain model element as a subsystem.</p>
      <p>Upon opening an empty file for a certain kind of model (e.g., a scenario model) the
corresponding stencils are displayed automatically.</p>
      <p>Additionally, several functions that automatically generate skeletons from information
already modelled are implemented. For example, for each MSC reference in the
5 The SPES Visio extension as well as its source code are available https://spes-tool.paluno.uni-due.de/
modelled high-level Message Sequence Chart an empty sheet with the name of the
referenced object will be generated and the shapes of the basic Message Sequence Chart
will be displayed.6</p>
      <p>Artifacts of Adaptive Cruise Control</p>
      <p>Adaptive Criuse Control
Requirements
Engineering
Viewpoint
For the SPES XT modeling framework several modeling languages are required to
define specific requirements models of the system under development (cf. [Da12]). For
the artifacts of the different viewpoints standardized model languages such as UML class
diagrams [OM15] or the ITU User Requirements Notation (including Goal-oriented
Requirements Language and Use-Case Maps) [IT12] are used. Most of the modeling
languages exist as stencils for Visio. For the modeling languages that do not exist as
stencils, Visio offers the possibility to create customized shapes and bundle them in a
stencil. This feature is required for several in the projects SPES2020 and SPES XT
6 For more information about the ITU Message Sequence Chart Language please refer to [IT11]</p>
      <p>Tool-SuppoTrtotoolF-SoustpeproMrtodtoelF-boassteedr RMeqoudierle-mbeansetsdERnegqinueierreimngefnotrsCEynbgeirn-PeheyrisnicgalfoSryCstePmSs 537
defined modeling languages. For example, for creating context of knowledge models
[Da14] a customized notation must be created in form of a template (called stencil). The
stencil for the context of knowledge and an exemplary context of knowledge model for
an adaptive cruise control system is shown in Fig. 5. On the left side, the application
offers the elements for modeling the context of knowledge. On the right side of the
window, it shows the model and its elements, which describe which knowledge sources
provide information for or constrain the development of the adaptive cruise control
system. For instance, the document Regional Traffic Codes constrains the possible
behavior of the adaptive cruise control to be developed.
The extension also offers support for model verification. In particular, it implements a
variety of model verification algorithms to check the models for syntactic correctness.
The checks are realized with validation rules similar to UML constraints. For example,
in the functional viewpoint a function network [Al16] can be checked for syntactic
correctness, and the associated interface automata [AH01] can be checked with regard to
completeness. Therefore, the incoming and outgoing messages are compared. Missed
model elements can be detected and automatically added to the model. Fig. 6 illustrates
an algorithm using path checking to ensure all elements are reachable in directional
models.</p>
      <p>INSTANCE1</p>
      <p>INSTANCE2</p>
      <p>INSTANCE3
ACTION</p>
      <p>Message1</p>
      <p>Message3</p>
      <p>Message2
MscReference</p>
      <p>Message4</p>
      <p>Message3
INSTANCE1
ACTION</p>
      <p>INSTANCE1
Message1
INSTANCE2
Message2
INSTANCE3
Message4
INSTANCE1
The example in Fig. 6 displays a Basic Message Sequence Chart (left) and the tree the
extension creates by traversing the model from element to element. The extension
checks reachability by traversing the tree and identifying the elements not contained in
it. In this example, the model on the left contains an unreachable element
(“MscReference”, bottom left) and therefore it does not exist in the traversing tree
(right). This missing element then notifies a verification violation.
4</p>
    </sec>
    <sec id="sec-4">
      <title>Related Work</title>
      <p>There are several model editors for formalizations and model generation of models and
textual descriptions. For instance, FormulaBuilder [Jö06] is a tool for graph-based
modeling and generation of formulae. Therefore, the formal specification of properties
describes the requirements of a system. This is different to the SPES Visio extension,
because of the focus. FormulaBuilder deals with formalization of models, in contrast to
the Visio extension focusses on the generation of models for requirements engineering.
A similar approach is followed by the tool from [EW02]. This tool supports UML
activity diagrams as workflow models and exports the model into a format that a model
checker can verify against requirements. Here, the focus is more on model verification
than on model generation. [KK15] developed DOREF an approach for the generation of
models and to check them against requirements in real-time. The focus here, is to
generate models from formal text and to perform verification. [Fo15] presented an
approach for the Papyrus UML editor. Therefore, a systematic generation of a diagram
definition is used to generate a modeling language tool that guarantees compliance to
standard notation. [Ca11] presented a plugin called OthelloPlay for the support of
formalization of textual requirements. In addition, it simplifies the use of formal
techniques for the verification of requirements. OthelloPlay can be used as a Microsoft
Word Add-In. The difference to the SPES Visio extension is the generation of a formal
model of textual requirements. SCStudio [Be12] is an extension for Visio which allows
modeling and verification for Message Sequence Charts. However, as it only supports</p>
      <p>Tool-SuppoTrtotoolF-SoustpeproMrtodtoelF-boassteedr RMeqoudierle-mbeansetsdERnegqinueierreimngefnotrsCEynbgeirn-PeheyrisnicgalfoSryCstePmSs 559
ITU MSCs it does not integrate with other modeling languages and methodological
approaches as needed by the SPES XT modeling framework.
5</p>
    </sec>
    <sec id="sec-5">
      <title>Conclusion and Future Work</title>
      <p>It is hard to provide appropriate tool-support for model-based requirements engineering,
which seamlessly integrates into further model-based development activities. As
requirements engineering is a conceptual activity employing creativity and lots of
stakeholder communication, a modeling tool needs to be lightweight to adequately
support the requirements engineers in their day to day work. This contradicts the
approach of most professional tool-suites for model-based engineering, which in part
rely on a formal specification of requirements and models, which the requirements
engineer typically is not able to provide at early stages. In contrast, easy to use standard
modeling editors commonly lack the potential for formalization and application of
automated methods needed in the engineering of complex cyber-physical systems. In this
paper, we proposed an approach making use of both concepts leading to a lightweight
model editor, which can easily be tailored to fit for automated approaches as well. We
presented an MS Visio extension for the modeling of cyber-physical system using the
SPES XT modeling framework. The extension shows, that Visio, in combination with its
API, can be used for modeling requirements through several viewpoints. Additionally,
the extension for Visio allows formal checks of the created models, such as function
networks or Message Sequence Charts. Furthermore, Visio offers the possibility to
create drawing elements for domain specific modeling languages. The defined shapes
can be used for drawing conceptual models and check them. Hence, models can be
generated on the needed level of formalization and automated techniques can be applied
accordingly. Future work will have to deal with a thorough evaluation, particularly, the
approach shall be evaluated with respect to other modeling applications and needs to
consider further extensions for verifications of other modeling languages.
Acknowledgment. This research has partly been funded by the German federal ministry
for education and research under grant no. 01IS15058C.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          <string-name>
            <surname>[AH01] de Alfaro</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          and
          <string-name>
            <surname>Henzinger</surname>
            ,
            <given-names>T.A.</given-names>
          </string-name>
          <year>2001</year>
          .
          <article-title>Interface Automata</article-title>
          .
          <source>Proceedings of the 8th European Software Engineering Conference Held Jointly with 9th ACM SIGSOFT International Symposium on Foundations of Software Engineering</source>
          (New York, NY, USA,
          <year>2001</year>
          ),
          <fpage>109</fpage>
          -
          <lpage>120</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [Al16]
          <string-name>
            <surname>Albers</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Beck</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Büker</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Daun</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>MacGregor</surname>
          </string-name>
          , J.,
          <string-name>
            <surname>Salmon</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Weber</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          and
          <string-name>
            <surname>Weyer</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          <year>2016</year>
          .
          <article-title>System Function Networks</article-title>
          .
          <source>Advanced Model-Based Engineering of Embedded Systems</source>
          .
          <volume>119</volume>
          -
          <fpage>144</fpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [Am06]
          <string-name>
            <surname>Amyot</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Farah</surname>
            ,
            <given-names>H.</given-names>
          </string-name>
          <article-title>and</article-title>
          <string-name>
            <surname>Roy</surname>
            ,
            <given-names>J.-F.</given-names>
          </string-name>
          <year>2006</year>
          .
          <article-title>Evaluation of development tools for domain-specific modeling languages</article-title>
          .
          <source>Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)</source>
          . 4320
          <string-name>
            <surname>LNCS</surname>
          </string-name>
          , (
          <year>2006</year>
          ),
          <fpage>183</fpage>
          -
          <lpage>197</lpage>
          . DOI:https://doi.org/10.1007/11951148_
          <fpage>12</fpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [Be12]
          <string-name>
            <surname>Bezdeka</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Bouda</surname>
            ,
            <given-names>O.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Korenciak</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Madzin</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          and
          <string-name>
            <surname>Reh'k</surname>
            ,
            <given-names>V.</given-names>
          </string-name>
          <year>2012</year>
          . Sequence Chart Studio.
          <year>2012</year>
          12th International Conference on Application of Concurrency to System
          <source>Design (Jun</source>
          .
          <year>2012</year>
          ),
          <fpage>148</fpage>
          -
          <lpage>153</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          [Bö16]
          <string-name>
            <surname>Böhm</surname>
            ,
            <given-names>W.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Daun</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Koutsoumpas</surname>
            ,
            <given-names>V.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Vogelsang</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          and
          <string-name>
            <surname>Weyer</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          <year>2016</year>
          .
          <article-title>SPES XT modeling framework</article-title>
          .
          <source>Advanced Model-Based Engineering of Embedded Systems: Extensions of the SPES 2020 Methodology</source>
          .
          <fpage>29</fpage>
          -
          <lpage>42</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          [Ca11]
          <string-name>
            <surname>Cavada</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Cimatti</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Micheli</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Roveri</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Susi</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          and
          <string-name>
            <surname>Tonetta</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          <year>2011</year>
          .
          <article-title>OthelloPlay - A plug-in based tool for requirement formalization and validation</article-title>
          . (
          <year>2011</year>
          ),
          <fpage>59</fpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          [Da12]
          <string-name>
            <surname>Daun</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Tenbergen</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          and
          <string-name>
            <surname>Weyer</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          <year>2012</year>
          . Requirements Viewpoint.
          <source>ModelBased Engineering of Embedded Systems</source>
          .
          <volume>51</volume>
          -
          <fpage>68</fpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          [Da14]
          <string-name>
            <surname>Daun</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Brings</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Tenbergen</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          and
          <string-name>
            <surname>Weyer</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          <year>2014</year>
          .
          <article-title>On the model-based documentation of knowledge sources in the engineering of embedded systems</article-title>
          . (
          <year>2014</year>
          ),
          <fpage>67</fpage>
          -
          <lpage>76</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          [EW02]
          <string-name>
            <surname>Eshuis</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          and
          <string-name>
            <surname>Wieringa</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          <year>2002</year>
          .
          <article-title>Verification support for workflow design with UML activity graphs</article-title>
          .
          <source>Proceedings-International Conference on Software Engineering</source>
          . (
          <year>2002</year>
          ),
          <fpage>166</fpage>
          -
          <lpage>176</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          [Fo15]
          <string-name>
            <surname>Fouche</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Noyrit</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Gerard</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          and
          <string-name>
            <surname>Elaasar</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          <year>2015</year>
          .
          <article-title>Systematic generation of standard compliant tool support of diagrammatic modeling languages</article-title>
          . (
          <year>2015</year>
          ),
          <fpage>348</fpage>
          -
          <lpage>357</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          [IT11]
          <string-name>
            <surname>ITU</surname>
          </string-name>
          <year>2011</year>
          . Recommendation Z.
          <fpage>120</fpage>
          -
          <string-name>
            <surname>Message Sequence Chart (MSC). ITU-T.</surname>
          </string-name>
          (
          <year>2011</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          [IT12]
          <string-name>
            <surname>ITU</surname>
          </string-name>
          <year>2012</year>
          . Recommendation Z.
          <fpage>151</fpage>
          -
          <string-name>
            <surname>User Requirements Notation (URN) Language Definition. ITU-T.</surname>
          </string-name>
          (
          <year>2012</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          [Jö06]
          <string-name>
            <surname>Jörges</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Margaria</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          and
          <string-name>
            <surname>Steffen</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          <year>2006</year>
          .
          <article-title>FormulaBuilder: A tool for graphbased modelling and generation of formulae</article-title>
          .
          <source>Proceedings - International Conference on Software Engineering</source>
          (
          <year>2006</year>
          ),
          <fpage>815</fpage>
          -
          <lpage>818</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          [KK15]
          <string-name>
            <surname>Kneer</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          and
          <string-name>
            <surname>Kamsties</surname>
            ,
            <given-names>E.</given-names>
          </string-name>
          <year>2015</year>
          .
          <article-title>Model-based generation of a requirements monitor</article-title>
          . (
          <year>2015</year>
          ),
          <fpage>156</fpage>
          -
          <lpage>170</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          [OM15]
          <string-name>
            <surname>OMG</surname>
          </string-name>
          <year>2015</year>
          .
          <article-title>Unified Modeling Language (OMG UML) Specification, version 2.5</article-title>
          .
          <source>Technical Report</source>
          . (
          <year>2015</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          [Po12]
          <string-name>
            <surname>Pohl</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Hönninger</surname>
            ,
            <given-names>H.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Achatz</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          and
          <string-name>
            <surname>Broy</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          <year>2012</year>
          .
          <article-title>Model-Based engineering of embedded systems: The spes 2020 methodology</article-title>
          .
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          [Po16]
          <string-name>
            <surname>Pohl</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Broy</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Daembkes</surname>
            ,
            <given-names>H.</given-names>
          </string-name>
          <article-title>and</article-title>
          <string-name>
            <surname>Hönninger</surname>
            ,
            <given-names>H.</given-names>
          </string-name>
          <year>2016</year>
          .
          <article-title>Advanced modelbased engineering of embedded systems: Extensions of the SPES 2020 methodology</article-title>
          .
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          [Sh05]
          <string-name>
            <surname>Shumba</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          <year>2005</year>
          .
          <article-title>Usability of Rational Rose and Visio in a software engineering course</article-title>
          .
          <source>SIGCSE Bulletin</source>
          .
          <volume>37</volume>
          ,
          <issue>2</issue>
          (
          <year>2005</year>
          ),
          <fpage>107</fpage>
          -
          <lpage>110</lpage>
          . DOI:https://doi.org/10.1145/1083431.1083475.
        </mixed-citation>
      </ref>
      <ref id="ref19">
        <mixed-citation>
          <source>[Sp16] Sparx Systems</source>
          <year>2016</year>
          . Introduction to Enterprise Architect. (
          <year>2016</year>
          ).
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>