8,270 research outputs found

    EMFtoCSP: A Tool for the Lightweight Verification of EMF Models

    Get PDF
    International audienceThe increasing popularity of MDE results in the creation of larger models and model transformations, hence converting the specification of MDE artefacts in an error-prone task. Therefore, mechanisms to ensure quality and absence of errors in models are needed to assure the reliability of the MDE-based development process. Formal methods have proven their worth in the verification of software and hardware systems. However, the adoption of formal methods as a valid alternative to ensure model correctness is compromised for the inner complexity of the problem. To circumvent this complexity, it is common to impose limitations such as reducing the type of constructs that can appear in the model, or turning the verification process from automatic into user assisted. Since we consider these limitations to be counterproductive for the adoption of formal methods, in this paper we present EMFtoCSP, a new tool for the fully automatic, decidable and expressive verification of EMF models that uses constraint logic programming as the underlying formalism

    Category Theory and Model-Driven Engineering: From Formal Semantics to Design Patterns and Beyond

    Full text link
    There is a hidden intrigue in the title. CT is one of the most abstract mathematical disciplines, sometimes nicknamed "abstract nonsense". MDE is a recent trend in software development, industrially supported by standards, tools, and the status of a new "silver bullet". Surprisingly, categorical patterns turn out to be directly applicable to mathematical modeling of structures appearing in everyday MDE practice. Model merging, transformation, synchronization, and other important model management scenarios can be seen as executions of categorical specifications. Moreover, the paper aims to elucidate a claim that relationships between CT and MDE are more complex and richer than is normally assumed for "applied mathematics". CT provides a toolbox of design patterns and structural principles of real practical value for MDE. We will present examples of how an elementary categorical arrangement of a model management scenario reveals deficiencies in the architecture of modern tools automating the scenario.Comment: In Proceedings ACCAT 2012, arXiv:1208.430

    An Exploratory Study of Forces and Frictions affecting Large-Scale Model-Driven Development

    Full text link
    In this paper, we investigate model-driven engineering, reporting on an exploratory case-study conducted at a large automotive company. The study consisted of interviews with 20 engineers and managers working in different roles. We found that, in the context of a large organization, contextual forces dominate the cognitive issues of using model-driven technology. The four forces we identified that are likely independent of the particular abstractions chosen as the basis of software development are the need for diffing in software product lines, the needs for problem-specific languages and types, the need for live modeling in exploratory activities, and the need for point-to-point traceability between artifacts. We also identified triggers of accidental complexity, which we refer to as points of friction introduced by languages and tools. Examples of the friction points identified are insufficient support for model diffing, point-to-point traceability, and model changes at runtime.Comment: To appear in proceedings of MODELS 2012, LNCS Springe

    Model-driven Engineering IDE for Quality Assessment of Data-intensive Applications

    Full text link
    This article introduces a model-driven engineering (MDE) integrated development environment (IDE) for Data-Intensive Cloud Applications (DIA) with iterative quality enhancements. As part of the H2020 DICE project (ICT-9-2014, id 644869), a framework is being constructed and it is composed of a set of tools developed to support a new MDE methodology. One of these tools is the IDE which acts as the front-end of the methodology and plays a pivotal role in integrating the other tools of the framework. The IDE enables designers to produce from the architectural structure of the general application along with their properties and QoS/QoD annotations up to the deployment model. Administrators, quality assurance engineers or software architects may also run and examine the output of the design and analysis tools in addition to the designer in order to assess the DIA quality in an iterative process

    Heterogeneous verification of model transformations

    Get PDF
    Esta tesis trata sobre la verificación formal en el contexto de la Ingeniería Dirigida por Modelos (MDE por sus siglas en inglés). El paradigma propone un ciclo de vida de la ingeniería de software basado en una abstracción de su complejidad a través de la definición de modelos y en un proceso de construcción (semi)automático guiado por transformaciones de estos modelos. Nuestro propósito es abordar la verificación de transformaciones de modelos la cual incluye, por extensión, la verificación de sus modelos. Comenzamos analizando la literatura relacionada con la verificación de transformaciones de modelos para concluir que la heterogeneidad de las propiedades que interesa verificar y de los enfoques para hacerlo, sugiere la necesidad de utilizar diversos dominios lógicos, lo cual es la base de nuestra propuesta. En algunos casos puede ser necesario realizar una verificación heterogénea, es decir, utilizar diferentes formalismos para la verificación de cada una de las partes del problema completo. Además, es beneficioso permitir a los expertos formales elegir el dominio en el que se encuentran más capacitados para llevar a cabo una prueba formal. El principal problema reside en que el mantenimiento de múltiples representaciones formales de los elementos de MDE en diferentes dominios lógicos, puede ser costoso si no existe soporte automático o una relación formal clara entre estas representaciones. Motivados por esto, definimos un entorno unificado que permite la verificación formal transformaciones de modelos mediante el uso de métodos de verificación heterogéneos, de forma tal que es posible automatizar la traducción formal de los elementos de MDE entre dominios logicos. Nos basamos formalmente en la Teoría de Instituciones, la cual proporciona una base sólida para la representación de los elementos de MDE (a través de instituciones) sin depender de ningúningún dominio lógico específico. También proporciona una forma de especificar traducciones (a través de comorfismos) que preservan la semántica entre estos elementos y otros dominios lógicos. Nos basamos en estándares para la especificación de los elementos de MDE. De hecho, definimos una institución para la buena formación de los modelos especificada con una versión simplificada del MetaObject Facility y otra institución para transformaciones utilizando Query/View/Transformation Relations. No obstante, la idea puede ser generalizada a otros enfoques de transformación y lenguajes.Por último, demostramos la viabilidad del entorno mediante el desarrollo de un prototipo funcional soportado por el Heterogeneous Tool Set (HETS). HETS permite realizar una especificación heterogénea y provee facilidades para el monitoreo de su corrección global. Los elementos de MDE se conectan con otras lógicas ya soportadas en HETS (por ejemplo: lógica de primer orden, lógica modal, entre otras) a través del Common Algebraic Specification Language (CASL). Esta conexión se expresa teóricamente mediante comorfismos desde las instituciones de MDE a la institución subyacente en CASL. Finalmente, discutimos las principales contribuciones de la tesis. Esto deriva en futuras líneas de investigación que contribuyen a la adopción de métodos formales para la verificación en el contexto de MDE.This thesis is about formal verification in the context of the Model-Driven Engineering (MDE) paradigm. The paradigm proposes a software engineering life-cycle based on an abstraction from its complexity by defining models, and on a (semi)automatic construction process driven by model transformations. Our purpose is to address the verification of model transformations which includes, by extension, the verification of their models. We first review the literature on the verification of model transformations to conclude that the heterogeneity we find in the properties of interest to verify, and in the verification approaches, suggests the need of using different logical domains, which is the base of our proposal. In some cases it can be necessary to perform a heterogeneous verification, i.e. using different formalisms for the verification of each part of the whole problem. Moreover, it is useful to allow formal experts to choose the domain in which they are more skilled to address a formal proof. The main problem is that the maintenance of multiple formal representations of the MDE elements in different logical domains, can be expensive if there is no automated assistance or a clear formal relation between these representations. Motivated by this, we define a unified environment that allows formal verification of model transformations using heterogeneous verification approaches, in such a way that the formal translations of the MDE elements between logical domains can be automated. We formally base the environment on the Theory of Institutions, which provides a sound basis for representing MDE elements (as so called institutions) without depending on any specific logical domain. It also provides a way for specifying semantic-preserving translations (as so called comorphisms) from these elements to other logical domains. We use standards for the specification of the MDE elements. In fact, we define an institution for the well-formedness of models specified with a simplified version of the MetaObject Facility, and another institution for Query/View/Transformation Relations transformations. However, the idea can be generalized to other transformation approaches and languages. Finally, we evidence the feasibility of the environment by the development of a functional prototype supported by the Heterogeneous Tool Set (HETS). HETS supports heterogeneous specifications and provides capabilities for monitoring their overall correctness. The MDE elements are connected to the other logics already supported in HETS (e.g. first-order logic, modal logic, among others) through the Common Algebraic Specification Language (CASL). This connection is defined by means of comorphisms from the MDE institutions to the underlying institution of CASL. We carry out a final discussion of the main contributions of this thesis. This results in future research directions which contribute with the adoption of formal tools for the verification in the context of MDE

    A Model-Driven approach for functional test case generation

    Get PDF
    Test phase is one of the most critical phases in software engineering life cycle to assure the final system quality. In this context, functional system test cases verify that the system under test fulfills its functional specification. Thus, these test cases are frequently designed from the different scenarios and alternatives depicted in functional requirements. The objective of this paper is to introduce a systematic process based on the Model-Driven paradigm to automate the generation of functional test cases from functional requirements. For this aim, a set of metamodels and transformations and also a specific language domain to use them is presented. The paper finishes stating learned lessons from the trenches as well as relevant future work and conclusions that draw new research lines in the test cases generation context.Ministerio de Economía y Competitividad TIN2013-46928-C3-3-
    corecore