How do you prioritize requirements?

  Amazon
  Walmart
  PayPal
  Airbnb
Add Your Answer
Answers (3)

RICE Prio Model has been very helpful to me in the past.

You set a scale for a few different attributes Reach, Impact, Confidence and then multiply those values and then divide by LOE.

Reach will often be how many customers the change will impact

Impact will be something on a scale of 1 – 5 (or .1 – 1)

Confidence is how confident you are in your assessments

In then divide it all by LOE (person-days) for engineer work. Some companies do person-weeks, doesn’t matter as long as the framework is the same for every item you prior.

There were many techniques for prioritizing, I had provided some of them below.

1. BUC Technique: Business Benefits, user benefits, Costs.

  • Business benefits are if a particular feature was released what is the business benefits(revenue) it will create on the sale of 1-10
  • User Benefits are if a particular feature was released what is the User benefits(new user acquisition, engagement increase) it will create on the sale of 1-10
  • Cost what is the cost needed to develop the particular feature on sale of 1-10
  • one you have rated all the three Combine Business + User Benefits and subtract the costs and sort the values with highest to lowest.

2. Feature Screening

  •  Identify 3-7 selection criteria for the features for what is important in the next release(selection criteria like important to existing customers, Competitiveness with product XYZ, Makes maintainer easier,  Revenue)
  • select a baseline feature likely to be included in the next release I.e a feature that should be in the release.
  • Assess each feature relative to the baseline feature. i.e based on the selection criteria rate out + as the feature is better compared to baseline feature as per the criteria and 0 for it resembles the same and – as not important compared to baseline feature.
  • then sum up all features values against the feature if it was more than 0 the baseline feature include it.
3. Urgency vs Importance.
map on the graph if it falls urgent and important it should be in DO state(Do it Now).
if it falls urgent and not important delegate it
if it falls under not urgent and important Decide(schedule a time to do it later).
if it falls under not urgent and not important then Delete (Eliminate Waste)

Prioritization needs to be done on 4 layers:

L1 – Looks at business objectives and strategy

L2 – Clasifies the feature based on user perception

L3 – Examines the economic side of the feature

L4 – Looks at the time factor

Layer 1:

In this layer, you basically align with the company’s objectives and strategy. So, if it’s a new product (of a startup), it will probably focus on customer acquisition more than anything else. So, features that help attract new users would be of higher priority. Likewise, If the company is on growth phase, features that improve usage frequency, engagement, and monetization, would be of higher priority.

In this layer, input from business stakeholers like marketing and management can be of value.

Layer 2:

Here I look at how the feature is perceived by the user. Is it a necessity? A nice-to-have? Or a dream-come-true? The Kano model is very helpful with this respect. It’s needless to say that if a feature is a necessity it will have higher priority than the other two classes.

Layer 3:

Value versus cost analysis is the thrid factor I look at when doing prioritization. By reaching this layer, you should already have an idea about the business and perceived value of the feature. So, what you need here is to quantify this value.

When it comes to cost, I use the dev team’s estimation about the difficulty of the feature and assign a diffculty (cost) factor based on this estimation.

it might be helpful to use other features that the team implemented as a reference for difficulty measure. For instance, if the most difficult feature the team developed took them 2 full weeks. You might want to use this as reference point for the highest difficulty level.

Layer 4:

Here I check the time factor for the feature. And I usually do that by asking a very simple question: does it matter if I released this feature today as opposed to 3 month later? If the answer is yes, then this feature can be assigned lower priority.