Definição
Antes de qualquer código, você escreve (muitas vezes com ajuda do modelo) requisitos, design e uma lista de tarefas. A spec vira a fonte da verdade: o modelo implementa uma tarefa por vez em cima dela, e toda mudança começa atualizando a spec. Troca tempo no início por previsibilidade em features maiores.
Exemplo de prompt
Um SPEC.md curto e depois um prompt que aponta para uma tarefa.
# SPEC.md: Carrossel da home## RequisitosR1. Mostrar as 5 imagens publicadas mais recentes.R2. Trocar a cada 5s; pausar com hover ou toque.R3. Lazy load das imagens fora da tela.R4. Piscar duas vezes (2 x 150ms) a cada troca.## Critérios de aceite- Com 0 imagens, não renderizar nada e não logar erro.- Se uma imagem falhar, pular para a próxima.## Tarefas1. Hook de dados useCarouselImages() (R1)2. Componente do carrossel com timer (R2, R4)3. Lazy load e tratamento de erro (R3)Implemente a tarefa 1 do SPEC.md. Não comece a tarefa 2.Se encontrar uma lacuna na spec, pare e proponha uma atualização.
O que revela
- Disciplina de engenharia e decomposição de problemas
- Capacidade de escrever requisitos e critérios de aceite sem ambiguidade
- Pensamento sobre mudança: como a spec evolui junto com o código
Use quando
- Features que atravessam muitos arquivos ou vários dias
- Trabalho dividido entre várias pessoas ou agentes
- Domínios em que os requisitos precisam ser auditáveis
Cuidado com
- Especificar demais tarefas pequenas (cascata em miniatura)
- Spec e código se distanciando com o tempo
- Tratar a spec como pronta em vez de um documento vivo
Na entrevista
Observe
- A spec é testável (critérios de aceite) ou é só texto?
- A pessoa implementa em passos pequenos e confere cada um contra a spec?
Pergunte
- Qual requisito foi o mais difícil de escrever com precisão?
- Se produto mudar o R2 amanhã, qual é o seu fluxo?
Origem
Escrever especificações antes do código é uma prática antiga de engenharia, e o nome "specification-driven development" aparece em pesquisa desde 2004. Como fluxo de AI coding, foi popularizado em 2025 pelo AWS Kiro (julho) e pelo GitHub Spec Kit (setembro), ferramentas que transformam uma spec em plano e lista de tarefas para um agente.