requirements-quality
Requirements quality assessment and improvement. Use when evaluating requirements against INVEST criteria, improving clarity, detecting ambiguity, or ensuring completeness. Provides quality checklists, refinement patterns, and MoSCoW prioritization guidance.
From spec-driven-developmentnpx claudepluginhub melodic-software/claude-code-plugins --plugin spec-driven-developmentThis skill is limited to using the following tools:
references/completeness-checklist.mdreferences/invest-criteria.mdreferences/refinement-patterns.mdRequirements Quality
Requirements quality assessment, INVEST criteria validation, and refinement patterns.
When to Use This Skill
Keywords: INVEST, requirements quality, clarity, ambiguity, completeness, testable, estimable, refinement, MoSCoW, prioritization, acceptance criteria, requirement validation, quality assessment
Use this skill when:
- Evaluating requirements against INVEST criteria
- Improving requirement clarity and precision
- Detecting and resolving ambiguity
- Ensuring requirements are complete
- Applying MoSCoW prioritization
- Refining requirements iteratively
- Validating acceptance criteria quality
INVEST Criteria Overview
The INVEST acronym defines six quality criteria for well-formed requirements:
| Criterion | Question | Red Flag |
|---|---|---|
| Independent | Can this be implemented alone? | "Requires X to be done first" |
| Negotiable | Is there room for discussion? | Over-specified implementation |
| Valuable | Does it deliver user value? | Technical-only benefit |
| Estimable | Can effort be estimated? | Vague or unbounded scope |
| Small | Can it be done in one iteration? | Multi-sprint scope |
| Testable | Can we verify it's done? | Missing acceptance criteria |
Quick Quality Assessment
Rapid INVEST Check
For each requirement, score 0-2 on each criterion:
| Score | Meaning |
|---|---|
| 0 | Does not meet criterion |
| 1 | Partially meets criterion |
| 2 | Fully meets criterion |
Interpretation:
- 10-12: High quality, ready for implementation
- 7-9: Acceptable, minor improvements needed
- 4-6: Needs work, significant refinement required
- 0-3: Not ready, major rewrite needed
Common Quality Issues
| Issue | Symptom | Fix |
|---|---|---|
| Too vague | "Make it user-friendly" | Add measurable criteria |
| Too large | Multi-week estimate | Split into smaller requirements |
| Untestable | No clear success condition | Add acceptance criteria |
| Dependent | "After X is complete" | Decouple or combine |
| Technical | "Refactor database" | Reframe as user value |
| Over-specified | Implementation details | Focus on what, not how |
MoSCoW Prioritization
Priority Levels
| Priority | Meaning | Guidance |
|---|---|---|
| Must | Critical for release | Without this, release fails |
| Should | Important but not critical | High value, schedule permitting |
| Could | Nice to have | Include if time allows |
| Won't | Out of scope (this time) | Explicitly deferred |
Prioritization Questions
- What happens if we don't include this?
- Is there a workaround without this?
- How many users are affected?
- What's the business impact?
- Are there dependencies on this?
Clarity Enhancement Patterns
Ambiguity Detection
Ambiguous Words to Avoid:
| Word | Problem | Better Alternative |
|---|---|---|
| "should" | Unclear obligation | "SHALL" (mandatory) or "MAY" (optional) |
| "quickly" | Subjective timing | "within 200ms" |
| "user-friendly" | Subjective quality | Specific usability criteria |
| "etc." | Incomplete list | Exhaustive enumeration |
| "appropriate" | Vague standard | Specific criteria |
| "some" | Undefined quantity | Explicit count or range |
| "easy" | Subjective difficulty | Measurable steps |
Clarity Checklist
- Uses specific, measurable terms
- Avoids ambiguous words
- Defines all acronyms on first use
- Includes units for all quantities
- Specifies actors clearly
- Defines success conditions
Acceptance Criteria Quality
Good Acceptance Criteria
Each acceptance criterion should be:
- Atomic: Tests one thing
- Precise: Clear pass/fail
- Complete: Covers the requirement
- Independent: Tests can run in any order
Given/When/Then Format
Given [precondition]
When [action]
Then [expected outcome]
Quality Check:
- Given establishes clear context
- When describes specific trigger
- Then defines observable outcome
- Covers happy path and error cases
- Each AC is independently testable
Refinement Workflow
Standard Refinement Process
1. Draft Requirement
↓
2. INVEST Assessment (score each criterion)
↓
3. Identify Issues (low-scoring criteria)
↓
4. Apply Fixes (use patterns below)
↓
5. Re-assess (verify improvements)
↓
6. Add Acceptance Criteria
↓
7. Final Validation
Iteration Patterns
When Independent fails:
- Extract dependencies into separate requirements
- Or combine tightly coupled requirements
When Negotiable fails:
- Remove implementation details
- Focus on outcomes, not methods
When Valuable fails:
- Reframe in user terms
- Connect to business goal
When Estimable fails:
- Add constraints and boundaries
- Define scope limits
When Small fails:
- Split by user type
- Split by scenario
- Split by CRUD operation
When Testable fails:
- Add acceptance criteria
- Define success metrics
Completeness Validation
Requirement Completeness
A complete requirement includes:
| Element | Description | Required? |
|---|---|---|
| ID | Unique identifier | Yes |
| Title | Brief descriptive title | Yes |
| Description | Full requirement text | Yes |
| Priority | MoSCoW level | Yes |
| Acceptance Criteria | Testable conditions | Yes |
| Dependencies | Related requirements | If any |
| Assumptions | Underlying assumptions | If any |
| Constraints | Limitations | If any |
Specification Completeness
A complete specification includes:
- All functional requirements identified
- Non-functional requirements included
- Edge cases considered
- Error handling specified
- Security requirements addressed
- Performance criteria defined
- Accessibility requirements included
- All requirements prioritized
- Dependencies mapped
- Assumptions documented
Quick Commands
| Action | Command |
|---|---|
| Assess requirement quality | /spec:validate <path> |
| Refine requirements | /spec:refine <path> |
| Audit specification | /spec:audit <path> |
Related Skills
ears-authoring- EARS pattern authoringgherkin-authoring- Given/When/Then criteriacanonical-spec-format- Canonical specification structurespec-management- Specification workflow hub
References
Detailed Documentation:
- INVEST Criteria - INVEST principles with examples
- Refinement Patterns - Refinement techniques
- Completeness Checklist - Validation checklist
Last Updated: 2025-12-24
Version History
- v1.0.0 (2025-12-26): Initial release