Testar grátis
7 min leitura Guide 793 of 877

Spikes Técnicas e Tarefas de Pesquisa

Spikes respondem perguntas antes de você investir em soluções. O GitScrum ajuda equipes a rastrear trabalho de pesquisa e capturar aprendizados para referência futura.

Quando Fazer Spike

Identificando Necessidade

QUANDO FAZER UMA SPIKE:
┌─────────────────────────────────────────────────────────────┐
│                                                             │
│ FAÇA SPIKE QUANDO:                                          │
│ ─────────────────                                           │
│                                                             │
│ VIABILIDADE DESCONHECIDA:                                   │
│ "Conseguimos fazer isso?"                                 │
│ "Essa tecnologia funciona para nosso caso?"              │
│ "Isso é tecnicamente possível?"                           │
│                                                             │
│ ESTIMATIVA INCERTA:                                         │
│ "Não temos ideia quanto tempo vai levar"                  │
│ "Equipe nunca fez isso antes"                             │
│ "Pode ser 2 dias ou 2 semanas"                            │
│                                                             │
│ MÚLTIPLAS OPÇÕES:                                           │
│ "Devemos usar Biblioteca A ou B?"                         │
│ "Qual a melhor abordagem?"                                │
│ "Precisamos comparar opções"                              │
│                                                             │
│ RISCO DE INTEGRAÇÃO:                                        │
│ "Isso vai funcionar com nosso sistema existente?"        │
│ "Como conectamos a essa API?"                             │
│ "Qual o impacto de performance?"                          │
│                                                             │
│ ─────────────────────────────────────────────────────────── │
│                                                             │
│ NÃO FAÇA SPIKE QUANDO:                                      │
│ ──────────────────────                                      │
│ ❌ Equipe já sabe a resposta                               │
│ ❌ É um tipo de trabalho familiar                          │
│ ❌ Spike levaria tanto tempo quanto só fazer              │
│ ❌ Paralisia por análise - só tente                       │
└─────────────────────────────────────────────────────────────┘

Estrutura de Spike

Criando Spikes Efetivas

TEMPLATE DE SPIKE:
┌─────────────────────────────────────────────────────────────┐
│                                                             │
│ SPIKE: Abordagem de Geração de PDF                        │
│ ┌─────────────────────────────────────────────────────────┐│
│ │ TIPO: Spike Técnica                                    ││
│ │ TIME BOX: 2 dias                                        ││
│ │ RESPONSÁVEL: @alex                                      ││
│ │                                                         ││
│ │ PERGUNTA A RESPONDER:                                   ││
│ │ Qual biblioteca de PDF devemos usar para geração      ││
│ │ de faturas que suporte nossos requisitos?             ││
│ │                                                         ││
│ │ CONTEXTO:                                               ││
│ │ • Precisamos gerar faturas com tabelas, logos         ││
│ │ • Deve suportar múltiplos idiomas (RTL incluso)       ││
│ │ • Alvo: < 2 segundos por documento                    ││
│ │ • Volume: ~1000 documentos/dia                        ││
│ │                                                         ││
│ │ CRITÉRIOS DE SUCESSO:                                   ││
│ │ ☐ Recomendação com justificativa                      ││
│ │ ☐ Prova de conceito com fatura exemplo                ││
│ │ ☐ Benchmarks de performance                           ││
│ │ ☐ Estimativa para implementação completa              ││
│ │                                                         ││
│ │ OPÇÕES A EXPLORAR:                                      ││
│ │ 1. PDFKit (client-side)                               ││
│ │ 2. Puppeteer (headless Chrome)                        ││
│ │ 3. WeasyPrint (Python)                                ││
│ │ 4. wkhtmltopdf                                        ││
│ │                                                         ││
│ │ OUTPUT:                                                 ││
│ │ Documento com descobertas linkado a esta tarefa       ││
│ └─────────────────────────────────────────────────────────┘│
│                                                             │
│ ELEMENTOS CHAVE:                                            │
│ • Pergunta clara (não exploração vaga)                   │
│ • Time box (previne rabbit holes)                        │
│ • Critérios de sucesso (saber quando terminou)          │
│ • Output esperado (documento, protótipo, estimativa)    │
└─────────────────────────────────────────────────────────────┘

Tipos de Spike

CATEGORIAS DE SPIKE:
┌─────────────────────────────────────────────────────────────┐
│                                                             │
│ SPIKE TÉCNICA:                                              │
│ ──────────────                                              │
│ Explorar abordagem técnica ou viabilidade                 │
│                                                             │
│ Exemplos:                                                   │
│ • "Podemos usar GraphQL com nossa stack atual?"           │
│ • "Como integramos com API do Salesforce?"                │
│ • "Qual a melhor estratégia de caching?"                  │
│                                                             │
│ Output: Documento técnico, protótipo, recomendação        │
│                                                             │
│ ─────────────────────────────────────────────────────────── │
│                                                             │
│ SPIKE FUNCIONAL:                                            │
│ ────────────────                                            │
│ Explorar necessidades ou requisitos de usuário            │
│                                                             │
│ Exemplos:                                                   │
│ • "Como usuários esperam que busca funcione?"            │
│ • "Qual workflow faz sentido para aprovações?"           │
│                                                             │
│ Output: Mockups, fluxos de usuário, requisitos refinados │
│                                                             │
│ ─────────────────────────────────────────────────────────── │
│                                                             │
│ SPIKE DE ARQUITETURA:                                       │
│ ─────────────────────                                       │
│ Decisões de design de sistema                             │
│                                                             │
│ Exemplos:                                                   │
│ • "Monolito ou microserviços para este caso?"            │
│ • "Como estruturar comunicação entre serviços?"          │
│                                                             │
│ Output: Diagrama de arquitetura, ADR, trade-offs         │
└─────────────────────────────────────────────────────────────┘

