Context-aware neural fault localization

Numerous fault localization techniques identify suspicious statements potentially responsible for program failures by discovering the statistical correlation between test results (i.e., failing or passing) and the executions of the different statements of a program (i.e., covered or not covered). Th...

Full description

Saved in:
Bibliographic Details
Main Authors: ZHANG, Zhuo, MAO, Xiaoguang, YAN, Meng, XIA, Xin, LO, David
Format: text
Language:English
Published: Institutional Knowledge at Singapore Management University 2023
Subjects:
Online Access:https://ink.library.smu.edu.sg/sis_research/8314
https://ink.library.smu.edu.sg/context/sis_research/article/9317/viewcontent/10132088__1_.pdf
Tags: Add Tag
No Tags, Be the first to tag this record!
Institution: Singapore Management University
Language: English
id sg-smu-ink.sis_research-9317
record_format dspace
spelling sg-smu-ink.sis_research-93172023-12-05T03:11:13Z Context-aware neural fault localization ZHANG, Zhuo MAO, Xiaoguang YAN, Meng XIA, Xin LO, David LO, David Numerous fault localization techniques identify suspicious statements potentially responsible for program failures by discovering the statistical correlation between test results (i.e., failing or passing) and the executions of the different statements of a program (i.e., covered or not covered). They rarely incorporate a failure context into their suspiciousness evaluation despite the fact that a failure context showing how a failure is produced is useful for analyzing and locating faults. Since a failure context usually contains the transitive relationships among the statements of causing a failure, its relationship complexity becomes one major obstacle for the context incorporation in suspiciousness evaluation of fault localization. To overcome the obstacle, our insight is that leveraging the promising learning ability may be a candidate solution to learn a feasible model for incorporating a failure context into fault localization. Thus, we propose a context-aware neural fault localization approach (CAN). Specifically, CAN represents the failure context by constructing a program dependency graph, which shows how a set of statements interact with each other (i.e., data and control dependencies) to cause a failure. Then, CAN utilizes graph neural networks to analyze and incorporate the context (e.g., the dependencies among the statements) into suspiciousness evaluation. Our empirical results on the 12 large-sized programs show that CAN achieves promising results (e.g., 29.23% faults are ranked within top 5), and it significantly improves the state-of-the-art baselines with a substantial margin. 2023-07-01T07:00:00Z text application/pdf https://ink.library.smu.edu.sg/sis_research/8314 info:doi/10.1109/TSE.2023.3279125 https://ink.library.smu.edu.sg/context/sis_research/article/9317/viewcontent/10132088__1_.pdf http://creativecommons.org/licenses/by-nc-nd/4.0/ Research Collection School Of Computing and Information Systems eng Institutional Knowledge at Singapore Management University Fault localization graph neural networks program dependency graphs suspiciousness OS and Networks Software Engineering
institution Singapore Management University
building SMU Libraries
continent Asia
country Singapore
Singapore
content_provider SMU Libraries
collection InK@SMU
language English
topic Fault localization
graph neural networks
program dependency graphs
suspiciousness
OS and Networks
Software Engineering
spellingShingle Fault localization
graph neural networks
program dependency graphs
suspiciousness
OS and Networks
Software Engineering
ZHANG, Zhuo
MAO, Xiaoguang
YAN, Meng
XIA, Xin
LO, David
LO, David
Context-aware neural fault localization
description Numerous fault localization techniques identify suspicious statements potentially responsible for program failures by discovering the statistical correlation between test results (i.e., failing or passing) and the executions of the different statements of a program (i.e., covered or not covered). They rarely incorporate a failure context into their suspiciousness evaluation despite the fact that a failure context showing how a failure is produced is useful for analyzing and locating faults. Since a failure context usually contains the transitive relationships among the statements of causing a failure, its relationship complexity becomes one major obstacle for the context incorporation in suspiciousness evaluation of fault localization. To overcome the obstacle, our insight is that leveraging the promising learning ability may be a candidate solution to learn a feasible model for incorporating a failure context into fault localization. Thus, we propose a context-aware neural fault localization approach (CAN). Specifically, CAN represents the failure context by constructing a program dependency graph, which shows how a set of statements interact with each other (i.e., data and control dependencies) to cause a failure. Then, CAN utilizes graph neural networks to analyze and incorporate the context (e.g., the dependencies among the statements) into suspiciousness evaluation. Our empirical results on the 12 large-sized programs show that CAN achieves promising results (e.g., 29.23% faults are ranked within top 5), and it significantly improves the state-of-the-art baselines with a substantial margin.
format text
author ZHANG, Zhuo
MAO, Xiaoguang
YAN, Meng
XIA, Xin
LO, David
LO, David
author_facet ZHANG, Zhuo
MAO, Xiaoguang
YAN, Meng
XIA, Xin
LO, David
LO, David
author_sort ZHANG, Zhuo
title Context-aware neural fault localization
title_short Context-aware neural fault localization
title_full Context-aware neural fault localization
title_fullStr Context-aware neural fault localization
title_full_unstemmed Context-aware neural fault localization
title_sort context-aware neural fault localization
publisher Institutional Knowledge at Singapore Management University
publishDate 2023
url https://ink.library.smu.edu.sg/sis_research/8314
https://ink.library.smu.edu.sg/context/sis_research/article/9317/viewcontent/10132088__1_.pdf
_version_ 1784855631014920192