View
332
Download
7
Category
Preview:
Citation preview
Software RequirementsSoftware Requirements Specification (SRS)
Complete description of external behavior Complete description of external behavior of software systemof software systemyy
Why write an SRS?
SRSSRSSRS is a complete yet concise description is a complete yet concise description
f h i l i f f hf h i l i f f h
Davis, A., Software Requirements
of the entire external interface of the system of the entire external interface of the system with its environment including other with its environment including other software communication ports hardwaresoftware communication ports hardwaresoftware, communication ports, hardware, software, communication ports, hardware, and human users. and human users. Includes:Includes:Includes:Includes:
BehavioralBehavioralNN b h i lb h i lNonNon--behavioralbehavioral
BehavioralBehavioral: Behavioral: define what the system does; define what the system does;
Davis, A., Software Requirements
InputsInputsOutputsOutputsOutputsOutputstransformation of inputs to outputstransformation of inputs to outputs
Non-behavioralNonNon--behavioral: behavioral: define the attributes of the define the attributes of the
i f i j bi f i j b
Davis, A., Software Requirements
system as it performs its jobsystem as it performs its jobEfficiencyEfficiencyReliabilityReliabilitySecuritySecurityMaintainabilityMaintainabilityPortabilityPortabilityStandards complianceStandards compliance
Attributes of a Well-Written SRS-1Davis, A., Software Requirements
CorrectCorrect
UnambiguousUnambiguous
Attributes of a Well-Written SRS-2Davis, A., Software Requirements
CompleteComplete
Attributes of a Well-Written SRS-3VerifiableVerifiable
Att ib t f W ll W itt SRS 4Attributes of a Well-Written SRS-4C i t tC i t tConsistentConsistent
Attributes of a Well-Written SRS-5Attributes of a Well Written SRS 5
TraceableTraceable
SRS is a resource
Organization is critical: Organization is critical:
Outline of SRS Document
DOCUMENT CONTROL1 INTRODUCTION1. INTRODUCTION2. GENERAL DESCRIPTION3. EXTERNAL INTERFACE REQUIREMENTSQ4. BEHAVIORAL REQUIREMENTS5. NON-BEHAVIORAL REQUIREMENTS6 OTHER REQUIREMENTS6. OTHER REQUIREMENTS7. APPENDIX A: ANALYSIS MODELS8. APPENDIX B: ISSUES LISTSSU S S
Introduction
1.1. PURPOSE AND SCOPE OF PRODUCT1.2. INTENDED AUDIENCE1.3. OVERVIEW1.4. DEFINITIONS, ACRONYMS, AND , ,
ABBREVIATIONS1.4.1. Definitions1.4.2. Acronyms and Abbreviations1.5. REFERENCES
General Description
2.1. PRODUCT PERSPECTIVE2.2. PRODUCT FEATURES2.2. PRODUCT FEATURES2.3. USER CHARACTERISTICS2 4 OPERATING ENVIRONMENT2.4. OPERATING ENVIRONMENT2.5. GENERAL CONSTRAINTS2.6. ASSUMPTIONS AND
DEPENDENCIES
3. External Interface
3.1. USER INTERFACES3.2. HARDWARE INTERFACES3.2. HARDWARE INTERFACES3.3. SOFTWARE INTERFACES3 4 COMMUNICATIONS INTERFACES3.4. COMMUNICATIONS INTERFACES
4 BEHAVIORAL4. BEHAVIORAL REQUIREMENTS4.1. SAME CLASS OF USER4.2. RELATED REAL-WORLD OBJECTS4.3. STIMULUS4.4. RELATED FEATURES4.5. FUNCTIONAL
5 NON-BEHAVIORAL5. NON BEHAVIORAL REQUIREMENTS5.1. PERFORMANCE REQUIREMENTS5.2. SECURITY5.3. QUALITATIVE REQUIREMENTS5.3.1. Availabilityy5.3.2. Maintainability5.3.3. Portability5.3.3. o tab ty5.3.4. Design and Implementation Constraints
The rest …
6.OTHER REQUIREMENTS6.1. DATABASE6.1. DATABASE6.2. OPERATIONS6 3 SITE ADAPTATION6.3. SITE ADAPTATION7.APPENDIX A: ANALYSIS MODELS8.APPENDIX B: ISSUES LIST
Groupings of requirements
Organize the SRS for understandingOrganize the SRS for understandingGroup requirements related byGroup requirements related byGroup requirements related byGroup requirements related by
Same External Stimulus
Put all the requirements related to some Put all the requirements related to some stimulus together. stimulus together. gg
Same System Feature
Example: Telephone switching systemExample: Telephone switching system
Same System Response
Example: payroll systemExample: payroll system
Same Real World Object
Example: Library systemExample: Library system
Same Class of User
Example: ATMExample: ATM
Same class of Function
(weakest, corresponds to unguided use of (weakest, corresponds to unguided use of stepwise decomposition)stepwise decomposition)p p )p p )
Recommended