You are on page 1of 2

Requirement Engineering


How the process is done

What are the activities
What is an SRS document

What is a Software Requirement

This is about what the software is to do

It is a description of services that a software system must provide and the constraints under which
it must operate
We can write a requirement using natural language or using mathematical formula

What is Requirement Engineering

A process of establishing the services that a customer requires from the system and the constraints
under which it is to be developed and operated
Requirements Engineering identify and document user requirements
Whatever is done in Requirements Engineering is documented in SRS document
This can be used as an understanding between analysts and users on what services will be
provided by the system

Activities in Requirements Engineering Process

1. Requirements Elicitation:
Process of collecting the requirements of the system from the users and other stakeholders
2. Requirements Specification:
Describing the system to be developed
3. Requirements Validation and Verification
Requirements Validation is agreeing whether the correct requirements have been stated
Requirements Verification is determining whether the requirements have been captured correctly

Why Requirements Engineering


To provide early assurance that all requirements are fully satisfied in the product
To prevent unintentional additional costs; helps to define the scope
To provide clear visibility across team into requirements allocation and cross functional interacts
To easily and quickly assess the impact of changes to requirements
To provide data for early and thorough validation of requirements

Tools for gathering information

1. Questionnaires
2. Interviews
3. Observation

4. Prototyping

Problems in Requirements Engineering

1. Defining the scope i.e. what is being developed
2. Problems with understanding domain
3. Problems in changing the requirements
Draw Specification:

The end result is the SRS document

It should be readable and understandable

Good Requirements Qualities


Requirement need to be correct

It should be unambiguous
It should be complete; no requirement should be left out
They need to be consistent
Should be verifiable
It should be traceable
The requirements should be ranked in order of importance

Categories of requirements
1. Functional requirements States the services that the system must provide
2. Non Functional requirements Constraints on the services and functions offered by the sytem
Functional Requirements