iTRAIN

Functional Requirements

Non-Functional Requirements

Database

Functionality

Privacy (adhere to Australian privacy principles)

Usability

Copyright

Security

Technical Components

Database - MySQL

Web Communication - PHP

Audience

Dataset - TASS

Servers - Xampp

Attending Trainings

Registration

Creating Events

Navigation

Administration should be able to create separate weekly events that have a specific time on a day, with a student list and specific sport/activity.

Events will have all information saved within a database, admin will need to interact with this database through the website.

Students can scan their barcode IDs to attend an event. Within the app, they can choose if they want to attend this training, Students may need to scan again to sign out of trainings.

Staff/Coaches able to choose an event that they have been assigned to by administration then be able to sign off on student attendances through scanning student cards.

Using TASS, students able to register with TASS details, still will have to create their own password, not data we are given

Confirmation email sent out when registered, unlike other solutions allows students to not take other students accounts

Students: Home, Previous Attendances, Your Sports, Account Details

Coaches/Staff: Home, Previous Events, Upcoming Events, Account Details

Simple navigation bar will always as a base start to the website will have a home page, a one page to do with at least events

Administration: Home, Preview Users, Manage Staff, Manage Events

Students

Staff

Users

Fname

Sname

UID

Email

Password

SID

Scode

House

PC

Year

AID

permissions

Teams

TID

Year Level

Ranking

Sport

TrainingTime

AID

TID

Tdate

TrID

TeamList

TID

SID

Attendance

TrID

SID

AID

Time

Platform - VS code

Hasing passwords using sha1

Salting passwords with username if need be

Sanitize all user inputs

Utilize form POST to keep URL clear and uneditable

Coach

Admin

Student

Create or remove Trainings in the database within the website- includes all details except primary keys within the tables.

be able to login and view training times like students, and have an unregistered view, to view teams like students

Don't have to log in either for general training times, where they can put in their team into a search bar and look up their training times without having to register

Add or remove Staff/coaches from database, choosing who has access to be able to allow students to attend. Also may be able to give organizers specific permissions for specific training events.

Login to view training times, able to see upcoming trainings that week, and possibly a calendar for trainings the entire year

Login and choose a training happening at this time, and be able to collect student attendances through a phone or laptop wit ha barcode scanner.

Safety: all errors are caught, if not the right information is given, users are not allowed to progress, passwords are hidden when typing.

Learnability: quite simple, copies the generic website layout. (E.g.: Navbar at the top.) Little text needed to be read, and all pages are consistent with one another

Effectiveness: Navigation for easy and effective movement, text inputs are short as possible, no unnecessary steps for any forms

Utility: all users should be able to easily and efficiently do what they want to do on the website.

Accessibility: Contrasting colours, Captions for screen readers, responsivity using bootstrap containers

all personal information that is public information already on other terrace websites (e.g. student name, house) can be accessed without logging in, this data does not give anything important away.

All personal information that is not found on terrace websites (e.g. passwords, emails) will not be accessible until one has logged in with credentials. Password will also be hashed so admins cannot see.

Follow terrace style guide including the use of the terrace crest, as permission was given for the use according to copyright laws

when using images off of the internet, such as sports images, use free images.