To be able to better understand the requirements of the customer, background reading is
required in the domain of the business system as well as in technical concepts relating to
hardware and software platforms, language etc. which are relevant to the system being
developed. If the customer follows a particular methodology or uses certain tools,
familiarization with them is required. When standard information and answers to closed-ended
questions are to be gathered from many users, questionnaires become very useful. Hence the
analyst should prepare questionnaires relating to the customer's business and operating
The analyst should also identify the user groups and other people that need to be
interviewed. The organization structure can help in identifying the interviewees. Usually, the
time the users can devote to giving information and requirements is limited. Hence a plan for
interviewing should be made to make effective use of the time available for requirements
gathering, keeping in mind the order of information gathering and the availability of people.
A prototype is a limited simulation of the application to be developed, and is usually created
to give the user a feel for what the application would look like once developed. If prototyping
is needed in the project, then prototyping objectives have to be established in advance and
development and feedback collection planned.
Replaced/Superseded by document(s)
In this note we give the requirements process in a software organization, a template for the
requirements document, and the process to manage changes to the requirements. This note is
based on my book CMM in Practice (Addison Wesley, 1999). The book also gives the
requirements of an example project executed in this company.