1
resposta

[Projeto] FAÇA COMO EU FIZ - REDEFINIÇÃO DO DESAFIO

"FAÇA COMO EU FIZ - REDEFINIÇÃO DO DESAFIO"

1. DESAFIO IDENTIFICADO

Durante meu projeto de desenvolvimento de uma base de conhecimento dinâmica usando Node.js e JavaScript, enfrentei um desafio crítico: integração falha da API Google Gemini que gerava erros de autenticação (401/403) e timeouts, impedindo a geração automática de conteúdo e bloqueando o progresso do projeto.

"eu fiquei muito frustradaaaaa...."


2. APLICAÇÃO DA TÉCNICA DOS CINCO PORQUÊS

Comecei com o problema superficial e fui em camadas mais profundas:

Problema Inicial: "A API Gemini não funciona no meu sistema"

  • Por quê 1? As requisições retornam erros 401/403 de autenticação

    • Por quê 2? A chave API não está sendo validada corretamente no header da requisição

      • Por quê 3? Faltava configuração adequada dos headers HTTP e tratamento estruturado de erros

        • Por quê 4? A documentação da API não foi estudada em profundidade antes de começar a codificar

          • Por quê 5? Havia pressão por entrega rápida do projeto, levando a um planejamento técnico inadequado

Convergi para o Problema Real:
"Necessidade de estruturar um fluxo robusto de integração com API externa que inclua validação adequada, tratamento de erros gracioso e documentação clara para facilitar debugging e manutenção futura"


3. CATEGORIZAÇÃO DOS PROBLEMAS ENCONTRADOS

Identifiquei problemas em 3 categorias principais:

CATEGORIA 1: INFRAESTRUTURA / TECNOLOGIA

  • Como validar corretamente a autenticação com a API Gemini?
  • Como implementar retry logic para lidar com timeouts?
  • Como estruturar variáveis de ambiente de forma segura?
  • Como configurar headers HTTP corretamente?

CATEGORIA 2: PROCESSO / METODOLOGIA

  • Como documentar o fluxo de integração para facilitar manutenção futura?
  • Como testar a API em diferentes cenários antes de colocar em produção?
  • Como monitorar e registrar erros em tempo real?
  • Como criar testes automatizados para a integração?

CATEGORIA 3: PRODUTO / EXPERIÊNCIA DO USUÁRIO

  • Como garantir que a base de conhecimento se atualiza automaticamente sem falhas?
  • Como oferecer feedback visual ao usuário sobre o status da geração de conteúdo?
  • Como lidar com falhas na integração sem interromper completamente a experiência?
  • Como comunicar problemas técnicos de forma clara ao usuário?

4. PRIORIZAÇÃO E AFUNILAMENTO DO ESCOPO

Analisando as 3 categorias de problemas, identifiquei que:

  • Categoria 1 (Infraestrutura) é crítica e bloqueia tudo
  • Categoria 2 (Processo) é importante para sustentar a solução
  • Categoria 3 (Produto) depende das duas primeiras

Desafio Principal Escolhido (Escopo Afunilado):

"Como implementar um sistema robusto de integração com API Gemini que valide requisições corretamente, trate erros graciosamente e forneça logs claros para debugging?"

Por que escolhi este escopo:

  1. Resolve o problema técnico imediato que está bloqueando o projeto
  2. Cria uma base sólida para expandir funcionalidades futuras
  3. Seguindo o Duplo Diamante, este é o primeiro ciclo de solução que preparará o caminho para resolver os problemas secundários depois
  4. Uma vez que a integração funciona, posso iterar e abordar as outras categorias em ciclos posteriores

5. REDEFINIÇÃO FINAL DO DESAFIO (HMW - HOW MIGHT WE)

Declaração do Desafio:
"Como podemos implementar uma integração segura, confiável e monitorável com a API Google Gemini de forma que o sistema consiga gerar conteúdo automaticamente para a base de conhecimento, com tratamento robusto de erros e feedback claro sobre o status?"

Critérios de sucesso:
✓ Requisições autenticadas com sucesso
✓ Tratamento de erros sem crash da aplicação
✓ Logs detalhados para debugging
✓ Retry automático em caso de falha transitória
✓ Documentação clara para manutenção


6. PRÓXIMAS ETAPAS (FASE DE IDEAÇÃO)

  • Pesquisar soluções similares e melhores práticas
  • Prototipar solução com tratamento de erro estruturado
  • Validar com testes automatizados
  • Iterar e expandir para os problemas secundários identificados (feedback ao usuário, documentação)

Reflexão pessoal: Este exercício me ajudou a perceber que o Design Thinking não é apenas para UX/produto, mas fundamental também para resolver problemas técnicos. Afunilar o escopo foi crucial para não ficar paralizada tentando resolver tudo de uma vez.

1 resposta

Olá, Lune, como vai?

Seu relato mostra um processo muito bem estruturado de análise, síntese e definição do desafio. A forma como você conectou o Design Thinking a um contexto técnico ficou clara e coerente, e seu texto demonstra uma boa compreensão do valor da etapa de imersão para chegar a um problema realmente acionável.

A revisão dos cinco porquês está consistente e conduz a uma boa formulação do desafio central. Não há inconsistências no que você compartilhou e tudo segue um raciocínio bem alinhado com o objetivo da atividade. Algo que você pode considerar, se desejar aprofundar ainda mais, é experimentar diferentes formatos de visualização do fluxo da API, como mapas de fluxo ou diagramas de sequência, para reforçar a clareza das relações entre cada etapa da integração.

Parabéns pelo empenho e pela reflexão detalhada que você trouxe. Continue compartilhando suas análises e descobertas, o fórum está à disposição para acompanhar seu desenvolvimento.

Alura Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!