Skip to content

Repository files navigation

Automatic Grading System

Automatic Grading System Flowchart

Description

This project is an Automatic Grading System built with React.js for the front end and Express.js and Postgresql for the back end. The system allows users to submit their JavaScript code, which is then analyzed by ChatGPT to determine if it meets the project requirements.

The program is designed to encourage users and students by providing them with not only feedback but also a grade based on flexibility rather than fixed outputs.

The APIs utilized for this project will be:

  1. OpenAI's API
  2. (have yet to be decided)

User Stories

Here are some user stories that outline the needs and expectations of different stakeholders involved in the Automatic Grading System:

  1. As a student, I want to submit my JavaScript code through a user-friendly interface so that I can easily share my work for grading.

  2. As a student, I want to receive real-time feedback on my code so that I can make improvements before submitting my final version.

  3. As a student, I want to understand how my code aligns with project requirements so that I can learn and grow as a programmer.

  4. As an instructor, I want to reduce the time spent grading assignments so that I can focus more on teaching and supporting my students.

  5. As an instructor, I want to provide my students with constructive feedback that goes beyond a simple pass/fail grade, so they can develop their skills effectively.

  6. As a developer, I want to ensure the system is responsive and works well on different devices, so all users have a positive experience regardless of how they access the platform.

Features

  • User-friendly interface for code submission
  • Real-time analysis of JavaScript code using ChatGPT
  • Clear feedback on code compliance with requirements
  • Responsive design built with CSS

Technologies Used

  • Frontend: HTML, Javascript, CSS (React.js, Bootstap/Tailwind)
  • Backend: Express.js, Postgresql (Sequalized ORM)
  • AI Integration: OpenAI's ChatGPT

Problem Statement

The problem your Automatic Grading System aims to address is the limitations of traditional grading methods in educational settings, particularly in programming courses. Here are the specific issues your project seeks to solve:

  1. Inflexibility in Grading: Current grading systems often rely on fixed outputs and rigid rubrics, which may not account for creative or alternative solutions that still meet the project requirements. This can discourage students from exploring different approaches.

  2. Lack of Constructive Feedback: Traditional grading often focuses solely on whether the code works or meets specific criteria without providing detailed feedback on how students can improve their coding skills or better adhere to project requirements.

  3. Time-Consuming Grading Process: Manual grading of programming assignments can be time-consuming for instructors, leading to delayed feedback for students. Your system aims to automate this process, providing real-time analysis and instant feedback.

  4. Encouragement and Learning: By offering a more flexible grading approach and constructive feedback, the system encourages students to learn from their mistakes and grow as programmers, fostering a more positive learning environment.

  5. User Experience: The need for a user-friendly interface for code submission enhances accessibility for students, making it easier for them to interact with the grading system.

By leveraging ChatGPT for real-time code analysis, your project not only streamlines the grading process but also creates a supportive learning experience for students, ultimately improving their understanding and skills in JavaScript programming.

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages