Science Journal of Education

Submit a Manuscript

Publishing with us to make your research visible to the widest possible audience.

Propose a Special Issue

Building a community of authors and readers to discuss the latest research and develop new ideas.

Research Article |

Debugging Support Tool Using Knowledge of Failure

The objective of this study is to realize a debugging support tool to help programming novices solve program errors efficiently. The proposed tool accumulates and stores failure knowledge, including examples of errors encountered by novice programmers and their solutions. By utilizing this database, the tool can search and find appropriate solutions to errors encountered by users in real time. Errors are categorized as compile errors, link errors, run-time errors, and logic errors, each of which has its own unique solution. In this study, particular emphasis is placed on assistance with compile errors. Failure knowledge consists of sample source code that includes the location and cause of errors encountered by the novice user, as well as solutions. When an error occurs, the user enters the relevant source code and error message into the tool, and the tool searches the database to provide the corresponding solution and explanation. The system also provides a space for users to enter their own analyses and explanations, which can be shared with other novices to promote mutual understanding. The proposed system utilizes a structured database for efficient error resolution, containing tables for storing and retrieving error messages, corresponding references, and user considerations. The effectiveness and applicability of the proposed tool should be verified.

Programming Education, Web Application, Debugging Support, Machine Learning

APA Style

Zhu, X. (2023). Debugging Support Tool Using Knowledge of Failure. Science Journal of Education, 11(6), 211-219.

ACS Style

Zhu, X. Debugging Support Tool Using Knowledge of Failure. Sci. J. Educ. 2023, 11(6), 211-219. doi: 10.11648/j.sjedu.20231106.15

AMA Style

Zhu X. Debugging Support Tool Using Knowledge of Failure. Sci J Educ. 2023;11(6):211-219. doi: 10.11648/j.sjedu.20231106.15

Copyright © 2023 Authors retain the copyright of this article.
This article is an open access article distributed under the Creative Commons Attribution License ( which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.

1. Ministry of Internal Affairs and Communications, Information and Communications White Paper 2020 Edition,
2. Sue Fitzgerald, Gary Lewandowski, Renée McCauley, Laurie Murphy, Beth Simon, Lynda Thomas, Carol Zander "Debugging: finding, fixing and flailing, a multi-institutional study of novice debuggers", Computer Science Education, vol. 18, No. 2, PP. 93-116 (2008).
3. Tsuruko Eki, "Research on learning support for debugging tactics for programming beginners", Kyushu Institute of Technology doctoral dissertation (2009).
4. Shinichi Sato, Hajime Iida, Katsuro Inoue. "Prototype of debugging support tool based on program dependency analysis". Journal of the Information Processing Society of Japan, 37 (4), PP. 536-545 (1996).
5. Keita Matsumura, Masayuki Arai. "Development of a debugging support tool for C language beginners to collect bug reports" ISSN 2186-5647 (2018) Summary of the 51st Academic Conference of the College of Industrial Engineering, Nihon University.
6. OpenAI homepage
7. TAY Yi, Luu Anh Tuan, Minh C. Phan, Siu Cheung Hui. "Learning to rank question answer pairs with holographic dual lstm architecture", Proceedings of the 40th international ACM SIGIR conference on research and development in information retrieval, PP. 695- 704. (2017).
8. Masakazu Ioka, Norihiro Yoshida, Katsuro Inoue. "Similar class/method detection method using program execution history" ISSN 0289-6540 (2014) Volume 31, Issue 1, PP. 1_110-1_115.
9. Davin McCall, Michael Kolling. "A New Look at Novice Programmer Errors", ACM Transactions on computer Education, Vol. 19, No. 38, PP. 1-30 (2019).
10. Takumi Murata, Toya Nakayama, Hiroaki Hashiura. "A Method for Debugging Java Programs using Chatbots", Information Processing Society of Japan, 84 (2022-1) PP. 349-350 (2022).
11. Linda Erlenhov, Francisco Gomes de Oliveira Neto, Philipp Leitner. "An Empirical Study of Bots in Software Development: Characteristics and Challenges from a Practitioner’s Perspective", Proceedings of the 28th ACM Joint Meeting on European Software Engineering Conference and Symposium on the Foundations of Software, US, PP. 445–455 (2020).
12. Moriuchi kai, Taku Okuno, "A Study on a Debugging Support System Using Crowd Knowledge ", ISSN 2188-8825, SE-210, vol. 4, PP. 1-5 (2022).
13. Gakuto Akiyama, Tsukasa Nakamura, Masanari Kondo, Yasutaka Kamei, Naoyasu Ubayashi, "A case study of automatic debugging problem generation using novice programmers’ bug fix histories" Computer Software, vol. 39, No. 4, PP. 10-16 (2022).
14. Masato Ota, Faisal Hadiputra. "Uncertainty and Explanation-based Human Debugging of Text Classification Model", The 37th Annual Conference of the Japanese Society for Artificial Intelligence, PP. 3L5GS1103-3L5GS1103 (2023).
15. Ryota Kondo, Masataka Nagura. "A Learning Support Method for Novice Programmers based on Categorization of Compilation Error Messages", Japan Society for Software Science and Technology, PP. 63-74 (2023).