Spec-Driven Development

A resposta direta da indústria, em 2025-2026, ao tech debt do vibe coding. Não é “voltar a waterfall” — é reconhecer que LLMs precisam de contrato explícito para gerar código previsível. Specs viram source of truth, código vira artefato derivado e validado. Pipeline canônico em 4 fases (Specify → Plan → Tasks → Implement) com validação contínua. GitHub Spec Kit virou padrão open source; Kiro é a aposta da Amazon; OpenSpec brilha em brownfield. Esta trilha mapeia o problema, o método, as ferramentas, e o pragmatismo de adoção — incluindo quando não usar SDD.

Pré-requisitos

Recomendado ter passado por Agentes de Codificação (Trilha 2 — para entender o problema concreto), Economia de Tokens (Trilha 3 — pra entender o custo do retrabalho), e idealmente Context Engineering (Trilha 4 — specs são camada de contexto). SDD opera no topo dessas disciplinas.

Não é uma metodologia universal

SDD é resposta calibrada a um problema específico. Para protótipos, hackathons, ou exploração inicial, vibe coding é melhor. Esta trilha enfatiza tanto quando usar quanto quando não usar.

Comece por aqui

Trilha sequencial recomendada — problema → método → pipeline → ferramentas → prática.

Bloco 1 — O Problema e a Proposta (3 notas)

A crise que motivou SDD, a definição da metodologia, e o espectro de rigor.

Bloco 2 — O Pipeline SDD (4 notas)

As fases canônicas, fase por fase, com anti-patterns e métricas.

Bloco 3 — Ferramentas e Ecossistema (3 notas)

Panorama dos players, integração com agentes, conexão com context engineering.

Bloco 4 — Prática e Futuro (2 notas)

Adoção concreta semana-a-semana e debate honesto sobre limites.

Rotas alternativas

Rota crise (estamos sofrendo de tech debt agora)

“Time já adotou IA e está acumulando dívida — preciso reagir”

01 - O problema do vibe coding em produção02 - O que é Spec-Driven Development11 - Guia de implementação SDD — do zero ao projeto12 - Debates — spec-as-source vs pragmatismo

Rota arquiteto (entender o método antes de adotar)

“Quero avaliar SDD com cuidado antes de empurrar para o time”

02 - O que é Spec-Driven Development03 - Níveis de rigor — spec-first, spec-anchored, spec-as-source04 - Fase Specify — definindo outcomes e constraints07 - Fase Validate — spec como contrato executável12 - Debates — spec-as-source vs pragmatismo

Rota multi-agent (orquestração avançada)

“Quero SDD operando com agentes coordenados em paralelo”

02 - O que é Spec-Driven Development05 - Fase Design e Plan — arquitetura e decomposição09 - SDD com agentes — coordinator, implementor, validator10 - Integração com context engineering — specs como contexto persistente

Rota ferramenta (já decidi adotar — qual stack?)

“Sei que quero SDD — qual ferramenta?”

03 - Níveis de rigor — spec-first, spec-anchored, spec-as-source08 - Ferramentas SDD — Kiro, Spec Kit, OpenSpec, Tessl11 - Guia de implementação SDD — do zero ao projeto

Rota cético (vendas demais — onde tá o problema?)

“Tudo isso parece bullshit corporativo — me convença ou me explique os limites”

12 - Debates — spec-as-source vs pragmatismo01 - O problema do vibe coding em produção03 - Níveis de rigor — spec-first, spec-anchored, spec-as-source02 - O que é Spec-Driven Development

Leituras recomendadas

FonteTipoCobertura
GitHub Blog — Spec-driven development with AIPost oficialNotas 02, 04, 08, 11
GitHub Spec Kit (github/spec-kit)RepoNotas 04-08, 11
Augment Code — What Is Spec-Driven Development?GuiaTrilha inteira
Martin Fowler — Understanding SDD: Kiro, Spec Kit, TesslAnáliseNotas 03, 08
DeepLearning.AI / JetBrains — SDD with Coding Agents (Andrew Ng)CursoNotas 02-07
Microsoft for Developers — Diving Into SDD With Spec KitTutorialNotas 04-07
Veracode — 2025 GenAI Code Security ReportRelatórioNota 01
VeriMAP (EACL 2026)Paper peer-reviewedNota 09
AWS — From spec to production: drug discovery with KiroCasoNota 08
Pixelmojo — AI Coding Technical Debt CrisisAnálise críticaNotas 01, 12

Veja também

Todas as notas

TABLE
  title AS "Título",
  status AS "Status",
  join(tags, ", ") AS "Tags"
FROM "03-Dominios/IA/Spec-Driven Development"
WHERE type != "moc"
SORT file.name ASC