CSC/ECE 517 Fall 2023 - E2383. Grading Audit Trail

From Expertiza_Wiki
Revision as of 04:00, 16 November 2023 by Ealopezg (talk | contribs)
Jump to navigation Jump to search

Introduction

Problem Statement

After an instructor gave a grade to an assignment, there is no way to track who gave the grade. A grading audit trail must be created and the following information needs to be stored:

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

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

Overview of Major Changes By Previous Teams

E1934

Their Screencast

  • Created a database called grading_history to store elements for the Grading Audit Trail (instructor id, assignment id, grade tyoe, student id, grade, comment and timestamp)
  • Used MVC design to create a model, a controller, and a view for both of Review Grade and Submission Grade. These will be the links used in the View Submissions view and View Review Report view so that the grading trail for an assignments submission and reviews are seperate.
  • 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 that saves into the database.

Problems/Issues

  • For review grades, the “Grading History” link must not be in a separate column. It should be in smaller text below the in the “Save” button.
  • In the view grading record page, remove the receiver column and add it to the title
  • Restrict the column width on the grading record page
  • Add comments on list_submissions.html.erb to indicate that the alignment was changed to fix code climate issues
  • Ensure that white space changes are separate commits
  • Revert changes made to list_review_mapping.html.erb 7. Remove the review_report-html.erb file *Design doc – mention why each of those files were changed

E2158

  • They attempted to solve the previous issues of E1934
  • A new table was added to the database (grading_history), along with the corresponding model (grading_history.rb) and controller (grading_history_controller.rb).
    • Whenever an instructor submits a new grade, or edits an existing grade, the grading_history_controller saves a new history entry to the database.
  • Two models for specific types of histories were added: review_grading_history.rb, and submission_grading_history.rb.
  • A view for displaying the grading history of a particular assignment or review was added (grading_histories/index.html.erb).

E2237

  • They fixed some issues that were causing the system to crash during testing
  • Altered the Grading History view
  • Explained the reasoning for changes made to files using diagrams and justifications

Problems/Issues

  • Redundant files generated by scaffolding need to be removed, along with debugging code.
  • Authentication could be done using existing utilities, no need to create their own.
  • Some formatting changes could be done especially on how cells span in review report page.
  • Code from previous implementation is a concern.

Proposed Solution

We plan on using the implementation of E2237 since it is the latest in the Grading Audit Trail projects and has the latest in terms of testing. We also plan to implement the files from E1258 since this one tackles the problems from the initial teams implementation and fixes the views. These files cannot be added haphazardly since parts of the implementation is a cause to concern and caused the changes to not be implemented.

We must first figure out exactly what changes and issues to address in their implementation by meeting with our mentor.

Files to tentatively add:

  • app/controllers/grading_histories_controller.rb

    Calls the grading history view after validating Submission and Review Type.

  • app/models/grading_history.rb

    Model for Grading History.

  • app/models/review_grading_history.rb

    Model containing specifics of Review Grading History. Inherits Grading History.

  • app/models/submission_grading_history.rb

    Model containing specifics of Submission Grading History. Inherits Grading History.

  • app/views/grading_history/index_html.erb

    This is a view for grading audit trail, it will display all grading histories of a submission/review

  • spec/features/grade_histories_spec.rb

    Feature test to check if the grades appear in chronological order

  • spec/features/helpers/grade_histories_helper.rb

    Helper file to facilitate the above mentioned feature test.

Implementation

There are different ways we can try to implement since currently there is no implementation for the Grading Audit Trail but we will base ours off the previous teams implementations.

The files that are included already and we plan to alter without a doubt are

    app/views/reports/_review_report.html.erb

    app/views/assignments/list_submissions.html.erb

Testing Plan

Future Scope

Relevant Links

Contributors to this project

  • Amulya Usem
  • Erik Lopez-Godinez
  • Gowtham Pollam
  • Mentor: Srilekha Gudipati