<!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>Configurable Formal Methods for Extreme Modeling</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Position Paper</string-name>
        </contrib>
      </contrib-group>
      <abstract>
        <p>Reliable model transformations are essential for agile modeling. We propose to employ a configurable-semantics approach to develop automatic model transformations which are correct by design and can be integrated smoothly into existing tools and work flows. Model management is an essential activity in a model-driven development process. This is especially true in an agile context where models are continuously refined, iterated and combined. It is a common misunderstanding that development by stepwise refinement, or use of component algebras, requires using a highly planned and waterfall-like development process. See for example the following quote: An important variant of the waterfall model is formal system development, where a mathematical model of a system specification is created. This model is then refined, using mathematical transformations that preserve its consistency, into executable code. Based on the assumption that your mathematical transformations are correct, you can therefore make a strong argument that a program generated in this way is consistent with its specification. [30, p.32] We will argue below that methods from model management and formal system development, when combined with and inspired by approaches originating in the area of formal interface and specification theories, can play an important role also in an agile context.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>-</title>
      <p>Within the context of model-driven engineering, automated model
transformations such as merging, differencing and slicing are of great importance. This
is especially true in the industrial context where models can easily get so large
that the engineers only see them through viewpoints, or slices; indeed, an explicit
system model may not even exist, so that the general model is only implicitly
given as a collection of viewpoints.</p>
      <p>
        When the system model is so complex that no single engineer has a
comprehensive view, it can be very challenging to ensure correctness of an applied model
transformation by inspection. (Even when the system model is less complex,
ensuring correctness by inspection may be a difficult and error-prone process and
require advanced tooling.) The use of model transformations which are
correctby-design, or at least checkable-by-design, hence becomes increasingly important.
This point of view has also been argued in [
        <xref ref-type="bibr" rid="ref1 ref24 ref27 ref6">1, 6, 24, 27</xref>
        ].
      </p>
      <p>
        A good example is given by one of the case studies in the MERgE ITEA2
project [
        <xref ref-type="bibr" rid="ref28">28</xref>
        ]. This consists of a large system model with multiple (more than
twenty) viewpoints, each detailing a different aspect of the model. The involved
engineers are only working with the model through these viewpoints, as the
whole model is too complex to be worked with directly. Now when a model
transformation is applied to the model (e.g. a new subsystem is added through
model merging), the engineers can inspect at their respective viewpoints whether,
locally, the model transformation has been applied correctly. But can we be sure
that this implies that the transformation is also globally correct? Can we design
a procedure which allows such kind of local-to-global reasoning?
      </p>
      <p>To put it succinctly, it is an important problem in model-driven engineering
to ensure that model transformations are semantically correct or that, at least,
their semantic correctness can be inferred by a combination of slicing and local
inspection.</p>
      <p>
        One basic model transformation is the one of differencing, i.e. assessing
differences between models. This is an important ingredient in version control and
essential in three-way merging, but can also be applied, more elementarily, to
inspect related models for their common points and differences. Semantically
correct differencing procedures, for class diagrams and activity diagrams
respectively, have been proposed in [
        <xref ref-type="bibr" rid="ref24 ref25 ref26">24–26</xref>
        ]. However, these procedures rely on a
complete, formal semantics of the modeling formalism in question, which for most
cases is unrealistic: in practice, engineers use modeling tools which do not have
a formal semantics, or where an existing formal semantics is too complex to be
practically useful.
      </p>
      <p>It is our point of view that any “bottom-up” approach to correct model
transformations which uses a complete formal semantics as a starting point, such as
the above-cited, is of doubtful use in practice. In practice, engineers develop
models according to an intuitive understanding of how things work, and not
according to a complete formal semantics (if indeed it exists at all).</p>
      <p>
        Apart from being correct-by-design or checkable-by-design, we have also
argued in [
        <xref ref-type="bibr" rid="ref18">18</xref>
        ] that it is important that model transformations return an object
of the same type as the inputs. Hence, the merge of two class diagrams, for
instance, should again be a class diagram, the difference of two feature diagrams
should again be a feature diagram, etc. This allows developers to visualize the
transformation and to manipulate it using the usual tools for working with
models; the transformation integrates smoothly into existing tools and work flows.
Figure 1 shows an example of such a work flow which necessitates that the
difference between two models is again a model of the same kind.
      </p>
      <p>
        [
        <xref ref-type="bibr" rid="ref24 ref25 ref26">24–26</xref>
        ] propose semantic difference operators for class diagrams and activity
