Pós-Graduação em Ciência da Computação – UFPE
Defesa de Dissertação de Mestrado Nº  2.098


Aluno: Vinícius de Oliveira Andrade
Orientadora: Profa. Flávia de Almeida Barros
Título: Sistema de Recomendação de Desenvolvedores Especialistas para 
Projetos de Engenharia de Software: um Estudo de Caso
Data: 22/08/2023
Hora/Local: 14h às 16h – Virtual – Interessados em assistir entrar em contato com o aluno
Banca Examinadora:
Prof. Alexandre Cabral Mota (UFPE / Centro de Informática)
Prof. André Câmara Alves do Nascimento (UFRPE / Departamento de Computação)
Profa. Flavia de Almeida Barros (UFPE / Centro de Informática)


RESUMO:

Em projetos de desenvolvimento de software, a alocação eficiente de 
desenvolvedores a tarefas específicas é de extrema importância, uma vez que 
essa distribuição pode impactar diretamente o tempo de desenvolvimento e a 
qualidade do produto final. Objetivando auxiliar os gestores, propomos aqui 
um processo de recomendação de desenvolvedores para projetos e tarefas com 
base no conhecimento acumulado por cada especialista (modelo orientado a 
tópico). Nossa proposta adota uma estratégia personalizada de recomendação. 
Aqui, o usuário do sistema é o gerente responsável pela alocação e os 
desenvolvedores são vistos como os “itens” que serão recomendados. Assim, o 
perfil (efêmero) do usuário será representado pela descrição da tarefa a 
ser realizada no momento, e os desenvolvedores (“itens”) são representados 
pela descrição dos trabalhos e atividades que cada um já realizou (dados históricos). Por fim, 
adotamos a técnica de recomendação baseada em filtragem de conteúdo, que 
analisa a similaridade entre tarefas a realizar (“perfil” do usuário) e os 
dados históricos dos desenvolvedores. Essa configuração de estratégia e 
técnica apresentou os melhores resultados nos testes exploratórios 
realizados com diferentes abordagens. Foi implementado um sistema protótipo 
para recomendação de especialistas no contexto de uma empresa de 
desenvolvimento de software. Esse sistema, implementado em Python, conta 
com três módulos: (1) Coleta de Informações, que recupera e pré-processa as 
informações necessárias disponíveis na ferramenta de gerenciamento de 
tarefas da empresa parceira; (2) Módulo de Recomendação, que analisa as 
informações coletadas e recomenda os desenvolvedores mais adequados para 
cada tarefa e projeto; e (3) Módulo de Gerenciamento de Alocação, 
responsável por gerenciar os cadastros do sistema, registrando e mantendo o 
controle das alocações de desenvolvedores a tarefas e projetos. As 
tecnologias utilizadas são: Django, Jira, NLTK, Pandas e Scikit-learn. A 
validação do protótipo foi realizada durante um período de dois meses de 
uso, considerando um total de 191 recomendações de atividades. Os 
resultados foram analisados observando-se quais desenvolvedores 
recomendados pelo sistema foram de fato alocados pelo gerente para as 
tarefas de entrada. O protótipo alcançou uma precisão de 65,13%, o que 
indica que os resultados não são aleatórios, e que o sistema tem potencial 
para melhorar o processo de alocação de desenvolvedores a tarefas, 
facilitando a busca pelo profissional mais adequado para cada atividade.

Palavras-chave: Alocação de especialistas. Sistema de recomendação. 
Engenharia de software.

Comentários desativados

Sobre este site

Portal institucional do Centro de Informática – UFPE

Encontre-nos

Endereço
Av. Jornalista Aníbal Fernandes, s/n – Cidade Universitária.
Recife-PE – Brasil
CEP: 50.740-560

Horário
Segunda–Sexta: 8:00–18:00