Presentation is loading. Please wait.

Presentation is loading. Please wait.

System Requirements Specification

Similar presentations


Presentation on theme: "System Requirements Specification"— Presentation transcript:

1 System Requirements Specification
Specifying the Specifications

2 Uses of the SRS Design Validation Customer Contract – sometimes

3 When is a requirement not a specification?
Requirement – understanding between customer and supplier Specification – what the software must do Requirements that are not in the SRS Costs Delivery dates Acceptance procedures etc

4 Desired SRS Characteristics
Complete Consistent Changeable Traceable Course Text – page 516 Mini-Example: My Dad versus My Wife’s Closet

5 IEEE 830 Role of SRS “The SRS must correctly define all of the software requirements, but no more.” “The SRS should not describe design, verification, or project management details, except for required design constraints.”

6 Characteristics of a Good SRS
IEEE 830 Characteristics of a Good SRS Unambiguous Complete Verifiable Consistent Modifiable Traceable Usable during the Operation and Maintenance Phase

7 Ambiguousness – example one
The control total is taken from the last record. The total is taken from the record at the end of the file. The total is taken from the latest record. The total is taken from the previous record. IEEE

8 Ambiguousness – example two
All customers have the same control field. All customers have the same value in their control field. All control fields have the same format. One control field is issued for all customers. IEEE

9 Expressing Requirements
Through input/output specs Use of Representative Examples Specification of Models IEEE

10 SRS Table of Contents Introduction General Description
Purpose Scope Definitions References Overview General Description Product Perspective Product Functions User Characteristics General Constraints Assumptions and Dependencies Specific Requirements IEEE

11 3. Specific Requirements
3.1 Functional Requirements Func Req 1 Introduction Inputs Processing Outputs Func Req 2 3.2 External Interface Requirements User Interface Hardware Interfaces Software Interfaces Communication Interfaces 3.3 Performance Requirements 3.4 Design Constraints Standards Compliance Hardware Limitations 3.5 Attributes Security Maintainability 3.6 Other Requirements Database IEEE

12 Non-830-Style Requirements
User stories encourage the team to defer collecting details. An initial place-holding goal-level story ("A Recruiter can post a new job opening") can be written and then replaced with more detailed stories once it becomes important to have the details. This technique makes user stories perfect for time-constrained projects. A team can very quickly write a few dozen stories to give them an overall feel for the system. They can then plunge into the details on a few of the stories and can be coding much sooner than a team that feels compelled to complete an IEEE 830–style software requirements specification Quote from "Advantages of User Stories for Requirements" By Mike Cohn

13 Other Specification Techniques
Use Cases Formal Specification Languages

14 System Modeling Data Model Function and Information Flow Model
Behavior Model

15 Data Modeling Data Objects, Attributes, Relationships
Formatted as Lists or Tables Entity Relationship Diagrams

16 Functional and Information Flow Modeling
Data Flow Diagrams compiler source code characters machine instructions object code Syntax Analysis Semantic Analysis characters tokens yadda yadda machine instructions

17 State Transition Diagram
Behavior Modeling State Transition Diagram start done file name 1 2 3 save msg read msg send compose 4

18 Next Time… Midterm Exam


Download ppt "System Requirements Specification"

Similar presentations


Ads by Google