Requirements capture is the process of harvesting the raw requirements of your stakeholders and turning them into something useful. It is essentially the interrogation of stakeholders to determine their needs. This can take many forms, with questionnaires or interviews being the most popular.
The usual output is a 'requirements specification' document which details which of the stakeholder requirements the project will address and, importantly, which it will not.
The focus in requirements capture must be in gathering of information. Keep your ears open and
your mouth shut! Listen carefully to what people want before you start designing your product.
Later you can focus on how things are to be achieved for now you need to find out what must be
achieved.
Requirements capture also needs to be fast. Projects have a tendency to bog down at this stage
and to produce reams of documentation, but no useful output. Requirements capture should not
produce endless tomes detailing the answer to every possible question but should provide enough clarity for the project team so that the objectives are clear.
Requirements capture also needs to be fast. Projects have a tendency to bog down at this stage
and to produce reams of documentation, but no useful output. Requirements capture should not
produce endless tomes detailing the answer to every possible question but should provide enough clarity for the project team so that the objectives are clear.
Questionnaires
Questionnaires are a typical way of gathering requirements from stakeholders. By using a standard set of questions the project team can collect some information on everyone's needs. While questionnaires are efficient for rapidly gathering a large number of requirements their
effectiveness can be limited since it is a one way process. If you don't ask the right questions, you
don't get the right answers. There is also no way to seek clarification or resolve conflict. To resolve this, questionnaires are usually used in conjunction with other methods, such as interviews.
Interviews
The same questions posed in a questionnaire can be put across a table in an interview. The benefit of the interview is that it allows more exploration of topics and open ended discussion on the requirements for the project. It's a two way process.
Interviews can either be structured as single or group sessions. Particular stakeholders can be
interviewed individually or a group session can be used thrash out ideas amongst a larger number of stakeholders (and hopefully obtain consensus). In a group session you can use a formal structure or a more open style where ideas are thrown around, a brainstorming session. The best ideas that survive can be adopted by the project team as part of the requirements.
The down-side to interviews is that they are time and people intensive. Not only must the interview be set up and conducted but minutes must be taken, distributed and reviewed, and it may be necessary to hold one or more follow-up meetings. Using questionnaires and interviews is a common and efficient practice; questionnaires can be distributed beforehand and an overview of the stakeholder’s requirements collected. The interviews are then focussed and directed towards the clarification of those requirements.
User observation
Another method of requirements capture is direct end-user observation or evaluation.
The purpose of user observation is to capture requirements that the end-users may not be consciously aware of. For example individuals using a cheque processing system in a large finance system may conduct a number of manual steps outside of the system that could be automated.
Because they don’t regard these steps as being part of the system they will not mention them when questioned about the incumbent system. Only by direct observation will the development team become aware of the importance of these steps.
You can either use free-form observation or you can take a typical group of end users are set a series of tasks and monitor their processing of these tasks. Notes are made on the way they conduct the tasks, any obstacles they encounter and you could even video tape it (if they agree).
Direct user observation is particularly powerful because, unlike the first two methods of requirements capture, it relies on observed fact and not upon opinions. It is however, the most
resource intensive of the three techniques.
Conflicting Requirements
One or more requirements may contain elements that directly conflict with elements of other
requirements. For example, a performance requirement may indicate that a core system must be updated in real time but the size and scope of the system (as defined by other requirements) may preclude this. Updating such a large system may not be possible in real time.
One of the most effective ways of resolving conflicts between requirements is to impose some form of prioritisation. This allows the potential for negotiation since it provides a basis for assessing conflicting requirements. For example if, from the previous example, the requirement for real time updates was rated at a much higher priority than the inclusion of full customer data, then a compromise could be reached. The main ‘online’ database could contain only the barest essential of customer details (allowing real time updating) and a separate ‘archive’ database could be established which contained customer histories.
