A Multi-Level Framework for the Detection, Prioritization and Testing of Software Design Defects
dc.contributor.author | Sahin, Dilan | |
dc.contributor.advisor | Kessentini, Marouane | |
dc.date.accessioned | 2017-02-09T04:17:35Z | |
dc.date.available | NO_RESTRICTION | en_US |
dc.date.available | 2017-02-09T04:17:35Z | |
dc.date.issued | 2016-12-17 | |
dc.date.submitted | 2016-10-11 | |
dc.identifier.uri | https://hdl.handle.net/2027.42/136075 | |
dc.description.abstract | Large-scale software systems exhibit high complexity and become difficult to maintain. In fact, it has been reported that software cost dedicated to maintenance and evolution activities is more than 80% of the total software costs. In particular, object-oriented software systems need to follow some traditional design principles such as data abstraction, encapsulation, and modularity. However, some of these non-functional requirements can be violated by developers for many reasons such as inexperience with object-oriented design principles, deadline stress. This high cost of maintenance activities could potentially be greatly reduced by providing automatic or semi-automatic solutions to increase system‟s comprehensibility, adaptability and extensibility to avoid bad-practices. The detection of refactoring opportunities focuses on the detection of bad smells, also called antipatterns, which have been recognized as the design situations that may cause software failures indirectly. The correction of one bad smell may influence other bad smells. Thus, the order of fixing bad smells is important to reduce the effort and maximize the refactoring benefits. However, very few studies addressed the problem of finding the optimal sequence in which the refactoring opportunities, such as bad smells, should be ordered. Few other studies tried to prioritize refactoring opportunities based on the types of bad smells to determine their severity. However, the correction of severe bad smells may require a high effort which should be optimized and the relationships between the different bad smells are not considered during the prioritization process. The main goal of this research is to help software engineers to refactor large-scale systems with a minimum effort and few interactions including the detection, management and testing of refactoring opportunities. We report the results of an empirical study with an implementation of our bi-level approach. The obtained results provide evidence to support the claim that our proposal is more efficient, on average, than existing techniques based on a benchmark of 9 open source systems and 1 industrial project. We have also evaluated the relevance and usefulness of the proposed bi-level framework for software engineers to improve the quality of their systems and support the detection of transformation errors by generating efficient test cases. | en_US |
dc.language.iso | en_US | en_US |
dc.subject | Search-based Software Engineering | en_US |
dc.subject | Model-Driven Engineering | en_US |
dc.subject | Refactoring | en_US |
dc.subject | Bi-level Optimization | en_US |
dc.subject.other | Information Systems Engineering | en_US |
dc.title | A Multi-Level Framework for the Detection, Prioritization and Testing of Software Design Defects | en_US |
dc.type | Thesis | en_US |
dc.description.thesisdegreename | PhD | en_US |
dc.description.thesisdegreediscipline | Information Systems Engineering, College of Engineering and Computer Science | en_US |
dc.description.thesisdegreegrantor | University of Michigan-Dearborn | en_US |
dc.contributor.committeemember | Grosky, William | |
dc.contributor.committeemember | Jia, Bochen | |
dc.contributor.committeemember | Maxim, Bruce | |
dc.identifier.uniqname | 88972662 | en_US |
dc.description.bitstreamurl | http://deepblue.lib.umich.edu/bitstream/2027.42/136075/1/Dilan_Sahin_Final Dissertation.pdf | |
dc.identifier.orcid | 0000-0003-0246-7213 | en_US |
dc.description.filedescription | Description of Dilan_Sahin_Final Dissertation.pdf : Dissertation | |
dc.identifier.name-orcid | Sahin, Dilan; 0000-0003-0246-7213 | 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 its collections in a way that respects the people and communities who create, use, and are represented in them. We encourage you to Contact Us anonymously if you encounter harmful or problematic language in catalog records or finding aids. More information about our policies and practices is available 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.