CH 4 Requirement Engineering
CH 4 Requirement Engineering
4 Requirement Engineering
Content:
4.1 Introduction
4.2 Requirement Elicitation
4.3 Requirement Elaboration
4.4 Requirement Gathering
4.5 Feasibility Study
4.6 Fact Finding Techniques
4.7 SRS Format
4.1 Introduction:
Requirements engineering (RE) refers to the process of defining, documenting, and
maintaining requirements in the engineering design process.
Requirement engineering provides the appropriate mechanism to understand what the
customer desires, analyzing the need, and assessing feasibility, negotiating a reasonable
solution, specifying the solution clearly, validating the specifications and managing the
requirements as they are transformed into a working system.
Thus, requirement engineering is the disciplined application of proven principles,
methods, tools, and notation to describe a proposed system's intended behavior and its
associated constraints.
Requirements engineering is the process of identifying, eliciting, analyzing, specifying,
validating, and managing the needs and expectations of stakeholders for a software
system.
Tools involved in requirement engineering:
1. observation report
2. Questionnaire ( survey , poll )
3. Use cases
4. User stories
5. Requirement workshop
6. Mind mapping
7. Role playing
8. Prototyping
There are several techniques that can be used to elicit requirements, including:
Customers stakeholders
Decision-makers
Users
System administrators
Other impacted customer departments
Internal stakeholders
Executives
Engineering
Marketing
Sales
Customer support (including on-site maintenance teams, if applicable)
Key suppliers
Distributers and other partners
1. Technical feasibility:
Interviewing:
This technique is used to collect information from individuals or from groups.
It is an art better learned from practice than from books.
It is an invaluable technique to gather qualitative information, opinions, policies,
suggestions, underlying problems etc.
However there are certain points to be remembered in conducting interviews:
Put yourself in other man’s place and pose your questions. Cultivate the ability to
appreciate his point of view.
Be sure you really understand instead of jumping to conclusions.
Maintain a neutral attitude, show genuine interest so that the other person can come
out with his problems, thought and ideas.
Let him do the most talking ! Listen ! Listening is an art.
Ask specifics.
Notice what he does not say.
Do not allow your mind to wander. It is usually reflected in your face. If the interviewer
leaves the core subject , bring him back to the track tactfully.
Don’t show you are in hurry!
Be prepared for disagreement.
Distinguish between fact and opinion.
Always be polite ! Don’t be over polite!
General rules for conducting an interview:
Obtain prior permission
Prepare oneself as regards to objective and methods.
Put the interviewee at ease.
Explain in advance about the subject of the interview.
Avoid arguments involving too many people at the same time.
Do not try to cover too much ground in one interview
Questionnaires:
Questionnaires may be used as a supplement to interviews.
More people can be reached and answers can be corroborated (confirm).
The questionnaires can have open ended questions like – What are the major and minor
problems in the existing system?
A closed ended questionnaire will have fixed responses like – What is the average value of
invoice in your department?
It can be considered as a structured interview form.
Since the cost involved in developing and distributing is very high, the following points
must be kept in mind while designing questionnaires:
1. The objective of the questionnaire must be clear.
2. The structure must be useful for the study.
3. Question must be easily and unambiguously understood.
In addition the respondents should be carefully selected.
The responses received must be analyzed scientifically and without any bias.
Questionnaires are useful for:
1. Gathering numerical data
2. Getting relatively simple opinion from a large number of people.
3. Obtaining collective opinion etc.
Questionnaires are also useful to get feedback in a post implementation audit.
Record review:
Believe in record than in people! Thus a good analyst always gets facts from documents.
An existing system can be better understood by examining existing documents, forms and
files.
This record review can take place at the beginning of the system study or later in the study
for comparing actual operations with what the records indicate.
Records may include:
Written policy manuals.
Rules and regulations.
Standard operating procedures used in the organization.
Forms and documents.
The following questions may be useful in analysis of form:
Who uses these forms?
Do they include all the necessary information?
How readable and easy to follow is the form? Etc
Observation:
An analyst must always keep his mental antenna alert!
Observation can bring in missed facts, new ways to improve the existing procedures,
duplicate work done inadvertently etc.
Operation can bring in what other fact finding methods cannot! But this task is delicate
because people do not like to be observed when they work.
Observation can look for:
Operational inefficiencies
Alternate routes and procedures
Interruptions in the normal flow of work
The usage of files and documents.
Informal communication channels etc.
============================================================================