Agile prioritization that I’ve honed over years. * Learn to concentrate on what really counts, increase productivity, and deliver value more quickly. * The proven MoSCoW and WSJF frameworks. * How to use data to make decisions that satisfy stakeholders and keep your team inspired.
Agile Prioritization Techniques
Agile prioritization techniques are designed to help teams identify the most high-value tasks. I have used these prioritization methods in various projects and have found that they dramatically increase team productivity and project results. Here are four proven prioritization methods:
MoSCoW Method
Must-have
Should-have
Could-have
Won’t-have
Weighted Shortest Job First (WSJF)
Prioritizes tasks based on job size and cost of delay
Kano Model
Groups features by how much satisfaction they deliver to the customer
Value vs. Effort Matrix
Organizes tasks by how much value they deliver and effort required
Each method has its own unique strengths. MoSCoW is easy and simple. WSJF gives a numeric prioritization value. Kano focuses on customer satisfaction. The Value vs. Effort Matrix is great for a visual representation of your priorities.
You can adapt these methods to any type of project and team. I have found that they work well for both software development and business process improvement projects. Agile tools can significantly enhance the implementation of these prioritization techniques.
Implementing the MoSCoW Method
The MoSCoW method is a simple prioritization framework that I’ve found effective in many projects. Here’s a step-by-step framework to use the MoSCoW method:
List all tasks or features required for your project
Assemble your team and relevant stakeholders
Define the criteria for each MoSCoW category
Place each item into the Must, Should, Could, or Won’t categories
Review and adjust as needed
When placing an item into a category, consider its impact on project goals, deadlines, and resources. Must-have items are essential. Should-have items are important, though not essential. Could-have items are nice to have if resources and time permit. Won’t-have items are recognized but not planned within the present project.
The most common mistake when using the MoSCoW method is marking too many items as Must-have. This kind of defeats the purpose of prioritization. Try to aim for roughly 60% of items in the Should and Could categories.
For example, in a software upgrade project, we marked core functionality as Must-have, additional functionality as Should-have, enhancements to the user interface (UI) as Could-have, and any deprecated functionality as Won’t-have. This clear priority made it easy to deliver the project on time and within budget. Defining clear acceptance criteria for each category can further enhance the effectiveness of the MoSCoW method.
Mastering Weighted Shortest Job First (WSJF)
WSJF is a more quantitative prioritization framework. It stands for Weighted Shortest Job First, and it’s based on the concept of maximizing the Cost of Delay divided by job size. Here are the components of WSJF calculation:
- User-Business Value
- Time Criticality
- Risk Reduction/Opportunity Enablement
- Job Size
To calculate COE, sum the first three components, and for job size, use fib numbers (1, 2, 3, 5, 8 in a Fibonacci sequence). You can convert the COE and job size to numerical values to calculate the WSJF scores.
The most challenging part is evaluating job size. I generally use t-shirt sizes (XS, S, M, L, XL), but it can be anything to compare sizes relatively. Don’t worry about getting in exact hours or days.
Here’s a simple WSJF worksheet you can use:
Feature | User-Business Value | Time Criticality | Risk Reduction | Job Size | WSJF Score |
---|---|---|---|---|---|
A | 5 | 3 | 2 | 2 | 5 |
B | 3 | 4 | 1 | 1 | 8 |
C | 4 | 2 | 3 | 3 | 3 |
WSJF Score = (User-Business Value + Time Criticality + Risk Reduction/Opportunity Enablement) / Job Size
This framework has helped me make objective feature priority decisions in complex projects with varying stakeholder opinions.
Applying the Kano Model for Feature Prioritization
The Kano Model is an effective framework for understanding the impact of a feature on customer satisfaction. It classifies features into five categories:
- Must be: Basic needs that cause dissatisfaction if the feature is missing
- One dimensional: Features that increase satisfaction in proportion to the feature
- Attractive: Features that customers didn’t expect but that make them happy
- Indifferent: Features that don’t impact satisfaction one way or the other
- Reverse: Features that make customers less satisfied if the feature is present
To apply the Kano Model, administer a survey with two questions about each feature: How would you feel if the feature were present? How would you feel if the feature were absent?
Then, use a Kano evaluation table to categorize how respondents feel about each feature. This will allow you to map combinations of positive and negative feelings about a feature to Kano categories.
I used the Kano Model in a recent mobile app development project. Through our analysis, we learned that offline mode was a must be feature, while social sharing was an attractive feature. This allowed us to prioritize development based on the Kano Model to ensure we first built features people expected and then built features they didn’t expect.
The Kano Model is an excellent framework for prioritizing features that will have the most impact on customer satisfaction. It’s especially helpful when building a new product or building new features in an existing product. When implementing the Kano Model, it’s crucial to consider how it fits into your overall agile project management strategy.
Optimizing the Value vs. Effort Matrix
The Value vs. Effort Matrix is a simple prioritization visual that I frequently use in workshops because it’s simple and effective. Here’s how you can create one:
High Value | Quick Wins | Big Bets |
---|---|---|
Low Value | Maybe Later | Time Sinks |
Low Effort | High Effort |
Define value based on key project metrics. This might be revenue impact customer satisfaction, or strategic alignment. For effort, consider time, resources, and complexity.
Plot each task on the matrix, and you have a simple visual framework for identifying priorities.
Decision making by quadrant:
- Quick Wins: These are high-value and low-effort, so knock them out first.
- Big Bets: These are high-value and likely high-effort. Be a bit more skeptical than you would with Quick Wins.
- Maybe Later: These might be low-effort, but they’re also low-value.
- Time Sinks: Avoid these. They’re high-effort and low-value.
I’ve found this visual particularly helpful for facilitating productive conversations with stakeholders and it’s a straightforward justification for prioritizing one feature over another.
Stakeholder Management in Agile Prioritization
Effective stakeholder management is a key component of successful agile prioritization. 80% of successful projects involve multiple stakeholders. The most common stakeholders are:
- Product Owner
- Development Team
- End Users
- Management
- Sales and Marketing
To collect stakeholder input, I use:
- One-on-one interviews
- Group workshops
- Surveys
- Observing user behavior
Managing conflicting stakeholder requests can be difficult. I like to define clear prioritization criteria from the beginning. This gives you an objective framework to make decisions.
Communication is also important. I make sure that I communicate prioritization decisions and the rationale to all stakeholders. This level of transparency helps to build trust and alignment.
Just remember that stakeholder needs can change over time. Therefore, you should revisit and update your priorities to reflect new data and business changes. Effective stakeholder management is crucial in scaling agile practices across larger organizations.
Data-Driven Prioritization Strategies
Data driven prioritization is one of the most effective ways to improve prioritization decisions. 46% of organizations use business value and benefits as a prioritization criteria. Here’s how to use analytics to prioritize:
- Usage data – what features are most used?
- Customer feedback – what feedback is most common in surveys or support tickets?
- Financial metrics – what features generate the most revenue?
- Performance data – what features make the system more efficient?
What KPIs to optimize for:
- Engagement
- Conversion rates
- Customer satisfaction
- Time to market
- Return on investment (ROI)
A/B testing is the best way to optimize for feature prioritization. Simply put, A/B testing involves trying multiple different versions of a feature with real users. The data from A/B tests can then be used to make prioritization decisions.
Tools for data collection and analysis in agile:
- Analytics tools (Google Analytics, etc.)
- Customer feedback tools (UserVoice, etc.)
- A/B testing software (Optimizely, etc.)
- Agile project management tools (Jira, etc.)
I’ve found that using both quantitative data and qualitative insights is the most effective way to prioritize features. The key is to use data to make feature prioritization decisions, but not to feel like you have to use data for the sake of using data. Implementing data mining techniques can greatly enhance your data-driven prioritization strategies.
A Few Last Words
Agile prioritization strategies are key to maximizing the success of a project. We’ve discussed the MoSCoW method, WSJF, Kano Model, and Value vs. Effort Matrix. Using these methods allows teams to prioritize high-value work and effectively set stakeholder expectations.
The key takeaway here is to select the appropriate strategy based on your project requirements and organizational culture. You’ll become more skilled at prioritizing tasks with experience, and you’ll see improved results.