Overview
The SDD workflow transforms vague ideas into working systems through a structured, iterative process. Each step builds upon the previous one, creating a tight feedback loop between intent, specification, and implementation.Unlike traditional development where specs are written once and forgotten, SDD treats specifications as living artifacts that continuously evolve alongside your understanding of the problem.
The Complete Workflow
Establish Project Principles
Create your project’s governing principles using This creates
/speckit.constitution. These immutable principles guide all subsequent development decisions..specify/memory/constitution.md with your architectural DNA—principles that shape how specifications become code.Capture the Idea
The workflow begins with an idea—often vague and incomplete. Through iterative dialogue with AI, this idea becomes a comprehensive PRD using What happens:
/speckit.specify.Focus on the what and why, not the tech stack. Describe user needs, business goals, and acceptance criteria.
- AI asks clarifying questions
- Identifies edge cases
- Helps define precise acceptance criteria
- Creates a feature branch (e.g.,
001-photo-albums) - Generates
specs/001-photo-albums/spec.md
Clarify Requirements (Recommended)
Before creating technical plans, use This structured workflow:
/speckit.clarify to address underspecified areas through structured questioning.- Asks sequential, coverage-based questions
- Records answers in a Clarifications section
- Reduces rework downstream
- Ensures all stakeholders have shared understanding
Run this before
/speckit.plan to avoid rebuilding technical plans when requirements change.Research and Context Gathering
Throughout the specification process, research agents gather critical context:
- Library compatibility investigations
- Performance benchmarks
- Security implications
- Organizational constraints (database standards, auth requirements, deployment policies)
/speckit.plan and is documented in research.md.Generate Implementation Plan
Use AI generates:
/speckit.plan to translate business requirements into technical architecture.plan.md- Technical architecture and implementation phasesresearch.md- Technology choices with documented rationaledata-model.md- Entity definitions and relationshipscontracts/- API specifications and interfacesquickstart.md- Key validation scenarios
Validate Consistency
Use AI analyzes specifications for:
/speckit.analyze to cross-check artifacts for consistency, coverage, and alignment.- Ambiguity and contradictions
- Gaps in requirements coverage
- Misalignment between spec and plan
- Missing acceptance criteria
This isn’t a one-time gate—it’s an ongoing refinement that continuously improves quality.
Break Down Into Tasks
Use Generates
/speckit.tasks to create an actionable task list from your implementation plan.tasks.md with:- Tasks organized by user story
- Dependency management (models → services → endpoints)
- Parallel execution markers
[P] - Exact file paths for implementation
- Test-driven development structure
- Checkpoint validation for each phase
Execute Implementation
Use Code generation begins with the implementation plan as the guide:
/speckit.implement to execute all tasks and build your feature.- Domain concepts become data models
- User stories become API endpoints
- Acceptance scenarios become tests
- Tasks execute in correct order respecting dependencies
Implementation and testing merge through specification—test scenarios aren’t written after code, they’re part of the specification that generates both.
Continuous Feedback Loop
The feedback loop extends beyond initial development:
- Production metrics inform specification refinement
- Incidents trigger spec updates for next regeneration
- Performance bottlenecks become non-functional requirements
- Security vulnerabilities become constraints affecting all future generations
Workflow Characteristics
Team Process
SDD supports collaborative development:Version Control
Team-reviewed specifications are expressed and versioned, created in branches, and merged like code.
Living Documentation
When a product manager updates acceptance criteria, implementation plans automatically flag affected technical decisions.
Continuous Evolution
When an architect discovers a better pattern, the PRD updates to reflect new possibilities.
Shared Understanding
Specifications become the common language between product, design, and engineering.
Early Generation
Code generation begins as soon as specifications and implementation plans are stable enough, but they do not have to be complete.Why generate early?
Why generate early?
Early generations might be exploratory—testing whether the specification makes sense in practice. This validates assumptions before investing in complete specifications.Benefits:
- Discover specification gaps through concrete implementation
- Validate technical feasibility early
- Get working prototypes for stakeholder feedback
- Identify missing edge cases in actual usage
SDLC Transformation
SDD transforms the traditional Software Development Lifecycle:| Traditional SDLC | Spec-Driven Development |
|---|---|
| Requirements → discrete phase | Requirements → continuous activity |
| Design → separate from coding | Design → generates implementation |
| Testing → after implementation | Testing → part of specification |
| Maintenance → manual updates | Maintenance → specification evolution |
| Change → disruptive | Change → systematic regeneration |
Requirements and design become continuous activities rather than discrete phases that happen once and are forgotten.
Time Comparison
Traditional Approach
SDD Approach
- Complete feature specification with user stories
- Detailed implementation plan with technology choices
- API contracts and data models
- Comprehensive test scenarios
- All documents versioned in a feature branch
Optional Quality Commands
Enhance your workflow with additional validation:/speckit.analyze
Cross-artifact consistency and coverage analysis. Run after
/speckit.tasks, before /speckit.implement./speckit.checklist
Generate custom quality checklists that validate requirements completeness, clarity, and consistency—like “unit tests for English.”
Next Steps
Understand the Philosophy
Explore the core principles and design decisions behind SDD
Get Started
Begin practicing Spec-Driven Development in your projects