Please enable JavaScript.
Coggle requires JavaScript to display documents.
FIA2: Retreat - Coggle Diagram
FIA2: Retreat
Client Problem
Constraints
-
Coding Limitations
Knowledge in only limited amounts of coding languages (Python, Html, PHP, CSS, SQL)
Available Resources
Computers, Internet and Software (XAMPP, Sublime Text, Bootstap, MeekroDB), Teacher Feedback & Consultation
Privacy Legislation
As per Australian Privacy Principles, care must be taken when collecting and storing user information.
Requirements
-
Accessibility
-
Alt text for images
For vision impaired, system must include alt texts on images so that screen readers can successfully identify all components displayed on screen.
Data Issues
Data collection correct
All data collected and stored in databases must be correctly formatted and include all information. Certain pieces of data have been seen to cut off when importing csv file into database and must be restored either manually or by the admin.
Data understanding
Data taken from database and displayed on screen must be understandable. This includes changing formatting and displaying data as strings or integers rather an arrays. MeekroDB Quickstart offers support for such task (i.e. converting database table into html table).
Terrace Style Guide
Images
Visual identity must be consistent with all images used. Only authorised images may be included and no alterations can be conducted to such images.
-
Developer Problem
User Interface
Usability Principles
Accessbility
How well does the interface cater for users with other needs (like screen readers for the blind), mobility challenged (big buttons etc)?
-
Safety
How does the interface protect user and admin data and further protect from harmful scripts and data breaches occuring?
-
-
-
-
Pages
Register
Register page is specifically for students attending retreats. Data is collected and stored in the userbase table.
Events attendance
Organisers are able to select events that they are designated to run granted that the event is currently running. Organisers then allow students to scan their student ID's to attend events. Measures must be taken to ensure students can't attend an event multiple times.
Events
Information
Point Leaderboard
Admins are able to view a leaderboard that shows the total number of points (including scaling) for each house. Additionally, house deans may be allowed to see how many students from their house attended events.
Attends
Start and End dates are displayed so that users are able to decide which retreat works best for them.
Login
Login allows users, organisers and admins to access their respective pages.
Coding Environment
Importing data
CSV file into Database
Supplied CSV file must be formatted correctly (remove double-quotes, remove spaces, remove unnecessary commas). Then userbase table must be created from script. Table must conform to the order of data in CSV file. File must be imported and possibly edited to display correct data.
-
SQL Databases
SQL database must be made containing required tables. Tables must be created by scripts and stored in document so that errors can be resolved or altering tables is substantially easier.
Data Environment
Tables
Userbase / students
-
-
-
-
-
-
Userbase contains all students of GT and core details about them. These are all the possible attendees of the events and is uploaded onto the database by a CSV file
Attends
-
-
-
Attends table stores all attended events and includes the event (eid) and the attendee (student code) as well as the date and time attended
Events
-
-
-
-
-
-
Events are managed by admins and would likely be uploaded prior to each term. Each event is assigned an organiser who manages the attendances for the event. Additionally, events have point scaling, which allows admins to get more support for certain events
Users
-
-
-
-
-
-
Users table allows user, either student, organiser or admin, to log into the system. Students are able to see which events they've attended, organisers can record attends for events and admins are able to view points leaderboards, input events and add organisers
User Problem
Navigation
Website to have consistent navigation across all three user views (admin, organiser & student). Layout will remain similar. Students and Organisers will be provided with more navigation as they are typically the most unfamiliar with the website.
Interface Design
Colour and Branding are to remain consistent and conform with the Terrace Style Guide provided. Text used is to be simple and database to be minimalistic as reflected in the Terrace Style Guide.
HTML and PHP elements also to remain consistent to increase learnability of the system. Buttons will become recognisable to users and so will text and number inputs.
Detail Collection
Session
Session variables will be used to store sections of code that are only important for one login. This includes the snumber of who is logged in and allows the system to identify the user when interacting with such components like the retreat selection. Further, the 2FA code will be stored in session so that each time the a new user attempts to register it will change, increasing the security of the system.
Database
Databases will store information that must be recorded outside of one session use of the website. This includes registered users, who attends which retreat and the information for each retreat.