Skip to content

Requirements

William Edwards edited this page Oct 10, 2024 · 96 revisions

1 - User shall be able to log in or sign up

1.1 - App shall open to the login/sign-up screen where users can choose to log in with a pre-existing account or sign up (Required)
1.2 - App shall use Google FireBaseUI Auth to authenticate user sign-ins (Required)
1.3 - User shall be allowed to create their own username and password when signing up (Required)
1.4 - Passwords shall be checked for strength and only allowed if strong enough (Desired)
1.5 - User shall be allowed to log in/sign up using their Google account (Desired)
1.6 - User shall be allowed to log in/sign up using other accounts like Twitter, GitHub, FaceBook etc. (Aspirational) 1.7 - User shall be allowed to check a "Remember Me" box so that they are automatically logged in on subsequent visits (Desired)

2 - User shall be able to access various app functionalities through the Home Screen

2.1 - User shall access the Home Screen after logging in/signing up to the app (Required)
2.2 - User can select the "SPOT" button to select a random student from the currently active class roster (Required)
2.3 - User can access their different classes by selecting a button (Required)
2.4 - User can view the currently active class's performance statistics by selecting a button (Required)
2.5 - User can view the currently active class's roster by selecting a button (Required)
2.6 - User can edit the currently active class by selecting a button (Required)
2.7 - User can access the app settings by selecting a button (Desired)

3 - User can randomly select a student from the class roster

3.1 - Selection algorithm does not repeat the previous 5 selected students (Desired) 3.2 - Selection algorithm does not select students previously selected absent in the same day (Desired) 3.3 - Selection algorithm increases the chances of absent students to be selected in future classes (Aspirational) 3.4 -

Clone this wiki locally