Title Historical Spectrum Based Fault Localization
Authors Wen, Ming
Chen, Junjie
Tian, Yongqiang
Wu, Rongxin
Hao, Dan
Han, Shi
Cheung, Shing-Chi
Affiliation Huazhong Univ Sci & Technol, Natl Engn Res Ctr Big Data Technol & Syst, Cluster & Grid Comp Lab, Serv Comp Technol & Syst Lab,Sch Cyber Sci & Engn, Wuhan 430074, Peoples R China
Hong Kong Univ Sci & Technol, Dept Comp Sci & Engn, Kowloon, Clear Water Bay, Hong Kong, Peoples R China
Tianjin Univ, Coll Intelligence & Comp, Tianjin 300072, Peoples R China
Xiamen Univ, Dept Cyber Space Secur, Xiamen 361005, Peoples R China
Peking Univ, EECS, Key Lab High Confidence Software Technol, Beijing 100871, Peoples R China
Peking Univ, EECS, Inst Software, Beijing 100871, Peoples R China
Microsoft Res Asia, Beijing 100080, Peoples R China
Keywords BUGS
Issue Date 1-Nov-2021
Publisher IEEE TRANSACTIONS ON SOFTWARE ENGINEERING
Abstract Spectrum-based fault localization (SBFL) techniques are widely studied and have been evaluated to be effective in locating faults. Recent studies also showed that developers from industry value automated SBFL techniques. However, their effectiveness is still limited by two main reasons. First, the test coverage information leveraged to construct the spectrum does not reflect the root cause directly. Second, SBFL suffers from the tie issue so that the buggy code entities can not be well differentiated from non-buggy ones. To address these challenges, we propose to leverage the information of version histories in fault localization based on the following two intuitions. First, version histories record how bugs are introduced to software projects and this information reflects the root cause of bugs directly. Second, the evolution histories of code can help differentiate those suspicious code entities ranked in tie by SBFL. Our intuitions are also inspired by the observations on debugging practices from large open source projects and industry. Based on the intuitions, we propose a novel technique HSFL (historical spectrum based fault localization). Specifically, HSFL identifies bug-inducing commits from the version history in the first step. It then constructs historical spectrum (denoted as Histrum) based on bug-inducing commits, which is another dimension of spectrum orthogonal to the coverage based spectrum used in SBFL. HSFL finally ranks the suspicious code elements based on our proposed Histrum and the conventional spectrum. HSFL outperforms the state-of-the-art SBFL techniques significantly on the Defects4J benchmark. Specifically, it locates and ranks the buggy statement at Top-1 for 77.8 percent more bugs as compared with SBFL, and 33.9 percent more bugs at Top-5. Besides, for the metrics MAP and MRR, HSFL achieves an average improvement of 28.3 and 40.8 percent over all bugs, respectively. Moreover, HSFL can also outperform other six families of fault localization techniques, and our proposed Histrum model can be integrated with different families of techniques and boost their performance.
URI http://hdl.handle.net/20.500.11897/629357
ISSN 0098-5589
DOI 10.1109/TSE.2019.2948158
Indexed SCI(E)
Appears in Collections: 信息科学技术学院
高可信软件技术教育部重点实验室

Files in This Work
There are no files associated with this item.

Web of Science®


0

Checked on Last Week

Scopus®



Checked on Current Time

百度学术™


0

Checked on Current Time

Google Scholar™





License: See PKU IR operational policies.