Requirement Management Process
The first phase of any project is to gather the requirements. This is the most basic, important and critical task for the project development. These requirements serve as the basis on which the entire system, business and application architecture is developed and delivered to the stakeholders of the project. Also at any stage of SDLC, the requirements may get changed. Improper and incomplete requirement gathering and frequent changes in the requirements must be managed properly in order to avoid a project failure. Thus we need to prepare and follow requirement management process for efficient requirement gathering.
- Stakeholder Analysis:
There are many people in an organization or an organization as a whole gets affected by the implementation of the said project. It is important to identify the people who are influenced by the project and to what extent their influence matters. These people are the stakeholders of the project. Stakeholder analysis is done to identify and analyze these stakeholders in order to have a deep understanding of their interests, behavior and relationship to a project.
- Requirement Elicitation Techniques:
Elicitation techniques are tools used to gather the requirements from the users or stakeholders.
Brainstorming | Data Analysis | Reverse Engineering | Focus Group | Observation |
Workshops | Joint Application Development (JAD) | Interview | Prototyping | Questionnaire |
One such technique is Brainstorming where a group of 8 – 12 people join in to discuss new ideas so as break free from old and ineffective ideas. These free willing ideas help in providing new and original solutions to a problem. It helps in:
- Creativity of ideas
- Gathering large number of ideas
- All team members are equally involved
- Ownership of decisions
- Sorting the requirements
Once requirements are gathered from various stakeholders, they need to be categorized based on stakeholder needs. Stakeholders provide a wide spectrum of requirements which need to be sorted out as Business requirement, functional requirements and non functional requirements. Creating a pool of similar requirements and creating supporting documents for each specific pool of requirement.
- Prioritize requirements
The requirements need to be prioritized based on their importance, risk associated, cost that can be occurred, benefits that can be received and strategy. One such technique is MoSCoW.
M- Must have or mandatory requirements of the project
S- Should have or these are important requirement but are not time critical and can be delivered in other ways
C- Could Have or desirable requirement but are only included if we have time and resources
W- Won’t have or least critical requirement which are not included at this time frame
- Validating requirements
After preparing the documents for a well sorted and prioritized requirement, the final draft is to be examined to check for completeness, accuracy, consistencies and ambiguities. Every document must be formulated as per organizational standards and organizational knowledge. Based on these parameters, we validate the document for listing the problems in the requirement document and taking the agreed action to resolve the issues in the listed problems.