Skip to content

Software Requirements Specification

Requirements Gathering → Analysis → Specification → Review → SRS document creation

Requirements Gathering

  • Gathering involves interviewing the end users to understand their needs
  • Studying existing products, manual, techniques etc.

Requirements Analysis

  • This is phase is it get into the gathered requirements and detect incompleteness, inconsistencies, ambiguity etc.

Requirements Specification

  • The cleaned up requirements are organised in SRS (Black-box specification)

What exactly the SRS document should be ?

  • Concise
  • Easy to change
  • Complete
  • Complete
  • Should not contain ambiguity
  • It should be verifiable

It should not contain

  • Design
  • Implementation details

Important Sections of SRS document

  • Functional Requirements

Specifies the functionality of the software → Heart of SRS

  • Non functional Requirements

Maintainability Portability Usability Security

  • Constraints

Operating System, Computer specifications

  • External Interfaces

User interfaces, Hardware interfaces, File export formats

IEEE Standard for SRS

  • Introduction - Purpose, scope and definitions
  • Functional Requirements - Describe all the functionalities
  • Non functional Requirements - Portability, Maintainability, Security, Performance
  • External Interfaces - User, Hardware and Software interfaces
  • Constraints

Logic Representation Tools

  • Decision Trees
  • Decision Table - (Upper → Conditions) (Lower → Actions)