An online examination system lets a school or training centre run exams over the web (and, in this project, an Android app), then mark them automatically and publish results instantly. It removes paper, speeds up grading, and gives students immediate feedback.
What it does
- Examiner dashboard: create exams, subjects, classes and notices
- Student login on web and Android to take exams
- Enrolment numbers, downloads and profile management
- Automatic marking and result publication
The core challenge: the question engine
The heart of the system is storing questions and options, presenting them under a time limit, scoring each submission and recording the attempt so it can’t be retaken dishonestly. Designing the question/option/attempt tables well is what makes the project educational.
Technology stack
A PHP/MySQL web back end exposes an API that the Android (Java) app and the web panel both consume. That client/server split — one back end, two front ends — is the most valuable architectural lesson here.
What you’ll learn
Building a shared API for web and mobile clients, timed assessments, automatic scoring, and result reporting.
Frequently asked questions
Do I need to build the Android app to learn from this?
No — the web panel alone teaches the exam engine. The Android app simply consumes the same API.
How do I stop cheating on timed exams?
Enforce timing server-side, randomise question order, and record one attempt per student per exam.
A note on using this project
Use this PHP/MySQL + Android project as a learning reference: read the code, run it locally, and adapt it to your own requirements rather than deploying it unchanged. If you reuse third-party components, check their licences first.