1. Recommending similar bugs to software maintainers
- Author
-
Henrique Santos Camargos Rocha, Marco Tulio de Oliveira Valente, Humberto Torres Marques Neto, Eduardo Magno Lages Figueiredo, Gail C. Murphy, Leonardo Gresta Paulino Murta, and Marcelo de Almeida Maia
- Subjects
Mineração de dados (Computação) ,Relatório de Bug ,Solicitação de Manutenção ,Sistema de Recomendação ,Software Manutenção ,Sistemas de recomendação ,Computação ,Manutenção de Software - Abstract
Normalmente, a manutenção de um software gira em torno do tratamento de relatórios que descrevem erros, ou bugs. Isto representa um grande esforço do time envolvido nesta tarefa, especialmente em projetos de código aberto. Desenvolvedores destes projetosselecionam os bugs que desejam resolver em repositórios específicos. Geralmente, o esforço geral não é coordenado e pode implicar em trabalho redundante. Além disso, destaca-se que desenvolvedores enfrentam trocas de contexto o que pode impactar negativamentena sua respectiva produtividade. Assim, entende-se que se os desenvolvedores trabalharem continuamente em bugs similares, essas trocas de contexto podem ser mitigadas. Nesta tese é proposto e avaliado um sistema de recomendação de bugs que auxilie um desenvolvedor a tratar bugs similares, minimizando assim a troca decontexto. Primeiramente, realizou-se uma caracterização do fluxo de tratamento de bugs seguido pelos desenvolvedores Mozilla, onde foram identificadas oportunidades de incluir recomendações de bugs similares, como por exemplo, que desenvolvedores menos experientes gastam mais tempo procurando por um bug do que realizando asua correção. Em seguida, o sistema de recomendação proposto na tese, denominado NextBug, foi avaliado usando bugs resolvidos no passado do ecossistema Mozilla. Os resultados foram comparados a uma técnica de vanguarda para detecção de bugs duplicadose mostrou-se que o NextBug desempenha tão bem quanto esta técnica de referência. Finalmente, se reporta um estudo de campo realizado para monitorar os bugs corrigidos para sistemas Mozilla durante uma semana e se analisou e-mails enviados aos desenvolvedores que corrigiram estes bugs perguntado se eles trabalhariam nas recomendações fornecidas pelo NextBug. Do total de 66 desenvolvedores, 39 (59%) afirmaram que eles poderiam trabalhar nas recomendações. Além disso, 44 desenvolvedores(67%) expressaram interesse em usar o NextBug como um plug-in instalado no repositório de bugs. Bug handling represents a major effort in software projects. In this thesis, we propose a recommender that suggests similar bugs that a developer can fix after working on a giving bug. First, we characterize the workflows followed by developers when fixing bugs in the Firefox browser and we identify an opportunity to use recommendations of similar bugs in this process. Second, we evaluate the proposed recommender, called NextBug, using past bugs from the Mozilla ecosystem. We compare the results with a state-of-the-art technique for detecting duplicated bugs. The results show that NextBug performs just as well as this more complex technique. Finally, we report a field study where we monitored the bugs fixed for Mozilla during a week. We sent mails to the developers who fixed these bugs; 39 developers (59%) stated that they would consider working on the recommendations provided by NextBug; 44 developers (67%) expressed interest in seeing NextBug installed in their bug tracking system.
- Published
- 2016