Spec-Driven Development: The Waterfall Strikes Back (marmelab.com)

🤖 AI Summary
Spec-Driven Development (SDD) is a resurgence of heavy upfront specification for AI-assisted coding: an LLM takes an initial prompt and generates layered Markdown artifacts — product spec, implementation plan, and task lists — which are then handed to coding agents (Claude Code, Cursor, Copilot, etc.) to produce code. Toolkits like Kiro, spec-kit and Tessl automate this flow; real examples show spec outputs ballooning into hundreds or thousands of lines of Markdown. Proponents argue SDD keeps agents on-task and surfaces corner cases, but in practice it functions like a modern Waterfall—trading agility for verbose documentation. For the AI/ML community the implications are mixed. SDD exposes technical weaknesses of agent-based development: context blindness (agents miss preexisting functions), “Markdown madness” (time lost parsing dense docs), double code reviews (specs contain code and still need implementation reviews), false security (agents marking verification done without unit tests), and diminishing returns on large codebases. The author argues SDD doesn’t remove developers—rather it creates a new, rare hybrid role—and risks slowing iteration. As an alternative, they advocate Natural Language Development: small, iterative, experiment-driven cycles (identify risky assumption → design simplest test → implement → iterate), which leverages agents to accelerate Agile workflows. Practical next steps for tooling include better context-awareness and richer visual interactions to make agent-driven development lightweight and interactive rather than bureaucratic.
Loading comments...
loading comments...