Software Engineering Principles: Requirements Analysis & Specification
Software Engineering Principles: Requirements Analysis & Specification
Principles REQUIREMENTS
ANALYSIS & SPECIFICATION
Why Study Software Engineering?
• Many projects have failed because
– they started to develop without adequately
determining whether they are building what
the customer really wanted.
• Customer Requirement
Typical project scenario…
Requirements
• A Requirement is a capability or condition required
from the system.
Requirements Analysis
Requirements Specification
SRS Document
Requirements engineering
• The process of establishing the services that
– the customer requires from a system and
– the constraints under which it operates and
is developed.
• The requirements themselves are the
descriptions of
– the system services and
– constraints that are generated during
the requirements engineering process.
Requirements Analysis and
Specification
Requirements Gathering:
Fully understand the user requirements.
Requirements Analysis:
Remove inconsistencies, anomalies, etc. from
requirements.
Requirements Specification:
Document requirements properly in an SRS
document.
Need for SRS…
• The SRS can serve as the basis for writing User Manual for
the software:
– User Manual: Describes the functionality from the
perspective of a user --- An important document for
users.
– Typically also describes how to carry out the required
tasks with examples.
SRS Document: Stakeholders
• SRS intended for a diverse audience:
– Customers and users for validation, contract, ...
fi Output
O1
Input I1
Data I2 O2 Data
I3 O3
Example Functional Requirements - I
• Interface requirements
– Field 1 accepts numeric data entry.
• Business Requirements
– Data must be entered before a request can be approved.
• Regulatory/Compliance Requirements
– The database will have a functional audit trail.
Usability
Requirements
– Operating system
– DBMS to be used
– Standards compliance
– Reliability ‹
• the ability of a system to perform its required functions under stated
conditions for a specific period of time.
• Safety ‹
• Help facilities ‹
– Performance requirement.
• The access permissions for system data may only be
changed by the system’s data administrator.
– Security requirements
Examples-II