Software Requirements

Download as pdf or txt
Download as pdf or txt
You are on page 1of 9

Software Engineering (3rd ed.), By K.

K Aggarwal & Yogesh Singh, Copyright © New Age International Publishers, 2007 1
Requirement Engineering
Requirements describe
What not How
Produces one large document written in natural language
contains a description of what the system will do without
describing how it will do it.

Crucial process steps


Quality of product Process that creates it

Without well written document


-- Developers do not know what to build
-- Customers do not know what to expect
-- What to validate
Software Engineering (3rd ed.), By K.K Aggarwal & Yogesh Singh, Copyright © New Age International Publishers, 2007 2
Problem Statement

Requirements
Elicitation

Requirements
Requirement
Analysis
Engineering

Requirements
Documentation

Requirements
Review
SRS

Crucial Process Steps of requirement engineering


Software Engineering (3rd ed.), By K.K Aggarwal & Yogesh Singh, Copyright © New Age International Publishers, 2007 3
Requirement Engineering
Requirement Engineering is the disciplined application of
proven principles, methods, tools, and notations to describe a
proposed system’s intended behavior and its associated
constraints.
SRS may act as a contract between developer and customer.

State of practice
Requirements are difficult to uncover
• Requirements change
• Over reliance on CASE Tools
• Tight project Schedule
• Communication barriers
• Market driven software development
• Lack of resources
Software Engineering (3rd ed.), By K.K Aggarwal & Yogesh Singh, Copyright © New Age International Publishers, 2007 4
Requirement Engineering
Example

A University wish to develop a software system for the


student result management of its M.Tech. Programme. A
problem statement is to be prepared for the software
development company. The problem statement may give
an overview of the existing system and broad expectations
from the new software system.

Software Engineering (3rd ed.), By K.K Aggarwal & Yogesh Singh, Copyright © New Age International Publishers, 2007 5
Types of Requirements
Types of Requirements

Known Unknown Undreamed


Requirements Requirements Requirements

Stakeholder: Anyone who should have some direct or indirect


influence on the system requirements.
--- User
--- Affected persons

Requirements

Functional Non-Functional

Software Engineering (3rd ed.), By K.K Aggarwal & Yogesh Singh, Copyright © New Age International Publishers, 2007 6
Types of Requirements
Functional requirements describe what the software has to
do. They are often called product features.
Non Functional requirements are mostly quality
requirements. That stipulate how well the software does,
what it has to do.
Availability
Reliability
For Users
Usability
Flexibility

Maintainability
Portability For Developers
Testability

Software Engineering (3rd ed.), By K.K Aggarwal & Yogesh Singh, Copyright © New Age International Publishers, 2007 7
Types of Requirements
User and system requirements
• User requirement are written for the users and include
functional and non functional requirement.
• System requirement are derived from user requirement.
• The user system requirements are the parts of software
requirement and specification (SRS) document.

Software Engineering (3rd ed.), By K.K Aggarwal & Yogesh Singh, Copyright © New Age International Publishers, 2007 8
Types of Requirements
Interface Specification
• Important for the customers.

TYPES OF INTERFACES

• Procedural interfaces (also called Application


Programming Interfaces (APIs)).
• Data structures
• Representation of data.

Software Engineering (3rd ed.), By K.K Aggarwal & Yogesh Singh, Copyright © New Age International Publishers, 2007 9

You might also like