Product Requirements Strategy
Introduction: The Human-AI Partnership in SDD
Many teams write detailed specifications, implement features, and then struggle to maintain those specifications forever. This creates specification debt—outdated documentation that drifts from reality.
This lesson introduces a better mental model: specifications are temporary implementation guides, while product requirements documents (PRDs) persist as business context. Understanding this distinction prevents documentation debt and keeps your development process lightweight.
Core Documentation Principles
The correct mental model treats different documentation types according to their purpose and lifetime.
What persists in your codebase:
- Product requirements document: Business requirements and rationale (lives in
docs/prds/) CODEX.md: Project constitution- ADRs: Architecture decisions (immutable records)
- API schema: API contracts
- Code + Tests: Executable implementation
What serves temporarily:
- Specification: Implementation guide (archived after use)
- Technical plan: Implementation approach
- Task list: Execution checklist
This separation prevents the common mistake of treating all documentation as equally permanent.
Why Specifications Are Temporary
A specification guides implementation right now. Once you've implemented and tested the feature, the specification has served its purpose. The actual behavior now lives in code, the API contract exists in the API schema, and the business context remains in the PRD.
After implementation completes, archive the specification:
When modifying a feature later, don't try to "update" an old specification. Instead, follow this workflow:
- Start from the PRD—are business requirements still current?
- Generate a new specification—a fresh implementation guide
- Implement and archive the new specification
Specifications are like scaffolding: essential during construction, but removed once the building stands.
What Is A PRD?
A PRD defines the WHAT and WHY at the business level. It explains what problem you're solving and why it matters to users or the business.
A PRD contains:
- Problem statement: What problem does this solve?
- Users and personas
- Functional requirements
- Constraints: Technical, business, and performance
- Success metrics: Post-deployment analytics goals
- Out of scope: What you're deliberately not building
The PRD is written for product managers, stakeholders, developers, and future team members. It provides business context that helps people understand why features exist without reverse-engineering intent from code.
A PRD is not: As detailed as a specification, an implementation guide, or runtime reference documentation.
