Shall Lists Slide 1 Shall List Statement Categories Functional Requirements Non-Functional Requirements Slide 2 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 3 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 4 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 5 Yet Another Performance Requirements Security Requirements User Interface Requirements Qualification Requirements Slide 6 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 7 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 Director’s system. Slide 8 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 9 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 10 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 11 Shall List Testability Requirement Testing The system shall be user friendly Demonstration Month-end runs will take no Inspection longer than 24 hours Transfer of data shall be at a rate of 9600 baud Analysis Slide 12 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 13 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 14 Remember the V-model Slide 15 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 member’s checkout history with the date checked out and Call Numbers checked out. Slide 16