Spec
A durable description of required behavior, constraints, interfaces, and acceptance criteria.
Illustrative conversation
- The ticket says “add search,” but how should ranking and empty states behave?
- Those product requirements and acceptance cases belong in the spec before implementation begins.
Definition
A specification records what a system or change must accomplish and the conditions under which it is acceptable. A useful software spec covers behavior, interfaces, constraints, failure cases, quality requirements, and verifiable acceptance criteria without accidentally turning every implementation suggestion into a requirement. It should remain versioned and traceable as decisions change.
Reviewed