27 research outputs found

    Generating Effective Test Suites for Model Transformations Using Classifying Terms

    Get PDF
    Generating sample models for testing a model transformation is no easy task. This paper explores the use of classifying terms and stratified sampling for developing richer test cases for model transformations. Classifying terms are used to define the equivalence classes that characterize the relevant subgroups for the test cases. From each equivalence class of object models, several representative models are chosen depending on the required sample size. We compare our results with test suites developed using random sampling, and conclude that by using an ordered and stratified approach the coverage and effectiveness of the test suite can be significantly improved.Universidad de Málaga. Campus de Excelencia Internacional Andalucía Tech

    Testing M2T/T2M Transformations

    Get PDF
    Presentado en: 16th International Conference on Model Driven Engineering Languages and Systems (MODELS 2013). Del 29 de septiembre al 4 de octubre. Miami, EEUU.Testing model-to-model (M2M) transformations is becoming a prominent topic in the current Model-driven Engineering landscape. Current approaches for transformation testing, however, assume having explicit model representations for the input domain and for the output domain of the transformation. This excludes other important transformation kinds, such as model-to-text (M2T) and text-to-model (T2M) transformations, from being properly tested since adequate model representations are missing either for the input domain or for the output domain. The contribution of this paper to overcome this gap is extending Tracts, a M2M transformation testing approach, for M2T/T2M transformation testing. The main mechanism we employ for reusing Tracts is to represent text within a generic metamodel. By this, we transform the M2T/T2M transformation specification problems into equivalent M2M transformation specification problems. We demonstrate the applicability of the approach by two examples and present how the approach is implemented for the Eclipse Modeling Framework (EMF). Finally, we apply the approach to evaluate code generation capabilities of several existing UML tools.Universidad de Málaga. Campus de Excelencia Internacional Andalucía Tech. Proyecto TIN2011-2379

    Employing Classifying Terms for Testing Model Transformations

    Get PDF
    This contribution proposes a new technique for developing test cases for UML and OCL models. The technique is based on an approach that automatically constructs object models for class models enriched by OCL constraints. By guiding the construction process through so-called classifying terms, the built test cases in form of object models are classified into equivalence classes. A classifying term can be an arbitrary OCL term on the class model that calculates for an object model a characteristic value. From each equivalence class of object models with identical characteristic values one representative is chosen. The constructed test cases behave significantly different with regard to the selected classifying term. By building few diverse object models, properties of the UML and OCL model can be explored effectively. The technique is applied for automatically constructing relevant source model test cases for model transformations between a source and target metamodel.Universidad de Málaga. Campus de Excelencia Internacional Andalucía Tech

    On the Realization of TractsTool

    Get PDF
    Model transformations play an important role in Model-Driven Engineering (MDE), and as their size and complexity grow, there is an increasing need to count on tool support for testing their correctness. In this presentation, we introduce TractsTool, a tool for specifying and testing several different kinds of model transformations, e.g., model-to-model, model-to-text, and text-to-model transformations, based on contracts. We explain the main principles behind the tool, demonstrate some of its capabilities by a running example, and show how it is internally realized by using MDE techniques. In particular, we describe the transformation chain that is used to compute the test results. TractsTool with accompanying information is available at: http://atenea.lcc.uma.es/index.php/Main_Page/Resources/Tract

    Towards the Automation of Metamorphic Testing in Model Transformations

    Get PDF
    Model transformations are the cornerstone of Model-Driven Engineering, and provide the essential mechanisms for manipulating and transforming models. Checking whether the output of a model transformation is correct is a manual and error-prone task, this is referred to as the oracle problem in the software testing literature. The correctness of the model transformation program is crucial for the proper generation of its output, so it should be tested. Metamorphic testing is a testing technique to alleviate the oracle problem consisting on exploiting the relations between different inputs and outputs of the program under test, so-called metamorphic relations. In this paper we give an insight into our approach to generically define metamorphic relations for model transformations, which can be automatically instantiated given any specific model transformation.Comisión Interministerial de Ciencia y Tecnología TIN2015-70560-RJunta de Andalucía TIC-5906Junta de Andalucía P12-TIC-186

    TractsTool: Testing Model Transformations based on Contracts

    Get PDF
    Model transformations play an important role in Model-Driven Engineering (MDE), and as their size and complexity grow, there is an increasing need to count on tool support for testing their correctness. In this work, we present TractsTool, a tool for specifying and testing several different kinds of model transformations, e.g., model-to-model, model-to-text, and text-to-model transformations, based on contracts.Ministerio de Ciencia e Innovación TIN2011-2379

    Introducing Approximate Model Transformations

    Get PDF
    Model transformations dealing with very large models need to count on mechanisms and tools to be able to manage them. The usual approach to improve performance in these cases has focused on the use of concurrency and parallelization techniques, which aim at producing the correct output model(s). In this paper we present our initial approach to produce target models that are accurate enough to provide meaningful and useful results, in an efficient way, but without having to be fully correct. We introduce the concept of Approximate Model Transformations.Ministerio de Ciencia e Innovación TIN2011-23795European Commission ICT Policy Support Programme 31785

    Towards Approximate Model Transformations

    Get PDF
    As the size and complexity of models grow, there is a need to count on novel mechanisms and tools for transforming them. This is required, e.g., when model transformations need to provide target models without having access to the complete source models or in really short time—as it happens, e.g., with streaming models—or with very large models for which the transformation algorithms become too slow to be of practical use if the complete population of a model is investigated. In this paper we introduce Approximate Model Transformations, which aim at producing target models that are accurate enough to provide meaningful and useful results in an efficient way, but without having to be fully correct. So to speak, this kind of transformations treats accuracy for execution performance. In particular, we redefine the traditional OCL operators used to query models (e.g., allInstances, select, collect, etc.) by adopting sampling techniques and analyse the accuracy of approximate model transformations results.Universidad de Málaga, Campus de Excelencia Internacional Andalucía Tech. European Commission under the ICT Policy Support Programme (grant no. 317859). Research Project TIN2011-23795

    Parallel In-place Model Transformations with LinTra

    Get PDF
    As software systems have grown large and complex in the last few years, the problems with which Model-Driven Development has to cope have increased at the same pace. In particular, the need to improve the performance and scalability of model transformations has become a critical issue. In previous work we introduced LinTra, a model transformation platform for the parallel execution of out-place model transformations. Nevertheless, in-place model transformations are required in several contexts and domains as well. In this paper we discuss the fundamentals of in-place model transformations in the light of their parallel execution and provide LinTra with an in-place execution mode.Ministerio de Ciencia e Innovación TIN2011-23795Ministerio de Economía y Competitividad TIN2014-52034-REuropean Commission ICT Policy Support Programme 31785
    corecore