Font Size: a A A

Research On Clone Genealogy Extracting Method Based On CRD Clone Group Mapping

Posted on:2014-11-08Degree:MasterType:Thesis
Country:ChinaCandidate:M CiFull Text:PDF
GTID:2268330422950431Subject:Computer Science and Technology
Abstract/Summary:PDF Full Text Request
Code clone evolution research studied code clones of multiple versions of softwareto get their evolution information. This study is based on clone detection and tracking.Code clone evolution research contributes a lot to the understanding of code clonefeatures, the maintenance and reconstruction of code clones, the evaluation of codeclone harmfulness as well as detection of software defects. Clone genealogy extractionis the key technique in clone evolution study, and clone group mapping betweenneighboring versions is a thorny issue for the extraction. Most current methods behavenot well on near-miss clones. Because of limitations on code clone representation andclone group mapping, these methods have problems like too many errors, low efficiencyand low robustness.To address the problems, this thesis has completed the following work. First, forproblems of dealing with near-miss clones not well, we used a state-of-the-art toolNICAD as the front end, to detect identical and near-miss code clones among multipleversions. Second, since traditional representation of code clones contained too littleinformation and couldn’t reflect enough charactericstics, we improved the originalClone Region Descriptor model, and used it to describe code clones. Third, to overcomethe limitations of existing clone group mapping algorithm, we proposed the CRD-basedclone group mapping algorithm to map clone groups between neighboring versions.Then, since the original clone group evolution patterns couldn’t describe near-miss codeclones’ evolution clearly, we redefined those patterns, and recognized them according tothe mappings. Finally, by connecting corresponding clone group mappings, we finishedthe building of genealogies.To validate our framework, we designed and complimented a prototype of clonegenealogy extractor (CGE). We evaluated it on three open source systems of differentprogramming language and different size, analyzed the results and compared ourmethod to others. Experimental results showed that our method performed well in clonegenealogy extraction, which could lay a reliable foundation for clone evolutionresearch.
Keywords/Search Tags:Clone Evolution, Clone Genealogy, Clone Group Mapping, CloneRegion Descriptor
PDF Full Text Request
Related items