Heuristic Algorithms for the Optimization of Software Quality

dc.contributor.authorYuste Moure, Javier
dc.date.accessioned2025-01-23T11:12:34Z
dc.date.available2025-01-23T11:12:34Z
dc.date.issued2024
dc.descriptionTesis Doctoral leída en la Universidad Rey Juan Carlos de Madrid en 2024. Directores: Abraham Duarte Muñoz Eduardo García Pardo
dc.description.abstractSoftware quality is of utmost importance for the correct functioning of modern systems. The quality of software projects is measured by different attributes, such as efficiency, security, or understandability, among others. Without a proper design, the code becomes prone to errors and unsatisfactory. In this doctoral thesis, we study the optimization of software quality. In particular, we focus on the optimization of software maintainability, which is critical to the long-term success of software projects. The subject studied is known as the Software Module Clustering Problem, which is a well-known family of optimization problems in the area of Search-Based Software Engineering. We study four of these problems based on different quality metrics used to evaluate software systems. Two of them, Modularization Quality and Function of Complexity Balance, are studied as mono-objective problems. The other two problems, Maximizing Cluster Approach and Equal-size Cluster Approach, consider multiple quality metrics and are studied as multi-objective optimization problems. Given the complexity of these problems, which have been proven to be NP-complete, exact methods are impractical for the size of real-world software projects. Therefore, this doctoral thesis focuses on approximate methods. In particular, the use of three metaheuristic procedures is proposed: a Greedy-Randomized Adaptive Search Procedure combined with Variable Neighborhood Descent, a General Variable Neighborhood Search, and a Multi-Objective General Variable Neighborhood Search. To improve the efficiency of the aforementioned methods, several novel strategies are introduced, and an exhaustive study of neighborhood structures and their exploration is performed. Finally, the proposed methods have been validated by favorably comparing their performance with the best algorithms available in the related literature, on a dataset obtained from real software instances. The significance of the results obtained is supported by statistical tests.
dc.identifier.urihttps://hdl.handle.net/10115/61937
dc.language.isoen
dc.publisherUniversidad Rey Juan Carlos
dc.rightsAttribution-NonCommercial-NoDerivatives 4.0 Internationalen
dc.rights.accessRightsinfo:eu-repo/semantics/openAccess
dc.rights.urihttp://creativecommons.org/licenses/by-nc-nd/4.0/
dc.subjectSoftware Quality
dc.titleHeuristic Algorithms for the Optimization of Software Quality
dc.typeThesis

Archivos

Bloque original

Mostrando 1 - 1 de 1
Cargando...
Miniatura
Nombre:
TesisDoctoral_JavierYuste.pdf
Tamaño:
2.77 MB
Formato:
Adobe Portable Document Format

Colecciones