Auto Marking and Student Performance Analyser System for Continuous Assessments
Table of Contents
- Introduction
- Problem Statement
- Solution
- Phase I
- Phase II
- Solution Architecture
- REST API
- Additional Features
- Project Plan
- Team
- Links
Introduction
The Department of Computer Engineering uses many coding based assignments for continuous assessment of student learning. The instructors have to spend a lot of time manually marking these assignments which is not the ideal use of the instructors’ time.
Therefore, we build a system for auto marking coding assignments : GRADINGENIUS
This system supports automated recording and analysis of student performance. It shows how that particular student progressed with their assignments and what are the strengths and weaknesses of that student.
Problem Statement
Have your ever in your life works as an instructor ?
Specially for a course like java or C or any programming related course For a instructor definetly will give many assignments to students. And need to mark them. How to mark those programs?
Run those one by one and do all these by manually?
For our department there are 60 students for a batch and fututre it will increase. So what happen if wish to run those code one by one and need to check some test cases by run each test case. In that case, they will be definitely tired and the system would be inefficient.
Actually it is very time consuming and tough work. If there is an easier way to spend that time for teach students or for any other task, it would be great.
Solution
Our solution is automated testing which leads to GRADINGENIUS platform. Below phases add functionalities for the system
FUNCTIONALITIES
Phase I - Auto Marking System for Coding Assessments
Appication Content
- User friendly Web Interface for instructors to mark the assignments
- Auto marking processed with GitHub Classroom
- User can create courses, assignments and add students according to their preference
- Finally instructor can view the marks of the each student under each course
Implementation of Design
- Welcome Page
- Sign UP
- Sign IN
- Courses
- Add Student
- Add assignment
Use Case Diagram
Phase II - Student Performance Analyser
Appication Content
- User friendly Web Interface for instructors to analyse student performance
- Using this web interface user can easily identify the progress of each student with the assignments
- Student can identify their strengths and weeknesses
Implementation of Design
Student Profile Page
For each students profiles were created.
- Student Information
- Assignment Information
~ Specially, whether assignments were late submitted / Deadline Passed displayed
~ Whether assignments were done / onGoing displayed
- Progress Graphically
~ Can see easily student’s progress through assignments: setbacks, rise ups
- Evaluation Report
~ Student’s strengths & weeknesses listed according to gained marks for a relevant topics.
Authorization
Authorization handled using many parts.
| SuperUser - Can handle lecturers
| Lecturer - Can create a course & assignments
- Can add instructors to his course
| Instructor - Can see only enrolled courses
- Can create assignments
- Can signup as a lecturer / instructor
~ If sign up as a lecturer, verification of them can done anytime by the super user.
~ Superuser can disallow the access of lecturers to the system , also can give access.
- Can use google signing also or username, password.. any method
~ Used google , firebase authobicatiosm
~ User can also use Google sign in if like; should obey for a given mail only.
- Manage access of lecturers by superadmin
~ SuperAdmin can verify a lecturer by checking whether he should belong or not using provided email
~ At the begining you are not verified. After super ADMIN verified you as lecturer , can use the system further.
~ If super user marked lecturer as an unorthorized user, he cannot used the system.
- Add Instructors to each course
~ By using this feature, relevant course access was granted to that instructor also.
Uploader
~ Can add bunch of students rather than adding one by one, at one time by using the given template.
Downloader & Refresher
~ User (Instructor / lecturer) can download a file for each assignment’s whole details.
~ User can do refresher option only for updating marks by new ones’, otherwise it will print previous stored marks in database.
Solution Architecture
- User ; instructor interact by using web inetrfaces
- Extract data from web; Assignment details
- Forward wanted to GITHUB Classroom; Auto-Grading tool
- Generate to do assignemnt repo link, share with students
- Students interact with instructor through GitHub platform
- Get the marks and remarks
- Used the automated process by Selenium for that
- Generate results and Visualization through web application
REST API
Web interface can be connected with the backend firebase database directly. But it is better to use an API to connect them together. So, we implemented a REST API to connect with database, not only for backend but also it gives many advantages to the system. It is more efficient to use an API. So, our implemeted API can connect with Firebase, communicate with GitHub classroom and have many more features.
-
Functions Implemented
-
CRUD operations for the backend
-
Communicate with GitHub classroom
- Function to create a new course
- Function to create a new assignment
- Function to get marks of a student
-
Additional Features
-
Download Marks Feature
Inside the Students tag under Courses, there is are mark lists according to the assignments. So, there the system displayed the marks of each student belongs to that course for each assignment separately. Also, instructor can download each and every assignment marks of the class. here is a special feature also, user can refresh the assignment marks of the student. So, instructor can view marks upto date.
-
Add Students By Uploading File To The System
There is an upload feature to upload all student details. So, instructor no needs to add students to the course one by one. Other than that user can use the given sample file. Then insert the student details to the file and then upload it to the system.
-
Seperated profile for each enrolled students
Instructor can easily view wanted details of student easily ; batch, specified course’s lectures & instructor panel. Student’s performance through out the course are viewed graphically. Each student’s specific talented area & weakly performances are listed.
Project Plan
Team
Developers:
- E/18/036, BANDARA L.R.M.U., email
- E/18/156, JAYATHILAKE W.A.T.N., email
- E/18/329, SEWWANDI D.W.S.N., email
Project Owner:
- Dr. Mahanama Wickramasinghe
Scrum Master:
- Ms. Poornima Lankani