SFLVis: visual analysis of software fault localization

Since the birth of software, fault localization has been a time-consuming and laborious task. Programmers need to constantly find faults in software through program logging, assertions, breakpoints, and profiling. In order to improve the debugging efficiency, many fault localization methods based on...

Full description

Saved in:
Bibliographic Details
Published inJournal of visualization Vol. 27; no. 4; pp. 585 - 602
Main Authors Sun, Desheng, Yue, Xiaoqi, Liu, Chao, Qin, Hongxing, Hu, Haibo
Format Journal Article
LanguageEnglish
Published Berlin/Heidelberg Springer Berlin Heidelberg 01.08.2024
Springer Nature B.V
Subjects
Online AccessGet full text
ISSN1343-8875
1875-8975
DOI10.1007/s12650-024-00979-x

Cover

Loading…
More Information
Summary:Since the birth of software, fault localization has been a time-consuming and laborious task. Programmers need to constantly find faults in software through program logging, assertions, breakpoints, and profiling. In order to improve the debugging efficiency, many fault localization methods based on test cases have been proposed, such as program spectrum-based methods, and slice-based methods. However, these methods are far from the logic of actual debugging and still require programmers to use traditional methods. However, programmers cannot access the execution process of the program, they need to constantly modify breakpoints and repeatedly check variable values, which makes fault localization very time-consuming. After interviewing five experts in the field of visualization and software testing, we designed SFLVis to provide users with a new method to improve the efficiency of fault localization. We designed an algorithm to obtain the process of program execution and combined it with existing fault localization methods. The goal is to show users the execution results of test cases, source code logic, and the level of suspicion of statements, and reproduce the execution process of test cases. We designed rich interactive features to help users explore SFLVis and correlate information from various views to improve the efficiency of fault localization. To verify the effectiveness of SFLVis, we conducted a case study using the program in the Siemens Suite dataset and conducted group experiments and related interviews with 20 volunteers. The results show that SFLVis can effectively improve programmers’ efficiency compared with existing fault localization methods. Graphical abstract
Bibliography:ObjectType-Article-1
SourceType-Scholarly Journals-1
ObjectType-Feature-2
content type line 14
ISSN:1343-8875
1875-8975
DOI:10.1007/s12650-024-00979-x