The Story 👩🏫
A few months back when the pandemic was at its peak in India and there was chaos all around, the education system got hit hard too and as tensions rose among the students so did the discord among different departments in our Universities.
Clashing deadlines for assignments, last-minute rushed quizzes. The pressure was enormous and the environment around us was even scarier. So this specific problem of deadlines gave us an idea that could in general help us create a streamlined environment for evaluation and assessment.
Online classes have not only increased the burden on students but on educators equally. Evaluating hundreds of pages worth of handwritten assignments is tiring and boring. On discussing further we came to know that
teachers spend more time on checking and evaluating our assignments than actually preparing coursework and teaching.
This is what inspired us to build AQUA, which is short for Assignments Quizzes Utility Application, a product to reduce the workload on both students and teachers.
So... what is AQUA? 🧑🎓
We came up with a platform where teachers, or in general, any educator can upload the assignment, choose a due date and publish it for the students. But here comes the catch. No two assignments can be created such that they have a deadline within 24 hours of each other, giving students ample time to solve the questions.
Automated Keyword Checker ✅
Most of the time, teachers look for the presence of certain keywords in the answer scripts and mark students accordingly. This might be an easy and effective way of evaluation but is time-consuming, especially when you consider the volume of answer sheets that needed to be checked after the submission of one assignment.
We live by the rule: "Automate the Boring Stuff". Hence we decided that we need to come up with a system that will automatically detect the presence of keywords, that the teacher wants, to be checked and flagged. Marks can be then allotted accordingly.
So all you do is find some words in the documents?
Here in India, almost all schools and colleges want the assignments to be submitted in handwritten format. This makes checking them even more difficult. So we decided to build a pipeline that will feed all the handwritten documents from the Blob Storage to an OCR engine which basically converts the handwritten text to digital format for further processing.
Further processing? 🤔
You can copy my homework, but don't make it look obvious is a line that almost all student has either said or heard in their life. Well, plagiarism is an age-old problem that still hasn't been solved. We tried to tackle this issue by checking the similarity between all the documents and returning the similarity score. If it exceeds a particular threshold (which is set by the evaluator), it will be flagged as plagiarized and appropriate actions can be taken.
What about quizzes? 💯
We even tried to automate the process of quiz generation using NLP and NLU. All the teacher needs to do is enter a keyword, which can be anything, ranging from the name of a celebrity to a topic in theoretical physics and we will generate a Quizlet based on the content (which we fetch from Wikipedia).
So, how does this work❓
Let's go through the process step by step.
- A teacher signs in to their account via the teachers portal(thanks to Auth0 for the secure and seamless authentication).
- They chose a file containing the questions (assume a PDF) and chose a due date.
- If there is an ongoing assignment with a due date within 24 hours of the chosen one, the teacher will be notified and the nearest available date will be suggested.
- The file will be uploaded in Azure Blob Storage and an URL will be generated which gets stored in MongoDB
- All the students of that class can now access the assignment via the student's portal. They solve the questions and then upload their answer scripts.
- Again, we save each answer sheet in Azure Blob Storage and update MongoDB with their URLs.
- Now if the teacher wants, they can check the submitted assignments for keywords and/or plagiarism.
Built With 🛠
What's next? 🛸
Combining our existing features with an open-source video conference platform like Jitsi and building an entire ecosystem for education
Build automated proctoring service to monitor students during exams
Talk is cheap, show me the code 🧑💻
Link to the repository: github.com/radioactive11/aqua
#Thank you 👻
#Auth0 & #hashnode for this wonderful #Auth0Hackathon