<!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>Emergent Model-Driven Engineering Ecosystems by means of Patterns</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Antonio Cicchetti</string-name>
          <email>antonio.cicchetti@mdh.se</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Malardalen University</institution>
          ,
          <addr-line>IDT, Vasteras</addr-line>
          ,
          <country country="SE">Sweden</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>In Model-Driven Engineering (MDE) design of modelling languages and model transformations is still an expert's task. Domain experts, i.e. the stakeholders of languages and transformations, would like to independently de ne and use their own MDE ecosystem, but can only support those activities. In this position paper we discuss this problem from a more general perspective, arguing for the need of emergent MDE, that is modelling languages and transformations shall be inferred from the usage it is done of modelling concepts. Moreover, the paper outlines a possible research agenda with corresponding challenges towards the goal of emergent MDE ecosystems.</p>
      </abstract>
      <kwd-group>
        <kwd>bottom-up (meta-)modelling</kwd>
        <kwd>modelling languages</kwd>
        <kwd>model transformation</kwd>
        <kwd>emergent languages</kwd>
        <kwd>emergent transformations</kwd>
        <kwd>modelling patterns</kwd>
        <kwd>MDE ecosystems</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>-</title>
      <p>
        metamodels and model transformations are created correspondingly. In other
words, the creation of an MDE framework is conceived as a bootstrap activity,
preliminary of any application design [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ]. This kind of approach leaves MDE
mechanisms vulnerable to evolutionary pressures: in fact, very often
metamodels and model transformations become monolithic, meaning that re nements
and extensions are di cult to manage especially when involving some form of
semantic reconsideration [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ]. Such a weakness is exacerbated in industrial
contexts: to create a MDE framework experts have to rely on their own personal
interpretation of modelling requirements, which in turn are gathered from a
selected (group of) domain-expert(s) that might not be representative of the
general case, or might not be skilled enough to foresee needs for re nements and
extensions [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ]. As a consequence, frameworks are perceived as scarcely exible,
usable, and integrable with the existing development processes [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ].
      </p>
      <p>In this paper, we argue that the support for MDE should be reconsidered to
enable also emergent approaches. More precisely, languages and transformations
should incrementally inferred as the result of modelling needs and uses rather
than being xed a-priori. Therefore, an ecosystem grows and is re ned in order
to satisfy the modelling needs conveyed by users' usage. Emergent ecosystems
would be naturally agile and exible, since they would include all and only the
needed features, as captured and encoded through usage patterns. Admittedly,
this paradigm shift does not come for free: in the remainder of this work, rst a
discussion on the concepts of syntax, semantics, and ontology is proposed, and
then a research agenda together with expected challenges and possible solution
is illustrated.
2</p>
    </sec>
    <sec id="sec-2">
      <title>Levering ontology information in MDE</title>
      <p>
        In general, modelling activities have to deal with the interplay of syntax,
semantics, and ontology. The boundaries between the three are quite blurry. The
abstract syntax of a language, i.e. its metamodel, is supposed to be { indeed
{ only syntax. However, well-formedness constraints do include domain-speci c
information (e.g., types or multiplicities). With respect to semantics, it is usually
distinguished in structural and behavioural [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ]: the former describes a language
in terms of its model instances, while the latter de nes how the state of a model
evolves over time. In both case, semantics relies on mappings between
syntactical structures [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ]. The concrete syntax of a language is a special case: it was
intended to be syntactic sugar, analogously to programming languages, to ease
the task of modellers and hence avoid them to deal with verbose, di cult to
read, metamodelling structures. Moreover, diagrammatic representations, i.e. a
combination of textual and graphical objects, are usually very e ective in
supporting communication and information exchange [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ]. However, abstractions in
general have to deal with ontology. More precisely, the rendering of syntactic
structures is naturally prone to multiple interpretations.
      </p>
      <p>
        In software engineering ontological information is typically seen as a uniquely
de ned representation of a certain domain for reasoning purposes. On the
contrary, other elds of science as philosophy consider ontology as agent-based, that
is strictly related to the observer [12]. Going into more details, depending on the
amount of knowledge about a certain domain, di erent agents, or modelling
stakeholders in our case, would interpret the same information in di erent ways.
As an example, a sub-atomic physician would have a quite di erent perception
of a rainbow if compared to someone who is completely agnostic about physics.
This is also the cause of the intrinsic ambiguity of abstractions, because some
details relevant for the former observer would be totally irrelevant for the latter,
respectively [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ].
      </p>
      <p>By looking to the current MDE techniques, what is missing is a solid
support of ontological concerns and the customization demands they introduce.
Languages and transformations speci cation facilities should be aware of
agentbased ontology and allow adaptability to the di erent degrees of knowledge a
stakeholder might have. Therefore, ontology represents the main factor to be
taken into account for customization purposes. This concept is instantiated quite
naturally in the form of views, i.e. given a certain language di erent experts
might need di erent information depending on their perspective. Moreover,
consistency issues should be addressed as limited to the information available to
each particular view.</p>
      <p>An appropriate support for emergent MDE ecosystems should be able to
infer languages and transformations as derivable from users' usage patterns, and
hence relieve stakeholders from customization e orts. The ecosystem should be
de ned in a user-speci c ontological layer, over the base syntax and semantics
speci cations, and not as proper new languages and transformations [13].
3</p>
    </sec>
    <sec id="sec-3">
      <title>Towards emergent MDE: a research agenda</title>
      <p>
        As discussed so far, in this paper we propose to tackle exibility and usability
issues of MDE ecosystems by adopting an induction strategy [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ] and exploiting
ontological information for the customization. This solution poses several
challenges, which are discussed in the following together with available solutions and
open problems.
3.1
      </p>
      <p>The base knowledge: i) MDE repositories, ii) composition
