CSC/ECE 517 Fall 2022 - E2285. Grading audit trail

From Expertiza_Wiki
Revision as of 21:05, 15 November 2022 by Bbdavis4 (talk | contribs)
Jump to navigation Jump to search

Team Introduction

Team Member

Zanxiang Wang (zwang236@ncsu.edu)

Nikhil Mehra (nmehra2@ncsu.edu)

Brian Davis (bbdavis4@ncsu.edu)

Mentor

Not Assigned

Problem Description

A grading audit trail must be created and the following information needs to be stored:

  • When an instructor assigns a grade, there needs to be an indication of who did it and when it was done.
  • Comments previously provided by other instructors must also be preserved.

This information must be stored every time an instructor edits a grade/comment and clicks the save button.

The grading audit trail can probably pattern off the submission records history (shown below) on expertiza.

The below page can be reached by logging in as instructor -> Manage -> Assignments -> View Submissions -> History

At the minimum, a grading log entry must include the instructor id, assignment id, student id, grade, comment and timestamp.

Prior Work (Changes required)

We created a database called grading_history in the system which stores elements of instructor id, assignment id, grade type, student id, grade, comment, and timestamp.

We used MVC design to create a model, a controller, and a view for both of Review Grade and Submission Grade.

Model: grading_history.rb. Has a list of attributes contains instructor id, assignment id, grade type, student id, grade, comment, and timestamp.
Controller: grading_history_controller.rb. Saves a new entry into the database every time a review grade or submission grade is saved
View: index_html.erb. Displays current submission or review's grading history. An existing example of this is a submission record in the system.

We modified grades controller, so that every time, a grade is submitted or edited, grading_history_controller.rb will call a method to create an entry saves into the database.

General Design Plan

Preliminary: The previous iterations of the project fulfilled all the functional requirements of the "grading audit trail" feature, but it is four years old and the pull request never merged. Thus, the changes are outdated and cause build issues with the latest Expertiza.

1. Cherry pick and manually fixup the changes from previous iterations to fix build issues.

2. Cleanup GUI so it meshes cleanly with latest Expertiza.

3. Add comments and test cases.

Relevant Links

https://github.com/expertiza/expertiza/pull/1441/ https://github.com/expertiza/expertiza/pull/2407/