Pattern-039: Feature Prioritization Scorecard

Status

Emerging Proven Experimental Deprecated

Context

Product teams often struggle with “everything is priority one” syndrome, where every feature request is treated as equally urgent and important. This leads to:

Traditional prioritization methods (gut feel, HIPPO - Highest Paid Person’s Opinion) lack transparency and rigor. This pattern provides a quantified framework for feature prioritization decisions.

Inspiration

This pattern emerged from Ted Nadeau’s observation: “Everything is priority one & of equal importance… doing things even when they are difficult and/or of low value.”

Pattern Description

The Feature Prioritization Scorecard is a quantified decision framework that scores features on six factors: three cost factors (Effort, Risk, Support Cost) and three benefit factors (User Value, Market Competitiveness, Strategic Alignment).

Core Concept

Priority Score = (User Value + Market + Strategic) / (Effort + Risk + Support)

Higher score = Higher priority

Key Components

Cost Factors (lower is better, scored 1-5):

  1. Implementation Effort: Development time required
  2. Risk: Technical complexity and unknowns
  3. Support Cost: Ongoing maintenance burden

Benefit Factors (higher is better, scored 1-5):

  1. User Value: Impact on core workflow
  2. Market Competitiveness: Table stakes vs differentiation
  3. Strategic Alignment: Enables other features/capabilities

Decision Thresholds

Implementation

Structure

# Feature scoring data structure
feature_scorecard = {
    "name": "Feature Name",
    "cost": {
        "effort": 1-5,      # 1=<8hrs, 3=1-2 weeks, 5=>1 month
        "risk": 1-5,        # 1=known, 3=some unknowns, 5=research needed
        "support": 1-5      # 1=self-contained, 3=updates needed, 5=high ops
    },
    "benefit": {
        "user_value": 1-5,  # 1=nice-to-have, 3=improves UX, 5=differentiator
        "market": 1-5,      # 1=optional, 3=expected, 5=advantage
        "strategic": 1-5    # 1=standalone, 3=enables 1-2, 5=platform capability
    }
}

# Calculate priority score
def calculate_priority(scorecard):
    cost_total = sum(scorecard["cost"].values())
    benefit_total = sum(scorecard["benefit"].values())
    return benefit_total / cost_total

# Assign priority tier
def get_priority_tier(score):
    if score > 1.5: return "P0/P1"
    if score >= 1.0: return "P2"
    if score >= 0.5: return "P3"
    return "Don't Do"

Scoring Guide

Implementation Effort (1-5)

Risk (1-5)

Support Cost (1-5)

User Value (1-5)

Market Competitiveness (1-5)

Strategic Alignment (1-5)

Code Example

# Real examples from Piper Morgan roadmap

features = {
    "python_311_upgrade": {
        "name": "Python 3.11 Upgrade",
        "cost": {"effort": 2, "risk": 1, "support": 1},  # 4-8 hours, low risk
        "benefit": {"user_value": 2, "market": 1, "strategic": 3},  # Security + perf
        # Score: 6/4 = 1.50 → P2 (Do soon)
    },
    "mobile_app": {
        "name": "Native Mobile App",
        "cost": {"effort": 5, "risk": 4, "support": 4},  # 3-6 months, high risk
        "benefit": {"user_value": 3, "market": 3, "strategic": 3},  # User convenience
        # Score: 9/13 = 0.69 → P3 (Wait for demand)
    },
    "vscode_dev_setup": {
        "name": "VSCode Developer Setup Package",
        "cost": {"effort": 1, "risk": 1, "support": 1},  # 2-3 hours, zero risk
        "benefit": {"user_value": 3, "market": 2, "strategic": 3},  # DX improvement
        # Score: 8/3 = 2.67 → P1 (Do now!)
    },
    "jira_integration": {
        "name": "Jira Integration",
        "cost": {"effort": 3, "risk": 3, "support": 3},  # Medium effort, Router pattern
        "benefit": {"user_value": 4, "market": 4, "strategic": 2},  # Enterprise value
        # Score: 10/9 = 1.11 → P2 (Do soon)
    }
}

# Calculate and rank
for key, feature in features.items():
    score = calculate_priority(feature)
    tier = get_priority_tier(score)
    print(f"{feature['name']}: {score:.2f}{tier}")

Output:

VSCode Developer Setup Package: 2.67 → P0/P1
Python 3.11 Upgrade: 1.50 → P2
Jira Integration: 1.11 → P2
Native Mobile App: 0.69 → P3

Usage Guidelines

When to Use

When NOT to Use

Best Practices

  1. Score collaboratively: Product + Engineering + Design together
  2. Document assumptions: Why did we score Effort as 3 not 2? Write it down
  3. Revisit scores: Market conditions change, re-score quarterly
  4. Use dollar proxy: Convert effort to dollars for executive communication
  5. Track accuracy: Post-mortems improve future scoring
  6. Avoid gaming: Don’t artificially inflate benefit or deflate cost scores
  7. Explain exceptions: If you override the score, document why

Common Pitfalls

Examples in Codebase

Application to Piper Roadmap

Examples from Ted Nadeau’s questions (Nov 2025):

Feature Effort Risk Support User Market Strategic Score Priority
VSCode Setup 1 1 1 3 2 3 8/3 = 2.67 P1
Python 3.11 2 1 1 2 1 3 6/4 = 1.50 P2
Jira Integration 3 3 3 4 4 2 10/9 = 1.11 P2
Email Participation 4 3 4 3 3 2 8/11 = 0.73 P3
Mobile App 5 4 4 3 3 3 9/13 = 0.69 P3
Federated Login 4 3 3 3 3 2 8/10 = 0.80 P3

Integration with Existing Tools

Complements

Alternatives

Dependencies

None. This is a process pattern, not a technical pattern.

Migration Notes

From Ted Nadeau Email (Nov 20, 2025)

“I’d like to have a cost vs. benefit model of the capabilities cost is proportional to effort to implement & support (& risk adjusted for change) benefit is proportional to value to users While hard to put exact numbers on these things, one can attempt to: put dollar amounts when possible, put calendar time as proxy Users can advocate for features (or pay for them) & one can use pair-wise comparison to rate / rank the features”

This pattern implements Ted’s vision with:

From Internal Research (Nov 20, 2025)

Research document: dev/2025/11/20/ted-nadeau-follow-up-research.md

Synthesized from:

References

Documentation

External References

Usage Analysis


Pattern created: November 20, 2025 Author: Code Agent (Research Session) Inspired by: Ted Nadeau’s cost/benefit model request Status: Ready for Chief Architect review