<!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>CMSEBA 2014 Workshop Report</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Richard F. Paige</string-name>
          <email>richard.paige@york.ac.uk</email>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Marouane Kessentini</string-name>
          <email>marouane@umich.edu</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Philip Langer</string-name>
          <email>langer@big.tuwien.ac.at</email>
          <xref ref-type="aff" rid="aff2">2</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Manuel Wimmer</string-name>
          <email>wimmer@big.tuwien.ac.at</email>
          <xref ref-type="aff" rid="aff2">2</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>University of Michigan</institution>
          ,
          <country country="US">USA</country>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>University of York</institution>
          ,
          <country country="UK">UK</country>
        </aff>
        <aff id="aff2">
          <label>2</label>
          <institution>Vienna University of Technology</institution>
          ,
          <country country="AT">Austria</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>This report is a summary of the First International Workshop on Combining Modelling with Search- and Example-Based Approaches (CMSEBA 2014) held at the MoDELS 2014 conference. The workshop brought together researchers from model-driven engineering and search-based software engineering. The major aims of CMSEBA 2014 were to identify motivations, problems, and requirements for combining modeling with search- and example-based approaches as well as to present different proposals supporting different kinds of model engineering tasks and how models can help as a base technology in search-based software engineering.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>1 Introduction</title>
      <p>
        Models are an abstraction of a problem under scrutiny and have been crucial
components in engineering disciplines for millennia. They play a central role in all aspects of
software engineering. The fundamental premise behind approaches and methodologies
to software engineering that exploit modelling is that raising the level of abstraction
at which a system is developed enables the creation of the large-scale and complex
software systems being produced today [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ].
      </p>
      <p>
        Search-based software engineering (SBSE) [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ] is a software development practice
which focuses on couching software engineering problems as optimisation problems
and utilising metaheuristic techniques to discover near optimal solutions to those
problems. SBSE has been applied to a wide variety of engineering problems, including
requirements management, software testing, and capability management.
      </p>
      <p>
        Examples play a key role in the human learning process. There exist numerous
theories on learning styles in which examples are used. Thus the idea of using examples to
derive programs has a long tradition in computer science [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ]. Like many other domains
of software engineering, the modelling community is currently concerned with the use
of examples, such as traceability information and different kind of models, to search for
solutions that fall within a specified acceptance margin to solve specific problems.
      </p>
      <p>We believe that SBSE approaches and example-based approaches to software
engineering offer innovate ways in which to better discover, manage, and evaluate models in
software engineering. Furthermore, we believe that the example-based and SBSE
communities would benefit from state-of-the-art modelling practices in order to evaluate,
compare, and improve different example-based and search techniques. Thus, the goal
of the Combining Modelling with Search- and Example-Based Approaches (CMSEBA)
workshop is to discover opportunities for different ways SBSE and example-based
techniques can be combined with modelling, and aims to stimulate research and to grow the
community working in this area. CMSEBA 2014 was organized as a half-day workshop
and was co-located with the 17th International Conference on Model Driven
Engineering Languages and Systems (MoDELS 2014) in Valencia, Spain on September, 28th,
2014. This report documents the various presentations as well as the enthusiastic and
intense discussions.</p>
      <p>The remainder of this report presents the background of this workshop as well as
the outcome of the moderated presentation sessions. In Section 2, we recall the history
of the workshop as well as the workshop topics of interest. In Section 3, we summarize
the presentations, while in Section 4 we summarize the individual discussions of the
presentations as well as the overall discussions regarding the combination of modeling,
examples, and search-based techniques. Finally conclusions are presented in Section 5
with an outlook on future efforts to further establish and advance the modeling
community with respect to the application of examples in combination with search-based
techniques.
2</p>
    </sec>
    <sec id="sec-2">
      <title>Workshop History and Organisation</title>
      <p>The CMSEBA workshop is a synthesis and integration of two workshops that have