diagrams, respectively, however, their approaches are enumerative in nature:
their output is a (potentially infinite) list of object models which witness the
difference between the input diagrams. The output language is thus different
M2
M3
diff
      </p>
      <p>merge
from the input language, which makes it impossible to integrate their tool into
a standard work flow without additional processing steps.</p>
      <p>
        Within the subject of interface and specification theories in formal
methods, semantic model transformations exist for many types of low-level
behavioral models [
        <xref ref-type="bibr" rid="ref11 ref12 ref13 ref14 ref20 ref22 ref23 ref3 ref4 ref5 ref7 ref8 ref9">3–5, 7–9, 11–14, 20, 22, 23</xref>
        ]. In recent work, we have developed a
generalization of these approaches in which the semantics of models is
configurable [
        <xref ref-type="bibr" rid="ref16 ref17 ref2">2, 16, 17</xref>
        ]: When models and specifications contain quantities such as
timing information or resource use, the precise behavior of model transformations
depends on the type of quantities and on the application. Hence, the precise
definitions and properties of model transformations depend on the quantitative
semantics, and our generalization offers a generic way of configuring the
transformations and properties according to the semantics.
      </p>
      <p>
        Similarly in spirit, Maoz et.al. have in [
        <xref ref-type="bibr" rid="ref10 ref27">10, 27</xref>
        ] introduced techniques for
semantically configurable analysis of some high-level models, viz. class diagrams
and scenario specifications. They use feature diagrams [
        <xref ref-type="bibr" rid="ref21 ref29">21,29</xref>
        ] for configurability,
so that the analysis depends on the selection of features.
      </p>
      <p>
        We have in [
        <xref ref-type="bibr" rid="ref15 ref18">15, 18</xref>
        ] introduced semantically correct model transformations
for feature diagrams and class diagrams, see Figures 2 and 3 for some examples.
These operators’ return types are the same as their input types, so that they
can be integrated smoothly into existing tools and work flows, but they rely on
a complete formal semantics. We believe that these approaches can be combined
with the configurability of [
        <xref ref-type="bibr" rid="ref10 ref27">10, 27</xref>
        ] to yield model transformations which are
automatic and correct-by-design, yet flexible enough to be practically useful.
Conclusion
We propose to employ a configurable-semantics approach, using feature
diagrams, to develop automatic model transformations which are correct by design
and can be integrated smoothly into existing tools and work flows. Such model
transformations are important for agile modeling methods.
manages 1..7
managedBy 0..1
Employee 1
0..2
      </p>
    </sec>
    <sec id="sec-2">
      <title>Task</title>
      <p>manages *
managedBy 0..2
Manager 1
1</p>
      <p>Car</p>
    </sec>
    <sec id="sec-3">
      <title>Manager</title>
      <p>manages 1..7
managedBy 0..1</p>
      <sec id="sec-3-1">
        <title>Employee 1</title>
        <p>0..2
Task</p>
      </sec>
      <sec id="sec-3-2">
        <title>Manager 1</title>
        <p>1</p>
        <p>Car</p>
        <p>As an example, consider the following scenario: An engineer wants to perform
a three-way merge of two models which have evolved from a common ancestor.
She will first use her development tools to attempt an entirely syntactic merge,
which will detect some conflicts which are inessential because they only amount
to syntactic differences while being semantically equivalent (given the
developers’ intuitive understanding of the semantics). These she can easily detect, and
she can adjust her merge tool to take them into account (hence applying a
partial semantics). However, due to semantic effects which propagate through the
models, also the reverse may happen: there may be semantic conflicts which go
undetected by the syntactic approach. These are more difficult to detect and
require that even a merge which is syntactically correct be carefully checked by
applying possibly several different semantics.</p>
        <p>applet
