Skip to content
Waqas Khan Pitafi
Founder and CEO, DevBatch · Dallas

Starter kit

starter-kit/design/functional-spec.md

One file from the portable method that ships with the book.

starter-kit / design / functional-spec.md

# Functional Specification — <project> (v0.1, DRAFT)

> Phase 1 artifact. Written before any code. Locked at the Phase-1 gate before design/build.
> Every functional requirement carries a **testable acceptance criterion** (cross-referenced in
> `acceptance-criteria.md`). State assumptions explicitly; state non-goals loudly.

## 1. Goal — the one job
<!-- The single job this product does. If you can't say it in a sentence, the scope is wrong. -->

## 2. Users & top journeys
<!-- Who uses it; the 3–5 journeys that matter most, start to finish. -->

## 3. Functional requirements
> Each `FR-n` → an `AC-n` in acceptance-criteria.md.
- **FR-1** — <!-- requirement --> (→ AC-1)
- **FR-2** — …

## 4. Data entities & relationships
<!-- The nouns and how they relate. This seeds the data model in architecture.md. -->

## 5. Non-goals (this version)
<!-- Explicitly out of scope. Prevents scope creep and sets reviewer expectations. -->

## 6. Security & privacy notes
<!-- Sensitive data, auth model, transport, secrets, backups, audit — sized to the domain. -->
Prefer the whole thing at once? Download the starter kit as a zip. The files here and the files in the zip are the same.