In this project, we sought to create tools to help novice Java programmers comprehend some of the complicated error messages provided by the Java Virtual Machine. Whereas there has been much work in creating easy-to-understand compiler messages, little work has been done in the area of runtime errors. When a Java program produces an uncaught exception, the result is a stacktrace, which can be difficult for a novice programmer to understand. Backstop has been designed to produce a simpler error message that attempts to explain the cause of the problem, and how to fix it.
Our paper on Backstop has been published in the proceedings of SIGCSE 2008 and is available here.
Unfortunately the Backstop project is no longer active but if you are interested in working on it and reviving it, please contact us.
Prof. Gail Kaiser, kaiser [at] cs.columbia.edu
Jim Etheredge’s CMeRun paper
Backstop is released under the GNU General Public License