Mining, Understanding and Integrating User Preferences in Software Refactoring Using Computational Search, Machine Learning, and Dimensionality Reduction
dc.contributor.author | Dea, Troh Josselin | |
dc.contributor.advisor | Kessentini, Marouane | |
dc.date.accessioned | 2017-11-02T18:49:13Z | |
dc.date.available | NO_RESTRICTION | en_US |
dc.date.available | 2017-11-02T18:49:13Z | |
dc.date.issued | 2017-12-16 | |
dc.date.submitted | 2017-09-17 | |
dc.identifier.uri | https://hdl.handle.net/2027.42/138970 | |
dc.description.abstract | Search-Based Software Engineering (SBSE) is a software development practice which focuses on couching software engineering problems as optimization problems using metaheuristic techniques to automate the search for near optimal solutions to those problems. While SBSE has been successfully applied to a wide variety of software engineering problems, our understanding of the extent and nature of how software engineering problems can be formulated as automated or semi-automated search is still lacking. The majority of software engineering solutions are very subjective and present difficulties to formally define fitness functions to evaluate them. Current studies focus on guiding the search of optimal solutions rather than performing it. It is unclear yet the degree of interaction required with software engineers during the optimization process and how to reduce it. In this work, we focus on search-based software maintenance and evolution problems including software refactoring and software remodularization to improve the quality of systems. We propose to address the following challenges: • A major challenge in adapting a search-based technique for a software engineering problem is the definition of the fitness function. In most cases, fitness functions are ill-defined or subjective. • Most existing refactoring studies do not include the developer in the loop to analyze suggested refactoring solutions, and give their feedback during the optimization process. In addition, some quality metrics are cost-expensive leading to cost-expensive fitness functions. Moreover, while quality metrics evaluate the structural improvements of the refactored system, it is impossible to evaluate the semantic coherence of the design without user interactions. • Finally, several metrics can be dependent and correlated, thus it may be possible to reduce the number of objectives/dimensions when addressing refactoring problems. To address the above challenges, this work provides new techniques and tools to formulate software refactoring as scalable and learning-based search problem. We proposed novel interactive learning-based techniques using machine learning to incorporate developers knowledge and preferences in the search, resulting in more efficient and cost-effective search-based refactoring recommendation systems. We designed and implemented novel objective reduction SBSE methodologies to support scalable number of objectives. The proposed solutions were empirically evaluated in academic (open-source systems) and industrial settings. | en_US |
dc.language.iso | en_US | en_US |
dc.subject | Search-based Software Engineering | en_US |
dc.subject | Software Refactoring | en_US |
dc.subject | Interactive Optimization | en_US |
dc.subject | Objective Reduction | en_US |
dc.subject | Software Maintenance and Evolution | en_US |
dc.subject | Machine Learning | en_US |
dc.subject.other | Information Systems Engineering | en_US |
dc.subject.other | Computer Science | en_US |
dc.title | Mining, Understanding and Integrating User Preferences in Software Refactoring Using Computational Search, Machine Learning, and Dimensionality Reduction | en_US |
dc.type | Thesis | en_US |
dc.description.thesisdegreename | PhD | en_US |
dc.description.thesisdegreediscipline | College of Engineering and Computer Science | en_US |
dc.description.thesisdegreegrantor | University of Michigan-Dearborn | en_US |
dc.contributor.committeemember | Akingbehin, Kiumi | |
dc.contributor.committeemember | Grosky, William | |
dc.contributor.committeemember | Maxim, Bruce R. | |
dc.contributor.committeemember | Yi, Ya Sha | |
dc.identifier.uniqname | 51462916 | en_US |
dc.description.bitstreamurl | https://deepblue.lib.umich.edu/bitstream/2027.42/138970/1/Dea Final Dissertation.pdf | |
dc.identifier.orcid | 0000-0002-1665-4661 | en_US |
dc.description.filedescription | Description of Dea Final Dissertation.pdf : Dissertation | |
dc.description.filedescription | Description of Troh Josselin Dea Signed Certification Form.pdf : Committee signature file | |
dc.identifier.name-orcid | Dea, Troh Josselin; 0000-0002-1665-4661 | en_US |
dc.owningcollname | Dissertations and Theses (Ph.D. and Master's) |
Files in this item
Remediation of Harmful Language
The University of Michigan Library aims to describe library materials in a way that respects the people and communities who create, use, and are represented in our collections. Report harmful or offensive language in catalog records, finding aids, or elsewhere in our collections anonymously through our metadata feedback form. More information at Remediation of Harmful Language.
Accessibility
If you are unable to use this file in its current format, please select the Contact Us link and we can modify it to make it more accessible to you.