applet
applet
must-override destroy stop
must-override
init
must-override
init
paint start init
paint start destroy stop
paint start destroy stop
(d =) i) ^ (t =) i)
(:m =) i)
(:m =) i)</p>
      </sec>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <given-names>Kerstin</given-names>
            <surname>Altmanninger</surname>
          </string-name>
          .
          <article-title>Models in conflict - towards a semantically enhanced version control system for models</article-title>
          . In Holger Giese, editor,
          <source>MODELS Workshops</source>
          , volume
          <volume>5002</volume>
          <source>of LNCS</source>
          , pages
          <fpage>293</fpage>
          -
          <lpage>304</lpage>
          . Springer,
          <year>2007</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <surname>Sebastian</surname>
            <given-names>S.</given-names>
          </string-name>
          <string-name>
            <surname>Bauer</surname>
          </string-name>
          , Uli Fahrenberg, Axel Legay, and
          <string-name>
            <surname>Claus</surname>
            <given-names>R.</given-names>
          </string-name>
          <string-name>
            <surname>Thrane</surname>
          </string-name>
          .
          <article-title>General quantitative specification theories with modalities</article-title>
          .
          <source>In Edward A. Hirsch</source>
          , Juhani Karhumäki, Arto Lepistö, and Michail Prilutskii, editors,
          <source>CSR</source>
          , volume
          <volume>7353</volume>
          <source>of LNCS</source>
          , pages
          <fpage>18</fpage>
          -
          <lpage>30</lpage>
          . Springer,
          <year>2012</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <surname>Sebastian</surname>
            <given-names>S.</given-names>
          </string-name>
          <string-name>
            <surname>Bauer</surname>
            , Line Juhl, Kim G. Larsen, Axel Legay, and
            <given-names>Jiří</given-names>
          </string-name>
          <string-name>
            <surname>Srba</surname>
          </string-name>
          .
          <article-title>Extending modal transition systems with structured labels</article-title>
          .
          <source>Math. Struct. Comput. Sci.</source>
          ,
          <volume>22</volume>
          (
          <issue>4</issue>
          ):
          <fpage>581</fpage>
          -
          <lpage>617</lpage>
          ,
          <year>2012</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <surname>Sebastian</surname>
            <given-names>S.</given-names>
          </string-name>
          <string-name>
            <surname>Bauer</surname>
          </string-name>
          , Kim G. Larsen, Axel Legay, Ulrik Nyman, and
          <article-title>Andrzej Wą- sowski. A modal specification theory for components with data</article-title>
          .
          <source>Sci. Comput</source>
          . Program.,
          <volume>83</volume>
          :
          <fpage>106</fpage>
          -
          <lpage>128</lpage>
          ,
          <year>2014</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <given-names>Nikola</given-names>
            <surname>Beneš</surname>
          </string-name>
          , Jan Křetínský, Kim G. Larsen,
          <string-name>
            <surname>Mikael H. Møller</surname>
            , and
            <given-names>Jiří</given-names>
          </string-name>
          <string-name>
            <surname>Srba</surname>
          </string-name>
          .
          <article-title>Dual-priced modal transition systems with time durations</article-title>
          .
          <source>In Nikolaj Bjørner and Andrei Voronkov</source>
          , editors,
          <source>LPAR</source>
          , volume
          <volume>7180</volume>
          <source>of LNCS</source>
          , pages
          <fpage>122</fpage>
          -
          <lpage>137</lpage>
          . Springer,
          <year>2012</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <given-names>Greg</given-names>
            <surname>Brunet</surname>
          </string-name>
          , Marsha Chechik, Steve Easterbrook, Shiva Nejati, Nan Niu, and
          <string-name>
            <given-names>Mehrdad</given-names>
            <surname>Sabetzadeh</surname>
          </string-name>
          .
          <article-title>A manifesto for model merging</article-title>
          .
          <source>In GAMMA</source>
          , pages
          <fpage>5</fpage>
          -
          <lpage>12</lpage>
          . ACM,
          <year>2006</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <given-names>Benoît</given-names>
            <surname>Caillaud</surname>
          </string-name>
          , Benoît Delahaye, Kim G. Larsen, Axel Legay, Mikkel L.
          <string-name>
            <surname>Pedersen</surname>
            , and
            <given-names>Andrzej</given-names>
          </string-name>
          <string-name>
            <surname>Wąsowski</surname>
          </string-name>
          .
          <article-title>Constraint Markov chains</article-title>
          .
          <source>Theor. Comput. Sci.</source>
          ,
          <volume>412</volume>
          (
          <issue>34</issue>
          ):
          <fpage>4373</fpage>
          -
          <lpage>4404</lpage>
          ,
          <year>2011</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8.
          <string-name>
            <given-names>Arindam</given-names>
            <surname>Chakrabarti</surname>
          </string-name>
          , Luca de Alfaro, Thomas A.
          <string-name>
            <surname>Henzinger</surname>
          </string-name>
          , and
          <string-name>
            <surname>Freddy</surname>
            <given-names>Y. C.</given-names>
          </string-name>
          <string-name>
            <surname>Mang</surname>
          </string-name>
          .
          <article-title>Synchronous and bidirectional component interfaces</article-title>
          . In Ed Brinksma and Kim Guldstrand Larsen, editors,
          <source>CAV</source>
          , volume
          <volume>2404</volume>
          <source>of LNCS</source>
          , pages
          <fpage>414</fpage>
          -
          <lpage>427</lpage>
          . Springer,
          <year>2002</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9.
          <string-name>
            <given-names>Arindam</given-names>
            <surname>Chakrabarti</surname>
          </string-name>
          , Luca de Alfaro, Thomas A.
          <string-name>
            <surname>Henzinger</surname>
            , and
            <given-names>Mariëlle</given-names>
          </string-name>
          <string-name>
            <surname>Stoelinga</surname>
          </string-name>
          .
          <article-title>Resource interfaces</article-title>
          .
          <source>In Rajeev Alur and Insup Lee</source>
          , editors,
          <source>EMSOFT</source>
          , volume
          <volume>2855</volume>
          <source>of LNCS</source>
          , pages
          <fpage>117</fpage>
          -
          <lpage>133</lpage>
          . Springer,
          <year>2003</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          10.
          <string-name>
            <surname>Barak</surname>
            Cohen and
            <given-names>Shahar</given-names>
          </string-name>
          <string-name>
            <surname>Maoz</surname>
          </string-name>
          .
          <article-title>Semantically configurable analysis of scenariobased specifications</article-title>
          .
          <source>In Gnesi and Rensink [19]</source>
          , pages
          <fpage>185</fpage>
          -
          <lpage>199</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          11.
          <string-name>
            <surname>Alexandre</surname>
            <given-names>David</given-names>
          </string-name>
          , Kim G. Larsen, Axel Legay,
          <string-name>
            <surname>Mikael H. Møller</surname>
            , Ulrik Nyman, Anders P. Ravn, Arne Skou, and
            <given-names>Andrzej</given-names>
          </string-name>
          <string-name>
            <surname>Wąsowski</surname>
          </string-name>
          .
          <article-title>Compositional verification of real-time systems using Ecdar</article-title>
          .
          <source>J. Softw. Tools Techn. Transfer</source>
          ,
          <volume>14</volume>
          (
          <issue>6</issue>
          ):
          <fpage>703</fpage>
          -
          <lpage>720</lpage>
          ,
          <year>2012</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          12.
          <string-name>
            <surname>Alexandre</surname>
            <given-names>David</given-names>
          </string-name>
          , Kim G. Larsen, Axel Legay, Ulrik Nyman, and
          <article-title>Andrzej Wą- sowski. Timed I/O automata: a complete specification theory for real-time systems</article-title>
          .
          <source>In Karl Henrik Johansson and Wang Yi</source>
          , editors,
          <source>HSCC</source>
          , pages
          <fpage>91</fpage>
          -
          <lpage>100</lpage>
          . ACM,
          <year>2010</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          13.
          <string-name>
            <surname>Benoît</surname>
            <given-names>Delahaye</given-names>
          </string-name>
          , Benoît Caillaud, and
          <string-name>
            <given-names>Axel</given-names>
            <surname>Legay</surname>
          </string-name>
          .
          <article-title>Probabilistic contracts: a compositional reasoning methodology for the design of systems with stochastic and/or non-deterministic aspects</article-title>
          .
          <source>Formal Meth. Syst. Design</source>
          ,
          <volume>38</volume>
          (
          <issue>1</issue>
          ):
          <fpage>1</fpage>
          -
          <lpage>32</lpage>
          ,
          <year>2011</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          14.
          <string-name>
            <surname>Benoît</surname>
            <given-names>Delahaye</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Joost-Pieter</surname>
            <given-names>Katoen</given-names>
          </string-name>
          , Kim G. Larsen, Axel Legay, Mikkel L. Pedersen, Falak Sher, and
          <string-name>
            <given-names>Andrzej</given-names>
            <surname>Wąsowski</surname>
          </string-name>
          .
          <article-title>Abstract probabilistic automata</article-title>
          .
          <source>In Ranjit Jhala and David A. Schmidt</source>
          , editors,
          <source>VMCAI</source>
          , volume
          <volume>6538</volume>
          <source>of LNCS</source>
          , pages
          <fpage>324</fpage>
          -
          <lpage>339</lpage>
          . Springer,
          <year>2011</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          15.
          <string-name>
            <surname>Uli</surname>
            <given-names>Fahrenberg</given-names>
          </string-name>
          , Mathieu Acher, Axel Legay, and
          <string-name>
            <given-names>Andrzej</given-names>
            <surname>Wąsowski</surname>
          </string-name>
          .
          <article-title>Sound merging and differencing for class diagrams</article-title>
          .
          <source>In Gnesi and Rensink [19]</source>
          , pages
          <fpage>63</fpage>
          -
          <lpage>78</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          16.
          <string-name>
            <given-names>Uli</given-names>
            <surname>Fahrenberg</surname>
          </string-name>
          and
          <string-name>
            <given-names>Axel</given-names>
            <surname>Legay</surname>
          </string-name>
          .
          <article-title>General quantitative specification theories with modal transition systems</article-title>
          .
          <source>Acta Inf.</source>
          ,
          <volume>51</volume>
          (
          <issue>5</issue>
          ):
          <fpage>261</fpage>
          -
          <lpage>295</lpage>
          ,
          <year>2014</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          17.
          <string-name>
            <given-names>Uli</given-names>
            <surname>Fahrenberg</surname>
          </string-name>
          and
          <string-name>
            <given-names>Axel</given-names>
            <surname>Legay</surname>
          </string-name>
          .
          <article-title>The quantitative linear-time-branching-time spectrum</article-title>
          .
          <source>Theor. Comput. Sci.</source>
          ,
          <volume>538</volume>
          :
          <fpage>54</fpage>
          -
          <lpage>69</lpage>
          ,
          <year>2014</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          18.
          <string-name>
            <surname>Uli</surname>
            <given-names>Fahrenberg</given-names>
          </string-name>
          , Axel Legay, and
          <string-name>
            <given-names>Andrzej</given-names>
            <surname>Wąsowski</surname>
          </string-name>
          .
          <article-title>Make a difference! (Semantically)</article-title>
          .
          <source>In Whittle et al. [31]</source>
          , pages
          <fpage>490</fpage>
          -
          <lpage>500</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref19">
        <mixed-citation>
          19.
          <string-name>
            <given-names>Stefania</given-names>
            <surname>Gnesi</surname>
          </string-name>
          and Arend Rensink, editors.
          <source>Fundamental Approaches to Software Engineering - 17th Int. Conf., FASE 2014. Proceedings</source>
          , volume
          <volume>8411</volume>
          <source>of LNCS</source>
          . Springer,
          <year>2014</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref20">
        <mixed-citation>
          20.
          <string-name>
            <surname>Line</surname>
            <given-names>Juhl</given-names>
          </string-name>
          , Kim G. Larsen, and
          <string-name>
            <given-names>Jiří</given-names>
            <surname>Srba</surname>
          </string-name>
          .
          <article-title>Modal transition systems with weight intervals</article-title>
          .
          <source>J. Log. Algebr. Program.</source>
          ,
          <volume>81</volume>
          (
          <issue>4</issue>
          ):
          <fpage>408</fpage>
          -
          <lpage>421</lpage>
          ,
          <year>2012</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref21">
        <mixed-citation>
          21.
          <string-name>
            <surname>Kyo</surname>
            <given-names>Kang</given-names>
          </string-name>
          , Sholom Cohen, James Hess,
          <string-name>
            <given-names>William</given-names>
            <surname>Nowak</surname>
          </string-name>
          , and
          <string-name>
            <given-names>Spencer</given-names>
            <surname>Peterson</surname>
          </string-name>
          .
          <article-title>Feature-oriented domain analysis (FODA) feasibility study</article-title>
          .
          <source>Technical Report CMU/SEI-90-TR-21</source>
          , CMU,
          <year>1990</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref22">
        <mixed-citation>
          22.
          <string-name>
            <surname>Kim</surname>
            <given-names>G.</given-names>
          </string-name>
          <string-name>
            <surname>Larsen</surname>
          </string-name>
          .
          <article-title>Modal specifications</article-title>
          . In Joseph Sifakis, editor,
          <source>Automatic Verification Methods for Finite State Systems</source>
          , volume
          <volume>407</volume>
          <source>of LNCS</source>
          , pages
          <fpage>232</fpage>
          -
          <lpage>246</lpage>
          . Springer,
          <year>1989</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref23">
        <mixed-citation>
          23.
          <string-name>
            <surname>Kim</surname>
            <given-names>G</given-names>
          </string-name>
          . Larsen, Axel Legay,
          <string-name>
            <surname>Louis-Marie Traonouez</surname>
            , and
            <given-names>Andrzej</given-names>
          </string-name>
          <string-name>
            <surname>Wąsowski</surname>
          </string-name>
          .
          <article-title>Robust synthesis for real-time systems</article-title>
          .
          <source>Theor. Comput. Sci.</source>
          ,
          <volume>515</volume>
          :
          <fpage>96</fpage>
          -
          <lpage>122</lpage>
          ,
          <year>2014</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref24">
        <mixed-citation>
          24.
          <string-name>
            <surname>Shahar</surname>
            <given-names>Maoz</given-names>
          </string-name>
          , Jan Oliver Ringert, and
          <string-name>
            <given-names>Bernhard</given-names>
            <surname>Rumpe</surname>
          </string-name>
          .
          <article-title>A manifesto for semantic model differencing</article-title>
          .
          <source>In Jürgen Dingel and Arnor Solberg</source>
          , editors,
          <source>MODELS Workshops</source>
          , volume
          <volume>6627</volume>
          <source>of LNCS</source>
          , pages
          <fpage>194</fpage>
          -
          <lpage>203</lpage>
          . Springer,
          <year>2010</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref25">
        <mixed-citation>
          25.
          <string-name>
            <surname>Shahar</surname>
            <given-names>Maoz</given-names>
          </string-name>
          , Jan Oliver Ringert, and Bernhard Rumpe.
          <article-title>ADDiff: Semantic differencing for activity diagrams</article-title>
          .
          <source>In Tibor Gyimóthy and Andreas Zeller</source>
          , editors,
          <source>SIGSOFT FSE</source>
          , pages
          <fpage>179</fpage>
          -
          <lpage>189</lpage>
          . ACM,
          <year>2011</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref26">
        <mixed-citation>
          26.
          <string-name>
            <surname>Shahar</surname>
            <given-names>Maoz</given-names>
          </string-name>
          , Jan Oliver Ringert, and Bernhard Rumpe.
          <article-title>CDDiff: Semantic differencing for class diagrams</article-title>
          . In Mira Mezini, editor,
          <source>ECOOP</source>
          , volume
          <volume>6813</volume>
          <source>of LNCS</source>
          , pages
          <fpage>230</fpage>
          -
          <lpage>254</lpage>
          . Springer,
          <year>2011</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref27">
        <mixed-citation>
          27.
          <string-name>
            <surname>Shahar</surname>
            <given-names>Maoz</given-names>
          </string-name>
          , Jan Oliver Ringert, and
          <string-name>
            <given-names>Bernhard</given-names>
            <surname>Rumpe</surname>
          </string-name>
          .
          <article-title>Semantically configurable consistency analysis for class and object diagrams</article-title>
          .
          <source>In Whittle et al. [31]</source>
          , pages
          <fpage>153</fpage>
          -
          <lpage>167</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref28">
        <mixed-citation>
          28.
          <article-title>MERgE ITEA2 project</article-title>
          . http://merge-itea-project.
          <source>irisa.fr/.</source>
        </mixed-citation>
      </ref>
      <ref id="ref29">
        <mixed-citation>
          29.
          <string-name>
            <surname>Pierre-Yves</surname>
            <given-names>Schobbens</given-names>
          </string-name>
          , Patrick Heymans, and
          <string-name>
            <surname>Jean-Christophe Trigaux</surname>
          </string-name>
          .
          <article-title>Feature diagrams: A survey and a formal semantics</article-title>
          .
          <source>In RE</source>
          , pages
          <fpage>136</fpage>
          -
          <lpage>145</lpage>
          . IEEE Computer Society,
          <year>2006</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref30">
        <mixed-citation>
          30.
          <string-name>
            <given-names>Ian</given-names>
            <surname>Sommerville</surname>
          </string-name>
          . Software Engineering. International computer science series.
          <source>Addison-Wesley, 9th edition</source>
          ,
          <year>2010</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref31">
        <mixed-citation>
          31.
          <string-name>
            <surname>Jon</surname>
            <given-names>Whittle</given-names>
          </string-name>
          , Tony Clark, and Thomas Kühne, editors.
          <source>Model Driven Engineering Languages and Systems, 14th Int. Conf., MODELS 2011. Proceedings</source>
          , volume
          <volume>6981</volume>
          <source>of LNCS</source>
          . Springer,
          <year>2011</year>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>