Inside BossaBox: Como a IA transformou nosso processo de QA
Por Rodrigo Takeshi - Data Tech Lead e Tiago Seixas - Software Development Intern na BossaBox

7 minutos de leitura

Este artigo mostra como usamos IA Generativa para melhorar nosso processo de Quality Assurance (QA) aqui na BossaBox, agilizando a criação e análise de cenários de teste de software. Em nossa prova de conceito, conseguimos reduzir em 50% o tempo que os analistas gastam no planejamento e na execução desses testes.

Além disso, automatizamos a geração de relatórios sobre a execução dos cenários, ajudando a identificar possíveis problemas para os principais interessados (stakeholders). Acreditamos que esse projeto abre portas para novas oportunidades de inovação na BossaBox, melhorando cada vez mais os processos internos e a eficiência operacional da empresa.

Por que pensamos em automatizar o QA

No dia a dia da BossaBox, percebemos que muitos passos do QA ainda exigem trabalho manual e repetitivo. Para resolver isso, decidimos criar uma arquitetura de IA com múltiplos agentes capaz de:

  1. Analisar Cenários de Teste: revisar cenários já criados e sugerir melhorias.
  2. Gerar Cenários de Teste: criar novos cenários com base em dados de uso e requisitos dos projetos.

Nossos times trabalham formando squads sob demanda para desenvolver soluções digitais para clientes. E vimos que havia muito potencial de usar dados (por exemplo, do Jira, Pipefy e Google Sheets) para tornar esse processo de QA mais inteligente e rápido. Assim, nosso sistema de agentes não só avalia cenários existentes, mas também cria novos, cobrindo mais possibilidades e elevando a qualidade dos testes.

LEIA TAMBÉM: Como DevEx e Métricas DORA podem transformar a gestão e o desempenho do time

Objetivo principal

Mostrar como uma arquitetura de IA bem montada pode transformar processos normalmente vistos como “lentos e trabalhosos” em atividades mais ágeis e cheias de insights. Essa prova de conceito deixou claro que a IA pode acelerar tarefas repetitivas e, ao mesmo tempo, dar sugestões valiosas para elevar o padrão de qualidade do software.

Visão macro do processo de implementação:

Entendendo como funciona o QA na BossaBox

Trabalhamos com ciclos de 15 dias (Sprints). No começo de cada Sprint, o QA Analyst define os cenários de teste com base nas informações da Definition of Ready (DoR) e da Definition of Done (DoD).

Depois que o desenvolvedor termina uma feature, o QA:

  1. Recebe o card no Jira indicando que a feature está pronta para teste.
  2. Executa testes para ver se tudo funciona bem e se não há regressões.
  3. Se não houver problemas, a feature segue para a próxima etapa.
    • Se houver bugs, o card volta para o desenvolvedor corrigir.
  4. Cria novos cards de Bug quando aparecem erros adicionais.

Nossa Arquitetura de Dados em ELT

Para que a IA tenha dados confiáveis e atualizados, montamos uma arquitetura de dados seguindo a abordagem ELT (Extract, Load, Transform):

  1. Extract (Extrair): Usamos o Hevo Data para coletar dados do Jira, Pipefy e Google Sheets.
  2. Load (Carregar): Esses dados vão para o BigQuery (banco de dados na nuvem do Google).
  3. Transform (Transformar): Usamos Dataform e consultas SQL no BigQuery para limpar e organizar os dados.

Ao final, criamos uma ferramenta de IA (com CrewAI e modelo GPT) que acessa o BigQuery para gerar e analisar cenários de teste.

Organizando os Dados (Arquitetura em Camadas)

Para facilitar a vida dos agentes de IA, adotamos um modelo de Arquitetura Medalhão no BigQuery, dividindo as tabelas em três níveis:

  • Bronze: Dados brutos, recém-extraídos das fontes.
  • Prata: Dados já tratados, mas ainda não completamente refinados.
  • Ouro (Gold): Dados prontos para análise e geração de relatórios.

Assim, fica mais fácil rastrear de onde vieram os dados, ver como foram transformados e garantir que a IA tenha acesso rápido e seguro às informações certas.

Como funciona a Aplicação Multiagentes

Usamos o CrewAI, uma biblioteca em Python que simplifica a criação de agentes de IA e permite criar nossas próprias “ferramentas” para eles.

No CrewAI, temos três tipos de componentes:

  • Agents (Agentes): Entidades que tomam decisões, coordenam fluxos de trabalho e processam respostas.
  • Tasks (Tarefas): Etapas que os agentes executam, como buscar dados em uma base ou executar um script.
  • Tools (Ferramentas): Funcionalidades que os agentes podem usar, como acessar APIs ou consultar bancos de dados.

Os agentes e as tarefas são configurados em arquivos YAML, onde definimos o que cada agente faz e que ferramentas ele pode usar.

Exemplo de fluxo (Crew – QA Analysis):

  1. Data Collector Agent: acessa o BigQuery (camada Gold), pega os dados certos (cenários de teste, stories etc.).
  2. QA Data Analyst Agent: analisa esses dados. Pode, por exemplo, revisar issues no Jira, sugerir cenários de teste adicionais, identificar pontos de atenção.
  3. Report Generator Agent: gera relatórios em formato .md para documentar as análises e sugestões finais.

Conclusão e Próximos Passos

Estamos apenas começando, mas já vimos como a IA Generativa pode reduzir tarefas repetitivas e tornar o QA mais eficiente na BossaBox.

Resultados que chamaram atenção:

  • Cada execução da IA custou, em média, R$ 0,02.
  • Redução de cerca de 50% no tempo que os analistas dedicam à criação de cenários de teste.

Desafios que encontramos:

  • Nem todos os processos estavam bem maduros, dificultando a automação.
  • Precisamos de descrições claras (textuais) dos testes, mas às vezes as evidências vêm em vídeos e imagens.
  • Gerenciar o volume de “tokens” nas requisições à IA foi um ponto de atenção (limites de uso do modelo).

O que aprendemos:

  • Uma cultura de dados mais forte e consistente facilita bastante o uso de IA.
  • Quanto mais padronizadas e detalhadas as descrições de tarefas, melhor o desempenho dos agentes.
  • A IA ajuda a mostrar onde podemos melhorar a organização interna.

Próximos passos:

  1. Incluir feedback humano (RLHF) para afinar as respostas da IA.
  2. Criar uma base de dados histórica dos resultados gerados pela IA.
  3. Melhorar a contextualização dos projetos, usando técnicas como Retrieval-Augmented Generation (RAG) e memórias persistentes.
  4. Testar novos modelos de IA (open source, outros provedores) para comparar desempenho e custo-benefício.

Nossa prova de conceito mostrou na prática como a IA Generativa pode revolucionar os processos de Quality Assurance (QA), acelerando testes, automatizando tarefas e elevando a qualidade dos projetos que entregamos aos clientes. E isso é só o começo. Seguimos ajustando, aprimorando e expandindo o uso dessa tecnologia para otimizar ainda mais nossos processos na BossaBox.

Se tem uma coisa que aprendemos nesse processo, é que a IA pode ser uma grande aliada na otimização do trabalho, desde automação de tarefas até a geração de insights mais inteligentes. E isso vale não só para QA, mas para várias áreas da tecnologia. Se você quer conhecer algumas dessas possibilidades na prática, basta preencher o formulário abaixo para acessar um guia com 5 ferramentas de Inteligência Artificial que podem ajudar a otimizar a gestão e a produtividade dos times de engenharia e produto:


Você pode também gostar