BABOK: Requirements Classification Schema
This article will help you understand the different types of requirements classified by BABOK through a practical example.
To start off, “Requirement” is a usable need for a stakeholder to solve a problem or achieve an objective.
BABOK’s specific taxonomy or classification of requirements for any project includes:
1.Business Requirements- It is the highest level of requirements and defines the high-level objectives, goals and needs of an enterprise or organisation.
2.Stakeholder Requirements-These are the business requirements that are elaborated into details by each stakeholder. These define the needs of stakeholders and how they will interact with a solution—stakeholder requirements bridge between the high-level business requirements and the more detailed solution requirements.
3.Solution Requirements- These are the most detailed type of requirements found in the classification. They describe the solution characteristics that are required to meet the higher-level business and stakeholder requirements. The solution requirements are further divided into three types: Functional, Non-functional and Transition. Transition is not a mandatory type of requirement, and it is totally dependent on the type of project.
i.Functional requirements define the capabilities that a product must provide to its users.
ii. Non-functional requirements describe quality attributes, design and implementation constraints and external interfaces that the product must-have.
4.Transition Requirements- These are the solution capabilities required to transition from the current to the future state, and they are no longer needed once the transition is complete.
A practical example of business requirements from the project I had earlier worked on:
It was a large diagnostic laboratory project. A few of their main goals were to improve system robustness, expedite customer-facing processes from one minute to 30 seconds precisely, and offer better customer services in their daily diagnostic practices to both the laboratory operators and the customers.
These are high-level business requirements. They neither detail out the requirements more nor specify the type of detailed screens required to achieve them.
Next, this huge project consisted of various stakeholders from the subject matter experts to the technical architect leads and thus, these requirements varied from each individual. They specify requirements as per their individual needs in turn to attain the high-level goals.
An example of the stakeholder requirement included: “ We would like to have a Dashboard to manage all the system users, their access, the partnerships, the laboratory finances and also monitor the availability of the diagnostic tools at all their centres”.
Solution requirements represent the requirements of the solution. Business Analyst breaks down these requirements to each task, and the development teams, in turn, take them to create the system.
Functional requirements for the above-described stakeholder requirement includes Features like User creation, modification and deletion options, an option to map the users to their respective centres etc...
The non-Functional requirement for the same stakeholder requirement concerns more about the behavioural activity of the system, like the stakeholder should be able to load and refresh the pages in 3 seconds, capacity to hold a huge amount of continuous data etc...
Finally, we had a transition requirement of changing the databases and migrating all the old information to the new database. We relied upon the Old database system till we could successfully transit all the old information until we verified the inflow of new information to the latest database.
A good business analyst should understand and differentiate these requirement types and be able to map them well in the requirements documents.