Software requirements specification A software requirements specification SRS
- Slides: 7
Software requirements specification A software requirements specification (SRS) is a comprehensive description of the intended purpose and environment for software under development. The SRS fully describes what the software will do and how it will be expected to perform. Contd…
üAn SRS minimizes the time and effort required by developers to achieve desired goals and also minimizes the development cost. ü A good SRS defines how an application will interact with system hardware, other programs and human users in a wide variety of real-world situations. üParameters such as operating speed, response time, availability, portability, maintainability, footprint, security and speed of recovery from adverse events are evaluated
The Software Requirements Specification üAfter review of the customer’s System Spec. üAfter educated analysis üPreliminary design üA technical, software “approach” üResults in permission to detail-design and code
From the customer’s perspective üHow smart people are going to solve the problem that was stated in the System Spec. üA “contract”, more or less üIs it doable? § Technically § On time § Under budget
Types of Requirements ü Functional requirements ü Performance requirements Speed, accuracy, frequency, throughput ü External interface requirements ü Design constraints Requirements are usually about “what”, this is a “how”. Quality attributes ü i. e. reliability, portability, maintainability, supportability
Risk Assessment ØTechnical Risks hardware software interfaces build vs. buy ØSchedule Risks budget calendar personnel – level of expertise required
Software Quality Attributes ü Correctness ü Reliability ü Efficiency ü Integrity ü Usability ü Survivability ü Maintainability ü Verifiability ü Flexibility ü Portability ü Reusability ü Expandability