Slide 1 Shall Lists Slide 2 Slide 2 Shall List Statement Categories Functional Requirements Non-Functional Requirements Slide 3 Slide 3 Non-functional Requirements Performance speed, capacity, reliability Security more than just access control Operational physical and technical environment in which system will operate Cultural and Political includes social and legal aspects Slide 4 Slide 4 Another Classification: FURPS Functionality Usability - human factors, aesthetics, consistency of user interfaces, help, documentation Reliability frequency/severity of failure, recoverability, predictability, accuracy Performance - response time, throughput, availability, resource usage, resource consumption Supportability testability, extensibility, adaptability, maintainability, internationalization, configurability, installability, scalability, etc. Slide 5 Slide 5 FURPS+ : Constraints +implementation resource limits, languages, tools, computing platform, standards +interface imposed by interfacing with external systems +operations - system management, in its operational setting +packaging/physical shape, size, weight +legal - licensing (patents, copyright, regulations) +design e.g, a relational database is required Slide 6 Slide 6 Yet Another Performance Requirements Security Requirements User Interface Requirements Qualification Requirements Slide 7 Slide 7 Functional Requirements The system shall calculate interest on a daily basis. For a loan given to a producer, the system will calculate interest daily based on the prime rate of +1.2 The system shall log all employee name change.s The system will write an entry to the audit log file after any modification of an employee name. Slide 8 Slide 8 Interface Requirements The system shall record an acknowledgment when a new employee is created into the XYZ table. The XYZ system shall use these records to update the time stamp of an employee record. The system shall mail the month-end report message to the "Director" at each month-end.This E-mail is used to manually load data into the Directors system. Slide 9 Slide 9 Performance Requirements The system shall perform simple queries (e.g. no more than 2 tables) in less than 10 seconds. This speed is required to ensure better service to the public requesting information on the XYZ system. Month-end runs will take no longer than 24 hours Weekly backups are performed every Sunday at 6:00 a.m.; if the month-end process takes too long, it will affect the operations of other systems such as AAFC.12 Slide 10 Slide 10 Qualification Requirements The system shall be user friendly. The system will be used by non-technical users, and thus must be simple and easy to use. The system shall require little training. Help menus will be available for all on-line query screens. Slide 11 Slide 11 Shall List Testability Types Demonstration: Demonstrate the operation of the function to the system owner to show that the requirement has been met. Inspection: Sometimes used in combination with demonstration, it requires visual examination of the code documentation, table dumps, scans, etc. Analysis/Special Qualification: The processing of accumulated data obtained from other methods, or any special tools, techniques, procedures, facilities, and acceptable limits. This type of testing usually affects critical parts of the system and/or interfaces. Slide 12 Slide 12 Shall List Testability RequirementTesting The system shall be user friendly Demonstration Month-end runs will take no longer than 24 hours Inspection Transfer of data shall be at a rate of 9600 baud Analysis Slide 13 Slide 13 Helpful Hints Sentence Structure Keep your sentences short and simple. It doesn't matter if specifications read like a grade-school textbook. We're not trying for a Pulitzer Prize. Mind your Grammar Grammatical errors can affect the intelligibility of the sentence. Keep statements unambiguous Many words have multiple meanings. Statements can be even more ambiguous. Slide 14 Slide 14 Shall List Format Each requirement is something that the system SHALL do. Each requirement must unambiguous and testable Very precise language from which the design will be developed You should be specifying tests at this point, also. Slide 15 Slide 15 Remember the V-model Slide 16 Slide 16 Shall List Format - Examples The system shall allow the librarian to check out items of any type except periodicals. The system shall generate a due date of 7 days from the date checked out for each item. The system shall update the members checkout history with the date checked out and Call Numbers checked out.