Symbol | Type | Description | Significance | Source | Verification method
-- | -- | -- | -- | -- | --
R9 | Security | Users must be able to create an account, log in and out of their account, as well as login using their Google account. | Must | DN, C1 | Create example account and try to log in. Try to log in using Google account.
R10 | Usability | The application should respond to user interactions, such as page turns within 1 second. | Must | C1 | Write testing functions accessible to developers and perform tests on different device models.
R11 | Reliability | In case of an internal (electricity/software) error there should exist recovery plan /procedures to minimize downtime and potential data loss. | Should | C1 | Create additional external backup and perform controlled internal error, check the server response, and data after the experiment.
R12 | Scalability | The server should be able to service at least 5,000 without degradation in performance | Must | C1 | Prepare a program to simulate simple connections (authentication/downloads) and run stress tests on server.
R13 | Reliability | The server have at least 95% uptime. | Should | C1 | Since the beginning measure total uptime, and check daily if it converges to 95% or higher availability.
R14 | Usability | The application should be able to get/start getting response from the server within 5 seconds of action taken. | Must | C1 | Measure manually a time for application to show library, shop sorted by category / start downloading new audiobook.
R15 | Security | The application should be resistant to vulnerabilities like SQL injection, the passwords should be stored in a secure way(at least salted hashes). | Should | DN | Try to perform SQL injection attack, verify that the salts are in database and are used in the process of authentication
R16 | Maintainability | At least 90% of all methods/classes should be documented. The code should be written using Test Driven Development. | Must | DN | Check whether code adhere to Test Driven Development principles (tests for methods) and check if all at least 90% of the code is documented.
R17 | Localization | The application should support multiple languages (at least top 3 most used by the client base) | Can | C1 | Check correctness of language implementation with native speakers, assign people to do test on completeness of localization.
R18 | Usability | The platform should have library of audiobooks available for users to listen to, at least 50 different audiobooks. | Must | C1 | Check the number of audiobooks in the store.
<!DOCTYPE html>