Show simple item record

Mining, Understanding and Integrating User Preferences in Software Refactoring Using Computational Search, Machine Learning, and Dimensionality Reduction

dc.contributor.authorDea, Troh Josselin
dc.contributor.advisorKessentini, Marouane
dc.date.accessioned2017-11-02T18:49:13Z
dc.date.availableNO_RESTRICTIONen_US
dc.date.available2017-11-02T18:49:13Z
dc.date.issued2017-12-16
dc.date.submitted2017-09-17
dc.identifier.urihttps://hdl.handle.net/2027.42/138970
dc.description.abstractSearch-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.isoen_USen_US
dc.subjectSearch-based Software Engineeringen_US
dc.subjectSoftware Refactoringen_US
dc.subjectInteractive Optimizationen_US
dc.subjectObjective Reductionen_US
dc.subjectSoftware Maintenance and Evolutionen_US
dc.subjectMachine Learningen_US
dc.subject.otherInformation Systems Engineeringen_US
dc.subject.otherComputer Scienceen_US
dc.titleMining, Understanding and Integrating User Preferences in Software Refactoring Using Computational Search, Machine Learning, and Dimensionality Reductionen_US
dc.typeThesisen_US
dc.description.thesisdegreenamePhDen_US
dc.description.thesisdegreedisciplineCollege of Engineering and Computer Scienceen_US
dc.description.thesisdegreegrantorUniversity of Michigan-Dearbornen_US
dc.contributor.committeememberAkingbehin, Kiumi
dc.contributor.committeememberGrosky, William
dc.contributor.committeememberMaxim, Bruce R.
dc.contributor.committeememberYi, Ya Sha
dc.identifier.uniqname51462916en_US
dc.description.bitstreamurlhttps://deepblue.lib.umich.edu/bitstream/2027.42/138970/1/Dea Final Dissertation.pdf
dc.identifier.orcid0000-0002-1665-4661en_US
dc.description.filedescriptionDescription of Dea Final Dissertation.pdf : Dissertation
dc.description.filedescriptionDescription of Troh Josselin Dea Signed Certification Form.pdf : Committee signature file
dc.identifier.name-orcidDea, Troh Josselin; 0000-0002-1665-4661en_US
dc.owningcollnameDissertations and Theses (Ph.D. and Master's)


Files in this item

Show simple item record

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.