Transferring Code-Clone Detection and Analysis to Practice

被引:15
|
作者
Dang, Yingnong [2 ]
Zhang, Dongmei [1 ]
Ge, Song [1 ]
Huang, Ray [1 ]
Chu, Chengyun [2 ]
Xie, Tao [3 ]
机构
[1] Microsoft Res Asia, Beijing, Peoples R China
[2] Microsoft Corp, Redmond, WA 98052 USA
[3] Univ Illinois, Champaign, IL USA
基金
美国国家科学基金会;
关键词
SOFTWARE ANALYTICS; BUGS;
D O I
10.1109/ICSE-SEIP.2017.6
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
During software development, code clones are commonly produced, in the form of a number of the same or similar code fragments spreading within one or many large code bases. Numerous research projects have been carried out on empirical studies or tool support for detecting or analyzing code clones. However, in practice, few such research projects have resulted in substantial industry adoption. In this paper, we report our experiences of transferring XIAO, a code-clone detection and analysis approach and its supporting tool, to broad industrial practices: (1) shipped in Visual Studio 2012, a widely used industrial IDE; (2) deployed and intensively used at the Microsoft Security Response Center. According to our experiences, technology transfer is a rather complicated journey that needs significant efforts from both the technical aspect and social aspect. From the technical aspect, significant efforts are needed to adapt a research prototype to a product-quality tool that addresses the needs of real scenarios, to be integrated into a mainstream product or development process. From the social aspect, there are strong needs to interact with practitioners to identify killer scenarios in industrial settings, figure out the gap between a research prototype and a tool fitting the needs of real scenarios, to understand the requirements of releasing with a mainstream product, being integrated into a development process, understanding their release cadence, etc.
引用
收藏
页码:53 / 62
页数:10
相关论文
共 50 条
  • [1] Clone Swarm: A Cloud Based Code-Clone Analysis Tool
    Bandi, Venkat
    Roy, Chanchal K.
    Gutwin, Carl
    [J]. PROCEEDINGS OF THE 2020 IEEE 14TH INTERNATIONAL WORKSHOP ON SOFTWARE CLONES (IWSC '20), 2020, : 52 - 56
  • [2] On Cloud Computing Infrastructure for Existing Code-Clone Detection Algorithms
    Walker, Andrew
    Cerny, Tomas
    [J]. APPLIED COMPUTING REVIEW, 2020, 20 (01): : 5 - 14
  • [3] Finding repeated strings in code repositories and its applications to code-clone detection
    Yamagata, Yoriyuki
    Herve, Fabien
    Fujiwara, Yuji
    Inoue, Katsuro
    [J]. 2021 28TH ASIA-PACIFIC SOFTWARE ENGINEERING CONFERENCE (APSEC 2021), 2021, : 497 - 502
  • [4] An Execution-Semantic and Content-and-Context-Based Code-Clone Detection and Analysis
    Kamiya, Toshihiro
    [J]. 2015 IEEE 9TH INTERNATIONAL WORKSHOP ON SOFTWARE CLONES (IWSC), 2015, : 1 - 7
  • [5] Introducing Parameter Sensitivity to Dynamic Code-Clone Analysis Methods
    Kamiya, Toshihiro
    [J]. 2016 IEEE 23RD INTERNATIONAL CONFERENCE ON SOFTWARE ANALYSIS, EVOLUTION, AND REENGINEERING (SANER), VOL 3, 2016, : 19 - 20
  • [6] Open-Source Tools and Benchmarks for Code-Clone Detection: Past, Present, and Future Trends
    Walker, Andrew
    Cerny, Tomas
    Song, Eungee
    [J]. APPLIED COMPUTING REVIEW, 2019, 19 (04): : 28 - 39
  • [7] Gapped Code Clone Detection with Lightweight Source Code Analysis
    Murakami, Hiroaki
    Hotta, Keisuke
    Higo, Yoshiki
    Igaki, Hiroshi
    Kusumoto, Shinji
    [J]. 2013 IEEE 21ST INTERNATIONAL CONFERENCE ON PROGRAM COMPREHENSION (ICPC), 2013, : 93 - 102
  • [8] Code Clone Detection Model: A SWOT Analysis Perspective
    Mubarak-Ali, Al-Fahim
    Romli, Rahiwan Nazar
    Sjarif, Nilam Nur Amir
    [J]. ADVANCED SCIENCE LETTERS, 2018, 24 (10) : 7210 - 7213
  • [9] Refactoring Code Clone Detection
    Othman, Zhala Sarkawt
    Kaya, Mehmet
    [J]. 2019 7TH INTERNATIONAL SYMPOSIUM ON DIGITAL FORENSICS AND SECURITY (ISDFS), 2019,
  • [10] Prioritizing Code Clone Detection Results for Clone Management
    Venkatasubramanyam, Radhika D.
    Gupta, Shrinath
    Singh, Himanshu Kumar
    [J]. 2013 7TH INTERNATIONAL WORKSHOP ON SOFTWARE CLONES (IWSC), 2013, : 30 - 36