Tuckshop App

User

Developer

Client

Features

Coding Environment

Data Storage and Retrieval

Interface

Amy

Impacts

Gus

Mr T

Requirements

Constraints

Create a positive User Experience

Screens

Login Screen

Home Screen

Menu Screen

Order Confirmation Screen

Order History Screen

Must Adhere To

BSHS Visual Identity Guide

Brisbane SHS - Official School Colours

Government Mobile Application Design Standards

Australian Accessibility Standards

Must Comply With The Privacy Act 1988 (Cth)

Usability Principles

Nue Helvetica is BSHS Primary Font (For External Corporate Font) - clear, legible, different weights available

Colours Blue and Cerise - BSHS Colours - consistently

Comply with Accessibility guidelines (Queensland Government 2017)

App must allow staff and students to:

Order Meals in Advance

Select the correct tuckshop campus for collection

provide a unique order number

Customise how the menu is displayed on price and dietary requirements

customise based on price and dietary needs

Access a Menu that is in an organised, logical fashion

organised by food type (e.g. lunch, snacks) and in alphabetical order

Access profile using student/staff ID

Display: remaining wallet balance and order history

generate a random meal selector based on a provided algorithm

State high logo on each screen

uses familiar icons and button locations as other apps

large icons and images will be used for effective user experience and to make each screen easily accessible

Simple layout to keep the focus on the apps requirements - utility

The app does not share any personal details, and when the password is typed in the letters are not legible for safety/security

Full schedule - not much time to spend in tuck shop line

Senior student

Has trouble deciding on what to buy

Vegetarian - dietary requirements

Junior Student

Wants to see his wallet balance

Peanut allergy - dietary requirements

Always eats the same thing

Allow users option to input foods they avoid

users who use the app go in a different line

an 'Account' screen will allow users to view their balance

Options to see foods which users can eat

A feature for a random meal simulator will be coded

A menu built into the app will be available

SQL

Required Data

Records/fields are able to be retrieved using queries: SELECT, AND, WHERE and OR statements will be used

X-Code

interface is created on Xcode

Swift language will be used

Will save students/staff more time not standing in lines

Business should increase therefore school will benefit economically

Advances technology - also promotes school for it's innovation

8 weeks of school time

Written: 4-6 A4 pages

Multimodal: 8-10 A3 pages

Multimodal: 2-4 minutes

Individual task

Competitors

Cafe menu's e.g. Coffee Club

papercut - printer balance checker

ubereats

Feature: Once a meal/item is selected comment to say "item not available"... ETC.

Foods ordered by category

allows users to sign in and then their balance is displayed

Error messages appear both after incorrect credentials are inputted to login and also if food ordered is not available at the selected campus

Place Order Screen

Account Screen

Other features

Mobile app compatible with iOS, and interface compatible with iPad

Links back to the home screen from each other screen in the app

"Order Collected" button returns users back to the home screen

Random meal generator - pseudocode provided will generate a random meal for a user based on given needs e.g. price maximum

Once an order is completed and collected, it is sent to the order history page

.csv files

Algorithms

If a user inputs the wrong credentials, an error message will appear for them to retry

If a user inputs a price into the random meal generator, they will receive a meal with a snack, drink and meal equal to or less than that price, else if there is no available meal for that price, an error message will appear

If a selected campus does not have the foods which a user intends to pick up from there, then an error message will appear

When an order has been collected, it is moved into the order history screen

Menu.csv

Order.csv

Item.csv

Users.csv

Data including: userID, userName, userSurname, userWallet, userPassword

Data including: orderID, orderUserID, orderCampus, orderPrice, orderDate

Data including: menuID, menuCategory, menuDescription, menuPrice, menuHalal, menuAllergy, menuVeg

Data including: itemID, itemMenuID, itemOrderID

If a selected campus does not have the foods which a user intends to pick up from there, then an error message will appear

Wallet balance as the main focus of the screen and an option to add credit to the balance

Displayed as a table view showing past orders for that user

Familiar text fields as the focus of the screen for username and password inputs

Image and large buttons For usability which navigate screens

List of all menu items in table view. Image for effectiveness and a search bar for utility

Description of order as the focus and button to indicate when the order has been collected - this will then send the description to the order history screen

Required Searches

Menu table

Order Information Table

User Information table

required fields: OrderID, price, day, campus, description

required fields: menuID, category, description, price, halal(Yes/No), Allergens, Vegetarian(Yes/No)

username, Given name, family name, wallet balance, email, password

The app requires users to be able to search for:

dietary requirements

the price of a random meal

The campus they will collect order from