operators, iii) common semantics.</p>
      <p>
        An emergent approach relies on the existence of base/concrete knowledge that
can be used to create further abstractions. One option to store such
knowledge is to rely on a repository of existing languages and transformations, and
consequently to create a lattice of relationships between domain-speci c
languages [14]. Graph databases are a suitable support to manage these mechanisms
since they rely on nodes (portions of languages) and edges (relationships between
languages); moreover, they naturally allow pattern-based reasoning about the
information they store. In this scenario, the major problems would be due to
the creation of operators for (sub-)languages composition, and in particular for
semantics, that is not guaranteed to be compositional [15, 16]. In this respect,
interesting solutions enable re-use of metamodels and transformations portions
through adaptation [
        <xref ref-type="bibr" rid="ref5">5, 17</xref>
        ]. Moreover, model matching engines and by-example
techniques can be adapted to support the navigation of the graph and the
collection/elicitation of candidate usage patterns. Whereas, the de nition and
adoption of a suitable semantics is a highly debated and controversial problem in
MDE, and therefore represents an open issue for emergent mechanisms.
3.2
      </p>
      <p>The ontological layer: iv) ontology-based matching of modeling
patterns, v) multilevel transformations, vi) base knowledge
evolution and ontology layer co-evolution.</p>
      <p>
        The ontological layer is meant to support user-tailored customizations, and is
incrementally extended and re ned depending on the patterns traversed by a
certain user. In particular, users can list a personal set of concepts and
relationships that have to be matched in the repository. Once the set is considered
satisfactory, a user has the option of renaming elements and relationships
between them, and to de ne a custom concrete syntax. As previously discussed,
these aspects pertain to the user ontology, i.e. the way in which a certain
observer perceives the reality, and therefore do not change the base knowledge.
Technically, these layers can be implemented by means of multi-level modelling
solutions, which support multiple instantiation layers: existing works already
deal with creating ontological layers of metamodels, including the de nition of
concrete syntaxes [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ]. However, incremental re nements of ontologies as well as
transformation de nitions at the ontological level need further investigations.
      </p>
      <p>
        Another major concern is represented by possible changes in the base
knowledge and their propagation to existing ontological layers [12]. In fact, there shall
be a way to assess if changes are breaking a certain ontological layer, both in
terms of model entities and transformations. Moreover, it should be possible to
understand if the chosen concrete syntax might be a ected by the changes. This
issue shares a lot of open research problems with metamodel evolution and the
co-evolution of related artefacts [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ].
4
      </p>
    </sec>
    <sec id="sec-4">
      <title>Conclusions</title>
      <p>
        This position paper discusses the problems related to MDE ecosystems usability
