|
Abstract:
|
A gestão do ciclo de vida de defeitos de software em ambientes de alta tecnologia
envolve um conjunto de tarefas cognitivas, como triagem, priorização, planejamento
de Sprints e garantia de qualidade, que tradicionalmente dependem de intervenção
humana e estão sujeitas a inconsistências, latências e perda de informação entre plataformas. Este trabalho propõe uma plataforma de orquestração baseada em agentes
de Inteligência Artificial e Grandes Modelos de Linguagem (Large Language Models,
LLMs) para automatizar a gestão do ciclo de vida completo de bugs em uma empresa
de tecnologia, preservando a decisão humana nos pontos de maior impacto. O projeto
foi desenvolvido na gemineers GmbH, em Aachen, Alemanha, dando continuidade ao
estágio obrigatório do autor, durante o qual foi implementado um primeiro agente de triagem automática. A solução proposta, denominada autobugsync, adota uma arquitetura
multiagente orientada a eventos composta por oito agentes de domínio e um roteador
de eventos central, que cooperam de forma indireta por meio de um quadro compartilhado (blackboard) materializado nos rótulos das issues do GitLab, em um mecanismo
inspirado na estigmergia. Os agentes abrangem desde a ingestão contínua de defeitos,
por meio de um sensor de polling adaptativo, até a triagem automática de categoria e
prioridade com um LLM (Google Gemini, com mecanismo de contingência baseado no
modelo Llama executado via Groq), a priorização multicritério por meio de uma função
de pontuação ponderada com cinco dimensões normalizadas e o planejamento de
Sprints, formulado como um problema da mochila 0-1 e resolvido por uma heurística
gulosa sob restrições de capacidade das equipes. As etapas seguintes do ciclo compreendem o roteamento de issues de desenvolvimento entre dezenas de repositórios,
a coordenação do repasse para garantia de qualidade, com decisão final humana,
e a geração automática de cobranças de informações pendentes, encaminhadas à
gestão de produto. A implementação utiliza Python, os frameworks FastAPI e Uvicorn
para o servidor de webhooks orientado a eventos, e Streamlit para os painéis de visualização. A abordagem é avaliada quanto ao atendimento de requisitos funcionais
e não funcionais, a métricas quantitativas de operação e a propriedades de sistemas
multiagentes, como modularidade, autonomia, resiliência e extensibilidade. Entre os
resultados, destaca-se um experimento comparativo entre versões de prompt de triagem, que orientou, com base em evidência empírica, a escolha do prompt adotado em
produção. O trabalho contribui para a área de engenharia de software automatizada
ao atuar na camada de gestão organizacional do ciclo de defeitos, complementando
abordagens que se concentram na resolução técnica de bugs. |