name: 'step-v-05-measurability-validation'
description: 'Measurability Validation - Validate that all requirements (FRs and NFRs) are measurable and testable'
File references (ONLY variables used in this step)
nextStepFile: './step-v-06-traceability-validation.md'
prdFile: '{prd_file_path}'
validationReportPath: '{validation_report_path}'
Step 5: Measurability Validation
STEP GOAL:
Validate that all Functional Requirements (FRs) and Non-Functional Requirements (NFRs) are measurable, testable, and follow proper format without implementation details.
MANDATORY EXECUTION RULES (READ FIRST):
Universal Rules:
- 🛑 NEVER generate content without user input
- 📖 CRITICAL: Read the complete step file before taking any action
- 🔄 CRITICAL: When loading next step with 'C', ensure entire file is read
- 📋 YOU ARE A FACILITATOR, not a content generator
- ✅ YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the config
{communication_language}
Role Reinforcement:
- ✅ You are a Validation Architect and Quality Assurance Specialist
- ✅ If you already have been given communication or persona patterns, continue to use those while playing this new role
- ✅ We engage in systematic validation, not collaborative dialogue
- ✅ You bring analytical rigor and requirements engineering expertise
- ✅ This step runs autonomously - no user input needed
Step-Specific Rules:
- 🎯 Focus ONLY on FR and NFR measurability
- 🚫 FORBIDDEN to validate other aspects in this step
- 💬 Approach: Systematic requirement-by-requirement analysis
- 🚪 This is a validation sequence step - auto-proceeds when complete
EXECUTION PROTOCOLS:
- 🎯 Extract all FRs and NFRs from PRD
- 💾 Validate each for measurability and format
- 📖 Append findings to validation report
- 📖 Display "Proceeding to next check..." and load next step
- 🚫 FORBIDDEN to pause or request user input
CONTEXT BOUNDARIES:
- Available context: PRD file, validation report
- Focus: FR and NFR measurability only
- Limits: Don't validate other aspects, don't pause for user input
- Dependencies: Steps 2-4 completed - initial validation checks done
MANDATORY SEQUENCE
CRITICAL: Follow this sequence exactly. Do not skip, reorder, or improvise unless user explicitly requests a change.
1. Attempt Sub-Process Validation
Try to use Task tool to spawn a subprocess:
"Perform measurability validation on this PRD:
Functional Requirements (FRs):
- Extract all FRs from Functional Requirements section
- Check each FR for:
- '[Actor] can [capability]' format compliance
- No subjective adjectives (easy, fast, simple, intuitive, etc.)
- No vague quantifiers (multiple, several, some, many, etc.)
- No implementation details (technology names, library names, data structures unless capability-relevant)
- Document violations with line numbers
Non-Functional Requirements (NFRs):
- Extract all NFRs from Non-Functional Requirements section
- Check each NFR for:
- Specific metrics with measurement methods
- Template compliance (criterion, metric, measurement method, context)
- Context included (why this matters, who it affects)
- Document violations with line numbers
Return structured findings with violation counts and examples."
2. Graceful Degradation (if Task tool unavailable)
If Task tool unavailable, perform analysis directly:
Functional Requirements Analysis:
Extract all FRs and check each for:
Format compliance:
- Does it follow "[Actor] can [capability]" pattern?
- Is actor clearly defined?
- Is capability actionable and testable?
No subjective adjectives:
- Scan for: easy, fast, simple, intuitive, user-friendly, responsive, quick, efficient (without metrics)
- Note line numbers
No vague quantifiers:
- Scan for: multiple, several, some, many, few, various, number of
- Note line numbers
No implementation details:
- Scan for: React, Vue, Angular, PostgreSQL, MongoDB, AWS, Docker, Kubernetes, Redux, etc.
- Unless capability-relevant (e.g., "API consumers can access...")
- Note line numbers
Non-Functional Requirements Analysis:
Extract all NFRs and check each for:
Specific metrics:
- Is there a measurable criterion? (e.g., "response time < 200ms", not "fast response")
- Can this be measured or tested?
Template compliance:
- Criterion defined?
- Metric specified?
- Measurement method included?
- Context provided?
3. Tally Violations
FR Violations:
- Format violations: count
- Subjective adjectives: count
- Vague quantifiers: count
- Implementation leakage: count
- Total FR violations: sum
NFR Violations:
- Missing metrics: count
- Incomplete template: count
- Missing context: count
- Total NFR violations: sum
Total violations: FR violations + NFR violations
4. Report Measurability Findings to Validation Report
Append to validation report:
## Measurability Validation
### Functional Requirements
**Total FRs Analyzed:** {count}
**Format Violations:** {count}
[If violations exist, list examples with line numbers]
**Subjective Adjectives Found:** {count}
[If found, list examples with line numbers]
**Vague Quantifiers Found:** {count}
[If found, list examples with line numbers]
**Implementation Leakage:** {count}
[If found, list examples with line numbers]
**FR Violations Total:** {total}
### Non-Functional Requirements
**Total NFRs Analyzed:** {count}
**Missing Metrics:** {count}
[If missing, list examples with line numbers]
**Incomplete Template:** {count}
[If incomplete, list examples with line numbers]
**Missing Context:** {count}
[If missing, list examples with line numbers]
**NFR Violations Total:** {total}
### Overall Assessment
**Total Requirements:** {FRs + NFRs}
**Total Violations:** {FR violations + NFR violations}
**Severity:** [Critical if >10 violations, Warning if 5-10, Pass if <5]
**Recommendation:**
[If Critical] "Many requirements are not measurable or testable. Requirements must be revised to be testable for downstream work."
[If Warning] "Some requirements need refinement for measurability. Focus on violating requirements above."
[If Pass] "Requirements demonstrate good measurability with minimal issues."
5. Display Progress and Auto-Proceed
Display: "Measurability Validation Complete
Total Violations: {count} ({severity})
Proceeding to next validation check..."
Immediately load and execute {nextStepFile} (step-v-06-traceability-validation.md)
🚨 SYSTEM SUCCESS/FAILURE METRICS
✅ SUCCESS:
- All FRs extracted and analyzed for measurability
- All NFRs extracted and analyzed for measurability
- Violations documented with line numbers
- Severity assessed correctly
- Findings reported to validation report
- Auto-proceeds to next validation step
- Subprocess attempted with graceful degradation
❌ SYSTEM FAILURE:
- Not analyzing all FRs and NFRs
- Missing line numbers for violations
- Not reporting findings to validation report
- Not assessing severity
- Not auto-proceeding
Master Rule: Requirements must be testable to be useful. Validate every requirement for measurability, document violations, auto-proceed.