top of page

Agile Prioritization Techniques

An exploration of five prioritization techniques to consider when on the hunt for an agile prioritization framework.

Agile prioritization frameworks

Introduction to agile prioritization

In Agile ways-of-working, prioritization is a critical activity that helps the organization and teams focus on delivering the most valuable outcomes to the customer early and on a cadence. Prioritization involves selecting the most critical items from a backlog of initiatives (typically epics in agile), features, and other work items to ensure that the organization and teams are working on the most important initiatives at any given time.

Prioritizing initiatives in Agile development is essential to capitalize on the value drivers of agile, some being:

  1. Deliver value early: Prioritizing initiatives allows teams to focus on the most valuable features first, enabling them to deliver value to the customer quickly.

  2. Reduce waste: Prioritizing initiatives helps organizations to avoid working on initiatives that aren’t critical in achieving the strategic themes, and thereby reducing waste, limiting work-in-process (WIP), etc.

  3. Increase customer satisfaction: Prioritizing initiatives based on customer needs and preferences can lead to higher customer satisfaction levels and increased brand loyalty.

  4. Optimize allocation of people: Prioritizing initiatives helps teams to allocate capacity effectively, ensuring that the most critical features are given the necessary attention and resources.

Common agile prioritization frameworks

Now let's take a closer look at some of the common prioritization techniques used in Agile methods.

1. MoSCoW: The MoSCoW technique is a simple and effective way to prioritize initiatives by categorizing them into four groups: Must-have, Should-have, Could-have, and Won't-have. This technique helps teams to focus on the most critical features, ensuring that they are delivered first.

Pros: The MoSCoW technique is easy to use and understand, making it an excellent choice for teams that are new to Agile development. It helps teams to prioritize the most critical features and ensure that they are sequenced for optimal delivery.

Cons: The MoSCoW technique can be subjective, and there is a risk that less important features may not receive enough attention.

2. Kano Model: The Kano model is a customer-focused prioritization technique that categorizes features into three groups: Must-haves, Performance Attributes, and Delighters. This technique helps the organization to prioritize features based on their impact on customer satisfaction.

Pros: The Kano model provides a more nuanced view of customer needs and preferences, making it an great choice for teams that want to prioritize features based on customer satisfaction.

Cons: The Kano model can be time-consuming and requires extensive research to understand customer needs. Additionally, the application thereof doesn’t include other important factors such as risk reduction / regulatory, and so on.

3. Business Value: The Business Value technique prioritizes features based on their ‘planned’ business value. This technique helps teams to prioritize features that will have the most significant impact on the business. This pattern is extensively used in Scaled Agile Framework (SAFe®) with especially PI Objectives.

Pros: The Business Value technique helps teams to align their goals with business objectives, ensuring that the most critical features are delivered first.

Cons: Measuring business value accurately can be challenging, and there is a risk that less critical features may not receive enough attention.

4. Relative Weighting: The Relative Weighting technique assigns weights to different features based on their relative importance. The weightings can be multi-dimensional and that means a feature can be scored against many parameters to determine its priority in the greater scheme of things in the prioritization bucket. This technique provides a more objective way of prioritizing features which helps teams to focus on the most critical features first.

Pros: The Relative Weighting technique provides a fair way of prioritizing features, helping teams to focus on the most critical features first.

Cons: Assigning weights accurately can be time-consuming and requires extensive preparation and research.

5. Weighted Shortest Job First (WSJF): Introduced in Don Reinertsen’s book ‘Principles of Product Development Flow, and popularized by SAFe. Weighted Shortest Job First is a prioritization mechanism used in Agile development to prioritize work items based on their cost of delay and size. The cost of delay is the potential impact of delaying the delivery of an initiative, and it is usually measured in terms of financial cost, opportunity cost, or customer satisfaction. Size, on the other hand, is the relative effort required to complete a work item and is typically measured in story points or other similar units.

Pros: WSJF takes into account various parameters in order to determine an optimal way of sequencing work (typically epics, capabilities and features, not stories or tasks/bugs) for the most beneficial outcome.

Cons: To get started with WSJF takes a lot of educating people on the inputs and outputs of the model. It forces people to think about everything that is paramount to filter through the garbage, and in my experience, often the stakeholders in the room don’t have this information, and in even worse examples, the Organisation ‘doesn’t analyze these parameters’.

In conclusion, prioritizing initiatives in Agile development is crucial for delivering on the agile value drivers of early value delivery, reducing waste, increasing customer satisfaction, and optimizing capacity allocation. The MoSCoW, Kano model, Business Value, Relative Weighting and WSJF techniques are just a few examples of prioritization techniques that organizations (and teams*) can use to prioritize their work items. By selecting the right prioritization technique and prioritizing work items effectively, teams can increase their chances of delivering high-quality software that meets the needs of their customers.

*Team and organization is used interchangeably in the above context. Please don’t use WSJF in the team domain as on the user story level its ineffective.

What's next?


התגובות הושבתו לפוסט הזה.
bottom of page