With local grocery to stores to us in our home community of Dublin, California being swamped with long outdoor lines from the COVID-19 situation, there is little room for comfort and a lot of stress associated with the activity of shopping. While certain queue solutions are implemented for the retrieval of orders in restaraunts, there is a deep lack of cloud, remote queuing solutions among general shopping locations for allowing entry. The four of us being friends from high school came together online to develop an app which would solve this problem through a mobile cloud-based solution.
What it does
QueueMe! is an Android application which allows for individuals to queue for registered stores remotely through cloud services, allowing for waiting from a car or other safe location until their turn arrives. Restoring safety and comfort to the daily lives of shoppers in these time.
How we built it
The application is written in Java in Android Studio and communicates with a database formed in FireBase. The application tokenizes names and inserts them into the online queue for other users to receive, resulting in a live queuing system that eliminates in-person waiting. Uday K and Gustavo S were primarily responsible for the algorithmic work and UI design of the application, while Adrian L worked to implement cloud integration into the application. Noah B ran live application testing and reported problems specifically to whoever was tasked to that issue. This system allowed for efficient and organized development throughout the work period.
Challenges we ran into
Establishing a live syncing and pushing system with our FireBase database proved troublesome as synchronization issues occurred in the online queue; however, with careful debugging, the process was tuned. In addition, edge cases tended to build up as the need to deal with both an online system and account for the live actions of other users became a factor. In using "toast" messages to display when and why an input is nonsensical, both the UI was improved and the edge cases were easily checked.
Accomplishments that we're proud of
Creating a live syncing queue system that effectively works inter-device regardless of credential syncing or careful outside review was definitely an interesting result. We were deeply intrigued by the idea of creating a cloud based queue in an intuitive, lightweight manner, so achieving it was deeply rewarding. In addition, we lacked experience in using FireBase or any cloud architecture in conjunction with a mobile platform, putting the icing on the cake as the product was built.
What we learned
Not only did we improve our skills in using a Cloud system with mobile programming through FireBase and Android, but we also expanded on our ability to divide the work of a software project through efficient means as we quested onward to fight back those COVID-19 inconveniences.
What's next for QueueMe!
We hope to introduce a store registration feature such that any local grocery store can join and become a queue-able location as opposed to the programmed examples included in the current app drop down menu. In addition, implementing order mechanics or sending of desired data to the store are additional features that could deeply expand the capabilities of QueueMe!