<!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>Test Cases Generation for Model Transformations from Structural Information</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Wenquan Wang</string-name>
          <email>wangw@mst.edu</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Marouane Kessentini</string-name>
          <email>marouane@umich.edu</email>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Wei Jiang</string-name>
          <email>wjiang@mst.edu</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Missouri University of Science and Technology</institution>
          ,
          <country country="US">USA</country>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>University of Michigan</institution>
          ,
          <country country="US">USA</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>Most of existing approaches for test cases generation to transformation mechanisms use a main criterion which is the coverage of source and target metamodel elements. However, this criterion is not sufficient in a real-world scenario. In fact, test-cases generated to cover meta-model elements cannot detect some transformation errors due to model-scalability reasons. These generated test cases are simple and different, in general, from source models that are used in an industrial setting. To make the situation worse, source models cannot be provided by industrial companies due to security/confidentiality reasons. Instead of real data (source models), corporations can provide structural information about their source models (e.g. number of classes, number of relationships, etc.). We propose a search-based approach for generating test cases based on the coverage of structural information in addition to meta-models coverage. The validation results on a transformation mechanism used by an industrial partner confirm the effectiveness of our approach.</p>
      </abstract>
      <kwd-group>
        <kwd>- Search-based Software Engineering</kwd>
        <kwd>testing</kwd>
        <kwd>model transformation</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>1. Introduction</title>
      <p>Model-driven engineering (MDE) is increasingly adopted in industry for being a new
paradigm helping software developers to manage the growing complexity of systems
being designed and implemented. In MDE, software models constitute the central
artifacts in the software life cycle, going beyond their traditional use for automatically
generating executable software. In fact, MDE aims to provide automated support for
the creation, refactoring, and transformation of software models 24.</p>
      <p>Although MDE is a promising approach to automated models transformation, so far it
lacks techniques and tools for validating model transformations. One of the efficient
techniques proposed recently is model transformation testing 14.Model transformation
testing consists of generating a large number of different source models as test cases,
running the transformation mechanism on them, and verifying the result using an oracle
function such as a comparison with an expected results. Thus, model transformations
testing includes with two challenging steps : the efficient generation of test cases and
the definition of the oracle function. In this paper, we focus on the first step.
The generating of test cases for model transformation mechanisms is challenging. As
explained in 5, testing model transformation is distinct from testing traditional
implementations: the input data are models that are complex when compared to simple
data types which complicate the generation and evaluation of test cases 6. These test
cases should be in general conformed to specific source metamodel such UML,
database, etc. The main criteria used by existing work to evaluate test cases are the
coverage of metamodel elements and reducing the number of test cases 789. However,
these criteria are sometimes not enough to ensure the generation of efficient test cases.
Simple test cases are generated to cover metamodel elements which are completely
different from the real used data (source models to be transformed/ company’s
projects). When executing transformation mechanisms on industrial data many
scalability issues can be detected due to some complex model fragments to transform
or the huge number of transformation possibilities. One can use directly the
real/industrial source models to test transformation rules. However, most of industrial
companies, such as banks, do not accept to share their source models due to some
security/confidentiality reasons.</p>
      <p>To address these issues, we start from the observation that structural information, such
as quality metrics, characterizing the source models can be collected from the industrial
partner since it did not contains confidential information (e.g. name of model elements,
information about customers, etc.). In this paper, we extend existing work by adding a
new objective to maximize which the coverage of structural information to the real
source models that will be transformed. To formally define the structural information,
we used a set of metrics that characterize the proprieties of metamodel elements. Thus,
in order to maximize the closeness to the real source models to be transformed, we
minimize the distance between the metrics values of test cases and those of expected
data to be transformed. To this end, we use a mono-objective optimization algorithm to
generate test cases that maximize the coverage of metamodel elements while
minimizing the structural-distance and the number of test cases. The proposed
algorithm is an adaptation of Genetic Algorithm (GA) 12. The GA aims to explore the
huge search space of the source metamodel in order to find the best solution ensuring
the satisfaction of the three objectives described previously. For this, a custom tool was
developed to generate test cases for the known case of transforming UML class
diagrams (CD) to relational schemas (RS). The data related to CD was provided by an
industrial partner, where the goal is to define and test a transformation mechanism to
migrate to database. Of course, the bank gives us the structural information and not the
real source models.</p>
      <p>The primary contributions of the paper can be summarized as follows:
 We present a new approach to generate test cases for model transformations.</p>
      <p>Our proposal generates efficient test cases that are similar to the expected
realworld data to be transformed.
</p>
      <p>We report the results of an evaluation of our approach on industrial data and
promising results are obtained. In fact, we success to generate artificial source
models that are similar to expected industrial data with a maximum coverage of
the source metamodels.
 We report the comparison results of our approach with an existing work 5
where only one and/or two evaluation criteria are used to evaluate test cases.
The remainder of this paper is as follows: Section 2 presents the relevant background
and the motivation for the presented work using a real-world scenario; Section 3
describes the heuristic search algorithm; an evaluation of the algorithm with industrial
validation is explained and its results are discussed in Section 4; Section 5 is dedicated
to related work. Finally, concluding remarks and future work are provided in Section
6.</p>
    </sec>
    <sec id="sec-2">
      <title>2. Test-cases Generation for Model Transformation</title>
    </sec>
    <sec id="sec-3">
      <title>Mechanisms</title>
      <p>
        This section describes the principles that underlie the proposed method for model
transformation testing. It starts by presenting the overview of our proposal to generate
test cases from structural information. Then, we provide the details of the approach and
our adaptation of the genetic algorithm to the model transformation testing problem.
As showed in Figure 1, our approach can be divided into two important components:
the input/output of the testing process, and the main algorithm. We describe these
components next.
The Inputs of our approach are the source and target metamodels, the transformation
mechanism (rules) to test, and structural metrics that characterize the company projects
that will be transformed. The metamodels describe the source and target languages
as described in Section 2. The transformation mechanism is a set of transformation rules
mapping the different elements of source metamodel to their equivalent elements in the
target metamodel such as class-to-table, attribute-to-column, etc. When defining a
transformation mechanism some errors can be detected in the rules or the generated
target models by executing a set of test cases. The third input of our approach is the
metrics that provide useful information about the structure of projects to migrate. For
class diagrams, we are using the most widely used metrics defined by Genero et al.
[
        <xref ref-type="bibr" rid="ref10">10</xref>
        ]. These metrics include Number of associations (Naccoc): the total number of
associations; Number of aggregations (Nagg): the total number of aggregation
relationships; Number of dependencies (Ndep): the total number of dependency
relationships; Number of generalizations (Ngen): the total number of generalisation
relationships (each parent-child pair in a generalization relationship); Number of
aggregations hierarchies (NAggH): the total number of aggregation hierarchies;
Number of generalization hierarchies (NGenH): the total number of generalisation
hierarchies; Maximum DIT (MaxDIT): the maximum of the DIT (Depth of Inheritance
Tree) values for each class in a class diagram. The DIT value for a class within a
generalisation hierarchy is the longest path from the class to the root of the hierarchy;
Number of attributes (NA): the total number of attributes; Number of methods
(LOCMETHOD): the total number of methods; etc.
      </p>
      <p>Using these inputs, the main goal (output) of our genetic algorithm is to generate
artificial data (test cases) satisfying three objectives: maximizing the similarities with
the expected metrics value, maximizing the coverage of metamodels elements, and
minimizing the number of test cases. In this setting, a test case can be defined as any
possible instantiation form the source metamodel.</p>
      <p>As a huge number of test cases that can be generated to satisfy the three objectives, the
test cases generation process is a seen as a combinatorial optimization problem. The
number of possible solutions quickly becomes huge as the number of structural metrics
and metamodel elements increases. A deterministic search is not practical in such cases,
and the use of heuristic search is warranted. The search is guided by the quality of the
solution according to the three described objectives. In the experiments, we tested
different weights accorded to these objectives.</p>
      <p>A high level view of our Genetic Algorithm approach to the test cases generation
problem is introduced by Figure 2. As this figure shows, the algorithm takes as inputs
the source and target metamodels, the transformation mechanism (rules) to test, and
structural metrics that characterize the company projects that will be transformed. It
finds a set of test cases (artificial source models) that best maximize the similarity with
the structure of company-source models,maximize the coverage of metamodels, and
minimize the number of test cases.
Lines 1–3 construct an initial GA population, which is a set of individuals that stand for
possible test case solutions. Lines 4–13 encode the main GA loop, which explores the
search space and constructs new individuals by combining model elements. For each
iteration, we evaluate the quality of each individual in the population, and save the
individual having the best fitness (line 9). We generate a new population (pop+1) of
individuals (line 10) by iteratively selecting pairs of parent individuals from population
p and applying the crossover operator to them; each pair of parent individuals produces
two children (new solutions). We include both the parent and child variants in the new
population pop. Then we apply the mutation operator, with a probability score, for both
parent and child to ensure the solution diversity; this produces the population for the next
generation. The algorithm terminates when the termination criterion (maximum iteration
number) is met, and returns the best set of test cases (best solution found during all
iterations).</p>
      <p>The encoding of an individual should be formalized as a mathematical function called
fitness function. The fitness function quantifies the quality of the set of generated test
cases. This function, to minimize, is based on three components and defined as:
in jm
f  n  nbMMe  nbCovMMe  i1  mi, j  emi, j</p>
      <p>j1
Where n is the number of generated test cases; nbMMe is the number of metamodel
elements; nbCovMMe is the number of covered metamodel elements; m is the number
model elements in all test cases. Thus, the first objective is to minimize the number of
test cases, the second objective is to maximize the coverage of metamodel elements (by
minimizing the difference between the number of metamodel elements and the covered
ones) and finally the third objective is to maximize the similarity with structural
information of real source models to be transformed (by minimizing the difference
between the metric values of test cases and real source models).</p>
    </sec>
    <sec id="sec-4">
      <title>3. Experiments</title>
      <p>To evaluate our approach, we conducted an experiment with industrial data. We start
this section by presenting the data used and the types of transformation errors we
considered in this study that should be detected using the generated test cases. Then, we
report and discuss the obtained results.</p>
      <p>In our experiments, we used structural information related to a set of class diagrams
source models (CD) provided by an industrial partner acting in the banking sector. The
efficiency of our generated test cases is evaluated using a precision score defined as
follows:
Precision 
number of covered errors by thetest cases</p>
      <p>number of errors
In fact, the important criterion to evaluate test cases is the coverage of the majority of
expected errors. In addition, we compared the precision of our results with classical
model testing approaches where mainly the coverage of metamodels is used. We
presented in the next section the average precision (using different GA parameters)
obtained using the coverage of structural information of the four class diagrams.
Finally, we evaluate the number of test cases required to cover all the expected errors.</p>
      <p>Fig 3. Precision results
As showed in Figure 3, the best precision scores are obtained when we combined
metamodel coverage and strcutural informaiton coverage. In fact, for all the scenarios
our proposal performs better than classical model-testing approach with a precision
higher than 89%. Especially in the scenario where a high number of errors (15) are
introduced in the tranformation mechanism to test. In this case the test cases generated
using the combination of the three objectives cover more than 93% (14/15) of expected
errors however using only one objective (metamodel coverage) only 64% of errors are
covered by the generated test cases. We also investigated the types of transformation
errors that were identified. As mentioned previously, the possible error sources were
during specification of the model transformation mechanism: (i) the metamodels; (ii)
the transformation logic (rules). Using our approach, all the error types were covered
by the generated test cases. For instance, we obtained 100% precision in the scenario
where 9 errors (3 rules-errors and 6 metamodel-coverage errors) are introduced. To
conclude, the generated test cases using our proposal covered successfully most of
expected errors much better than metamodel-coverage approach.</p>
      <p>Fig 4. Number of generated test cases
An important consideration is the number of test cases used to cover the expected
transformation errors. Since our approach takes into consideration the minimization of
the number of generated test cases, Figure 4 shows that we obtained reasonable number
of test cases that cover both structural information and metamodel elements. It is
evident that low number of test cases is generated for structural information coverage
since only real source models projects are expected to be covered. This is explains why
few number of test cases are needed in this case. However, the coverage of metamodel
elements requires the higher number of test cases in all the scenarios especially that
minimizing the number of test cases is not considered as objective. Our proposal
obtained lower test cases than the metamodel-coverage-technique with a better
precision. For instance, in the scenario where 15 errors are introduced more than 160
test cases are generated by the metamodel-coverage technique. However, with our
technique only 108 test cases are required. When we checked the results manually, we
found that many redundant/similar test cases are generated when minimizing the
number of test cases is not considered as an objective.</p>
      <p>Fig 5. Precision vs. number of metrics used for structural information (scenario1=12
errors introduced)
Another important factor to evaluate when generating test cases from structural
information is the number of structural metrics required to characterize the structure of
real source models to generate similar artificial data (test cases). Figure 5 shows the
precision scores obtained on the first scenario (where 12 errors to cover are introduced)
when we varied the number of structural metrics used. Our approach provides
acceptable results (more than 80% as precision) when only 8 metrics are used thus we
can conclude that the number of structural metrics required to collect from the industrial
partner is not huge. This is important because our objective is to reduce the data
required from the industrial partner as much as possible. However, the number of
structural metrics depends on the used metamodels. We are planning to extend our
validation in the future to covers other metamodels and then evaluating the impact of
the structural metric information.</p>
      <p>We executed our algorithm on a standard desktop computer and only a maximum of
twenty minutes is required to generate the different results (with different GA
parameters). Thus, our approach appears to be scalable from the performance
standpoint. However, the execution time depends on the number of metrics used,
number of metamodel elements and the number of rules used.</p>
      <p>The precision results might vary depending on the test cases used, which are randomly
generated, though guided by a metaheuristic. To ensure that our results are relatively
stable, we compared the results of multiple executions for test cases generation using SA
as showed in Figure 6. We consequently believe that our technique is stable, since the
precision scores are approximately the same for seven different executions.</p>
      <p>Fig 6. Stability results
4. CONCLUSION
In this paper, we described a new search-based for model transformation testing that
take into consideration structural information of expected real source models to
transform. The Inputs of our approach are the source and target metamodels, the
transformation mechanism (rules) to test, and structural metrics that characterize the
company projects that will be transformed. Using these inputs, the main goal (output)
of our genetic algorithm is to generate artificial data (test cases) satisfying three
objectives: maximizing the similarities with the expected metrics value, maximizing
the coverage of metamodels elements, and minimizing the number of test cases.
We evaluate our approach on industrial data and promising results are obtained. In fact,
we success to generate artificial source models that are similar to expected industrial
data with a maximum coverage of the source metamodels. Furthermore, we report the
comparison results of our approach with an existing work where only one and/or two
evaluation criteria are used to evaluate test cases.</p>
      <p>Future work should validate our approach with more complex transformation
