Skip to content

doughnut923/pwc-winner-2024

Repository files navigation

Team Zen1th - Online Exam Cheating Detection

We created a platform for teachers to monitor students in an online exam and check the whether the student is cheating in the exam.
Please refresh if something doesn't go as intended!

Running the Application

The application consists of a SQL Database, a Redis Cache, a Springboot Backend and a React Frontend. Which could be simply ran with docker compose.

  1. Open the terminal and clone the repository.
git clone https://github.com/doughnut923/pwc-winner-2024.git
  1. Install docker.
  2. Setup AWS Rekignition
  3. Change the necessary variables in compose.yaml especially the AWS credentials.
  4. Run the server.
docker-compose up -d

You may need to add sudo in front of the command if you haven't set up docker user permission group.

Using the Application

Webpage Link: [http://ec2-52-64-153-206.ap-southeast-2.compute.amazonaws.com:3000/]

  • Please use Google Chrome to access this page.
  • Before accessing the webpage, access [chrome://flags/#unsafely-treat-insecure-origin-as-secure]
  • Add the address of the web Setup_Chrome
  • Click relaunch
  • Access the webpage

1. Sign in to root account

  • Username: root
  • Password: root
  • The face ID is bypassed for this account, as this account is for demonstration purposes only.


P.S. This is a demo account, please do not implement this for any real-world application.

2. Create student accounts

Create a student account just like creating a teacher account, but without changing the authority group in sql, as new users are defaulted to be students.

alt_text

3. Create and assgining classes

Login with a teacher's account to access the Teacher's main page.

alt text

click Create Class to create a exam, enter the classname and exam start time and click submit class, go back to the teacher's main page and you should see a class show up.

alt text

Then click assign classes, click the + button on the student you would like to aassign class for. Select the class your would like to add and the class permission should be added. (KNOWN BUG: Sometimes newly assigned class would not be displayed. Don't assign same class to people multiple times.)

alt text

4. Access the class

For students, they can now see the class they are able to take. Click on one of the classes and they should be good to go.

alt text

5. Taking the exam

After redirected to the exampage. They are allow to check if their camera works. If the exam has not started yet, you will be greeted with a countdown page. Once the countdown is reached, it automatically refereshes and shows the questions. Once the exam end time is reached, the students are not allowed to access the exam anymore and be redirected to the login page.

alt text

6. Monitoring the Exam

For the teacher, in the teach's main page, click on the class created. A dashboard could be seen and student cheating could be inspected by clicking on alerts. alt text alt text

User Flow Diagrams

alt text

Teacher Flow

Teacher Page

alt text

Teacher Dashboard

alt text

API Flows

alt text alt text alt text alt text alt text

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •