Best Practices for Prioritization of the Product Backlog

This week I thought I would respond to a question about Scrum that I received in email.

I am trying to understand how various companies handle prioritization of of their product backlogs. To this end would you be able to shed some light on how this happens at Microsoft? Specifically, I would like to know:

 

i) What prioritization methodologies are employed?

ii) How are interrupts handled within a sprint?

iii) Is there a clearly defined interrupt policy?

iv)How is prioritization implemented within escrum?

Below Hamsa M weighs in with her opinion, speaking from her experience on a few different teams (not all teams in Microsoft follow these conventions)

Prioritization is basically driven by the product’s goals and objectives. If your product is all about user friendliness, then the user-friendly features would automatically be on the top of the list. For us, we set some guiding principles around the product, they are agreed upon by our stakeholders and the team uses them to prioritize the features. This offers the best ROI for the time available.

 

I am not sure what kind of interrupts you mean. In general, additions to the product backlog items are not allowed to be added during the middle of the current sprint. This is per the Scrum guidance of Ken Schwaber. For a sprint, there can be planned interruptions like vacations, trainings etc., and unplanned interruptions like sick leaves and customer incidents. Planned interruptions should be handled in the sprint planning meeting to calculate the team time commitment for the sprint and reduce available hours. For unplanned interruptions, the team uses the daily meetings to see if it can still pull the sprint tasks and successfully complete the sprint goals; or whether any of the low-priority goals/tasks need to be adjusted. The product owner can help address the questions on the priority, if any.

 

 Within eScrum, the product owner can set the priorities for each of the product backlog items. In addition to that, the order field can be used to sequence the items with in a set of prioritized items. For example: if you have 10 priority 1 feature items, you can assign a order for each of the item from 1 to 10 or any other numerical order value, so if the team can pick up only priority 1 items, they can focus on the items by order ranking.

If you have other comments on this topic, please feel free to post a response.

 

As a note to those who might be waiting for eScrum to be re-released, I have learned the team decided to take some more changes before doing another external release, so it may take a few more weeks to show up. The next release should address the primary issues that have surfaced, and will definitely have an automated setup (which I have previewed and it looks great).  Please hold tight, and if you find any other issues, please be sure to post them in the forum