Discovering the Exceptional Interface of Java APIs Using Crowd Knowledge
exception, stack trace, crowd knowledge, java, exceptional documentation
Studies have shown that the occurrence of uncaught exceptions is frequent, and these are pointed out as the cause of many software failures. It is estimated that up to two-thirds of all failures of Java-based systems are due to uncaught exceptions. Java stack traces are widely used on bug reports (studies have shown that bug reports that contain stack traces are resolved faster) as well as on such engines as a way to discover solutions to a failures related to an uncaught exception. Studies have shown that many crashes caused by uncaught exceptions are triggered by API methods signaling undocumented Runtime exceptions. Solutions have been proposed to mitigate this problem. Some have used the information embedded on stack traces to discover the exception interfaces API methods. Others have proposed static analysis tools to discover the exceptions that may flow from an API method. In this work we aim at using crowd knowledge embedded on the stack traces posted on bug reports created open source projects hosted on the GitHub platform. To do so we propose a tool called ExMiner. We opted to implement ExMiner as an extension of the ExMinerSOF - a tool developed in our research group that mines stack traces available on Stack Overflow. In this thesis proposal we detail the main tool extensions and present the agenda to perform such extensions and conduct the case study to evaluate the proposed tool.