One of the most difficult tasks on any project is prioritizing requirements. This is because there is almost always disagreement about what the priorities should be. The more stakeholders you have, the more disagreements you’re likely to have. It is human nature to avoid conflict and that is why many product managers put off these tough discussions until very late in the project and sometimes never have these discussions at all. However, strong product managers know that having these discussions earlier, rather than later, will add significant value to the project. They know that in some cases conflict is good: it forces justification for things that were previously assumed or asserted, and this may reveal many mis-prioritizations that have been taking place. And without the conflict, the project may very well fail, because the time and money wasted by poor prioritization may get the project cancelled or doom it to low user acceptance.
Prioritization is necessary because we never have unlimited time and unlimited funds. And even if we did, we’d have to decide what to do first. So these prioritization discussions will be necessary on every project. And the longer you put off prioritization, the more costly the lack of prioritization becomes. Your team may be spending its time on low-priority features that are unnecessary, and that is a waste of money when the team’s time would be better spent on higher-value features. Also, any time you spend on a low-priority feature will delay your project completion date, potentially causing you to miss key deadlines.
So how do you determine priorities without conflict, hurt feelings, and stakeholders holding grudges? Sometimes, it may be impossible. Some features are so tied up in office politics and years of power struggles that there will be nothing you can do to avoid conflict. And sometimes there are many legitimate disagreements about what is and isn’t important. These tough situations are the ones that need these prioritization discussions the most. Many emotionally-charged features will turn out to be over- or under-prioritized due to the egos involved – it is our job to uncover this and report it to our stakeholders.
While it is not possible to avoid all conflict, it can be reduced by using the right tools to aid these discussions…
- The first tool to start with is the Business Objectives Model. If you don’t have one yet, it is important to create one as early in the project as possible. This model will help ensure that all your priorities line up with the business objectives of the project. When you are discussing priorities, show this model to the team and ask how it relates to the feature in question. If the feature does not seem to line up with anything in the model, there is a good chance that the feature is not contributing to the project’s business objectives and may not be needed at all.
- If you have competing features targeting the same business objective, a good tool to use would be Objective Chains. These will quantify the value that each feature contributes to the objective, so that you can prioritize the higher-value features over the less valuable ones.
- In the prioritization meeting, make sure that you have all the necessary stakeholders in the room. It would be a waste of time to determine the priorities and then have another key stakeholder come back and say that they had no input in the prioritization process. It is usually best to include more people, rather than less, in these discussions, because stakeholders will feel more ownership of the decisions, or at least that they had their say.
- Overall, the best approach to prioritization is total transparency. Make sure all decisions are documented somewhere so that everyone is aware of them. This will allow objections to arise sooner, and any mistakes made can be fixed quickly. The broader the group of people who see the priorities, the better. A single business user may uncover an unrealized problem with the priorities based on some fact that only he or she is aware of. Your prioritization will never be perfect, it will always change as business needs change or new factors are brought to light, but the best way to ensure that these changes have minimal impact on time and budget is to constantly broadcast the priority list far and wide.
- Even when you use visual models to aid your prioritization process, there will be egos and office politics involved in the discussions. Strong facilitation can minimize these, but often they will appear to some degree. As the product manager, your best course of action is to stick to the facts shown on the models as closely as possible, and always try to pull discussions back to the models whenever they stray from them.
The costs of poor prioritization are huge, and oftentimes cause the failure of the project. Your only chance for survival is to set priorities early, and change them quickly when the situation dictates. By properly setting priorities you can deliver the most valuable functionality while saving time and money throughout the life of the project.