• español
    • English
  • Login
  • English 
    • español
    • English

UniversidaddeCádiz

Área de Biblioteca, Archivo y Publicaciones
Communities and Collections
View Item 
  •   RODIN Home
  • Trabajos Académicos
  • Trabajos Fin de Grado
  • Grado en Ingeniería Informática - TFG
  • View Item
  •   RODIN Home
  • Trabajos Académicos
  • Trabajos Fin de Grado
  • Grado en Ingeniería Informática - TFG
  • View Item
JavaScript is disabled for your browser. Some features of this site may not work without it.

MuMiniZinc: Un sistema de mutaciones para el lenguaje de programación con restricciones MiniZinc

Thumbnail
Identificadores

URI: http://hdl.handle.net/10498/38427

Files
Memoria (1.297Mb)
Presentación (355.5Kb)
Statistics
View statistics
Share
Export
Export reference to MendeleyRefworksEndNoteBibTexRIS
Metadata
Show full item record
Author/s
Carmona Dionisio, Gonzalo
Date
2025-12-19
Advisor
Castro Cabrera, María CarmenAuthority UCA; García-Domínguez, Antonio
Department
Ingeniería Informática
Abstract
Este Trabajo de Fin de Grado se centra en el diseño y la implementación de un sistema de pruebas de mutaciones para MiniZinc, un lenguaje de programación de código abierto orientado al modelado de restricciones de alto nivel que permite expresar y resolver problemas de optimización. La prueba de mutaciones es una técnica de prueba de software que consiste en insertar errores artificiales en el código fuente con el objetivo de evaluar la capacidad de un conjunto de pruebas para identificar defectos de programación. La motivación de este trabajo no solo se basa en la ausencia, observada en la literatura, de un sistema de mutaciones específico para MiniZinc, sino también en la creciente importancia de garantizar la fiabilidad de los modelos desarrollados en contextos donde los errores pueden tener un impacto significativo, como en la logística, la planificación, la asignación de recursos o la investigación operativa. La prueba de mutaciones ofrece un enfoque objetivo para medir la capacidad de un conjunto de pruebas para detectar defectos, pero hasta ahora no se había adaptado al ecosistema de MiniZinc. Para cubrir esta carencia, se ha diseñado e implementado un conjunto de operadores de mutación que permite generar mutantes de programas, también denominados modelos, escritos en MiniZinc. Asimismo, se ha desarrollado una herramienta con una interfaz de intérprete de órdenes que automatiza el análisis de un modelo, la generación de los mutantes correspondientes, su ejecución y su comparación con el modelo original. Esto permite determinar la matriz de mutación, mediante la cual es posible identificar qué mutantes sobreviven, mueren o resultan en error. La herramienta es altamente configurable, lo que permite optimizar el proceso. Para evaluar la calidad del software desarrollado, se ha diseñado e implementado una batería de pruebas unitarias, de integración y de sistema. Además, se ha confeccionado un manual del usuario orientado al aprovechamiento de la herramienta, así como un manual del desarrollador destinado a facilitar su mantenimiento y la extensión de su funcionalidad en el futuro.
Subjects
pruebas de software; pruebas de mutaciones; MiniZinc; intérprete de órdenes; programación con restricciones
Collections
  • Grado en Ingeniería Informática - TFG [65]
  • Trabajos fin de grado Ing. Inf. [50]
Attribution-NoDerivatives 4.0 Internacional
This work is under a Creative Commons License Attribution-NoDerivatives 4.0 Internacional

Browse

All of RODINCommunities and CollectionsBy Issue DateAuthorsTitlesSubjectsThis CollectionBy Issue DateAuthorsTitlesSubjects

My Account

LoginRegister

Statistics

View Usage Statistics

Información adicional

AboutDeposit in RODINPoliciesGuidelinesRightsLinksStatisticsNewsFrequently Asked Questions

RODIN is available through

OpenAIREOAIsterRecolectaHispanaEuropeanaBaseDARTOATDGoogle Academic

Related links

Sherpa/RomeoDulcineaROAROpenDOARCreative CommonsORCID

RODIN está gestionado por el Área de Biblioteca, Archivo y Publicaciones de la Universidad de Cádiz

Contact informationSuggestionsUser Support