Minerando Interfaces Excepcionais partir do GitHub: Um Estudo Exploratorio
tratamento de exceções, relatório de erro, conhecimento da multidão, Java, documentação excepcional, Java.
Exceções uncaught não são um cenário excepcional nos sistemas atuais. Estima-se que as exceções uncaught representem dois terços dos crashs em sistemas Java. Tais exceções podem ser lançadas por problemas no código da aplicação, no hardware subjacente ou até mesmo por uma API reutilizada. Muito frequentemente, a documentação sobre as exceções sinalizadas pelos métodos da API está ausente ou incompleta. Como conseqüência, o desenvolvedor geralmente descobre essas exceções quando elas ocorrem no ambiente de produção causando crashes. Este trabalho relata um estudo exploratório que extraiu os stack traces inseridas em issues do GitHub para descobrir as interfaces excepcionais não documentadas de APIs. No geral, foram mineradas as issues 2.970 projetos Java hospedados no GitHub, dos quais foram extraídos e aproximadamente 66.118 stack traces. Neste estudo, a interface excepcional de um conjunto de aproximadamente 600 APIs do Maven foram investigadas. Os resultados do estudo de mineração mostram que as informações disponíveis nas stack traces embutidas nas issues podem, de fato, ser usadas para descobrir exceções não documentadas lançadas pelos métodos da API.