Some friends of mine were recently looking to buy a used car. And they couldn’t agree on what to buy. When they mentioned that I realized they had a prioritization problem. And MoSCoW might help them find what they are looking for.

Options, Options, Options

There are many things to take into account when buying a used car. What type of fuel does it use? Do you want diesel, petrol, LPG, hybrid, full electric? What body type? Is it a sedan, hatchback, SUV, compact, station wagon? The production year, the gearbox type, and the number of doors. The mileage, and the fuel consumption. Not to mention the engine power, the color, and on, and on, and on. And of course the price.

Different Opinions

In talking to my friends I noticed that they wanted different things from the future car. One of them wanted the car to be a hybrid, the other one didn’t care about that but wanted to have an SUV. One cared about mileage, the other one cared about color, and so on. So I asked them to list out all the preferences they had and put them in a MoSCow table. Of course, they looked at me like I was speaking in tongues.

What is MoSCoW?

I explained that MoSCoW is a requirements prioritization technique. It helps group requirements in “buckets” named Must, Should, Could, and Won’t. The name comes from the initials of these buckets, M,S,C,W. And the letter o after M and C makes it easier to pronounce.

Must

Requirements in the Must bucket must be met to deliver the solution. For example, the solution is not legal without meeting these requirements, or not safe. Or it cannot deliver the business case without meeting these requirements.

I told my friends to think that if the car doesn’t meet these criteria they won’t buy the car.

Should

Requirements in the Should bucket are important but not vital. The requirement should be included if it fits the budget. But the solution is viable if the requirement is not met, or only partially met. For these requirements, there is usually a manual workaround available.

I told my friends to put in the Should bucket car characteristics that are important to them. But that won’t prevent them from buying the car if they are missing.

Could

Requirements in the Could bucket are wanted or desirable, but less important. There is a workaround available, or there is less impact if left out. These would be your “nice to have” features. It would be nice to have them, it would ease the work, but the solution will be accepted without them.

I told my friends to include in the Could bucket characteristics that they would like the car to have. But that they wouldn’t really mind if it didn’t.

Won’t

Requirements in the Won’t bucket are wanted, but won’t be delivered initially, or at all. You will notice that at first there will be very few if any requirements in this bucket. But, working with the customer you should move certain requirements to the Won’t bucket.

I told my friends to add to the Won’t bucket characteristics of the car that they don’t care about that much. And that the car they buy probably won’t have them.

Her MoSCoW

I gave both my friends a link to Miro and they filled in their MoSCoW tables.

She needed the car to be an SUV and have an automatic gearbox. That was non-negotiable. She really wanted a panoramic roof and had a budget under 18000 euros (roughly $20.000). She also wanted parking assistance and heated seats. And preferably the car should be black.

As expected she didn’t have any requirements in the Won’t bucket.

Her MoSCoW table

His MoSCoW

His requirements were more technical. They covered different aspects that she didn’t mention. The car must be a hybrid, and it must be more recent than 2015. The good news is he also needed the car to have an automatic gearbox, which was a must for his wife as well.

He also cared about mileage, Bluetooth connectivity, and fuel consumption. And he had a higher budget in mind: 20000 euros (roughly $22.000)

He wanted a somewhat powerful engine but would accept a car with a less powerful one. He also preferred but was not adamant about having a station wagon to fit many things in the trunk.

His MoSCoW Table

Putting Everything Together

We then sat together with the two sets of priorities. Luckily, they were able to talk through their preferences. And to do some research to see if their dream car was available.

They noticed that there were no cars in their budget with a panoramic roof. So they happily agreed to move that requirement to the Won’t bucket. Also, as the SUV was non-negotiable for her, they moved the station wagon requirement to the Won’t bucket. And the SUV requirement to the Must bucket. They also realized that the color wasn’t important. As long as they could get some of the more important requirements met.

They settled on a budget between his idea and hers, at around 19.000 euros. But they were flexible on going a bit under or above.

So their combined MoSCoW looked like this:

Their MoSCoW Table

End Result?

By now you’re wondering if they found what they were looking for. And if they did, what was it?

They did find a car, and it met most of the requirements. They bought a Toyota RAV 4 SUV, a hybrid from 2016. It has 155 BHP, an automatic gearbox, 5l/100kms fuel consumption, and heated seats.

However, the price was 19200 euros, slightly over their agreed 19000 euros. And it has 147000 km rather than under 130000km, no panoramic roof, and it’s WHITE.

If we were to look at their prioritized requirements, this is how their purchase compares. I’ve crossed out the requirements that were not met.

Final MoSCoW Table

Conclusion

As you can see, MoSCoW will not guarantee that all the requirements will be met. But it will help your stakeholders get a clearer understanding of what is important to them.

Moreover, you can use the MoSCoW technique in other contexts than software development. And if you combine it with negotiation you can get excellent results.

In what non-software-related contexts did you use the MoSCoW technique?