In: Computer Science
Consider the following nonfunctional requirements and determine which of them can be verified and which cannot. Write acceptance tests for each requirement or explain why it is not testable.
Please refer below for the tabulated answer.
Abbreviations used:
UAT - User acceptance test
UI - User Interface
NON-FUNCTIONAL REQUIREMENT | UAT CAN BE DONE OR NOT .WHY? |
1.“The user interface must be user-friendly and easy to use.” | This requirement can be tested manually. Tester can manually test the features of the UI (like menus) and then get end user's comments. These comments would be the acceptance tests, in this case. |
2.“The number of mouse clicks the user needs to perform when navigating to any window of the system’s user interface must be less than 10.” | This requirement can be tested. By keeping a track of the number of mouse clicks using a mouse click event handler( in VB, JAVA etc.,) we can determine whether the test is positive or not. Please note that the test results would be positive if the number of mouse clicks us less than 10. |
3. “The user interface of the new system must be simple enough so that any user can use it with a minimum training.” | This requirement can also be verified manually. When we use the UI for a new system, after giving training for the end user , we can check if he can do it easily or not. We can even ask the feedback and use it as the acceptance test. |
4. “The maximum latency from the moment the user clicks a hyperlink in a web page until the rendering of the new web page starts is 1 second over a broadband connection.” | This requirement can be tested programmatically. We need to calculate the latency when a mouse click to view the new web page occurs. We can write test cases to check if it is less than one second or not. |
5, “In case of failure, the system must be easy to recover and must suffer minimum loss of important data.” | This requirement cannot be tested. The failure of the system might be because of various reasons. We cannot test for all cases, whether the failure might cause minimum damage to the data. |