Prioritization plays a key role in our daily lives since we have a number of tasks to be performed in the various roles we play. Likewise as a business analyst we should be able to prioritize the requirements we gather from the client. There are various techniques to do so such as MoSCoW Analysis, Timeboxing or Budgeting, Voting, Decision Analysis and Risk Analysis. We will be looking at the first three in detail.
Let us take a look at the MoSCoW technique. The requirements can be categorized into the following:
Must: These are the most crucial requirements. Without these the final solution will be incomplete.
Should: These are also crucial requirements but there could be workarounds to satisfy these.
Could: These are desirable or “nice to have” requirements. If time permits these will be included in the final solution.
Would/Won’t: These will be included in the next release or will be omitted completely.
This technique is most effective when a group of stakeholders are involved in the discussion. The requirements priority list would keep evolving when the group keeps discussing and applying this technique iteratively.
Next technique is Timeboxing which is also known as budgeting. There are three approaches in this.
1) All in: The group assigns a duration of time or cost to implement each requirement. We start with all requirements in the box and remove one-by-one based on the deadlines and budget.
2) All out: The group assigns the duration of time or cost to implement each requirement. All requirements are out of the box and we add these one-by-one until the cost/time limit is reached.
3) Selective: This is a balanced approach. Here we identify the high priority requirements and then add/remove those one-by-one to meet the scheduled time/budget limits.
Another technique is voting. In this a set of requirements are distributed to a group of stakeholders and each of them gives a vote to prioritize the distributed requirements.
We can conclude by stating that one of the key skills a good business analyst should have is prioritization of tasks as it would help in minimizing overheads and maximizing the resource utilization.
Below is the MoSCoW analysis for skills of a business analyst.