and exibility and proposes a research direction aiming at realizing emergent
customization mechanisms. We advocate the de nition of a clearer distinction
between syntax, semantics, and ontological aspects of modelling and illustrate a
research agenda towards emergent MDE. It is interesting to notice that most of
the intricacies discussed in the research agenda raise also in the development of
cyber-physical systems (CPSs): as a matter of fact, their modelling demands the
integration of multi-paradigm modelling techniques, di erent levels of
abstractions, and disparate semantics. Available solutions tend to create tool chains
in which a shared semantics, typically a model of computation, is exploited as
a common denominator devoted to consistency management and synthesis of
the resulting integration. The repository mechanism mentioned in this work can
be conceived as a generalization of modelling solutions adopted for CPSs, and
the adoption of models of computation as shared semantics is an interesting
investigation direction [
        <xref ref-type="bibr" rid="ref6">6, 18</xref>
        ].
      </p>
    </sec>
    <sec id="sec-5">
      <title>Acknowledgements</title>
      <p>The author would like to thank Federico Ciccozzi and Alfonso Pierantonio for
the interesting discussions on the topics covered in this work.
12. Ermolayev, V., Davidovsky, M.: Agent-based ontology alignment: Basics,
applications, theoretical foundations, and demonstration. In: Proceedings of the 2Nd
International Conference on Web Intelligence, Mining and Semantics. WIMS '12,
New York, NY, USA, ACM (2012) 3:1{3:12
13. Izquierdo, J.L.C., Cabot, J., Lopez-Fernandez, J.J., Cuadrado, J.S., Guerra, E.,
Lara, J.: Engaging End-Users in the Collaborative Development of Domain-Speci c
Modelling Languages. In: Cooperative Design, Visualization, and Engineering: 10th
International Conference, CDVE 2013, Alcudia, Mallorca, Spain, September 22-25,
2013. Proceedings. Springer Berlin Heidelberg, Berlin, Heidelberg (2013) 101{110
14. Hebig, R., Seibel, A., Giese, H.: On the Uni cation of Megamodels. In Amaral, V.,
Vangheluwe, H., Hardebolle, C., Lengyel, L., Magaria, T., Padberg, J., Taentzer,
G., eds.: Proceedings of the 4th International Workshop on Multi-Paradigm
Modeling (MPM 2010). Volume 42 of Electronic Communications of the EASST. (2011)
15. Jezequel, J.M., Combemale, B., Barais, O., Monperrus, M., Fouquet, F.: Mashup of
metalanguages and its implementation in the kermeta language workbench. Softw.</p>
      <p>Syst. Model. 14(2) (May 2015) 905{920
16. Vallecillo, A.: On the combination of domain speci c modeling languages. In:
Proceedings of the 6th European Conference on Modelling Foundations and
Applications. ECMFA'10, Berlin, Heidelberg, Springer-Verlag (2010) 305{320
17. Basciani, F., Di Ruscio, D., Iovino, L., Pierantonio, A.: Automated Chaining of
Model Transformations with Incompatible Metamodels. In: Model-Driven
Engineering Languages and Systems: 17th International Conference, MODELS 2014,
Valencia, Spain, September 28 { October 3, 2014. Proceedings. Springer
International Publishing (2014) 602{618
18. Bryant, B.R., Gray, J., Mernik, M., Clarke, P.J., France, R.B., Karsai, G.:
Challenges and directions in formalizing the semantics of modeling languages. Comput.
Sci. Inf. Syst. 8(2) (2011) 225{253</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <surname>Schmidt</surname>
            ,
            <given-names>D.C.</given-names>
          </string-name>
          :
          <article-title>Guest editor's introduction: Model-driven engineering</article-title>
          .
          <source>Computer</source>
          <volume>39</volume>
          (
          <issue>2</issue>
          ) (
          <year>February 2006</year>
          )
          <volume>25</volume>
          {
          <fpage>31</fpage>
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <surname>Kolovos</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Rose</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Paige</surname>
            ,
            <given-names>R.:</given-names>
          </string-name>
          <article-title>The epsilon languages and tools framework (</article-title>
          <year>2013</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <surname>Lopez-Fernandez</surname>
            ,
            <given-names>J.J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Cuadrado</surname>
            ,
            <given-names>J.S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Guerra</surname>
            ,
            <given-names>E.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Lara</surname>
          </string-name>
          , J.:
          <article-title>Example-driven metamodel development</article-title>
          .
          <source>Softw. Syst. Model</source>
          .
          <volume>14</volume>
          (
          <issue>4</issue>
          ) (
          <year>October 2015</year>
          )
          <volume>1323</volume>
          {
          <fpage>1347</fpage>
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <given-names>Di</given-names>
            <surname>Ruscio</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            ,
            <surname>Iovino</surname>
          </string-name>
          ,
          <string-name>
            <given-names>L.</given-names>
            ,
            <surname>Pierantonio</surname>
          </string-name>
          ,
          <string-name>
            <surname>A.</surname>
          </string-name>
          :
          <article-title>Evolutionary togetherness: How to manage coupled evolution in metamodeling ecosystems</article-title>
          .
          <source>In: Proceedings of the 6th International Conference on Graph Transformations. ICGT'12</source>
          , Berlin, Heidelberg, Springer-Verlag (
          <year>2012</year>
          )
          <volume>20</volume>
          {
          <fpage>37</fpage>
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5. de Lara, J.,
          <string-name>
            <surname>Guerra</surname>
          </string-name>
          , E.:
          <article-title>Generic meta-modelling with concepts, templates and mixin layers</article-title>
          .
          <source>In: Proceedings of the 13th International Conference on Model Driven Engineering Languages and Systems: Part I. MODELS'10</source>
          , Berlin, Heidelberg, Springer-Verlag (
          <year>2010</year>
          )
          <volume>16</volume>
          {
          <fpage>30</fpage>
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <surname>Degueule</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Combemale</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Blouin</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Barais</surname>
            ,
            <given-names>O.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Jezequel</surname>
            ,
            <given-names>J.M.:</given-names>
          </string-name>
          <article-title>Melange: A meta-language for modular and reusable development of dsls</article-title>
          .
          <source>In: Proceedings of the 2015 ACM SIGPLAN International Conference on Software Language Engineering. SLE</source>
          <year>2015</year>
          , New York, NY, USA, ACM (
          <year>2015</year>
          )
          <volume>25</volume>
          {
          <fpage>36</fpage>
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <surname>Salay</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Chechik</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          :
          <article-title>Supporting agility in mde through modeling language relaxation</article-title>
          . In Juan de Lara, Davide Di Ruscio, A.P., ed.
          <source>: XM 2013 Extreme Modeling Workshop Proceedings at MoDELS, September</source>
          <volume>29</volume>
          ,
          <year>2013</year>
          Miami, Florida (USA).
          <article-title>(</article-title>
          <year>2013</year>
          )
          <volume>20</volume>
          {
          <fpage>27</fpage>
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8.
          <string-name>
            <surname>Whittle</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Hutchinson</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          , Rounce eld, M.,
          <string-name>
            <surname>Burden</surname>
            ,
            <given-names>H.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Heldal</surname>
          </string-name>
          , R.:
          <article-title>Industrial Adoption of Model-Driven Engineering: Are the Tools Really the Problem</article-title>
          ? In: Model-Driven
          <source>Engineering Languages and Systems: 16th International Conference, MODELS</source>
          <year>2013</year>
          ,
          <article-title>Miami</article-title>
          , FL, USA,
          <source>September 29 { October 4</source>
          ,
          <year>2013</year>
          . Proceedings. Springer Berlin Heidelberg, Berlin, Heidelberg (
          <year>2013</year>
          )
          <volume>1</volume>
          {
          <fpage>17</fpage>
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9.
          <string-name>
            <surname>Chen</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Sztipanovits</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Abdelwalhed</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Jackson</surname>
            ,
            <given-names>E.</given-names>
          </string-name>
          :
          <article-title>Semantic anchoring with model transformations</article-title>
          .
          <source>In: Proceedings of the First European Conference on Model Driven Architecture: Foundations and Applications. ECMDA-FA'05</source>
          , Berlin, Heidelberg, Springer-Verlag (
          <year>2005</year>
          )
          <volume>115</volume>
          {
          <fpage>129</fpage>
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          10.
          <string-name>
            <surname>Harel</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Rumpe</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          :
          <article-title>Meaningful modeling: What's the semantics of "semantics"</article-title>
          <source>? Computer</source>
          <volume>37</volume>
          (
          <issue>10</issue>
          ) (
          <year>October 2004</year>
          )
          <volume>64</volume>
          {
          <fpage>72</fpage>
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          11.
          <string-name>
            <surname>Johnson</surname>
          </string-name>
          , G.,
          <string-name>
            <surname>Gross</surname>
            ,
            <given-names>M.D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Hong</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Yi-Luen Do</surname>
          </string-name>
          , E.:
          <article-title>Computational support for sketching in design: A review</article-title>
          .
          <source>Found. Trends Hum.-Comput. Interact</source>
          .
          <volume>2</volume>
          (
          <issue>1</issue>
          ) (
          <year>January 2009</year>
          )
          <volume>1</volume>
          {
          <fpage>93</fpage>
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>