Yingnong Dang, D. Zhang, Song Ge, Chengyun Chu, Yingjun Qiu, Tao Xie
{"title":"XIAO: tuning code clones at hands of engineers in practice","authors":"Yingnong Dang, D. Zhang, Song Ge, Chengyun Chu, Yingjun Qiu, Tao Xie","doi":"10.1145/2420950.2421004","DOIUrl":null,"url":null,"abstract":"During software development, engineers often reuse a code fragment via copy-and-paste with or without modifications or adaptations. Such practices lead to a number of the same or similar code fragments spreading within one or many large codebases. Detecting code clones has been shown to be useful towards security such as detection of similar security bugs and, more generally, quality improvement such as refactoring of code clones. A large number of academic research projects have been carried out on empirical studies or tool supports for detecting code clones. In this paper, we report our experiences of carrying out successful technology transfer of our new approach of code-clone detection, called XIAO. XIAO has been integrated into Microsoft Visual Studio 2012, to be benefiting a huge number of developers in industry. The main success factors of XIAO include its high tunability, scalability, compatibility, and explorability. Based on substantial industrial experiences, we present the XIAO approach with emphasis on these success factors of XIAO. We also present empirical results on applying XIAO on real scenarios within Microsoft for the tasks of security-bug detection and refactoring.","PeriodicalId":397003,"journal":{"name":"Asia-Pacific Computer Systems Architecture Conference","volume":"34 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2012-12-03","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"58","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Asia-Pacific Computer Systems Architecture Conference","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1145/2420950.2421004","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 58
Abstract
During software development, engineers often reuse a code fragment via copy-and-paste with or without modifications or adaptations. Such practices lead to a number of the same or similar code fragments spreading within one or many large codebases. Detecting code clones has been shown to be useful towards security such as detection of similar security bugs and, more generally, quality improvement such as refactoring of code clones. A large number of academic research projects have been carried out on empirical studies or tool supports for detecting code clones. In this paper, we report our experiences of carrying out successful technology transfer of our new approach of code-clone detection, called XIAO. XIAO has been integrated into Microsoft Visual Studio 2012, to be benefiting a huge number of developers in industry. The main success factors of XIAO include its high tunability, scalability, compatibility, and explorability. Based on substantial industrial experiences, we present the XIAO approach with emphasis on these success factors of XIAO. We also present empirical results on applying XIAO on real scenarios within Microsoft for the tasks of security-bug detection and refactoring.
在软件开发过程中,工程师经常通过复制和粘贴来重用代码片段,有或没有修改或调整。这种做法导致许多相同或相似的代码片段在一个或多个大型代码库中传播。检测代码克隆已经被证明对安全性很有用,比如检测类似的安全错误,更一般地说,对质量改进很有用,比如重构代码克隆。大量的学术研究项目已经开展了实证研究或工具支持检测代码克隆。在本文中,我们报告了我们的代码克隆检测新方法(称为XIAO)的成功技术转移的经验。XIAO已经被集成到Microsoft Visual Studio 2012中,这将使业界大量的开发人员受益。XIAO的主要成功因素包括其高可调性、可扩展性、兼容性和可探索性。基于大量的工业经验,我们提出了XIAO方法,并强调了XIAO的这些成功因素。我们还提供了将XIAO应用于微软内部的安全漏洞检测和重构任务的实际场景的实证结果。