Tracking code clones in evolving software

被引:0
作者
Duala-Ekoko, Ekwa [1 ]
Robillard, Martin P. [1 ]
机构
[1] McGill Univ, Sch Comp Sci, Montreal, PQ H3A 2T5, Canada
来源
ICSE 2007: 29TH INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING, PROCEEDINGS | 2007年
基金
加拿大自然科学与工程研究理事会;
关键词
D O I
暂无
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Code clones are generally considered harmful in software development, and the predominant approach is to try to eliminate them through refactoring. However, recent research has provided evidence that it may not always be practical, feasible, or cost-effective to eliminate certain clone groups. We propose a technique for tracking clones in evolving software. Our technique relies on the concept of abstract clone region descriptors (CRD), which describe clone regions within methods in a robust way that is independent from the exact text of the clone region or its location in a file. We present our definition of CRDs, and describe a complete clone tracking system capable of producing CRDs from the output of a clone detection tool, notify developers of modifications to clone regions, and support the simultaneous editing of clone regions. We report on two experiments and a case study conducted to assess the performance and usefulness of our approach.
引用
收藏
页码:158 / +
页数:2
相关论文
共 50 条
[41]   Code Clone Tracer (CCT): A Tracking Tool for Analyzing Human and Social Factors in Creating and Reusing Code Clones [J].
Kukita, Yusukc ;
Noguchi, Kojiro ;
Ohira, Masao .
2019 20TH IEEE/ACIS INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING, ARTIFICIAL INTELLIGENCE, NETWORKING AND PARALLEL/DISTRIBUTED COMPUTING (SNPD), 2019, :519-524
[42]   Evolving Requirements-to-Code Trace Links across Versions of a Software System [J].
Rahimi, Mona ;
Goss, William ;
Cleland-Huang, Jane .
32ND IEEE INTERNATIONAL CONFERENCE ON SOFTWARE MAINTENANCE AND EVOLUTION (ICSME 2016), 2016, :100-110
[43]   Decomposing Composite Changes for Code Review and Regression Test Selection in Evolving Software [J].
Guo, Bo ;
Kwon, Young-Woo ;
Song, Myoungkyu .
JOURNAL OF COMPUTER SCIENCE AND TECHNOLOGY, 2019, 34 (02) :416-436
[44]   Decomposing Composite Changes for Code Review and Regression Test Selection in Evolving Software [J].
Bo Guo ;
Young-Woo Kwon ;
Myoungkyu Song .
Journal of Computer Science and Technology, 2019, 34 :416-436
[45]   Tool Support for Managing Clone Refactorings to Facilitate Code Review in Evolving Software [J].
Chen, Zhiyuan ;
Mohanavilasam, Maneesh ;
Kwon, Young-Woo ;
Song, Myoungkyu .
2017 IEEE 41ST ANNUAL COMPUTER SOFTWARE AND APPLICATIONS CONFERENCE (COMPSAC), VOL 1, 2017, :288-297
[46]   A code obfuscation framework using code clones [J].
Kulkarni, Aniket ;
Metta, Ravindra .
22nd International Conference on Program Comprehension, ICPC 2014 - Proceedings, 2014, :295-299
[47]   LHDiff: Tracking Source Code Lines To Support Software Maintenance Activities [J].
Asaduzzaman, Muhammad ;
Roy, Chanchal K. ;
Schneider, Kevin A. ;
Di Penta, Massimiliano .
2013 29TH IEEE INTERNATIONAL CONFERENCE ON SOFTWARE MAINTENANCE (ICSM), 2013, :484-487
[48]   Evolving Software [J].
Mens, Tom ;
Klein, Jacques .
ERCIM NEWS, 2012, (88) :8-9
[49]   EVOLVING GENETIC CODE [J].
不详 .
NATURE, 1969, 223 (5208) :774-+
[50]   Evolving genetic code [J].
Ohama, Takeshi ;
Inagaki, Yuji ;
Bessho, Yoshitaka ;
Osawa, Syozo .
PROCEEDINGS OF THE JAPAN ACADEMY SERIES B-PHYSICAL AND BIOLOGICAL SCIENCES, 2008, 84 (02) :58-74