project-proposal-2024

SmartExamAssistant - a online exam app

Abstract

After experiencing the sweep of the new coronavirus, there will still be some infected people in various regions. Students may unfortunately be infected with viruses in their daily life, which will affect their learning arrangements. SmartExamAssistant can provide students with an opportunity to take an online exam if they encounter similar unexpected circumstances that prevent them from traveling to school to take the exam. SmartExamAssistant is a web application that supports single and multiple choice questions, essay questions and online programming writing. The application supports the use of the camera and the recording of the screen, and the video captured will be independently stored under the database of each student in the back-end for later cheating check.

Author

Name: Yang YiZhou

Student number: 46092393

Functionality

Overview of flows

Features

Random exam questions: Randomly select questions from the question library to ensure that each student’s exam will be different each time

Random question choices: The order of the choices in each multiple choice question will be shuffled when drawn, reducing the likelihood that students will remember the correct answer in some multiple-chance exam

Break time: Students will have three opportunities to pause the exam during an exam longer than one hour. During the pause, the exam questions will be obscured by some scenery, and students can take a break in camera range for no more than 5 minutes. The exam questions will resume after the pause

Notes page: Students can use the library included with the app to edit notes, including typing text and uploading required images. If a student is taking an open-book exam, notes will remain available for the duration of the exam

Video recording: The camera will continuously record video during the invigilator exam to prevent students from using devices such as mobile phones to cheat

App lock: During the opening of the exam front end, the page will be overwritten by the front end and other apps will be forcibly closed and locked

Teacher grading: The app will open the grading function to users who log in with the teacher account, and teachers can view all students’ exams at any time and grade and mark ungraded exams, or make changes to the exams that have been graded

Scope

Minimum Viable Product includes:

1.Signup and Login: Send an email to the user’s email to create account, and authenticate when the user logs in

2.Information database: Used to store users’ personal information data, exam paprt with personal answer and invigilator video

3.Dashboard: Display various functions: view available exams, view exam feedback, view user information, etc

4.Start exams:

5.Review: Allow teachers to access the back end to extract student information and exam papers, and view, grade and mark

6.Feedback generation: Allow students to enter to view feedback on the exam, and allow teachers to enter to view the exam information or make changes

7.Appeal request: Students are allowed to challenge potentially incorrect exam marking, app save exam and grade teacher, and the exam will be graded again by another teacher

Quality Attributes

(Attributes with * are extremely important)

*Availability: Some students may be used to certain browsers or the computer may not be able to enable some browsers, so it is important to ensure that app can work on most major browsers is really enabled

Extensibility: Since exam rules are subject to change from moment to moment, the app should be able to add new features to accommodate these changes

Scalability: The application should ensure that it can operate properly under different loads

*Reliability: The application should not be interrupted suddenly in the course of use, which could result in the student’s exam being abruptly terminated with serious consequences. At the same time, the application should be able to save the student’s test answers to the database without any changes

*Security: The security of the application database is extremely important, which stores student information and important exam content. The application should be able to ensure that the information in the database is not attacked, illegally extracted and tampered with, and the application should ensure that the identity of the teacher is verified

Evaluation

For test whether the objectives of the project are achieved, in addition to the delivery of a Minimum Viable Product, it is necessary to test whether the quality attributes of the project is realized

Availability: Test on different computers and different browsers, and if the application can run normally, it indicates that the application has good usability

Extensibility: The structure of the system should be as simple as possible and the components within it should be relatively independent, so that the application remains high cohesion and low coupling, so that new components can be easily inserted at a later stage

Scalability: Use stress testing framework K6 to have the stress testing, at the same time, the load changes at different times are monitored

Reliability: Test multiple times with different length exams to ensure that the application runs stably and without any problems. Tests that exam with different question sizes and question types for errors after submission. If there is no problem above, it indicates that the reliability of the application is high

Security: