Professional Documents
Culture Documents
Functional requirements
Fundamental functions of the system uses cases that describe all interactions that the
users will have with the software
Mapping of inputs to outputs
Control sequencing
Timing of functions
Handling of exceptional situations
Non-functional requirements
requirements which impose constraints on the design or implementation
Constraints/obligation (non-negotiable) compatibility with legacy systems,
compliance with interface standards, data formats, etc.
Quality requirements (soft-goals) security, safety, usability, performance, portability
Software requirements specifications (SRS) used to describe functional
and non-functional requirements
General Outline of SRS
Software Requirements 3 SPECIFIC REQUIREMENTS
Specifications (SRS) 3.1 External Interface Requirements
3.1.1 User Interfaces
Cover Page 3.1.2 Hardware Interfaces
Revisions Page 3.1.3 Software Interfaces
3.1.4 Communications Protocols
Table of Contents 3.1.5 Memory Constraints
1 INTRODUCTION 3.1.6 Operation
1.1 Product Overview 3.1.7 Product function
1.2 Purpose 3.1.8 Assumption and Dependency
1.3 Scope 3.2 Software Product Features
1.4 Reference 3.3 Software System Attributes
1.5 Definition And Abbreviation 3.3.1 Reliability
3.3.2 Availability
2 OVERALL DESCRIPTION 3.3.3 Security
2.1 Product Perspective 3.3.4 Maintainability
2.2 Product Functions 3.3.5 Portability
2.3 User Characteristics 3.3.6 Performance
2.4 General Constraints 3.4 Database Requirements
2.5 Assumptions and Dependencies 4 ADDITIONAL MATERIALS
Elicitation Techniques
Traditional approaches
Introspection
Interview / survey
Group elicitation
Observational approaches
Protocol analysis
Participant observation
Model-based approaches
Goal-based hierarchies or stakeholder’s goals
Scenarios characterizations of the ways in which the system is used
Uses case specific instances of interaction with the system
Exploratory approaches
Prototyping
Modeling: Notations vs Methods
Definitions Example method:
Notations: a systematic way of Structured analysis
presenting something may be SADT
linguistic (textual) or graphical SASD
(diagrams) Information Engineering
A method provides: JSD
a set of notations Entity-relationship approach
techniques for using those Object-oriented analysis
notations Coad-Yourdon
heuristic to provide guidance OMT
Notation or method? UML
some notations have been Formal methods
adopted by a number of different SCR
methods RSML
some ‘methods’ are really just
notations
Tools usually support a single
method