260 research outputs found

    On the Industrial Adoption of Model Driven Engineering. Is your company ready for MDE?

    Get PDF
    Model Driven Engineering (MDE) is an approach to software development where models play a central role in all software engineering processes. Conceived to provide significant gains in productivity, portability, maintainability and interoperability, MDE is now starting to be effec- tively used in industry. Thus, companies are beginning to evaluate their possibilities for adopting it. This paper examines the current state of MDE in industry, summarizes the current obstacles for adoption, and discusses the advantages that it should bring to businesses and its limitations. Finally, some ideas for a smoother transition towards a wider adoption of MDE are outlinedModel Driven Engineering (MDE) – Ingeniería Basada en Modelos en español – es un enfoque del desarrollo del software, donde los modelos tienen un papel central en todos los procesos de ingeniería de software. Este enfoque se concibe para aportar importantes ganancias en la productividad, portabilidad, el mantenimiento, y la interoperabilidad. Además, ahora el MDE está comenzando a ser usado de forma efectiva en la industria. Por ello, las empresas están empezando a evaluar sus posibilidades para adoptarlo. Este artículo examina el actual estado del MDE en la industria, resume los presentes obstáculos para su adopción, y debate las ventajas que debería de aportar a las empresas, y sus limitaciones. Finalmente, se destacan algunas ideas para una fácil transición hacia una amplia adopción del MDE

    Analysis of the Scientific Production of the Spanish Software Engineering Community

    Get PDF
    Our group has been working on a report for the Spanish Society of Software Engineering and Software Development Technologies (SISTEDES) to provide a general overview of the Spanish scientific production and its contributions worldwide in the field of Software Engineering. Although a Database solution could have been used, we decided to employ Model-Driven Development (MDD) techniques in order to evaluate their applicability, suitability and fitness for these kinds of purposes, and to learn from the experience in this domain, which combines data integration, large scale models, and complex queries.Universidad de Málaga. Campus de Excelencia Internacional Andalucía Tech

    Analysis of the scientific production of the Spanish Software Engineering Community

    Get PDF
    Our group has been working on a report for the Spanish Society of Software Engineering and Software Development Technologies (SISTEDES) to provide a general overview of the Spanish scientific production and its contributions worldwide in the field of Software Engineering. Although a Database solution could have been used, we decided to employ Model-Driven Development (MDD) techniques in order to evaluate their applicability, suitability and fitness for these kinds of purposes, and to learn from the experience in this domain, which combines data integration, large scale models, and complex queries.Universidad de Málaga. Campus de Excelencia Internacional Andalucía Tech

    Concurrent Model Transformations with Linda

    Get PDF
    Nowadays, model transformations languages and engines use a sequential execution model. This is, only one execution thread deals with the whole transformation. However, model transformations dealing with very large models, such as those used in biology or aerospace applications, require concurrent solutions in order to speed up their performance. In this ongoing work we explore the use of Linda for implementing a set of basic mechanisms to enable concurrent model transformations, and present our initial results.Proyectos TIN2011-23795, TIN2011-15497-E y AndalucĂ­a Tech Campus de Excelencia

    A Linda-based Platform for the Parallel Execution of Out-place Model Transformations

    Get PDF
    Context: The performance and scalability of model transformations is gaining interest as industry is progressively adopting model-driven techniques and multicore computers are becoming commonplace. However, existing model transformation engines are mostly based on sequential and in-memory execution strategies, and thus their capabilities to transform large models in parallel and distributed environments are limited. Objective: This paper presents a solution that provides concurrency and distribution to model transformations. Method: Inspired by the concepts and principles of the Linda coordination language, and the use of data parallelism to achieve parallelization, a novel Javabased execution platform is introduced. It offers a set of core features for the parallel execution of out-place transformations that can be used as a target for high-level transformation language compilers. Results: Significant gains in performance and scalability of this platform are reported with regard to existing model transformation solutions. These results are demonstrated by running a model transformation test suite, and by its comparison against several state-of-the-art model transformation engines. Conclusion: Our Linda-based approach to the concurrent execution of model transformations can serve as a platform for their scalable and efficient implementation in parallel and distributed environments.Universidad de Málaga. Campus de Excelencia Internacional Andalucía Tech

    Teaching Model Views with UML and OCL

    Get PDF
    The specification of any non-trivial system is normally composed of a set of models. Each model describes a different view of the system, focuses on a particular set of concerns, and uses its own notation. For example, UML defines a set of diagrams for modelling the structure and behavior of any software system. One of the problems we perceived with our students is that they are able to understand each one of these diagrams, but they have problems understanding how they are related, and how the overall system specifications work when composed of a set of views. This paper presents a simple case study that we have developed and successfully used in class, which permits students developing the principal views of a system, simulate them, and check their relations.Universidad de Málaga. Campus de Excelencia Internacional Andalucía Tech

    Towards Distributed Model Transformations with LinTra

    Get PDF
    Performance and scalability of model transformations are becoming prominent topics in Model-Driven Engineering. In previous works we introduced LinTra, a platform for executing model transformations in parallel. LinTra is based on the Linda model of a coordination language and is intended to be used as a middleware where high-level model transformation languages are compiled. In this paper we present the initial results of our analyses on the scalability of out-place model-to-model transformation executions in LinTra when the models and the processing elements are distributed over a set of machines.Universidad de Málaga. Campus de Excelencia Internacional Andalucía Tech

    On the Modular Specification of NFPs: A Case Study

    Get PDF
    The modular specification of non-functional properties of systems is a current challenge of Software Engineering, for which no clear solution exists. However, in the case of Domain-Specific Languages some successful proposals are starting to emerge, combining model-driven techniques with aspect-weaving mechanisms. In this paper we show one of these approaches in practice, and present the implementation we have developed to fully support it. We apply our approach for the specification and monitoring of non-functional properties using observers to a case study, illustrating how generic observers defining non-functional properties can be defined in an independent manner. Then, correspondences between these observers and the domain-specific model of the system can be established, and then weaved into a unified system specification using ATL model transformation. Such a unified specification can also be analyzed in a natural way to obtain the required non-functional properties of the system.This work is partially funded by Research Projects TIN2011-23795 and TIN2011-15497-E

    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

    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
    • …
    corecore