Paper exams suck. They really do. Save the planet and money by using ExamBee!
There are many drawbacks to paper exams. The obvious one is printing costs. Printing thousands of exams every semester is costly for education institutions.
Paper exams can also be an organizational nightmare. Trying to keep track of hundreds of exams at a time while also checking student ID cards can be stressful, time consuming and distracting to others in the room.
Exam results often take weeks to process and can be error prone.
What it does
ExamBee aims to make all your multiple choice exams electronic. A university purchases iPad's running the ExamBee iOS app, and mounts the iPads to desks in the exam room.
Each student walks in and sits at a desk with an iPad. To authenticate the student enters their student number and uses the iPad to take a 'selfie' of themselves. The app uses an on-device facial compare model to compare the students selfie to their student ID photo stored on our server.
Once authenticated you choose an available exam and submit your answers.
The exam is graded instantly on-device, and the student receives a text message with their exam results.
How I built it
iOS app is built natively using Swift 5 and iOS 13SDKs. No interface builder or storyboard was used, everything done programmatically.
Challenges I ran into
The hardest challenge was trying to figure out the best way to store and retrieve the student ID photos from my backend.
Accomplishments that I'm proud of
Building the entire stack myself and being able to do on-device machine learning without using an external platform like AWS or Google Cloud
What I learned
Lots about SailsJS and how fast it can be used to create fulling featured web applications and CRUD apis. The ORM was easy to work with and very powerful.
What's next for ExamBee
I would like to secure my backend environments and improve the UI of the iPad app. Also a web app for professors to create and manage exams.