Logic Error Localization in Student Programming Assignments Using Pseudocode and Graph Neural Networks
Zhenyu Xu, Kun Zhang, Victor S. Sheng

TL;DR
This paper presents a novel system using pseudocode and graph neural networks to accurately localize logic errors in student programming assignments, improving debugging and learning outcomes.
Contribution
It introduces a graph-based approach leveraging pseudocode to detect and suggest corrections for logic errors at the line level in student code.
Findings
Localization accuracy of 99.2% within top-10 lines
Effective dataset creation for logic errors during syntax correction
Enhanced student debugging and learning process
Abstract
Pseudocode is extensively used in introductory programming courses to instruct computer science students in algorithm design, utilizing natural language to define algorithmic behaviors. This learning approach enables students to convert pseudocode into source code and execute it to verify their algorithms' correctness. This process typically introduces two types of errors: syntax errors and logic errors. Syntax errors are often accompanied by compiler feedback, which helps students identify incorrect lines. In contrast, logic errors are more challenging because they do not trigger compiler errors and lack immediate diagnostic feedback, making them harder to detect and correct. To address this challenge, we developed a system designed to localize logic errors within student programming assignments at the line level. Our approach utilizes pseudocode as a scaffold to build a…
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 · Online Learning and Analytics · Teaching and Learning Programming
MethodsGraph Neural Network
