Um sistema de recomendação de código-fonte para suporte a novatos

Detalhes bibliográficos
Ano de defesa: 2011
Autor(a) principal: BARBOSA, Yuri de Almeida Malheiros
Orientador(a): MEIRA, Silvio Romero de Lemos
Banca de defesa: Não Informado pela instituição
Tipo de documento: Dissertação
Tipo de acesso: Acesso aberto
Idioma: por
Instituição de defesa: Universidade Federal de Pernambuco
Programa de Pós-Graduação: Não Informado pela instituição
Departamento: Não Informado pela instituição
País: Não Informado pela instituição
Palavras-chave em Português:
Link de acesso: https://repositorio.ufpe.br/handle/123456789/2737
Resumo: Novatos em um projeto de desenvolvimento de software costumam ter problemas nas suas primeiras tarefas, porque antes de tornarem-se produtivos como os desenvolvedores mais experientes, eles precisam aprender as ferramentas, como o código-fonte está organizado, como todo projeto funciona, entre outras atividades. Muitas vezes, para ensinar a um novato o que ele precisa, um mentor, alguém mais experiente no projeto, é alocado para guiá-lo nos seus primeiros passos. Durante o desenvolvimento de software os desenvolvedores interagem com sistemas de controle de versão, sistemas de controle de mudanças e listas de discussão. Todas essas ferramentas gravam artefatos e a este conjunto de dados damos o nome de memória do projeto. Sistemas de recomendação podem ajudar os desenvolvedores usando a memória do projeto para recomendar artefatos importantes e assim evitar a necessidade de comunicação contínua entre as pessoas. Usando um sistema de recomendação os desenvolvedores perguntam primeiro para o computador, portanto eles só precisam perguntar para outro desenvolvedor se o sistema de recomendação falhar em guiá-lo para a resposta correta. Este trabalho apresenta a criação de um sistema de recomendação para Engenharia de Software chamado Mentor. Seu objetivo é recomendar arquivos de código-fonte que devem fazer parte da solução de uma solicitação de mudança. Além disso são apresentados e discutidos os resultados de três experimentos realizados para comparar técnicas de atribuição de similaridade utilizando os dados dos projetos GTK+, Hadoop e GIMP. Usando o PPM para atribuir similaridade foram conseguidos resultados para recall rate entre 38,82% e 66,8%, e utilizando o LSI os resultados variaram entre 24,6% e 47,6%