Date of Award
Doctor of Philosophy (PhD)
Nicholas A. Kraft
Harry S. Delugach
Dan M. Rochowiak
Dirichet problem., Boundary value problems., Debugging in computer science., Object-oriented programming (Computer science)
Duplicate or similar fragments of code are referred to as "code clones" and are normally created by copying and pasting. Such duplication allows code to be reused; however, these copied code fragments can cause severe problems for software maintainers. When code must be changed, the existence of clones may result in one instance of a clone being properly fixed, while another instance of that clone remains faulty. In order to find and remedy these types of errors, clones must be efficiently located. Previous methods of clone location include raw text search, syntax-based, token-based, and semantic approaches. Further information about clones has been gathered through information retrieval based categorization techniques. Our long term research goal is to improve clone categorization and detection through combining various information retrieval (IR) based techniques and software metrics to better categorize clones, including the relationship of various software quality characteristics to clones. In this work, we present the results of several preliminary studies (improved IR-based bug localization, improved IR-based clone categorization, clone evolution) that represent various steps along this path. However, one drawback with existing clone detection techniques is that they can be very time consuming. We wish to create a more efficient technique for determining whether a method or class demonstrates certain characteristics that may indicate the presence of clones. The most important contribution of this dissertation is our examination of the use of software metrics for detecting and predicting the existence of clones in software. We also focus on examining the relationship between the combination of software metrics, clones, and bugs.
Beard, Matthew D., "The relationship of software quality characteristics to code clones" (2013). Dissertations. 11.