Software requirements specification A software requirements specification SRS

  • Slides: 7
Download presentation
Software requirements specification A software requirements specification (SRS) is a comprehensive description of the

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

ü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

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

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 ü

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

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 ü

Software Quality Attributes ü Correctness ü Reliability ü Efficiency ü Integrity ü Usability ü Survivability ü Maintainability ü Verifiability ü Flexibility ü Portability ü Reusability ü Expandability