Software Requirements Specification (SRS)
Analysis Models
Models used in developing requirements, each model includes an introduction and a narrative description.
Functional Requirement
Introduction Inputs Processing Outputs Error Handling
Change Management Process
-Identifies/describes the process that will take place to update the SRS when scope or requirements change -Who can submit, how, and will it be approved.
Non-Functional Requirements
-Must be achieved at a system-wide level rather than at a unit level. -Stated in measurable terms.
Introduction
-Overview of complete document. -Info needed by engineer to design and implement the software described by the requirements list.
Appendices
-Used to provide additional/helpful information. - If present, is to be considered as part of the SRS's overall set of requirements.
Definitions, Acronyms, and Abbreviations
Provide definitions of terms, acronyms, and abbreviations.
Product Functions
Provides a summary of the functions the software will perform.
Purpose
Purpose of SRS and the intended audience.
Product Perspective
Puts the product into perspective with other related products/projects.
Scope
- Identify product - Explain what it will/will not do - Describe application of the software, it's benefits, objectives, and goals.
References
All documents referenced, give the title, report #, date, and publisher and show sources where references can be obtained.
Design Constraints
Constraints imposed by other standards, policies, hardware limitations, etc.
Requirements Should Be
Correct Traceable Unambiguous Verifiable Prioritized Complete Consistent Uniquely Identifiable
Overview
Describe what the rest of the SRS contains and how it is organized.
Functional Requirements
Describes specific features of the software project.
Specific Requirments
Design requirements used to guide design, implementation, and testing.
Assumptions and Dependencies
Factors and changes that can affect the requirements.
User Characteristics
General characteristics of the eventual users of the product that will affect the specific requirements.
General Constraints
General description of other items that will limit the developer's options for design.
General Description
General factors that affect the product and requirements.
Appendix
Includes conceptual documents, marketing materials, minutes of meetings w/customer(s), etc.
Class/Object
Includes: Attributes and Functions.
External Interface Requirements
Includes: User Interfaces, Hardware Interfaces, Software Interfaces, and Communications Interfaces
GUI design
It is about engineering the interface between user expectations and the reality of the software. (consistent and conventional)
Logical Database Requirements
Will a database be used? If so, what logical requirements exist for data formats, storage capabilities, data retention, data integrity, etc.