Premium
Automated Java exceptions explanation using natural language generation techniques
Author(s) -
Assiri Fatmah Yousef,
Elazhary Hanan
Publication year - 2020
Publication title -
computer applications in engineering education
Language(s) - English
Resource type - Journals
SCImago Journal Rank - 0.478
H-Index - 29
eISSN - 1099-0542
pISSN - 1061-3773
DOI - 10.1002/cae.22232
Subject(s) - computer science , java , programming language , usability , rhetorical question , natural language , java modeling language , natural language generation , natural (archaeology) , real time java , java annotation , process (computing) , artificial intelligence , human–computer interaction , linguistics , archaeology , history , philosophy
A common problem encountered by novice programmers and students taking introductory programming courses is how to understand exception messages and how to locate the corresponding errors. Such messages are typically too difficult for them to interpret without seeking help from colleagues or through online forums. Tackling this problem can help speed up their learning curves and hence increase their productivity. This paper proposes using natural language generation (NLG) techniques and the Rhetorical Structure Theory, which specifies how text spans are related and aggregated, to convert Java exception messages into readable and understandable natural language (NL) statements. An additional advantage is the possibility of adding more information and explanations that help students understand different exception types, their causes, and how they can be avoided. As a proof of concept, we developed Java Exceptions in the NL (JENL) tool to process Java exceptions using NLG techniques. Empirical evaluation has shown extreme satisfaction among Java programming subjects (including student novice programmers) with the capabilities of JENL as well as its usability.