Specification-driven development logopeterindia.net
Knowledge Hub

Specification-Driven Development (SDD)

What specification-driven development is, how it differs from TDD, BDD and model-driven engineering, and which frameworks, formats, verification tools and coding agents support it. Grouped by purpose, not ranked.

74 topics•8 categories•Updated November 2026

1. Concepts and Foundations

9 entries

What specification-driven development means and where it comes from. Spec-driven development makes the specification the source of truth and generates or checks code against it.

2. SDD Frameworks and Tools

11 entries

Toolkits that structure requirements, plans and tasks for coding agents. Compare how much of the spec each tool keeps alive after coding.

3. Specification Formats and Languages

13 entries

The notations in which requirements, contracts and designs are written. Pick formats that tools can validate, not only people.

4. Formal and Lightweight Verification

9 entries

Specifications that can be checked mathematically or exhaustively. From model checking to verified code.

5. Contract Testing and Conformance

9 entries

Checking that implementations still match the spec. Specs drift unless tests enforce them.

6. Research on Specs and Code Generation

6 entries

Studies of how well models write and use specifications. Early results; evaluate on your own code.

7. Coding Agents That Consume Specs

6 entries

Agents and protocols used to implement from a spec. Most SDD tools target several of these.

8. Related Pages on This Site

11 entries

Directories on agents, harnesses and the wider factory. Where the tools around SDD are listed.

Frequently Asked Questions

What is specification-driven development (SDD)?

Specification-driven development treats a written specification as the main artifact and source of truth. Requirements, plans and tasks are captured in structured documents, and AI coding agents or generators implement code from them while tests and checks verify the result against the spec. The term is used most often for workflows with AI coding agents.

How is SDD different from TDD and BDD?

Test-driven development writes tests first, and behaviour-driven development writes behaviour examples in plain language such as Gherkin. SDD works one level higher: it specifies intent, design and tasks, and may include tests or scenarios as part of the spec. The approaches combine well, because tests and scenarios keep the spec honest.

Which tools support SDD?

GitHub Spec Kit, Kiro, OpenSpec, BMAD-METHOD, Tessl, Agent OS and Claude Task Master are common starting points. Many work with several coding agents, and repository files such as AGENTS.md and Agent Skills carry standing instructions.

What does an SDD workflow look like?

A typical flow is: write a spec of what and why, clarify open questions, produce a technical plan, break it into tasks, let an agent implement each task, then verify with tests and reviews and update the spec when decisions change. GitHub Spec Kit names the stages specify, plan, tasks and implement.

What formats should specs use?

Use formats that tools can validate: OpenAPI, AsyncAPI, JSON Schema or Protocol Buffers for interfaces, Gherkin for behaviour, EARS or RFC 2119 wording for requirements, and architecture decision records for design choices. Plain Markdown works for intent and context.

What are the limits of SDD?

Specs can drift from code, add review overhead and give false confidence if nobody checks the output. Martin Fowler's analysis notes that tools differ in whether the spec is kept after coding. Contract tests, linting and verification help keep specs and implementations aligned.

How current is this list?

Links were checked in November 2026. Some sites block automated checks and may need a manual click. SDD tooling changes quickly, so check each project for its latest status. This page is a resource list, not engineering advice.