Ingeniería del Software Dirigida por Modelos
URI permanente para esta colección:
Artículos en la categoría Ingeniería del Software Dirigida por Modelos publicados en las Actas de las XXIII Jornadas de Ingeniería del Software y Bases de Datos (JISBD 2018).
Notificar un error en esta colección
Examinar
Envíos recientes
Artículo Building Scalable Graphical Modelling Environments with EMFSplitter (tool demo)Garmendia, Antonio; Guerra, Esther; de Lara, Juan. Actas de las XXIII Jornadas de Ingeniería del Software y Bases de Datos (JISBD 2018), 2018-09-17.In Model-Driven Engineering the creation of Domain-Specific Modelling Languages (DSMLs) is a recurrent demanding task. Usually DSMLs are built in an ad-hoc manner and the generated environments do not scale well to face scenarios with complex systems. To improve this situation, we propose an approach to facilitate the engineering of DSMLs through a catalogue of patterns and a set of wizards to reduce the implementation time of such environments. Our approach is supported by a tool called EMFSplitter, which proposes a Modularity pattern to fragment the models and a Graphical Representation pattern, for the definition of graphical and tabular syntax.Artículo Evaluación de la Sobrecarga en Pruebas de Transformaciones de ModelosRodríguez-Echeverría, Roberto; Macías, Fernando; Conejero, José María; Preciado, Juan Carlos; Prieto Ramos, Álvaro E.; Rutle, Adrian. Actas de las XXIII Jornadas de Ingeniería del Software y Bases de Datos (JISBD 2018), 2018-09-17.En el Desarrollo Software Dirigido por Modelos, el desarrollo y mantenimiento de transformaciones entre modelos conlleva grandes costes. La definición de pruebas permite mejorar la calidad y reducir los costes de estos procesos. Sin embargo, hasta ahora no se ha considerado la sobrecarga introducida por las actuales propuestas de pruebas. En este trabajo, se identifican las principales fuentes de sobrecarga en propuestas de pruebas basadas en contratos.Artículo Quid: A web-based DSL for defining User Interfaces applied to Web ComponentsMolina, Pedro J.. Actas de las XXIII Jornadas de Ingeniería del Software y Bases de Datos (JISBD 2018), 2018-09-17.User Interface construction is a recurrent topic in Software Engineering: multiples tools ranging from textual, graphical design tools exists to help in this task. On the other hand, the fast pace of front-end industrial frameworks makes such editors tools obsolete as soon as new technology emerges. The work presented here, introduces <>, a web based DSL with focus on minimal accidental complexity, removing accessory markup and a WUYIWYG environment to provide real-time feedback to users. Moreover, the UI specification built in this way is catalog neutral: in the way its primitives can be extended, and target platform agnostic: using model transformations and code generation for generating software artifacts like Native Web Components or Angular Elements code.Resumen Automated inference of likely metamorphic relations for model transformationsTroya, Javier; Segura Rueda, Sergio; Ruiz Cortés, Antonio. Actas de las XXIII Jornadas de Ingeniería del Software y Bases de Datos (JISBD 2018), 2018-09-17.Model transformations play a cornerstone role in Model-Driven Engineering (MDE) as they provide the essential mechanisms for manipulating and transforming models. Checking whether the output of a model transformation is correct is a manual and errorprone task, referred to as the oracle problem. Metamorphic testing alleviates the oracle problem by exploiting the relations among different inputs and outputs of the program under test, so-called metamorphic relations (MRs). One of the main challenges in metamorphic testing is the automated inference of likely MRs. This paper proposes an approach to automatically infer likely MRs for ATL model transformations, where the tester does not need to have any knowledge of the transformation. The inferred MRs aim at detecting faults in model transformations in three application scenarios, namely regression testing, incremental transformations and migrations among transformation languages. In the experiments performed, the inferred likely MRs have proved to be quite accurate, with a precision of 96.4% from a total of 4101 true positives out of 4254 MRs inferred. Furthermore, they have been useful for identifying mutants in regression testing scenarios, with a mutation score of 93.3%. Finally, our approach can be used in conjunction with current approaches for the automatic generation of test cases. Artículo publicado en The Journal of Systems and Software, Vol 136, pp 188-208 (Available Online May 2017; Final Published Version February 2018) - Q1. http://dx.doi.org/10.1016/j.jss.2017.05.043Artículo Hacia la integración de lenguajes de modelado para el diseño de serviciosPérez Blanco, Francisco Javier; Vara, Juan Manuel; De Castro, María Valeria; Granada, David; Marcos Martínez, Esperanza. Actas de las XXIII Jornadas de Ingeniería del Software y Bases de Datos (JISBD 2018), 2018-09-17.A día de hoy existen diversas técnicas o notaciones para el modelado de negocio y/o procesos de negocio que permiten, con mayor o menor nivel de detalle, comprender, conceptualizar y representar la forma en que una organización es capaz de generar valor. Estas técnicas presentan similitudes y diferencias, pero en la mayoría de los casos la información que proporcionan es complementaria. Sin embargo, en la actualidad no existe un entorno tecnológico que permita trabajar eficazmente con varias de estas notaciones. Para afrontar este problema, en trabajos anteriores abordamos el desarrollo de un entorno de modelado que integrase un conjunto de DSLs visuales para dar soporte a la gestión integrada de diferentes notaciones para el modelado de negocio, como Canvas, e3value, Service Blueprint, PCN o BPMN. Una vez que disponemos de una primera versión funcional de este entorno, el siguiente paso que pretendemos abordar es el que se expone en este trabajo: el análisis de las correspondencias entre esas notaciones, y la consecuente automatización de las tareas o actividades que pueden derivarse de la identificación de esas relaciones.Resumen Smart Bound Selection for the Verification of UML/OCL Class DiagramsClarisó, Robert; González, Carlos A.; Cabot Sagrera, Jordi. Actas de las XXIII Jornadas de Ingeniería del Software y Bases de Datos (JISBD 2018), 2018-09-17.Correctness of UML class diagrams annotated with OCL constraints can be checked using bounded verification techniques, e.g., SAT or constraint programming (CP) solvers. Bounded verification detects faults efficiently but, on the other hand, the absence of faults does not guarantee a correct behavior outside the bounded domain. Hence, choosing suitable bounds is a non-trivial process as there is a trade-off between the verification time (faster for smaller domains) and the confidence in the result (better for larger domains). Unfortunately, bounded verification tools provide little support in the bound selection process. In this paper, we present a technique that can be used to (i) automatically infer verification bounds whenever possible, (ii) tighten a set of bounds proposed by the user and (iii) guide the user in the bound selection process. This approach may increase the usability of UML/OCL bounded verification tools and improve the efficiency of the verification process. This paper has been published in IEEE Transactions on Software Engineering [http://dx.doi.org/10.1109/TSE.2017.2777830]Artículo RoQME: Dealing with Non-Functional Properties through Global Robot QoS MetricsVicente-Chicote, Cristina; Berrocal, José Javier; García Alonso, José Manuel; Hernández Núñez, Juan María; Bandera, Antonio J.; Martínez Cruz, Jesús; Romero-Garcés, Juan Adrian; Font, Roberto. Actas de las XXIII Jornadas de Ingeniería del Software y Bases de Datos (JISBD 2018), 2018-09-17.Non-functional properties are an essential part of any software solution. There is a lot of literature on what non-functional properties are but, unfortunately, there is also a lot of disagreement and different points of view on how to deal with them. Non-functional properties, such as safety or dependability, become particularly relevant in the context of robotics. In the EU H2020 RobMoSys Project, non-functional properties are treated as first-class citizens and considered key added-value services. In this vein, the RoQME Integrated Technical Project, funded by RobMoSys, aims at contributing a model-driven tool-chain for dealing with system-level non-functional properties, enabling the specification of global robot Quality of Service (QoS) metrics. The estimation of these metrics at runtime, in terms of the contextual information available, can then be used for different purposes, such as robot behavior adaptation or benchmarking.Artículo Una propuesta de editor gráfico para el desarrollo de aplicaciones multiplaformaAlulema Flores, Darwin Omar; Criado, Javier; Iribarne, Luis. Actas de las XXIII Jornadas de Ingeniería del Software y Bases de Datos (JISBD 2018), 2018-09-17.El Internet de las Cosas (IoT) cubre una gran variedad de dispositivos y tecnologías. Esto permite que se puedan crear aplicaciones muy diversas de IoT, como por ejemplo en el ámbito de las Smart Cities, Smart Agro, Smart Buildings, Smart Home, y Smart Health. Cada uno de estos escenarios requiere que personas y objetos se interconecten. Para llevar a cabo esta tarea, los desarrolladores deben tener un alto grado de conocimiento de los lenguajes de programación que se emplean en cada plataforma y las tecnologías sobre las cuales se ejecutan. El artículo presenta una solución basada en MDE para facilitar a los desarrolladores la implementación de aplicaciones para el IoT, sin necesidad de conocer en profundidad todas las características de los escenarios, ni los lenguajes de programación de cada una de las plataformas.Resumen Practical Update Management in Ontology-based Data AccessDe Giacomo, Giuseppe; Lembo, Domenico; Oriol, Xavier; Savo, Domenico Fabio; Teniente, Ernest. Actas de las XXIII Jornadas de Ingeniería del Software y Bases de Datos (JISBD 2018), 2018-09-17.Ontology-based Data Access (OBDA) is gaining importance both scientifically and practically. However, little attention has been paid so far to the problem of updating OBDA systems. This is an essential issue if we want to be able to cope with modifications of data both at the ontology and at the source level, while maintaining the independence of the data sources. In this paper, we propose mechanisms to properly handle updates in this context. We show that updating data both at the ontology and source level is first-order rewritable. We also provide a practical implementation of such updating mechanisms based on non-recursive Datalog.Artículo Confianza e Incertidumbre en Modelos y Transformaciones de ModelosBurgueño, Lola; Barquero, Gala; Moreno, Nathalie; Bertoa, Manuel F.; Vallecillo, Antonio. Actas de las XXIII Jornadas de Ingeniería del Software y Bases de Datos (JISBD 2018), 2018-09-17.La incertidumbre, tanto en los datos como en los mecanismos que manipulan y operan sobre ellos, es un tema crucial en sistemas que trabajan con entornos físicos. Una incertidumbre que puede ser debida a diversos factores, como fuentes de datos poco fiables, tolerancia en las mediciones o la incapacidad para determinar si un determinado evento ha sucedido realmente o no. En este trabajo proponemos el uso de modelos con confianza, donde los objetos pueden llevar asociadas probabilidades. Al igual que en los modelos, la incertidumbre puede trasladarse a las transformaciones de modelos, donde las reglas también pueden estar sujetas a incertidumbre.Resumen A tool to support the definition and enactment of model-driven migration processesBermúdez Ruiz, Francisco Javier; Sánchez Ramón, Óscar; García Molina, Jesús Joaquín. Actas de las XXIII Jornadas de Ingeniería del Software y Bases de Datos (JISBD 2018), 2018-09-17.The Journal of Systems and Software, num. 128 (March 2017) pages: 106–129 DOI: http://dx.doi.org/10.1016/j.jss.2017.03.009 2016 Impact Factor: 2.444 (Q1 - rank 22/106) 5-year Impact Factor: 2.619 ABSTRACT One of the main challenges to achieve the industrial adoption of Model-Driven Engineering (MDE) paradigm is building tools able to support model-driven software processes. We present a tool for the definition and enactment of model-driven migration processes. We have created a SPEM-based language for defining Abstract Migration models that represent an MDE migration solution for a particular pair of source and target technologies. For each legacy application to be migrated, the Abstract Migration model is transformed into a Concrete Migration model which contains all the information needed for the enactment. Then, these models are enacted by means of a process interpreter which generates Trac tickets for executing automated tasks by means of Ant scripts and managing manual tasks with the Mylyn tool. Our work has therefore two main contributions: i) it proposes a novel solution for the enactment that integrates the execution of the automated tasks with the generation of tickets to support the manual tasks, and ii) it describes how MDE techniques can be used to implement process engineering tools, in particular migration processes. The article presents the approach and describes in detail the essential aspects of our tool.Artículo Evaluación automática de modelos aplicando técnicas de MBECriado, Javier; Cañadas, Joaquín; Iribarne, Luis. Actas de las XXIII Jornadas de Ingeniería del Software y Bases de Datos (JISBD 2018), 2018-09-17.La construcción de modelos, como proceso de abstracción para definir una solución software, es una tarea que requiere ingenieros con cierta experiencia. Por un lado, modelos diferentes pueden ser igual de válidos para describir una misma solución y, por otro lado, disponer de una guía durante el aprendizaje de tareas de modelado puede ayudar a optimizar el proceso de desarrollo. Este artículo describe una propuesta para dar soporte a la evaluación de modelos utilizados durante las fases de análisis y diseño de un desarrollo de software. En particular, nuestro trabajo se aplica en la evaluación de modelos de casos de uso, clases y secuencias, como artefactos principales en la captura de requisitos, la descomposición modular y la descripción de comportamientos, respectivamente. Para evaluar dichos modelos, se ejecuta un conjunto de pruebas unitarias que son creadas automáticamente a partir de modelos de pruebas definidos conforme a un lenguaje específico de dominio.Resumen Formally Modeling, Executing, and Testing Service-Oriented Systems with UML and OCLBurgueño, Lola; Gogolla, Martin. Actas de las XXIII Jornadas de Ingeniería del Software y Bases de Datos (JISBD 2018), 2018-09-17.One of the issues that developers of service-oriented systems currently discuss is the lack of practical, but formal modeling notations and tools that can address the many different, important aspects. This paper presents an approach to model structural and behavioral properties of service-oriented systems with UML and OCL models. Essential service-oriented concepts as service request, service provision or orchestration are formally represented by UML concepts. The models can be executed, tested and analyzed. Feedback is given to the developer in terms of the UML and OCL model. Our approach supports the automatic generation of test scenarios in which, for example, the availability of services can be checked. Furthermore, the consistency of the service model can be proved by constructing test scenarios.Artículo Una experiencia con transformaciones modelo-modelo en un proyecto de modernizaciónFernández Candel, Carlos Javier; García Molina, Jesús Joaquín; Bermúdez Ruiz, Francisco Javier; Sevilla Ruiz, Diego. Actas de las XXIII Jornadas de Ingeniería del Software y Bases de Datos (JISBD 2018), 2018-09-17.Las transformaciones modelo-modelo en procesos de reingeniería, en especial en la etapa de ingeniería inversa, suelen ser complejas e implican la escritura de mucho código imperativo. Este hecho junto a la falta de madurez de los lenguajes y entornos para el desarrollo de este tipo de transformaciones fueron los principales factores que influyeron en la decisión de usar Java y el API EMF dentro de un proyecto de migración de aplicaciones Oracle Forms a Java. En este artículo se presentan los resultados iniciales de una comparación entre diferentes soluciones para escribir transformaciones modelo-modelo a partir de las transformaciones implementadas en ese proyecto.Resumen Improving feature location in long-living model-based product families designed with sustainability goalsCetina Englada, Carlos; Font, Jaime; Arcega, Lorena; Pérez, Francisca. Actas de las XXIII Jornadas de Ingeniería del Software y Bases de Datos (JISBD 2018), 2018-09-17.The benefits of Software Product Lines (SPL) are very appealing: software development becomes better, faster, and cheaper. Unfortunately, these benefits come at the expense of a migration from a family of products to a SPL. Feature Location could be useful in achieving the transition to SPLs. This work presents our FeLLaCaM approach for Feature Location. Our approach calculates similarity to a description of the feature to locate, occurrences where the candidate features remain unchanged, and changes performed to the candidate features throughout the retrospective of the product family. We evaluated our approach in two long-living industrial domains: a model-based family of firmwares for induction hobs that was developed over more than 15 years, and a model-based family of PLC software to control trains that was developed over more than 25 years. In our evaluation, we compare our FeLLaCaM approach with two other approaches for Feature Location: (1) FLL (Feature Location through Latent Semantic Analysis) and (2) FLC (Feature Location through Comparisons). We measure the performance of FeLLaCaM, FLL, and FLC in terms of recall, precision, Matthews Correlation Coefficient, and Area Under the Receiver Operating Characteristics curve. The results show that FeLLaCaM outperforms FLL and FLC.Artículo The MegaM@Rt2 ECSEL Project: MegaModelling at Runtime — Scalable Model-based Framework for Continuous Development and Runtime Validation of Complex SystemsGómez, Abel; Ávila-García, Orlando; Cabot Sagrera, Jordi; Juárez, José Ramón; Urbieta, Aitor; Villar, Eugenio. Actas de las XXIII Jornadas de Ingeniería del Software y Bases de Datos (JISBD 2018), 2018-09-17.A major challenge for the European electronic components and systems (ECS) industry is to increase productivity and reduce costs while ensuring safety and quality. Model-Driven Engineering (MDE) principles have already shown valuable capabilities for the development of ECSs but still need to scale to support real-world scenarios implied by the full deployment and use of complex electronic systems, such as Cyber-Physical Systems, and real-time systems. Moreover, maintaining efficient traceability, integration and communication between fundamental stages of the development lifecycle (i.e., design time and runtime) is another challenge to the scalability of MDE tools and techniques. This paper presents "MegaModelling at runtime -- Scalable model-based framework for continuous development and runtime validation of complex systems" (MegaM@Rt2), an ECSEL--JU project whose main goal is to address the above mentioned challenges. Driven by both large and small industrial enterprises, with the support of research partners and technology providers, MegaM@Rt2 aims to deliver a framework of tools and methods for: (i) system engineering/design and continuous development,(ii) related runtime analysis, and (iii) global model and traceability management.Artículo Towards a model-driven engineering solution for language independent mutation testingGómez-Abajo, Pablo; Guerra, Esther; de Lara, Juan; Merayo, Mercedes G.. Actas de las XXIII Jornadas de Ingeniería del Software y Bases de Datos (JISBD 2018), 2018-09-17.Mutation testing is a technique to assess test suite adequacy to distinguish between correct and incorrect programs. Mutation testing applies one or more small changes to a program to obtain variants called mutants. The adequacy of a test suite is measured by determining how many of the mutants it distinguishes from the original program. There are many works about mutation testing, but the existing approaches focus on a specific programming language, and usually, it is not easy to customize the set of mutation operators. In this paper, we present Wodel-Test, an extension of the Wodel tool that implements a language-independent mutation testing framework based on model-driven engineering principles.