Prioritizing Agile epics, user stories, and backlogs is something contemporary product managers have to do on a regular basis. The need to prioritize comes from a very simple fact: we just don’t have enough resources to work on everything we can come up with. Over the years I and my teams have worked on hundreds of software releases. I have used both old style waterfall techniques as well as today’s Agile techniques.
When it comes to prioritizing items for sprints or releases I have tended to use some variant of a weighted multi-factor prioritization scheme. This typically involves identifying 3 to 7 key factors and weighing the relative importance of each factor to calculate an overall score. The specific factors have varied between the different companies I have worked for. Sometimes revenue retention was very important, other times it involved market or competitive parity.
In researching another topic I came across a great piece for Agile Product Owners by Daniel Zacarias entitled 20 Product Prioritization Techniques: A Map and Guided Tour. The blog goes into great detail about 20 different techniques Product Owners can use to prioritize their backlogs. It is a long read, but definitely worth it.
My interest in software metrics traces back to 1980s when I was just starting out in the application development world. Here is a list of resources that shaped my early thinking about metrics and software quality. If you would enjoy a trip down memory lane, check them out.
Topic | Link |
Fred Brooks’ Mythical Man Month | https://en.wikipedia.org/wiki/The_Mythical_Man-Month |
Barry Boehm’s COCOMO Model | https://en.wikipedia.org/wiki/COCOMO |
Thomas McCabe’s Cyclomatic Complexity | https://en.wikipedia.org/wiki/Cyclomatic_complexity |
Tom DeMarco’s Bang Metric | http://www.1000sourcecodes.com/2012/05/software-engineering-metrics-for_161.html |
Allan Albrecht’s Function Points | https://www.tutorialspoint.com/software_quality_management/software_quality_management_albrechts_function_point_method.htm |