Install
1
Install the plugin$
npx claudepluginhub melodic-software/claude-code-plugins --plugin requirements-elicitationWant just this skill?
Add to a custom plugin, then install with one command.
Description
Apply prioritization methods to elicited requirements. Supports MoSCoW, Kano Model, WSJF, and Wiegers' scoring. Outputs ranked requirements with justification.
Tool Access
This skill is limited to using the following tools:
TaskReadWriteGlobGrepSkill
Skill Content
Prioritize Command
Apply prioritization methods to rank requirements by business value, customer impact, or implementation efficiency.
Usage
/requirements-elicitation:prioritize
/requirements-elicitation:prioritize --domain "checkout"
/requirements-elicitation:prioritize --domain "auth" --method wsjf
/requirements-elicitation:prioritize --domain "onboarding" --method kano --interactive
Arguments
| Argument | Required | Description |
|---|---|---|
| --domain | No | Domain to prioritize (default: current/most recent) |
| --method | No | Prioritization method: moscow, kano, wsjf, wiegers, opportunity (default: moscow) |
| --interactive | No | Enable interactive scoring mode for stakeholder input |
Workflow
Step 1: Load Requirements
Read synthesized requirements from .requirements/{domain}/synthesis/.
Step 2: Select Method
Choose prioritization method based on context:
method_selection:
moscow:
best_for: "Quick categorization, MVP scope definition"
requires: "Basic stakeholder consensus on importance"
output: "Must/Should/Could/Won't categories"
kano:
best_for: "Customer satisfaction analysis"
requires: "Customer survey data or simulation"
output: "Basic/Performance/Excitement classification"
wsjf:
best_for: "Agile/SAFe environments, flow optimization"
requires: "Cost of Delay and Job Size estimates"
output: "Numeric priority scores for backlog ordering"
wiegers:
best_for: "Quantitative value/cost/risk analysis"
requires: "Multi-stakeholder scoring input"
output: "Weighted priority scores with rationale"
opportunity:
best_for: "JTBD-aligned prioritization"
requires: "Importance and satisfaction ratings"
output: "Opportunity scores highlighting underserved needs"
Step 3: Score Requirements
MoSCoW Scoring
moscow_scoring:
process:
1. "Start with MUST - be strict (if everything is MUST, nothing is)"
2. "Move to WON'T - explicitly exclude"
3. "Distribute remaining between SHOULD and COULD"
4. "Validate: MUSTs should be ~60% of capacity"
categories:
must:
criteria:
- "System won't work without it"
- "Legal/regulatory requirement"
- "Core to value proposition"
should:
criteria:
- "Significant value, but workarounds exist"
- "Key stakeholder expectations"
could:
criteria:
- "Enhances user experience"
- "Low effort, incremental value"
wont:
criteria:
- "Agreed to defer, not rejected"
- "Future consideration"
WSJF Scoring
wsjf_scoring:
formula: "WSJF = Cost of Delay / Job Size"
cost_of_delay:
user_value: "1-10 (Value to end users)"
time_criticality: "1-10 (How much value decays with time)"
risk_reduction: "1-10 (Risk/opportunity enabled)"
job_size: "Fibonacci (1, 2, 3, 5, 8, 13)"
interpretation:
"WSJF > 3": "High priority - do first"
"WSJF 1-3": "Medium priority"
"WSJF < 1": "Low priority - consider deferring"
Kano Scoring
kano_scoring:
question_pair:
functional: "How would you feel if [feature] was present?"
dysfunctional: "How would you feel if [feature] was absent?"
answers:
- "I would like it"
- "I expect it"
- "I'm neutral"
- "I can tolerate it"
- "I dislike it"
classification:
"Like + Dislike": "Excitement (Delighter)"
"Expect + Dislike": "Basic (Must-Be)"
"Like + Neutral": "Performance"
"Neutral + Neutral": "Indifferent"
Wiegers' Scoring
wiegers_scoring:
dimensions:
value: "1-9 (Customer/business value)"
penalty: "1-9 (Penalty for NOT having it)"
cost: "1-9 (Implementation effort)"
risk: "1-9 (Technical uncertainty)"
formula: |
Priority = (Value × 2 + Penalty × 1) /
(Cost × 1 + Risk × 0.5)
interpretation:
"> 3.0": "High priority"
"2.0-3.0": "Medium priority"
"< 2.0": "Low priority"
Opportunity Scoring
opportunity_scoring:
formula: "Opportunity = Importance + (Importance - Satisfaction)"
data_collection:
importance: "How important is [outcome]? (1-10)"
satisfaction: "How satisfied with current ability? (1-10)"
interpretation:
"15-20": "High opportunity - underserved"
"10-15": "Moderate opportunity"
"5-10": "Low opportunity - well served"
"< 5": "Over-served - deprioritize"
Step 4: Interactive Mode (Optional)
When --interactive is specified:
interactive_flow:
1. Display each requirement one at a time
2. Prompt for scores based on selected method
3. Allow notes and rationale capture
4. Support skip and return later
5. Show running totals and distributions
Step 5: Generate Output
Create prioritized requirements list with:
priority_report:
domain: "{domain}"
method: "{method used}"
date: "{ISO-8601}"
total_requirements: 25
prioritized_list:
- rank: 1
requirement_id: "REQ-001"
title: "Two-Factor Authentication"
category: "must" # or score for numeric methods
score: 3.54 # if applicable
rationale: "High penalty for omission, compliance requirement"
- rank: 2
requirement_id: "REQ-015"
title: "Mobile Offline Mode"
category: "should"
score: 3.2
rationale: "High user value, competitive pressure"
summary:
by_category: # For MoSCoW/Kano
must: 8
should: 10
could: 5
wont: 2
recommendations:
- "Focus on top 5 high-priority items immediately"
- "Consider deferring low-priority items with high cost"
- "Re-evaluate in 2 weeks based on feedback"
Output Formats
Default: YAML Summary
# .requirements/{domain}/prioritization/PRIO-{timestamp}.yaml
prioritization:
method: "wsjf"
date: "2025-12-26T15:00:00Z"
requirements:
- id: "REQ-001"
title: "Feature Name"
score: 3.54
rank: 1
rationale: "..."
Markdown Table
| Rank | ID | Title | Score | Category | Rationale |
|------|-----|-------|-------|----------|-----------|
| 1 | REQ-001 | Two-Factor Auth | 3.54 | Must | Compliance |
| 2 | REQ-015 | Offline Mode | 3.2 | Should | User value |
Example Session
/requirements-elicitation:prioritize --domain "e-commerce" --method wsjf
Loading requirements from .requirements/e-commerce/synthesis/...
Found 28 requirements to prioritize.
Applying WSJF scoring...
Scoring REQ-001: "Product Search"
User Value: 9 (highly requested)
Time Criticality: 7 (competitors have this)
Risk Reduction: 5 (reduces support load)
Job Size: 5 (moderate complexity)
→ WSJF Score: 4.2 (High Priority)
Scoring REQ-002: "Wishlist Feature"
User Value: 6 (nice to have)
Time Criticality: 2 (not urgent)
Risk Reduction: 2 (minimal risk impact)
Job Size: 3 (low complexity)
→ WSJF Score: 3.3 (Medium Priority)
[... continues for all requirements ...]
═══════════════════════════════════════════════
PRIORITIZATION COMPLETE
═══════════════════════════════════════════════
Top 5 Priorities (WSJF):
1. REQ-001 Product Search (4.2)
2. REQ-008 Checkout Flow (3.9)
3. REQ-012 Order Tracking (3.7)
4. REQ-002 Wishlist (3.3)
5. REQ-015 Reviews (3.1)
Distribution:
High (>3.0): 12 requirements
Medium (1-3): 10 requirements
Low (<1.0): 6 requirements
Saved to: .requirements/e-commerce/prioritization/PRIO-20251226-150000.yaml
Recommendations:
• Sprint 1: Focus on top 5 (Product Search, Checkout, Order Tracking)
• Defer: 6 low-priority items until MVP validated
• Re-evaluate: Wishlist priority after customer feedback
Combining Methods
For comprehensive prioritization, methods can be combined:
# Step 1: Quick MoSCoW categorization
/requirements-elicitation:prioritize --domain "checkout" --method moscow
# Step 2: WSJF ranking within SHOULD category
/requirements-elicitation:prioritize --domain "checkout" --method wsjf --filter "category:should"
# Step 3: Validate with stakeholder Kano analysis
/requirements-elicitation:prioritize --domain "checkout" --method kano --interactive
Skills Used
This command uses the prioritization-methods skill for:
- Method selection guidance
- Scoring frameworks and formulas
- Interpretation criteria
- Output formatting
Integration with Other Commands
Before Prioritization
# Elicit requirements first
/requirements-elicitation:discover "checkout flow"
# Identify gaps
/requirements-elicitation:gaps --domain "checkout"
After Prioritization
# Export prioritized requirements
/requirements-elicitation:export --domain "checkout" --filter "rank:1-10"
# Create story map with priorities
/requirements-elicitation:story-map --domain "checkout"
Output Locations
output_locations:
yaml: ".requirements/{domain}/prioritization/PRIO-{timestamp}.yaml"
markdown: ".requirements/{domain}/prioritization/PRIO-{timestamp}.md"
Error Handling
error_handling:
no_requirements:
message: "No requirements found for domain"
action: "Run /discover first to elicit requirements"
insufficient_data:
message: "Cannot apply {method} - missing required data"
action: "Switch to simpler method or gather missing scores"
conflicting_scores:
message: "Stakeholder scores significantly diverge"
action: "Facilitate discussion to reach consensus"
Stats
Stars40
Forks6
Last CommitFeb 15, 2026
Actions