SDD es una práctica de desarrollo de software donde la especificación — no el código — es el punto de partida.
Antes de construir, el equipo articula explícitamente:
- qué debe hacer el sistema,
- por qué, y
- bajo qué condiciones sabrá que lo hizo bien.
El Ciclo SDD
El ciclo canónico del SDD, tal como aparece en la literatura actual, es de 4 fases:
$$
Specify → Plan → Tasks → Implement
$$
Con la lógica de que cada fase tiene un trabajo específico, y no se avanza a la siguiente hasta que la actual está completamente validada. GitHub
Desarrollando cada paso:
- Specify —
defines scope, intent y constraints antes de tocar código. La spec se convierte en la fuente de verdad.
- Plan —
el agente produce un plan de implementación estructurado: tareas, archivos, funciones y pasos de validación. Medium
- Tasks —
el agente toma la spec y el plan y los descompone en trabajo concreto: chunks pequeños y revisables que resuelven una pieza específica del puzzle. GitHub
- Implement —
el agente ejecuta con confianza mientras el humano revisa cambios enfocados, no dumps de mil líneas de código. Zencoder Docs
Algunos autores lo presentan también como 3 fases colapsando Tasks dentro de Plan, quedando: Specify → Plan → Implement.