Mining Exceptional Interfaces based on GitHub: An Exploratory Study
exception, stack trace, crowd knowledge, java, exceptional documentation
Uncaught exceptions are not an exceptional scenario in current applications. The uncaught exceptions are estimated to account for two thirds of system crashes. Such exceptions can be thrown on the application itself, by the underlying system or hardware, or even by a reused API. More often than not, the documentation about the runtime exceptions signaled by API methods are absent or incomplete. As a consequence, the developer usually discovers about such exceptions when they happen in production environment - leading to application crashes. This work reports an exploratory study that mined the exception stack traces embedded on GitHub issues to discover the undocumented exception interfaces of API methods. Overall the issues of 2.970 java projects hosted in GitHub were mined and 66.118 stack traces were extracted. Hence, a set of top maven APIs where investigated using this stack traces data set, and undocumented exception interfaces could be discovered. The results of the mining study show that the information embedded on issues can indeed be used to discover undocumented exceptions thrown by API methods.