Algoritmos Genéticos Para a Formação de Times de Desenvolvimento Ágil: Uma Análise Comparativa com Programação Inteira
Formação de Times ágeis, Algoritmo Genético, Programação Inteira, Habilidades Técnicas, Colaboração Histórica.
A formação de times de desenvolvimento de software é uma atividade crítica e de complexidade computacional NP-difícil, com impacto direto na produtividade e no sucesso de projetos ágeis. Em contextos de metodologias como o Scrum, a complexidade aumenta pela necessidade de compor equipes multifuncionais e colaborativas sob demandas dinâmicas. Apesar do interesse acadêmico, há uma escassez de estudos que quantifiquem o trade-off entre qualidade da solução e eficiência computacional comparando abordagem metaheurística a método de otimização exata. Este trabalho objetivou a proposição de uma abordagem de metaheurística via algoritmo genético para automaticamente solucionar tarefas de formação de times de desenvolvimento de software, tendo como baseline um método de otimização exata via programação inteira. A abordagem utiliza dois critérios principais: a compatibilidade de habilidades técnicas e o coeficiente de colaboração histórica entre membros. As restrições incluem níveis de senioridade específicos e alocação única de desenvolvedores. A experimentação utilizou dados reais de 149 desenvolvedores e 47 projetos históricos de desenvolvimento de software, testando 30 instâncias em cenários de complexidade crescente. Após um estudo comparativo entre as duas abordagens, observando-se critérios de eficiência e qualidade da solução, os resultados revelam que o AG alcançou soluções com qualidade equivalente à ótima (PI) em mais de 90% das instâncias, com um gap de erro médio inferior a 0,11%. Notavelmente, o AG foi aproximadamente 340 vezes mais rápido que a PI, apresentando escalonamento linear. Os achados indicam que o AG é a abordagem mais viável para apoio à decisão em tempo real na gestão de recursos humanos em ambientes ágeis.