Learn

/

Prioritization

Prioritization

6 patterns

MoSCoW, RICE, value vs effort, and Cost of Delay. Who decides, and how to keep prioritization a product conversation rather than an engineering vote.

Avoid
Task
META-50
Backlog prioritization
Description

The team votes on what to pull next at sprint planning. The most senior engineer breaks ties.


Prefer
Task
META-50
Backlog prioritization
Description

Product owns the backlog order. Engineering owns the size. The team flags risks; product makes the call.

Why avoid

Letting the team vote on order turns prioritization into a popularity contest. The most senior engineer's preferences win, the product roadmap becomes a side effect of who is loudest, and product loses the lever they need to ship the right thing.

Why prefer

Prioritization is a product conversation. Engineering provides the size and the risks; product decides the order based on value, customer commitments, and roadmap. Mixing the two collapses the accountability.

Scrum.org: Product Owner
Avoid
Task
META-51
Quarter plan
Description

Must: 14 stories. Should: 8. Could: 3. Won't: 0.


Prefer
Task
META-51
Quarter plan
Description

Must: 4 stories. Should: 6. Could: 8. Won't (this quarter): 7 explicitly named items.

Why avoid

Fourteen Musts is a way of saying 'everything is the priority', which means nothing is. The team will negotiate the Musts at standup all quarter and finish about as many as a smaller, honestly-labeled list.

Why prefer

MoSCoW only works if Must is genuinely scarce and Won't is named. The right side leaves room for unplanned work and tells the team what is explicitly off the table this quarter.

Atlassian: Prioritization Frameworks
Avoid
Task
META-52
Pulling next
Description

Two stories of equal size. Pull whichever the engineer is most excited about.


Prefer
Task
META-52
Pulling next
Description

Two stories of equal size. Estimate the cost of delay (revenue at risk, customer commitment, dependency unblock) and pull the higher one first.

Why avoid

'Whatever the engineer wants' is a fine policy until two engineers want different things. There is no shared rule for the disagreement, so it gets resolved in private and the backlog order has no defensible logic.

Why prefer

Cost of delay names what changes if a story slips by a sprint. It puts a number on what excitement and gut feel were doing implicitly, and it lets product defend the order to a stakeholder who asks.

Black Swan Farming: Cost of Delay
Avoid
Task
META-53
Two backlog stories
Description

Story A: high impact, lots of users want it. Story B: lower impact but easier. Pull A first because it is more important.


Prefer
Task
META-53
Two backlog stories
Description

A: reach 5000 users, impact 2 (massive), confidence 0.7, effort 8 → score 875. B: reach 10000, impact 1 (high), confidence 0.9, effort 3 → score 3000. Pull B first; ship A right after.

Why avoid

Calling A 'more important' without comparing reach and effort is exactly the kind of intuition RICE is designed to interrogate. Half the time the gut answer is right; half the time the cheaper option dominates.

Why prefer

RICE forces the comparison to be quantitative on its three axes (reach, impact, confidence) over effort. The score reveals when 'massive impact' on a small audience is beaten by 'high impact' on a large one for a third of the cost.

Intercom: RICE Prioritization
Avoid
Task
META-54
Two stories with similar value
Description

Pull the bigger one first to get it out of the way.


Prefer
Task
META-54
Two stories with similar value
Description

Pull the smaller one first. It ships faster, generates real usage data, and the team can use what they learn to size the bigger one more accurately.

Why avoid

'Get it out of the way' is the kind of phrase that hides a real cost: a long story blocks the small ones behind it, and the small ones often turn out to be more valuable than the big one was estimated to be.

Why prefer

When value is comparable, smaller is better. It ships sooner, it teaches the team something, and it leaves more room in the next sprint for the bigger work that benefits from the learning.

Atlassian: Prioritization Frameworks
Avoid
Task
META-55
Tech debt allocation
Description

Engineering allocates 20% of every sprint to tech debt. The team picks the items.


Prefer
Task
META-55
Tech debt allocation
Description

Each tech-debt item is filed as a story or task with a named cost (slowing feature X, paging on-call, etc.). Product orders them in the same backlog as features. The team flags new tech debt as it appears.

Why avoid

A blanket percentage hides which debt is actually expensive. The team will pick the debt that bothers them most, which is often not the debt that costs the company the most.

Why prefer

Naming the cost makes tech debt visible to product, which is the only way it gets prioritized against feature work honestly. The 20% rule looks fair on paper and tends to pick the wrong items in practice.

Martin Fowler: Technical Debt