| name | prioritization |
| description | Prioritize software project work items using impact, urgency, dependencies, risk, and effort analysis. Use when planning milestones, ordering backlog items, or deciding what to work on next. |
Purpose
This skill helps evaluate and rank software work items so execution order
maximizes leverage, reduces blockers, and aligns with project goals.
Use this skill when:
- Planning a roadmap
- Organizing a backlog
- Breaking down milestones
- Deciding sprint scope
- Evaluating tradeoffs
- Identifying blockers
- Re-prioritizing after scope changes
Inputs
Expected inputs:
- Work items
- Milestones
- Dependencies
- Constraints
- Deadlines
- Team capacity
- Business goals
Work items should ideally include:
- Title
- Description
- Estimated effort
- Dependencies
- Impact
- Urgency
- Risk
- Owner (optional)
Inputs usually come from scoping, goal-setting, or decomposition. If the
items are too large or unclear, use decomposition before prioritizing.
Prioritization Principles
Always optimize for:
- Unblocking future work
- Reducing critical risk
- Maximizing impact
- Shortening feedback loops
- Preserving execution momentum
Avoid optimizing solely for:
- Stakeholder loudness
- Visibility
- Novelty
- Personal preference
Process
Step 1: Normalize Work Items
Convert incoming work into a consistent structure.
Required fields:
- id
- title
- impact
- urgency
- effort
- dependencies
Flag missing or ambiguous information.
Step 2: Identify Dependency Chains
Determine:
- blockers
- prerequisite tasks
- parallelizable work
- critical-path items
Highlight tasks that unblock many others.
Step 3: Estimate Priority
Evaluate each item across:
| Factor | Questions |
|---|
| Impact | How valuable is this if completed? |
| Urgency | What happens if delayed? |
| Effort | How expensive is implementation? |
| Risk Reduction | Does this reduce operational or technical risk? |
| Dependency Value | Does this unblock additional work? |
| Reversibility | Is this decision expensive to undo later? |
Suggested scoring:
- 1 = very low
- 5 = very high
Suggested heuristic:
priority_score =
(impact * 5)
+ (urgency * 4)
+ (risk_reduction * 3)
+ (dependency_value * 4)
- (effort * 2)
Use judgment instead of blindly following numeric scores.
Step 4: Classify Priority
Suggested labels:
| Priority | Meaning |
|---|
| critical | Immediate attention required |
| high | Important for near-term execution |
| medium | Valuable but not blocking |
| low | Opportunistic or cosmetic |
Critical items usually include:
- Production outages
- Security issues
- Major blockers
- Deadline-critical work
Step 5: Produce Ordered Backlog
Generate:
- Ordered execution list
- Rationale for ordering
- Identified blockers
- Recommended next actions
Output format:
# Prioritized Backlog
## 1. Replace insecure authentication
Priority: Critical
Why:
- High security exposure
- Blocks enterprise rollout
- Large downstream impact
Next action:
- Begin implementation immediately
- Schedule security review
Anti-Patterns
Avoid:
- Prioritizing unscoped work
- Ignoring dependencies
- Ignoring infrastructure work
- Treating all deadlines equally
- Deferring foundational work indefinitely
- Overfilling sprint capacity
Reviewer Checklist
Before finalizing prioritization:
- Are blockers handled early?
- Are risky unknowns surfaced early?
- Is foundational work deferred too long?
- Is effort proportional to expected impact?
- Is the ordering actually executable?
Escalation Guidance
Escalate when:
- Requirements are contradictory
- Dependencies are unresolved
- Deadlines are impossible
- Capacity is insufficient
- Business goals conflict
Example
Input:
- Replace insecure auth system
- Refresh dashboard styling
- Add analytics export
Expected ordering:
- Replace insecure auth
- Add analytics export
- Refresh dashboard styling