A Systematic Review of Automated Query Reformulations in Source Code Search

被引:0
|
作者
Rahman, Mohammad Masudur [1 ]
Roy, Chanchal K. [2 ]
机构
[1] Dalhousie Univ, Halifax, NS B3H IW5, Canada
[2] Univ Saskatchewan, Saskatoon, SK S7N 5C9, Canada
基金
加拿大自然科学与工程研究理事会;
关键词
Concept location; bug localization; Internet-scale code search; automated query reformulation; term weighting; query quality analysis; machine learning; systematic literature review; FEATURE LOCATION; BUG LOCALIZATION; CONTEXT; RECOMMENDATION; EXPANSION; WORDNET; MODELS; ENGINE;
D O I
10.1145/3607179
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Fixing software bugs and adding new features are two of the major maintenance tasks. Software bugs and features are reported as change requests. Developers consult these requests and often choose a few keywords from them as an ad hoc query. Then they execute the query with a search engine to find the exact locations within software code that need to be changed. Unfortunately, even experienced developers often fail to choose appropriate queries, which leads to costly trials and errors during a code search. Over the years, many studies have attempted to reformulate the ad hoc queries from developers to support them. In this systematic literature review, we carefully select 70 primary studies on query reformulations from 2,970 candidate studies, perform an in-depth qualitative analysis (e.g., Grounded Theory), and then answer seven research questions with major findings. First, to date, eight major methodologies (e.g., term weighting, term co-occurrence analysis, thesaurus lookup) have been adopted to reformulate queries. Second, the existing studies suffer from several major limitations (e.g., lack of generalizability, the vocabulary mismatch problem, subjective bias) that might prevent their wide adoption. Finally, we discuss the best practices and future opportunities to advance the state of research in search query reformulations.
引用
收藏
页数:79
相关论文
共 50 条
  • [41] Automated EJB client code generation sing database query rewriting
    Lu, JG
    Mylopoulos, J
    [J]. SEVENTH INTERNATIONAL DATABASE ENGINEERING AND APPLICATIONS SYMPOSIUM, PROCEEDINGS, 2003, : 308 - 317
  • [42] Systematic scanning for malicious source code
    Taft, S. Tucker
    [J]. 2008 IEEE CONFERENCE ON TECHNOLOGIES FOR HOMELAND SECURITY, VOLS 1 AND 2, 2008, : 173 - 175
  • [43] A Review on Source Code Documentation
    Rai, Sawan
    Belwal, Ramesh Chandra
    Gupta, Atul
    [J]. ACM TRANSACTIONS ON INTELLIGENT SYSTEMS AND TECHNOLOGY, 2022, 13 (05)
  • [44] Source code review systems
    Remillard, J
    [J]. IEEE SOFTWARE, 2005, 22 (01) : 74 - 77
  • [45] Using Structured Queries for Source Code Search
    Eddy, Brian P.
    Kraft, Nicholas A.
    [J]. 2014 IEEE INTERNATIONAL CONFERENCE ON SOFTWARE MAINTENANCE AND EVOLUTION (ICSME), 2014, : 431 - 435
  • [46] A systematic literature review of actionable alert identification techniques for automated static code analysis
    Heckman, Sarah
    Williams, Laurie
    [J]. INFORMATION AND SOFTWARE TECHNOLOGY, 2011, 53 (04) : 363 - 387
  • [47] XCoS: Explainable Code Search Based on Query Scoping and Knowledge Graph
    Wang, Chong
    Peng, Xin
    Xing, Zhenchang
    Zhang, Yue
    Liu, Mingwei
    Luo, Rong
    Meng, Xiujie
    [J]. ACM TRANSACTIONS ON SOFTWARE ENGINEERING AND METHODOLOGY, 2023, 32 (06)
  • [48] Automated Code Editing With Search-Generate-Modify
    Liu, Changshu
    Cetin, Pelin
    Patodia, Yogesh
    Ray, Baishakhi
    Chakraborty, Saikat
    Ding, Yangruibo
    [J]. IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, 2024, 50 (07) : 1675 - 1686
  • [49] Automated Code Review Tools for Security
    McGraw, Gary
    [J]. COMPUTER, 2008, 41 (12) : 107 - 110
  • [50] Automatic Code Review by Learning the Revision of Source Code
    Shi, Shu-Ting
    Li, Ming
    Lo, David
    Thung, Ferdian
    Huo, Xuan
    [J]. THIRTY-THIRD AAAI CONFERENCE ON ARTIFICIAL INTELLIGENCE / THIRTY-FIRST INNOVATIVE APPLICATIONS OF ARTIFICIAL INTELLIGENCE CONFERENCE / NINTH AAAI SYMPOSIUM ON EDUCATIONAL ADVANCES IN ARTIFICIAL INTELLIGENCE, 2019, : 4910 - 4917