engineer-testable-requirementslisted
Install: claude install-skill SylphxAI/skills
# Engineer Testable Requirements
Produce one **Requirements Contract** that states what outcome and observable
behavior the system must provide without prematurely hiding a design choice
inside a requirement. Read
[references/requirements-method.md](references/requirements-method.md) before
baselining the contract.
## When to use
- Needs/requirements must become testable acceptance criteria with oracles and traceability
- Ambiguous adjectives (fast, secure, user-friendly) need observable context and boundaries
- Not for architecture shape (`decide-architecture-shape`) or user research (`research-user-needs`)
## Method
1. Define the subject, system boundary, lifecycle stage, intended outcomes,
stakeholders, users and affected parties, operating contexts, external
authorities, assumptions, constraints, and decision owners.
2. Elicit needs from current primary evidence: user research, existing behavior,
incidents, contracts, policies, regulations, interfaces, operational data,
and stakeholder input. Label observed need, requested preference, inferred
need, assumption, and binding constraint separately.
3. Resolve terminology and model contexts, actors, goals, scenarios, state
transitions, normal flows, alternatives, failures, recovery, misuse, and
lifecycle events. Expose conflicts and missing authorities before drafting.
4. Derive uniquely identified requirements across functional behavior, data,
interfaces, quality attributes, safety/security/priva