liveBook · Manning

MoSCoW technique

As explained in Think Like a Software Engineering Manager

The MoSCoW technique classifies requirements as must-have, should-have, could-have, or will-not-have to support prioritization.

When resources, budget, or competing priorities constrain a launch, teams can classify requirements to agree on what matters most. The MoSCoW technique groups items by launch necessity and value, supporting consistent prioritization across stakeholders. section 10.1.2

Use four categories to distinguish non-negotiable work from later possibilities:

  • Must-haves: non-negotiable items necessary for launch, such as product features or security. section 10.1.2
  • Should-haves: essential items that add value, such as performance, low latency, or authentication. section 10.1.2
  • Could-haves: desirable items with limited launch impact, such as user comments functioning as a journal. section 10.1.2
  • Won’t-haves: wishlist items that do not affect launch and can move to later iterations or versions. section 10.1.2

Project prioritization

Stakeholders analyze priorities and return on investment before classifying Project Accessible as a must-have and making it the company’s primary focus. section 10.1.2

How Think Like a Software Engineering Manager covers it

How deep it goes
Defines four priority categories and gives examples, but stops short of prescribing a detailed scoring process.
Examples
Uses security, performance, authentication, comments, later iterations, and Project Accessible to illustrate priority levels.
What it assumes
Assumes stakeholder discussion and business analysis, while defining the four priority categories directly.
What you can do after
Evaluate and rank requirements for launches or enhancements while aligning stakeholders around business priorities.
How it connects
Connects requirements prioritization with project management, product launches, return on investment, and resource constraints.

Also explained in

Compare how 2 books explain MoSCoW technique →

This explainer was generated by Manning's knowledge graph from the text of Think Like a Software Engineering Manager. The section links point to the parts of the book it draws on.