Difference between revisions of "Easy Stir Fry"
GPassamonti (talk | contribs) |
GPassamonti (talk | contribs) |
||
Line 58: | Line 58: | ||
=====Setup List===== | =====Setup List===== | ||
# Download Atom LTS and include necessary packages | # Download Atom LTS and include necessary packages | ||
− | Atom-beautify (aesthetics) | + | ##Atom-beautify (aesthetics) |
− | + | ##Atom-runner (run html from localhost) | |
− | + | ##Platform-ide-terminal | |
#Download Git (link to online BitBucket repository) | #Download Git (link to online BitBucket repository) | ||
#Create an AWS file with a public IP through Bitnami | #Create an AWS file with a public IP through Bitnami |
Revision as of 06:58, 5 December 2018
Contents
Final Project Proposal: Easy Stir Fry (ESF)
Weekly Log
Proposal Presentation
Project Overview
Easy Stir Fry, or ESF for short, is an academic project for a course labeled ESE 205. Given the open-ended task to build something, really anything applying software, mechanical, or electrical skill, our tetam (Stephen & Garrett) decided to create an online platform for ordering Stir Fry from Bear's Den. The User Interface gives our users the opportunity to check current wait times, place an order online, and receive live updates about when the order will be ready. Our unique value comes by way of User Profiles, enabling ESF members to save their favorite dish and place the order in half-the-time.
Why choose this project?
The lines in Bear's Den are getting worse as incoming classes grow in size. WashU studetns are standing outside the Stir Fry area, waiting for 15, 20, sometimes even more than 25 minutes for their meal! We are all incredibly busy people, so why waste time standing around waiting for food?
Easy Stir Fry will allow users to monitor current wait times and be notified when their order is ready-to-go! Say goodbye to the guessing game that is finding out when your order is ready. Say goodbye to the several trips to and from your BD table, or even suite. It is our mission at ESF to make ordering a painless, even enjoyable process.
Team Members
- Stephen Richardson [Student]
- Garrett Passamonti [Student]
- Ethan Shry [TA]
- Jim Feher [Professor]
Objectives
Overall: Build a online application to decongest Bear's Den during peak meal hours and make the dining experience more enjoyable for both students and employees.
- Develop two sets of online consumer facing applications using Javascript and HTML
- Create a database using MySQL Workbench to provide a repository for data such as Order ID, current wait time, profile data, and more
- Using Express Node.js, create a modifiable interface(server) between our database and UIs
- Student facing: Projected wait time, ption to place order online, customizable user profile
- Cook Facing: Order ID input space, two lists of orders (online and live), option to either cancel or finish the order
- Obtain raw data on average Stir Fry wait times during different hours of operation and using this to create a function for projecting wait time
- [Reach] This type of modeling might be a stretch, but we hope to offer this capability
- Use current number of orders along with prior data to project wait times for users
- Allow users to order Stir Fry online
- Notify users when their order is ready via text
- Prove concept through prototyping at Bear's Den with a random assortment of students using diverse web browsers
- Requires contacting dining services and providing an interface for BD workers to use
- Pitch to WashU Bon Apetit and Dining Services, displaying proof-of-concept results and providing an implementation plan to see if this project may be put to real use
- [Reach] Apply concept to other stations, the Grill will be our first target
- [Reach] Notify users when their order has been processed and is being made, similar to say, Dominoes
- Through this service, provide information on when order is processed and project pick-up time
Challenges
- Neither students know any languages involved in coding this project and will have to learn before engaging in mapping and beginning to develop the application.
- Neither student understands the concept mapping behind creating a database or server and how they link to a consumer facing interface.
- It will be hard to sell Dining Services on our idea, especially with limited background merits in coding. Once the system is finalized, it may be easier to approach BD and ask to test ESF's viability day-to-day.
- Will take some ingenuity to gather data regarding wait time estimates for the Stir Fry station and create some form of equation or algorithm to predict an accurate wait time
- Getting users to adopt ESF and use it regularly when ordering Stir Fry, the application will have to be well-marketed to students frequenting BD.
- Acclimating the Stir Fry staff to use ESF day-to-day.
Gantt Chart
Budget
- Server Space: $10
- Twilio SMS Service: $20
- Domain Purchase through AWS (1yr): $12
Total Cost = $42
Design and Solutions
Setup List
- Download Atom LTS and include necessary packages
- Atom-beautify (aesthetics)
- Atom-runner (run html from localhost)
- Platform-ide-terminal
- Download Git (link to online BitBucket repository)
- Create an AWS file with a public IP through Bitnami
- Making the instance live and accessible through the web
Module List
- HTML file for each webpage with corresponding css file
- Necessary to create the UI, display values from the database, and work with our users
- MySQL Workbench table to store all site data
- Has several different columns to identify profile IDs, order IDs, in/out time of orders, order details, user credentials like name, phonenumber, password, and saved order, and to hold wait time
- Server.js file which includes all necessary database 'GET' and 'POST' routes
- This file acts as the peanut butter between the two slices of bread (UI & Database)
- Pushes and pulls inputs to and from the UI into or out of the database
- Javascript files when necessary to use routes when called by the UI
- These ajax files are equivalent to the jelly in and PB&J,
- They are absolutely necessary to implement otherwise the server code would not be able to speak to the user interface
- This code is what pulls information directly from the interface then uses server routes to push on towards the database
Features
- Sign-up/Sign-In
- Stir Fry online order capability including capability to use 'Saved Order'
- Profile Editing
- Wait Time screen
- SMS thanking user for signing up and an SMS when the user's order is ready
- Worker Home page with capability to finish/cancel an online order
- Order Details page from which a chef can construct the user's order
- Ability to Sign-Out