So many organizations have trouble setting the priority of a story. The default is to make everything a top priority. Teams might use different monikers for this:
- Priority 1 or P1
- P0 or P00…
Whatever an organization uses to denote criticality, in this article we are going to use P1 for the penultimate criticality assigned to a story.
Developers need focus to work effectively. This entail giving a list of stories to work from the top-down. This list of items is contained in an iteration backlog. These are the stories a developer, or team, is assigned to work. The important aspect of this list is it’s order. The iteration stories need to be priorities in priority order.
Project Managers and Product Owners need to maintain the release backlog list in priority order. From this list, PMs and POs can ensure developers are working on the most important items in order.
Determining the priority order of the iteration and release backlog is a business operation. It’s not technical. There may be technical input needed to determine priority. For example, the business may lower the priority of a large story in favor of several smaller stories. Still, the priority ranking of a story resides with the PM and PO.
An issue arises when the PMs/POs are unaware of the impact of poor priority ranking. The symptom of poor priority ranking is everything is a P1 or the highest rank. When everything is a P1, developers use their discretion to work on whatever they want. They might defer larger stories for easy updates. Or, they might only take on larger multi-iteration stories to work on something more interesting. The end result is developers are deciding what they are going to work on, not the PMs or POs.
This results in a major problem for the business. When everything is a P1, there is no room for anything else above that. Some organization try to work around that with P0 or P00. However, over time, everything becomes a P0 or P00, or whatever is the new highest priority moniker. The result is, there is no business consideration to working stories. There is just a bucket of stories and developers pull from that bucket for their daily work.
I advise organizations to tie impact to the story priorities. The biggest impact is P1. Here’s my rule
A P1 assignment means nobody goes home until the story is complete. This means the entire organization stays at work until the story is complete. This includes executives, managers, IT, help desk, warehouse, etc. A P1 is so critical that everyone needs to be involved. It’s so important everyone is available for testing, support, and feedback that all staff are required to stay. Salary and hourly workers are included in this. So, when a PM or PO assigns a P1 to a story, there’s an immediate impact on staff at all levels. Everyone stays at work until the story is complete.
For a large company, this policy might need to be scoped a little more narrowly. It might just include the division or program. The impact still needs to be felt broadly.
Once this policy is set, very few P1 stories will ever be created. However, those stories which are P1 will have been given considerable business consideration. This allows the business room for prioritization in the planning pipeline.
Adoption of the “P1 = Nobody Goes Home” policy causes a dramatic shift in thinking for priority settings. PMs and POs will start considering stories as a top down list rather than a bucket.