Professional Documents
Culture Documents
1 2
3 4
5 6
1
Software Requirements Specification
Specification Principles
Software Requirements
Specification (SRS) Separate functionality from implementation
Develop model of desired behavior of the system
Defines the customer’s requirements in terms of : Establish the context in which s/w operates
– Function Define the environment in which system operates
– Performance Create a cognitive model
– External interfaces Specifications must be tolerant of incompleteness
– Design constraints & augmentable
Content & structure of a specifications should be
The SRS is the basis of contract between the amenable to change
purchaser and supplier
7 8
Functional Requirements
Types of Requirements
Transformations (inputs, processing, outputs)
Functional requirements Requirements for sequencing and parallelism
Non functional requirements (dynamic requirements)
– Performance requirements Data
– Interface requirements – Inputs and Outputs
– Design constraints – Stored data
– Transient data
– Other requirements
Exception handling
Nature of function: Mandatory/ Desirable/
Optional / Volatile / Stable
11 12
2
Software Requirements Specification
Performance Requirements
Capacity Verifiable
– no. of simultaneous users, processing
requirements for normal and peak loads, static A requirement is verifiable if and only if
storage capacity, spare capacity there exists some finite cost effective
Response time process with which a person or machine can
System priorities for users and functions check that the SW meets the requirement.
System efficiency
Availability
Fault recovery
Design Constraints
External Interface Requirements
SW design constraints
User interfaces – standards for design, coding, naming, etc.
– eg. if display terminal used, specify required – SW interfaces (to OS, DBMS, other SW)
screen formats, menus, report layouts, function – use a specific application package
keys – constraints on program size, data size etc.
Hardware interfaces HW design constraints
– characteristics of the interface between the SW – specific type of HW, reliability requirements
product and HW components of the system – HW interfaces
Software interfaces – requirements for spare capacity or spare
performance
– specify the use of other SW products eg. OS,
DBMS, other SW packages
15 16
17 18
3
Software Requirements Specification
19 20
4
Software Requirements Specification
Functional Requirements
Functional Requirements
Introduction
– describe purpose of the function and the Processing
approaches and techniques employed – validation of input data
Inputs and Outputs – exact sequence of operations
– sources of inputs and destination of outputs – responses to abnormal situations
– quantities, units of measure, ranges of valid – any methods (eg. equations, algorithms) to be
inputs and outputs used to transform inputs to outputs
– timing
27 28
5
Software Requirements Specification
31 32
33 34
6
Software Requirements Specification
Complete Verifiable
All significant requirements are included A requirement is verifiable if and only if
Definition of responses of the SW to all realizable there exists some finite cost effective
classes of input data in all situations. process with which a person or machine can
check that the SW meets the requirement.
Conformity to a standard
Full labeling and referencing of all figures, tables Consistent
etc. and definition of all terms and units of measure
No two requirements are in conflict
37 38
Traceable
Modifiable
An SRS is traceable if the origin of each
Structure and style of SRS is such that changes to requirement is clear and it facilitates the
requirements can be made easily, completely and referencing of each requirement in future.
consistently.
Backward traceability
– SRS organisation -- table of contents, index,
– requirement explicitly referencing its source in
explicit cross-referencing
previous documents
– no redundancy
Foward traceability
– each requirement has a unique name or
reference number and it can be traced to design
documents, program implementation.
39 40