PRD & Spec Engineering
Write the blueprint before you build — fewer bugs, less rework
Using AI to turn a vague app idea into a precise spec before any code is written: the one-liner, user stories, the data model, screens, acceptance criteria, constraints, and a build plan you approve first. Taught as a weak → strong ladder, with a small lab-inventory app as the running example.
After this chapter you can
→ Turn a one-line app idea into a scoped spec the AI can build from
→ Write user stories, a data model, and acceptance criteria
→ Set explicit constraints and an out-of-scope boundary for v1
→ Turn the spec into an ordered build plan you approve before any code
Beginner Describe what you are building
Start with the one-liner Name the app, the user, and the core job in one sentence — then make the AI ask before it builds.
✕ Build me a lab inventory app.
✓ I want a web app for my lab to track reagents — who has what, quantities, and expiry dates, with a low-stock alert. Users are 5 lab members; no public access. Before writing any code, ask me 5 questions to pin down the requirements.
Why it works: A one-liner plus "ask me first" turns a vague wish into a scoped conversation — the AI clarifies instead of guessing and building the wrong thing.
Name the users and what they do List the roles and their top tasks as user stories.
✕ It should have users.
✓ Two roles: (1) Lab member — adds reagents, updates quantities, sees the low-stock list. (2) Lab manager — everything a member can do, plus delete entries and export to CSV. Write these as user stories: 'As a [role] I can [action] so that [reason].'
Why it works: User stories pin down exactly what each person must be able to do, so the AI builds the features that matter — not a generic CRUD app.
Must-haves vs out-of-scope Scope the first version — and say out loud what it will NOT do.
✕ Add every feature you can think of.
✓ Must-have for v1: add / edit / delete reagents, low-stock alert, CSV export. Explicitly NOT in v1: barcode scanning, multi-lab support, a mobile app. Build only the must-haves first.
Why it works: An explicit out-of-scope list is what stops v1 from ballooning into a half-finished, buggy everything-app — for both you and the AI.