Requirement Specification Week1
Requirement Specification Week1
BY
KHAQAN ZAHEER
Requirement Specification
SRS document is a contract between the
development team and the customer
How do we communicate the Requirements to
others?
Firm foundation and baseline for design phase
and latter phases
Support project management and control
evolution of system
Approximately 20-25% of the project time
should be allocated to requirement Specification
SRS have different audiences(Technical and
non-technical)
Mapping Requirements to Specifications
Essentials for Writing Requirements
Requirements are read more often than they are
written
Readers of requirements come from diverse
backgrounds
Writing clearly and concisely is not easy and is time
consuming and cost effective
Different organizations write requirements at
different levels of abstraction
Writing good requirements requires a analytic
thought
Activities of SRS
Adopt SRS template
Identify sources of requirements
Uniquely label each requirement
Record business rules
Specify functional requirements
Specify quality attributes
Specification Principles
Separate functionality from implementation
Develop model of desired behavior of the system
Define the environment in which system operates
Create a cognitive model
Content& structure of a specifications should be
amenable to change
Appropriate Specification
Consider two different projects:
A) Tiny project, 1 programmer, 2 months work
programmer talks to customer, then writes up
a 2-page memo
B) Large project, 50 programmers, 2 years
work
Project A Project B
team of analysts model the requirements, then
document themCrystallizes
Purpose of spec in a 500-page
programmer’s SRS
understanding; feedback
Build-to document; must
contain enough detail for
to customer all the programmers
Section 2 of SRS • Describe external interfaces: system, user, hardware, software, communication
• Describe constraints: memory, operational, site adaptation
…
•Include detailed specifications of each use
1. Introduction case, including collaboration and other
diagrams useful for this purpose
2. Overall Description
3. Specific Requirements
•Include:
3.1 External Interfaces a) Types of information used
3.2 Functions b) Data entities and their relationships
Requirements High-level
definition design
System Architectural
modelling design
Development costs with Formal Specification
Cost Validation
Design and
Implementation Validation
Design and
Implementation
Specification
Specification
• Modifiable
Should be flexible for modifications
Conclusion
SRS have several purposes (Communication, Contractual, Verification,
Basis for change control)
SRS have several audiences
It is hard to write good specification
Use standard templates for writing specifications
Papers
IEEE Recommended Practice for Software
Requirements Specifications
Software specification and design for imaging
systems
Software Requirements Specification