How to prioritize product features

How to prioritize features for agile product development

Featured image

Deciding what features to do in your next product release can be difficult. Being product owners it is our responsibility to decide the highest value features. In this post I’ve shared a concept helpful in prioritizing features for agile product development.

The basic premise is that every feature in the roadmap has an inherent level of Business Value, it’s the associated level of Implementation Complexity that needs to be assessed in order to prioritize it. The final priority of any feature is the composite score of both. So if you score feature along both the Value and Complexity axes, you will get a matrix having your feature in a quadrant defining its priority.

Business Value: The business value of a feature can be measured based on the below mentioned parameters:

  1. Customer Benefit: This parameter will access your feature on criteria like measure of pain experienced by the customer due to non-availability of the feature i.e level of need, how often they experience it and how urgent is it to solve the problem.
  2. Opportunity Size: It measures % of customers impacted due to non-availability of the feature and are those customers important?
  3. Competitive Positioning: It scores the level to which this requirement, if fulfilled, improves your current competitive position. Does this requirement help close the competitive gap, or help you build on your competitive lead?
  4. Strategy Alignment: Every company has specific strategic objectives it is trying accomplish at any point in time, and the more alignment the feature has in achieving those objectives, the higher the company value it has. The objectives can be to increase revenue, increase market share, enter a new market, decrease costs, increase customer satisfaction, etc.
  5. Customer Satisfaction: In simple words, does this feature improve customer satisfaction?

Implementation Complexity: The Implementation Complexity score is the sum of the Development and Deployment complexity measures:

  1. Development: How difficult it will be to implement this feature in terms of effort (man-hours) or schedule time (weeks or months).
  2. Deployment: It factors the expected operational cost. Will the feature require investment to put it into production and/or carry a high operating expense? Would there be a high migration and support effort to move customers from an old implementation to the new one.

Value vs Complexity Matrix:

Image a four quadrant matrix with ‘Business Value’ on Y axis and ‘Implementation Complexity’ on X axis.

Let’s take a look at each of the quadrants and assess what we should do with features in each.

  1. High Value/ Low Complexity: These are easy-to-do features that both your customers and company value and thus are low hanging fruit you should be going after. These features are priority #1.
  2. High Value/ High Complexity: It’s important to include these features, and because they’re hard let’s address them first so we have enough time and find any unknown snags. Also the sum of several low value features does not create higher value for your customers or your business. They just use up your scarce resource opportunities. Therefore, this should be your priority #2.
  3. Low Value/ Low Complexity: These features can be put on a reach list, to do if resources permit. Or left until a future phase. Or you can re-examine them to see if your original values are accurate. These should be remaining priority#3.
  4. Low Value/ High Complexity: They’re hard and no one thinks they’re important, so try to leave them out.

To summarise, this high level framework for prioritising new features into your product by using a simple 2x2 grid of Business Value versus Implementation Complexity can really make your job easier.