CSC/ECE 517 Spring 2022 - E2237: Grading audit trail

From Expertiza_Wiki
Jump to navigation Jump to search

Team

Students

  • Bhuwan Bhatt (brbhatt)
  • Soumyadeep Chatterjee (schatte5)
  • Kelly Fleming (kflemin3)
  • Karthik Gopala Sundaresan (kgopala3)

Mentor

  • Kai Xiao (yxiao28)

Problem Statement

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

Summary of Previous Team's Work

You can read the entirety of the previous team's wiki write-up if desired.

Overview of Major Changes

A new table was added to the database (grading_history), along with the corresponding model (grading_history.rb) and controller (grading_history_controller.rb).

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 (index_html.erb).

Whenever an instructor submits a new grade, or edits an existing grade, the grading_history_controller saves a new history entry to the database.

Modifications to Existing Files

app/controllers/grades_controller.rb
A grading history record is created for every edit to a submission's grade.
app/controllers/review_mapping_controller.rb
A grading history record is created for every edit to a review's grade.
app/views/assignments/list_submissions.html.erb
A link to access a submission's grade history is shown in the submissions table.
app/views/reports/_review_report.html.erb
A link to access a review's grade history is shown in the review report table.

Testing

Functional tests ensuring specific method calls are made were added.

functional tests added to these files
spec/controllers/grades_controller_spec.rb
spec/controllers/review_mapping_controller_spec.rb
spec/controllers/grading_histories_controller_test.rb

A feature test ensuring that correct grading history is shown in chronological order was added.

feature test handled by these two files
spec/features/grade_histories_spec.rb
spec/features/helpers/grade_histories_helper.rb

Our Team's Design Proposal

Test Plan

(in progress) 1. Investigate if this is testable using Capybara 2. Get the specific format requirement for the title, and assert that it's there. Ensure that this doesn't appear anywhere else (possible via ensuring count is 1) 3. Procure specific required column width, and assert that this is the value in the file (the constant) 4. Inquire with mentor about comment requirement and conflicts 5. Inquire with mentor regarding white space constraints 6. Inquire why the revert is needed, what is breaking and why 7.

Useful Links

Previous team's Expertiza GitHub pull request

Previous team's wiki write-up

Previous team's implementation video walkthrough