Sometimes it can be hard to determine what items to prioritize in your software. It may feel like there’s a million things to do and all of them are critical for the success of your software.

Many times in these cases it has been helpful to me to use a model that helps me sort out what is really the most important tasks and why. Since this model has been so useful to me I thought I’d share it with you and hopefully it will be useful to more people than myself.

This model is useful to prioritize epics on a roadmap level and is actually a really bad tool to use for stories within a sprint.

To use this model you may download the excel file that I use as an example in this post from here.

Priority criteria or driving forces

First of all you have to decide what are the driving forces behind your priorities. What are the criteria that affect how important something is or how urgent it is. Examples can be:

- Boost sales
- Increases conversion
- Lessens administrative burden
- Builds customer loyalty

These are all just examples, you have to come up with your own drivers for your business. Try to limit yourself to just the 4 most important. The model works perfectly fine with any number of criteria, but the job of completing this exercise will grow exponentially with each new criteria. But don’t let that scare you, if you have more than four criteria that are really important to you you should use more than four. Use as many as you like, but be aware that using too many will make this a very time consuming task.

I do apologize for sometimes using “,” as a decimal separator but I am a Swede and in Sweden it is the defined decimal separator.

When you’re done with entering your criteria you will have to start using the model by entering values in the fields above and to the right of the grey fields.

To enter values in these fields there are some rules to follow:

- If the criteria on the row header is more important than the criteria above the value should be higher than 1.
- If the criteria on the row header is less important than the criteria above the value should be less than 1.
- If both of the criteria are equally important the value should be 1.
- Values higher than 1 can be
- 2 if the criteria to the left is twice as importan as the criteria above.
- 5 if the criteria to the left is five times as important as the criteria above.
- 10 if the criteria to the left is ten times as important as the criteria above.

- Values lower than 1 can be
- 0.5 if the criteria above is twice as important as the criteria to the left.
- 0.2 if the criteria above is five times as important as the criteria to the left
- 0.1 if the criteria above is ten times as important as the criteria to the left.

All the other numbers are calculated automatically and what you’ve just accomplished is to calculate a value for how each criteria compares with the other criteria. This value is a relative value and is something that you really don’t need to think about too much at this stage of the process.

Once you’re done with this you really don’t have that much to show for, but you do have a solid foundation for moving ahead with this exercise. The next step is to start looking into the epics in your roadmap that you want to compare by importance.

Compare epics

For the other tabs in this file the purpose is to compare epics to each other and how well they help you fulfill the goals that drives your software forward. For each of the criteria in the first tab you will need a new tab in the file.

For each new tab you want to compare all the epics listed in the first column with each other. The epics need to be the same throughout all the criteria tabs in the file.

The idea being that for each tab you only treat ONE of the criteria at a time. So for the tab called “Criteria 1” you should only compare the epics with how well they fulfill that specific criteria compared to each other.

Example:

If two of your criteria are “Drive sales” and “Simplifies on boarding for new customers” you should have two tabs called the same. In the tab called “Drive sales” you should compare each epic with how well they drive sales compared to each other regardless of how well they simplify on boarding. The same goes for the next tab called “Simplifies on boarding for new customers”. You should only compare the epics with each other in regards of that criteria and disregard all the other criteria.

Summary

Once you have compared all your epics according to your criteria the last tab will summarize this for you based on how all the different epics stack up to each other regarding each and everyone of the criteria you have defined. And since you also weighed the criteria against each other the sum total will be based on how important each criteria was.

Hopefully this will lead you to get a clearer view on how your different epics should be prioritized or at least it should solidify what you already thought you knew.

This is also a great tool to run by management that is not involved in the day to day business of software development but all scream very loud about what they need done. This helps them understand what you should be focusing on and will hopefully create a better understanding between development and management.

This is a method that has helped me many times, hopefully you may find it useful too.