A methodology where detailed specifications serve as the foundation for AI-assisted development. Instead of writing vague prompts, precise specs are created that both humans and AI use as their working basis.
Traditional development treats code as primary and documentation as secondary. SDD inverts this — specifications become the source of truth that drives implementation. Code serves the spec, not the other way around.
Specs constrain LLM output productively: no implementation details in requirements, test-first thinking before code generation, explicit uncertainty markers instead of plausible guesses. The AI becomes a disciplined engineer, not a creative guessing machine.
Combines classic TDD thinking with modern LLM workflows. Result: more consistent codebase, better AI outputs, traceable decisions.