One of the key ideas in Agile is prioritization – a team needs to understand which features must be done and which can be left behind in order to produce the best result. However, the concept can be quite difficult to grasp when moving from a different project management approach. A prioritization technique called MoSCoW brings great help and clarity in such cases.
First used with Dynamic Systems Development Method, MoSCoW is a technique developed by Dai Clegg. The sole purpose of this prioritization approach is to help understand the importance that the stakeholders put on each of the features and requirements they pose. Thus being able to focus on the exact most important ones first and tacking on the rest only if the team has time left.
The technique requires to divide all of the features into four categories – Must, Should, Could and Won’t. Thus forming the MSCW acronym from which the name MoSCoW appears. In order to know which of the features are crucial, the team has to categorize them into the four groups.
Must have features are absolutely crucial to the project. Should have features are important to the project, but less urgent. Could have features are not as important as they are desirable and should only be completed if there is left over time. And lastly Won’t have features are either not important or not possible at the time and thus are not completed at all.
Once the team prioritizes the features, they create a clear action plan to move forward. First, they have to complete all of the Must have features. Once that is done they can move onto the Should haves. And only after all of the Should haves are done, the team can consider the Could haves. This way the focus is on the most important tasks right away.
What does this have to do with Agile? It will help teams transition, prioritize and plan better.
Running a first Sprint or a first iteration can and most likely will be tough on any team. You don’t know what you are doing, you are still questioning the process and on top of that now you have to decide with which of the many tasks you will start first. Adding the MoSCoW technique in such cases will bring the team clarity and provide the ability to move forward.
Depending on the process, the team could even divide the backlog into 4 columns based on the four importance groups. This way being able to add the new features straight into the appropriate columns and compare them against each other to get a better sense of their priorities.
While more advanced teams will often see no point of such prioritization and be content with the traditional story point or priority column approach, this can be a great help for new Agile practitioners.
One thing to note though, is that while the MoSCoW technique is usually used only once or a couple of times during the project, for Agile teams this will be different. To accommodate the changing circumstances and planning the right work for each iteration, the technique should be used whenever the priorities switch. Since that could become quite burdensome, the teams should make a note of reviewing their priority columns every time they plan a new iteration.
Would you consider MoSCoW as part of your Agile routine?