mechanisms in order to conclude about the general applicability of our methodology.
Also, in this paper, we only focused on the generation of test cases. We are planning to
extend the approach by automating the detection of transformation errors. Furthermore,
since we are considering many objectives to evaluate test case the use of multi-objective
algorithms such as NSGA-II will be evaluated to find the best comprise. In addition,
we will study the adaptation of the proposed approach to test object oriented code.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <surname>Mottu</surname>
            ,
            <given-names>J.M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Baudry</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Traon</surname>
            ,
            <given-names>Y.L.</given-names>
          </string-name>
          :
          <article-title>Model transformation testing: Oracle issue</article-title>
          .
          <source>In Proc. of ICST08.</source>
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <given-names>Y.</given-names>
            <surname>Lin</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Zhang</surname>
          </string-name>
          , and
          <string-name>
            <given-names>J.</given-names>
            <surname>Gray</surname>
          </string-name>
          .
          <article-title>A Testing Framework for Model Transformations</article-title>
          , in Model-driven
          <source>Software Development</source>
          .
          <year>2005</year>
          , Springer.
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <surname>Dimitrios</surname>
            <given-names>S</given-names>
          </string-name>
          . Kolovos, Richard F. Paige,
          <string-name>
            <given-names>Fiona A.C.</given-names>
            <surname>Polack</surname>
          </string-name>
          .
          <article-title>Model Comparison: A Foundation for Model Composition and Model Transformation Testing</article-title>
          .
          <source>In Proc. GaMMa</source>
          ,
          <year>2006</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <surname>Brottier</surname>
            ,
            <given-names>E.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Fleurey</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Steel</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Baudry</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          , and
          <string-name>
            <surname>Traon</surname>
            ,
            <given-names>Y. L.</given-names>
          </string-name>
          <article-title>Metamodel-based Test Generation for Model Transformations: an Algorithm and a Tool</article-title>
          .
          <source>In Proceedings of SSRE 2006</source>
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <given-names>B.</given-names>
            <surname>Baudry</surname>
          </string-name>
          ,
          <string-name>
            <given-names>F.</given-names>
            <surname>Fleurey</surname>
          </string-name>
          ,
          <string-name>
            <surname>J.-M. Jezequel</surname>
            , and
            <given-names>Y. L.</given-names>
          </string-name>
          <string-name>
            <surname>Traon</surname>
          </string-name>
          .
          <article-title>Automatic test cases optimization using a bacteriological adaptation model: Application to . net components</article-title>
          .
          <source>In ASE</source>
          <year>2002</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <surname>Fleurey</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Steel</surname>
          </string-name>
          and
          <string-name>
            <given-names>B.</given-names>
            <surname>Baudry</surname>
          </string-name>
          , Validation in Model-Driven Engineering: Testing Model Transformations,
          <source>In 15th IEEE International Symposium on Software Reliability Engineering</source>
          .
          <year>2004</year>
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <surname>Andrews</surname>
            , R. France, S. Ghosh, and
            <given-names>G.</given-names>
          </string-name>
          <string-name>
            <surname>Craig</surname>
          </string-name>
          .
          <article-title>Test adequacy criteria for uml design models</article-title>
          .
          <source>Technical report</source>
          , Computer Science Department, Colorado State University,
          <year>2006</year>
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8.
          <string-name>
            <surname>Steel</surname>
            , J. and
            <given-names>M.</given-names>
          </string-name>
          <string-name>
            <surname>Lawley</surname>
          </string-name>
          .
          <article-title>Model-Based Test Driven Development of the Tefkat ModelTransformation Engine</article-title>
          .
          <source>In ISSRE'04</source>
          , pp.
          <fpage>151</fpage>
          -
          <lpage>160</lpage>
          ,
          <year>2004</year>
          . IEEE.
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9.
          <string-name>
            <given-names>B.</given-names>
            <surname>Baudry</surname>
          </string-name>
          ,
          <string-name>
            <given-names>T.</given-names>
            <surname>Dinh-Trong</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.-M.</given-names>
            <surname>Mottu</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Simmonds</surname>
          </string-name>
          , R. France,
          <string-name>
            <given-names>S.</given-names>
            <surname>Ghosh</surname>
          </string-name>
          ,
          <string-name>
            <given-names>F.</given-names>
            <surname>Fleurey</surname>
          </string-name>
          , and
          <string-name>
            <given-names>Y. L.</given-names>
            <surname>Traon</surname>
          </string-name>
          .
          <article-title>Model Transformation Testing Challenges</article-title>
          .
          <source>In IMDT workshop</source>
          ,
          <year>2006</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          10.
          <string-name>
            <given-names>J.</given-names>
            <surname>Kuster</surname>
          </string-name>
          and
          <string-name>
            <given-names>M.</given-names>
            <surname>Abd-El-Razik</surname>
          </string-name>
          .
          <article-title>Validation of model transformations- first experiences using a white box approach</article-title>
          .In MoDeVa'
          <volume>06</volume>
          .
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          11. E. Cariou,
          <string-name>
            <given-names>R.</given-names>
            <surname>Marvie</surname>
          </string-name>
          ,
          <string-name>
            <given-names>L.</given-names>
            <surname>Seinturier</surname>
          </string-name>
          , and
          <string-name>
            <given-names>L.</given-names>
            <surname>Duchien</surname>
          </string-name>
          .
          <article-title>OCL for the Specification of Model Transformation Contracts</article-title>
          .
          <source>Proceedings of Workshop OCL and MDE</source>
          ,
          <year>2004</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          12.
          <string-name>
            <given-names>D. E.</given-names>
            <surname>Goldberg</surname>
          </string-name>
          .
          <article-title>Genetic Algorithms in Search, Optimization and Machine Learning</article-title>
          . Addison-Wesley Pub Co,
          <year>Jan 1989</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          13.
          <string-name>
            <surname>Varró</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Pataricza</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          :
          <article-title>Automated formal verification of model transformations</article-title>
          . In: Jürjens,
          <string-name>
            <given-names>J.</given-names>
            ,
            <surname>Rumpe</surname>
          </string-name>
          ,
          <string-name>
            <surname>B.</surname>
          </string-name>
          , France,
          <string-name>
            <given-names>R.</given-names>
            ,
            <surname>Fernandez</surname>
          </string-name>
          ,
          <string-name>
            <surname>E.B. (eds.) CSDUML</surname>
          </string-name>
          <year>2003</year>
          :
          <article-title>critical systems development in</article-title>
          <source>UML; proceedings of theUML'03 workshop, Technical Report</source>
          , pp.
          <fpage>63</fpage>
          -
          <lpage>78</lpage>
          . Technische Universität München,
          <year>September 2003</year>
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          14.
          <string-name>
            <surname>Mottu</surname>
            ,
            <given-names>J.-M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Baudry</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>LeTraon</surname>
          </string-name>
          ,Y.:
          <article-title>Mutation analysis testing for model transformations</article-title>
          .
          <source>In: Proceedings of ECMDA'06 (European Conference on Model Driven Architecture)</source>
          . Bilbao,
          <string-name>
            <surname>Spain</surname>
          </string-name>
          (
          <year>2006</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          15.
          <string-name>
            <surname>Küster</surname>
            ,
            <given-names>J.M.</given-names>
          </string-name>
          :
          <article-title>Definition and validation of model transformations</article-title>
          .
          <source>Softw. Syst. Model</source>
          .
          <volume>5</volume>
          (
          <issue>3</issue>
          ),
          <fpage>233</fpage>
          -
          <lpage>259</lpage>
          (
          <year>2006</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          16.
          <string-name>
            <surname>Darabos</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Pataricza</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Varro</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          :
          <article-title>Towards testing the implementation of graph transformations</article-title>
          .
          <source>In: Proceedings of GT-VMT Workshop</source>
          Associated to ETAPS'
          <volume>06</volume>
          , pp.
          <fpage>69</fpage>
          -
          <lpage>80</lpage>
          . Vienna, Austria (
          <year>2006</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          17.
          <string-name>
            <given-names>P.</given-names>
            <surname>Sampath</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A. C.</given-names>
            <surname>Rajeev</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Ramesh</surname>
          </string-name>
          , and
          <string-name>
            <given-names>K. C.</given-names>
            <surname>Shashidhar</surname>
          </string-name>
          .
          <article-title>Testing model-processing tools for embedded systems</article-title>
          .
          <source>In IEEE Real-Time and Embedded Technology and Applications Symposium</source>
          , pages
          <fpage>203</fpage>
          -
          <lpage>214</lpage>
          ,
          <year>2007</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          18. M.
          <article-title>Harman, The Current State and Future of Search Based Software Engineering</article-title>
          ,
          <source>In Proceedings of the 29th International Conference on Software Engineering (ICSE</source>
          <year>2007</year>
          ),
          <fpage>20</fpage>
          -26 May, Minneapolis, USA (
          <year>2007</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref19">
        <mixed-citation>
          19. 41. A.
          <string-name>
            <surname>Baresel</surname>
            ,
            <given-names>H.</given-names>
          </string-name>
          <string-name>
            <surname>Sthamer</surname>
            , and
            <given-names>M.</given-names>
          </string-name>
          <string-name>
            <surname>Schmidt</surname>
          </string-name>
          .
          <article-title>Fitness function design to improve evolutionary structural testing</article-title>
          .
          <source>In GECCO 2002: Proceedings of the Genetic and Evolutionary Computation Conference</source>
          , pages
          <fpage>1329</fpage>
          -
          <lpage>1336</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref20">
        <mixed-citation>
          20.
          <string-name>
            <given-names>P.</given-names>
            <surname>McMinn</surname>
          </string-name>
          .
          <article-title>Search-based software test data generation: A survey</article-title>
          .
          <source>Software Testing, Verification and Reliability</source>
          ,
          <volume>14</volume>
          (
          <issue>2</issue>
          ):
          <fpage>105</fpage>
          -
          <lpage>156</lpage>
          ,
          <year>June 2004</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref21">
        <mixed-citation>
          21.
          <string-name>
            <surname>Fleurey</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Baudry</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Muller</surname>
            ,
            <given-names>P.A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Traon</surname>
            ,
            <given-names>Y.</given-names>
          </string-name>
          :
          <article-title>Qualifying input test data for model transformations</article-title>
          .
          <source>In: Software and Systems Modeling</source>
          (
          <year>2008</year>
          )
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>