Pablo Gómez Abajo in Estudiantes y Universitarios, Profesores y educadores, Informáticos Asociado a cargo de proyecto de investigación, Ingeniero en Informática, Ingeniero del Software • Universidad Autónoma de Madrid Jul 31, 2020 · 1 min read · +400

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

El pasado día 14 de julio realicé la defensa de mi tesis doctoral 'Un lenguaje de dominio específico para mutación de modelos', trabajo que he realizado bajo la dirección de Esther Guerra y Mercedes G. Merayo, y cuyo tutor ha sido Juan de Lara, obteniendo la calificación de Sobresaliente Cum Laude por la Universidad Autónoma de Madrid.

Un lenguaje de dominio específico para mutación de modelos
Agradezco a todas las personas gracias a quienes he podido llegar hasta aquí. Una vez alcanzado este objetivo a recuperar fuerzas lo que podamos y a seguir trabajando. Saludos y buenas vacaciones.

"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."

Leer más »