Ir al contenido

Documat


Resumen de Un lenguaje de dominio específico para mutación de modelos

Pablo Gómez-Abajo

  • español

    Las técnicas de mutación de software se utilizan en campos diversos como las pruebas de mutación, la pruebas de programas, la prueba de fórmulas lógicas, los algoritmos genéticos y la generación automática de ejercicios. Las soluciones existentes suelen utilizar un enfoque a medida, construyendo desde cero una solución específica para el problema que pretenden abordar. Este enfoque conlleva un esfuerzo elevado de implementación para cada caso, es propenso a errores, supone un alto coste de mantenimiento, y tiene como resultado la creación de numerosas soluciones cada una de las cuáles sólo resuelve un problema en concreto.

    Con el objetivo de proporcionar un enfoque genérico que ayude a superar estos inconvenientes, esta tesis presenta un lenguaje de dominio específico para mutación de modelos llamado Wodel, y su entorno de desarrollo. Wodel es independiente del dominio y puede utilizarse con cualquier lenguaje definido por medio de un meta-modelo. Incluye primitivas de mutación para creación, modificación, borrado, retipado y clonado de objetos, y para creación, modificación y borrado de referencias. Wodel proporciona facilidades de soporte al proceso de mutación, como la validación de los mutantes, un registro de las mutaciones aplicadas y la detección de mutantes equivalentes. También da soporte a la ingeniería de operadores de mutación mediante la generación de métricas de mutación y la síntesis automática de modelos semilla que aseguran la cobertura de todas las instrucciones de un programa Wodel, facilitando de este modo su prueba y validación.

    Además, Wodel es extensible y permite aprovechar sus funcionalidades para la mutación de modelos en aplicaciones de post-procesado. Para ilustrar dicha extensibilidad, esta tesis presenta dos de estas extensiones a Wodel: una para la generación automática de ejercicios de auto-evaluación para estudiantes, a la que se ha llamado Wodel-Edu; y otra para facilitar la creación de herramientas de pruebas de mutación para lenguajes de programación o de modelado, a la que se ha llamado Wodel-Test

  • English

    Software mutation techniques are used in different fields such as mutation testing, software testing, logic formulas testing, genetic algorithms and the automated generation of exercises. The existing solutions are usually ad-hoc, creating from scratch a specific solution for the faced problem. This approach involves a high implementation effort, it is error-prone, entails a high maintenance cost, and results in a variety of solutions each of which only solves a particular problem.

    With the purpose of providing a generic approach that alleviates these inconveniences, this thesis introduces a domain-specific language for model mutation called Wodel, and its development environment. Wodel is domain independent and can be used with any arbitrary language defined by a meta-model. It includes mutation primitives to create, modify, delete, retype and clone objects, and to create, modify and delete references. Wodel provides facilities to simplify the mutation process, such as model validation, a registry of the applied mutations and the detection of equivalent mutants. It also supports the engineering of mutation operators by the generation of metrics of the mutation programs and the automated synthesis of seed models which ensure full coverage of the statements in a Wodel program, hence easing its testing and validation.

    Additionally, Wodel is extensible and permits taking advantage of all its model mutation functionalities in post-processing applications. To illustrate this extensibility capability, this thesis reports on two of these extensions to Wodel: the first one targeted to the automated generation of self-assessment exercises for students, called Wodel-Edu; and the second one targeted to ease the creation of mutation testing tools for programming or modelling languages, called Wodel-Test


Fundación Dialnet

Mi Documat