The definition of Prioritization

Prioritization is the process of deciding what is most important for a team to work on.

For technology companies, it involves ranking tasks (used synonymously herein for user stories, tasks, requirements, issues, etc.) in order from 1 to n.

Prioritization is important for a few key reasons.

  1. Gets the whole team or organization aligned and working toward a common goal.
  2. Sets expectations of how important particular tasks are and provides some rails or bumpers for individuals to work within.
  3. Ensures that everyone is collectively working on the right thing at the right time.

The last point is a subjective measure. Prioritization models help reduce this subjectivity by asking key questions and requiring a task to be considered from different perspectives (business value, security, urgency, etc.). There are many popular prioritization models to choose from. Among them are:

  • Impact/Effort Matrix
  • WSJF (weighted shortest job first)
  • RICE (reach, impact, confidence, effort)
  • MoSCoW (must-have, should-have, could-have, won’t-have).

No one model is superior. It’s best to think of prioritization models as different tools for different jobs, situations, or organizations.

For example, WSJF might be well suited to an organization that has developed a good rhythm and can accurately assess a feature’s business value and risk reduction, while an impact/effort matrix may be better suited for a fast-moving startup that needs to quickly decide what will have the biggest bang for the buck.

Also, some models can be used in conjunction with each other. A team might first break their backlog into rough priorities using the impact/effort matrix, then further refine priorities using the RICE model. Just remember that using any model is superior to using nothing at all.