Business Analyst Requirement Gathering Explained:
According to Wikipedia requirement gathering is defined as “tasks that go into determining the needs or conditions to meet for a new or altered product, taking account of the possibly conflicting requirements of the various stakeholders, analyzing, documenting, validating and managing software or system requirements”.
According to the BABOK (Business Analyst Body of Knowledge) these are ten requirement gathering techniques.
- Document Analysis
- Focus Group
- Interview
- Interface Analysis
- Observation
- Prototyping
- Requirements Workshop
- Reverse Engineering
- Survey
- Brainstorming
Processes involved in Requirement Gathering
1. Document Analysis
You should always review the documentation of an existing system. It will help you when creating as is process documents. There can be a wealth of information that is often buried in existing documents that help us ask questions as part of validating requirement completeness.
2. Focus Groups
Focus groups are a gathering of people who are representative of the users or customers of a product to get feedback. The feedback can be gathered about many different things and can be gathered to validate and refine already written requirements.
3. Interviews
Interviews of stakeholders and users are critical to creating the great software. Without this understanding of the goals and expectations of the users and stakeholders, it is very unlikely we will satisfy them. We also have to recognize the perspective of each person we interview. No only do we interview it’s also important to make sure to listen to the person responding to you questions.
4. Interface Analysis
Integration with external systems and devices is just another interface. Interface analysis – reviewing the touch points with other external systems – is important to make sure we don’t overlook requirements that are NOT immediately visible to users.
5. Observation
By observing stakeholders, an analyst can identify different real world problems such as a process flow, awkward steps, pain points and opportunities for improvement. Observing can be passive or active (asking questions while observing). Passive observation is better for getting feedback on a prototype (to refine requirements), where active observation is more effective at getting an understanding of an existing business process. Either approach can be used to uncover different requirements that otherwise might go overlooked.
Prototypes are very effective at gathering feedback. It is a way to mock something up without going full scale.
7. Requirements Workshop
Workshops can also be very effective for requirement gathering. It is more structured than a brainstorming session; involved parties collaborate to document requirements. A workshop will be more effective with two analysts than with one, where a facilitator and a scribe work together.
8. Reverse Engineering
Simply building the system backwards.
9. Surveying
When gathering information from to many people to interview, you can survey. It is hard to design your own survey because they can bias the responders. Don’t always think that you should create one on your own.
10. Brainstorming
Gather a group of people and come up with ideas to solve the problem. It is a technique mostly used to target possible solutions to problems, and clarify details. Brainstorming can cast a wide net, to identify many different possibilities. Prioritization of those ideas is important to finding the right solutions.
Requirement gathering is not an easy task, it takes time and patience. Use these techniques to build upon your skills and the solutions will present themselves.