previously run successfully: the International Workshop on Combining Modelling and
Search-Based Software Engineering (CMSBSE’13; which was an ICSE’13 workshop
in San Francisco; for more information see http://www.cs.york.ac.uk/es/
cmsbse) and the International Workshop on Model-driven Engineering By Example
(MDEBE’13; which was a MoDELS’13 workshop in Miami; for more information
see http://mdebe2013.big.tuwien.ac.at). CMSBSE’13 focused
specifically on combining search and modelling while MDEBE’13 focused specifically on
combining example-based techniques and MDE. Merging both workshops resulted in
running a broader workshop that takes into account modelling (and not just MDE),
search techniques and example-based techniques explicitly. Having this broader scope
should lead to identification of greater synergies, while building on the successes of
previous workshops.</p>
      <p>The specific contribution of CMSEBA is to propose an open discussion space which
invites contributions to the following topics:
– Search or example-amenable representations of models
– Domain-specific search operators: Are the standard genetic operators sufficient?</p>
      <p>Do we need problem-specific operators?
– Models of techniques: Can modelling techniques be used to evaluate and compare
different example-based or metaheuristic techniques?
– Metaheuristic or example-based techniques specific to modelling: Due to the
complex nature of models, are current search or example-based techniques enough? Do
we need new techniques that are tailored to manage the complexity of models?
– Comparisons of standard metaheuristic techniques against bespoke modelling-specific
metaheuristic techniques
– Applications of search to modelling problems
– Integrations of search techniques that are enabled through the use of modelling
– Novel algorithms for search when applied to modelling formalisms
– Search techniques applied to metamodels
– Machine learning applied to modelling
– Benchmarking of example-based techniques applied in MDE
– Prediction models for modelling problems
– New MDE problems that have not been tackled by previous example-based
approaches
– Learning from model repositories
– Solving case studies by applying by-example approaches
– Search techniques applied to operations on models (e.g., model transformations):</p>
      <p>Examples include white or black box testing, test case generation
– Optimising models at runtime: Can we efficiently use metaheuristic techniques to
optimise models that are used at runtime?
– Proposals of benchmark modelling case studies against which different
metaheuristic techniques can be evaluated
– Tool papers related to combining examples, search, and modelling
– Position statements on ways in which modelling, examples or search could be
combined
3</p>
    </sec>
    <sec id="sec-3">
      <title>Papers and Presentations</title>
      <p>The papers and the associated presentations are available on the workshop web pages
(http://www.cs.york.ac.uk/es/cmseba).</p>
      <p>
        Crepe Complete: Multi-objective Optimization for Your Models by Dionysios
Efstathiou, James R. Williams, Steffen Zschaler. This contribution discusses an extension
of Crepe [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ], initially designed as a framework for single-objective optimization based
on Epsilon, to support multi-objective optimisation. In particular, the authors provide
an experimental comparison between an optimization problem implemented in Crepe
and in native Java concerning the quality of found solutions and execution time needed.
For a post-workshop update on the comparison results we refer the interested reader to
Section 4 of this report.
      </p>
      <p>
        Graph Query by Example by Gabor Bergmann, Abel Hegedüs, György Gerencser,
Daniel Varro. Model Transformation By-Example (MTBE) approaches [
        <xref ref-type="bibr" rid="ref4 ref7 ref9">4, 7, 9</xref>
        ] have
been the first by-example approaches in the field of MDE and have been the first target
within the MDE field which was tackled with search-based techniques [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ]. The work by
Bergmann et al. discusses a specific kind of MTBE, namely how to derive graph queries
by example. In particular, Bergmann et al. present an extension to the EMF-IncQuery
model query tool [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ] that allows the user to define how the result of a query should look
like by using an example rendered in the concrete syntax of the modeling languages.
Based on this input, a general query is derived which is then used to search for all such
occurrences of the general pattern behind the defined example.
      </p>
      <p>Design-Space Exploration in MDE: an initial Pattern Catalogue by Ken Vanherpen,
Joachim Denil, Paul De Meulenaere, Hans Vangheluwe. Design-space exploration is
becoming more and more important in the area of MDE. However, a multitude of
Design-Space Exploration (DSE) techniques exist in literature which makes choosing
the most appropriate technique for a specific problem a challenging task. Furthermore,
the integration of DSE techniques into MDE approaches is still not mature enough, but
highly needed to provide a higher degree of automation in the design process. The paper
by Vanherpen et al. follows the idea of software design patterns to document how DSE
techniques are used in MDE. By following this approach, they introduce an initial
pattern catalogue to categorise and characterize the current state-of-the-art of embedding
different DSE techniques in MDE.</p>
      <p>EXEMPLAR: an Experimental Information Repository for SBSE Research by Jose
Antonio Parejo, Sergio Segura, Pablo Fernandez, Antonio Ruiz Cortes. Experiments
are an important cornerstone of software engineering research, and thus, an increasing
amount of studies are using this kind of instrument. However, this leads directly to the
need of replication and review of the experimental setups, executions, and results. The
idea behind EXEMPLAR (EXpErimets Management PLAtfoRm) is to provide this kind
of information by lab-packs which are hosted in the EXEMPLAR online platform. This
platform provides not only a systematic way to represent experiment information, but
also checks for the validity of the experiments as well as powerful search capabilities.
The platform supports two modeling languages for providing experimental descriptions,
namely SEDL and MOEDL, which are presented by Parejo et al.</p>
      <p>
        Efficient Model Querying with VMQL by Vlad Acretoaie, Harald Störrle. Acretoaie
and Störrle consider model queries using the Visual Model Query Language (VMQL) [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ]
which allows to develop model queries in a by-example manner using the concrete
syntax of the modeling languages. In particular, Acretoaie and Störrle present a study of
the efficiency of such model queries for ad-hoc model querying scenarios, i.e.,
scenarios where the user is exploring the model interactively by using queries which of course
should provide the results immediately. The results of performance evaluations over a
set of different models with different sizes indicate that VMQL is usable for ad-hoc
model querying.
4
      </p>
    </sec>
    <sec id="sec-4">
      <title>Discussions</title>
      <p>Each paper presented at CMSEBA’14 led to a short discussion session, that both
addressed technical issues related to the paper, and also more general themes. The
workshop organisers attempted to stimulate the discussion to help tease out recurring themes,
and to potentially identify interesting and profitable directions for future research.</p>
      <p>One of the key topics for discussion came about as a result of Benoit Baudry’s
invited keynote, Searching models for proactive software diversification. A key element
of this talk was the use of novel search criteria – in this case, measures of diversity in
a software landscape. Diversity, in general, is the notion that a population may be
(informally) more “survivable” if there is more variability within it. In a software context,
software monocultures – such as through use of OS, networking protocols, APIs – have
been identified as a particularly significant source of risk (e.g., in terms of exposure
to security vulnerabilities). Baudry’s keynote discussed software diversity and in
particular ways in which diversification could be treated as a search problem, enabled by
modelling. This led to significant discussion on topics such as:
– different novel search criteria beyond diversity;
– the feasibility of expressing novel search criteria in tractable, efficient fitness
functions;
– the value of domain-specific languages and modelling languages in expressing
search criteria in effective ways;
– more generally, novel applications of search, inspired by work on software
diversification.</p>
      <p>It was suggested during the discussion that search and modelling might be effectively
combined to help identify problematic software monocultures (as there may be value in
a software monoculture in certain circumstances).</p>
      <p>Another general topic of discussion was a result of Zschaler et al’s talk on Crepe
Complete, which presented a generic implementation/representation (based on Eclipse
EMF) for models that were amenable to search. The talk showed how Crepe Complete
could be used for different search problems, but also indicated that it may have
performance problems – this was the classical generic-vs-bespoke design issue that arises in
search-based software engineering (and other disciplines). Because the performance of
the generic model representation was quite poor compared with bespoke
implementations, questions were asked about the practicality and feasibility of developing a
performant generic implementation, and whether the cost-benefit argument for generic
implementations vs bespoke implementations was skewed towards the bespoke. However,
after the workshop, it was discovered that the performance results for the generic
implementation were in fact flawed: the authors of the Crepe Complete noted:</p>
      <p>The results in the paper showed that Crepe performed worse than the
bespoke implementation on two fronts: speed and solution quality. Since the
workshop (October 2014) we have been able to improve both. We devised a
more optimal encoding of the problem, which speeds up Crepe by up to a
factor of 2. Furthermore, we discovered a bug in the Crepe implementation of the
fitness function which severely, and inaccurately, punished Crepe solutions.
Experiments are still underway to determine how much Crepe has improved
and we plan to publish an updated version of this work, including a discussion
on the challenges of developers working with domain experts when encoding
problems for search.</p>
      <p>As such, the question of whether generic-vs-bespoke implementations of model
representations and fitness functions are to preferred is still very much open.</p>
      <p>The next topic to be discussed was the use and importance of patterns in defining
search problems. Some search problems have recurring characteristics, and search
solutions definitely have recurring characteristics. Can these patterns be formalised and
expressed in such a way so as to inform, for example, decision making related to whether
a generic representation may be suitable for a particular problem?</p>
      <p>Finally, there was discussion related to the importance of repositories of modelling
and search problems (e.g., with examples of queries, constraints, transformations etc)
that could be used to run repeatable experiments. The attendees agreed that this was
extremely important and valuable, and perhaps existing repositories such as github
could be used to support this.</p>
      <p>The audience finally noted that the workshop had proven to be extremely valuable,
insightful (and intense) and hoped to have a follow-up workshop at a future MoDELS
conference.
5</p>
    </sec>
    <sec id="sec-5">
      <title>Conclusion</title>
      <p>As noted, at the end of the workshop many participants agreed that there is a need
for further work on the foundations as well as application of modeling with examples
as well as to further elaborate on the usage of search-based techniques in MDE. A
future research line for an upcoming CMSEBA workshop (e.g., at MoDELS 2015) may
include proposals for development of repositories of standardised examples (e.g., to
support sharing of experiments and experimental results), as well as experiments on
novel fitness functions and search criteria.</p>
    </sec>
    <sec id="sec-6">
      <title>Acknowledgement</title>
      <p>The authors would like to thank all the authors and participants of CMSEBA 2014 for
their contributions.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <given-names>J.</given-names>
            <surname>Bézivin</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R. F.</given-names>
            <surname>Paige</surname>
          </string-name>
          ,
          <string-name>
            <given-names>U.</given-names>
            <surname>Aßmann</surname>
          </string-name>
          ,
          <string-name>
            <given-names>B.</given-names>
            <surname>Rumpe</surname>
          </string-name>
          , and
          <string-name>
            <given-names>D.</given-names>
            <surname>Schmidt</surname>
          </string-name>
          .
          <article-title>Manifesto - Model Engineering for Complex Systems</article-title>
          . CoRR, abs/1409.6591,
          <year>2014</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <given-names>M.</given-names>
            <surname>Harman</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S. A.</given-names>
            <surname>Mansouri</surname>
          </string-name>
          , and
          <string-name>
            <surname>Y. Zhang.</surname>
          </string-name>
          <article-title>Search-based software engineering: Trends, techniques and applications</article-title>
          .
          <source>ACM Comput. Surv.</source>
          ,
          <volume>45</volume>
          (
          <issue>1</issue>
          ):
          <volume>11</volume>
          :
          <fpage>1</fpage>
          -
          <lpage>11</lpage>
          :
          <fpage>61</fpage>
          ,
          <year>2012</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <given-names>G.</given-names>
            <surname>Kappel</surname>
          </string-name>
          ,
          <string-name>
            <given-names>P.</given-names>
            <surname>Langer</surname>
          </string-name>
          ,
          <string-name>
            <given-names>W.</given-names>
            <surname>Retschitzegger</surname>
          </string-name>
          ,
          <string-name>
            <given-names>W.</given-names>
            <surname>Schwinger</surname>
          </string-name>
          , and
          <string-name>
            <given-names>M.</given-names>
            <surname>Wimmer</surname>
          </string-name>
          .
          <article-title>Model transformation by-example: A survey of the first wave</article-title>
          .
          <source>In Conceptual Modelling and Its Theoretical Foundations</source>
          , volume
          <volume>7260</volume>
          <source>of LNCS</source>
          , pages
          <fpage>197</fpage>
          -
          <lpage>215</lpage>
          . Springer,
          <year>2012</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <given-names>M.</given-names>
            <surname>Kessentini</surname>
          </string-name>
          ,
          <string-name>
            <given-names>H. A.</given-names>
            <surname>Sahraoui</surname>
          </string-name>
          , and
          <string-name>
            <given-names>M.</given-names>
            <surname>Boukadoum</surname>
          </string-name>
          .
          <article-title>Model Transformation as an Optimization Problem</article-title>
          .
          <source>In Proc. of MoDELS</source>
          , volume
          <volume>5301</volume>
          <source>of LNCS</source>
          , pages
          <fpage>159</fpage>
          -
          <lpage>173</lpage>
          . Springer,
          <year>2008</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <given-names>H.</given-names>
            <surname>Störrle</surname>
          </string-name>
          . VMQL:
          <article-title>A visual language for ad-hoc model querying</article-title>
          .
          <source>J. Vis. Lang. Comput.</source>
          ,
          <volume>22</volume>
          (
          <issue>1</issue>
          ):
          <fpage>3</fpage>
          -
          <lpage>29</lpage>
          ,
          <year>2011</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <given-names>Z.</given-names>
            <surname>Ujhelyi</surname>
          </string-name>
          , G. Bergmann, Á. Hegedüs, Á. Horváth,
          <string-name>
            <given-names>B.</given-names>
            <surname>Izsó</surname>
          </string-name>
          ,
          <string-name>
            <given-names>I.</given-names>
            <surname>Ráth</surname>
          </string-name>
          ,
          <string-name>
            <given-names>Z.</given-names>
            <surname>Szatmári</surname>
          </string-name>
          , and
          <string-name>
            <given-names>D.</given-names>
            <surname>Varró</surname>
          </string-name>
          .
          <article-title>EMF-IncQuery: An integrated development environment for live model queries</article-title>
          .
          <source>Sci. Comput</source>
          . Program.,
          <volume>98</volume>
          :
          <fpage>80</fpage>
          -
          <lpage>99</lpage>
          ,
          <year>2015</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <given-names>D.</given-names>
            <surname>Varró</surname>
          </string-name>
          .
          <article-title>Model Transformation by Example</article-title>
          .
          <source>In Proc. of MoDELS</source>
          , volume
          <volume>4199</volume>
          <source>of LNCS</source>
          , pages
          <fpage>410</fpage>
          -
          <lpage>424</lpage>
          . Springer,
          <year>2006</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8.
          <string-name>
            <given-names>J. R.</given-names>
            <surname>Williams</surname>
          </string-name>
          .
          <article-title>A Novel Representation for Search-Based Model-Driven Engineering</article-title>
          .
          <source>PhD thesis</source>
          , University of York,
          <year>2013</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9.
          <string-name>
            <given-names>M.</given-names>
            <surname>Wimmer</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Strommer</surname>
          </string-name>
          ,
          <string-name>
            <given-names>H.</given-names>
            <surname>Kargl</surname>
          </string-name>
          , and
          <string-name>
            <given-names>G.</given-names>
            <surname>Kramler. Towards Model Transformation Generation By-Example</surname>
          </string-name>
          .
          <source>In Proc. of HICSS. IEEE</source>
          ,
          <year>2007</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          10.
          <string-name>
            <surname>M. M. Zloof</surname>
          </string-name>
          .
          <article-title>Query-by-example: A data base language</article-title>
          .
          <source>IBM systems Journal</source>
          ,
          <volume>16</volume>
          (
          <issue>4</issue>
          ):
          <fpage>324</fpage>
          -
          <lpage>343</lpage>
          ,
          <year>1977</year>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>