Conduzindo Spikes

Durante a Pesquisa

EXECUÇÃO DE SPIKE:
┌─────────────────────────────────────────────────────────────┐
│                                                             │
│ FASE 1: SETUP (2-4 horas)                                   │
│ ─────────────────────────                                   │
│ • Revisar pergunta e critérios de sucesso                 │
│ • Configurar ambiente de teste                            │
│ • Coletar documentação das opções                        │
│ • Planejar o que testar                                   │
│                                                             │
│ FASE 2: EXPERIMENTAÇÃO (60% do tempo)                      │
│ ─────────────────────────────────────                       │
│ • Hands-on com cada opção                                 │
│ • Documentar enquanto experimenta                         │
│ • Anotar surpresas e bloqueios                           │
│ • Criar protótipos mínimos                                │
│                                                             │
│ FASE 3: ANÁLISE (20% do tempo)                             │
│ ─────────────────────────────                               │
│ • Comparar opções lado a lado                             │
│ • Identificar prós e contras                              │
│ • Formar recomendação                                     │
│ • Estimar esforço de implementação                       │
│                                                             │
│ FASE 4: DOCUMENTAÇÃO (10% do tempo)                        │
│ ───────────────────────────────────                         │
│ • Escrever relatório da spike                             │
│ • Preparar apresentação para equipe                       │
│ • Criar tarefas de follow-up                             │
│                                                             │
│ ─────────────────────────────────────────────────────────── │
│                                                             │
│ DICAS:                                                      │
│ • Documente ENQUANTO trabalha, não depois                │
│ • Código de spike é descartável - não polish            │
│ • Foco na pergunta, evite distrações                     │
│ • "Não consegui determinar" é resposta válida           │
└─────────────────────────────────────────────────────────────┘

Documentando Resultados

Output da Spike

RELATÓRIO DE SPIKE:
┌─────────────────────────────────────────────────────────────┐
│                                                             │
│ # Spike: Geração de PDF para Faturas                      │
│                                                             │
│ ## Resumo Executivo                                         │
│ Recomendamos Puppeteer para geração de PDF.               │
│                                                             │
│ ## Pergunta                                                 │
│ Qual biblioteca usar para gerar faturas PDF?              │
│                                                             │
│ ## Opções Avaliadas                                         │
│                                                             │
│ | Opção      | Prós              | Contras           |     │
│ |------------|-------------------|-------------------|     │
│ | PDFKit     | Simples, rápido   | Layout limitado   |     │
│ | Puppeteer  | HTML→PDF, flexível| Mais pesado       |     │
│ | WeasyPrint | CSS completo      | Python, instalação|     │
│ | wkhtmltopdf| Consolidado       | Menos maintained  |     │
│                                                             │
│ ## Benchmarks                                               │
│                                                             │
│ | Biblioteca  | Tempo/doc | Memória | Qualidade |         │
│ |-------------|-----------|---------|-----------|         │
│ | Puppeteer   | 1.2s      | 200MB   | Excelente |         │
│ | PDFKit      | 0.3s      | 50MB    | Boa       |         │
│ | WeasyPrint  | 0.8s      | 100MB   | Excelente |         │
│                                                             │
│ ## Recomendação                                             │
│ Puppeteer porque:                                          │
│ • Permite usar HTML/CSS que já conhecemos                │
│ • Renderização pixel-perfect                              │
│ • Suporte RTL out of the box                             │
│ • Performance dentro do requisito (< 2s)                 │
│                                                             │
│ ## Riscos Identificados                                     │
│ • Uso de memória em picos de volume                      │
│ • Necessidade de Chrome headless em produção             │
│                                                             │
│ ## Esforço Estimado                                         │
│ • Setup inicial: 2 dias                                   │
│ • Template de fatura: 3 dias                              │
│ • Integração com sistema: 3 dias                         │
│ • Total: ~2 sprints                                       │
│                                                             │
│ ## Próximos Passos                                          │
│ 1. Criar epic para implementação                         │
│ 2. Setup de infraestrutura (Chrome headless)             │
│ 3. Desenvolver templates                                  │
└─────────────────────────────────────────────────────────────┘

Métricas de Spike

MétricaO que MedeMeta
% time-box respeitadoDisciplina100%
% com recomendação claraEfetividade> 90%
Accuracy de estimativa pós-spikeQualidadeMelhor que sem spike

Soluções Relacionadas