Exploring the Potential and Limitations of Large Language Models for Novice Program Fault Localization
Hexiang Xu, Hengyuan Liu, Yonghao Wu, Xiaolan Kang, Xiang Chen, Yong Liu

TL;DR
This paper evaluates the effectiveness of large language models in fault localization for novice programmers, highlighting their strengths, limitations, and potential for improving debugging processes.
Contribution
It provides a comprehensive assessment of multiple LLMs on fault localization datasets, revealing their capabilities and challenges in aiding novice programmers.
Findings
LLMs outperform traditional methods in simple fault localization
Models with reasoning abilities achieve higher accuracy
Computational cost and over-reasoning are significant challenges
Abstract
Novice programmers often face challenges in fault localization due to their limited experience and understanding of programming syntax and logic. Traditional methods like Spectrum-Based Fault Localization (SBFL) and Mutation-Based Fault Localization (MBFL) help identify faults but often lack the ability to understand code context, making them less effective for beginners. In recent years, Large Language Models (LLMs) have shown promise in overcoming these limitations by utilizing their ability to understand program syntax and semantics. LLM-based fault localization provides more accurate and context-aware results than traditional techniques. This study evaluates six closed-source and seven open-source LLMs using the Codeflaws, Condefects, and BugT datasets, with BugT being a newly constructed dataset specifically designed to mitigate data leakage concerns. Advanced models with reasoning…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsSoftware Testing and Debugging Techniques · Software Engineering Research · Software System Performance and Reliability
