<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.expertiza.ncsu.edu/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Ealopezg</id>
	<title>Expertiza_Wiki - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.expertiza.ncsu.edu/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Ealopezg"/>
	<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=Special:Contributions/Ealopezg"/>
	<updated>2026-08-09T02:04:40Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.41.0</generator>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2023_-_E2383._Grading_Audit_Trail&amp;diff=152703</id>
		<title>CSC/ECE 517 Fall 2023 - E2383. Grading Audit Trail</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2023_-_E2383._Grading_Audit_Trail&amp;diff=152703"/>
		<updated>2023-12-05T05:31:01Z</updated>

		<summary type="html">&lt;p&gt;Ealopezg: /* E2237 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=='''Introduction'''==&lt;br /&gt;
&lt;br /&gt;
===Problem Statement===&lt;br /&gt;
In the current implementation of expertiza, any instructor can assign or edit a grade but there is no way to track who gave the grade and when. &lt;br /&gt;
&lt;br /&gt;
A grading audit trail must be created and the following information needs to be stored:&lt;br /&gt;
&lt;br /&gt;
1. When a grade is assigned by an instructor, there needs to be an indication of who did it and when it was done.&lt;br /&gt;
2. Comments previously provided by other instructors must also be preserved.&lt;br /&gt;
This information needs to be stored every time an instructor edits a grade/comment and clicks the save button.&lt;br /&gt;
&lt;br /&gt;
Currently, there are two places need to add grading audit trail:&lt;br /&gt;
&lt;br /&gt;
1. Review grade: Log in as instructor -&amp;gt; Manage -&amp;gt; Assignments -&amp;gt; View Review Report&lt;br /&gt;
2. Submission grade: Log in as instructor -&amp;gt; Manage -&amp;gt; Assignments -&amp;gt; View submissions&lt;br /&gt;
The grading audit trail can probably be implemented as the submission records history on Expertiza. The required page can be reached by logging in as instructor -&amp;gt; Manage -&amp;gt; Assignments -&amp;gt; View Submissions -&amp;gt; History&lt;br /&gt;
&lt;br /&gt;
At the minimum, a grading log entry must include the instructor id, assignment id, student id, grade, comment and timestamp.&lt;br /&gt;
&lt;br /&gt;
Previous student teams have attempted to implement this functionality, but their implementations had issues. Our solution will build on the work of teams E1934 and E2237, addressing the problems in their implementations.&lt;br /&gt;
&lt;br /&gt;
== '''Overview of Major Changes By Previous Teams''' ==&lt;br /&gt;
===[https://wiki-expertiza.csc.ncsu.edu/index.php/E1934_-_Grading_Audit_Trail E1934]===&lt;br /&gt;
[https://youtu.be/yyxX_kRYxLc Their Screencast]&lt;br /&gt;
&lt;br /&gt;
*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)&lt;br /&gt;
*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.&lt;br /&gt;
*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.&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. 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. &lt;br /&gt;
:2. In the view grading record page, remove the receiver column and add it to the title &lt;br /&gt;
:3. Restrict the column width on the grading record page &lt;br /&gt;
:4. Add comments on list_submissions.html.erb to indicate that the alignment was changed to fix code climate issues &lt;br /&gt;
:5. Ensure that white space changes are separate commits &lt;br /&gt;
:6. Revert changes made to list_review_mapping.html.erb &lt;br /&gt;
:7. Remove the review_report_html.erb file&lt;br /&gt;
:8. Design doc – mention why each of those files were changed&lt;br /&gt;
&lt;br /&gt;
This is the design plan in which they followed:&lt;br /&gt;
&lt;br /&gt;
[[File:E1869 Grading Audit Trails UML.jpg]]&lt;br /&gt;
&lt;br /&gt;
===[https://wiki-expertiza.csc.ncsu.edu/index.php/CSC/ECE_517_Spring_2022_-_E2237:_Grading_audit_trail E2237]===&lt;br /&gt;
&lt;br /&gt;
*They fixed some issues that were causing the system to crash during testing&lt;br /&gt;
*Altered the Grading History view&lt;br /&gt;
*Explained the reasoning for changes made to files using diagrams and justifications&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. Redundant files generated by scaffolding need to be removed, along with debugging code. Ex) Coffee created by scaffolding and console logging for debugging. &lt;br /&gt;
:2. Authentication could be done using existing utilities, no need to create their own. &lt;br /&gt;
:3. Some formatting changes could be done especially on how cells span in review report page. Ex) Formatting change for spans in between cells in review report.&lt;br /&gt;
:4. Code from previous implementation is a concern.&lt;br /&gt;
&lt;br /&gt;
This is the updated design flow in which they created to improve previous implementations further:&lt;br /&gt;
&lt;br /&gt;
[[File:Kai diagram1.jpg]]&lt;br /&gt;
&lt;br /&gt;
=='''Proposed Solution'''==&lt;br /&gt;
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. These files cannot be added haphazardly since parts of the implementation is a cause to concern and caused the changes to not be implemented. It is also using an older version of expertiza so some parts may not be compatible.  &lt;br /&gt;
&lt;br /&gt;
We must first figure out exactly what changes and issues to address in their implementation by meeting with our mentor. We also need to reimplement the following files since none of their changes were implemented:&lt;br /&gt;
&lt;br /&gt;
*app/controllers/grading_histories_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     Calls the grading history view after validating Submission and Review Type.&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/grading_history.rb &lt;br /&gt;
'''&lt;br /&gt;
     Model for Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/review_grading_history.rb &lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Model containing specifics of Review Grading History. Inherits Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/submission_grading_history.rb &lt;br /&gt;
'''&lt;br /&gt;
     Model containing specifics of Submission Grading History. Inherits Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/views/grading_history/index_html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This is a view for grading audit trail, it will display all grading histories of a &lt;br /&gt;
     submission/review&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*spec/features/grade_histories_spec.rb&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Feature test to check if the grades appear in chronological order&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*spec/features/helpers/grade_histories_helper.rb&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Helper file to facilitate the above mentioned feature test.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
=='''Reimplementation'''==&lt;br /&gt;
Since the previous teams implementations were not integrated we have to reimplement their files which we will do by looking at their commits and pull request to see what files are necessary and what can be left out to address the issues of their implementation.&lt;br /&gt;
&lt;br /&gt;
'''[https://github.com/ErikLG360/expertiza/commit/e28a857695549cc91c477587707e48100d2bd333 Files being Reimplemented/Modified]'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Reimplemented'''&lt;br /&gt;
*app/controllers/grading_histories_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was added to deal with allowing only the correct people to view the grading history, checking the assignment type whether it be a submission or review, and indexing all the grading history for the assignment in chronological order.&lt;br /&gt;
'''&lt;br /&gt;
*app/models/grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was added to create the relationships that the grading history has with an instructor who is creating the parts of the grading history and the assignments that will have a grading history.&lt;br /&gt;
'''&lt;br /&gt;
*app/models/review_grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file creates the relationship that a participant will have a Review Grading History &lt;br /&gt;
'''&lt;br /&gt;
*app/models/submission_grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file create the relationship that a participant/grade_reciever will have a Submission Grading History&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/views/grading_histories/index.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This file contains the view for the grading history table which will change depending on if its a Review or submission type&lt;br /&gt;
'''&lt;br /&gt;
*app/views/grading_histories/_form.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This file contains the view for when a grading history contains any error when it is about to be saved&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
'''Modified'''&lt;br /&gt;
*app/controllers/grades_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was modified based off the previous teams implementation because when the method save_grade_and_comment_for_submission was called it should also create a grading history so that&lt;br /&gt;
 the grading audit can be created and added to. This was mainly focusing on the grading history of submissions and not reviews.&lt;br /&gt;
'''&lt;br /&gt;
*app/controllers/review_mapping_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was modified based off the previous teams implementation because when the method save_grade_and_comment_for_reviewer was called it should also create a grading history so that&lt;br /&gt;
 the grading audit can be created and added to. This was mainly focusing on the grading history of reviews and not submissions.&lt;br /&gt;
'''&lt;br /&gt;
*app/views/assignments/list_submissions.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     It was modified to add the new hyperlink to display the grading history of a submission.&lt;br /&gt;
'''&lt;br /&gt;
*config/routes.rb&lt;br /&gt;
'''&lt;br /&gt;
     It was to add the new route for grading histories&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
=='''Solutions - Implemented'''==&lt;br /&gt;
&lt;br /&gt;
'''E1934'''&lt;br /&gt;
&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. 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. &lt;br /&gt;
:2. In the view grading record page, remove the receiver column and add it to the title &lt;br /&gt;
:3. Restrict the column width on the grading record page &lt;br /&gt;
:4. Add comments on list_submissions.html.erb to indicate that the alignment was changed to fix code climate issues &lt;br /&gt;
:5. Ensure that white space changes are separate commits &lt;br /&gt;
:6. Revert changes made to list_review_mapping.html.erb &lt;br /&gt;
:7. Remove the review_report_html.erb file&lt;br /&gt;
:8. Design doc – mention why each of those files were changed&lt;br /&gt;
&lt;br /&gt;
'''Solutions''' &lt;br /&gt;
:1. Found the correct location to put the Review Grading History link and also fix the previous teams creation of a grading history to work with the latest expertiza update. &lt;br /&gt;
Files changed include: &lt;br /&gt;
*[https://github.com/ErikLG360/expertiza/commit/c0352cb73f7de1fba72938df2953ee82cb84bb6a app/controllers/review_mapping_controller.rb]&lt;br /&gt;
*[https://github.com/ErikLG360/expertiza/commit/c0352cb73f7de1fba72938df2953ee82cb84bb6a app/views/reports/_review_report.html.erb]&lt;br /&gt;
&lt;br /&gt;
:2. The previous implementatation of E2237 tackled this problem and moved it to the title.&lt;br /&gt;
[[File:GradingTableTitle.png]]&lt;br /&gt;
:3. The column widths were lessened by about 15px in the grading record page&lt;br /&gt;
&lt;br /&gt;
Files changed include:&lt;br /&gt;
*[https://github.com/ErikLG360/expertiza/commit/124bd12d23f75db0a68e2fac8a8487c5f7a7ed67 app/views/grading_histories/index.html.erb]&lt;br /&gt;
&lt;br /&gt;
:4. There were no code climate issues regarding this issue&lt;br /&gt;
&lt;br /&gt;
:5. All code climate changes are their own commits such as [https://github.com/ErikLG360/expertiza/commit/e95656f4d5e4f2ba4fc8d3f40716673ccafb41b1 This]&lt;br /&gt;
&lt;br /&gt;
:6. This issue was resolved by not adding in their implementation for the list_review_mapping.html.erb&lt;br /&gt;
&lt;br /&gt;
:7. This issue was resolved by not adding in the review_report_html.erb file&lt;br /&gt;
&lt;br /&gt;
:8. This issue is resolved in the '''Reimplementation''' section of this document&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''E2237'''&lt;br /&gt;
&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. Redundant files generated by scaffolding need to be removed, along with debugging code. Ex) Coffee created by scaffolding and console logging for debugging. &lt;br /&gt;
:2. Authentication could be done using existing utilities, no need to create their own. &lt;br /&gt;
:3. Some formatting changes could be done especially on how cells span in review report page. Ex) Formatting change for spans in between cells in review report.&lt;br /&gt;
:4. Code from previous implementation is a concern.&lt;br /&gt;
&lt;br /&gt;
'''Solutions''' &lt;br /&gt;
:1. These files have not been added.&lt;br /&gt;
:2. The authentication already used the necessary parts&lt;br /&gt;
:3. The column width was reduced by 15px refer to the solution for E1934 number 3.&lt;br /&gt;
:4. Code for the review_mapping_controller was changed to match the current state of expertiza refer to the solution for E1934 number 1.&lt;br /&gt;
&lt;br /&gt;
=='''Resulting Views'''==&lt;br /&gt;
This is the view in the view submissions page that displays the link for the Submissions Grading History which is circled in red.&lt;br /&gt;
[[File:SubmissionsGradingHistoryLink.jpeg]]&lt;br /&gt;
&lt;br /&gt;
This is the resulting view after clicking the link:&lt;br /&gt;
[[File:SubmissionGradingHist.png]]&lt;br /&gt;
&lt;br /&gt;
This is the view in the review report page that displays the link for the Reviews Grading History which is circled in red.&lt;br /&gt;
[[File:ReviewGradingHistoryLink.jpeg]]&lt;br /&gt;
&lt;br /&gt;
This is the resulting view after clicking the Reviews Grading History link:&lt;br /&gt;
[[File:ReviewsGradingHist.png]]&lt;br /&gt;
&lt;br /&gt;
=='''Testing Plan'''==&lt;br /&gt;
We have added a test case to test if a grading history is getting created when valid parameters are used. &lt;br /&gt;
The files include&lt;br /&gt;
spec/controllers/grading_histories_controller_test.rb&lt;br /&gt;
spec/factories/factories.rb&lt;br /&gt;
spec/features/grade_histories_spec.rb&lt;br /&gt;
spec/helpers/grade_histories_helper_spec.rb&lt;br /&gt;
&lt;br /&gt;
https://github.com/expertiza/expertiza/commit/067b52315ac1ff7ce1b89fc44121393cadbabc6a&lt;br /&gt;
&lt;br /&gt;
=='''Future Scope'''==&lt;br /&gt;
This project may need further improvement since it does not seem like there should be an abundance of files added and perhaps using the MVC design is not necessarily needed. There can also be a reduction of code since the difference between the two main grading histories is just whether it is a review or submission type.&lt;br /&gt;
&lt;br /&gt;
=='''Relevant Links'''==&lt;br /&gt;
* '''Github Repository:''' https://github.com/ErikLG360/expertiza&lt;br /&gt;
* '''Pull Request:''' https://github.com/expertiza/expertiza/pull/2696&lt;br /&gt;
* '''VCL Server (Valid until 12/15/23):'''  http://152.7.179.44:8080&lt;br /&gt;
* '''Video:''' https://drive.google.com/file/d/1HIrJtCsbZXSqGPHShuV6mbSTOKvV5MxT/view?usp=drive_link&lt;br /&gt;
&lt;br /&gt;
=='''Contributors to this project'''==&lt;br /&gt;
*Amulya Usem&lt;br /&gt;
*Erik Lopez-Godinez&lt;br /&gt;
*Gowtham Pollam&lt;br /&gt;
&lt;br /&gt;
*'''Mentor''': Srilekha Gudipati&lt;/div&gt;</summary>
		<author><name>Ealopezg</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2023_-_E2383._Grading_Audit_Trail&amp;diff=152702</id>
		<title>CSC/ECE 517 Fall 2023 - E2383. Grading Audit Trail</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2023_-_E2383._Grading_Audit_Trail&amp;diff=152702"/>
		<updated>2023-12-05T05:29:34Z</updated>

		<summary type="html">&lt;p&gt;Ealopezg: /* E1934 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=='''Introduction'''==&lt;br /&gt;
&lt;br /&gt;
===Problem Statement===&lt;br /&gt;
In the current implementation of expertiza, any instructor can assign or edit a grade but there is no way to track who gave the grade and when. &lt;br /&gt;
&lt;br /&gt;
A grading audit trail must be created and the following information needs to be stored:&lt;br /&gt;
&lt;br /&gt;
1. When a grade is assigned by an instructor, there needs to be an indication of who did it and when it was done.&lt;br /&gt;
2. Comments previously provided by other instructors must also be preserved.&lt;br /&gt;
This information needs to be stored every time an instructor edits a grade/comment and clicks the save button.&lt;br /&gt;
&lt;br /&gt;
Currently, there are two places need to add grading audit trail:&lt;br /&gt;
&lt;br /&gt;
1. Review grade: Log in as instructor -&amp;gt; Manage -&amp;gt; Assignments -&amp;gt; View Review Report&lt;br /&gt;
2. Submission grade: Log in as instructor -&amp;gt; Manage -&amp;gt; Assignments -&amp;gt; View submissions&lt;br /&gt;
The grading audit trail can probably be implemented as the submission records history on Expertiza. The required page can be reached by logging in as instructor -&amp;gt; Manage -&amp;gt; Assignments -&amp;gt; View Submissions -&amp;gt; History&lt;br /&gt;
&lt;br /&gt;
At the minimum, a grading log entry must include the instructor id, assignment id, student id, grade, comment and timestamp.&lt;br /&gt;
&lt;br /&gt;
Previous student teams have attempted to implement this functionality, but their implementations had issues. Our solution will build on the work of teams E1934 and E2237, addressing the problems in their implementations.&lt;br /&gt;
&lt;br /&gt;
== '''Overview of Major Changes By Previous Teams''' ==&lt;br /&gt;
===[https://wiki-expertiza.csc.ncsu.edu/index.php/E1934_-_Grading_Audit_Trail E1934]===&lt;br /&gt;
[https://youtu.be/yyxX_kRYxLc Their Screencast]&lt;br /&gt;
&lt;br /&gt;
*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)&lt;br /&gt;
*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.&lt;br /&gt;
*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.&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. 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. &lt;br /&gt;
:2. In the view grading record page, remove the receiver column and add it to the title &lt;br /&gt;
:3. Restrict the column width on the grading record page &lt;br /&gt;
:4. Add comments on list_submissions.html.erb to indicate that the alignment was changed to fix code climate issues &lt;br /&gt;
:5. Ensure that white space changes are separate commits &lt;br /&gt;
:6. Revert changes made to list_review_mapping.html.erb &lt;br /&gt;
:7. Remove the review_report_html.erb file&lt;br /&gt;
:8. Design doc – mention why each of those files were changed&lt;br /&gt;
&lt;br /&gt;
This is the design plan in which they followed:&lt;br /&gt;
&lt;br /&gt;
[[File:E1869 Grading Audit Trails UML.jpg]]&lt;br /&gt;
&lt;br /&gt;
===[https://wiki-expertiza.csc.ncsu.edu/index.php/CSC/ECE_517_Spring_2022_-_E2237:_Grading_audit_trail E2237]===&lt;br /&gt;
&lt;br /&gt;
*They fixed some issues that were causing the system to crash during testing&lt;br /&gt;
*Altered the Grading History view&lt;br /&gt;
*Explained the reasoning for changes made to files using diagrams and justifications&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. Redundant files generated by scaffolding need to be removed, along with debugging code. Ex) Coffee created by scaffolding and console logging for debugging. &lt;br /&gt;
:2. Authentication could be done using existing utilities, no need to create their own. &lt;br /&gt;
:3. Some formatting changes could be done especially on how cells span in review report page. Ex) Formatting change for spans in between cells in review report.&lt;br /&gt;
:4. Code from previous implementation is a concern.&lt;br /&gt;
&lt;br /&gt;
=='''Proposed Solution'''==&lt;br /&gt;
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. These files cannot be added haphazardly since parts of the implementation is a cause to concern and caused the changes to not be implemented. It is also using an older version of expertiza so some parts may not be compatible.  &lt;br /&gt;
&lt;br /&gt;
We must first figure out exactly what changes and issues to address in their implementation by meeting with our mentor. We also need to reimplement the following files since none of their changes were implemented:&lt;br /&gt;
&lt;br /&gt;
*app/controllers/grading_histories_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     Calls the grading history view after validating Submission and Review Type.&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/grading_history.rb &lt;br /&gt;
'''&lt;br /&gt;
     Model for Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/review_grading_history.rb &lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Model containing specifics of Review Grading History. Inherits Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/submission_grading_history.rb &lt;br /&gt;
'''&lt;br /&gt;
     Model containing specifics of Submission Grading History. Inherits Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/views/grading_history/index_html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This is a view for grading audit trail, it will display all grading histories of a &lt;br /&gt;
     submission/review&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*spec/features/grade_histories_spec.rb&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Feature test to check if the grades appear in chronological order&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*spec/features/helpers/grade_histories_helper.rb&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Helper file to facilitate the above mentioned feature test.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
=='''Reimplementation'''==&lt;br /&gt;
Since the previous teams implementations were not integrated we have to reimplement their files which we will do by looking at their commits and pull request to see what files are necessary and what can be left out to address the issues of their implementation.&lt;br /&gt;
&lt;br /&gt;
'''[https://github.com/ErikLG360/expertiza/commit/e28a857695549cc91c477587707e48100d2bd333 Files being Reimplemented/Modified]'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Reimplemented'''&lt;br /&gt;
*app/controllers/grading_histories_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was added to deal with allowing only the correct people to view the grading history, checking the assignment type whether it be a submission or review, and indexing all the grading history for the assignment in chronological order.&lt;br /&gt;
'''&lt;br /&gt;
*app/models/grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was added to create the relationships that the grading history has with an instructor who is creating the parts of the grading history and the assignments that will have a grading history.&lt;br /&gt;
'''&lt;br /&gt;
*app/models/review_grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file creates the relationship that a participant will have a Review Grading History &lt;br /&gt;
'''&lt;br /&gt;
*app/models/submission_grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file create the relationship that a participant/grade_reciever will have a Submission Grading History&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/views/grading_histories/index.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This file contains the view for the grading history table which will change depending on if its a Review or submission type&lt;br /&gt;
'''&lt;br /&gt;
*app/views/grading_histories/_form.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This file contains the view for when a grading history contains any error when it is about to be saved&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
'''Modified'''&lt;br /&gt;
*app/controllers/grades_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was modified based off the previous teams implementation because when the method save_grade_and_comment_for_submission was called it should also create a grading history so that&lt;br /&gt;
 the grading audit can be created and added to. This was mainly focusing on the grading history of submissions and not reviews.&lt;br /&gt;
'''&lt;br /&gt;
*app/controllers/review_mapping_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was modified based off the previous teams implementation because when the method save_grade_and_comment_for_reviewer was called it should also create a grading history so that&lt;br /&gt;
 the grading audit can be created and added to. This was mainly focusing on the grading history of reviews and not submissions.&lt;br /&gt;
'''&lt;br /&gt;
*app/views/assignments/list_submissions.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     It was modified to add the new hyperlink to display the grading history of a submission.&lt;br /&gt;
'''&lt;br /&gt;
*config/routes.rb&lt;br /&gt;
'''&lt;br /&gt;
     It was to add the new route for grading histories&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
=='''Solutions - Implemented'''==&lt;br /&gt;
&lt;br /&gt;
'''E1934'''&lt;br /&gt;
&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. 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. &lt;br /&gt;
:2. In the view grading record page, remove the receiver column and add it to the title &lt;br /&gt;
:3. Restrict the column width on the grading record page &lt;br /&gt;
:4. Add comments on list_submissions.html.erb to indicate that the alignment was changed to fix code climate issues &lt;br /&gt;
:5. Ensure that white space changes are separate commits &lt;br /&gt;
:6. Revert changes made to list_review_mapping.html.erb &lt;br /&gt;
:7. Remove the review_report_html.erb file&lt;br /&gt;
:8. Design doc – mention why each of those files were changed&lt;br /&gt;
&lt;br /&gt;
'''Solutions''' &lt;br /&gt;
:1. Found the correct location to put the Review Grading History link and also fix the previous teams creation of a grading history to work with the latest expertiza update. &lt;br /&gt;
Files changed include: &lt;br /&gt;
*[https://github.com/ErikLG360/expertiza/commit/c0352cb73f7de1fba72938df2953ee82cb84bb6a app/controllers/review_mapping_controller.rb]&lt;br /&gt;
*[https://github.com/ErikLG360/expertiza/commit/c0352cb73f7de1fba72938df2953ee82cb84bb6a app/views/reports/_review_report.html.erb]&lt;br /&gt;
&lt;br /&gt;
:2. The previous implementatation of E2237 tackled this problem and moved it to the title.&lt;br /&gt;
[[File:GradingTableTitle.png]]&lt;br /&gt;
:3. The column widths were lessened by about 15px in the grading record page&lt;br /&gt;
&lt;br /&gt;
Files changed include:&lt;br /&gt;
*[https://github.com/ErikLG360/expertiza/commit/124bd12d23f75db0a68e2fac8a8487c5f7a7ed67 app/views/grading_histories/index.html.erb]&lt;br /&gt;
&lt;br /&gt;
:4. There were no code climate issues regarding this issue&lt;br /&gt;
&lt;br /&gt;
:5. All code climate changes are their own commits such as [https://github.com/ErikLG360/expertiza/commit/e95656f4d5e4f2ba4fc8d3f40716673ccafb41b1 This]&lt;br /&gt;
&lt;br /&gt;
:6. This issue was resolved by not adding in their implementation for the list_review_mapping.html.erb&lt;br /&gt;
&lt;br /&gt;
:7. This issue was resolved by not adding in the review_report_html.erb file&lt;br /&gt;
&lt;br /&gt;
:8. This issue is resolved in the '''Reimplementation''' section of this document&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''E2237'''&lt;br /&gt;
&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. Redundant files generated by scaffolding need to be removed, along with debugging code. Ex) Coffee created by scaffolding and console logging for debugging. &lt;br /&gt;
:2. Authentication could be done using existing utilities, no need to create their own. &lt;br /&gt;
:3. Some formatting changes could be done especially on how cells span in review report page. Ex) Formatting change for spans in between cells in review report.&lt;br /&gt;
:4. Code from previous implementation is a concern.&lt;br /&gt;
&lt;br /&gt;
'''Solutions''' &lt;br /&gt;
:1. These files have not been added.&lt;br /&gt;
:2. The authentication already used the necessary parts&lt;br /&gt;
:3. The column width was reduced by 15px refer to the solution for E1934 number 3.&lt;br /&gt;
:4. Code for the review_mapping_controller was changed to match the current state of expertiza refer to the solution for E1934 number 1.&lt;br /&gt;
&lt;br /&gt;
=='''Resulting Views'''==&lt;br /&gt;
This is the view in the view submissions page that displays the link for the Submissions Grading History which is circled in red.&lt;br /&gt;
[[File:SubmissionsGradingHistoryLink.jpeg]]&lt;br /&gt;
&lt;br /&gt;
This is the resulting view after clicking the link:&lt;br /&gt;
[[File:SubmissionGradingHist.png]]&lt;br /&gt;
&lt;br /&gt;
This is the view in the review report page that displays the link for the Reviews Grading History which is circled in red.&lt;br /&gt;
[[File:ReviewGradingHistoryLink.jpeg]]&lt;br /&gt;
&lt;br /&gt;
This is the resulting view after clicking the Reviews Grading History link:&lt;br /&gt;
[[File:ReviewsGradingHist.png]]&lt;br /&gt;
&lt;br /&gt;
=='''Testing Plan'''==&lt;br /&gt;
We have added a test case to test if a grading history is getting created when valid parameters are used. &lt;br /&gt;
The files include&lt;br /&gt;
spec/controllers/grading_histories_controller_test.rb&lt;br /&gt;
spec/factories/factories.rb&lt;br /&gt;
spec/features/grade_histories_spec.rb&lt;br /&gt;
spec/helpers/grade_histories_helper_spec.rb&lt;br /&gt;
&lt;br /&gt;
https://github.com/expertiza/expertiza/commit/067b52315ac1ff7ce1b89fc44121393cadbabc6a&lt;br /&gt;
&lt;br /&gt;
=='''Future Scope'''==&lt;br /&gt;
This project may need further improvement since it does not seem like there should be an abundance of files added and perhaps using the MVC design is not necessarily needed. There can also be a reduction of code since the difference between the two main grading histories is just whether it is a review or submission type.&lt;br /&gt;
&lt;br /&gt;
=='''Relevant Links'''==&lt;br /&gt;
* '''Github Repository:''' https://github.com/ErikLG360/expertiza&lt;br /&gt;
* '''Pull Request:''' https://github.com/expertiza/expertiza/pull/2696&lt;br /&gt;
* '''VCL Server (Valid until 12/15/23):'''  http://152.7.179.44:8080&lt;br /&gt;
* '''Video:''' https://drive.google.com/file/d/1HIrJtCsbZXSqGPHShuV6mbSTOKvV5MxT/view?usp=drive_link&lt;br /&gt;
&lt;br /&gt;
=='''Contributors to this project'''==&lt;br /&gt;
*Amulya Usem&lt;br /&gt;
*Erik Lopez-Godinez&lt;br /&gt;
*Gowtham Pollam&lt;br /&gt;
&lt;br /&gt;
*'''Mentor''': Srilekha Gudipati&lt;/div&gt;</summary>
		<author><name>Ealopezg</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2023_-_E2383._Grading_Audit_Trail&amp;diff=152701</id>
		<title>CSC/ECE 517 Fall 2023 - E2383. Grading Audit Trail</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2023_-_E2383._Grading_Audit_Trail&amp;diff=152701"/>
		<updated>2023-12-05T05:29:14Z</updated>

		<summary type="html">&lt;p&gt;Ealopezg: /* E1934 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=='''Introduction'''==&lt;br /&gt;
&lt;br /&gt;
===Problem Statement===&lt;br /&gt;
In the current implementation of expertiza, any instructor can assign or edit a grade but there is no way to track who gave the grade and when. &lt;br /&gt;
&lt;br /&gt;
A grading audit trail must be created and the following information needs to be stored:&lt;br /&gt;
&lt;br /&gt;
1. When a grade is assigned by an instructor, there needs to be an indication of who did it and when it was done.&lt;br /&gt;
2. Comments previously provided by other instructors must also be preserved.&lt;br /&gt;
This information needs to be stored every time an instructor edits a grade/comment and clicks the save button.&lt;br /&gt;
&lt;br /&gt;
Currently, there are two places need to add grading audit trail:&lt;br /&gt;
&lt;br /&gt;
1. Review grade: Log in as instructor -&amp;gt; Manage -&amp;gt; Assignments -&amp;gt; View Review Report&lt;br /&gt;
2. Submission grade: Log in as instructor -&amp;gt; Manage -&amp;gt; Assignments -&amp;gt; View submissions&lt;br /&gt;
The grading audit trail can probably be implemented as the submission records history on Expertiza. The required page can be reached by logging in as instructor -&amp;gt; Manage -&amp;gt; Assignments -&amp;gt; View Submissions -&amp;gt; History&lt;br /&gt;
&lt;br /&gt;
At the minimum, a grading log entry must include the instructor id, assignment id, student id, grade, comment and timestamp.&lt;br /&gt;
&lt;br /&gt;
Previous student teams have attempted to implement this functionality, but their implementations had issues. Our solution will build on the work of teams E1934 and E2237, addressing the problems in their implementations.&lt;br /&gt;
&lt;br /&gt;
== '''Overview of Major Changes By Previous Teams''' ==&lt;br /&gt;
===[https://wiki-expertiza.csc.ncsu.edu/index.php/E1934_-_Grading_Audit_Trail E1934]===&lt;br /&gt;
[https://youtu.be/yyxX_kRYxLc Their Screencast]&lt;br /&gt;
&lt;br /&gt;
*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)&lt;br /&gt;
*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.&lt;br /&gt;
*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.&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. 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. &lt;br /&gt;
:2. In the view grading record page, remove the receiver column and add it to the title &lt;br /&gt;
:3. Restrict the column width on the grading record page &lt;br /&gt;
:4. Add comments on list_submissions.html.erb to indicate that the alignment was changed to fix code climate issues &lt;br /&gt;
:5. Ensure that white space changes are separate commits &lt;br /&gt;
:6. Revert changes made to list_review_mapping.html.erb &lt;br /&gt;
:7. Remove the review_report_html.erb file&lt;br /&gt;
:8. Design doc – mention why each of those files were changed&lt;br /&gt;
&lt;br /&gt;
This is the design plan in which they followed:&lt;br /&gt;
[[File:E1869 Grading Audit Trails UML.jpg]]&lt;br /&gt;
&lt;br /&gt;
===[https://wiki-expertiza.csc.ncsu.edu/index.php/CSC/ECE_517_Spring_2022_-_E2237:_Grading_audit_trail E2237]===&lt;br /&gt;
&lt;br /&gt;
*They fixed some issues that were causing the system to crash during testing&lt;br /&gt;
*Altered the Grading History view&lt;br /&gt;
*Explained the reasoning for changes made to files using diagrams and justifications&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. Redundant files generated by scaffolding need to be removed, along with debugging code. Ex) Coffee created by scaffolding and console logging for debugging. &lt;br /&gt;
:2. Authentication could be done using existing utilities, no need to create their own. &lt;br /&gt;
:3. Some formatting changes could be done especially on how cells span in review report page. Ex) Formatting change for spans in between cells in review report.&lt;br /&gt;
:4. Code from previous implementation is a concern.&lt;br /&gt;
&lt;br /&gt;
=='''Proposed Solution'''==&lt;br /&gt;
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. These files cannot be added haphazardly since parts of the implementation is a cause to concern and caused the changes to not be implemented. It is also using an older version of expertiza so some parts may not be compatible.  &lt;br /&gt;
&lt;br /&gt;
We must first figure out exactly what changes and issues to address in their implementation by meeting with our mentor. We also need to reimplement the following files since none of their changes were implemented:&lt;br /&gt;
&lt;br /&gt;
*app/controllers/grading_histories_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     Calls the grading history view after validating Submission and Review Type.&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/grading_history.rb &lt;br /&gt;
'''&lt;br /&gt;
     Model for Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/review_grading_history.rb &lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Model containing specifics of Review Grading History. Inherits Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/submission_grading_history.rb &lt;br /&gt;
'''&lt;br /&gt;
     Model containing specifics of Submission Grading History. Inherits Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/views/grading_history/index_html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This is a view for grading audit trail, it will display all grading histories of a &lt;br /&gt;
     submission/review&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*spec/features/grade_histories_spec.rb&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Feature test to check if the grades appear in chronological order&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*spec/features/helpers/grade_histories_helper.rb&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Helper file to facilitate the above mentioned feature test.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
=='''Reimplementation'''==&lt;br /&gt;
Since the previous teams implementations were not integrated we have to reimplement their files which we will do by looking at their commits and pull request to see what files are necessary and what can be left out to address the issues of their implementation.&lt;br /&gt;
&lt;br /&gt;
'''[https://github.com/ErikLG360/expertiza/commit/e28a857695549cc91c477587707e48100d2bd333 Files being Reimplemented/Modified]'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Reimplemented'''&lt;br /&gt;
*app/controllers/grading_histories_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was added to deal with allowing only the correct people to view the grading history, checking the assignment type whether it be a submission or review, and indexing all the grading history for the assignment in chronological order.&lt;br /&gt;
'''&lt;br /&gt;
*app/models/grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was added to create the relationships that the grading history has with an instructor who is creating the parts of the grading history and the assignments that will have a grading history.&lt;br /&gt;
'''&lt;br /&gt;
*app/models/review_grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file creates the relationship that a participant will have a Review Grading History &lt;br /&gt;
'''&lt;br /&gt;
*app/models/submission_grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file create the relationship that a participant/grade_reciever will have a Submission Grading History&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/views/grading_histories/index.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This file contains the view for the grading history table which will change depending on if its a Review or submission type&lt;br /&gt;
'''&lt;br /&gt;
*app/views/grading_histories/_form.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This file contains the view for when a grading history contains any error when it is about to be saved&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
'''Modified'''&lt;br /&gt;
*app/controllers/grades_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was modified based off the previous teams implementation because when the method save_grade_and_comment_for_submission was called it should also create a grading history so that&lt;br /&gt;
 the grading audit can be created and added to. This was mainly focusing on the grading history of submissions and not reviews.&lt;br /&gt;
'''&lt;br /&gt;
*app/controllers/review_mapping_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was modified based off the previous teams implementation because when the method save_grade_and_comment_for_reviewer was called it should also create a grading history so that&lt;br /&gt;
 the grading audit can be created and added to. This was mainly focusing on the grading history of reviews and not submissions.&lt;br /&gt;
'''&lt;br /&gt;
*app/views/assignments/list_submissions.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     It was modified to add the new hyperlink to display the grading history of a submission.&lt;br /&gt;
'''&lt;br /&gt;
*config/routes.rb&lt;br /&gt;
'''&lt;br /&gt;
     It was to add the new route for grading histories&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
=='''Solutions - Implemented'''==&lt;br /&gt;
&lt;br /&gt;
'''E1934'''&lt;br /&gt;
&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. 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. &lt;br /&gt;
:2. In the view grading record page, remove the receiver column and add it to the title &lt;br /&gt;
:3. Restrict the column width on the grading record page &lt;br /&gt;
:4. Add comments on list_submissions.html.erb to indicate that the alignment was changed to fix code climate issues &lt;br /&gt;
:5. Ensure that white space changes are separate commits &lt;br /&gt;
:6. Revert changes made to list_review_mapping.html.erb &lt;br /&gt;
:7. Remove the review_report_html.erb file&lt;br /&gt;
:8. Design doc – mention why each of those files were changed&lt;br /&gt;
&lt;br /&gt;
'''Solutions''' &lt;br /&gt;
:1. Found the correct location to put the Review Grading History link and also fix the previous teams creation of a grading history to work with the latest expertiza update. &lt;br /&gt;
Files changed include: &lt;br /&gt;
*[https://github.com/ErikLG360/expertiza/commit/c0352cb73f7de1fba72938df2953ee82cb84bb6a app/controllers/review_mapping_controller.rb]&lt;br /&gt;
*[https://github.com/ErikLG360/expertiza/commit/c0352cb73f7de1fba72938df2953ee82cb84bb6a app/views/reports/_review_report.html.erb]&lt;br /&gt;
&lt;br /&gt;
:2. The previous implementatation of E2237 tackled this problem and moved it to the title.&lt;br /&gt;
[[File:GradingTableTitle.png]]&lt;br /&gt;
:3. The column widths were lessened by about 15px in the grading record page&lt;br /&gt;
&lt;br /&gt;
Files changed include:&lt;br /&gt;
*[https://github.com/ErikLG360/expertiza/commit/124bd12d23f75db0a68e2fac8a8487c5f7a7ed67 app/views/grading_histories/index.html.erb]&lt;br /&gt;
&lt;br /&gt;
:4. There were no code climate issues regarding this issue&lt;br /&gt;
&lt;br /&gt;
:5. All code climate changes are their own commits such as [https://github.com/ErikLG360/expertiza/commit/e95656f4d5e4f2ba4fc8d3f40716673ccafb41b1 This]&lt;br /&gt;
&lt;br /&gt;
:6. This issue was resolved by not adding in their implementation for the list_review_mapping.html.erb&lt;br /&gt;
&lt;br /&gt;
:7. This issue was resolved by not adding in the review_report_html.erb file&lt;br /&gt;
&lt;br /&gt;
:8. This issue is resolved in the '''Reimplementation''' section of this document&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''E2237'''&lt;br /&gt;
&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. Redundant files generated by scaffolding need to be removed, along with debugging code. Ex) Coffee created by scaffolding and console logging for debugging. &lt;br /&gt;
:2. Authentication could be done using existing utilities, no need to create their own. &lt;br /&gt;
:3. Some formatting changes could be done especially on how cells span in review report page. Ex) Formatting change for spans in between cells in review report.&lt;br /&gt;
:4. Code from previous implementation is a concern.&lt;br /&gt;
&lt;br /&gt;
'''Solutions''' &lt;br /&gt;
:1. These files have not been added.&lt;br /&gt;
:2. The authentication already used the necessary parts&lt;br /&gt;
:3. The column width was reduced by 15px refer to the solution for E1934 number 3.&lt;br /&gt;
:4. Code for the review_mapping_controller was changed to match the current state of expertiza refer to the solution for E1934 number 1.&lt;br /&gt;
&lt;br /&gt;
=='''Resulting Views'''==&lt;br /&gt;
This is the view in the view submissions page that displays the link for the Submissions Grading History which is circled in red.&lt;br /&gt;
[[File:SubmissionsGradingHistoryLink.jpeg]]&lt;br /&gt;
&lt;br /&gt;
This is the resulting view after clicking the link:&lt;br /&gt;
[[File:SubmissionGradingHist.png]]&lt;br /&gt;
&lt;br /&gt;
This is the view in the review report page that displays the link for the Reviews Grading History which is circled in red.&lt;br /&gt;
[[File:ReviewGradingHistoryLink.jpeg]]&lt;br /&gt;
&lt;br /&gt;
This is the resulting view after clicking the Reviews Grading History link:&lt;br /&gt;
[[File:ReviewsGradingHist.png]]&lt;br /&gt;
&lt;br /&gt;
=='''Testing Plan'''==&lt;br /&gt;
We have added a test case to test if a grading history is getting created when valid parameters are used. &lt;br /&gt;
The files include&lt;br /&gt;
spec/controllers/grading_histories_controller_test.rb&lt;br /&gt;
spec/factories/factories.rb&lt;br /&gt;
spec/features/grade_histories_spec.rb&lt;br /&gt;
spec/helpers/grade_histories_helper_spec.rb&lt;br /&gt;
&lt;br /&gt;
https://github.com/expertiza/expertiza/commit/067b52315ac1ff7ce1b89fc44121393cadbabc6a&lt;br /&gt;
&lt;br /&gt;
=='''Future Scope'''==&lt;br /&gt;
This project may need further improvement since it does not seem like there should be an abundance of files added and perhaps using the MVC design is not necessarily needed. There can also be a reduction of code since the difference between the two main grading histories is just whether it is a review or submission type.&lt;br /&gt;
&lt;br /&gt;
=='''Relevant Links'''==&lt;br /&gt;
* '''Github Repository:''' https://github.com/ErikLG360/expertiza&lt;br /&gt;
* '''Pull Request:''' https://github.com/expertiza/expertiza/pull/2696&lt;br /&gt;
* '''VCL Server (Valid until 12/15/23):'''  http://152.7.179.44:8080&lt;br /&gt;
* '''Video:''' https://drive.google.com/file/d/1HIrJtCsbZXSqGPHShuV6mbSTOKvV5MxT/view?usp=drive_link&lt;br /&gt;
&lt;br /&gt;
=='''Contributors to this project'''==&lt;br /&gt;
*Amulya Usem&lt;br /&gt;
*Erik Lopez-Godinez&lt;br /&gt;
*Gowtham Pollam&lt;br /&gt;
&lt;br /&gt;
*'''Mentor''': Srilekha Gudipati&lt;/div&gt;</summary>
		<author><name>Ealopezg</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2023_-_E2383._Grading_Audit_Trail&amp;diff=152698</id>
		<title>CSC/ECE 517 Fall 2023 - E2383. Grading Audit Trail</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2023_-_E2383._Grading_Audit_Trail&amp;diff=152698"/>
		<updated>2023-12-05T05:27:59Z</updated>

		<summary type="html">&lt;p&gt;Ealopezg: /* Resulting Views */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=='''Introduction'''==&lt;br /&gt;
&lt;br /&gt;
===Problem Statement===&lt;br /&gt;
In the current implementation of expertiza, any instructor can assign or edit a grade but there is no way to track who gave the grade and when. &lt;br /&gt;
&lt;br /&gt;
A grading audit trail must be created and the following information needs to be stored:&lt;br /&gt;
&lt;br /&gt;
1. When a grade is assigned by an instructor, there needs to be an indication of who did it and when it was done.&lt;br /&gt;
2. Comments previously provided by other instructors must also be preserved.&lt;br /&gt;
This information needs to be stored every time an instructor edits a grade/comment and clicks the save button.&lt;br /&gt;
&lt;br /&gt;
Currently, there are two places need to add grading audit trail:&lt;br /&gt;
&lt;br /&gt;
1. Review grade: Log in as instructor -&amp;gt; Manage -&amp;gt; Assignments -&amp;gt; View Review Report&lt;br /&gt;
2. Submission grade: Log in as instructor -&amp;gt; Manage -&amp;gt; Assignments -&amp;gt; View submissions&lt;br /&gt;
The grading audit trail can probably be implemented as the submission records history on Expertiza. The required page can be reached by logging in as instructor -&amp;gt; Manage -&amp;gt; Assignments -&amp;gt; View Submissions -&amp;gt; History&lt;br /&gt;
&lt;br /&gt;
At the minimum, a grading log entry must include the instructor id, assignment id, student id, grade, comment and timestamp.&lt;br /&gt;
&lt;br /&gt;
Previous student teams have attempted to implement this functionality, but their implementations had issues. Our solution will build on the work of teams E1934 and E2237, addressing the problems in their implementations.&lt;br /&gt;
&lt;br /&gt;
== '''Overview of Major Changes By Previous Teams''' ==&lt;br /&gt;
===[https://wiki-expertiza.csc.ncsu.edu/index.php/E1934_-_Grading_Audit_Trail E1934]===&lt;br /&gt;
[https://youtu.be/yyxX_kRYxLc Their Screencast]&lt;br /&gt;
&lt;br /&gt;
*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)&lt;br /&gt;
*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.&lt;br /&gt;
*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.&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. 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. &lt;br /&gt;
:2. In the view grading record page, remove the receiver column and add it to the title &lt;br /&gt;
:3. Restrict the column width on the grading record page &lt;br /&gt;
:4. Add comments on list_submissions.html.erb to indicate that the alignment was changed to fix code climate issues &lt;br /&gt;
:5. Ensure that white space changes are separate commits &lt;br /&gt;
:6. Revert changes made to list_review_mapping.html.erb &lt;br /&gt;
:7. Remove the review_report_html.erb file&lt;br /&gt;
:8. Design doc – mention why each of those files were changed&lt;br /&gt;
&lt;br /&gt;
===[https://wiki-expertiza.csc.ncsu.edu/index.php/CSC/ECE_517_Spring_2022_-_E2237:_Grading_audit_trail E2237]===&lt;br /&gt;
&lt;br /&gt;
*They fixed some issues that were causing the system to crash during testing&lt;br /&gt;
*Altered the Grading History view&lt;br /&gt;
*Explained the reasoning for changes made to files using diagrams and justifications&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. Redundant files generated by scaffolding need to be removed, along with debugging code. Ex) Coffee created by scaffolding and console logging for debugging. &lt;br /&gt;
:2. Authentication could be done using existing utilities, no need to create their own. &lt;br /&gt;
:3. Some formatting changes could be done especially on how cells span in review report page. Ex) Formatting change for spans in between cells in review report.&lt;br /&gt;
:4. Code from previous implementation is a concern.&lt;br /&gt;
&lt;br /&gt;
=='''Proposed Solution'''==&lt;br /&gt;
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. These files cannot be added haphazardly since parts of the implementation is a cause to concern and caused the changes to not be implemented. It is also using an older version of expertiza so some parts may not be compatible.  &lt;br /&gt;
&lt;br /&gt;
We must first figure out exactly what changes and issues to address in their implementation by meeting with our mentor. We also need to reimplement the following files since none of their changes were implemented:&lt;br /&gt;
&lt;br /&gt;
*app/controllers/grading_histories_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     Calls the grading history view after validating Submission and Review Type.&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/grading_history.rb &lt;br /&gt;
'''&lt;br /&gt;
     Model for Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/review_grading_history.rb &lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Model containing specifics of Review Grading History. Inherits Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/submission_grading_history.rb &lt;br /&gt;
'''&lt;br /&gt;
     Model containing specifics of Submission Grading History. Inherits Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/views/grading_history/index_html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This is a view for grading audit trail, it will display all grading histories of a &lt;br /&gt;
     submission/review&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*spec/features/grade_histories_spec.rb&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Feature test to check if the grades appear in chronological order&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*spec/features/helpers/grade_histories_helper.rb&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Helper file to facilitate the above mentioned feature test.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
=='''Reimplementation'''==&lt;br /&gt;
Since the previous teams implementations were not integrated we have to reimplement their files which we will do by looking at their commits and pull request to see what files are necessary and what can be left out to address the issues of their implementation.&lt;br /&gt;
&lt;br /&gt;
'''[https://github.com/ErikLG360/expertiza/commit/e28a857695549cc91c477587707e48100d2bd333 Files being Reimplemented/Modified]'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Reimplemented'''&lt;br /&gt;
*app/controllers/grading_histories_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was added to deal with allowing only the correct people to view the grading history, checking the assignment type whether it be a submission or review, and indexing all the grading history for the assignment in chronological order.&lt;br /&gt;
'''&lt;br /&gt;
*app/models/grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was added to create the relationships that the grading history has with an instructor who is creating the parts of the grading history and the assignments that will have a grading history.&lt;br /&gt;
'''&lt;br /&gt;
*app/models/review_grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file creates the relationship that a participant will have a Review Grading History &lt;br /&gt;
'''&lt;br /&gt;
*app/models/submission_grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file create the relationship that a participant/grade_reciever will have a Submission Grading History&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/views/grading_histories/index.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This file contains the view for the grading history table which will change depending on if its a Review or submission type&lt;br /&gt;
'''&lt;br /&gt;
*app/views/grading_histories/_form.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This file contains the view for when a grading history contains any error when it is about to be saved&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
'''Modified'''&lt;br /&gt;
*app/controllers/grades_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was modified based off the previous teams implementation because when the method save_grade_and_comment_for_submission was called it should also create a grading history so that&lt;br /&gt;
 the grading audit can be created and added to. This was mainly focusing on the grading history of submissions and not reviews.&lt;br /&gt;
'''&lt;br /&gt;
*app/controllers/review_mapping_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was modified based off the previous teams implementation because when the method save_grade_and_comment_for_reviewer was called it should also create a grading history so that&lt;br /&gt;
 the grading audit can be created and added to. This was mainly focusing on the grading history of reviews and not submissions.&lt;br /&gt;
'''&lt;br /&gt;
*app/views/assignments/list_submissions.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     It was modified to add the new hyperlink to display the grading history of a submission.&lt;br /&gt;
'''&lt;br /&gt;
*config/routes.rb&lt;br /&gt;
'''&lt;br /&gt;
     It was to add the new route for grading histories&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
=='''Solutions - Implemented'''==&lt;br /&gt;
&lt;br /&gt;
'''E1934'''&lt;br /&gt;
&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. 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. &lt;br /&gt;
:2. In the view grading record page, remove the receiver column and add it to the title &lt;br /&gt;
:3. Restrict the column width on the grading record page &lt;br /&gt;
:4. Add comments on list_submissions.html.erb to indicate that the alignment was changed to fix code climate issues &lt;br /&gt;
:5. Ensure that white space changes are separate commits &lt;br /&gt;
:6. Revert changes made to list_review_mapping.html.erb &lt;br /&gt;
:7. Remove the review_report_html.erb file&lt;br /&gt;
:8. Design doc – mention why each of those files were changed&lt;br /&gt;
&lt;br /&gt;
'''Solutions''' &lt;br /&gt;
:1. Found the correct location to put the Review Grading History link and also fix the previous teams creation of a grading history to work with the latest expertiza update. &lt;br /&gt;
Files changed include: &lt;br /&gt;
*[https://github.com/ErikLG360/expertiza/commit/c0352cb73f7de1fba72938df2953ee82cb84bb6a app/controllers/review_mapping_controller.rb]&lt;br /&gt;
*[https://github.com/ErikLG360/expertiza/commit/c0352cb73f7de1fba72938df2953ee82cb84bb6a app/views/reports/_review_report.html.erb]&lt;br /&gt;
&lt;br /&gt;
:2. The previous implementatation of E2237 tackled this problem and moved it to the title.&lt;br /&gt;
[[File:GradingTableTitle.png]]&lt;br /&gt;
:3. The column widths were lessened by about 15px in the grading record page&lt;br /&gt;
&lt;br /&gt;
Files changed include:&lt;br /&gt;
*[https://github.com/ErikLG360/expertiza/commit/124bd12d23f75db0a68e2fac8a8487c5f7a7ed67 app/views/grading_histories/index.html.erb]&lt;br /&gt;
&lt;br /&gt;
:4. There were no code climate issues regarding this issue&lt;br /&gt;
&lt;br /&gt;
:5. All code climate changes are their own commits such as [https://github.com/ErikLG360/expertiza/commit/e95656f4d5e4f2ba4fc8d3f40716673ccafb41b1 This]&lt;br /&gt;
&lt;br /&gt;
:6. This issue was resolved by not adding in their implementation for the list_review_mapping.html.erb&lt;br /&gt;
&lt;br /&gt;
:7. This issue was resolved by not adding in the review_report_html.erb file&lt;br /&gt;
&lt;br /&gt;
:8. This issue is resolved in the '''Reimplementation''' section of this document&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''E2237'''&lt;br /&gt;
&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. Redundant files generated by scaffolding need to be removed, along with debugging code. Ex) Coffee created by scaffolding and console logging for debugging. &lt;br /&gt;
:2. Authentication could be done using existing utilities, no need to create their own. &lt;br /&gt;
:3. Some formatting changes could be done especially on how cells span in review report page. Ex) Formatting change for spans in between cells in review report.&lt;br /&gt;
:4. Code from previous implementation is a concern.&lt;br /&gt;
&lt;br /&gt;
'''Solutions''' &lt;br /&gt;
:1. These files have not been added.&lt;br /&gt;
:2. The authentication already used the necessary parts&lt;br /&gt;
:3. The column width was reduced by 15px refer to the solution for E1934 number 3.&lt;br /&gt;
:4. Code for the review_mapping_controller was changed to match the current state of expertiza refer to the solution for E1934 number 1.&lt;br /&gt;
&lt;br /&gt;
=='''Resulting Views'''==&lt;br /&gt;
This is the view in the view submissions page that displays the link for the Submissions Grading History which is circled in red.&lt;br /&gt;
[[File:SubmissionsGradingHistoryLink.jpeg]]&lt;br /&gt;
&lt;br /&gt;
This is the resulting view after clicking the link:&lt;br /&gt;
[[File:SubmissionGradingHist.png]]&lt;br /&gt;
&lt;br /&gt;
This is the view in the review report page that displays the link for the Reviews Grading History which is circled in red.&lt;br /&gt;
[[File:ReviewGradingHistoryLink.jpeg]]&lt;br /&gt;
&lt;br /&gt;
This is the resulting view after clicking the Reviews Grading History link:&lt;br /&gt;
[[File:ReviewsGradingHist.png]]&lt;br /&gt;
&lt;br /&gt;
=='''Testing Plan'''==&lt;br /&gt;
We have added a test case to test if a grading history is getting created when valid parameters are used. &lt;br /&gt;
The files include&lt;br /&gt;
spec/controllers/grading_histories_controller_test.rb&lt;br /&gt;
spec/factories/factories.rb&lt;br /&gt;
spec/features/grade_histories_spec.rb&lt;br /&gt;
spec/helpers/grade_histories_helper_spec.rb&lt;br /&gt;
&lt;br /&gt;
https://github.com/expertiza/expertiza/commit/067b52315ac1ff7ce1b89fc44121393cadbabc6a&lt;br /&gt;
&lt;br /&gt;
=='''Future Scope'''==&lt;br /&gt;
This project may need further improvement since it does not seem like there should be an abundance of files added and perhaps using the MVC design is not necessarily needed. There can also be a reduction of code since the difference between the two main grading histories is just whether it is a review or submission type.&lt;br /&gt;
&lt;br /&gt;
=='''Relevant Links'''==&lt;br /&gt;
* '''Github Repository:''' https://github.com/ErikLG360/expertiza&lt;br /&gt;
* '''Pull Request:''' https://github.com/expertiza/expertiza/pull/2696&lt;br /&gt;
* '''VCL Server (Valid until 12/15/23):'''  http://152.7.179.44:8080&lt;br /&gt;
* '''Video:''' https://drive.google.com/file/d/1HIrJtCsbZXSqGPHShuV6mbSTOKvV5MxT/view?usp=drive_link&lt;br /&gt;
&lt;br /&gt;
=='''Contributors to this project'''==&lt;br /&gt;
*Amulya Usem&lt;br /&gt;
*Erik Lopez-Godinez&lt;br /&gt;
*Gowtham Pollam&lt;br /&gt;
&lt;br /&gt;
*'''Mentor''': Srilekha Gudipati&lt;/div&gt;</summary>
		<author><name>Ealopezg</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2023_-_E2383._Grading_Audit_Trail&amp;diff=152697</id>
		<title>CSC/ECE 517 Fall 2023 - E2383. Grading Audit Trail</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2023_-_E2383._Grading_Audit_Trail&amp;diff=152697"/>
		<updated>2023-12-05T05:27:28Z</updated>

		<summary type="html">&lt;p&gt;Ealopezg: /* Resulting Views */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=='''Introduction'''==&lt;br /&gt;
&lt;br /&gt;
===Problem Statement===&lt;br /&gt;
In the current implementation of expertiza, any instructor can assign or edit a grade but there is no way to track who gave the grade and when. &lt;br /&gt;
&lt;br /&gt;
A grading audit trail must be created and the following information needs to be stored:&lt;br /&gt;
&lt;br /&gt;
1. When a grade is assigned by an instructor, there needs to be an indication of who did it and when it was done.&lt;br /&gt;
2. Comments previously provided by other instructors must also be preserved.&lt;br /&gt;
This information needs to be stored every time an instructor edits a grade/comment and clicks the save button.&lt;br /&gt;
&lt;br /&gt;
Currently, there are two places need to add grading audit trail:&lt;br /&gt;
&lt;br /&gt;
1. Review grade: Log in as instructor -&amp;gt; Manage -&amp;gt; Assignments -&amp;gt; View Review Report&lt;br /&gt;
2. Submission grade: Log in as instructor -&amp;gt; Manage -&amp;gt; Assignments -&amp;gt; View submissions&lt;br /&gt;
The grading audit trail can probably be implemented as the submission records history on Expertiza. The required page can be reached by logging in as instructor -&amp;gt; Manage -&amp;gt; Assignments -&amp;gt; View Submissions -&amp;gt; History&lt;br /&gt;
&lt;br /&gt;
At the minimum, a grading log entry must include the instructor id, assignment id, student id, grade, comment and timestamp.&lt;br /&gt;
&lt;br /&gt;
Previous student teams have attempted to implement this functionality, but their implementations had issues. Our solution will build on the work of teams E1934 and E2237, addressing the problems in their implementations.&lt;br /&gt;
&lt;br /&gt;
== '''Overview of Major Changes By Previous Teams''' ==&lt;br /&gt;
===[https://wiki-expertiza.csc.ncsu.edu/index.php/E1934_-_Grading_Audit_Trail E1934]===&lt;br /&gt;
[https://youtu.be/yyxX_kRYxLc Their Screencast]&lt;br /&gt;
&lt;br /&gt;
*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)&lt;br /&gt;
*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.&lt;br /&gt;
*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.&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. 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. &lt;br /&gt;
:2. In the view grading record page, remove the receiver column and add it to the title &lt;br /&gt;
:3. Restrict the column width on the grading record page &lt;br /&gt;
:4. Add comments on list_submissions.html.erb to indicate that the alignment was changed to fix code climate issues &lt;br /&gt;
:5. Ensure that white space changes are separate commits &lt;br /&gt;
:6. Revert changes made to list_review_mapping.html.erb &lt;br /&gt;
:7. Remove the review_report_html.erb file&lt;br /&gt;
:8. Design doc – mention why each of those files were changed&lt;br /&gt;
&lt;br /&gt;
===[https://wiki-expertiza.csc.ncsu.edu/index.php/CSC/ECE_517_Spring_2022_-_E2237:_Grading_audit_trail E2237]===&lt;br /&gt;
&lt;br /&gt;
*They fixed some issues that were causing the system to crash during testing&lt;br /&gt;
*Altered the Grading History view&lt;br /&gt;
*Explained the reasoning for changes made to files using diagrams and justifications&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. Redundant files generated by scaffolding need to be removed, along with debugging code. Ex) Coffee created by scaffolding and console logging for debugging. &lt;br /&gt;
:2. Authentication could be done using existing utilities, no need to create their own. &lt;br /&gt;
:3. Some formatting changes could be done especially on how cells span in review report page. Ex) Formatting change for spans in between cells in review report.&lt;br /&gt;
:4. Code from previous implementation is a concern.&lt;br /&gt;
&lt;br /&gt;
=='''Proposed Solution'''==&lt;br /&gt;
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. These files cannot be added haphazardly since parts of the implementation is a cause to concern and caused the changes to not be implemented. It is also using an older version of expertiza so some parts may not be compatible.  &lt;br /&gt;
&lt;br /&gt;
We must first figure out exactly what changes and issues to address in their implementation by meeting with our mentor. We also need to reimplement the following files since none of their changes were implemented:&lt;br /&gt;
&lt;br /&gt;
*app/controllers/grading_histories_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     Calls the grading history view after validating Submission and Review Type.&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/grading_history.rb &lt;br /&gt;
'''&lt;br /&gt;
     Model for Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/review_grading_history.rb &lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Model containing specifics of Review Grading History. Inherits Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/submission_grading_history.rb &lt;br /&gt;
'''&lt;br /&gt;
     Model containing specifics of Submission Grading History. Inherits Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/views/grading_history/index_html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This is a view for grading audit trail, it will display all grading histories of a &lt;br /&gt;
     submission/review&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*spec/features/grade_histories_spec.rb&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Feature test to check if the grades appear in chronological order&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*spec/features/helpers/grade_histories_helper.rb&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Helper file to facilitate the above mentioned feature test.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
=='''Reimplementation'''==&lt;br /&gt;
Since the previous teams implementations were not integrated we have to reimplement their files which we will do by looking at their commits and pull request to see what files are necessary and what can be left out to address the issues of their implementation.&lt;br /&gt;
&lt;br /&gt;
'''[https://github.com/ErikLG360/expertiza/commit/e28a857695549cc91c477587707e48100d2bd333 Files being Reimplemented/Modified]'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Reimplemented'''&lt;br /&gt;
*app/controllers/grading_histories_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was added to deal with allowing only the correct people to view the grading history, checking the assignment type whether it be a submission or review, and indexing all the grading history for the assignment in chronological order.&lt;br /&gt;
'''&lt;br /&gt;
*app/models/grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was added to create the relationships that the grading history has with an instructor who is creating the parts of the grading history and the assignments that will have a grading history.&lt;br /&gt;
'''&lt;br /&gt;
*app/models/review_grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file creates the relationship that a participant will have a Review Grading History &lt;br /&gt;
'''&lt;br /&gt;
*app/models/submission_grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file create the relationship that a participant/grade_reciever will have a Submission Grading History&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/views/grading_histories/index.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This file contains the view for the grading history table which will change depending on if its a Review or submission type&lt;br /&gt;
'''&lt;br /&gt;
*app/views/grading_histories/_form.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This file contains the view for when a grading history contains any error when it is about to be saved&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
'''Modified'''&lt;br /&gt;
*app/controllers/grades_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was modified based off the previous teams implementation because when the method save_grade_and_comment_for_submission was called it should also create a grading history so that&lt;br /&gt;
 the grading audit can be created and added to. This was mainly focusing on the grading history of submissions and not reviews.&lt;br /&gt;
'''&lt;br /&gt;
*app/controllers/review_mapping_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was modified based off the previous teams implementation because when the method save_grade_and_comment_for_reviewer was called it should also create a grading history so that&lt;br /&gt;
 the grading audit can be created and added to. This was mainly focusing on the grading history of reviews and not submissions.&lt;br /&gt;
'''&lt;br /&gt;
*app/views/assignments/list_submissions.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     It was modified to add the new hyperlink to display the grading history of a submission.&lt;br /&gt;
'''&lt;br /&gt;
*config/routes.rb&lt;br /&gt;
'''&lt;br /&gt;
     It was to add the new route for grading histories&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
=='''Solutions - Implemented'''==&lt;br /&gt;
&lt;br /&gt;
'''E1934'''&lt;br /&gt;
&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. 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. &lt;br /&gt;
:2. In the view grading record page, remove the receiver column and add it to the title &lt;br /&gt;
:3. Restrict the column width on the grading record page &lt;br /&gt;
:4. Add comments on list_submissions.html.erb to indicate that the alignment was changed to fix code climate issues &lt;br /&gt;
:5. Ensure that white space changes are separate commits &lt;br /&gt;
:6. Revert changes made to list_review_mapping.html.erb &lt;br /&gt;
:7. Remove the review_report_html.erb file&lt;br /&gt;
:8. Design doc – mention why each of those files were changed&lt;br /&gt;
&lt;br /&gt;
'''Solutions''' &lt;br /&gt;
:1. Found the correct location to put the Review Grading History link and also fix the previous teams creation of a grading history to work with the latest expertiza update. &lt;br /&gt;
Files changed include: &lt;br /&gt;
*[https://github.com/ErikLG360/expertiza/commit/c0352cb73f7de1fba72938df2953ee82cb84bb6a app/controllers/review_mapping_controller.rb]&lt;br /&gt;
*[https://github.com/ErikLG360/expertiza/commit/c0352cb73f7de1fba72938df2953ee82cb84bb6a app/views/reports/_review_report.html.erb]&lt;br /&gt;
&lt;br /&gt;
:2. The previous implementatation of E2237 tackled this problem and moved it to the title.&lt;br /&gt;
[[File:GradingTableTitle.png]]&lt;br /&gt;
:3. The column widths were lessened by about 15px in the grading record page&lt;br /&gt;
&lt;br /&gt;
Files changed include:&lt;br /&gt;
*[https://github.com/ErikLG360/expertiza/commit/124bd12d23f75db0a68e2fac8a8487c5f7a7ed67 app/views/grading_histories/index.html.erb]&lt;br /&gt;
&lt;br /&gt;
:4. There were no code climate issues regarding this issue&lt;br /&gt;
&lt;br /&gt;
:5. All code climate changes are their own commits such as [https://github.com/ErikLG360/expertiza/commit/e95656f4d5e4f2ba4fc8d3f40716673ccafb41b1 This]&lt;br /&gt;
&lt;br /&gt;
:6. This issue was resolved by not adding in their implementation for the list_review_mapping.html.erb&lt;br /&gt;
&lt;br /&gt;
:7. This issue was resolved by not adding in the review_report_html.erb file&lt;br /&gt;
&lt;br /&gt;
:8. This issue is resolved in the '''Reimplementation''' section of this document&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''E2237'''&lt;br /&gt;
&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. Redundant files generated by scaffolding need to be removed, along with debugging code. Ex) Coffee created by scaffolding and console logging for debugging. &lt;br /&gt;
:2. Authentication could be done using existing utilities, no need to create their own. &lt;br /&gt;
:3. Some formatting changes could be done especially on how cells span in review report page. Ex) Formatting change for spans in between cells in review report.&lt;br /&gt;
:4. Code from previous implementation is a concern.&lt;br /&gt;
&lt;br /&gt;
'''Solutions''' &lt;br /&gt;
:1. These files have not been added.&lt;br /&gt;
:2. The authentication already used the necessary parts&lt;br /&gt;
:3. The column width was reduced by 15px refer to the solution for E1934 number 3.&lt;br /&gt;
:4. Code for the review_mapping_controller was changed to match the current state of expertiza refer to the solution for E1934 number 1.&lt;br /&gt;
&lt;br /&gt;
=='''Resulting Views'''==&lt;br /&gt;
This is the view in the view submissions page that displays the link for the Submissions Grading History which is circled in red.&lt;br /&gt;
[[File:SubmissionsGradingHistoryLink.jpeg]]&lt;br /&gt;
This is the resulting view after clicking the link:&lt;br /&gt;
[[File:SubmissionGradingHist.png]]&lt;br /&gt;
This is the view in the review report page that displays the link for the Reviews Grading History which is circled in red.&lt;br /&gt;
[[File:ReviewGradingHistoryLink.jpeg]]&lt;br /&gt;
This is the resulting view after clicking the Reviews Grading History link:&lt;br /&gt;
[[File:ReviewsGradingHist.png]]&lt;br /&gt;
&lt;br /&gt;
=='''Testing Plan'''==&lt;br /&gt;
We have added a test case to test if a grading history is getting created when valid parameters are used. &lt;br /&gt;
The files include&lt;br /&gt;
spec/controllers/grading_histories_controller_test.rb&lt;br /&gt;
spec/factories/factories.rb&lt;br /&gt;
spec/features/grade_histories_spec.rb&lt;br /&gt;
spec/helpers/grade_histories_helper_spec.rb&lt;br /&gt;
&lt;br /&gt;
https://github.com/expertiza/expertiza/commit/067b52315ac1ff7ce1b89fc44121393cadbabc6a&lt;br /&gt;
&lt;br /&gt;
=='''Future Scope'''==&lt;br /&gt;
This project may need further improvement since it does not seem like there should be an abundance of files added and perhaps using the MVC design is not necessarily needed. There can also be a reduction of code since the difference between the two main grading histories is just whether it is a review or submission type.&lt;br /&gt;
&lt;br /&gt;
=='''Relevant Links'''==&lt;br /&gt;
* '''Github Repository:''' https://github.com/ErikLG360/expertiza&lt;br /&gt;
* '''Pull Request:''' https://github.com/expertiza/expertiza/pull/2696&lt;br /&gt;
* '''VCL Server (Valid until 12/15/23):'''  http://152.7.179.44:8080&lt;br /&gt;
* '''Video:''' https://drive.google.com/file/d/1HIrJtCsbZXSqGPHShuV6mbSTOKvV5MxT/view?usp=drive_link&lt;br /&gt;
&lt;br /&gt;
=='''Contributors to this project'''==&lt;br /&gt;
*Amulya Usem&lt;br /&gt;
*Erik Lopez-Godinez&lt;br /&gt;
*Gowtham Pollam&lt;br /&gt;
&lt;br /&gt;
*'''Mentor''': Srilekha Gudipati&lt;/div&gt;</summary>
		<author><name>Ealopezg</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=File:ReviewsGradingHist.png&amp;diff=152696</id>
		<title>File:ReviewsGradingHist.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=File:ReviewsGradingHist.png&amp;diff=152696"/>
		<updated>2023-12-05T05:27:12Z</updated>

		<summary type="html">&lt;p&gt;Ealopezg: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Ealopezg</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=File:SubmissionGradingHist.png&amp;diff=152693</id>
		<title>File:SubmissionGradingHist.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=File:SubmissionGradingHist.png&amp;diff=152693"/>
		<updated>2023-12-05T05:25:30Z</updated>

		<summary type="html">&lt;p&gt;Ealopezg: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Ealopezg</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=File:SubmissionsGradingHistoryLink.jpeg&amp;diff=152689</id>
		<title>File:SubmissionsGradingHistoryLink.jpeg</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=File:SubmissionsGradingHistoryLink.jpeg&amp;diff=152689"/>
		<updated>2023-12-05T05:22:50Z</updated>

		<summary type="html">&lt;p&gt;Ealopezg: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Ealopezg</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2023_-_E2383._Grading_Audit_Trail&amp;diff=152681</id>
		<title>CSC/ECE 517 Fall 2023 - E2383. Grading Audit Trail</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2023_-_E2383._Grading_Audit_Trail&amp;diff=152681"/>
		<updated>2023-12-05T05:19:07Z</updated>

		<summary type="html">&lt;p&gt;Ealopezg: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=='''Introduction'''==&lt;br /&gt;
&lt;br /&gt;
===Problem Statement===&lt;br /&gt;
In the current implementation of expertiza, any instructor can assign or edit a grade but there is no way to track who gave the grade and when. &lt;br /&gt;
&lt;br /&gt;
A grading audit trail must be created and the following information needs to be stored:&lt;br /&gt;
&lt;br /&gt;
1. When a grade is assigned by an instructor, there needs to be an indication of who did it and when it was done.&lt;br /&gt;
2. Comments previously provided by other instructors must also be preserved.&lt;br /&gt;
This information needs to be stored every time an instructor edits a grade/comment and clicks the save button.&lt;br /&gt;
&lt;br /&gt;
Currently, there are two places need to add grading audit trail:&lt;br /&gt;
&lt;br /&gt;
1. Review grade: Log in as instructor -&amp;gt; Manage -&amp;gt; Assignments -&amp;gt; View Review Report&lt;br /&gt;
2. Submission grade: Log in as instructor -&amp;gt; Manage -&amp;gt; Assignments -&amp;gt; View submissions&lt;br /&gt;
The grading audit trail can probably be implemented as the submission records history on Expertiza. The required page can be reached by logging in as instructor -&amp;gt; Manage -&amp;gt; Assignments -&amp;gt; View Submissions -&amp;gt; History&lt;br /&gt;
&lt;br /&gt;
At the minimum, a grading log entry must include the instructor id, assignment id, student id, grade, comment and timestamp.&lt;br /&gt;
&lt;br /&gt;
Previous student teams have attempted to implement this functionality, but their implementations had issues. Our solution will build on the work of teams E1934 and E2237, addressing the problems in their implementations.&lt;br /&gt;
&lt;br /&gt;
== '''Overview of Major Changes By Previous Teams''' ==&lt;br /&gt;
===[https://wiki-expertiza.csc.ncsu.edu/index.php/E1934_-_Grading_Audit_Trail E1934]===&lt;br /&gt;
[https://youtu.be/yyxX_kRYxLc Their Screencast]&lt;br /&gt;
&lt;br /&gt;
*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)&lt;br /&gt;
*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.&lt;br /&gt;
*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.&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. 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. &lt;br /&gt;
:2. In the view grading record page, remove the receiver column and add it to the title &lt;br /&gt;
:3. Restrict the column width on the grading record page &lt;br /&gt;
:4. Add comments on list_submissions.html.erb to indicate that the alignment was changed to fix code climate issues &lt;br /&gt;
:5. Ensure that white space changes are separate commits &lt;br /&gt;
:6. Revert changes made to list_review_mapping.html.erb &lt;br /&gt;
:7. Remove the review_report_html.erb file&lt;br /&gt;
:8. Design doc – mention why each of those files were changed&lt;br /&gt;
&lt;br /&gt;
===[https://wiki-expertiza.csc.ncsu.edu/index.php/CSC/ECE_517_Spring_2022_-_E2237:_Grading_audit_trail E2237]===&lt;br /&gt;
&lt;br /&gt;
*They fixed some issues that were causing the system to crash during testing&lt;br /&gt;
*Altered the Grading History view&lt;br /&gt;
*Explained the reasoning for changes made to files using diagrams and justifications&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. Redundant files generated by scaffolding need to be removed, along with debugging code. Ex) Coffee created by scaffolding and console logging for debugging. &lt;br /&gt;
:2. Authentication could be done using existing utilities, no need to create their own. &lt;br /&gt;
:3. Some formatting changes could be done especially on how cells span in review report page. Ex) Formatting change for spans in between cells in review report.&lt;br /&gt;
:4. Code from previous implementation is a concern.&lt;br /&gt;
&lt;br /&gt;
=='''Proposed Solution'''==&lt;br /&gt;
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. These files cannot be added haphazardly since parts of the implementation is a cause to concern and caused the changes to not be implemented. It is also using an older version of expertiza so some parts may not be compatible.  &lt;br /&gt;
&lt;br /&gt;
We must first figure out exactly what changes and issues to address in their implementation by meeting with our mentor. We also need to reimplement the following files since none of their changes were implemented:&lt;br /&gt;
&lt;br /&gt;
*app/controllers/grading_histories_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     Calls the grading history view after validating Submission and Review Type.&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/grading_history.rb &lt;br /&gt;
'''&lt;br /&gt;
     Model for Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/review_grading_history.rb &lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Model containing specifics of Review Grading History. Inherits Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/submission_grading_history.rb &lt;br /&gt;
'''&lt;br /&gt;
     Model containing specifics of Submission Grading History. Inherits Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/views/grading_history/index_html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This is a view for grading audit trail, it will display all grading histories of a &lt;br /&gt;
     submission/review&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*spec/features/grade_histories_spec.rb&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Feature test to check if the grades appear in chronological order&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*spec/features/helpers/grade_histories_helper.rb&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Helper file to facilitate the above mentioned feature test.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
=='''Reimplementation'''==&lt;br /&gt;
Since the previous teams implementations were not integrated we have to reimplement their files which we will do by looking at their commits and pull request to see what files are necessary and what can be left out to address the issues of their implementation.&lt;br /&gt;
&lt;br /&gt;
'''[https://github.com/ErikLG360/expertiza/commit/e28a857695549cc91c477587707e48100d2bd333 Files being Reimplemented/Modified]'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Reimplemented'''&lt;br /&gt;
*app/controllers/grading_histories_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was added to deal with allowing only the correct people to view the grading history, checking the assignment type whether it be a submission or review, and indexing all the grading history for the assignment in chronological order.&lt;br /&gt;
'''&lt;br /&gt;
*app/models/grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was added to create the relationships that the grading history has with an instructor who is creating the parts of the grading history and the assignments that will have a grading history.&lt;br /&gt;
'''&lt;br /&gt;
*app/models/review_grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file creates the relationship that a participant will have a Review Grading History &lt;br /&gt;
'''&lt;br /&gt;
*app/models/submission_grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file create the relationship that a participant/grade_reciever will have a Submission Grading History&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/views/grading_histories/index.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This file contains the view for the grading history table which will change depending on if its a Review or submission type&lt;br /&gt;
'''&lt;br /&gt;
*app/views/grading_histories/_form.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This file contains the view for when a grading history contains any error when it is about to be saved&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
'''Modified'''&lt;br /&gt;
*app/controllers/grades_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was modified based off the previous teams implementation because when the method save_grade_and_comment_for_submission was called it should also create a grading history so that&lt;br /&gt;
 the grading audit can be created and added to. This was mainly focusing on the grading history of submissions and not reviews.&lt;br /&gt;
'''&lt;br /&gt;
*app/controllers/review_mapping_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was modified based off the previous teams implementation because when the method save_grade_and_comment_for_reviewer was called it should also create a grading history so that&lt;br /&gt;
 the grading audit can be created and added to. This was mainly focusing on the grading history of reviews and not submissions.&lt;br /&gt;
'''&lt;br /&gt;
*app/views/assignments/list_submissions.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     It was modified to add the new hyperlink to display the grading history of a submission.&lt;br /&gt;
'''&lt;br /&gt;
*config/routes.rb&lt;br /&gt;
'''&lt;br /&gt;
     It was to add the new route for grading histories&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
=='''Solutions - Implemented'''==&lt;br /&gt;
&lt;br /&gt;
'''E1934'''&lt;br /&gt;
&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. 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. &lt;br /&gt;
:2. In the view grading record page, remove the receiver column and add it to the title &lt;br /&gt;
:3. Restrict the column width on the grading record page &lt;br /&gt;
:4. Add comments on list_submissions.html.erb to indicate that the alignment was changed to fix code climate issues &lt;br /&gt;
:5. Ensure that white space changes are separate commits &lt;br /&gt;
:6. Revert changes made to list_review_mapping.html.erb &lt;br /&gt;
:7. Remove the review_report_html.erb file&lt;br /&gt;
:8. Design doc – mention why each of those files were changed&lt;br /&gt;
&lt;br /&gt;
'''Solutions''' &lt;br /&gt;
:1. Found the correct location to put the Review Grading History link and also fix the previous teams creation of a grading history to work with the latest expertiza update. &lt;br /&gt;
Files changed include: &lt;br /&gt;
*[https://github.com/ErikLG360/expertiza/commit/c0352cb73f7de1fba72938df2953ee82cb84bb6a app/controllers/review_mapping_controller.rb]&lt;br /&gt;
*[https://github.com/ErikLG360/expertiza/commit/c0352cb73f7de1fba72938df2953ee82cb84bb6a app/views/reports/_review_report.html.erb]&lt;br /&gt;
&lt;br /&gt;
:2. The previous implementatation of E2237 tackled this problem and moved it to the title.&lt;br /&gt;
[[File:GradingTableTitle.png]]&lt;br /&gt;
:3. The column widths were lessened by about 15px in the grading record page&lt;br /&gt;
&lt;br /&gt;
Files changed include:&lt;br /&gt;
*[https://github.com/ErikLG360/expertiza/commit/124bd12d23f75db0a68e2fac8a8487c5f7a7ed67 app/views/grading_histories/index.html.erb]&lt;br /&gt;
&lt;br /&gt;
:4. There were no code climate issues regarding this issue&lt;br /&gt;
&lt;br /&gt;
:5. All code climate changes are their own commits such as [https://github.com/ErikLG360/expertiza/commit/e95656f4d5e4f2ba4fc8d3f40716673ccafb41b1 This]&lt;br /&gt;
&lt;br /&gt;
:6. This issue was resolved by not adding in their implementation for the list_review_mapping.html.erb&lt;br /&gt;
&lt;br /&gt;
:7. This issue was resolved by not adding in the review_report_html.erb file&lt;br /&gt;
&lt;br /&gt;
:8. This issue is resolved in the '''Reimplementation''' section of this document&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''E2237'''&lt;br /&gt;
&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. Redundant files generated by scaffolding need to be removed, along with debugging code. Ex) Coffee created by scaffolding and console logging for debugging. &lt;br /&gt;
:2. Authentication could be done using existing utilities, no need to create their own. &lt;br /&gt;
:3. Some formatting changes could be done especially on how cells span in review report page. Ex) Formatting change for spans in between cells in review report.&lt;br /&gt;
:4. Code from previous implementation is a concern.&lt;br /&gt;
&lt;br /&gt;
'''Solutions''' &lt;br /&gt;
:1. These files have not been added.&lt;br /&gt;
:2. The authentication already used the necessary parts&lt;br /&gt;
:3. The column width was reduced by 15px refer to the solution for E1934 number 3.&lt;br /&gt;
:4. Code for the review_mapping_controller was changed to match the current state of expertiza refer to the solution for E1934 number 1.&lt;br /&gt;
&lt;br /&gt;
=='''Resulting Views'''==&lt;br /&gt;
This is the view in the review report page that displays the link for the Reviews Grading History which is circled in red.&lt;br /&gt;
[[File:ReviewGradingHistoryLink.jpeg]]&lt;br /&gt;
&lt;br /&gt;
=='''Testing Plan'''==&lt;br /&gt;
We have added a test case to test if a grading history is getting created when valid parameters are used. &lt;br /&gt;
The files include&lt;br /&gt;
spec/controllers/grading_histories_controller_test.rb&lt;br /&gt;
spec/factories/factories.rb&lt;br /&gt;
spec/features/grade_histories_spec.rb&lt;br /&gt;
spec/helpers/grade_histories_helper_spec.rb&lt;br /&gt;
&lt;br /&gt;
https://github.com/expertiza/expertiza/commit/067b52315ac1ff7ce1b89fc44121393cadbabc6a&lt;br /&gt;
&lt;br /&gt;
=='''Future Scope'''==&lt;br /&gt;
This project may need further improvement since it does not seem like there should be an abundance of files added and perhaps using the MVC design is not necessarily needed. There can also be a reduction of code since the difference between the two main grading histories is just whether it is a review or submission type.&lt;br /&gt;
&lt;br /&gt;
=='''Relevant Links'''==&lt;br /&gt;
* '''Github Repository:''' https://github.com/ErikLG360/expertiza&lt;br /&gt;
* '''Pull Request:''' https://github.com/expertiza/expertiza/pull/2696&lt;br /&gt;
* '''VCL Server (Valid until 12/15/23):'''  http://152.7.179.44:8080&lt;br /&gt;
* '''Video:''' https://drive.google.com/file/d/1HIrJtCsbZXSqGPHShuV6mbSTOKvV5MxT/view?usp=drive_link&lt;br /&gt;
&lt;br /&gt;
=='''Contributors to this project'''==&lt;br /&gt;
*Amulya Usem&lt;br /&gt;
*Erik Lopez-Godinez&lt;br /&gt;
*Gowtham Pollam&lt;br /&gt;
&lt;br /&gt;
*'''Mentor''': Srilekha Gudipati&lt;/div&gt;</summary>
		<author><name>Ealopezg</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=File:ReviewGradingHistoryLink.jpeg&amp;diff=152678</id>
		<title>File:ReviewGradingHistoryLink.jpeg</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=File:ReviewGradingHistoryLink.jpeg&amp;diff=152678"/>
		<updated>2023-12-05T05:17:27Z</updated>

		<summary type="html">&lt;p&gt;Ealopezg: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Ealopezg</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2023_-_E2383._Grading_Audit_Trail&amp;diff=152657</id>
		<title>CSC/ECE 517 Fall 2023 - E2383. Grading Audit Trail</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2023_-_E2383._Grading_Audit_Trail&amp;diff=152657"/>
		<updated>2023-12-05T04:59:58Z</updated>

		<summary type="html">&lt;p&gt;Ealopezg: /* Solutions - Implemented */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=='''Introduction'''==&lt;br /&gt;
&lt;br /&gt;
===Problem Statement===&lt;br /&gt;
In the current implementation of expertiza, any instructor can assign or edit a grade but there is no way to track who gave the grade and when. &lt;br /&gt;
&lt;br /&gt;
A grading audit trail must be created and the following information needs to be stored:&lt;br /&gt;
&lt;br /&gt;
1. When a grade is assigned by an instructor, there needs to be an indication of who did it and when it was done.&lt;br /&gt;
2. Comments previously provided by other instructors must also be preserved.&lt;br /&gt;
This information needs to be stored every time an instructor edits a grade/comment and clicks the save button.&lt;br /&gt;
&lt;br /&gt;
Currently, there are two places need to add grading audit trail:&lt;br /&gt;
&lt;br /&gt;
1. Review grade: Log in as instructor -&amp;gt; Manage -&amp;gt; Assignments -&amp;gt; View Review Report&lt;br /&gt;
2. Submission grade: Log in as instructor -&amp;gt; Manage -&amp;gt; Assignments -&amp;gt; View submissions&lt;br /&gt;
The grading audit trail can probably be implemented as the submission records history on Expertiza. The required page can be reached by logging in as instructor -&amp;gt; Manage -&amp;gt; Assignments -&amp;gt; View Submissions -&amp;gt; History&lt;br /&gt;
&lt;br /&gt;
At the minimum, a grading log entry must include the instructor id, assignment id, student id, grade, comment and timestamp.&lt;br /&gt;
&lt;br /&gt;
Previous student teams have attempted to implement this functionality, but their implementations had issues. Our solution will build on the work of teams E1934 and E2237, addressing the problems in their implementations.&lt;br /&gt;
&lt;br /&gt;
== '''Overview of Major Changes By Previous Teams''' ==&lt;br /&gt;
===[https://wiki-expertiza.csc.ncsu.edu/index.php/E1934_-_Grading_Audit_Trail E1934]===&lt;br /&gt;
[https://youtu.be/yyxX_kRYxLc Their Screencast]&lt;br /&gt;
&lt;br /&gt;
*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)&lt;br /&gt;
*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.&lt;br /&gt;
*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.&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. 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. &lt;br /&gt;
:2. In the view grading record page, remove the receiver column and add it to the title &lt;br /&gt;
:3. Restrict the column width on the grading record page &lt;br /&gt;
:4. Add comments on list_submissions.html.erb to indicate that the alignment was changed to fix code climate issues &lt;br /&gt;
:5. Ensure that white space changes are separate commits &lt;br /&gt;
:6. Revert changes made to list_review_mapping.html.erb &lt;br /&gt;
:7. Remove the review_report_html.erb file&lt;br /&gt;
:8. Design doc – mention why each of those files were changed&lt;br /&gt;
&lt;br /&gt;
===[https://wiki-expertiza.csc.ncsu.edu/index.php/CSC/ECE_517_Spring_2022_-_E2237:_Grading_audit_trail E2237]===&lt;br /&gt;
&lt;br /&gt;
*They fixed some issues that were causing the system to crash during testing&lt;br /&gt;
*Altered the Grading History view&lt;br /&gt;
*Explained the reasoning for changes made to files using diagrams and justifications&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. Redundant files generated by scaffolding need to be removed, along with debugging code. Ex) Coffee created by scaffolding and console logging for debugging. &lt;br /&gt;
:2. Authentication could be done using existing utilities, no need to create their own. &lt;br /&gt;
:3. Some formatting changes could be done especially on how cells span in review report page. Ex) Formatting change for spans in between cells in review report.&lt;br /&gt;
:4. Code from previous implementation is a concern.&lt;br /&gt;
&lt;br /&gt;
=='''Proposed Solution'''==&lt;br /&gt;
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. These files cannot be added haphazardly since parts of the implementation is a cause to concern and caused the changes to not be implemented. It is also using an older version of expertiza so some parts may not be compatible.  &lt;br /&gt;
&lt;br /&gt;
We must first figure out exactly what changes and issues to address in their implementation by meeting with our mentor. We also need to reimplement the following files since none of their changes were implemented:&lt;br /&gt;
&lt;br /&gt;
*app/controllers/grading_histories_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     Calls the grading history view after validating Submission and Review Type.&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/grading_history.rb &lt;br /&gt;
'''&lt;br /&gt;
     Model for Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/review_grading_history.rb &lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Model containing specifics of Review Grading History. Inherits Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/submission_grading_history.rb &lt;br /&gt;
'''&lt;br /&gt;
     Model containing specifics of Submission Grading History. Inherits Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/views/grading_history/index_html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This is a view for grading audit trail, it will display all grading histories of a &lt;br /&gt;
     submission/review&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*spec/features/grade_histories_spec.rb&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Feature test to check if the grades appear in chronological order&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*spec/features/helpers/grade_histories_helper.rb&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Helper file to facilitate the above mentioned feature test.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
=='''Reimplementation'''==&lt;br /&gt;
Since the previous teams implementations were not integrated we have to reimplement their files which we will do by looking at their commits and pull request to see what files are necessary and what can be left out to address the issues of their implementation.&lt;br /&gt;
&lt;br /&gt;
'''[https://github.com/ErikLG360/expertiza/commit/e28a857695549cc91c477587707e48100d2bd333 Files being Reimplemented/Modified]'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Reimplemented'''&lt;br /&gt;
*app/controllers/grading_histories_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was added to deal with allowing only the correct people to view the grading history, checking the assignment type whether it be a submission or review, and indexing all the grading history for the assignment in chronological order.&lt;br /&gt;
'''&lt;br /&gt;
*app/models/grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was added to create the relationships that the grading history has with an instructor who is creating the parts of the grading history and the assignments that will have a grading history.&lt;br /&gt;
'''&lt;br /&gt;
*app/models/review_grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file creates the relationship that a participant will have a Review Grading History &lt;br /&gt;
'''&lt;br /&gt;
*app/models/submission_grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file create the relationship that a participant/grade_reciever will have a Submission Grading History&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/views/grading_histories/index.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This file contains the view for the grading history table which will change depending on if its a Review or submission type&lt;br /&gt;
'''&lt;br /&gt;
*app/views/grading_histories/_form.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This file contains the view for when a grading history contains any error when it is about to be saved&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
'''Modified'''&lt;br /&gt;
*app/controllers/grades_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was modified based off the previous teams implementation because when the method save_grade_and_comment_for_submission was called it should also create a grading history so that&lt;br /&gt;
 the grading audit can be created and added to. This was mainly focusing on the grading history of submissions and not reviews.&lt;br /&gt;
'''&lt;br /&gt;
*app/controllers/review_mapping_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was modified based off the previous teams implementation because when the method save_grade_and_comment_for_reviewer was called it should also create a grading history so that&lt;br /&gt;
 the grading audit can be created and added to. This was mainly focusing on the grading history of reviews and not submissions.&lt;br /&gt;
'''&lt;br /&gt;
*app/views/assignments/list_submissions.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     It was modified to add the new hyperlink to display the grading history of a submission.&lt;br /&gt;
'''&lt;br /&gt;
*config/routes.rb&lt;br /&gt;
'''&lt;br /&gt;
     It was to add the new route for grading histories&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
=='''Solutions - Implemented'''==&lt;br /&gt;
&lt;br /&gt;
'''E1934'''&lt;br /&gt;
&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. 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. &lt;br /&gt;
:2. In the view grading record page, remove the receiver column and add it to the title &lt;br /&gt;
:3. Restrict the column width on the grading record page &lt;br /&gt;
:4. Add comments on list_submissions.html.erb to indicate that the alignment was changed to fix code climate issues &lt;br /&gt;
:5. Ensure that white space changes are separate commits &lt;br /&gt;
:6. Revert changes made to list_review_mapping.html.erb &lt;br /&gt;
:7. Remove the review_report_html.erb file&lt;br /&gt;
:8. Design doc – mention why each of those files were changed&lt;br /&gt;
&lt;br /&gt;
'''Solutions''' &lt;br /&gt;
:1. Found the correct location to put the Review Grading History link and also fix the previous teams creation of a grading history to work with the latest expertiza update. &lt;br /&gt;
Files changed include: &lt;br /&gt;
*[https://github.com/ErikLG360/expertiza/commit/c0352cb73f7de1fba72938df2953ee82cb84bb6a app/controllers/review_mapping_controller.rb]&lt;br /&gt;
*[https://github.com/ErikLG360/expertiza/commit/c0352cb73f7de1fba72938df2953ee82cb84bb6a app/views/reports/_review_report.html.erb]&lt;br /&gt;
&lt;br /&gt;
:2. The previous implementatation of E2237 tackled this problem and moved it to the title.&lt;br /&gt;
[[File:GradingTableTitle.png]]&lt;br /&gt;
:3. The column widths were lessened by about 15px in the grading record page&lt;br /&gt;
&lt;br /&gt;
Files changed include:&lt;br /&gt;
*[https://github.com/ErikLG360/expertiza/commit/124bd12d23f75db0a68e2fac8a8487c5f7a7ed67 app/views/grading_histories/index.html.erb]&lt;br /&gt;
&lt;br /&gt;
:4. There were no code climate issues regarding this issue&lt;br /&gt;
&lt;br /&gt;
:5. All code climate changes are their own commits such as [https://github.com/ErikLG360/expertiza/commit/e95656f4d5e4f2ba4fc8d3f40716673ccafb41b1 This]&lt;br /&gt;
&lt;br /&gt;
:6. This issue was resolved by not adding in their implementation for the list_review_mapping.html.erb&lt;br /&gt;
&lt;br /&gt;
:7. This issue was resolved by not adding in the review_report_html.erb file&lt;br /&gt;
&lt;br /&gt;
:8. This issue is resolved in the '''Reimplementation''' section of this document&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''E2237'''&lt;br /&gt;
&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. Redundant files generated by scaffolding need to be removed, along with debugging code. Ex) Coffee created by scaffolding and console logging for debugging. &lt;br /&gt;
:2. Authentication could be done using existing utilities, no need to create their own. &lt;br /&gt;
:3. Some formatting changes could be done especially on how cells span in review report page. Ex) Formatting change for spans in between cells in review report.&lt;br /&gt;
:4. Code from previous implementation is a concern.&lt;br /&gt;
&lt;br /&gt;
'''Solutions''' &lt;br /&gt;
:1. These files have not been reimplemented.&lt;br /&gt;
:2. The authentication already used the necessary parts&lt;br /&gt;
:3. The column width was reduced by 15px refer to the solution for E1934 number 3.&lt;br /&gt;
:4. Code for the review_mapping_controller was changed to match the current state of expertiza refer to the solution for E1934 number 1.&lt;br /&gt;
&lt;br /&gt;
=='''Testing Plan'''==&lt;br /&gt;
We have added a test case to test if a grading history is getting created when valid parameters are used. &lt;br /&gt;
The files include&lt;br /&gt;
spec/controllers/grading_histories_controller_test.rb&lt;br /&gt;
spec/factories/factories.rb&lt;br /&gt;
spec/features/grade_histories_spec.rb&lt;br /&gt;
spec/helpers/grade_histories_helper_spec.rb&lt;br /&gt;
&lt;br /&gt;
[[[https://github.com/expertiza/expertiza/commit/067b52315ac1ff7ce1b89fc44121393cadbabc6a]&lt;br /&gt;
]]&lt;br /&gt;
&lt;br /&gt;
=='''Future Scope'''==&lt;br /&gt;
This project may need further improvement since it does not seem like there should be an abundance of files added and perhaps using the MVC design is not necessarily needed. There can also be a reduction of code since the difference between the two main grading histories is just whether it is a review or submission type.&lt;br /&gt;
&lt;br /&gt;
=='''Relevant Links'''==&lt;br /&gt;
* '''Github Repository:''' https://github.com/ErikLG360/expertiza&lt;br /&gt;
* '''Pull Request:''' https://github.com/expertiza/expertiza/pull/2696&lt;br /&gt;
* '''VCL Server (Valid until 12/15/23):'''  http://152.7.179.44:8080&lt;br /&gt;
* '''Video:''' https://drive.google.com/file/d/1HIrJtCsbZXSqGPHShuV6mbSTOKvV5MxT/view?usp=drive_link&lt;br /&gt;
&lt;br /&gt;
=='''Contributors to this project'''==&lt;br /&gt;
*Amulya Usem&lt;br /&gt;
*Erik Lopez-Godinez&lt;br /&gt;
*Gowtham Pollam&lt;br /&gt;
&lt;br /&gt;
*'''Mentor''': Srilekha Gudipati&lt;/div&gt;</summary>
		<author><name>Ealopezg</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2023_-_E2383._Grading_Audit_Trail&amp;diff=152335</id>
		<title>CSC/ECE 517 Fall 2023 - E2383. Grading Audit Trail</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2023_-_E2383._Grading_Audit_Trail&amp;diff=152335"/>
		<updated>2023-12-04T20:02:18Z</updated>

		<summary type="html">&lt;p&gt;Ealopezg: /* Solutions - Implemented */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=='''Introduction'''==&lt;br /&gt;
&lt;br /&gt;
===Problem Statement===&lt;br /&gt;
After an instructor gave a grade to an assignment, there is no way to track who gave the grade.&lt;br /&gt;
A grading audit trail must be created and the following information needs to be stored: &lt;br /&gt;
:1. When a grade is assigned by an instructor, there needs to be an indication of who did it and when it was done. &lt;br /&gt;
:2. Comments previously provided by other instructors must also be preserved.&lt;br /&gt;
&lt;br /&gt;
This information needs to be stored every time an instructor edits a grade/comment and clicks the save button.&lt;br /&gt;
&lt;br /&gt;
There have been previous attempts from teams to implement such functionality and our implementation will be based on '''E1934''' and '''E2237'''. Each of these implementations have problems of their own that we need to address.&lt;br /&gt;
&lt;br /&gt;
== '''Overview of Major Changes By Previous Teams''' ==&lt;br /&gt;
===[https://wiki-expertiza.csc.ncsu.edu/index.php/E1934_-_Grading_Audit_Trail E1934]===&lt;br /&gt;
[https://youtu.be/yyxX_kRYxLc Their Screencast]&lt;br /&gt;
&lt;br /&gt;
*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)&lt;br /&gt;
*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.&lt;br /&gt;
*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.&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. 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. &lt;br /&gt;
:2. In the view grading record page, remove the receiver column and add it to the title &lt;br /&gt;
:3. Restrict the column width on the grading record page &lt;br /&gt;
:4. Add comments on list_submissions.html.erb to indicate that the alignment was changed to fix code climate issues &lt;br /&gt;
:5. Ensure that white space changes are separate commits &lt;br /&gt;
:6. Revert changes made to list_review_mapping.html.erb &lt;br /&gt;
:7. Remove the review_report_html.erb file&lt;br /&gt;
:8. Design doc – mention why each of those files were changed&lt;br /&gt;
&lt;br /&gt;
===[https://wiki-expertiza.csc.ncsu.edu/index.php/CSC/ECE_517_Spring_2022_-_E2237:_Grading_audit_trail E2237]===&lt;br /&gt;
&lt;br /&gt;
*They fixed some issues that were causing the system to crash during testing&lt;br /&gt;
*Altered the Grading History view&lt;br /&gt;
*Explained the reasoning for changes made to files using diagrams and justifications&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. Redundant files generated by scaffolding need to be removed, along with debugging code. Ex) Coffee created by scaffolding and console logging for debugging. &lt;br /&gt;
:2. Authentication could be done using existing utilities, no need to create their own. &lt;br /&gt;
:3. Some formatting changes could be done especially on how cells span in review report page. Ex) Formatting change for spans in between cells in review report.&lt;br /&gt;
:4. Code from previous implementation is a concern.&lt;br /&gt;
&lt;br /&gt;
=='''Proposed Solution'''==&lt;br /&gt;
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. These files cannot be added haphazardly since parts of the implementation is a cause to concern and caused the changes to not be implemented. It is also using an older version of expertiza so some parts may not be compatible.  &lt;br /&gt;
&lt;br /&gt;
We must first figure out exactly what changes and issues to address in their implementation by meeting with our mentor. We also need to reimplement the following files since none of their changes were implemented:&lt;br /&gt;
&lt;br /&gt;
*app/controllers/grading_histories_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     Calls the grading history view after validating Submission and Review Type.&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/grading_history.rb &lt;br /&gt;
'''&lt;br /&gt;
     Model for Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/review_grading_history.rb &lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Model containing specifics of Review Grading History. Inherits Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/submission_grading_history.rb &lt;br /&gt;
'''&lt;br /&gt;
     Model containing specifics of Submission Grading History. Inherits Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/views/grading_history/index_html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This is a view for grading audit trail, it will display all grading histories of a &lt;br /&gt;
     submission/review&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*spec/features/grade_histories_spec.rb&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Feature test to check if the grades appear in chronological order&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*spec/features/helpers/grade_histories_helper.rb&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Helper file to facilitate the above mentioned feature test.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
=='''Reimplementation'''==&lt;br /&gt;
Since the previous teams implementations were not integrated we have to reimplement their files which we will do by looking at their commits and pull request to see what files are necessary and what can be left out to address the issues of their implementation.&lt;br /&gt;
&lt;br /&gt;
'''[https://github.com/ErikLG360/expertiza/commit/e28a857695549cc91c477587707e48100d2bd333 Files being Reimplemented/Modified]'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Reimplemented'''&lt;br /&gt;
*app/controllers/grading_histories_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was added because it was from the previous teams implementation which concerned the MVC of the grading_history they created. It dealt with allowing only the correct people to view the &lt;br /&gt;
  grading history, checking the assignment type whether it be a submission or review, and indexing all the grading history for the assignment in chronological order.&lt;br /&gt;
'''&lt;br /&gt;
*app/models/grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was added to follow the previous teams MVC of the grading_history they created. It was used to create the relationships that the grading history has with an instructor who is creating&lt;br /&gt;
 the parts of the grading history and the assignments that will have a grading history.&lt;br /&gt;
'''&lt;br /&gt;
*app/models/review_grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file creates the relationship that a participant will have a Review Grading History &lt;br /&gt;
'''&lt;br /&gt;
*app/models/submission_grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file create the relationship that a participant/grade_reciever will have a Submission Grading History&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/views/grading_histories/index.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This file contains the view for the grading history table which will change depending on if its a Review or submission type&lt;br /&gt;
'''&lt;br /&gt;
*app/views/grading_histories/_form.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This file contains the view for when a grading history contains any error when it is about to be saved&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
'''Modified'''&lt;br /&gt;
*app/controllers/grades_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was modified based off the previous teams implementation because when the method save_grade_and_comment_for_submission was called it should also create a grading history so that&lt;br /&gt;
 the grading audit can be created and added to. This was mainly focusing on the grading history of submissions and not reviews.&lt;br /&gt;
'''&lt;br /&gt;
*app/controllers/review_mapping_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was modified based off the previous teams implementation because when the method save_grade_and_comment_for_reviewer was called it should also create a grading history so that&lt;br /&gt;
 the grading audit can be created and added to. This was mainly focusing on the grading history of reviews and not submissions.&lt;br /&gt;
'''&lt;br /&gt;
*app/views/assignments/list_submissions.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     It was modified to add the new hyperlink to display the grading history of a submission.&lt;br /&gt;
'''&lt;br /&gt;
*config/routes.rb&lt;br /&gt;
'''&lt;br /&gt;
     It was to add the new route for grading histories&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
=='''Solutions - Implemented'''==&lt;br /&gt;
&lt;br /&gt;
'''E1934'''&lt;br /&gt;
&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. 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. &lt;br /&gt;
:2. In the view grading record page, remove the receiver column and add it to the title &lt;br /&gt;
:3. Restrict the column width on the grading record page &lt;br /&gt;
:4. Add comments on list_submissions.html.erb to indicate that the alignment was changed to fix code climate issues &lt;br /&gt;
:5. Ensure that white space changes are separate commits &lt;br /&gt;
:6. Revert changes made to list_review_mapping.html.erb &lt;br /&gt;
:7. Remove the review_report_html.erb file&lt;br /&gt;
:8. Design doc – mention why each of those files were changed&lt;br /&gt;
&lt;br /&gt;
'''Solutions''' &lt;br /&gt;
:1. Found the correct location to put the Review Grading History link and also fix the previous teams creation of a grading history to work with the latest expertiza update. &lt;br /&gt;
Files changed include: &lt;br /&gt;
*[https://github.com/ErikLG360/expertiza/commit/c0352cb73f7de1fba72938df2953ee82cb84bb6a app/controllers/review_mapping_controller.rb]&lt;br /&gt;
*[https://github.com/ErikLG360/expertiza/commit/c0352cb73f7de1fba72938df2953ee82cb84bb6a app/views/reports/_review_report.html.erb]&lt;br /&gt;
&lt;br /&gt;
:2. The previous implementatation of E2237 tackled this problem and moved it to the title.&lt;br /&gt;
[[File:GradingTableTitle.png]]&lt;br /&gt;
:3. The column widths were lessened by about 15px in the grading record page&lt;br /&gt;
&lt;br /&gt;
Files changed include:&lt;br /&gt;
*[https://github.com/ErikLG360/expertiza/commit/124bd12d23f75db0a68e2fac8a8487c5f7a7ed67 app/views/grading_histories/index.html.erb]&lt;br /&gt;
&lt;br /&gt;
:4.&lt;br /&gt;
&lt;br /&gt;
:5. All code climate changes are their own commits such as [https://github.com/ErikLG360/expertiza/commit/e95656f4d5e4f2ba4fc8d3f40716673ccafb41b1 This]&lt;br /&gt;
&lt;br /&gt;
:6. This issue was resolved by not adding in their implementation for the list_review_mapping.html.erb&lt;br /&gt;
&lt;br /&gt;
:7. This issue was resolved by not adding in the review_report_html.erb file&lt;br /&gt;
&lt;br /&gt;
:8. This issue is resolved in the '''Reimplementation''' section of this document&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''E2237'''&lt;br /&gt;
&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. Redundant files generated by scaffolding need to be removed, along with debugging code. Ex) Coffee created by scaffolding and console logging for debugging. &lt;br /&gt;
:2. Authentication could be done using existing utilities, no need to create their own. &lt;br /&gt;
:3. Some formatting changes could be done especially on how cells span in review report page. Ex) Formatting change for spans in between cells in review report.&lt;br /&gt;
:4. Code from previous implementation is a concern.&lt;br /&gt;
&lt;br /&gt;
'''Solutions''' &lt;br /&gt;
:1. These files have not been reimplemented.&lt;br /&gt;
:2. &lt;br /&gt;
:3. The column width was lessed by 15px refer to the solution for E1934 number 3.&lt;br /&gt;
:4. Code for the review_mapping_controller was changed to match the current state of expertiza refer to the solution for E1934 number 1.&lt;br /&gt;
&lt;br /&gt;
=='''Testing Plan'''==&lt;br /&gt;
The Testing that we will implement will build from E2237 since the previous tests crash and was something they solved. We also plan to implement test using the given Test Skeleton.&lt;br /&gt;
&lt;br /&gt;
=='''Future Scope'''==&lt;br /&gt;
This project may need further improvement since it does not seem like there should be an abundance of files added and perhaps using the MVC design is not necessarily needed. There can also be a reduction of code since the difference between the two main grading histories is just whether it is a review or submission type.&lt;br /&gt;
&lt;br /&gt;
=='''Relevant Links'''==&lt;br /&gt;
* '''Github Repository:''' https://github.com/ErikLG360/expertiza&lt;br /&gt;
* '''Pull Request:''' https://github.com/expertiza/expertiza/pull/2696&lt;br /&gt;
* '''VCL Server (Valid until 12/15/23):'''  http://152.7.179.44:8080&lt;br /&gt;
* '''Video:'''&lt;br /&gt;
&lt;br /&gt;
=='''Contributors to this project'''==&lt;br /&gt;
*Amulya Usem&lt;br /&gt;
*Erik Lopez-Godinez&lt;br /&gt;
*Gowtham Pollam&lt;br /&gt;
&lt;br /&gt;
*'''Mentor''': Srilekha Gudipati&lt;/div&gt;</summary>
		<author><name>Ealopezg</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2023_-_E2383._Grading_Audit_Trail&amp;diff=152333</id>
		<title>CSC/ECE 517 Fall 2023 - E2383. Grading Audit Trail</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2023_-_E2383._Grading_Audit_Trail&amp;diff=152333"/>
		<updated>2023-12-04T20:01:42Z</updated>

		<summary type="html">&lt;p&gt;Ealopezg: /* Solutions - Implemented */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=='''Introduction'''==&lt;br /&gt;
&lt;br /&gt;
===Problem Statement===&lt;br /&gt;
After an instructor gave a grade to an assignment, there is no way to track who gave the grade.&lt;br /&gt;
A grading audit trail must be created and the following information needs to be stored: &lt;br /&gt;
:1. When a grade is assigned by an instructor, there needs to be an indication of who did it and when it was done. &lt;br /&gt;
:2. Comments previously provided by other instructors must also be preserved.&lt;br /&gt;
&lt;br /&gt;
This information needs to be stored every time an instructor edits a grade/comment and clicks the save button.&lt;br /&gt;
&lt;br /&gt;
There have been previous attempts from teams to implement such functionality and our implementation will be based on '''E1934''' and '''E2237'''. Each of these implementations have problems of their own that we need to address.&lt;br /&gt;
&lt;br /&gt;
== '''Overview of Major Changes By Previous Teams''' ==&lt;br /&gt;
===[https://wiki-expertiza.csc.ncsu.edu/index.php/E1934_-_Grading_Audit_Trail E1934]===&lt;br /&gt;
[https://youtu.be/yyxX_kRYxLc Their Screencast]&lt;br /&gt;
&lt;br /&gt;
*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)&lt;br /&gt;
*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.&lt;br /&gt;
*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.&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. 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. &lt;br /&gt;
:2. In the view grading record page, remove the receiver column and add it to the title &lt;br /&gt;
:3. Restrict the column width on the grading record page &lt;br /&gt;
:4. Add comments on list_submissions.html.erb to indicate that the alignment was changed to fix code climate issues &lt;br /&gt;
:5. Ensure that white space changes are separate commits &lt;br /&gt;
:6. Revert changes made to list_review_mapping.html.erb &lt;br /&gt;
:7. Remove the review_report_html.erb file&lt;br /&gt;
:8. Design doc – mention why each of those files were changed&lt;br /&gt;
&lt;br /&gt;
===[https://wiki-expertiza.csc.ncsu.edu/index.php/CSC/ECE_517_Spring_2022_-_E2237:_Grading_audit_trail E2237]===&lt;br /&gt;
&lt;br /&gt;
*They fixed some issues that were causing the system to crash during testing&lt;br /&gt;
*Altered the Grading History view&lt;br /&gt;
*Explained the reasoning for changes made to files using diagrams and justifications&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. Redundant files generated by scaffolding need to be removed, along with debugging code. Ex) Coffee created by scaffolding and console logging for debugging. &lt;br /&gt;
:2. Authentication could be done using existing utilities, no need to create their own. &lt;br /&gt;
:3. Some formatting changes could be done especially on how cells span in review report page. Ex) Formatting change for spans in between cells in review report.&lt;br /&gt;
:4. Code from previous implementation is a concern.&lt;br /&gt;
&lt;br /&gt;
=='''Proposed Solution'''==&lt;br /&gt;
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. These files cannot be added haphazardly since parts of the implementation is a cause to concern and caused the changes to not be implemented. It is also using an older version of expertiza so some parts may not be compatible.  &lt;br /&gt;
&lt;br /&gt;
We must first figure out exactly what changes and issues to address in their implementation by meeting with our mentor. We also need to reimplement the following files since none of their changes were implemented:&lt;br /&gt;
&lt;br /&gt;
*app/controllers/grading_histories_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     Calls the grading history view after validating Submission and Review Type.&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/grading_history.rb &lt;br /&gt;
'''&lt;br /&gt;
     Model for Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/review_grading_history.rb &lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Model containing specifics of Review Grading History. Inherits Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/submission_grading_history.rb &lt;br /&gt;
'''&lt;br /&gt;
     Model containing specifics of Submission Grading History. Inherits Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/views/grading_history/index_html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This is a view for grading audit trail, it will display all grading histories of a &lt;br /&gt;
     submission/review&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*spec/features/grade_histories_spec.rb&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Feature test to check if the grades appear in chronological order&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*spec/features/helpers/grade_histories_helper.rb&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Helper file to facilitate the above mentioned feature test.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
=='''Reimplementation'''==&lt;br /&gt;
Since the previous teams implementations were not integrated we have to reimplement their files which we will do by looking at their commits and pull request to see what files are necessary and what can be left out to address the issues of their implementation.&lt;br /&gt;
&lt;br /&gt;
'''[https://github.com/ErikLG360/expertiza/commit/e28a857695549cc91c477587707e48100d2bd333 Files being Reimplemented/Modified]'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Reimplemented'''&lt;br /&gt;
*app/controllers/grading_histories_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was added because it was from the previous teams implementation which concerned the MVC of the grading_history they created. It dealt with allowing only the correct people to view the &lt;br /&gt;
  grading history, checking the assignment type whether it be a submission or review, and indexing all the grading history for the assignment in chronological order.&lt;br /&gt;
'''&lt;br /&gt;
*app/models/grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was added to follow the previous teams MVC of the grading_history they created. It was used to create the relationships that the grading history has with an instructor who is creating&lt;br /&gt;
 the parts of the grading history and the assignments that will have a grading history.&lt;br /&gt;
'''&lt;br /&gt;
*app/models/review_grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file creates the relationship that a participant will have a Review Grading History &lt;br /&gt;
'''&lt;br /&gt;
*app/models/submission_grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file create the relationship that a participant/grade_reciever will have a Submission Grading History&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/views/grading_histories/index.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This file contains the view for the grading history table which will change depending on if its a Review or submission type&lt;br /&gt;
'''&lt;br /&gt;
*app/views/grading_histories/_form.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This file contains the view for when a grading history contains any error when it is about to be saved&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
'''Modified'''&lt;br /&gt;
*app/controllers/grades_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was modified based off the previous teams implementation because when the method save_grade_and_comment_for_submission was called it should also create a grading history so that&lt;br /&gt;
 the grading audit can be created and added to. This was mainly focusing on the grading history of submissions and not reviews.&lt;br /&gt;
'''&lt;br /&gt;
*app/controllers/review_mapping_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was modified based off the previous teams implementation because when the method save_grade_and_comment_for_reviewer was called it should also create a grading history so that&lt;br /&gt;
 the grading audit can be created and added to. This was mainly focusing on the grading history of reviews and not submissions.&lt;br /&gt;
'''&lt;br /&gt;
*app/views/assignments/list_submissions.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     It was modified to add the new hyperlink to display the grading history of a submission.&lt;br /&gt;
'''&lt;br /&gt;
*config/routes.rb&lt;br /&gt;
'''&lt;br /&gt;
     It was to add the new route for grading histories&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
=='''Solutions - Implemented'''==&lt;br /&gt;
&lt;br /&gt;
'''E1934'''&lt;br /&gt;
&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. 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. &lt;br /&gt;
:2. In the view grading record page, remove the receiver column and add it to the title &lt;br /&gt;
:3. Restrict the column width on the grading record page &lt;br /&gt;
:4. Add comments on list_submissions.html.erb to indicate that the alignment was changed to fix code climate issues &lt;br /&gt;
:5. Ensure that white space changes are separate commits &lt;br /&gt;
:6. Revert changes made to list_review_mapping.html.erb &lt;br /&gt;
:7. Remove the review_report_html.erb file&lt;br /&gt;
:8. Design doc – mention why each of those files were changed&lt;br /&gt;
&lt;br /&gt;
'''Solutions''' &lt;br /&gt;
:1. Found the correct location to put the Review Grading History link and also fix the previous teams creation of a grading history to work with the latest expertiza update. &lt;br /&gt;
Files changed include: &lt;br /&gt;
*[https://github.com/ErikLG360/expertiza/commit/c0352cb73f7de1fba72938df2953ee82cb84bb6a app/controllers/review_mapping_controller.rb]&lt;br /&gt;
*[https://github.com/ErikLG360/expertiza/commit/c0352cb73f7de1fba72938df2953ee82cb84bb6a app/views/reports/_review_report.html.erb]&lt;br /&gt;
&lt;br /&gt;
:2. The previous implementatation of E2237 tackled this problem and moved it to the title.&lt;br /&gt;
[[File:GradingTableTitle.png]]&lt;br /&gt;
:3. The column widths were lessened by about 15px in the grading record page&lt;br /&gt;
&lt;br /&gt;
Files changed include:&lt;br /&gt;
*[https://github.com/ErikLG360/expertiza/commit/124bd12d23f75db0a68e2fac8a8487c5f7a7ed67 app/views/grading_histories/index.html.erb]&lt;br /&gt;
&lt;br /&gt;
:4.&lt;br /&gt;
&lt;br /&gt;
:5. All code climate changes are their own commits such as [https://github.com/ErikLG360/expertiza/commit/e95656f4d5e4f2ba4fc8d3f40716673ccafb41b1 This]&lt;br /&gt;
&lt;br /&gt;
:6. This issue was resolved by not adding in their implementation for the list_review_mapping.html.erb&lt;br /&gt;
&lt;br /&gt;
:7. This issue was resolved by not adding in the review_report_html.erb file&lt;br /&gt;
&lt;br /&gt;
:8. This issue is resolved in the '''Reimplementation''' section&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''E2237'''&lt;br /&gt;
&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. Redundant files generated by scaffolding need to be removed, along with debugging code. Ex) Coffee created by scaffolding and console logging for debugging. &lt;br /&gt;
:2. Authentication could be done using existing utilities, no need to create their own. &lt;br /&gt;
:3. Some formatting changes could be done especially on how cells span in review report page. Ex) Formatting change for spans in between cells in review report.&lt;br /&gt;
:4. Code from previous implementation is a concern.&lt;br /&gt;
&lt;br /&gt;
'''Solutions''' &lt;br /&gt;
:1. These files have not been reimplemented.&lt;br /&gt;
:2. &lt;br /&gt;
:3. The column width was lessed by 15px refer to the solution for E1934 number 3.&lt;br /&gt;
:4. Code for the review_mapping_controller was changed to match the current state of expertiza refer to the solution for E1934 number 1.&lt;br /&gt;
&lt;br /&gt;
=='''Testing Plan'''==&lt;br /&gt;
The Testing that we will implement will build from E2237 since the previous tests crash and was something they solved. We also plan to implement test using the given Test Skeleton.&lt;br /&gt;
&lt;br /&gt;
=='''Future Scope'''==&lt;br /&gt;
This project may need further improvement since it does not seem like there should be an abundance of files added and perhaps using the MVC design is not necessarily needed. There can also be a reduction of code since the difference between the two main grading histories is just whether it is a review or submission type.&lt;br /&gt;
&lt;br /&gt;
=='''Relevant Links'''==&lt;br /&gt;
* '''Github Repository:''' https://github.com/ErikLG360/expertiza&lt;br /&gt;
* '''Pull Request:''' https://github.com/expertiza/expertiza/pull/2696&lt;br /&gt;
* '''VCL Server (Valid until 12/15/23):'''  http://152.7.179.44:8080&lt;br /&gt;
* '''Video:'''&lt;br /&gt;
&lt;br /&gt;
=='''Contributors to this project'''==&lt;br /&gt;
*Amulya Usem&lt;br /&gt;
*Erik Lopez-Godinez&lt;br /&gt;
*Gowtham Pollam&lt;br /&gt;
&lt;br /&gt;
*'''Mentor''': Srilekha Gudipati&lt;/div&gt;</summary>
		<author><name>Ealopezg</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2023_-_E2383._Grading_Audit_Trail&amp;diff=152331</id>
		<title>CSC/ECE 517 Fall 2023 - E2383. Grading Audit Trail</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2023_-_E2383._Grading_Audit_Trail&amp;diff=152331"/>
		<updated>2023-12-04T20:01:04Z</updated>

		<summary type="html">&lt;p&gt;Ealopezg: /* Reimplementation */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=='''Introduction'''==&lt;br /&gt;
&lt;br /&gt;
===Problem Statement===&lt;br /&gt;
After an instructor gave a grade to an assignment, there is no way to track who gave the grade.&lt;br /&gt;
A grading audit trail must be created and the following information needs to be stored: &lt;br /&gt;
:1. When a grade is assigned by an instructor, there needs to be an indication of who did it and when it was done. &lt;br /&gt;
:2. Comments previously provided by other instructors must also be preserved.&lt;br /&gt;
&lt;br /&gt;
This information needs to be stored every time an instructor edits a grade/comment and clicks the save button.&lt;br /&gt;
&lt;br /&gt;
There have been previous attempts from teams to implement such functionality and our implementation will be based on '''E1934''' and '''E2237'''. Each of these implementations have problems of their own that we need to address.&lt;br /&gt;
&lt;br /&gt;
== '''Overview of Major Changes By Previous Teams''' ==&lt;br /&gt;
===[https://wiki-expertiza.csc.ncsu.edu/index.php/E1934_-_Grading_Audit_Trail E1934]===&lt;br /&gt;
[https://youtu.be/yyxX_kRYxLc Their Screencast]&lt;br /&gt;
&lt;br /&gt;
*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)&lt;br /&gt;
*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.&lt;br /&gt;
*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.&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. 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. &lt;br /&gt;
:2. In the view grading record page, remove the receiver column and add it to the title &lt;br /&gt;
:3. Restrict the column width on the grading record page &lt;br /&gt;
:4. Add comments on list_submissions.html.erb to indicate that the alignment was changed to fix code climate issues &lt;br /&gt;
:5. Ensure that white space changes are separate commits &lt;br /&gt;
:6. Revert changes made to list_review_mapping.html.erb &lt;br /&gt;
:7. Remove the review_report_html.erb file&lt;br /&gt;
:8. Design doc – mention why each of those files were changed&lt;br /&gt;
&lt;br /&gt;
===[https://wiki-expertiza.csc.ncsu.edu/index.php/CSC/ECE_517_Spring_2022_-_E2237:_Grading_audit_trail E2237]===&lt;br /&gt;
&lt;br /&gt;
*They fixed some issues that were causing the system to crash during testing&lt;br /&gt;
*Altered the Grading History view&lt;br /&gt;
*Explained the reasoning for changes made to files using diagrams and justifications&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. Redundant files generated by scaffolding need to be removed, along with debugging code. Ex) Coffee created by scaffolding and console logging for debugging. &lt;br /&gt;
:2. Authentication could be done using existing utilities, no need to create their own. &lt;br /&gt;
:3. Some formatting changes could be done especially on how cells span in review report page. Ex) Formatting change for spans in between cells in review report.&lt;br /&gt;
:4. Code from previous implementation is a concern.&lt;br /&gt;
&lt;br /&gt;
=='''Proposed Solution'''==&lt;br /&gt;
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. These files cannot be added haphazardly since parts of the implementation is a cause to concern and caused the changes to not be implemented. It is also using an older version of expertiza so some parts may not be compatible.  &lt;br /&gt;
&lt;br /&gt;
We must first figure out exactly what changes and issues to address in their implementation by meeting with our mentor. We also need to reimplement the following files since none of their changes were implemented:&lt;br /&gt;
&lt;br /&gt;
*app/controllers/grading_histories_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     Calls the grading history view after validating Submission and Review Type.&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/grading_history.rb &lt;br /&gt;
'''&lt;br /&gt;
     Model for Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/review_grading_history.rb &lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Model containing specifics of Review Grading History. Inherits Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/submission_grading_history.rb &lt;br /&gt;
'''&lt;br /&gt;
     Model containing specifics of Submission Grading History. Inherits Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/views/grading_history/index_html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This is a view for grading audit trail, it will display all grading histories of a &lt;br /&gt;
     submission/review&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*spec/features/grade_histories_spec.rb&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Feature test to check if the grades appear in chronological order&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*spec/features/helpers/grade_histories_helper.rb&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Helper file to facilitate the above mentioned feature test.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
=='''Reimplementation'''==&lt;br /&gt;
Since the previous teams implementations were not integrated we have to reimplement their files which we will do by looking at their commits and pull request to see what files are necessary and what can be left out to address the issues of their implementation.&lt;br /&gt;
&lt;br /&gt;
'''[https://github.com/ErikLG360/expertiza/commit/e28a857695549cc91c477587707e48100d2bd333 Files being Reimplemented/Modified]'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Reimplemented'''&lt;br /&gt;
*app/controllers/grading_histories_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was added because it was from the previous teams implementation which concerned the MVC of the grading_history they created. It dealt with allowing only the correct people to view the &lt;br /&gt;
  grading history, checking the assignment type whether it be a submission or review, and indexing all the grading history for the assignment in chronological order.&lt;br /&gt;
'''&lt;br /&gt;
*app/models/grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was added to follow the previous teams MVC of the grading_history they created. It was used to create the relationships that the grading history has with an instructor who is creating&lt;br /&gt;
 the parts of the grading history and the assignments that will have a grading history.&lt;br /&gt;
'''&lt;br /&gt;
*app/models/review_grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file creates the relationship that a participant will have a Review Grading History &lt;br /&gt;
'''&lt;br /&gt;
*app/models/submission_grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file create the relationship that a participant/grade_reciever will have a Submission Grading History&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/views/grading_histories/index.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This file contains the view for the grading history table which will change depending on if its a Review or submission type&lt;br /&gt;
'''&lt;br /&gt;
*app/views/grading_histories/_form.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This file contains the view for when a grading history contains any error when it is about to be saved&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
'''Modified'''&lt;br /&gt;
*app/controllers/grades_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was modified based off the previous teams implementation because when the method save_grade_and_comment_for_submission was called it should also create a grading history so that&lt;br /&gt;
 the grading audit can be created and added to. This was mainly focusing on the grading history of submissions and not reviews.&lt;br /&gt;
'''&lt;br /&gt;
*app/controllers/review_mapping_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was modified based off the previous teams implementation because when the method save_grade_and_comment_for_reviewer was called it should also create a grading history so that&lt;br /&gt;
 the grading audit can be created and added to. This was mainly focusing on the grading history of reviews and not submissions.&lt;br /&gt;
'''&lt;br /&gt;
*app/views/assignments/list_submissions.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     It was modified to add the new hyperlink to display the grading history of a submission.&lt;br /&gt;
'''&lt;br /&gt;
*config/routes.rb&lt;br /&gt;
'''&lt;br /&gt;
     It was to add the new route for grading histories&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
=='''Solutions - Implemented'''==&lt;br /&gt;
&lt;br /&gt;
'''E1934'''&lt;br /&gt;
&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. 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. &lt;br /&gt;
:2. In the view grading record page, remove the receiver column and add it to the title &lt;br /&gt;
:3. Restrict the column width on the grading record page &lt;br /&gt;
:4. Add comments on list_submissions.html.erb to indicate that the alignment was changed to fix code climate issues &lt;br /&gt;
:5. Ensure that white space changes are separate commits &lt;br /&gt;
:6. Revert changes made to list_review_mapping.html.erb &lt;br /&gt;
:7. Remove the review_report_html.erb file&lt;br /&gt;
:8. Design doc – mention why each of those files were changed&lt;br /&gt;
&lt;br /&gt;
'''Solutions''' &lt;br /&gt;
:1. Found the correct location to put the Review Grading History link and also fix the previous teams creation of a grading history to work with the latest expertiza update. &lt;br /&gt;
Files changed include: &lt;br /&gt;
*[https://github.com/ErikLG360/expertiza/commit/c0352cb73f7de1fba72938df2953ee82cb84bb6a app/controllers/review_mapping_controller.rb]&lt;br /&gt;
*[https://github.com/ErikLG360/expertiza/commit/c0352cb73f7de1fba72938df2953ee82cb84bb6a app/views/reports/_review_report.html.erb]&lt;br /&gt;
&lt;br /&gt;
:2. The previous implementatation of E2237 tackled this problem and moved it to the title.&lt;br /&gt;
[[File:GradingTableTitle.png]]&lt;br /&gt;
:3. The column widths were lessened by about 15px in the grading record page&lt;br /&gt;
&lt;br /&gt;
Files changed include:&lt;br /&gt;
*[https://github.com/ErikLG360/expertiza/commit/124bd12d23f75db0a68e2fac8a8487c5f7a7ed67 app/views/grading_histories/index.html.erb]&lt;br /&gt;
&lt;br /&gt;
:4.&lt;br /&gt;
&lt;br /&gt;
:5. All code climate changes are their own commits such as [https://github.com/ErikLG360/expertiza/commit/e95656f4d5e4f2ba4fc8d3f40716673ccafb41b1 This]&lt;br /&gt;
&lt;br /&gt;
:6. This issue was resolved by not adding in their implementation for the list_review_mapping.html.erb&lt;br /&gt;
&lt;br /&gt;
:7. This issue was resolved by not adding in the review_report_html.erb file&lt;br /&gt;
&lt;br /&gt;
:8. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''E2237'''&lt;br /&gt;
&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. Redundant files generated by scaffolding need to be removed, along with debugging code. Ex) Coffee created by scaffolding and console logging for debugging. &lt;br /&gt;
:2. Authentication could be done using existing utilities, no need to create their own. &lt;br /&gt;
:3. Some formatting changes could be done especially on how cells span in review report page. Ex) Formatting change for spans in between cells in review report.&lt;br /&gt;
:4. Code from previous implementation is a concern.&lt;br /&gt;
&lt;br /&gt;
'''Solutions''' &lt;br /&gt;
:1. These files have not been reimplemented.&lt;br /&gt;
:2. &lt;br /&gt;
:3. The column width was lessed by 15px refer to the solution for E1934 number 3.&lt;br /&gt;
:4. Code for the review_mapping_controller was changed to match the current state of expertiza refer to the solution for E1934 number 1.&lt;br /&gt;
&lt;br /&gt;
=='''Testing Plan'''==&lt;br /&gt;
The Testing that we will implement will build from E2237 since the previous tests crash and was something they solved. We also plan to implement test using the given Test Skeleton.&lt;br /&gt;
&lt;br /&gt;
=='''Future Scope'''==&lt;br /&gt;
This project may need further improvement since it does not seem like there should be an abundance of files added and perhaps using the MVC design is not necessarily needed. There can also be a reduction of code since the difference between the two main grading histories is just whether it is a review or submission type.&lt;br /&gt;
&lt;br /&gt;
=='''Relevant Links'''==&lt;br /&gt;
* '''Github Repository:''' https://github.com/ErikLG360/expertiza&lt;br /&gt;
* '''Pull Request:''' https://github.com/expertiza/expertiza/pull/2696&lt;br /&gt;
* '''VCL Server (Valid until 12/15/23):'''  http://152.7.179.44:8080&lt;br /&gt;
* '''Video:'''&lt;br /&gt;
&lt;br /&gt;
=='''Contributors to this project'''==&lt;br /&gt;
*Amulya Usem&lt;br /&gt;
*Erik Lopez-Godinez&lt;br /&gt;
*Gowtham Pollam&lt;br /&gt;
&lt;br /&gt;
*'''Mentor''': Srilekha Gudipati&lt;/div&gt;</summary>
		<author><name>Ealopezg</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2023_-_E2383._Grading_Audit_Trail&amp;diff=152328</id>
		<title>CSC/ECE 517 Fall 2023 - E2383. Grading Audit Trail</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2023_-_E2383._Grading_Audit_Trail&amp;diff=152328"/>
		<updated>2023-12-04T20:00:34Z</updated>

		<summary type="html">&lt;p&gt;Ealopezg: /* Reimplementation */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=='''Introduction'''==&lt;br /&gt;
&lt;br /&gt;
===Problem Statement===&lt;br /&gt;
After an instructor gave a grade to an assignment, there is no way to track who gave the grade.&lt;br /&gt;
A grading audit trail must be created and the following information needs to be stored: &lt;br /&gt;
:1. When a grade is assigned by an instructor, there needs to be an indication of who did it and when it was done. &lt;br /&gt;
:2. Comments previously provided by other instructors must also be preserved.&lt;br /&gt;
&lt;br /&gt;
This information needs to be stored every time an instructor edits a grade/comment and clicks the save button.&lt;br /&gt;
&lt;br /&gt;
There have been previous attempts from teams to implement such functionality and our implementation will be based on '''E1934''' and '''E2237'''. Each of these implementations have problems of their own that we need to address.&lt;br /&gt;
&lt;br /&gt;
== '''Overview of Major Changes By Previous Teams''' ==&lt;br /&gt;
===[https://wiki-expertiza.csc.ncsu.edu/index.php/E1934_-_Grading_Audit_Trail E1934]===&lt;br /&gt;
[https://youtu.be/yyxX_kRYxLc Their Screencast]&lt;br /&gt;
&lt;br /&gt;
*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)&lt;br /&gt;
*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.&lt;br /&gt;
*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.&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. 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. &lt;br /&gt;
:2. In the view grading record page, remove the receiver column and add it to the title &lt;br /&gt;
:3. Restrict the column width on the grading record page &lt;br /&gt;
:4. Add comments on list_submissions.html.erb to indicate that the alignment was changed to fix code climate issues &lt;br /&gt;
:5. Ensure that white space changes are separate commits &lt;br /&gt;
:6. Revert changes made to list_review_mapping.html.erb &lt;br /&gt;
:7. Remove the review_report_html.erb file&lt;br /&gt;
:8. Design doc – mention why each of those files were changed&lt;br /&gt;
&lt;br /&gt;
===[https://wiki-expertiza.csc.ncsu.edu/index.php/CSC/ECE_517_Spring_2022_-_E2237:_Grading_audit_trail E2237]===&lt;br /&gt;
&lt;br /&gt;
*They fixed some issues that were causing the system to crash during testing&lt;br /&gt;
*Altered the Grading History view&lt;br /&gt;
*Explained the reasoning for changes made to files using diagrams and justifications&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. Redundant files generated by scaffolding need to be removed, along with debugging code. Ex) Coffee created by scaffolding and console logging for debugging. &lt;br /&gt;
:2. Authentication could be done using existing utilities, no need to create their own. &lt;br /&gt;
:3. Some formatting changes could be done especially on how cells span in review report page. Ex) Formatting change for spans in between cells in review report.&lt;br /&gt;
:4. Code from previous implementation is a concern.&lt;br /&gt;
&lt;br /&gt;
=='''Proposed Solution'''==&lt;br /&gt;
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. These files cannot be added haphazardly since parts of the implementation is a cause to concern and caused the changes to not be implemented. It is also using an older version of expertiza so some parts may not be compatible.  &lt;br /&gt;
&lt;br /&gt;
We must first figure out exactly what changes and issues to address in their implementation by meeting with our mentor. We also need to reimplement the following files since none of their changes were implemented:&lt;br /&gt;
&lt;br /&gt;
*app/controllers/grading_histories_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     Calls the grading history view after validating Submission and Review Type.&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/grading_history.rb &lt;br /&gt;
'''&lt;br /&gt;
     Model for Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/review_grading_history.rb &lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Model containing specifics of Review Grading History. Inherits Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/submission_grading_history.rb &lt;br /&gt;
'''&lt;br /&gt;
     Model containing specifics of Submission Grading History. Inherits Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/views/grading_history/index_html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This is a view for grading audit trail, it will display all grading histories of a &lt;br /&gt;
     submission/review&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*spec/features/grade_histories_spec.rb&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Feature test to check if the grades appear in chronological order&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*spec/features/helpers/grade_histories_helper.rb&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Helper file to facilitate the above mentioned feature test.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
=='''Reimplementation'''==&lt;br /&gt;
Since the previous teams implementations were not integrated we have to reimplement their files which we will do by looking at their commits and pull request to see what files are necessary and what can be left out to address the issues of their implementation.&lt;br /&gt;
&lt;br /&gt;
'''[https://github.com/ErikLG360/expertiza/commit/e28a857695549cc91c477587707e48100d2bd333 Files being Reimplemented/Modified]'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Reimplemented'''&lt;br /&gt;
*app/controllers/grading_histories_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was added because it was from the previous teams implementation which concerned the MVC of the grading_history they created. It dealt with allowing only the correct people to view the &lt;br /&gt;
  grading history, checking the assignment type whether it be a submission or review, and indexing all the grading history for the assignment in chronological order.&lt;br /&gt;
'''&lt;br /&gt;
*app/models/grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was added to follow the previous teams MVC of the grading_history they created. It was used to create the relationships that the grading history has with an instructor who is creating the parts of the grading history and the assignments that will have a grading history.&lt;br /&gt;
'''&lt;br /&gt;
*app/models/review_grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file creates the relationship that a participant will have a Review Grading History &lt;br /&gt;
'''&lt;br /&gt;
*app/models/submission_grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file create the relationship that a participant/grade_reciever will have a Submission Grading History&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/views/grading_histories/index.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This file contains the view for the grading history table which will change depending on if its a Review or submission type&lt;br /&gt;
'''&lt;br /&gt;
*app/views/grading_histories/_form.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This file contains the view for when a grading history contains any error when it is about to be saved&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
'''Modified'''&lt;br /&gt;
*app/controllers/grades_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was modified based off the previous teams implementation because when the method save_grade_and_comment_for_submission was called it should also create a grading history so that&lt;br /&gt;
 the grading audit can be created and added to. This was mainly focusing on the grading history of submissions and not reviews.&lt;br /&gt;
'''&lt;br /&gt;
*app/controllers/review_mapping_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was modified based off the previous teams implementation because when the method save_grade_and_comment_for_reviewer was called it should also create a grading history so that&lt;br /&gt;
 the grading audit can be created and added to. This was mainly focusing on the grading history of reviews and not submissions.&lt;br /&gt;
'''&lt;br /&gt;
*app/views/assignments/list_submissions.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     It was modified to add the new hyperlink to display the grading history of a submission.&lt;br /&gt;
'''&lt;br /&gt;
*config/routes.rb&lt;br /&gt;
'''&lt;br /&gt;
     It was to add the new route for grading histories&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
=='''Solutions - Implemented'''==&lt;br /&gt;
&lt;br /&gt;
'''E1934'''&lt;br /&gt;
&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. 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. &lt;br /&gt;
:2. In the view grading record page, remove the receiver column and add it to the title &lt;br /&gt;
:3. Restrict the column width on the grading record page &lt;br /&gt;
:4. Add comments on list_submissions.html.erb to indicate that the alignment was changed to fix code climate issues &lt;br /&gt;
:5. Ensure that white space changes are separate commits &lt;br /&gt;
:6. Revert changes made to list_review_mapping.html.erb &lt;br /&gt;
:7. Remove the review_report_html.erb file&lt;br /&gt;
:8. Design doc – mention why each of those files were changed&lt;br /&gt;
&lt;br /&gt;
'''Solutions''' &lt;br /&gt;
:1. Found the correct location to put the Review Grading History link and also fix the previous teams creation of a grading history to work with the latest expertiza update. &lt;br /&gt;
Files changed include: &lt;br /&gt;
*[https://github.com/ErikLG360/expertiza/commit/c0352cb73f7de1fba72938df2953ee82cb84bb6a app/controllers/review_mapping_controller.rb]&lt;br /&gt;
*[https://github.com/ErikLG360/expertiza/commit/c0352cb73f7de1fba72938df2953ee82cb84bb6a app/views/reports/_review_report.html.erb]&lt;br /&gt;
&lt;br /&gt;
:2. The previous implementatation of E2237 tackled this problem and moved it to the title.&lt;br /&gt;
[[File:GradingTableTitle.png]]&lt;br /&gt;
:3. The column widths were lessened by about 15px in the grading record page&lt;br /&gt;
&lt;br /&gt;
Files changed include:&lt;br /&gt;
*[https://github.com/ErikLG360/expertiza/commit/124bd12d23f75db0a68e2fac8a8487c5f7a7ed67 app/views/grading_histories/index.html.erb]&lt;br /&gt;
&lt;br /&gt;
:4.&lt;br /&gt;
&lt;br /&gt;
:5. All code climate changes are their own commits such as [https://github.com/ErikLG360/expertiza/commit/e95656f4d5e4f2ba4fc8d3f40716673ccafb41b1 This]&lt;br /&gt;
&lt;br /&gt;
:6. This issue was resolved by not adding in their implementation for the list_review_mapping.html.erb&lt;br /&gt;
&lt;br /&gt;
:7. This issue was resolved by not adding in the review_report_html.erb file&lt;br /&gt;
&lt;br /&gt;
:8. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''E2237'''&lt;br /&gt;
&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. Redundant files generated by scaffolding need to be removed, along with debugging code. Ex) Coffee created by scaffolding and console logging for debugging. &lt;br /&gt;
:2. Authentication could be done using existing utilities, no need to create their own. &lt;br /&gt;
:3. Some formatting changes could be done especially on how cells span in review report page. Ex) Formatting change for spans in between cells in review report.&lt;br /&gt;
:4. Code from previous implementation is a concern.&lt;br /&gt;
&lt;br /&gt;
'''Solutions''' &lt;br /&gt;
:1. These files have not been reimplemented.&lt;br /&gt;
:2. &lt;br /&gt;
:3. The column width was lessed by 15px refer to the solution for E1934 number 3.&lt;br /&gt;
:4. Code for the review_mapping_controller was changed to match the current state of expertiza refer to the solution for E1934 number 1.&lt;br /&gt;
&lt;br /&gt;
=='''Testing Plan'''==&lt;br /&gt;
The Testing that we will implement will build from E2237 since the previous tests crash and was something they solved. We also plan to implement test using the given Test Skeleton.&lt;br /&gt;
&lt;br /&gt;
=='''Future Scope'''==&lt;br /&gt;
This project may need further improvement since it does not seem like there should be an abundance of files added and perhaps using the MVC design is not necessarily needed. There can also be a reduction of code since the difference between the two main grading histories is just whether it is a review or submission type.&lt;br /&gt;
&lt;br /&gt;
=='''Relevant Links'''==&lt;br /&gt;
* '''Github Repository:''' https://github.com/ErikLG360/expertiza&lt;br /&gt;
* '''Pull Request:''' https://github.com/expertiza/expertiza/pull/2696&lt;br /&gt;
* '''VCL Server (Valid until 12/15/23):'''  http://152.7.179.44:8080&lt;br /&gt;
* '''Video:'''&lt;br /&gt;
&lt;br /&gt;
=='''Contributors to this project'''==&lt;br /&gt;
*Amulya Usem&lt;br /&gt;
*Erik Lopez-Godinez&lt;br /&gt;
*Gowtham Pollam&lt;br /&gt;
&lt;br /&gt;
*'''Mentor''': Srilekha Gudipati&lt;/div&gt;</summary>
		<author><name>Ealopezg</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2023_-_E2383._Grading_Audit_Trail&amp;diff=152325</id>
		<title>CSC/ECE 517 Fall 2023 - E2383. Grading Audit Trail</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2023_-_E2383._Grading_Audit_Trail&amp;diff=152325"/>
		<updated>2023-12-04T19:50:06Z</updated>

		<summary type="html">&lt;p&gt;Ealopezg: /* Relevant Links */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=='''Introduction'''==&lt;br /&gt;
&lt;br /&gt;
===Problem Statement===&lt;br /&gt;
After an instructor gave a grade to an assignment, there is no way to track who gave the grade.&lt;br /&gt;
A grading audit trail must be created and the following information needs to be stored: &lt;br /&gt;
:1. When a grade is assigned by an instructor, there needs to be an indication of who did it and when it was done. &lt;br /&gt;
:2. Comments previously provided by other instructors must also be preserved.&lt;br /&gt;
&lt;br /&gt;
This information needs to be stored every time an instructor edits a grade/comment and clicks the save button.&lt;br /&gt;
&lt;br /&gt;
There have been previous attempts from teams to implement such functionality and our implementation will be based on '''E1934''' and '''E2237'''. Each of these implementations have problems of their own that we need to address.&lt;br /&gt;
&lt;br /&gt;
== '''Overview of Major Changes By Previous Teams''' ==&lt;br /&gt;
===[https://wiki-expertiza.csc.ncsu.edu/index.php/E1934_-_Grading_Audit_Trail E1934]===&lt;br /&gt;
[https://youtu.be/yyxX_kRYxLc Their Screencast]&lt;br /&gt;
&lt;br /&gt;
*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)&lt;br /&gt;
*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.&lt;br /&gt;
*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.&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. 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. &lt;br /&gt;
:2. In the view grading record page, remove the receiver column and add it to the title &lt;br /&gt;
:3. Restrict the column width on the grading record page &lt;br /&gt;
:4. Add comments on list_submissions.html.erb to indicate that the alignment was changed to fix code climate issues &lt;br /&gt;
:5. Ensure that white space changes are separate commits &lt;br /&gt;
:6. Revert changes made to list_review_mapping.html.erb &lt;br /&gt;
:7. Remove the review_report_html.erb file&lt;br /&gt;
:8. Design doc – mention why each of those files were changed&lt;br /&gt;
&lt;br /&gt;
===[https://wiki-expertiza.csc.ncsu.edu/index.php/CSC/ECE_517_Spring_2022_-_E2237:_Grading_audit_trail E2237]===&lt;br /&gt;
&lt;br /&gt;
*They fixed some issues that were causing the system to crash during testing&lt;br /&gt;
*Altered the Grading History view&lt;br /&gt;
*Explained the reasoning for changes made to files using diagrams and justifications&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. Redundant files generated by scaffolding need to be removed, along with debugging code. Ex) Coffee created by scaffolding and console logging for debugging. &lt;br /&gt;
:2. Authentication could be done using existing utilities, no need to create their own. &lt;br /&gt;
:3. Some formatting changes could be done especially on how cells span in review report page. Ex) Formatting change for spans in between cells in review report.&lt;br /&gt;
:4. Code from previous implementation is a concern.&lt;br /&gt;
&lt;br /&gt;
=='''Proposed Solution'''==&lt;br /&gt;
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. These files cannot be added haphazardly since parts of the implementation is a cause to concern and caused the changes to not be implemented. It is also using an older version of expertiza so some parts may not be compatible.  &lt;br /&gt;
&lt;br /&gt;
We must first figure out exactly what changes and issues to address in their implementation by meeting with our mentor. We also need to reimplement the following files since none of their changes were implemented:&lt;br /&gt;
&lt;br /&gt;
*app/controllers/grading_histories_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     Calls the grading history view after validating Submission and Review Type.&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/grading_history.rb &lt;br /&gt;
'''&lt;br /&gt;
     Model for Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/review_grading_history.rb &lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Model containing specifics of Review Grading History. Inherits Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/submission_grading_history.rb &lt;br /&gt;
'''&lt;br /&gt;
     Model containing specifics of Submission Grading History. Inherits Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/views/grading_history/index_html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This is a view for grading audit trail, it will display all grading histories of a &lt;br /&gt;
     submission/review&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*spec/features/grade_histories_spec.rb&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Feature test to check if the grades appear in chronological order&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*spec/features/helpers/grade_histories_helper.rb&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Helper file to facilitate the above mentioned feature test.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
=='''Reimplementation'''==&lt;br /&gt;
Since the previous teams implementations were not integrated we have to reimplement their files which we will do by looking at their commits and pull request to see what files are necessary and what can be left out to address the issues of their implementation.&lt;br /&gt;
&lt;br /&gt;
'''[https://github.com/ErikLG360/expertiza/commit/e28a857695549cc91c477587707e48100d2bd333 Files being Reimplemented/Modified]'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Reimplemented'''&lt;br /&gt;
*app/controllers/grading_histories_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was added because it was from the previous teams implementation which concerned the MVC of the grading_history they created. It dealt with allowing only the correct people to view the &lt;br /&gt;
  grading history, checking the assignment type whether it be a submission or review, and indexing all the grading history for the assignment in chronological order.&lt;br /&gt;
'''&lt;br /&gt;
*app/models/grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was added to follow the previous teams MVC of the grading_history they created. It was used to create the relationships that the grading history has with an instructor who is creating the parts of the grading history and the assignments that will have a grading history.&lt;br /&gt;
'''&lt;br /&gt;
*app/models/review_grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file creates the relationship that a participant will have a Review Grading History &lt;br /&gt;
'''&lt;br /&gt;
*app/models/submission_grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was reimplemented to follow the previous teams MVC of the SubmisionGradingHistory&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/views/grading_histories/index.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This file contains the view for the grading history table&lt;br /&gt;
'''&lt;br /&gt;
*app/views/grading_histories/_form.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This file contains the view for when a grading history contains any error when it is about to be saved&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
'''Modified'''&lt;br /&gt;
*app/controllers/grades_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was modified based off the previous teams implementation because when the method save_grade_and_comment_for_submission was called it should also create a grading history so that&lt;br /&gt;
 the grading audit can be created and added to. This was mainly focusing on the grading history of submissions and not reviews.&lt;br /&gt;
'''&lt;br /&gt;
*app/controllers/review_mapping_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was modified based off the previous teams implementation because when the method save_grade_and_comment_for_reviewer was called it should also create a grading history so that&lt;br /&gt;
 the grading audit can be created and added to. This was mainly focusing on the grading history of reviews and not submissions.&lt;br /&gt;
'''&lt;br /&gt;
*app/views/assignments/list_submissions.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     It was modified to add the new hyperlink to display the grading history of a submission.&lt;br /&gt;
'''&lt;br /&gt;
*config/routes.rb&lt;br /&gt;
'''&lt;br /&gt;
     It was to add the new route for grading histories&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
=='''Solutions - Implemented'''==&lt;br /&gt;
&lt;br /&gt;
'''E1934'''&lt;br /&gt;
&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. 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. &lt;br /&gt;
:2. In the view grading record page, remove the receiver column and add it to the title &lt;br /&gt;
:3. Restrict the column width on the grading record page &lt;br /&gt;
:4. Add comments on list_submissions.html.erb to indicate that the alignment was changed to fix code climate issues &lt;br /&gt;
:5. Ensure that white space changes are separate commits &lt;br /&gt;
:6. Revert changes made to list_review_mapping.html.erb &lt;br /&gt;
:7. Remove the review_report_html.erb file&lt;br /&gt;
:8. Design doc – mention why each of those files were changed&lt;br /&gt;
&lt;br /&gt;
'''Solutions''' &lt;br /&gt;
:1. Found the correct location to put the Review Grading History link and also fix the previous teams creation of a grading history to work with the latest expertiza update. &lt;br /&gt;
Files changed include: &lt;br /&gt;
*[https://github.com/ErikLG360/expertiza/commit/c0352cb73f7de1fba72938df2953ee82cb84bb6a app/controllers/review_mapping_controller.rb]&lt;br /&gt;
*[https://github.com/ErikLG360/expertiza/commit/c0352cb73f7de1fba72938df2953ee82cb84bb6a app/views/reports/_review_report.html.erb]&lt;br /&gt;
&lt;br /&gt;
:2. The previous implementatation of E2237 tackled this problem and moved it to the title.&lt;br /&gt;
[[File:GradingTableTitle.png]]&lt;br /&gt;
:3. The column widths were lessened by about 15px in the grading record page&lt;br /&gt;
&lt;br /&gt;
Files changed include:&lt;br /&gt;
*[https://github.com/ErikLG360/expertiza/commit/124bd12d23f75db0a68e2fac8a8487c5f7a7ed67 app/views/grading_histories/index.html.erb]&lt;br /&gt;
&lt;br /&gt;
:4.&lt;br /&gt;
&lt;br /&gt;
:5. All code climate changes are their own commits such as [https://github.com/ErikLG360/expertiza/commit/e95656f4d5e4f2ba4fc8d3f40716673ccafb41b1 This]&lt;br /&gt;
&lt;br /&gt;
:6. This issue was resolved by not adding in their implementation for the list_review_mapping.html.erb&lt;br /&gt;
&lt;br /&gt;
:7. This issue was resolved by not adding in the review_report_html.erb file&lt;br /&gt;
&lt;br /&gt;
:8. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''E2237'''&lt;br /&gt;
&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. Redundant files generated by scaffolding need to be removed, along with debugging code. Ex) Coffee created by scaffolding and console logging for debugging. &lt;br /&gt;
:2. Authentication could be done using existing utilities, no need to create their own. &lt;br /&gt;
:3. Some formatting changes could be done especially on how cells span in review report page. Ex) Formatting change for spans in between cells in review report.&lt;br /&gt;
:4. Code from previous implementation is a concern.&lt;br /&gt;
&lt;br /&gt;
'''Solutions''' &lt;br /&gt;
:1. These files have not been reimplemented.&lt;br /&gt;
:2. &lt;br /&gt;
:3. The column width was lessed by 15px refer to the solution for E1934 number 3.&lt;br /&gt;
:4. Code for the review_mapping_controller was changed to match the current state of expertiza refer to the solution for E1934 number 1.&lt;br /&gt;
&lt;br /&gt;
=='''Testing Plan'''==&lt;br /&gt;
The Testing that we will implement will build from E2237 since the previous tests crash and was something they solved. We also plan to implement test using the given Test Skeleton.&lt;br /&gt;
&lt;br /&gt;
=='''Future Scope'''==&lt;br /&gt;
This project may need further improvement since it does not seem like there should be an abundance of files added and perhaps using the MVC design is not necessarily needed. There can also be a reduction of code since the difference between the two main grading histories is just whether it is a review or submission type.&lt;br /&gt;
&lt;br /&gt;
=='''Relevant Links'''==&lt;br /&gt;
* '''Github Repository:''' https://github.com/ErikLG360/expertiza&lt;br /&gt;
* '''Pull Request:''' https://github.com/expertiza/expertiza/pull/2696&lt;br /&gt;
* '''VCL Server (Valid until 12/15/23):'''  http://152.7.179.44:8080&lt;br /&gt;
* '''Video:'''&lt;br /&gt;
&lt;br /&gt;
=='''Contributors to this project'''==&lt;br /&gt;
*Amulya Usem&lt;br /&gt;
*Erik Lopez-Godinez&lt;br /&gt;
*Gowtham Pollam&lt;br /&gt;
&lt;br /&gt;
*'''Mentor''': Srilekha Gudipati&lt;/div&gt;</summary>
		<author><name>Ealopezg</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2023_-_E2383._Grading_Audit_Trail&amp;diff=152324</id>
		<title>CSC/ECE 517 Fall 2023 - E2383. Grading Audit Trail</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2023_-_E2383._Grading_Audit_Trail&amp;diff=152324"/>
		<updated>2023-12-04T19:48:12Z</updated>

		<summary type="html">&lt;p&gt;Ealopezg: /* Relevant Links */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=='''Introduction'''==&lt;br /&gt;
&lt;br /&gt;
===Problem Statement===&lt;br /&gt;
After an instructor gave a grade to an assignment, there is no way to track who gave the grade.&lt;br /&gt;
A grading audit trail must be created and the following information needs to be stored: &lt;br /&gt;
:1. When a grade is assigned by an instructor, there needs to be an indication of who did it and when it was done. &lt;br /&gt;
:2. Comments previously provided by other instructors must also be preserved.&lt;br /&gt;
&lt;br /&gt;
This information needs to be stored every time an instructor edits a grade/comment and clicks the save button.&lt;br /&gt;
&lt;br /&gt;
There have been previous attempts from teams to implement such functionality and our implementation will be based on '''E1934''' and '''E2237'''. Each of these implementations have problems of their own that we need to address.&lt;br /&gt;
&lt;br /&gt;
== '''Overview of Major Changes By Previous Teams''' ==&lt;br /&gt;
===[https://wiki-expertiza.csc.ncsu.edu/index.php/E1934_-_Grading_Audit_Trail E1934]===&lt;br /&gt;
[https://youtu.be/yyxX_kRYxLc Their Screencast]&lt;br /&gt;
&lt;br /&gt;
*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)&lt;br /&gt;
*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.&lt;br /&gt;
*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.&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. 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. &lt;br /&gt;
:2. In the view grading record page, remove the receiver column and add it to the title &lt;br /&gt;
:3. Restrict the column width on the grading record page &lt;br /&gt;
:4. Add comments on list_submissions.html.erb to indicate that the alignment was changed to fix code climate issues &lt;br /&gt;
:5. Ensure that white space changes are separate commits &lt;br /&gt;
:6. Revert changes made to list_review_mapping.html.erb &lt;br /&gt;
:7. Remove the review_report_html.erb file&lt;br /&gt;
:8. Design doc – mention why each of those files were changed&lt;br /&gt;
&lt;br /&gt;
===[https://wiki-expertiza.csc.ncsu.edu/index.php/CSC/ECE_517_Spring_2022_-_E2237:_Grading_audit_trail E2237]===&lt;br /&gt;
&lt;br /&gt;
*They fixed some issues that were causing the system to crash during testing&lt;br /&gt;
*Altered the Grading History view&lt;br /&gt;
*Explained the reasoning for changes made to files using diagrams and justifications&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. Redundant files generated by scaffolding need to be removed, along with debugging code. Ex) Coffee created by scaffolding and console logging for debugging. &lt;br /&gt;
:2. Authentication could be done using existing utilities, no need to create their own. &lt;br /&gt;
:3. Some formatting changes could be done especially on how cells span in review report page. Ex) Formatting change for spans in between cells in review report.&lt;br /&gt;
:4. Code from previous implementation is a concern.&lt;br /&gt;
&lt;br /&gt;
=='''Proposed Solution'''==&lt;br /&gt;
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. These files cannot be added haphazardly since parts of the implementation is a cause to concern and caused the changes to not be implemented. It is also using an older version of expertiza so some parts may not be compatible.  &lt;br /&gt;
&lt;br /&gt;
We must first figure out exactly what changes and issues to address in their implementation by meeting with our mentor. We also need to reimplement the following files since none of their changes were implemented:&lt;br /&gt;
&lt;br /&gt;
*app/controllers/grading_histories_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     Calls the grading history view after validating Submission and Review Type.&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/grading_history.rb &lt;br /&gt;
'''&lt;br /&gt;
     Model for Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/review_grading_history.rb &lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Model containing specifics of Review Grading History. Inherits Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/submission_grading_history.rb &lt;br /&gt;
'''&lt;br /&gt;
     Model containing specifics of Submission Grading History. Inherits Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/views/grading_history/index_html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This is a view for grading audit trail, it will display all grading histories of a &lt;br /&gt;
     submission/review&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*spec/features/grade_histories_spec.rb&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Feature test to check if the grades appear in chronological order&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*spec/features/helpers/grade_histories_helper.rb&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Helper file to facilitate the above mentioned feature test.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
=='''Reimplementation'''==&lt;br /&gt;
Since the previous teams implementations were not integrated we have to reimplement their files which we will do by looking at their commits and pull request to see what files are necessary and what can be left out to address the issues of their implementation.&lt;br /&gt;
&lt;br /&gt;
'''[https://github.com/ErikLG360/expertiza/commit/e28a857695549cc91c477587707e48100d2bd333 Files being Reimplemented/Modified]'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Reimplemented'''&lt;br /&gt;
*app/controllers/grading_histories_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was added because it was from the previous teams implementation which concerned the MVC of the grading_history they created. It dealt with allowing only the correct people to view the &lt;br /&gt;
  grading history, checking the assignment type whether it be a submission or review, and indexing all the grading history for the assignment in chronological order.&lt;br /&gt;
'''&lt;br /&gt;
*app/models/grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was added to follow the previous teams MVC of the grading_history they created. It was used to create the relationships that the grading history has with an instructor who is creating the parts of the grading history and the assignments that will have a grading history.&lt;br /&gt;
'''&lt;br /&gt;
*app/models/review_grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file creates the relationship that a participant will have a Review Grading History &lt;br /&gt;
'''&lt;br /&gt;
*app/models/submission_grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was reimplemented to follow the previous teams MVC of the SubmisionGradingHistory&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/views/grading_histories/index.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This file contains the view for the grading history table&lt;br /&gt;
'''&lt;br /&gt;
*app/views/grading_histories/_form.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This file contains the view for when a grading history contains any error when it is about to be saved&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
'''Modified'''&lt;br /&gt;
*app/controllers/grades_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was modified based off the previous teams implementation because when the method save_grade_and_comment_for_submission was called it should also create a grading history so that&lt;br /&gt;
 the grading audit can be created and added to. This was mainly focusing on the grading history of submissions and not reviews.&lt;br /&gt;
'''&lt;br /&gt;
*app/controllers/review_mapping_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was modified based off the previous teams implementation because when the method save_grade_and_comment_for_reviewer was called it should also create a grading history so that&lt;br /&gt;
 the grading audit can be created and added to. This was mainly focusing on the grading history of reviews and not submissions.&lt;br /&gt;
'''&lt;br /&gt;
*app/views/assignments/list_submissions.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     It was modified to add the new hyperlink to display the grading history of a submission.&lt;br /&gt;
'''&lt;br /&gt;
*config/routes.rb&lt;br /&gt;
'''&lt;br /&gt;
     It was to add the new route for grading histories&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
=='''Solutions - Implemented'''==&lt;br /&gt;
&lt;br /&gt;
'''E1934'''&lt;br /&gt;
&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. 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. &lt;br /&gt;
:2. In the view grading record page, remove the receiver column and add it to the title &lt;br /&gt;
:3. Restrict the column width on the grading record page &lt;br /&gt;
:4. Add comments on list_submissions.html.erb to indicate that the alignment was changed to fix code climate issues &lt;br /&gt;
:5. Ensure that white space changes are separate commits &lt;br /&gt;
:6. Revert changes made to list_review_mapping.html.erb &lt;br /&gt;
:7. Remove the review_report_html.erb file&lt;br /&gt;
:8. Design doc – mention why each of those files were changed&lt;br /&gt;
&lt;br /&gt;
'''Solutions''' &lt;br /&gt;
:1. Found the correct location to put the Review Grading History link and also fix the previous teams creation of a grading history to work with the latest expertiza update. &lt;br /&gt;
Files changed include: &lt;br /&gt;
*[https://github.com/ErikLG360/expertiza/commit/c0352cb73f7de1fba72938df2953ee82cb84bb6a app/controllers/review_mapping_controller.rb]&lt;br /&gt;
*[https://github.com/ErikLG360/expertiza/commit/c0352cb73f7de1fba72938df2953ee82cb84bb6a app/views/reports/_review_report.html.erb]&lt;br /&gt;
&lt;br /&gt;
:2. The previous implementatation of E2237 tackled this problem and moved it to the title.&lt;br /&gt;
[[File:GradingTableTitle.png]]&lt;br /&gt;
:3. The column widths were lessened by about 15px in the grading record page&lt;br /&gt;
&lt;br /&gt;
Files changed include:&lt;br /&gt;
*[https://github.com/ErikLG360/expertiza/commit/124bd12d23f75db0a68e2fac8a8487c5f7a7ed67 app/views/grading_histories/index.html.erb]&lt;br /&gt;
&lt;br /&gt;
:4.&lt;br /&gt;
&lt;br /&gt;
:5. All code climate changes are their own commits such as [https://github.com/ErikLG360/expertiza/commit/e95656f4d5e4f2ba4fc8d3f40716673ccafb41b1 This]&lt;br /&gt;
&lt;br /&gt;
:6. This issue was resolved by not adding in their implementation for the list_review_mapping.html.erb&lt;br /&gt;
&lt;br /&gt;
:7. This issue was resolved by not adding in the review_report_html.erb file&lt;br /&gt;
&lt;br /&gt;
:8. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''E2237'''&lt;br /&gt;
&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. Redundant files generated by scaffolding need to be removed, along with debugging code. Ex) Coffee created by scaffolding and console logging for debugging. &lt;br /&gt;
:2. Authentication could be done using existing utilities, no need to create their own. &lt;br /&gt;
:3. Some formatting changes could be done especially on how cells span in review report page. Ex) Formatting change for spans in between cells in review report.&lt;br /&gt;
:4. Code from previous implementation is a concern.&lt;br /&gt;
&lt;br /&gt;
'''Solutions''' &lt;br /&gt;
:1. These files have not been reimplemented.&lt;br /&gt;
:2. &lt;br /&gt;
:3. The column width was lessed by 15px refer to the solution for E1934 number 3.&lt;br /&gt;
:4. Code for the review_mapping_controller was changed to match the current state of expertiza refer to the solution for E1934 number 1.&lt;br /&gt;
&lt;br /&gt;
=='''Testing Plan'''==&lt;br /&gt;
The Testing that we will implement will build from E2237 since the previous tests crash and was something they solved. We also plan to implement test using the given Test Skeleton.&lt;br /&gt;
&lt;br /&gt;
=='''Future Scope'''==&lt;br /&gt;
This project may need further improvement since it does not seem like there should be an abundance of files added and perhaps using the MVC design is not necessarily needed. There can also be a reduction of code since the difference between the two main grading histories is just whether it is a review or submission type.&lt;br /&gt;
&lt;br /&gt;
=='''Relevant Links'''==&lt;br /&gt;
* '''Github Repository:''' https://github.com/ErikLG360/expertiza&lt;br /&gt;
* '''Pull Request:''' https://github.com/expertiza/expertiza/pull/2696&lt;br /&gt;
* '''VCL Server:'''  http://152.7.179.44:8080&lt;br /&gt;
* '''Video:'''&lt;br /&gt;
&lt;br /&gt;
=='''Contributors to this project'''==&lt;br /&gt;
*Amulya Usem&lt;br /&gt;
*Erik Lopez-Godinez&lt;br /&gt;
*Gowtham Pollam&lt;br /&gt;
&lt;br /&gt;
*'''Mentor''': Srilekha Gudipati&lt;/div&gt;</summary>
		<author><name>Ealopezg</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2023_-_E2383._Grading_Audit_Trail&amp;diff=152322</id>
		<title>CSC/ECE 517 Fall 2023 - E2383. Grading Audit Trail</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2023_-_E2383._Grading_Audit_Trail&amp;diff=152322"/>
		<updated>2023-12-04T19:37:27Z</updated>

		<summary type="html">&lt;p&gt;Ealopezg: /* Reimplementation */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=='''Introduction'''==&lt;br /&gt;
&lt;br /&gt;
===Problem Statement===&lt;br /&gt;
After an instructor gave a grade to an assignment, there is no way to track who gave the grade.&lt;br /&gt;
A grading audit trail must be created and the following information needs to be stored: &lt;br /&gt;
:1. When a grade is assigned by an instructor, there needs to be an indication of who did it and when it was done. &lt;br /&gt;
:2. Comments previously provided by other instructors must also be preserved.&lt;br /&gt;
&lt;br /&gt;
This information needs to be stored every time an instructor edits a grade/comment and clicks the save button.&lt;br /&gt;
&lt;br /&gt;
There have been previous attempts from teams to implement such functionality and our implementation will be based on '''E1934''' and '''E2237'''. Each of these implementations have problems of their own that we need to address.&lt;br /&gt;
&lt;br /&gt;
== '''Overview of Major Changes By Previous Teams''' ==&lt;br /&gt;
===[https://wiki-expertiza.csc.ncsu.edu/index.php/E1934_-_Grading_Audit_Trail E1934]===&lt;br /&gt;
[https://youtu.be/yyxX_kRYxLc Their Screencast]&lt;br /&gt;
&lt;br /&gt;
*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)&lt;br /&gt;
*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.&lt;br /&gt;
*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.&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. 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. &lt;br /&gt;
:2. In the view grading record page, remove the receiver column and add it to the title &lt;br /&gt;
:3. Restrict the column width on the grading record page &lt;br /&gt;
:4. Add comments on list_submissions.html.erb to indicate that the alignment was changed to fix code climate issues &lt;br /&gt;
:5. Ensure that white space changes are separate commits &lt;br /&gt;
:6. Revert changes made to list_review_mapping.html.erb &lt;br /&gt;
:7. Remove the review_report_html.erb file&lt;br /&gt;
:8. Design doc – mention why each of those files were changed&lt;br /&gt;
&lt;br /&gt;
===[https://wiki-expertiza.csc.ncsu.edu/index.php/CSC/ECE_517_Spring_2022_-_E2237:_Grading_audit_trail E2237]===&lt;br /&gt;
&lt;br /&gt;
*They fixed some issues that were causing the system to crash during testing&lt;br /&gt;
*Altered the Grading History view&lt;br /&gt;
*Explained the reasoning for changes made to files using diagrams and justifications&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. Redundant files generated by scaffolding need to be removed, along with debugging code. Ex) Coffee created by scaffolding and console logging for debugging. &lt;br /&gt;
:2. Authentication could be done using existing utilities, no need to create their own. &lt;br /&gt;
:3. Some formatting changes could be done especially on how cells span in review report page. Ex) Formatting change for spans in between cells in review report.&lt;br /&gt;
:4. Code from previous implementation is a concern.&lt;br /&gt;
&lt;br /&gt;
=='''Proposed Solution'''==&lt;br /&gt;
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. These files cannot be added haphazardly since parts of the implementation is a cause to concern and caused the changes to not be implemented. It is also using an older version of expertiza so some parts may not be compatible.  &lt;br /&gt;
&lt;br /&gt;
We must first figure out exactly what changes and issues to address in their implementation by meeting with our mentor. We also need to reimplement the following files since none of their changes were implemented:&lt;br /&gt;
&lt;br /&gt;
*app/controllers/grading_histories_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     Calls the grading history view after validating Submission and Review Type.&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/grading_history.rb &lt;br /&gt;
'''&lt;br /&gt;
     Model for Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/review_grading_history.rb &lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Model containing specifics of Review Grading History. Inherits Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/submission_grading_history.rb &lt;br /&gt;
'''&lt;br /&gt;
     Model containing specifics of Submission Grading History. Inherits Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/views/grading_history/index_html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This is a view for grading audit trail, it will display all grading histories of a &lt;br /&gt;
     submission/review&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*spec/features/grade_histories_spec.rb&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Feature test to check if the grades appear in chronological order&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*spec/features/helpers/grade_histories_helper.rb&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Helper file to facilitate the above mentioned feature test.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
=='''Reimplementation'''==&lt;br /&gt;
Since the previous teams implementations were not integrated we have to reimplement their files which we will do by looking at their commits and pull request to see what files are necessary and what can be left out to address the issues of their implementation.&lt;br /&gt;
&lt;br /&gt;
'''[https://github.com/ErikLG360/expertiza/commit/e28a857695549cc91c477587707e48100d2bd333 Files being Reimplemented/Modified]'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Reimplemented'''&lt;br /&gt;
*app/controllers/grading_histories_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was added because it was from the previous teams implementation which concerned the MVC of the grading_history they created. It dealt with allowing only the correct people to view the &lt;br /&gt;
  grading history, checking the assignment type whether it be a submission or review, and indexing all the grading history for the assignment in chronological order.&lt;br /&gt;
'''&lt;br /&gt;
*app/models/grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was added to follow the previous teams MVC of the grading_history they created. It was used to create the relationships that the grading history has with an instructor who is creating the parts of the grading history and the assignments that will have a grading history.&lt;br /&gt;
'''&lt;br /&gt;
*app/models/review_grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file creates the relationship that a participant will have a Review Grading History &lt;br /&gt;
'''&lt;br /&gt;
*app/models/submission_grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was reimplemented to follow the previous teams MVC of the SubmisionGradingHistory&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/views/grading_histories/index.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This file contains the view for the grading history table&lt;br /&gt;
'''&lt;br /&gt;
*app/views/grading_histories/_form.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This file contains the view for when a grading history contains any error when it is about to be saved&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
'''Modified'''&lt;br /&gt;
*app/controllers/grades_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was modified based off the previous teams implementation because when the method save_grade_and_comment_for_submission was called it should also create a grading history so that&lt;br /&gt;
 the grading audit can be created and added to. This was mainly focusing on the grading history of submissions and not reviews.&lt;br /&gt;
'''&lt;br /&gt;
*app/controllers/review_mapping_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was modified based off the previous teams implementation because when the method save_grade_and_comment_for_reviewer was called it should also create a grading history so that&lt;br /&gt;
 the grading audit can be created and added to. This was mainly focusing on the grading history of reviews and not submissions.&lt;br /&gt;
'''&lt;br /&gt;
*app/views/assignments/list_submissions.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     It was modified to add the new hyperlink to display the grading history of a submission.&lt;br /&gt;
'''&lt;br /&gt;
*config/routes.rb&lt;br /&gt;
'''&lt;br /&gt;
     It was to add the new route for grading histories&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
=='''Solutions - Implemented'''==&lt;br /&gt;
&lt;br /&gt;
'''E1934'''&lt;br /&gt;
&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. 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. &lt;br /&gt;
:2. In the view grading record page, remove the receiver column and add it to the title &lt;br /&gt;
:3. Restrict the column width on the grading record page &lt;br /&gt;
:4. Add comments on list_submissions.html.erb to indicate that the alignment was changed to fix code climate issues &lt;br /&gt;
:5. Ensure that white space changes are separate commits &lt;br /&gt;
:6. Revert changes made to list_review_mapping.html.erb &lt;br /&gt;
:7. Remove the review_report_html.erb file&lt;br /&gt;
:8. Design doc – mention why each of those files were changed&lt;br /&gt;
&lt;br /&gt;
'''Solutions''' &lt;br /&gt;
:1. Found the correct location to put the Review Grading History link and also fix the previous teams creation of a grading history to work with the latest expertiza update. &lt;br /&gt;
Files changed include: &lt;br /&gt;
*[https://github.com/ErikLG360/expertiza/commit/c0352cb73f7de1fba72938df2953ee82cb84bb6a app/controllers/review_mapping_controller.rb]&lt;br /&gt;
*[https://github.com/ErikLG360/expertiza/commit/c0352cb73f7de1fba72938df2953ee82cb84bb6a app/views/reports/_review_report.html.erb]&lt;br /&gt;
&lt;br /&gt;
:2. The previous implementatation of E2237 tackled this problem and moved it to the title.&lt;br /&gt;
[[File:GradingTableTitle.png]]&lt;br /&gt;
:3. The column widths were lessened by about 15px in the grading record page&lt;br /&gt;
&lt;br /&gt;
Files changed include:&lt;br /&gt;
*[https://github.com/ErikLG360/expertiza/commit/124bd12d23f75db0a68e2fac8a8487c5f7a7ed67 app/views/grading_histories/index.html.erb]&lt;br /&gt;
&lt;br /&gt;
:4.&lt;br /&gt;
&lt;br /&gt;
:5. All code climate changes are their own commits such as [https://github.com/ErikLG360/expertiza/commit/e95656f4d5e4f2ba4fc8d3f40716673ccafb41b1 This]&lt;br /&gt;
&lt;br /&gt;
:6. This issue was resolved by not adding in their implementation for the list_review_mapping.html.erb&lt;br /&gt;
&lt;br /&gt;
:7. This issue was resolved by not adding in the review_report_html.erb file&lt;br /&gt;
&lt;br /&gt;
:8. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''E2237'''&lt;br /&gt;
&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. Redundant files generated by scaffolding need to be removed, along with debugging code. Ex) Coffee created by scaffolding and console logging for debugging. &lt;br /&gt;
:2. Authentication could be done using existing utilities, no need to create their own. &lt;br /&gt;
:3. Some formatting changes could be done especially on how cells span in review report page. Ex) Formatting change for spans in between cells in review report.&lt;br /&gt;
:4. Code from previous implementation is a concern.&lt;br /&gt;
&lt;br /&gt;
'''Solutions''' &lt;br /&gt;
:1. These files have not been reimplemented.&lt;br /&gt;
:2. &lt;br /&gt;
:3. The column width was lessed by 15px refer to the solution for E1934 number 3.&lt;br /&gt;
:4. Code for the review_mapping_controller was changed to match the current state of expertiza refer to the solution for E1934 number 1.&lt;br /&gt;
&lt;br /&gt;
=='''Testing Plan'''==&lt;br /&gt;
The Testing that we will implement will build from E2237 since the previous tests crash and was something they solved. We also plan to implement test using the given Test Skeleton.&lt;br /&gt;
&lt;br /&gt;
=='''Future Scope'''==&lt;br /&gt;
This project may need further improvement since it does not seem like there should be an abundance of files added and perhaps using the MVC design is not necessarily needed. There can also be a reduction of code since the difference between the two main grading histories is just whether it is a review or submission type.&lt;br /&gt;
&lt;br /&gt;
=='''Relevant Links'''==&lt;br /&gt;
* '''Github Repository:''' https://github.com/ErikLG360/expertiza&lt;br /&gt;
* '''Pull Request:''' https://github.com/expertiza/expertiza/pull/2696&lt;br /&gt;
* '''VCL Server:''' NOT Setup yet&lt;br /&gt;
&lt;br /&gt;
=='''Contributors to this project'''==&lt;br /&gt;
*Amulya Usem&lt;br /&gt;
*Erik Lopez-Godinez&lt;br /&gt;
*Gowtham Pollam&lt;br /&gt;
&lt;br /&gt;
*'''Mentor''': Srilekha Gudipati&lt;/div&gt;</summary>
		<author><name>Ealopezg</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2023_-_E2383._Grading_Audit_Trail&amp;diff=152320</id>
		<title>CSC/ECE 517 Fall 2023 - E2383. Grading Audit Trail</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2023_-_E2383._Grading_Audit_Trail&amp;diff=152320"/>
		<updated>2023-12-04T18:42:19Z</updated>

		<summary type="html">&lt;p&gt;Ealopezg: /* Future Scope */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=='''Introduction'''==&lt;br /&gt;
&lt;br /&gt;
===Problem Statement===&lt;br /&gt;
After an instructor gave a grade to an assignment, there is no way to track who gave the grade.&lt;br /&gt;
A grading audit trail must be created and the following information needs to be stored: &lt;br /&gt;
:1. When a grade is assigned by an instructor, there needs to be an indication of who did it and when it was done. &lt;br /&gt;
:2. Comments previously provided by other instructors must also be preserved.&lt;br /&gt;
&lt;br /&gt;
This information needs to be stored every time an instructor edits a grade/comment and clicks the save button.&lt;br /&gt;
&lt;br /&gt;
There have been previous attempts from teams to implement such functionality and our implementation will be based on '''E1934''' and '''E2237'''. Each of these implementations have problems of their own that we need to address.&lt;br /&gt;
&lt;br /&gt;
== '''Overview of Major Changes By Previous Teams''' ==&lt;br /&gt;
===[https://wiki-expertiza.csc.ncsu.edu/index.php/E1934_-_Grading_Audit_Trail E1934]===&lt;br /&gt;
[https://youtu.be/yyxX_kRYxLc Their Screencast]&lt;br /&gt;
&lt;br /&gt;
*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)&lt;br /&gt;
*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.&lt;br /&gt;
*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.&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. 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. &lt;br /&gt;
:2. In the view grading record page, remove the receiver column and add it to the title &lt;br /&gt;
:3. Restrict the column width on the grading record page &lt;br /&gt;
:4. Add comments on list_submissions.html.erb to indicate that the alignment was changed to fix code climate issues &lt;br /&gt;
:5. Ensure that white space changes are separate commits &lt;br /&gt;
:6. Revert changes made to list_review_mapping.html.erb &lt;br /&gt;
:7. Remove the review_report_html.erb file&lt;br /&gt;
:8. Design doc – mention why each of those files were changed&lt;br /&gt;
&lt;br /&gt;
===[https://wiki-expertiza.csc.ncsu.edu/index.php/CSC/ECE_517_Spring_2022_-_E2237:_Grading_audit_trail E2237]===&lt;br /&gt;
&lt;br /&gt;
*They fixed some issues that were causing the system to crash during testing&lt;br /&gt;
*Altered the Grading History view&lt;br /&gt;
*Explained the reasoning for changes made to files using diagrams and justifications&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. Redundant files generated by scaffolding need to be removed, along with debugging code. Ex) Coffee created by scaffolding and console logging for debugging. &lt;br /&gt;
:2. Authentication could be done using existing utilities, no need to create their own. &lt;br /&gt;
:3. Some formatting changes could be done especially on how cells span in review report page. Ex) Formatting change for spans in between cells in review report.&lt;br /&gt;
:4. Code from previous implementation is a concern.&lt;br /&gt;
&lt;br /&gt;
=='''Proposed Solution'''==&lt;br /&gt;
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. These files cannot be added haphazardly since parts of the implementation is a cause to concern and caused the changes to not be implemented. It is also using an older version of expertiza so some parts may not be compatible.  &lt;br /&gt;
&lt;br /&gt;
We must first figure out exactly what changes and issues to address in their implementation by meeting with our mentor. We also need to reimplement the following files since none of their changes were implemented:&lt;br /&gt;
&lt;br /&gt;
*app/controllers/grading_histories_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     Calls the grading history view after validating Submission and Review Type.&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/grading_history.rb &lt;br /&gt;
'''&lt;br /&gt;
     Model for Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/review_grading_history.rb &lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Model containing specifics of Review Grading History. Inherits Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/submission_grading_history.rb &lt;br /&gt;
'''&lt;br /&gt;
     Model containing specifics of Submission Grading History. Inherits Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/views/grading_history/index_html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This is a view for grading audit trail, it will display all grading histories of a &lt;br /&gt;
     submission/review&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*spec/features/grade_histories_spec.rb&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Feature test to check if the grades appear in chronological order&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*spec/features/helpers/grade_histories_helper.rb&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Helper file to facilitate the above mentioned feature test.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
=='''Reimplementation'''==&lt;br /&gt;
Since the previous teams implementations were not integrated we have to reimplement their files which we will do by looking at their commits and pull request to see what files are necessary and what can be left out to address the issues of their implementation.&lt;br /&gt;
&lt;br /&gt;
'''[https://github.com/ErikLG360/expertiza/commit/e28a857695549cc91c477587707e48100d2bd333 Files being Reimplemented/Modified]'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Reimplemented'''&lt;br /&gt;
*app/controllers/grading_histories_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was added because it was from the previous teams implementation which concerned the MVC of the grading_history they created. It dealt with allowing only the correct people to view the &lt;br /&gt;
  grading history, checking the assignment type whether it be a submission or review, and indexing all the grading history for the assignment in chronological order.&lt;br /&gt;
'''&lt;br /&gt;
*app/models/grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was added to follow the previous teams MVC of the grading_history they created.&lt;br /&gt;
'''&lt;br /&gt;
*app/models/review_grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was reimplemented to follow the previous teams MVC of the ReviewGradingHistory&lt;br /&gt;
'''&lt;br /&gt;
*app/models/submission_grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was reimplemented to follow the previous teams MVC of the SubmisionGradingHistory&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/views/grading_histories/index.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This file contains the view for the grading history table&lt;br /&gt;
'''&lt;br /&gt;
*app/views/grading_histories/_form.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This file contains the view for when a grading history contains any error when it is about to be saved&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
'''Modified'''&lt;br /&gt;
*app/controllers/grades_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was modified based off the previous teams implementation because when the method save_grade_and_comment_for_submission was called it should also create a grading history so that&lt;br /&gt;
 the grading audit can be created and added to. This was mainly focusing on the grading history of submissions and not reviews.&lt;br /&gt;
'''&lt;br /&gt;
*app/controllers/review_mapping_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was modified based off the previous teams implementation because when the method save_grade_and_comment_for_reviewer was called it should also create a grading history so that&lt;br /&gt;
 the grading audit can be created and added to. This was mainly focusing on the grading history of reviews and not submissions.&lt;br /&gt;
'''&lt;br /&gt;
*app/views/assignments/list_submissions.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     It was modified to add the new hyperlink to display the grading history of a submission.&lt;br /&gt;
'''&lt;br /&gt;
*config/routes.rb&lt;br /&gt;
'''&lt;br /&gt;
     It was to add the new route for grading histories&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
=='''Solutions - Implemented'''==&lt;br /&gt;
&lt;br /&gt;
'''E1934'''&lt;br /&gt;
&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. 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. &lt;br /&gt;
:2. In the view grading record page, remove the receiver column and add it to the title &lt;br /&gt;
:3. Restrict the column width on the grading record page &lt;br /&gt;
:4. Add comments on list_submissions.html.erb to indicate that the alignment was changed to fix code climate issues &lt;br /&gt;
:5. Ensure that white space changes are separate commits &lt;br /&gt;
:6. Revert changes made to list_review_mapping.html.erb &lt;br /&gt;
:7. Remove the review_report_html.erb file&lt;br /&gt;
:8. Design doc – mention why each of those files were changed&lt;br /&gt;
&lt;br /&gt;
'''Solutions''' &lt;br /&gt;
:1. Found the correct location to put the Review Grading History link and also fix the previous teams creation of a grading history to work with the latest expertiza update. &lt;br /&gt;
Files changed include: &lt;br /&gt;
*[https://github.com/ErikLG360/expertiza/commit/c0352cb73f7de1fba72938df2953ee82cb84bb6a app/controllers/review_mapping_controller.rb]&lt;br /&gt;
*[https://github.com/ErikLG360/expertiza/commit/c0352cb73f7de1fba72938df2953ee82cb84bb6a app/views/reports/_review_report.html.erb]&lt;br /&gt;
&lt;br /&gt;
:2. The previous implementatation of E2237 tackled this problem and moved it to the title.&lt;br /&gt;
[[File:GradingTableTitle.png]]&lt;br /&gt;
:3. The column widths were lessened by about 15px in the grading record page&lt;br /&gt;
&lt;br /&gt;
Files changed include:&lt;br /&gt;
*[https://github.com/ErikLG360/expertiza/commit/124bd12d23f75db0a68e2fac8a8487c5f7a7ed67 app/views/grading_histories/index.html.erb]&lt;br /&gt;
&lt;br /&gt;
:4.&lt;br /&gt;
&lt;br /&gt;
:5. All code climate changes are their own commits such as [https://github.com/ErikLG360/expertiza/commit/e95656f4d5e4f2ba4fc8d3f40716673ccafb41b1 This]&lt;br /&gt;
&lt;br /&gt;
:6. This issue was resolved by not adding in their implementation for the list_review_mapping.html.erb&lt;br /&gt;
&lt;br /&gt;
:7. This issue was resolved by not adding in the review_report_html.erb file&lt;br /&gt;
&lt;br /&gt;
:8. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''E2237'''&lt;br /&gt;
&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. Redundant files generated by scaffolding need to be removed, along with debugging code. Ex) Coffee created by scaffolding and console logging for debugging. &lt;br /&gt;
:2. Authentication could be done using existing utilities, no need to create their own. &lt;br /&gt;
:3. Some formatting changes could be done especially on how cells span in review report page. Ex) Formatting change for spans in between cells in review report.&lt;br /&gt;
:4. Code from previous implementation is a concern.&lt;br /&gt;
&lt;br /&gt;
'''Solutions''' &lt;br /&gt;
:1. These files have not been reimplemented.&lt;br /&gt;
:2. &lt;br /&gt;
:3. The column width was lessed by 15px refer to the solution for E1934 number 3.&lt;br /&gt;
:4. Code for the review_mapping_controller was changed to match the current state of expertiza refer to the solution for E1934 number 1.&lt;br /&gt;
&lt;br /&gt;
=='''Testing Plan'''==&lt;br /&gt;
The Testing that we will implement will build from E2237 since the previous tests crash and was something they solved. We also plan to implement test using the given Test Skeleton.&lt;br /&gt;
&lt;br /&gt;
=='''Future Scope'''==&lt;br /&gt;
This project may need further improvement since it does not seem like there should be an abundance of files added and perhaps using the MVC design is not necessarily needed. There can also be a reduction of code since the difference between the two main grading histories is just whether it is a review or submission type.&lt;br /&gt;
&lt;br /&gt;
=='''Relevant Links'''==&lt;br /&gt;
* '''Github Repository:''' https://github.com/ErikLG360/expertiza&lt;br /&gt;
* '''Pull Request:''' https://github.com/expertiza/expertiza/pull/2696&lt;br /&gt;
* '''VCL Server:''' NOT Setup yet&lt;br /&gt;
&lt;br /&gt;
=='''Contributors to this project'''==&lt;br /&gt;
*Amulya Usem&lt;br /&gt;
*Erik Lopez-Godinez&lt;br /&gt;
*Gowtham Pollam&lt;br /&gt;
&lt;br /&gt;
*'''Mentor''': Srilekha Gudipati&lt;/div&gt;</summary>
		<author><name>Ealopezg</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2023_-_E2383._Grading_Audit_Trail&amp;diff=152319</id>
		<title>CSC/ECE 517 Fall 2023 - E2383. Grading Audit Trail</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2023_-_E2383._Grading_Audit_Trail&amp;diff=152319"/>
		<updated>2023-12-04T18:40:17Z</updated>

		<summary type="html">&lt;p&gt;Ealopezg: /* Solutions - Implemented */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=='''Introduction'''==&lt;br /&gt;
&lt;br /&gt;
===Problem Statement===&lt;br /&gt;
After an instructor gave a grade to an assignment, there is no way to track who gave the grade.&lt;br /&gt;
A grading audit trail must be created and the following information needs to be stored: &lt;br /&gt;
:1. When a grade is assigned by an instructor, there needs to be an indication of who did it and when it was done. &lt;br /&gt;
:2. Comments previously provided by other instructors must also be preserved.&lt;br /&gt;
&lt;br /&gt;
This information needs to be stored every time an instructor edits a grade/comment and clicks the save button.&lt;br /&gt;
&lt;br /&gt;
There have been previous attempts from teams to implement such functionality and our implementation will be based on '''E1934''' and '''E2237'''. Each of these implementations have problems of their own that we need to address.&lt;br /&gt;
&lt;br /&gt;
== '''Overview of Major Changes By Previous Teams''' ==&lt;br /&gt;
===[https://wiki-expertiza.csc.ncsu.edu/index.php/E1934_-_Grading_Audit_Trail E1934]===&lt;br /&gt;
[https://youtu.be/yyxX_kRYxLc Their Screencast]&lt;br /&gt;
&lt;br /&gt;
*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)&lt;br /&gt;
*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.&lt;br /&gt;
*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.&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. 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. &lt;br /&gt;
:2. In the view grading record page, remove the receiver column and add it to the title &lt;br /&gt;
:3. Restrict the column width on the grading record page &lt;br /&gt;
:4. Add comments on list_submissions.html.erb to indicate that the alignment was changed to fix code climate issues &lt;br /&gt;
:5. Ensure that white space changes are separate commits &lt;br /&gt;
:6. Revert changes made to list_review_mapping.html.erb &lt;br /&gt;
:7. Remove the review_report_html.erb file&lt;br /&gt;
:8. Design doc – mention why each of those files were changed&lt;br /&gt;
&lt;br /&gt;
===[https://wiki-expertiza.csc.ncsu.edu/index.php/CSC/ECE_517_Spring_2022_-_E2237:_Grading_audit_trail E2237]===&lt;br /&gt;
&lt;br /&gt;
*They fixed some issues that were causing the system to crash during testing&lt;br /&gt;
*Altered the Grading History view&lt;br /&gt;
*Explained the reasoning for changes made to files using diagrams and justifications&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. Redundant files generated by scaffolding need to be removed, along with debugging code. Ex) Coffee created by scaffolding and console logging for debugging. &lt;br /&gt;
:2. Authentication could be done using existing utilities, no need to create their own. &lt;br /&gt;
:3. Some formatting changes could be done especially on how cells span in review report page. Ex) Formatting change for spans in between cells in review report.&lt;br /&gt;
:4. Code from previous implementation is a concern.&lt;br /&gt;
&lt;br /&gt;
=='''Proposed Solution'''==&lt;br /&gt;
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. These files cannot be added haphazardly since parts of the implementation is a cause to concern and caused the changes to not be implemented. It is also using an older version of expertiza so some parts may not be compatible.  &lt;br /&gt;
&lt;br /&gt;
We must first figure out exactly what changes and issues to address in their implementation by meeting with our mentor. We also need to reimplement the following files since none of their changes were implemented:&lt;br /&gt;
&lt;br /&gt;
*app/controllers/grading_histories_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     Calls the grading history view after validating Submission and Review Type.&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/grading_history.rb &lt;br /&gt;
'''&lt;br /&gt;
     Model for Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/review_grading_history.rb &lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Model containing specifics of Review Grading History. Inherits Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/submission_grading_history.rb &lt;br /&gt;
'''&lt;br /&gt;
     Model containing specifics of Submission Grading History. Inherits Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/views/grading_history/index_html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This is a view for grading audit trail, it will display all grading histories of a &lt;br /&gt;
     submission/review&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*spec/features/grade_histories_spec.rb&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Feature test to check if the grades appear in chronological order&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*spec/features/helpers/grade_histories_helper.rb&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Helper file to facilitate the above mentioned feature test.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
=='''Reimplementation'''==&lt;br /&gt;
Since the previous teams implementations were not integrated we have to reimplement their files which we will do by looking at their commits and pull request to see what files are necessary and what can be left out to address the issues of their implementation.&lt;br /&gt;
&lt;br /&gt;
'''[https://github.com/ErikLG360/expertiza/commit/e28a857695549cc91c477587707e48100d2bd333 Files being Reimplemented/Modified]'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Reimplemented'''&lt;br /&gt;
*app/controllers/grading_histories_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was added because it was from the previous teams implementation which concerned the MVC of the grading_history they created. It dealt with allowing only the correct people to view the &lt;br /&gt;
  grading history, checking the assignment type whether it be a submission or review, and indexing all the grading history for the assignment in chronological order.&lt;br /&gt;
'''&lt;br /&gt;
*app/models/grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was added to follow the previous teams MVC of the grading_history they created.&lt;br /&gt;
'''&lt;br /&gt;
*app/models/review_grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was reimplemented to follow the previous teams MVC of the ReviewGradingHistory&lt;br /&gt;
'''&lt;br /&gt;
*app/models/submission_grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was reimplemented to follow the previous teams MVC of the SubmisionGradingHistory&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/views/grading_histories/index.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This file contains the view for the grading history table&lt;br /&gt;
'''&lt;br /&gt;
*app/views/grading_histories/_form.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This file contains the view for when a grading history contains any error when it is about to be saved&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
'''Modified'''&lt;br /&gt;
*app/controllers/grades_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was modified based off the previous teams implementation because when the method save_grade_and_comment_for_submission was called it should also create a grading history so that&lt;br /&gt;
 the grading audit can be created and added to. This was mainly focusing on the grading history of submissions and not reviews.&lt;br /&gt;
'''&lt;br /&gt;
*app/controllers/review_mapping_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was modified based off the previous teams implementation because when the method save_grade_and_comment_for_reviewer was called it should also create a grading history so that&lt;br /&gt;
 the grading audit can be created and added to. This was mainly focusing on the grading history of reviews and not submissions.&lt;br /&gt;
'''&lt;br /&gt;
*app/views/assignments/list_submissions.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     It was modified to add the new hyperlink to display the grading history of a submission.&lt;br /&gt;
'''&lt;br /&gt;
*config/routes.rb&lt;br /&gt;
'''&lt;br /&gt;
     It was to add the new route for grading histories&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
=='''Solutions - Implemented'''==&lt;br /&gt;
&lt;br /&gt;
'''E1934'''&lt;br /&gt;
&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. 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. &lt;br /&gt;
:2. In the view grading record page, remove the receiver column and add it to the title &lt;br /&gt;
:3. Restrict the column width on the grading record page &lt;br /&gt;
:4. Add comments on list_submissions.html.erb to indicate that the alignment was changed to fix code climate issues &lt;br /&gt;
:5. Ensure that white space changes are separate commits &lt;br /&gt;
:6. Revert changes made to list_review_mapping.html.erb &lt;br /&gt;
:7. Remove the review_report_html.erb file&lt;br /&gt;
:8. Design doc – mention why each of those files were changed&lt;br /&gt;
&lt;br /&gt;
'''Solutions''' &lt;br /&gt;
:1. Found the correct location to put the Review Grading History link and also fix the previous teams creation of a grading history to work with the latest expertiza update. &lt;br /&gt;
Files changed include: &lt;br /&gt;
*[https://github.com/ErikLG360/expertiza/commit/c0352cb73f7de1fba72938df2953ee82cb84bb6a app/controllers/review_mapping_controller.rb]&lt;br /&gt;
*[https://github.com/ErikLG360/expertiza/commit/c0352cb73f7de1fba72938df2953ee82cb84bb6a app/views/reports/_review_report.html.erb]&lt;br /&gt;
&lt;br /&gt;
:2. The previous implementatation of E2237 tackled this problem and moved it to the title.&lt;br /&gt;
[[File:GradingTableTitle.png]]&lt;br /&gt;
:3. The column widths were lessened by about 15px in the grading record page&lt;br /&gt;
&lt;br /&gt;
Files changed include:&lt;br /&gt;
*[https://github.com/ErikLG360/expertiza/commit/124bd12d23f75db0a68e2fac8a8487c5f7a7ed67 app/views/grading_histories/index.html.erb]&lt;br /&gt;
&lt;br /&gt;
:4.&lt;br /&gt;
&lt;br /&gt;
:5. All code climate changes are their own commits such as [https://github.com/ErikLG360/expertiza/commit/e95656f4d5e4f2ba4fc8d3f40716673ccafb41b1 This]&lt;br /&gt;
&lt;br /&gt;
:6. This issue was resolved by not adding in their implementation for the list_review_mapping.html.erb&lt;br /&gt;
&lt;br /&gt;
:7. This issue was resolved by not adding in the review_report_html.erb file&lt;br /&gt;
&lt;br /&gt;
:8. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''E2237'''&lt;br /&gt;
&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. Redundant files generated by scaffolding need to be removed, along with debugging code. Ex) Coffee created by scaffolding and console logging for debugging. &lt;br /&gt;
:2. Authentication could be done using existing utilities, no need to create their own. &lt;br /&gt;
:3. Some formatting changes could be done especially on how cells span in review report page. Ex) Formatting change for spans in between cells in review report.&lt;br /&gt;
:4. Code from previous implementation is a concern.&lt;br /&gt;
&lt;br /&gt;
'''Solutions''' &lt;br /&gt;
:1. These files have not been reimplemented.&lt;br /&gt;
:2. &lt;br /&gt;
:3. The column width was lessed by 15px refer to the solution for E1934 number 3.&lt;br /&gt;
:4. Code for the review_mapping_controller was changed to match the current state of expertiza refer to the solution for E1934 number 1.&lt;br /&gt;
&lt;br /&gt;
=='''Testing Plan'''==&lt;br /&gt;
The Testing that we will implement will build from E2237 since the previous tests crash and was something they solved. We also plan to implement test using the given Test Skeleton.&lt;br /&gt;
&lt;br /&gt;
=='''Future Scope'''==&lt;br /&gt;
This project may need further improvement since it does not seem like there should be an abundance of files added and perhaps using the MVC design is not necessarily needed.&lt;br /&gt;
&lt;br /&gt;
=='''Relevant Links'''==&lt;br /&gt;
* '''Github Repository:''' https://github.com/ErikLG360/expertiza&lt;br /&gt;
* '''Pull Request:''' https://github.com/expertiza/expertiza/pull/2696&lt;br /&gt;
* '''VCL Server:''' NOT Setup yet&lt;br /&gt;
&lt;br /&gt;
=='''Contributors to this project'''==&lt;br /&gt;
*Amulya Usem&lt;br /&gt;
*Erik Lopez-Godinez&lt;br /&gt;
*Gowtham Pollam&lt;br /&gt;
&lt;br /&gt;
*'''Mentor''': Srilekha Gudipati&lt;/div&gt;</summary>
		<author><name>Ealopezg</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2023_-_E2383._Grading_Audit_Trail&amp;diff=152318</id>
		<title>CSC/ECE 517 Fall 2023 - E2383. Grading Audit Trail</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2023_-_E2383._Grading_Audit_Trail&amp;diff=152318"/>
		<updated>2023-12-04T18:31:23Z</updated>

		<summary type="html">&lt;p&gt;Ealopezg: /* Reimplementation */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=='''Introduction'''==&lt;br /&gt;
&lt;br /&gt;
===Problem Statement===&lt;br /&gt;
After an instructor gave a grade to an assignment, there is no way to track who gave the grade.&lt;br /&gt;
A grading audit trail must be created and the following information needs to be stored: &lt;br /&gt;
:1. When a grade is assigned by an instructor, there needs to be an indication of who did it and when it was done. &lt;br /&gt;
:2. Comments previously provided by other instructors must also be preserved.&lt;br /&gt;
&lt;br /&gt;
This information needs to be stored every time an instructor edits a grade/comment and clicks the save button.&lt;br /&gt;
&lt;br /&gt;
There have been previous attempts from teams to implement such functionality and our implementation will be based on '''E1934''' and '''E2237'''. Each of these implementations have problems of their own that we need to address.&lt;br /&gt;
&lt;br /&gt;
== '''Overview of Major Changes By Previous Teams''' ==&lt;br /&gt;
===[https://wiki-expertiza.csc.ncsu.edu/index.php/E1934_-_Grading_Audit_Trail E1934]===&lt;br /&gt;
[https://youtu.be/yyxX_kRYxLc Their Screencast]&lt;br /&gt;
&lt;br /&gt;
*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)&lt;br /&gt;
*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.&lt;br /&gt;
*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.&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. 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. &lt;br /&gt;
:2. In the view grading record page, remove the receiver column and add it to the title &lt;br /&gt;
:3. Restrict the column width on the grading record page &lt;br /&gt;
:4. Add comments on list_submissions.html.erb to indicate that the alignment was changed to fix code climate issues &lt;br /&gt;
:5. Ensure that white space changes are separate commits &lt;br /&gt;
:6. Revert changes made to list_review_mapping.html.erb &lt;br /&gt;
:7. Remove the review_report_html.erb file&lt;br /&gt;
:8. Design doc – mention why each of those files were changed&lt;br /&gt;
&lt;br /&gt;
===[https://wiki-expertiza.csc.ncsu.edu/index.php/CSC/ECE_517_Spring_2022_-_E2237:_Grading_audit_trail E2237]===&lt;br /&gt;
&lt;br /&gt;
*They fixed some issues that were causing the system to crash during testing&lt;br /&gt;
*Altered the Grading History view&lt;br /&gt;
*Explained the reasoning for changes made to files using diagrams and justifications&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. Redundant files generated by scaffolding need to be removed, along with debugging code. Ex) Coffee created by scaffolding and console logging for debugging. &lt;br /&gt;
:2. Authentication could be done using existing utilities, no need to create their own. &lt;br /&gt;
:3. Some formatting changes could be done especially on how cells span in review report page. Ex) Formatting change for spans in between cells in review report.&lt;br /&gt;
:4. Code from previous implementation is a concern.&lt;br /&gt;
&lt;br /&gt;
=='''Proposed Solution'''==&lt;br /&gt;
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. These files cannot be added haphazardly since parts of the implementation is a cause to concern and caused the changes to not be implemented. It is also using an older version of expertiza so some parts may not be compatible.  &lt;br /&gt;
&lt;br /&gt;
We must first figure out exactly what changes and issues to address in their implementation by meeting with our mentor. We also need to reimplement the following files since none of their changes were implemented:&lt;br /&gt;
&lt;br /&gt;
*app/controllers/grading_histories_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     Calls the grading history view after validating Submission and Review Type.&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/grading_history.rb &lt;br /&gt;
'''&lt;br /&gt;
     Model for Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/review_grading_history.rb &lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Model containing specifics of Review Grading History. Inherits Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/submission_grading_history.rb &lt;br /&gt;
'''&lt;br /&gt;
     Model containing specifics of Submission Grading History. Inherits Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/views/grading_history/index_html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This is a view for grading audit trail, it will display all grading histories of a &lt;br /&gt;
     submission/review&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*spec/features/grade_histories_spec.rb&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Feature test to check if the grades appear in chronological order&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*spec/features/helpers/grade_histories_helper.rb&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Helper file to facilitate the above mentioned feature test.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
=='''Reimplementation'''==&lt;br /&gt;
Since the previous teams implementations were not integrated we have to reimplement their files which we will do by looking at their commits and pull request to see what files are necessary and what can be left out to address the issues of their implementation.&lt;br /&gt;
&lt;br /&gt;
'''[https://github.com/ErikLG360/expertiza/commit/e28a857695549cc91c477587707e48100d2bd333 Files being Reimplemented/Modified]'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Reimplemented'''&lt;br /&gt;
*app/controllers/grading_histories_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was added because it was from the previous teams implementation which concerned the MVC of the grading_history they created. It dealt with allowing only the correct people to view the &lt;br /&gt;
  grading history, checking the assignment type whether it be a submission or review, and indexing all the grading history for the assignment in chronological order.&lt;br /&gt;
'''&lt;br /&gt;
*app/models/grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was added to follow the previous teams MVC of the grading_history they created.&lt;br /&gt;
'''&lt;br /&gt;
*app/models/review_grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was reimplemented to follow the previous teams MVC of the ReviewGradingHistory&lt;br /&gt;
'''&lt;br /&gt;
*app/models/submission_grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was reimplemented to follow the previous teams MVC of the SubmisionGradingHistory&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/views/grading_histories/index.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This file contains the view for the grading history table&lt;br /&gt;
'''&lt;br /&gt;
*app/views/grading_histories/_form.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This file contains the view for when a grading history contains any error when it is about to be saved&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
'''Modified'''&lt;br /&gt;
*app/controllers/grades_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was modified based off the previous teams implementation because when the method save_grade_and_comment_for_submission was called it should also create a grading history so that&lt;br /&gt;
 the grading audit can be created and added to. This was mainly focusing on the grading history of submissions and not reviews.&lt;br /&gt;
'''&lt;br /&gt;
*app/controllers/review_mapping_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was modified based off the previous teams implementation because when the method save_grade_and_comment_for_reviewer was called it should also create a grading history so that&lt;br /&gt;
 the grading audit can be created and added to. This was mainly focusing on the grading history of reviews and not submissions.&lt;br /&gt;
'''&lt;br /&gt;
*app/views/assignments/list_submissions.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     It was modified to add the new hyperlink to display the grading history of a submission.&lt;br /&gt;
'''&lt;br /&gt;
*config/routes.rb&lt;br /&gt;
'''&lt;br /&gt;
     It was to add the new route for grading histories&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
=='''Solutions - Implemented'''==&lt;br /&gt;
&lt;br /&gt;
'''E1934'''&lt;br /&gt;
&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. 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. &lt;br /&gt;
:2. In the view grading record page, remove the receiver column and add it to the title &lt;br /&gt;
:3. Restrict the column width on the grading record page &lt;br /&gt;
:4. Add comments on list_submissions.html.erb to indicate that the alignment was changed to fix code climate issues &lt;br /&gt;
:5. Ensure that white space changes are separate commits &lt;br /&gt;
:6. Revert changes made to list_review_mapping.html.erb &lt;br /&gt;
:7. Remove the review_report_html.erb file&lt;br /&gt;
:8. Design doc – mention why each of those files were changed&lt;br /&gt;
&lt;br /&gt;
'''Solutions''' &lt;br /&gt;
:1. Found the correct location to put the Review Grading History link and also fix the previous teams creation of a grading history to work with the latest expertiza update. &lt;br /&gt;
Files changed include: &lt;br /&gt;
*[https://github.com/ErikLG360/expertiza/commit/c0352cb73f7de1fba72938df2953ee82cb84bb6a app/controllers/review_mapping_controller.rb]&lt;br /&gt;
*[https://github.com/ErikLG360/expertiza/commit/c0352cb73f7de1fba72938df2953ee82cb84bb6a app/views/reports/_review_report.html.erb]&lt;br /&gt;
&lt;br /&gt;
:2. The previous implementatation of E2237 tackled this problem and moved it to the title.&lt;br /&gt;
[[File:GradingTableTitle.png]]&lt;br /&gt;
:3. The column widths were lessened by about 15px in the grading record page&lt;br /&gt;
&lt;br /&gt;
Files changed include:&lt;br /&gt;
*[https://github.com/ErikLG360/expertiza/commit/124bd12d23f75db0a68e2fac8a8487c5f7a7ed67 app/views/grading_histories/index.html.erb]&lt;br /&gt;
&lt;br /&gt;
:4.&lt;br /&gt;
&lt;br /&gt;
:5. All code climate changes are their own commits such as [https://github.com/ErikLG360/expertiza/commit/e95656f4d5e4f2ba4fc8d3f40716673ccafb41b1 This]&lt;br /&gt;
&lt;br /&gt;
:6. This issue was resolved by not adding in their implementation for the list_review_mapping.html.erb&lt;br /&gt;
&lt;br /&gt;
:7. This issue was resolved by not adding in the review_report_html.erb file&lt;br /&gt;
&lt;br /&gt;
:8. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''E2237'''&lt;br /&gt;
&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. Redundant files generated by scaffolding need to be removed, along with debugging code. Ex) Coffee created by scaffolding and console logging for debugging. &lt;br /&gt;
:2. Authentication could be done using existing utilities, no need to create their own. &lt;br /&gt;
:3. Some formatting changes could be done especially on how cells span in review report page. Ex) Formatting change for spans in between cells in review report.&lt;br /&gt;
:4. Code from previous implementation is a concern.&lt;br /&gt;
&lt;br /&gt;
=='''Testing Plan'''==&lt;br /&gt;
The Testing that we will implement will build from E2237 since the previous tests crash and was something they solved. We also plan to implement test using the given Test Skeleton.&lt;br /&gt;
&lt;br /&gt;
=='''Future Scope'''==&lt;br /&gt;
This project may need further improvement since it does not seem like there should be an abundance of files added and perhaps using the MVC design is not necessarily needed.&lt;br /&gt;
&lt;br /&gt;
=='''Relevant Links'''==&lt;br /&gt;
* '''Github Repository:''' https://github.com/ErikLG360/expertiza&lt;br /&gt;
* '''Pull Request:''' https://github.com/expertiza/expertiza/pull/2696&lt;br /&gt;
* '''VCL Server:''' NOT Setup yet&lt;br /&gt;
&lt;br /&gt;
=='''Contributors to this project'''==&lt;br /&gt;
*Amulya Usem&lt;br /&gt;
*Erik Lopez-Godinez&lt;br /&gt;
*Gowtham Pollam&lt;br /&gt;
&lt;br /&gt;
*'''Mentor''': Srilekha Gudipati&lt;/div&gt;</summary>
		<author><name>Ealopezg</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2023_-_E2383._Grading_Audit_Trail&amp;diff=152317</id>
		<title>CSC/ECE 517 Fall 2023 - E2383. Grading Audit Trail</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2023_-_E2383._Grading_Audit_Trail&amp;diff=152317"/>
		<updated>2023-12-04T18:29:50Z</updated>

		<summary type="html">&lt;p&gt;Ealopezg: /* Reimplementation */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=='''Introduction'''==&lt;br /&gt;
&lt;br /&gt;
===Problem Statement===&lt;br /&gt;
After an instructor gave a grade to an assignment, there is no way to track who gave the grade.&lt;br /&gt;
A grading audit trail must be created and the following information needs to be stored: &lt;br /&gt;
:1. When a grade is assigned by an instructor, there needs to be an indication of who did it and when it was done. &lt;br /&gt;
:2. Comments previously provided by other instructors must also be preserved.&lt;br /&gt;
&lt;br /&gt;
This information needs to be stored every time an instructor edits a grade/comment and clicks the save button.&lt;br /&gt;
&lt;br /&gt;
There have been previous attempts from teams to implement such functionality and our implementation will be based on '''E1934''' and '''E2237'''. Each of these implementations have problems of their own that we need to address.&lt;br /&gt;
&lt;br /&gt;
== '''Overview of Major Changes By Previous Teams''' ==&lt;br /&gt;
===[https://wiki-expertiza.csc.ncsu.edu/index.php/E1934_-_Grading_Audit_Trail E1934]===&lt;br /&gt;
[https://youtu.be/yyxX_kRYxLc Their Screencast]&lt;br /&gt;
&lt;br /&gt;
*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)&lt;br /&gt;
*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.&lt;br /&gt;
*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.&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. 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. &lt;br /&gt;
:2. In the view grading record page, remove the receiver column and add it to the title &lt;br /&gt;
:3. Restrict the column width on the grading record page &lt;br /&gt;
:4. Add comments on list_submissions.html.erb to indicate that the alignment was changed to fix code climate issues &lt;br /&gt;
:5. Ensure that white space changes are separate commits &lt;br /&gt;
:6. Revert changes made to list_review_mapping.html.erb &lt;br /&gt;
:7. Remove the review_report_html.erb file&lt;br /&gt;
:8. Design doc – mention why each of those files were changed&lt;br /&gt;
&lt;br /&gt;
===[https://wiki-expertiza.csc.ncsu.edu/index.php/CSC/ECE_517_Spring_2022_-_E2237:_Grading_audit_trail E2237]===&lt;br /&gt;
&lt;br /&gt;
*They fixed some issues that were causing the system to crash during testing&lt;br /&gt;
*Altered the Grading History view&lt;br /&gt;
*Explained the reasoning for changes made to files using diagrams and justifications&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. Redundant files generated by scaffolding need to be removed, along with debugging code. Ex) Coffee created by scaffolding and console logging for debugging. &lt;br /&gt;
:2. Authentication could be done using existing utilities, no need to create their own. &lt;br /&gt;
:3. Some formatting changes could be done especially on how cells span in review report page. Ex) Formatting change for spans in between cells in review report.&lt;br /&gt;
:4. Code from previous implementation is a concern.&lt;br /&gt;
&lt;br /&gt;
=='''Proposed Solution'''==&lt;br /&gt;
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. These files cannot be added haphazardly since parts of the implementation is a cause to concern and caused the changes to not be implemented. It is also using an older version of expertiza so some parts may not be compatible.  &lt;br /&gt;
&lt;br /&gt;
We must first figure out exactly what changes and issues to address in their implementation by meeting with our mentor. We also need to reimplement the following files since none of their changes were implemented:&lt;br /&gt;
&lt;br /&gt;
*app/controllers/grading_histories_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     Calls the grading history view after validating Submission and Review Type.&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/grading_history.rb &lt;br /&gt;
'''&lt;br /&gt;
     Model for Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/review_grading_history.rb &lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Model containing specifics of Review Grading History. Inherits Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/submission_grading_history.rb &lt;br /&gt;
'''&lt;br /&gt;
     Model containing specifics of Submission Grading History. Inherits Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/views/grading_history/index_html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This is a view for grading audit trail, it will display all grading histories of a &lt;br /&gt;
     submission/review&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*spec/features/grade_histories_spec.rb&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Feature test to check if the grades appear in chronological order&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*spec/features/helpers/grade_histories_helper.rb&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Helper file to facilitate the above mentioned feature test.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
=='''Reimplementation'''==&lt;br /&gt;
Since the previous teams implementations were not integrated we have to reimplement their files which we will do by looking at their commits and pull request to see what files are necessary and what can be left out to address the issues of their implementation.&lt;br /&gt;
&lt;br /&gt;
'''[https://github.com/ErikLG360/expertiza/commit/e28a857695549cc91c477587707e48100d2bd333 Files being Reimplemented/Modified]'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Reimplemented'''&lt;br /&gt;
*app/controllers/grading_histories_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was added because it was from the previous teams implementation which concerned the MVC of the grading_history they created. It dealt with allowing only the correct people to view the grading history, checking the assignment type whether it be a submission or review, and indexing all the grading history for the assignment in chronological order.&lt;br /&gt;
'''&lt;br /&gt;
*app/models/grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was added to follow the previous teams MVC of the grading_history they created.&lt;br /&gt;
'''&lt;br /&gt;
*app/models/review_grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was reimplemented to follow the previous teams MVC of the ReviewGradingHistory&lt;br /&gt;
'''&lt;br /&gt;
*app/models/submission_grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was reimplemented to follow the previous teams MVC of the SubmisionGradingHistory&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/views/grading_histories/index.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This file contains the view for the grading history table&lt;br /&gt;
'''&lt;br /&gt;
*app/views/grading_histories/_form.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This file contains the view for when a grading history contains any error when it is about to be saved&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
'''Modified'''&lt;br /&gt;
*app/controllers/grades_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was modified based off the previous teams implementation because when the method save_grade_and_comment_for_submission was called it should also create a grading history so that &lt;br /&gt;
the grading audit can be created and added to. This was mainly focusing on the grading history of submissions and not reviews.&lt;br /&gt;
'''&lt;br /&gt;
*app/controllers/review_mapping_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was modified based off the previous teams implementation because when the method save_grade_and_comment_for_reviewer was called it should also create a grading history so that&lt;br /&gt;
 the grading audit can be created and added to. This was mainly focusing on the grading history of reviews and not submissions.&lt;br /&gt;
'''&lt;br /&gt;
*app/views/assignments/list_submissions.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     It was modified to add the new hyperlink to display the grading history of a submission.&lt;br /&gt;
'''&lt;br /&gt;
*config/routes.rb&lt;br /&gt;
'''&lt;br /&gt;
     It was to add the new route for grading histories&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
=='''Solutions - Implemented'''==&lt;br /&gt;
&lt;br /&gt;
'''E1934'''&lt;br /&gt;
&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. 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. &lt;br /&gt;
:2. In the view grading record page, remove the receiver column and add it to the title &lt;br /&gt;
:3. Restrict the column width on the grading record page &lt;br /&gt;
:4. Add comments on list_submissions.html.erb to indicate that the alignment was changed to fix code climate issues &lt;br /&gt;
:5. Ensure that white space changes are separate commits &lt;br /&gt;
:6. Revert changes made to list_review_mapping.html.erb &lt;br /&gt;
:7. Remove the review_report_html.erb file&lt;br /&gt;
:8. Design doc – mention why each of those files were changed&lt;br /&gt;
&lt;br /&gt;
'''Solutions''' &lt;br /&gt;
:1. Found the correct location to put the Review Grading History link and also fix the previous teams creation of a grading history to work with the latest expertiza update. &lt;br /&gt;
Files changed include: &lt;br /&gt;
*[https://github.com/ErikLG360/expertiza/commit/c0352cb73f7de1fba72938df2953ee82cb84bb6a app/controllers/review_mapping_controller.rb]&lt;br /&gt;
*[https://github.com/ErikLG360/expertiza/commit/c0352cb73f7de1fba72938df2953ee82cb84bb6a app/views/reports/_review_report.html.erb]&lt;br /&gt;
&lt;br /&gt;
:2. The previous implementatation of E2237 tackled this problem and moved it to the title.&lt;br /&gt;
[[File:GradingTableTitle.png]]&lt;br /&gt;
:3. The column widths were lessened by about 15px in the grading record page&lt;br /&gt;
&lt;br /&gt;
Files changed include:&lt;br /&gt;
*[https://github.com/ErikLG360/expertiza/commit/124bd12d23f75db0a68e2fac8a8487c5f7a7ed67 app/views/grading_histories/index.html.erb]&lt;br /&gt;
&lt;br /&gt;
:4.&lt;br /&gt;
&lt;br /&gt;
:5. All code climate changes are their own commits such as [https://github.com/ErikLG360/expertiza/commit/e95656f4d5e4f2ba4fc8d3f40716673ccafb41b1 This]&lt;br /&gt;
&lt;br /&gt;
:6. This issue was resolved by not adding in their implementation for the list_review_mapping.html.erb&lt;br /&gt;
&lt;br /&gt;
:7. This issue was resolved by not adding in the review_report_html.erb file&lt;br /&gt;
&lt;br /&gt;
:8. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''E2237'''&lt;br /&gt;
&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. Redundant files generated by scaffolding need to be removed, along with debugging code. Ex) Coffee created by scaffolding and console logging for debugging. &lt;br /&gt;
:2. Authentication could be done using existing utilities, no need to create their own. &lt;br /&gt;
:3. Some formatting changes could be done especially on how cells span in review report page. Ex) Formatting change for spans in between cells in review report.&lt;br /&gt;
:4. Code from previous implementation is a concern.&lt;br /&gt;
&lt;br /&gt;
=='''Testing Plan'''==&lt;br /&gt;
The Testing that we will implement will build from E2237 since the previous tests crash and was something they solved. We also plan to implement test using the given Test Skeleton.&lt;br /&gt;
&lt;br /&gt;
=='''Future Scope'''==&lt;br /&gt;
This project may need further improvement since it does not seem like there should be an abundance of files added and perhaps using the MVC design is not necessarily needed.&lt;br /&gt;
&lt;br /&gt;
=='''Relevant Links'''==&lt;br /&gt;
* '''Github Repository:''' https://github.com/ErikLG360/expertiza&lt;br /&gt;
* '''Pull Request:''' https://github.com/expertiza/expertiza/pull/2696&lt;br /&gt;
* '''VCL Server:''' NOT Setup yet&lt;br /&gt;
&lt;br /&gt;
=='''Contributors to this project'''==&lt;br /&gt;
*Amulya Usem&lt;br /&gt;
*Erik Lopez-Godinez&lt;br /&gt;
*Gowtham Pollam&lt;br /&gt;
&lt;br /&gt;
*'''Mentor''': Srilekha Gudipati&lt;/div&gt;</summary>
		<author><name>Ealopezg</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2023_-_E2383._Grading_Audit_Trail&amp;diff=152316</id>
		<title>CSC/ECE 517 Fall 2023 - E2383. Grading Audit Trail</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2023_-_E2383._Grading_Audit_Trail&amp;diff=152316"/>
		<updated>2023-12-04T18:27:21Z</updated>

		<summary type="html">&lt;p&gt;Ealopezg: /* Solutions - Implemented */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=='''Introduction'''==&lt;br /&gt;
&lt;br /&gt;
===Problem Statement===&lt;br /&gt;
After an instructor gave a grade to an assignment, there is no way to track who gave the grade.&lt;br /&gt;
A grading audit trail must be created and the following information needs to be stored: &lt;br /&gt;
:1. When a grade is assigned by an instructor, there needs to be an indication of who did it and when it was done. &lt;br /&gt;
:2. Comments previously provided by other instructors must also be preserved.&lt;br /&gt;
&lt;br /&gt;
This information needs to be stored every time an instructor edits a grade/comment and clicks the save button.&lt;br /&gt;
&lt;br /&gt;
There have been previous attempts from teams to implement such functionality and our implementation will be based on '''E1934''' and '''E2237'''. Each of these implementations have problems of their own that we need to address.&lt;br /&gt;
&lt;br /&gt;
== '''Overview of Major Changes By Previous Teams''' ==&lt;br /&gt;
===[https://wiki-expertiza.csc.ncsu.edu/index.php/E1934_-_Grading_Audit_Trail E1934]===&lt;br /&gt;
[https://youtu.be/yyxX_kRYxLc Their Screencast]&lt;br /&gt;
&lt;br /&gt;
*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)&lt;br /&gt;
*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.&lt;br /&gt;
*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.&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. 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. &lt;br /&gt;
:2. In the view grading record page, remove the receiver column and add it to the title &lt;br /&gt;
:3. Restrict the column width on the grading record page &lt;br /&gt;
:4. Add comments on list_submissions.html.erb to indicate that the alignment was changed to fix code climate issues &lt;br /&gt;
:5. Ensure that white space changes are separate commits &lt;br /&gt;
:6. Revert changes made to list_review_mapping.html.erb &lt;br /&gt;
:7. Remove the review_report_html.erb file&lt;br /&gt;
:8. Design doc – mention why each of those files were changed&lt;br /&gt;
&lt;br /&gt;
===[https://wiki-expertiza.csc.ncsu.edu/index.php/CSC/ECE_517_Spring_2022_-_E2237:_Grading_audit_trail E2237]===&lt;br /&gt;
&lt;br /&gt;
*They fixed some issues that were causing the system to crash during testing&lt;br /&gt;
*Altered the Grading History view&lt;br /&gt;
*Explained the reasoning for changes made to files using diagrams and justifications&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. Redundant files generated by scaffolding need to be removed, along with debugging code. Ex) Coffee created by scaffolding and console logging for debugging. &lt;br /&gt;
:2. Authentication could be done using existing utilities, no need to create their own. &lt;br /&gt;
:3. Some formatting changes could be done especially on how cells span in review report page. Ex) Formatting change for spans in between cells in review report.&lt;br /&gt;
:4. Code from previous implementation is a concern.&lt;br /&gt;
&lt;br /&gt;
=='''Proposed Solution'''==&lt;br /&gt;
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. These files cannot be added haphazardly since parts of the implementation is a cause to concern and caused the changes to not be implemented. It is also using an older version of expertiza so some parts may not be compatible.  &lt;br /&gt;
&lt;br /&gt;
We must first figure out exactly what changes and issues to address in their implementation by meeting with our mentor. We also need to reimplement the following files since none of their changes were implemented:&lt;br /&gt;
&lt;br /&gt;
*app/controllers/grading_histories_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     Calls the grading history view after validating Submission and Review Type.&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/grading_history.rb &lt;br /&gt;
'''&lt;br /&gt;
     Model for Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/review_grading_history.rb &lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Model containing specifics of Review Grading History. Inherits Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/submission_grading_history.rb &lt;br /&gt;
'''&lt;br /&gt;
     Model containing specifics of Submission Grading History. Inherits Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/views/grading_history/index_html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This is a view for grading audit trail, it will display all grading histories of a &lt;br /&gt;
     submission/review&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*spec/features/grade_histories_spec.rb&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Feature test to check if the grades appear in chronological order&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*spec/features/helpers/grade_histories_helper.rb&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Helper file to facilitate the above mentioned feature test.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
=='''Reimplementation'''==&lt;br /&gt;
Since the previous teams implementations were not integrated we have to reimplement their files which we will do by looking at their commits and pull request to see what files are necessary and what can be left out to address the issues of their implementation.&lt;br /&gt;
&lt;br /&gt;
'''[https://github.com/ErikLG360/expertiza/commit/e28a857695549cc91c477587707e48100d2bd333 Files being Reimplemented/Modified]'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Reimplemented'''&lt;br /&gt;
*app/controllers/grading_histories_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was added because it was from the previous teams implementation which concerned the MVC of the grading_history they created. It dealt with allowing only the correct people to view the grading history, checking the assignment type whether it be a submission or review, and indexing all the grading history for the assignment in chronological order.&lt;br /&gt;
'''&lt;br /&gt;
*app/models/grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was added to follow the previous teams MVC of the grading_history they created.&lt;br /&gt;
'''&lt;br /&gt;
*app/models/review_grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was reimplemented to follow the previous teams MVC of the ReviewGradingHistory&lt;br /&gt;
'''&lt;br /&gt;
*app/models/submission_grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was reimplemented to follow the previous teams MVC of the SubmisionGradingHistory&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/views/grading_histories/index.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This file contains the view for the grading history table&lt;br /&gt;
'''&lt;br /&gt;
*app/views/grading_histories/_form.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This file contains the view for when a grading history contains any error when it is about to be saved&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
'''Modified'''&lt;br /&gt;
*app/controllers/grades_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was modified based off the previous teams implementation because when the method save_grade_and_comment_for_submission was called it should also create a grading history so that the grading audit can be created and added to. This was mainly focusing on the grading history of submissions and not reviews.&lt;br /&gt;
'''&lt;br /&gt;
*app/controllers/review_mapping_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was modified based off the previous teams implementation because when the method save_grade_and_comment_for_reviewer was called it should also create a grading history so that the grading audit can be created and added to. This was mainly focusing on the grading history of reviews and not submissions.&lt;br /&gt;
'''&lt;br /&gt;
*app/views/assignments/list_submissions.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     It was modified to add the new hyperlink to display the grading history of a submission.&lt;br /&gt;
'''&lt;br /&gt;
*config/routes.rb&lt;br /&gt;
'''&lt;br /&gt;
     It was to add the new route for grading histories&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
=='''Solutions - Implemented'''==&lt;br /&gt;
&lt;br /&gt;
'''E1934'''&lt;br /&gt;
&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. 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. &lt;br /&gt;
:2. In the view grading record page, remove the receiver column and add it to the title &lt;br /&gt;
:3. Restrict the column width on the grading record page &lt;br /&gt;
:4. Add comments on list_submissions.html.erb to indicate that the alignment was changed to fix code climate issues &lt;br /&gt;
:5. Ensure that white space changes are separate commits &lt;br /&gt;
:6. Revert changes made to list_review_mapping.html.erb &lt;br /&gt;
:7. Remove the review_report_html.erb file&lt;br /&gt;
:8. Design doc – mention why each of those files were changed&lt;br /&gt;
&lt;br /&gt;
'''Solutions''' &lt;br /&gt;
:1. Found the correct location to put the Review Grading History link and also fix the previous teams creation of a grading history to work with the latest expertiza update. &lt;br /&gt;
Files changed include: &lt;br /&gt;
*[https://github.com/ErikLG360/expertiza/commit/c0352cb73f7de1fba72938df2953ee82cb84bb6a app/controllers/review_mapping_controller.rb]&lt;br /&gt;
*[https://github.com/ErikLG360/expertiza/commit/c0352cb73f7de1fba72938df2953ee82cb84bb6a app/views/reports/_review_report.html.erb]&lt;br /&gt;
&lt;br /&gt;
:2. The previous implementatation of E2237 tackled this problem and moved it to the title.&lt;br /&gt;
[[File:GradingTableTitle.png]]&lt;br /&gt;
:3. The column widths were lessened by about 15px in the grading record page&lt;br /&gt;
&lt;br /&gt;
Files changed include:&lt;br /&gt;
*[https://github.com/ErikLG360/expertiza/commit/124bd12d23f75db0a68e2fac8a8487c5f7a7ed67 app/views/grading_histories/index.html.erb]&lt;br /&gt;
&lt;br /&gt;
:4.&lt;br /&gt;
&lt;br /&gt;
:5. All code climate changes are their own commits such as [https://github.com/ErikLG360/expertiza/commit/e95656f4d5e4f2ba4fc8d3f40716673ccafb41b1 This]&lt;br /&gt;
&lt;br /&gt;
:6. This issue was resolved by not adding in their implementation for the list_review_mapping.html.erb&lt;br /&gt;
&lt;br /&gt;
:7. This issue was resolved by not adding in the review_report_html.erb file&lt;br /&gt;
&lt;br /&gt;
:8. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''E2237'''&lt;br /&gt;
&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. Redundant files generated by scaffolding need to be removed, along with debugging code. Ex) Coffee created by scaffolding and console logging for debugging. &lt;br /&gt;
:2. Authentication could be done using existing utilities, no need to create their own. &lt;br /&gt;
:3. Some formatting changes could be done especially on how cells span in review report page. Ex) Formatting change for spans in between cells in review report.&lt;br /&gt;
:4. Code from previous implementation is a concern.&lt;br /&gt;
&lt;br /&gt;
=='''Testing Plan'''==&lt;br /&gt;
The Testing that we will implement will build from E2237 since the previous tests crash and was something they solved. We also plan to implement test using the given Test Skeleton.&lt;br /&gt;
&lt;br /&gt;
=='''Future Scope'''==&lt;br /&gt;
This project may need further improvement since it does not seem like there should be an abundance of files added and perhaps using the MVC design is not necessarily needed.&lt;br /&gt;
&lt;br /&gt;
=='''Relevant Links'''==&lt;br /&gt;
* '''Github Repository:''' https://github.com/ErikLG360/expertiza&lt;br /&gt;
* '''Pull Request:''' https://github.com/expertiza/expertiza/pull/2696&lt;br /&gt;
* '''VCL Server:''' NOT Setup yet&lt;br /&gt;
&lt;br /&gt;
=='''Contributors to this project'''==&lt;br /&gt;
*Amulya Usem&lt;br /&gt;
*Erik Lopez-Godinez&lt;br /&gt;
*Gowtham Pollam&lt;br /&gt;
&lt;br /&gt;
*'''Mentor''': Srilekha Gudipati&lt;/div&gt;</summary>
		<author><name>Ealopezg</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2023_-_E2383._Grading_Audit_Trail&amp;diff=152291</id>
		<title>CSC/ECE 517 Fall 2023 - E2383. Grading Audit Trail</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2023_-_E2383._Grading_Audit_Trail&amp;diff=152291"/>
		<updated>2023-12-04T17:19:16Z</updated>

		<summary type="html">&lt;p&gt;Ealopezg: /* Solutions - Implemented */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=='''Introduction'''==&lt;br /&gt;
&lt;br /&gt;
===Problem Statement===&lt;br /&gt;
After an instructor gave a grade to an assignment, there is no way to track who gave the grade.&lt;br /&gt;
A grading audit trail must be created and the following information needs to be stored: &lt;br /&gt;
:1. When a grade is assigned by an instructor, there needs to be an indication of who did it and when it was done. &lt;br /&gt;
:2. Comments previously provided by other instructors must also be preserved.&lt;br /&gt;
&lt;br /&gt;
This information needs to be stored every time an instructor edits a grade/comment and clicks the save button.&lt;br /&gt;
&lt;br /&gt;
There have been previous attempts from teams to implement such functionality and our implementation will be based on '''E1934''' and '''E2237'''. Each of these implementations have problems of their own that we need to address.&lt;br /&gt;
&lt;br /&gt;
== '''Overview of Major Changes By Previous Teams''' ==&lt;br /&gt;
===[https://wiki-expertiza.csc.ncsu.edu/index.php/E1934_-_Grading_Audit_Trail E1934]===&lt;br /&gt;
[https://youtu.be/yyxX_kRYxLc Their Screencast]&lt;br /&gt;
&lt;br /&gt;
*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)&lt;br /&gt;
*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.&lt;br /&gt;
*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.&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. 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. &lt;br /&gt;
:2. In the view grading record page, remove the receiver column and add it to the title &lt;br /&gt;
:3. Restrict the column width on the grading record page &lt;br /&gt;
:4. Add comments on list_submissions.html.erb to indicate that the alignment was changed to fix code climate issues &lt;br /&gt;
:5. Ensure that white space changes are separate commits &lt;br /&gt;
:6. Revert changes made to list_review_mapping.html.erb &lt;br /&gt;
:7. Remove the review_report_html.erb file&lt;br /&gt;
:8. Design doc – mention why each of those files were changed&lt;br /&gt;
&lt;br /&gt;
===[https://wiki-expertiza.csc.ncsu.edu/index.php/CSC/ECE_517_Spring_2022_-_E2237:_Grading_audit_trail E2237]===&lt;br /&gt;
&lt;br /&gt;
*They fixed some issues that were causing the system to crash during testing&lt;br /&gt;
*Altered the Grading History view&lt;br /&gt;
*Explained the reasoning for changes made to files using diagrams and justifications&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. Redundant files generated by scaffolding need to be removed, along with debugging code. Ex) Coffee created by scaffolding and console logging for debugging. &lt;br /&gt;
:2. Authentication could be done using existing utilities, no need to create their own. &lt;br /&gt;
:3. Some formatting changes could be done especially on how cells span in review report page. Ex) Formatting change for spans in between cells in review report.&lt;br /&gt;
:4. Code from previous implementation is a concern.&lt;br /&gt;
&lt;br /&gt;
=='''Proposed Solution'''==&lt;br /&gt;
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. These files cannot be added haphazardly since parts of the implementation is a cause to concern and caused the changes to not be implemented. It is also using an older version of expertiza so some parts may not be compatible.  &lt;br /&gt;
&lt;br /&gt;
We must first figure out exactly what changes and issues to address in their implementation by meeting with our mentor. We also need to reimplement the following files since none of their changes were implemented:&lt;br /&gt;
&lt;br /&gt;
*app/controllers/grading_histories_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     Calls the grading history view after validating Submission and Review Type.&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/grading_history.rb &lt;br /&gt;
'''&lt;br /&gt;
     Model for Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/review_grading_history.rb &lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Model containing specifics of Review Grading History. Inherits Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/submission_grading_history.rb &lt;br /&gt;
'''&lt;br /&gt;
     Model containing specifics of Submission Grading History. Inherits Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/views/grading_history/index_html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This is a view for grading audit trail, it will display all grading histories of a &lt;br /&gt;
     submission/review&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*spec/features/grade_histories_spec.rb&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Feature test to check if the grades appear in chronological order&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*spec/features/helpers/grade_histories_helper.rb&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Helper file to facilitate the above mentioned feature test.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
=='''Reimplementation'''==&lt;br /&gt;
Since the previous teams implementations were not integrated we have to reimplement their files which we will do by looking at their commits and pull request to see what files are necessary and what can be left out to address the issues of their implementation.&lt;br /&gt;
&lt;br /&gt;
'''[https://github.com/ErikLG360/expertiza/commit/e28a857695549cc91c477587707e48100d2bd333 Files being Reimplemented/Modified]'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Reimplemented'''&lt;br /&gt;
*app/controllers/grading_histories_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was added because it was from the previous teams implementation which concerned the MVC of the grading_history they created. It dealt with allowing only the correct people to view the grading history, checking the assignment type whether it be a submission or review, and indexing all the grading history for the assignment in chronological order.&lt;br /&gt;
'''&lt;br /&gt;
*app/models/grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was added to follow the previous teams MVC of the grading_history they created.&lt;br /&gt;
'''&lt;br /&gt;
*app/models/review_grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was reimplemented to follow the previous teams MVC of the ReviewGradingHistory&lt;br /&gt;
'''&lt;br /&gt;
*app/models/submission_grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was reimplemented to follow the previous teams MVC of the SubmisionGradingHistory&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/views/grading_histories/index.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This file contains the view for the grading history table&lt;br /&gt;
'''&lt;br /&gt;
*app/views/grading_histories/_form.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This file contains the view for when a grading history contains any error when it is about to be saved&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
'''Modified'''&lt;br /&gt;
*app/controllers/grades_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was modified based off the previous teams implementation because when the method save_grade_and_comment_for_submission was called it should also create a grading history so that the grading audit can be created and added to. This was mainly focusing on the grading history of submissions and not reviews.&lt;br /&gt;
'''&lt;br /&gt;
*app/controllers/review_mapping_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was modified based off the previous teams implementation because when the method save_grade_and_comment_for_reviewer was called it should also create a grading history so that the grading audit can be created and added to. This was mainly focusing on the grading history of reviews and not submissions.&lt;br /&gt;
'''&lt;br /&gt;
*app/views/assignments/list_submissions.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     It was modified to add the new hyperlink to display the grading history of a submission.&lt;br /&gt;
'''&lt;br /&gt;
*config/routes.rb&lt;br /&gt;
'''&lt;br /&gt;
     It was to add the new route for grading histories&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
=='''Solutions - Implemented'''==&lt;br /&gt;
&lt;br /&gt;
'''E1934'''&lt;br /&gt;
&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. 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. &lt;br /&gt;
:2. In the view grading record page, remove the receiver column and add it to the title &lt;br /&gt;
:3. Restrict the column width on the grading record page &lt;br /&gt;
:4. Add comments on list_submissions.html.erb to indicate that the alignment was changed to fix code climate issues &lt;br /&gt;
:5. Ensure that white space changes are separate commits &lt;br /&gt;
:6. Revert changes made to list_review_mapping.html.erb &lt;br /&gt;
:7. Remove the review_report_html.erb file&lt;br /&gt;
:8. Design doc – mention why each of those files were changed&lt;br /&gt;
&lt;br /&gt;
'''Solutions''' &lt;br /&gt;
:1. Found the correct location to put the Review Grading History link and also fix the previous teams creation of a grading history to work with the latest expertiza update. &lt;br /&gt;
Files changed include: &lt;br /&gt;
*[https://github.com/ErikLG360/expertiza/commit/c0352cb73f7de1fba72938df2953ee82cb84bb6a app/controllers/review_mapping_controller.rb]&lt;br /&gt;
*[https://github.com/ErikLG360/expertiza/commit/c0352cb73f7de1fba72938df2953ee82cb84bb6a app/views/reports/_review_report.html.erb]&lt;br /&gt;
&lt;br /&gt;
:2. The previous implementatation of E2237 tackled this problem and moved it to the title.&lt;br /&gt;
[[File:GradingTableTitle.png]]&lt;br /&gt;
:3. The column widths were lessened by about 15px in the grading record page&lt;br /&gt;
&lt;br /&gt;
Files changed include:&lt;br /&gt;
*[https://github.com/ErikLG360/expertiza/commit/124bd12d23f75db0a68e2fac8a8487c5f7a7ed67 app/views/grading_histories/index.html.erb]&lt;br /&gt;
&lt;br /&gt;
:4.&lt;br /&gt;
&lt;br /&gt;
:5. All code climate changes are their own commits such as [https://github.com/ErikLG360/expertiza/commit/e95656f4d5e4f2ba4fc8d3f40716673ccafb41b1 This]&lt;br /&gt;
&lt;br /&gt;
:6. This issue was resolved by not &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''E2237'''&lt;br /&gt;
&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. Redundant files generated by scaffolding need to be removed, along with debugging code. Ex) Coffee created by scaffolding and console logging for debugging. &lt;br /&gt;
:2. Authentication could be done using existing utilities, no need to create their own. &lt;br /&gt;
:3. Some formatting changes could be done especially on how cells span in review report page. Ex) Formatting change for spans in between cells in review report.&lt;br /&gt;
:4. Code from previous implementation is a concern.&lt;br /&gt;
&lt;br /&gt;
=='''Testing Plan'''==&lt;br /&gt;
The Testing that we will implement will build from E2237 since the previous tests crash and was something they solved. We also plan to implement test using the given Test Skeleton.&lt;br /&gt;
&lt;br /&gt;
=='''Future Scope'''==&lt;br /&gt;
This project may need further improvement since it does not seem like there should be an abundance of files added and perhaps using the MVC design is not necessarily needed.&lt;br /&gt;
&lt;br /&gt;
=='''Relevant Links'''==&lt;br /&gt;
* '''Github Repository:''' https://github.com/ErikLG360/expertiza&lt;br /&gt;
* '''Pull Request:''' https://github.com/expertiza/expertiza/pull/2696&lt;br /&gt;
* '''VCL Server:''' NOT Setup yet&lt;br /&gt;
&lt;br /&gt;
=='''Contributors to this project'''==&lt;br /&gt;
*Amulya Usem&lt;br /&gt;
*Erik Lopez-Godinez&lt;br /&gt;
*Gowtham Pollam&lt;br /&gt;
&lt;br /&gt;
*'''Mentor''': Srilekha Gudipati&lt;/div&gt;</summary>
		<author><name>Ealopezg</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2023_-_E2383._Grading_Audit_Trail&amp;diff=152289</id>
		<title>CSC/ECE 517 Fall 2023 - E2383. Grading Audit Trail</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2023_-_E2383._Grading_Audit_Trail&amp;diff=152289"/>
		<updated>2023-12-04T17:14:43Z</updated>

		<summary type="html">&lt;p&gt;Ealopezg: /* Solutions - Implemented */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=='''Introduction'''==&lt;br /&gt;
&lt;br /&gt;
===Problem Statement===&lt;br /&gt;
After an instructor gave a grade to an assignment, there is no way to track who gave the grade.&lt;br /&gt;
A grading audit trail must be created and the following information needs to be stored: &lt;br /&gt;
:1. When a grade is assigned by an instructor, there needs to be an indication of who did it and when it was done. &lt;br /&gt;
:2. Comments previously provided by other instructors must also be preserved.&lt;br /&gt;
&lt;br /&gt;
This information needs to be stored every time an instructor edits a grade/comment and clicks the save button.&lt;br /&gt;
&lt;br /&gt;
There have been previous attempts from teams to implement such functionality and our implementation will be based on '''E1934''' and '''E2237'''. Each of these implementations have problems of their own that we need to address.&lt;br /&gt;
&lt;br /&gt;
== '''Overview of Major Changes By Previous Teams''' ==&lt;br /&gt;
===[https://wiki-expertiza.csc.ncsu.edu/index.php/E1934_-_Grading_Audit_Trail E1934]===&lt;br /&gt;
[https://youtu.be/yyxX_kRYxLc Their Screencast]&lt;br /&gt;
&lt;br /&gt;
*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)&lt;br /&gt;
*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.&lt;br /&gt;
*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.&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. 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. &lt;br /&gt;
:2. In the view grading record page, remove the receiver column and add it to the title &lt;br /&gt;
:3. Restrict the column width on the grading record page &lt;br /&gt;
:4. Add comments on list_submissions.html.erb to indicate that the alignment was changed to fix code climate issues &lt;br /&gt;
:5. Ensure that white space changes are separate commits &lt;br /&gt;
:6. Revert changes made to list_review_mapping.html.erb &lt;br /&gt;
:7. Remove the review_report_html.erb file&lt;br /&gt;
:8. Design doc – mention why each of those files were changed&lt;br /&gt;
&lt;br /&gt;
===[https://wiki-expertiza.csc.ncsu.edu/index.php/CSC/ECE_517_Spring_2022_-_E2237:_Grading_audit_trail E2237]===&lt;br /&gt;
&lt;br /&gt;
*They fixed some issues that were causing the system to crash during testing&lt;br /&gt;
*Altered the Grading History view&lt;br /&gt;
*Explained the reasoning for changes made to files using diagrams and justifications&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. Redundant files generated by scaffolding need to be removed, along with debugging code. Ex) Coffee created by scaffolding and console logging for debugging. &lt;br /&gt;
:2. Authentication could be done using existing utilities, no need to create their own. &lt;br /&gt;
:3. Some formatting changes could be done especially on how cells span in review report page. Ex) Formatting change for spans in between cells in review report.&lt;br /&gt;
:4. Code from previous implementation is a concern.&lt;br /&gt;
&lt;br /&gt;
=='''Proposed Solution'''==&lt;br /&gt;
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. These files cannot be added haphazardly since parts of the implementation is a cause to concern and caused the changes to not be implemented. It is also using an older version of expertiza so some parts may not be compatible.  &lt;br /&gt;
&lt;br /&gt;
We must first figure out exactly what changes and issues to address in their implementation by meeting with our mentor. We also need to reimplement the following files since none of their changes were implemented:&lt;br /&gt;
&lt;br /&gt;
*app/controllers/grading_histories_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     Calls the grading history view after validating Submission and Review Type.&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/grading_history.rb &lt;br /&gt;
'''&lt;br /&gt;
     Model for Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/review_grading_history.rb &lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Model containing specifics of Review Grading History. Inherits Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/submission_grading_history.rb &lt;br /&gt;
'''&lt;br /&gt;
     Model containing specifics of Submission Grading History. Inherits Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/views/grading_history/index_html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This is a view for grading audit trail, it will display all grading histories of a &lt;br /&gt;
     submission/review&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*spec/features/grade_histories_spec.rb&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Feature test to check if the grades appear in chronological order&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*spec/features/helpers/grade_histories_helper.rb&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Helper file to facilitate the above mentioned feature test.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
=='''Reimplementation'''==&lt;br /&gt;
Since the previous teams implementations were not integrated we have to reimplement their files which we will do by looking at their commits and pull request to see what files are necessary and what can be left out to address the issues of their implementation.&lt;br /&gt;
&lt;br /&gt;
'''[https://github.com/ErikLG360/expertiza/commit/e28a857695549cc91c477587707e48100d2bd333 Files being Reimplemented/Modified]'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Reimplemented'''&lt;br /&gt;
*app/controllers/grading_histories_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was added because it was from the previous teams implementation which concerned the MVC of the grading_history they created. It dealt with allowing only the correct people to view the grading history, checking the assignment type whether it be a submission or review, and indexing all the grading history for the assignment in chronological order.&lt;br /&gt;
'''&lt;br /&gt;
*app/models/grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was added to follow the previous teams MVC of the grading_history they created.&lt;br /&gt;
'''&lt;br /&gt;
*app/models/review_grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was reimplemented to follow the previous teams MVC of the ReviewGradingHistory&lt;br /&gt;
'''&lt;br /&gt;
*app/models/submission_grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was reimplemented to follow the previous teams MVC of the SubmisionGradingHistory&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/views/grading_histories/index.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This file contains the view for the grading history table&lt;br /&gt;
'''&lt;br /&gt;
*app/views/grading_histories/_form.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This file contains the view for when a grading history contains any error when it is about to be saved&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
'''Modified'''&lt;br /&gt;
*app/controllers/grades_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was modified based off the previous teams implementation because when the method save_grade_and_comment_for_submission was called it should also create a grading history so that the grading audit can be created and added to. This was mainly focusing on the grading history of submissions and not reviews.&lt;br /&gt;
'''&lt;br /&gt;
*app/controllers/review_mapping_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was modified based off the previous teams implementation because when the method save_grade_and_comment_for_reviewer was called it should also create a grading history so that the grading audit can be created and added to. This was mainly focusing on the grading history of reviews and not submissions.&lt;br /&gt;
'''&lt;br /&gt;
*app/views/assignments/list_submissions.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     It was modified to add the new hyperlink to display the grading history of a submission.&lt;br /&gt;
'''&lt;br /&gt;
*config/routes.rb&lt;br /&gt;
'''&lt;br /&gt;
     It was to add the new route for grading histories&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
=='''Solutions - Implemented'''==&lt;br /&gt;
&lt;br /&gt;
'''E1934'''&lt;br /&gt;
&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. 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. &lt;br /&gt;
:2. In the view grading record page, remove the receiver column and add it to the title &lt;br /&gt;
:3. Restrict the column width on the grading record page &lt;br /&gt;
:4. Add comments on list_submissions.html.erb to indicate that the alignment was changed to fix code climate issues &lt;br /&gt;
:5. Ensure that white space changes are separate commits &lt;br /&gt;
:6. Revert changes made to list_review_mapping.html.erb &lt;br /&gt;
:7. Remove the review_report_html.erb file&lt;br /&gt;
:8. Design doc – mention why each of those files were changed&lt;br /&gt;
&lt;br /&gt;
'''Solutions''' &lt;br /&gt;
:1. Found the correct location to put the Review Grading History link and also fix the previous teams creation of a grading history to work with the latest expertiza update. &lt;br /&gt;
Files changed include: &lt;br /&gt;
*[https://github.com/ErikLG360/expertiza/commit/c0352cb73f7de1fba72938df2953ee82cb84bb6a app/controllers/review_mapping_controller.rb]&lt;br /&gt;
*[https://github.com/ErikLG360/expertiza/commit/c0352cb73f7de1fba72938df2953ee82cb84bb6a app/views/reports/_review_report.html.erb]&lt;br /&gt;
&lt;br /&gt;
:2. The previous implementatation of E2237 tackled this problem and moved it to the title.&lt;br /&gt;
[[File:GradingTableTitle.png]]&lt;br /&gt;
:3. The column widths were lessened by about 15px in the grading record page&lt;br /&gt;
&lt;br /&gt;
Files changed include:&lt;br /&gt;
*[https://github.com/ErikLG360/expertiza/commit/124bd12d23f75db0a68e2fac8a8487c5f7a7ed67 app/views/grading_histories/index.html.erb]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''E2237'''&lt;br /&gt;
&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. Redundant files generated by scaffolding need to be removed, along with debugging code. Ex) Coffee created by scaffolding and console logging for debugging. &lt;br /&gt;
:2. Authentication could be done using existing utilities, no need to create their own. &lt;br /&gt;
:3. Some formatting changes could be done especially on how cells span in review report page. Ex) Formatting change for spans in between cells in review report.&lt;br /&gt;
:4. Code from previous implementation is a concern.&lt;br /&gt;
&lt;br /&gt;
=='''Testing Plan'''==&lt;br /&gt;
The Testing that we will implement will build from E2237 since the previous tests crash and was something they solved. We also plan to implement test using the given Test Skeleton.&lt;br /&gt;
&lt;br /&gt;
=='''Future Scope'''==&lt;br /&gt;
This project may need further improvement since it does not seem like there should be an abundance of files added and perhaps using the MVC design is not necessarily needed.&lt;br /&gt;
&lt;br /&gt;
=='''Relevant Links'''==&lt;br /&gt;
* '''Github Repository:''' https://github.com/ErikLG360/expertiza&lt;br /&gt;
* '''Pull Request:''' https://github.com/expertiza/expertiza/pull/2696&lt;br /&gt;
* '''VCL Server:''' NOT Setup yet&lt;br /&gt;
&lt;br /&gt;
=='''Contributors to this project'''==&lt;br /&gt;
*Amulya Usem&lt;br /&gt;
*Erik Lopez-Godinez&lt;br /&gt;
*Gowtham Pollam&lt;br /&gt;
&lt;br /&gt;
*'''Mentor''': Srilekha Gudipati&lt;/div&gt;</summary>
		<author><name>Ealopezg</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=File:GradingTableTitle.png&amp;diff=152285</id>
		<title>File:GradingTableTitle.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=File:GradingTableTitle.png&amp;diff=152285"/>
		<updated>2023-12-04T16:40:12Z</updated>

		<summary type="html">&lt;p&gt;Ealopezg: Ealopezg uploaded a new version of File:GradingTableTitle.png&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Ealopezg</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2023_-_E2383._Grading_Audit_Trail&amp;diff=152283</id>
		<title>CSC/ECE 517 Fall 2023 - E2383. Grading Audit Trail</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2023_-_E2383._Grading_Audit_Trail&amp;diff=152283"/>
		<updated>2023-12-04T16:38:22Z</updated>

		<summary type="html">&lt;p&gt;Ealopezg: /* Solutions - Implemented */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=='''Introduction'''==&lt;br /&gt;
&lt;br /&gt;
===Problem Statement===&lt;br /&gt;
After an instructor gave a grade to an assignment, there is no way to track who gave the grade.&lt;br /&gt;
A grading audit trail must be created and the following information needs to be stored: &lt;br /&gt;
:1. When a grade is assigned by an instructor, there needs to be an indication of who did it and when it was done. &lt;br /&gt;
:2. Comments previously provided by other instructors must also be preserved.&lt;br /&gt;
&lt;br /&gt;
This information needs to be stored every time an instructor edits a grade/comment and clicks the save button.&lt;br /&gt;
&lt;br /&gt;
There have been previous attempts from teams to implement such functionality and our implementation will be based on '''E1934''' and '''E2237'''. Each of these implementations have problems of their own that we need to address.&lt;br /&gt;
&lt;br /&gt;
== '''Overview of Major Changes By Previous Teams''' ==&lt;br /&gt;
===[https://wiki-expertiza.csc.ncsu.edu/index.php/E1934_-_Grading_Audit_Trail E1934]===&lt;br /&gt;
[https://youtu.be/yyxX_kRYxLc Their Screencast]&lt;br /&gt;
&lt;br /&gt;
*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)&lt;br /&gt;
*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.&lt;br /&gt;
*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.&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. 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. &lt;br /&gt;
:2. In the view grading record page, remove the receiver column and add it to the title &lt;br /&gt;
:3. Restrict the column width on the grading record page &lt;br /&gt;
:4. Add comments on list_submissions.html.erb to indicate that the alignment was changed to fix code climate issues &lt;br /&gt;
:5. Ensure that white space changes are separate commits &lt;br /&gt;
:6. Revert changes made to list_review_mapping.html.erb &lt;br /&gt;
:7. Remove the review_report_html.erb file&lt;br /&gt;
:8. Design doc – mention why each of those files were changed&lt;br /&gt;
&lt;br /&gt;
===[https://wiki-expertiza.csc.ncsu.edu/index.php/CSC/ECE_517_Spring_2022_-_E2237:_Grading_audit_trail E2237]===&lt;br /&gt;
&lt;br /&gt;
*They fixed some issues that were causing the system to crash during testing&lt;br /&gt;
*Altered the Grading History view&lt;br /&gt;
*Explained the reasoning for changes made to files using diagrams and justifications&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. Redundant files generated by scaffolding need to be removed, along with debugging code. Ex) Coffee created by scaffolding and console logging for debugging. &lt;br /&gt;
:2. Authentication could be done using existing utilities, no need to create their own. &lt;br /&gt;
:3. Some formatting changes could be done especially on how cells span in review report page. Ex) Formatting change for spans in between cells in review report.&lt;br /&gt;
:4. Code from previous implementation is a concern.&lt;br /&gt;
&lt;br /&gt;
=='''Proposed Solution'''==&lt;br /&gt;
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. These files cannot be added haphazardly since parts of the implementation is a cause to concern and caused the changes to not be implemented. It is also using an older version of expertiza so some parts may not be compatible.  &lt;br /&gt;
&lt;br /&gt;
We must first figure out exactly what changes and issues to address in their implementation by meeting with our mentor. We also need to reimplement the following files since none of their changes were implemented:&lt;br /&gt;
&lt;br /&gt;
*app/controllers/grading_histories_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     Calls the grading history view after validating Submission and Review Type.&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/grading_history.rb &lt;br /&gt;
'''&lt;br /&gt;
     Model for Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/review_grading_history.rb &lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Model containing specifics of Review Grading History. Inherits Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/submission_grading_history.rb &lt;br /&gt;
'''&lt;br /&gt;
     Model containing specifics of Submission Grading History. Inherits Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/views/grading_history/index_html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This is a view for grading audit trail, it will display all grading histories of a &lt;br /&gt;
     submission/review&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*spec/features/grade_histories_spec.rb&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Feature test to check if the grades appear in chronological order&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*spec/features/helpers/grade_histories_helper.rb&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Helper file to facilitate the above mentioned feature test.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
=='''Reimplementation'''==&lt;br /&gt;
Since the previous teams implementations were not integrated we have to reimplement their files which we will do by looking at their commits and pull request to see what files are necessary and what can be left out to address the issues of their implementation.&lt;br /&gt;
&lt;br /&gt;
'''[https://github.com/ErikLG360/expertiza/commit/e28a857695549cc91c477587707e48100d2bd333 Files being Reimplemented/Modified]'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Reimplemented'''&lt;br /&gt;
*app/controllers/grading_histories_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was added because it was from the previous teams implementation which concerned the MVC of the grading_history they created. It dealt with allowing only the correct people to view the grading history, checking the assignment type whether it be a submission or review, and indexing all the grading history for the assignment in chronological order.&lt;br /&gt;
'''&lt;br /&gt;
*app/models/grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was added to follow the previous teams MVC of the grading_history they created.&lt;br /&gt;
'''&lt;br /&gt;
*app/models/review_grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was reimplemented to follow the previous teams MVC of the ReviewGradingHistory&lt;br /&gt;
'''&lt;br /&gt;
*app/models/submission_grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was reimplemented to follow the previous teams MVC of the SubmisionGradingHistory&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/views/grading_histories/index.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This file contains the view for the grading history table&lt;br /&gt;
'''&lt;br /&gt;
*app/views/grading_histories/_form.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This file contains the view for when a grading history contains any error when it is about to be saved&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
'''Modified'''&lt;br /&gt;
*app/controllers/grades_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was modified based off the previous teams implementation because when the method save_grade_and_comment_for_submission was called it should also create a grading history so that the grading audit can be created and added to. This was mainly focusing on the grading history of submissions and not reviews.&lt;br /&gt;
'''&lt;br /&gt;
*app/controllers/review_mapping_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was modified based off the previous teams implementation because when the method save_grade_and_comment_for_reviewer was called it should also create a grading history so that the grading audit can be created and added to. This was mainly focusing on the grading history of reviews and not submissions.&lt;br /&gt;
'''&lt;br /&gt;
*app/views/assignments/list_submissions.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     It was modified to add the new hyperlink to display the grading history of a submission.&lt;br /&gt;
'''&lt;br /&gt;
*config/routes.rb&lt;br /&gt;
'''&lt;br /&gt;
     It was to add the new route for grading histories&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
=='''Solutions - Implemented'''==&lt;br /&gt;
&lt;br /&gt;
'''E1934'''&lt;br /&gt;
&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. 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. &lt;br /&gt;
:2. In the view grading record page, remove the receiver column and add it to the title &lt;br /&gt;
:3. Restrict the column width on the grading record page &lt;br /&gt;
:4. Add comments on list_submissions.html.erb to indicate that the alignment was changed to fix code climate issues &lt;br /&gt;
:5. Ensure that white space changes are separate commits &lt;br /&gt;
:6. Revert changes made to list_review_mapping.html.erb &lt;br /&gt;
:7. Remove the review_report_html.erb file&lt;br /&gt;
:8. Design doc – mention why each of those files were changed&lt;br /&gt;
&lt;br /&gt;
'''Solutions''' &lt;br /&gt;
:1. Found the correct location to put the Review Grading History link and also fix the previous teams creation of a grading history to work with the latest expertiza update. &lt;br /&gt;
Files changed include: &lt;br /&gt;
*[https://github.com/ErikLG360/expertiza/commit/c0352cb73f7de1fba72938df2953ee82cb84bb6a app/controllers/review_mapping_controller.rb]&lt;br /&gt;
*[https://github.com/ErikLG360/expertiza/commit/c0352cb73f7de1fba72938df2953ee82cb84bb6a app/views/reports/_review_report.html.erb]&lt;br /&gt;
&lt;br /&gt;
:2. The previous implementatation of E2237 tackled this problem and moved it to the title.&lt;br /&gt;
[[File:GradingTableTitle.png]]&lt;br /&gt;
:3. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''E2237'''&lt;br /&gt;
&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. Redundant files generated by scaffolding need to be removed, along with debugging code. Ex) Coffee created by scaffolding and console logging for debugging. &lt;br /&gt;
:2. Authentication could be done using existing utilities, no need to create their own. &lt;br /&gt;
:3. Some formatting changes could be done especially on how cells span in review report page. Ex) Formatting change for spans in between cells in review report.&lt;br /&gt;
:4. Code from previous implementation is a concern.&lt;br /&gt;
&lt;br /&gt;
=='''Testing Plan'''==&lt;br /&gt;
The Testing that we will implement will build from E2237 since the previous tests crash and was something they solved. We also plan to implement test using the given Test Skeleton.&lt;br /&gt;
&lt;br /&gt;
=='''Future Scope'''==&lt;br /&gt;
This project may need further improvement since it does not seem like there should be an abundance of files added and perhaps using the MVC design is not necessarily needed.&lt;br /&gt;
&lt;br /&gt;
=='''Relevant Links'''==&lt;br /&gt;
* '''Github Repository:''' https://github.com/ErikLG360/expertiza&lt;br /&gt;
* '''Pull Request:''' https://github.com/expertiza/expertiza/pull/2696&lt;br /&gt;
* '''VCL Server:''' NOT Setup yet&lt;br /&gt;
&lt;br /&gt;
=='''Contributors to this project'''==&lt;br /&gt;
*Amulya Usem&lt;br /&gt;
*Erik Lopez-Godinez&lt;br /&gt;
*Gowtham Pollam&lt;br /&gt;
&lt;br /&gt;
*'''Mentor''': Srilekha Gudipati&lt;/div&gt;</summary>
		<author><name>Ealopezg</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=File:GradingTableTitle.png&amp;diff=152282</id>
		<title>File:GradingTableTitle.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=File:GradingTableTitle.png&amp;diff=152282"/>
		<updated>2023-12-04T16:38:10Z</updated>

		<summary type="html">&lt;p&gt;Ealopezg: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Ealopezg</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2023_-_E2383._Grading_Audit_Trail&amp;diff=152249</id>
		<title>CSC/ECE 517 Fall 2023 - E2383. Grading Audit Trail</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2023_-_E2383._Grading_Audit_Trail&amp;diff=152249"/>
		<updated>2023-12-04T15:17:06Z</updated>

		<summary type="html">&lt;p&gt;Ealopezg: /* Solutions - Implemented */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=='''Introduction'''==&lt;br /&gt;
&lt;br /&gt;
===Problem Statement===&lt;br /&gt;
After an instructor gave a grade to an assignment, there is no way to track who gave the grade.&lt;br /&gt;
A grading audit trail must be created and the following information needs to be stored: &lt;br /&gt;
:1. When a grade is assigned by an instructor, there needs to be an indication of who did it and when it was done. &lt;br /&gt;
:2. Comments previously provided by other instructors must also be preserved.&lt;br /&gt;
&lt;br /&gt;
This information needs to be stored every time an instructor edits a grade/comment and clicks the save button.&lt;br /&gt;
&lt;br /&gt;
There have been previous attempts from teams to implement such functionality and our implementation will be based on '''E1934''' and '''E2237'''. Each of these implementations have problems of their own that we need to address.&lt;br /&gt;
&lt;br /&gt;
== '''Overview of Major Changes By Previous Teams''' ==&lt;br /&gt;
===[https://wiki-expertiza.csc.ncsu.edu/index.php/E1934_-_Grading_Audit_Trail E1934]===&lt;br /&gt;
[https://youtu.be/yyxX_kRYxLc Their Screencast]&lt;br /&gt;
&lt;br /&gt;
*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)&lt;br /&gt;
*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.&lt;br /&gt;
*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.&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. 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. &lt;br /&gt;
:2. In the view grading record page, remove the receiver column and add it to the title &lt;br /&gt;
:3. Restrict the column width on the grading record page &lt;br /&gt;
:4. Add comments on list_submissions.html.erb to indicate that the alignment was changed to fix code climate issues &lt;br /&gt;
:5. Ensure that white space changes are separate commits &lt;br /&gt;
:6. Revert changes made to list_review_mapping.html.erb &lt;br /&gt;
:7. Remove the review_report_html.erb file&lt;br /&gt;
:8. Design doc – mention why each of those files were changed&lt;br /&gt;
&lt;br /&gt;
===[https://wiki-expertiza.csc.ncsu.edu/index.php/CSC/ECE_517_Spring_2022_-_E2237:_Grading_audit_trail E2237]===&lt;br /&gt;
&lt;br /&gt;
*They fixed some issues that were causing the system to crash during testing&lt;br /&gt;
*Altered the Grading History view&lt;br /&gt;
*Explained the reasoning for changes made to files using diagrams and justifications&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. Redundant files generated by scaffolding need to be removed, along with debugging code. Ex) Coffee created by scaffolding and console logging for debugging. &lt;br /&gt;
:2. Authentication could be done using existing utilities, no need to create their own. &lt;br /&gt;
:3. Some formatting changes could be done especially on how cells span in review report page. Ex) Formatting change for spans in between cells in review report.&lt;br /&gt;
:4. Code from previous implementation is a concern.&lt;br /&gt;
&lt;br /&gt;
=='''Proposed Solution'''==&lt;br /&gt;
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. These files cannot be added haphazardly since parts of the implementation is a cause to concern and caused the changes to not be implemented. It is also using an older version of expertiza so some parts may not be compatible.  &lt;br /&gt;
&lt;br /&gt;
We must first figure out exactly what changes and issues to address in their implementation by meeting with our mentor. We also need to reimplement the following files since none of their changes were implemented:&lt;br /&gt;
&lt;br /&gt;
*app/controllers/grading_histories_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     Calls the grading history view after validating Submission and Review Type.&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/grading_history.rb &lt;br /&gt;
'''&lt;br /&gt;
     Model for Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/review_grading_history.rb &lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Model containing specifics of Review Grading History. Inherits Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/submission_grading_history.rb &lt;br /&gt;
'''&lt;br /&gt;
     Model containing specifics of Submission Grading History. Inherits Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/views/grading_history/index_html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This is a view for grading audit trail, it will display all grading histories of a &lt;br /&gt;
     submission/review&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*spec/features/grade_histories_spec.rb&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Feature test to check if the grades appear in chronological order&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*spec/features/helpers/grade_histories_helper.rb&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Helper file to facilitate the above mentioned feature test.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
=='''Reimplementation'''==&lt;br /&gt;
Since the previous teams implementations were not integrated we have to reimplement their files which we will do by looking at their commits and pull request to see what files are necessary and what can be left out to address the issues of their implementation.&lt;br /&gt;
&lt;br /&gt;
'''[https://github.com/ErikLG360/expertiza/commit/e28a857695549cc91c477587707e48100d2bd333 Files being Reimplemented/Modified]'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Reimplemented'''&lt;br /&gt;
*app/controllers/grading_histories_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was added because it was from the previous teams implementation which concerned the MVC of the grading_history they created. It dealt with allowing only the correct people to view the grading history, checking the assignment type whether it be a submission or review, and indexing all the grading history for the assignment in chronological order.&lt;br /&gt;
'''&lt;br /&gt;
*app/models/grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was added to follow the previous teams MVC of the grading_history they created.&lt;br /&gt;
'''&lt;br /&gt;
*app/models/review_grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was reimplemented to follow the previous teams MVC of the ReviewGradingHistory&lt;br /&gt;
'''&lt;br /&gt;
*app/models/submission_grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was reimplemented to follow the previous teams MVC of the SubmisionGradingHistory&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/views/grading_histories/index.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This file contains the view for the grading history table&lt;br /&gt;
'''&lt;br /&gt;
*app/views/grading_histories/_form.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This file contains the view for when a grading history contains any error when it is about to be saved&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
'''Modified'''&lt;br /&gt;
*app/controllers/grades_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was modified based off the previous teams implementation because when the method save_grade_and_comment_for_submission was called it should also create a grading history so that the grading audit can be created and added to. This was mainly focusing on the grading history of submissions and not reviews.&lt;br /&gt;
'''&lt;br /&gt;
*app/controllers/review_mapping_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was modified based off the previous teams implementation because when the method save_grade_and_comment_for_reviewer was called it should also create a grading history so that the grading audit can be created and added to. This was mainly focusing on the grading history of reviews and not submissions.&lt;br /&gt;
'''&lt;br /&gt;
*app/views/assignments/list_submissions.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     It was modified to add the new hyperlink to display the grading history of a submission.&lt;br /&gt;
'''&lt;br /&gt;
*config/routes.rb&lt;br /&gt;
'''&lt;br /&gt;
     It was to add the new route for grading histories&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
=='''Solutions - Implemented'''==&lt;br /&gt;
&lt;br /&gt;
'''E1934'''&lt;br /&gt;
&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. 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. &lt;br /&gt;
:2. In the view grading record page, remove the receiver column and add it to the title &lt;br /&gt;
:3. Restrict the column width on the grading record page &lt;br /&gt;
:4. Add comments on list_submissions.html.erb to indicate that the alignment was changed to fix code climate issues &lt;br /&gt;
:5. Ensure that white space changes are separate commits &lt;br /&gt;
:6. Revert changes made to list_review_mapping.html.erb &lt;br /&gt;
:7. Remove the review_report_html.erb file&lt;br /&gt;
:8. Design doc – mention why each of those files were changed&lt;br /&gt;
&lt;br /&gt;
'''Solutions''' &lt;br /&gt;
:1. Found the correct location to put the Review Grading History link and also fix the previous teams creation of a grading history to work with the latest expertiza update. &lt;br /&gt;
Files changed include: &lt;br /&gt;
*[https://github.com/ErikLG360/expertiza/commit/c0352cb73f7de1fba72938df2953ee82cb84bb6a app/controllers/review_mapping_controller.rb]&lt;br /&gt;
*[https://github.com/ErikLG360/expertiza/commit/c0352cb73f7de1fba72938df2953ee82cb84bb6a app/views/reports/_review_report.html.erb]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''E2237'''&lt;br /&gt;
&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. Redundant files generated by scaffolding need to be removed, along with debugging code. Ex) Coffee created by scaffolding and console logging for debugging. &lt;br /&gt;
:2. Authentication could be done using existing utilities, no need to create their own. &lt;br /&gt;
:3. Some formatting changes could be done especially on how cells span in review report page. Ex) Formatting change for spans in between cells in review report.&lt;br /&gt;
:4. Code from previous implementation is a concern.&lt;br /&gt;
&lt;br /&gt;
=='''Testing Plan'''==&lt;br /&gt;
The Testing that we will implement will build from E2237 since the previous tests crash and was something they solved. We also plan to implement test using the given Test Skeleton.&lt;br /&gt;
&lt;br /&gt;
=='''Future Scope'''==&lt;br /&gt;
This project may need further improvement since it does not seem like there should be an abundance of files added and perhaps using the MVC design is not necessarily needed.&lt;br /&gt;
&lt;br /&gt;
=='''Relevant Links'''==&lt;br /&gt;
* '''Github Repository:''' https://github.com/ErikLG360/expertiza&lt;br /&gt;
* '''Pull Request:''' https://github.com/expertiza/expertiza/pull/2696&lt;br /&gt;
* '''VCL Server:''' NOT Setup yet&lt;br /&gt;
&lt;br /&gt;
=='''Contributors to this project'''==&lt;br /&gt;
*Amulya Usem&lt;br /&gt;
*Erik Lopez-Godinez&lt;br /&gt;
*Gowtham Pollam&lt;br /&gt;
&lt;br /&gt;
*'''Mentor''': Srilekha Gudipati&lt;/div&gt;</summary>
		<author><name>Ealopezg</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2023_-_E2383._Grading_Audit_Trail&amp;diff=152248</id>
		<title>CSC/ECE 517 Fall 2023 - E2383. Grading Audit Trail</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2023_-_E2383._Grading_Audit_Trail&amp;diff=152248"/>
		<updated>2023-12-04T15:16:40Z</updated>

		<summary type="html">&lt;p&gt;Ealopezg: /* Solution - Implemented */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=='''Introduction'''==&lt;br /&gt;
&lt;br /&gt;
===Problem Statement===&lt;br /&gt;
After an instructor gave a grade to an assignment, there is no way to track who gave the grade.&lt;br /&gt;
A grading audit trail must be created and the following information needs to be stored: &lt;br /&gt;
:1. When a grade is assigned by an instructor, there needs to be an indication of who did it and when it was done. &lt;br /&gt;
:2. Comments previously provided by other instructors must also be preserved.&lt;br /&gt;
&lt;br /&gt;
This information needs to be stored every time an instructor edits a grade/comment and clicks the save button.&lt;br /&gt;
&lt;br /&gt;
There have been previous attempts from teams to implement such functionality and our implementation will be based on '''E1934''' and '''E2237'''. Each of these implementations have problems of their own that we need to address.&lt;br /&gt;
&lt;br /&gt;
== '''Overview of Major Changes By Previous Teams''' ==&lt;br /&gt;
===[https://wiki-expertiza.csc.ncsu.edu/index.php/E1934_-_Grading_Audit_Trail E1934]===&lt;br /&gt;
[https://youtu.be/yyxX_kRYxLc Their Screencast]&lt;br /&gt;
&lt;br /&gt;
*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)&lt;br /&gt;
*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.&lt;br /&gt;
*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.&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. 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. &lt;br /&gt;
:2. In the view grading record page, remove the receiver column and add it to the title &lt;br /&gt;
:3. Restrict the column width on the grading record page &lt;br /&gt;
:4. Add comments on list_submissions.html.erb to indicate that the alignment was changed to fix code climate issues &lt;br /&gt;
:5. Ensure that white space changes are separate commits &lt;br /&gt;
:6. Revert changes made to list_review_mapping.html.erb &lt;br /&gt;
:7. Remove the review_report_html.erb file&lt;br /&gt;
:8. Design doc – mention why each of those files were changed&lt;br /&gt;
&lt;br /&gt;
===[https://wiki-expertiza.csc.ncsu.edu/index.php/CSC/ECE_517_Spring_2022_-_E2237:_Grading_audit_trail E2237]===&lt;br /&gt;
&lt;br /&gt;
*They fixed some issues that were causing the system to crash during testing&lt;br /&gt;
*Altered the Grading History view&lt;br /&gt;
*Explained the reasoning for changes made to files using diagrams and justifications&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. Redundant files generated by scaffolding need to be removed, along with debugging code. Ex) Coffee created by scaffolding and console logging for debugging. &lt;br /&gt;
:2. Authentication could be done using existing utilities, no need to create their own. &lt;br /&gt;
:3. Some formatting changes could be done especially on how cells span in review report page. Ex) Formatting change for spans in between cells in review report.&lt;br /&gt;
:4. Code from previous implementation is a concern.&lt;br /&gt;
&lt;br /&gt;
=='''Proposed Solution'''==&lt;br /&gt;
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. These files cannot be added haphazardly since parts of the implementation is a cause to concern and caused the changes to not be implemented. It is also using an older version of expertiza so some parts may not be compatible.  &lt;br /&gt;
&lt;br /&gt;
We must first figure out exactly what changes and issues to address in their implementation by meeting with our mentor. We also need to reimplement the following files since none of their changes were implemented:&lt;br /&gt;
&lt;br /&gt;
*app/controllers/grading_histories_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     Calls the grading history view after validating Submission and Review Type.&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/grading_history.rb &lt;br /&gt;
'''&lt;br /&gt;
     Model for Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/review_grading_history.rb &lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Model containing specifics of Review Grading History. Inherits Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/submission_grading_history.rb &lt;br /&gt;
'''&lt;br /&gt;
     Model containing specifics of Submission Grading History. Inherits Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/views/grading_history/index_html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This is a view for grading audit trail, it will display all grading histories of a &lt;br /&gt;
     submission/review&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*spec/features/grade_histories_spec.rb&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Feature test to check if the grades appear in chronological order&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*spec/features/helpers/grade_histories_helper.rb&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Helper file to facilitate the above mentioned feature test.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
=='''Reimplementation'''==&lt;br /&gt;
Since the previous teams implementations were not integrated we have to reimplement their files which we will do by looking at their commits and pull request to see what files are necessary and what can be left out to address the issues of their implementation.&lt;br /&gt;
&lt;br /&gt;
'''[https://github.com/ErikLG360/expertiza/commit/e28a857695549cc91c477587707e48100d2bd333 Files being Reimplemented/Modified]'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Reimplemented'''&lt;br /&gt;
*app/controllers/grading_histories_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was added because it was from the previous teams implementation which concerned the MVC of the grading_history they created. It dealt with allowing only the correct people to view the grading history, checking the assignment type whether it be a submission or review, and indexing all the grading history for the assignment in chronological order.&lt;br /&gt;
'''&lt;br /&gt;
*app/models/grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was added to follow the previous teams MVC of the grading_history they created.&lt;br /&gt;
'''&lt;br /&gt;
*app/models/review_grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was reimplemented to follow the previous teams MVC of the ReviewGradingHistory&lt;br /&gt;
'''&lt;br /&gt;
*app/models/submission_grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was reimplemented to follow the previous teams MVC of the SubmisionGradingHistory&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/views/grading_histories/index.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This file contains the view for the grading history table&lt;br /&gt;
'''&lt;br /&gt;
*app/views/grading_histories/_form.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This file contains the view for when a grading history contains any error when it is about to be saved&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
'''Modified'''&lt;br /&gt;
*app/controllers/grades_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was modified based off the previous teams implementation because when the method save_grade_and_comment_for_submission was called it should also create a grading history so that the grading audit can be created and added to. This was mainly focusing on the grading history of submissions and not reviews.&lt;br /&gt;
'''&lt;br /&gt;
*app/controllers/review_mapping_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was modified based off the previous teams implementation because when the method save_grade_and_comment_for_reviewer was called it should also create a grading history so that the grading audit can be created and added to. This was mainly focusing on the grading history of reviews and not submissions.&lt;br /&gt;
'''&lt;br /&gt;
*app/views/assignments/list_submissions.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     It was modified to add the new hyperlink to display the grading history of a submission.&lt;br /&gt;
'''&lt;br /&gt;
*config/routes.rb&lt;br /&gt;
'''&lt;br /&gt;
     It was to add the new route for grading histories&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
=='''Solutions - Implemented'''==&lt;br /&gt;
&lt;br /&gt;
'''E1934'''&lt;br /&gt;
&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. 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. &lt;br /&gt;
:2. In the view grading record page, remove the receiver column and add it to the title &lt;br /&gt;
:3. Restrict the column width on the grading record page &lt;br /&gt;
:4. Add comments on list_submissions.html.erb to indicate that the alignment was changed to fix code climate issues &lt;br /&gt;
:5. Ensure that white space changes are separate commits &lt;br /&gt;
:6. Revert changes made to list_review_mapping.html.erb &lt;br /&gt;
:7. Remove the review_report_html.erb file&lt;br /&gt;
:8. Design doc – mention why each of those files were changed&lt;br /&gt;
&lt;br /&gt;
'''Solutions''' &lt;br /&gt;
:1. Found the correct location to put the Review Grading History link and also fix the previous teams creation of a grading history to work with the latest expertiza update. &lt;br /&gt;
Files changed include: &lt;br /&gt;
[https://github.com/ErikLG360/expertiza/commit/c0352cb73f7de1fba72938df2953ee82cb84bb6a app/controllers/review_mapping_controller.rb]&lt;br /&gt;
[https://github.com/ErikLG360/expertiza/commit/c0352cb73f7de1fba72938df2953ee82cb84bb6a app/views/reports/_review_report.html.erb]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''E2237'''&lt;br /&gt;
&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. Redundant files generated by scaffolding need to be removed, along with debugging code. Ex) Coffee created by scaffolding and console logging for debugging. &lt;br /&gt;
:2. Authentication could be done using existing utilities, no need to create their own. &lt;br /&gt;
:3. Some formatting changes could be done especially on how cells span in review report page. Ex) Formatting change for spans in between cells in review report.&lt;br /&gt;
:4. Code from previous implementation is a concern.&lt;br /&gt;
&lt;br /&gt;
=='''Testing Plan'''==&lt;br /&gt;
The Testing that we will implement will build from E2237 since the previous tests crash and was something they solved. We also plan to implement test using the given Test Skeleton.&lt;br /&gt;
&lt;br /&gt;
=='''Future Scope'''==&lt;br /&gt;
This project may need further improvement since it does not seem like there should be an abundance of files added and perhaps using the MVC design is not necessarily needed.&lt;br /&gt;
&lt;br /&gt;
=='''Relevant Links'''==&lt;br /&gt;
* '''Github Repository:''' https://github.com/ErikLG360/expertiza&lt;br /&gt;
* '''Pull Request:''' https://github.com/expertiza/expertiza/pull/2696&lt;br /&gt;
* '''VCL Server:''' NOT Setup yet&lt;br /&gt;
&lt;br /&gt;
=='''Contributors to this project'''==&lt;br /&gt;
*Amulya Usem&lt;br /&gt;
*Erik Lopez-Godinez&lt;br /&gt;
*Gowtham Pollam&lt;br /&gt;
&lt;br /&gt;
*'''Mentor''': Srilekha Gudipati&lt;/div&gt;</summary>
		<author><name>Ealopezg</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2023_-_E2383._Grading_Audit_Trail&amp;diff=152247</id>
		<title>CSC/ECE 517 Fall 2023 - E2383. Grading Audit Trail</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2023_-_E2383._Grading_Audit_Trail&amp;diff=152247"/>
		<updated>2023-12-04T15:11:59Z</updated>

		<summary type="html">&lt;p&gt;Ealopezg: /* Reimplementation */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=='''Introduction'''==&lt;br /&gt;
&lt;br /&gt;
===Problem Statement===&lt;br /&gt;
After an instructor gave a grade to an assignment, there is no way to track who gave the grade.&lt;br /&gt;
A grading audit trail must be created and the following information needs to be stored: &lt;br /&gt;
:1. When a grade is assigned by an instructor, there needs to be an indication of who did it and when it was done. &lt;br /&gt;
:2. Comments previously provided by other instructors must also be preserved.&lt;br /&gt;
&lt;br /&gt;
This information needs to be stored every time an instructor edits a grade/comment and clicks the save button.&lt;br /&gt;
&lt;br /&gt;
There have been previous attempts from teams to implement such functionality and our implementation will be based on '''E1934''' and '''E2237'''. Each of these implementations have problems of their own that we need to address.&lt;br /&gt;
&lt;br /&gt;
== '''Overview of Major Changes By Previous Teams''' ==&lt;br /&gt;
===[https://wiki-expertiza.csc.ncsu.edu/index.php/E1934_-_Grading_Audit_Trail E1934]===&lt;br /&gt;
[https://youtu.be/yyxX_kRYxLc Their Screencast]&lt;br /&gt;
&lt;br /&gt;
*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)&lt;br /&gt;
*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.&lt;br /&gt;
*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.&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. 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. &lt;br /&gt;
:2. In the view grading record page, remove the receiver column and add it to the title &lt;br /&gt;
:3. Restrict the column width on the grading record page &lt;br /&gt;
:4. Add comments on list_submissions.html.erb to indicate that the alignment was changed to fix code climate issues &lt;br /&gt;
:5. Ensure that white space changes are separate commits &lt;br /&gt;
:6. Revert changes made to list_review_mapping.html.erb &lt;br /&gt;
:7. Remove the review_report_html.erb file&lt;br /&gt;
:8. Design doc – mention why each of those files were changed&lt;br /&gt;
&lt;br /&gt;
===[https://wiki-expertiza.csc.ncsu.edu/index.php/CSC/ECE_517_Spring_2022_-_E2237:_Grading_audit_trail E2237]===&lt;br /&gt;
&lt;br /&gt;
*They fixed some issues that were causing the system to crash during testing&lt;br /&gt;
*Altered the Grading History view&lt;br /&gt;
*Explained the reasoning for changes made to files using diagrams and justifications&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. Redundant files generated by scaffolding need to be removed, along with debugging code. Ex) Coffee created by scaffolding and console logging for debugging. &lt;br /&gt;
:2. Authentication could be done using existing utilities, no need to create their own. &lt;br /&gt;
:3. Some formatting changes could be done especially on how cells span in review report page. Ex) Formatting change for spans in between cells in review report.&lt;br /&gt;
:4. Code from previous implementation is a concern.&lt;br /&gt;
&lt;br /&gt;
=='''Proposed Solution'''==&lt;br /&gt;
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. These files cannot be added haphazardly since parts of the implementation is a cause to concern and caused the changes to not be implemented. It is also using an older version of expertiza so some parts may not be compatible.  &lt;br /&gt;
&lt;br /&gt;
We must first figure out exactly what changes and issues to address in their implementation by meeting with our mentor. We also need to reimplement the following files since none of their changes were implemented:&lt;br /&gt;
&lt;br /&gt;
*app/controllers/grading_histories_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     Calls the grading history view after validating Submission and Review Type.&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/grading_history.rb &lt;br /&gt;
'''&lt;br /&gt;
     Model for Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/review_grading_history.rb &lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Model containing specifics of Review Grading History. Inherits Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/submission_grading_history.rb &lt;br /&gt;
'''&lt;br /&gt;
     Model containing specifics of Submission Grading History. Inherits Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/views/grading_history/index_html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This is a view for grading audit trail, it will display all grading histories of a &lt;br /&gt;
     submission/review&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*spec/features/grade_histories_spec.rb&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Feature test to check if the grades appear in chronological order&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*spec/features/helpers/grade_histories_helper.rb&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Helper file to facilitate the above mentioned feature test.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
=='''Reimplementation'''==&lt;br /&gt;
Since the previous teams implementations were not integrated we have to reimplement their files which we will do by looking at their commits and pull request to see what files are necessary and what can be left out to address the issues of their implementation.&lt;br /&gt;
&lt;br /&gt;
'''[https://github.com/ErikLG360/expertiza/commit/e28a857695549cc91c477587707e48100d2bd333 Files being Reimplemented/Modified]'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Reimplemented'''&lt;br /&gt;
*app/controllers/grading_histories_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was added because it was from the previous teams implementation which concerned the MVC of the grading_history they created. It dealt with allowing only the correct people to view the grading history, checking the assignment type whether it be a submission or review, and indexing all the grading history for the assignment in chronological order.&lt;br /&gt;
'''&lt;br /&gt;
*app/models/grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was added to follow the previous teams MVC of the grading_history they created.&lt;br /&gt;
'''&lt;br /&gt;
*app/models/review_grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was reimplemented to follow the previous teams MVC of the ReviewGradingHistory&lt;br /&gt;
'''&lt;br /&gt;
*app/models/submission_grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was reimplemented to follow the previous teams MVC of the SubmisionGradingHistory&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/views/grading_histories/index.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This file contains the view for the grading history table&lt;br /&gt;
'''&lt;br /&gt;
*app/views/grading_histories/_form.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This file contains the view for when a grading history contains any error when it is about to be saved&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
'''Modified'''&lt;br /&gt;
*app/controllers/grades_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was modified based off the previous teams implementation because when the method save_grade_and_comment_for_submission was called it should also create a grading history so that the grading audit can be created and added to. This was mainly focusing on the grading history of submissions and not reviews.&lt;br /&gt;
'''&lt;br /&gt;
*app/controllers/review_mapping_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was modified based off the previous teams implementation because when the method save_grade_and_comment_for_reviewer was called it should also create a grading history so that the grading audit can be created and added to. This was mainly focusing on the grading history of reviews and not submissions.&lt;br /&gt;
'''&lt;br /&gt;
*app/views/assignments/list_submissions.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     It was modified to add the new hyperlink to display the grading history of a submission.&lt;br /&gt;
'''&lt;br /&gt;
*config/routes.rb&lt;br /&gt;
'''&lt;br /&gt;
     It was to add the new route for grading histories&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
=='''Solution - Implemented'''==&lt;br /&gt;
&lt;br /&gt;
'''E1934'''&lt;br /&gt;
&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. 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. &lt;br /&gt;
:2. In the view grading record page, remove the receiver column and add it to the title &lt;br /&gt;
:3. Restrict the column width on the grading record page &lt;br /&gt;
:4. Add comments on list_submissions.html.erb to indicate that the alignment was changed to fix code climate issues &lt;br /&gt;
:5. Ensure that white space changes are separate commits &lt;br /&gt;
:6. Revert changes made to list_review_mapping.html.erb &lt;br /&gt;
:7. Remove the review_report_html.erb file&lt;br /&gt;
:8. Design doc – mention why each of those files were changed&lt;br /&gt;
&lt;br /&gt;
'''Solutions''' &lt;br /&gt;
:1. Found the correct location put the Review Grading History link and also fix the previous teams creation of a grading history to work with the latest expertiza update. &lt;br /&gt;
Files changed include: &lt;br /&gt;
app/controllers/review_mapping_controller.rb&lt;br /&gt;
app/views/reports/_review_report.html.erb&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''E2237'''&lt;br /&gt;
&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. Redundant files generated by scaffolding need to be removed, along with debugging code. Ex) Coffee created by scaffolding and console logging for debugging. &lt;br /&gt;
:2. Authentication could be done using existing utilities, no need to create their own. &lt;br /&gt;
:3. Some formatting changes could be done especially on how cells span in review report page. Ex) Formatting change for spans in between cells in review report.&lt;br /&gt;
:4. Code from previous implementation is a concern.&lt;br /&gt;
&lt;br /&gt;
=='''Testing Plan'''==&lt;br /&gt;
The Testing that we will implement will build from E2237 since the previous tests crash and was something they solved. We also plan to implement test using the given Test Skeleton.&lt;br /&gt;
&lt;br /&gt;
=='''Future Scope'''==&lt;br /&gt;
This project may need further improvement since it does not seem like there should be an abundance of files added and perhaps using the MVC design is not necessarily needed.&lt;br /&gt;
&lt;br /&gt;
=='''Relevant Links'''==&lt;br /&gt;
* '''Github Repository:''' https://github.com/ErikLG360/expertiza&lt;br /&gt;
* '''Pull Request:''' https://github.com/expertiza/expertiza/pull/2696&lt;br /&gt;
* '''VCL Server:''' NOT Setup yet&lt;br /&gt;
&lt;br /&gt;
=='''Contributors to this project'''==&lt;br /&gt;
*Amulya Usem&lt;br /&gt;
*Erik Lopez-Godinez&lt;br /&gt;
*Gowtham Pollam&lt;br /&gt;
&lt;br /&gt;
*'''Mentor''': Srilekha Gudipati&lt;/div&gt;</summary>
		<author><name>Ealopezg</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2023_-_E2383._Grading_Audit_Trail&amp;diff=152246</id>
		<title>CSC/ECE 517 Fall 2023 - E2383. Grading Audit Trail</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2023_-_E2383._Grading_Audit_Trail&amp;diff=152246"/>
		<updated>2023-12-04T15:02:04Z</updated>

		<summary type="html">&lt;p&gt;Ealopezg: /* Reimplementation */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=='''Introduction'''==&lt;br /&gt;
&lt;br /&gt;
===Problem Statement===&lt;br /&gt;
After an instructor gave a grade to an assignment, there is no way to track who gave the grade.&lt;br /&gt;
A grading audit trail must be created and the following information needs to be stored: &lt;br /&gt;
:1. When a grade is assigned by an instructor, there needs to be an indication of who did it and when it was done. &lt;br /&gt;
:2. Comments previously provided by other instructors must also be preserved.&lt;br /&gt;
&lt;br /&gt;
This information needs to be stored every time an instructor edits a grade/comment and clicks the save button.&lt;br /&gt;
&lt;br /&gt;
There have been previous attempts from teams to implement such functionality and our implementation will be based on '''E1934''' and '''E2237'''. Each of these implementations have problems of their own that we need to address.&lt;br /&gt;
&lt;br /&gt;
== '''Overview of Major Changes By Previous Teams''' ==&lt;br /&gt;
===[https://wiki-expertiza.csc.ncsu.edu/index.php/E1934_-_Grading_Audit_Trail E1934]===&lt;br /&gt;
[https://youtu.be/yyxX_kRYxLc Their Screencast]&lt;br /&gt;
&lt;br /&gt;
*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)&lt;br /&gt;
*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.&lt;br /&gt;
*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.&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. 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. &lt;br /&gt;
:2. In the view grading record page, remove the receiver column and add it to the title &lt;br /&gt;
:3. Restrict the column width on the grading record page &lt;br /&gt;
:4. Add comments on list_submissions.html.erb to indicate that the alignment was changed to fix code climate issues &lt;br /&gt;
:5. Ensure that white space changes are separate commits &lt;br /&gt;
:6. Revert changes made to list_review_mapping.html.erb &lt;br /&gt;
:7. Remove the review_report_html.erb file&lt;br /&gt;
:8. Design doc – mention why each of those files were changed&lt;br /&gt;
&lt;br /&gt;
===[https://wiki-expertiza.csc.ncsu.edu/index.php/CSC/ECE_517_Spring_2022_-_E2237:_Grading_audit_trail E2237]===&lt;br /&gt;
&lt;br /&gt;
*They fixed some issues that were causing the system to crash during testing&lt;br /&gt;
*Altered the Grading History view&lt;br /&gt;
*Explained the reasoning for changes made to files using diagrams and justifications&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. Redundant files generated by scaffolding need to be removed, along with debugging code. Ex) Coffee created by scaffolding and console logging for debugging. &lt;br /&gt;
:2. Authentication could be done using existing utilities, no need to create their own. &lt;br /&gt;
:3. Some formatting changes could be done especially on how cells span in review report page. Ex) Formatting change for spans in between cells in review report.&lt;br /&gt;
:4. Code from previous implementation is a concern.&lt;br /&gt;
&lt;br /&gt;
=='''Proposed Solution'''==&lt;br /&gt;
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. These files cannot be added haphazardly since parts of the implementation is a cause to concern and caused the changes to not be implemented. It is also using an older version of expertiza so some parts may not be compatible.  &lt;br /&gt;
&lt;br /&gt;
We must first figure out exactly what changes and issues to address in their implementation by meeting with our mentor. We also need to reimplement the following files since none of their changes were implemented:&lt;br /&gt;
&lt;br /&gt;
*app/controllers/grading_histories_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     Calls the grading history view after validating Submission and Review Type.&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/grading_history.rb &lt;br /&gt;
'''&lt;br /&gt;
     Model for Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/review_grading_history.rb &lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Model containing specifics of Review Grading History. Inherits Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/submission_grading_history.rb &lt;br /&gt;
'''&lt;br /&gt;
     Model containing specifics of Submission Grading History. Inherits Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/views/grading_history/index_html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This is a view for grading audit trail, it will display all grading histories of a &lt;br /&gt;
     submission/review&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*spec/features/grade_histories_spec.rb&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Feature test to check if the grades appear in chronological order&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*spec/features/helpers/grade_histories_helper.rb&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Helper file to facilitate the above mentioned feature test.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
=='''Reimplementation'''==&lt;br /&gt;
Since the previous teams implementations were not integrated we have to reimplement their files which we will do by looking at their commits and pull request to see what files are necessary and what can be left out to address the issues of their implementation.&lt;br /&gt;
&lt;br /&gt;
[https://github.com/ErikLG360/expertiza/commit/e28a857695549cc91c477587707e48100d2bd333 Files being added/updated]&lt;br /&gt;
&lt;br /&gt;
'''Reimplemented'''&lt;br /&gt;
*app/controllers/grading_histories_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was added because it was from the previous teams implementation which concerned the MVC of the grading_history they created. It dealt with allowing only the correct people to view the grading history, checking the assignment type whether it be a submission or review, and indexing all the grading history for the assignment in chronological order.&lt;br /&gt;
'''&lt;br /&gt;
*app/models/grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was added to follow the previous teams MVC of the grading_history they created.&lt;br /&gt;
'''&lt;br /&gt;
*app/models/review_grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was reimplemented to follow the previous teams MVC of the ReviewGradingHistory&lt;br /&gt;
'''&lt;br /&gt;
*app/models/submission_grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was reimplemented to follow the previous teams MVC of the SubmisionGradingHistory&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/views/grading_histories/index.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This file contains the view for the grading history table&lt;br /&gt;
'''&lt;br /&gt;
*app/views/grading_histories/_form.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This file contains the view for when a grading history contains any error when it is about to be saved&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
'''Modified'''&lt;br /&gt;
*app/controllers/grades_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was modified based off the previous teams implementation because when the method save_grade_and_comment_for_submission was called it should also create a grading history so that the grading audit can be created and added to. This was mainly focusing on the grading history of submissions and not reviews.&lt;br /&gt;
'''&lt;br /&gt;
*app/controllers/review_mapping_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was modified based off the previous teams implementation because when the method save_grade_and_comment_for_reviewer was called it should also create a grading history so that the grading audit can be created and added to. This was mainly focusing on the grading history of reviews and not submissions.&lt;br /&gt;
'''&lt;br /&gt;
*app/views/assignments/list_submissions.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     It was modified to add the new hyperlink to display the grading history of a submission.&lt;br /&gt;
'''&lt;br /&gt;
*config/routes.rb&lt;br /&gt;
'''&lt;br /&gt;
     It was to add the new route for grading histories&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
=='''Solution - Implemented'''==&lt;br /&gt;
&lt;br /&gt;
'''E1934'''&lt;br /&gt;
&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. 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. &lt;br /&gt;
:2. In the view grading record page, remove the receiver column and add it to the title &lt;br /&gt;
:3. Restrict the column width on the grading record page &lt;br /&gt;
:4. Add comments on list_submissions.html.erb to indicate that the alignment was changed to fix code climate issues &lt;br /&gt;
:5. Ensure that white space changes are separate commits &lt;br /&gt;
:6. Revert changes made to list_review_mapping.html.erb &lt;br /&gt;
:7. Remove the review_report_html.erb file&lt;br /&gt;
:8. Design doc – mention why each of those files were changed&lt;br /&gt;
&lt;br /&gt;
'''Solutions''' &lt;br /&gt;
:1. Found the correct location put the Review Grading History link and also fix the previous teams creation of a grading history to work with the latest expertiza update. &lt;br /&gt;
Files changed include: &lt;br /&gt;
app/controllers/review_mapping_controller.rb&lt;br /&gt;
app/views/reports/_review_report.html.erb&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''E2237'''&lt;br /&gt;
&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. Redundant files generated by scaffolding need to be removed, along with debugging code. Ex) Coffee created by scaffolding and console logging for debugging. &lt;br /&gt;
:2. Authentication could be done using existing utilities, no need to create their own. &lt;br /&gt;
:3. Some formatting changes could be done especially on how cells span in review report page. Ex) Formatting change for spans in between cells in review report.&lt;br /&gt;
:4. Code from previous implementation is a concern.&lt;br /&gt;
&lt;br /&gt;
=='''Testing Plan'''==&lt;br /&gt;
The Testing that we will implement will build from E2237 since the previous tests crash and was something they solved. We also plan to implement test using the given Test Skeleton.&lt;br /&gt;
&lt;br /&gt;
=='''Future Scope'''==&lt;br /&gt;
This project may need further improvement since it does not seem like there should be an abundance of files added and perhaps using the MVC design is not necessarily needed.&lt;br /&gt;
&lt;br /&gt;
=='''Relevant Links'''==&lt;br /&gt;
* '''Github Repository:''' https://github.com/ErikLG360/expertiza&lt;br /&gt;
* '''Pull Request:''' https://github.com/expertiza/expertiza/pull/2696&lt;br /&gt;
* '''VCL Server:''' NOT Setup yet&lt;br /&gt;
&lt;br /&gt;
=='''Contributors to this project'''==&lt;br /&gt;
*Amulya Usem&lt;br /&gt;
*Erik Lopez-Godinez&lt;br /&gt;
*Gowtham Pollam&lt;br /&gt;
&lt;br /&gt;
*'''Mentor''': Srilekha Gudipati&lt;/div&gt;</summary>
		<author><name>Ealopezg</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2023_-_E2383._Grading_Audit_Trail&amp;diff=152237</id>
		<title>CSC/ECE 517 Fall 2023 - E2383. Grading Audit Trail</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2023_-_E2383._Grading_Audit_Trail&amp;diff=152237"/>
		<updated>2023-12-04T14:34:24Z</updated>

		<summary type="html">&lt;p&gt;Ealopezg: /* Reimplementation */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=='''Introduction'''==&lt;br /&gt;
&lt;br /&gt;
===Problem Statement===&lt;br /&gt;
After an instructor gave a grade to an assignment, there is no way to track who gave the grade.&lt;br /&gt;
A grading audit trail must be created and the following information needs to be stored: &lt;br /&gt;
:1. When a grade is assigned by an instructor, there needs to be an indication of who did it and when it was done. &lt;br /&gt;
:2. Comments previously provided by other instructors must also be preserved.&lt;br /&gt;
&lt;br /&gt;
This information needs to be stored every time an instructor edits a grade/comment and clicks the save button.&lt;br /&gt;
&lt;br /&gt;
There have been previous attempts from teams to implement such functionality and our implementation will be based on '''E1934''' and '''E2237'''. Each of these implementations have problems of their own that we need to address.&lt;br /&gt;
&lt;br /&gt;
== '''Overview of Major Changes By Previous Teams''' ==&lt;br /&gt;
===[https://wiki-expertiza.csc.ncsu.edu/index.php/E1934_-_Grading_Audit_Trail E1934]===&lt;br /&gt;
[https://youtu.be/yyxX_kRYxLc Their Screencast]&lt;br /&gt;
&lt;br /&gt;
*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)&lt;br /&gt;
*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.&lt;br /&gt;
*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.&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. 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. &lt;br /&gt;
:2. In the view grading record page, remove the receiver column and add it to the title &lt;br /&gt;
:3. Restrict the column width on the grading record page &lt;br /&gt;
:4. Add comments on list_submissions.html.erb to indicate that the alignment was changed to fix code climate issues &lt;br /&gt;
:5. Ensure that white space changes are separate commits &lt;br /&gt;
:6. Revert changes made to list_review_mapping.html.erb &lt;br /&gt;
:7. Remove the review_report_html.erb file&lt;br /&gt;
:8. Design doc – mention why each of those files were changed&lt;br /&gt;
&lt;br /&gt;
===[https://wiki-expertiza.csc.ncsu.edu/index.php/CSC/ECE_517_Spring_2022_-_E2237:_Grading_audit_trail E2237]===&lt;br /&gt;
&lt;br /&gt;
*They fixed some issues that were causing the system to crash during testing&lt;br /&gt;
*Altered the Grading History view&lt;br /&gt;
*Explained the reasoning for changes made to files using diagrams and justifications&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. Redundant files generated by scaffolding need to be removed, along with debugging code. Ex) Coffee created by scaffolding and console logging for debugging. &lt;br /&gt;
:2. Authentication could be done using existing utilities, no need to create their own. &lt;br /&gt;
:3. Some formatting changes could be done especially on how cells span in review report page. Ex) Formatting change for spans in between cells in review report.&lt;br /&gt;
:4. Code from previous implementation is a concern.&lt;br /&gt;
&lt;br /&gt;
=='''Proposed Solution'''==&lt;br /&gt;
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. These files cannot be added haphazardly since parts of the implementation is a cause to concern and caused the changes to not be implemented. It is also using an older version of expertiza so some parts may not be compatible.  &lt;br /&gt;
&lt;br /&gt;
We must first figure out exactly what changes and issues to address in their implementation by meeting with our mentor. We also need to reimplement the following files since none of their changes were implemented:&lt;br /&gt;
&lt;br /&gt;
*app/controllers/grading_histories_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     Calls the grading history view after validating Submission and Review Type.&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/grading_history.rb &lt;br /&gt;
'''&lt;br /&gt;
     Model for Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/review_grading_history.rb &lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Model containing specifics of Review Grading History. Inherits Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/submission_grading_history.rb &lt;br /&gt;
'''&lt;br /&gt;
     Model containing specifics of Submission Grading History. Inherits Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/views/grading_history/index_html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This is a view for grading audit trail, it will display all grading histories of a &lt;br /&gt;
     submission/review&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*spec/features/grade_histories_spec.rb&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Feature test to check if the grades appear in chronological order&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*spec/features/helpers/grade_histories_helper.rb&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Helper file to facilitate the above mentioned feature test.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
=='''Reimplementation'''==&lt;br /&gt;
Since the previous teams implementations were not integrated we have to reimplement their files which we will do by looking at their commits and pull request to see what files are necessary and what can be left out to address the issues of their implementation.&lt;br /&gt;
&lt;br /&gt;
'''Reimplemented'''&lt;br /&gt;
*app/controllers/grading_histories_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was added because it was from the previous teams implementation which concerned the MVC of the grading_history they created. It dealt with allowing only the correct people to view the grading history, checking the assignment type whether it be a submission or review, and indexing all the grading history for the assignment in chronological order.&lt;br /&gt;
'''&lt;br /&gt;
*app/models/grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was added to follow the previous teams MVC of the grading_history they created.&lt;br /&gt;
'''&lt;br /&gt;
*app/models/review_grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was reimplemented to follow the previous teams MVC of the ReviewGradingHistory&lt;br /&gt;
'''&lt;br /&gt;
*app/models/submission_grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was reimplemented to follow the previous teams MVC of the SubmisionGradingHistory&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/views/grading_histories/index.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This file contains the view for the grading history table&lt;br /&gt;
'''&lt;br /&gt;
*app/views/grading_histories/_form.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This file contains the view for when a grading history contains any error when it is about to be saved&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
'''Modified''&lt;br /&gt;
*app/controllers/grades_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was modified based off the previous teams implementation because when the method save_grade_and_comment_for_submission was called it should also create a grading history so that the grading audit can be created and added to. This was mainly focusing on the grading history of submissions and not reviews.&lt;br /&gt;
'''&lt;br /&gt;
*app/controllers/review_mapping_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was modified based off the previous teams implementation because when the method save_grade_and_comment_for_reviewer was called it should also create a grading history so that the grading audit can be created and added to. This was mainly focusing on the grading history of reviews and not submissions.&lt;br /&gt;
'''&lt;br /&gt;
*app/views/assignments/list_submissions.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     It was modified to add the new hyperlink to display the grading history of a submission.&lt;br /&gt;
'''&lt;br /&gt;
*config/routes.rb&lt;br /&gt;
'''&lt;br /&gt;
     It was to add the new route for grading histories&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
=='''Solution - Implemented'''==&lt;br /&gt;
&lt;br /&gt;
'''E1934'''&lt;br /&gt;
&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. 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. &lt;br /&gt;
:2. In the view grading record page, remove the receiver column and add it to the title &lt;br /&gt;
:3. Restrict the column width on the grading record page &lt;br /&gt;
:4. Add comments on list_submissions.html.erb to indicate that the alignment was changed to fix code climate issues &lt;br /&gt;
:5. Ensure that white space changes are separate commits &lt;br /&gt;
:6. Revert changes made to list_review_mapping.html.erb &lt;br /&gt;
:7. Remove the review_report_html.erb file&lt;br /&gt;
:8. Design doc – mention why each of those files were changed&lt;br /&gt;
&lt;br /&gt;
'''Solutions''' &lt;br /&gt;
:1. Found the correct location put the Review Grading History link and also fix the previous teams creation of a grading history to work with the latest expertiza update. &lt;br /&gt;
Files changed include: &lt;br /&gt;
app/controllers/review_mapping_controller.rb&lt;br /&gt;
app/views/reports/_review_report.html.erb&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''E2237'''&lt;br /&gt;
&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. Redundant files generated by scaffolding need to be removed, along with debugging code. Ex) Coffee created by scaffolding and console logging for debugging. &lt;br /&gt;
:2. Authentication could be done using existing utilities, no need to create their own. &lt;br /&gt;
:3. Some formatting changes could be done especially on how cells span in review report page. Ex) Formatting change for spans in between cells in review report.&lt;br /&gt;
:4. Code from previous implementation is a concern.&lt;br /&gt;
&lt;br /&gt;
=='''Testing Plan'''==&lt;br /&gt;
The Testing that we will implement will build from E2237 since the previous tests crash and was something they solved. We also plan to implement test using the given Test Skeleton.&lt;br /&gt;
&lt;br /&gt;
=='''Future Scope'''==&lt;br /&gt;
This project may need further improvement since it does not seem like there should be an abundance of files added and perhaps using the MVC design is not necessarily needed.&lt;br /&gt;
&lt;br /&gt;
=='''Relevant Links'''==&lt;br /&gt;
* '''Github Repository:''' https://github.com/ErikLG360/expertiza&lt;br /&gt;
* '''Pull Request:''' https://github.com/expertiza/expertiza/pull/2696&lt;br /&gt;
* '''VCL Server:''' NOT Setup yet&lt;br /&gt;
&lt;br /&gt;
=='''Contributors to this project'''==&lt;br /&gt;
*Amulya Usem&lt;br /&gt;
*Erik Lopez-Godinez&lt;br /&gt;
*Gowtham Pollam&lt;br /&gt;
&lt;br /&gt;
*'''Mentor''': Srilekha Gudipati&lt;/div&gt;</summary>
		<author><name>Ealopezg</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2023_-_E2383._Grading_Audit_Trail&amp;diff=152236</id>
		<title>CSC/ECE 517 Fall 2023 - E2383. Grading Audit Trail</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2023_-_E2383._Grading_Audit_Trail&amp;diff=152236"/>
		<updated>2023-12-04T14:31:41Z</updated>

		<summary type="html">&lt;p&gt;Ealopezg: /* Reimplementation */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=='''Introduction'''==&lt;br /&gt;
&lt;br /&gt;
===Problem Statement===&lt;br /&gt;
After an instructor gave a grade to an assignment, there is no way to track who gave the grade.&lt;br /&gt;
A grading audit trail must be created and the following information needs to be stored: &lt;br /&gt;
:1. When a grade is assigned by an instructor, there needs to be an indication of who did it and when it was done. &lt;br /&gt;
:2. Comments previously provided by other instructors must also be preserved.&lt;br /&gt;
&lt;br /&gt;
This information needs to be stored every time an instructor edits a grade/comment and clicks the save button.&lt;br /&gt;
&lt;br /&gt;
There have been previous attempts from teams to implement such functionality and our implementation will be based on '''E1934''' and '''E2237'''. Each of these implementations have problems of their own that we need to address.&lt;br /&gt;
&lt;br /&gt;
== '''Overview of Major Changes By Previous Teams''' ==&lt;br /&gt;
===[https://wiki-expertiza.csc.ncsu.edu/index.php/E1934_-_Grading_Audit_Trail E1934]===&lt;br /&gt;
[https://youtu.be/yyxX_kRYxLc Their Screencast]&lt;br /&gt;
&lt;br /&gt;
*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)&lt;br /&gt;
*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.&lt;br /&gt;
*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.&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. 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. &lt;br /&gt;
:2. In the view grading record page, remove the receiver column and add it to the title &lt;br /&gt;
:3. Restrict the column width on the grading record page &lt;br /&gt;
:4. Add comments on list_submissions.html.erb to indicate that the alignment was changed to fix code climate issues &lt;br /&gt;
:5. Ensure that white space changes are separate commits &lt;br /&gt;
:6. Revert changes made to list_review_mapping.html.erb &lt;br /&gt;
:7. Remove the review_report_html.erb file&lt;br /&gt;
:8. Design doc – mention why each of those files were changed&lt;br /&gt;
&lt;br /&gt;
===[https://wiki-expertiza.csc.ncsu.edu/index.php/CSC/ECE_517_Spring_2022_-_E2237:_Grading_audit_trail E2237]===&lt;br /&gt;
&lt;br /&gt;
*They fixed some issues that were causing the system to crash during testing&lt;br /&gt;
*Altered the Grading History view&lt;br /&gt;
*Explained the reasoning for changes made to files using diagrams and justifications&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. Redundant files generated by scaffolding need to be removed, along with debugging code. Ex) Coffee created by scaffolding and console logging for debugging. &lt;br /&gt;
:2. Authentication could be done using existing utilities, no need to create their own. &lt;br /&gt;
:3. Some formatting changes could be done especially on how cells span in review report page. Ex) Formatting change for spans in between cells in review report.&lt;br /&gt;
:4. Code from previous implementation is a concern.&lt;br /&gt;
&lt;br /&gt;
=='''Proposed Solution'''==&lt;br /&gt;
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. These files cannot be added haphazardly since parts of the implementation is a cause to concern and caused the changes to not be implemented. It is also using an older version of expertiza so some parts may not be compatible.  &lt;br /&gt;
&lt;br /&gt;
We must first figure out exactly what changes and issues to address in their implementation by meeting with our mentor. We also need to reimplement the following files since none of their changes were implemented:&lt;br /&gt;
&lt;br /&gt;
*app/controllers/grading_histories_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     Calls the grading history view after validating Submission and Review Type.&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/grading_history.rb &lt;br /&gt;
'''&lt;br /&gt;
     Model for Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/review_grading_history.rb &lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Model containing specifics of Review Grading History. Inherits Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/submission_grading_history.rb &lt;br /&gt;
'''&lt;br /&gt;
     Model containing specifics of Submission Grading History. Inherits Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/views/grading_history/index_html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This is a view for grading audit trail, it will display all grading histories of a &lt;br /&gt;
     submission/review&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*spec/features/grade_histories_spec.rb&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Feature test to check if the grades appear in chronological order&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*spec/features/helpers/grade_histories_helper.rb&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Helper file to facilitate the above mentioned feature test.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
=='''Reimplementation'''==&lt;br /&gt;
Since the previous teams implementations were not integrated we have to reimplement the main idea of theirs again which we will do by looking at their commits and pull request to see what files are necessary and what can be left out to address the issues of their implementation.&lt;br /&gt;
&lt;br /&gt;
'''Reimplemented'''&lt;br /&gt;
*app/controllers/grading_histories_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was added because it was from the previous teams implementation which concerned the MVC of the grading_history they created. It dealt with allowing only the correct people to view the grading history, checking the assignment type whether it be a submission or review, and indexing all the grading history for the assignment in chronological order.&lt;br /&gt;
'''&lt;br /&gt;
*app/models/grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was added to follow the previous teams MVC of the grading_history they created.&lt;br /&gt;
'''&lt;br /&gt;
*app/models/review_grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was reimplemented to follow the previous teams MVC of the ReviewGradingHistory&lt;br /&gt;
'''&lt;br /&gt;
*app/models/submission_grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was reimplemented to follow the previous teams MVC of the SubmisionGradingHistory&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/views/grading_histories/index.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This file contains the view for the grading history table&lt;br /&gt;
'''&lt;br /&gt;
*app/views/grading_histories/_form.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This file contains the view for when a grading history contains any error when it is about to be saved&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
'''Modified''&lt;br /&gt;
*app/controllers/grades_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was modified based off the previous teams implementation because when the method save_grade_and_comment_for_submission was called it should also create a grading history so that the grading audit can be created and added to. This was mainly focusing on the grading history of submissions and not reviews.&lt;br /&gt;
'''&lt;br /&gt;
*app/controllers/review_mapping_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was modified based off the previous teams implementation because when the method save_grade_and_comment_for_reviewer was called it should also create a grading history so that the grading audit can be created and added to. This was mainly focusing on the grading history of reviews and not submissions.&lt;br /&gt;
'''&lt;br /&gt;
*app/views/assignments/list_submissions.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     It was modified to add the new hyperlink to display the grading history of a submission.&lt;br /&gt;
'''&lt;br /&gt;
*config/routes.rb&lt;br /&gt;
'''&lt;br /&gt;
     It was to add the new route for grading histories&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
=='''Solution - Implemented'''==&lt;br /&gt;
&lt;br /&gt;
'''E1934'''&lt;br /&gt;
&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. 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. &lt;br /&gt;
:2. In the view grading record page, remove the receiver column and add it to the title &lt;br /&gt;
:3. Restrict the column width on the grading record page &lt;br /&gt;
:4. Add comments on list_submissions.html.erb to indicate that the alignment was changed to fix code climate issues &lt;br /&gt;
:5. Ensure that white space changes are separate commits &lt;br /&gt;
:6. Revert changes made to list_review_mapping.html.erb &lt;br /&gt;
:7. Remove the review_report_html.erb file&lt;br /&gt;
:8. Design doc – mention why each of those files were changed&lt;br /&gt;
&lt;br /&gt;
'''Solutions''' &lt;br /&gt;
:1. Found the correct location put the Review Grading History link and also fix the previous teams creation of a grading history to work with the latest expertiza update. &lt;br /&gt;
Files changed include: &lt;br /&gt;
app/controllers/review_mapping_controller.rb&lt;br /&gt;
app/views/reports/_review_report.html.erb&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''E2237'''&lt;br /&gt;
&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. Redundant files generated by scaffolding need to be removed, along with debugging code. Ex) Coffee created by scaffolding and console logging for debugging. &lt;br /&gt;
:2. Authentication could be done using existing utilities, no need to create their own. &lt;br /&gt;
:3. Some formatting changes could be done especially on how cells span in review report page. Ex) Formatting change for spans in between cells in review report.&lt;br /&gt;
:4. Code from previous implementation is a concern.&lt;br /&gt;
&lt;br /&gt;
=='''Testing Plan'''==&lt;br /&gt;
The Testing that we will implement will build from E2237 since the previous tests crash and was something they solved. We also plan to implement test using the given Test Skeleton.&lt;br /&gt;
&lt;br /&gt;
=='''Future Scope'''==&lt;br /&gt;
This project may need further improvement since it does not seem like there should be an abundance of files added and perhaps using the MVC design is not necessarily needed.&lt;br /&gt;
&lt;br /&gt;
=='''Relevant Links'''==&lt;br /&gt;
* '''Github Repository:''' https://github.com/ErikLG360/expertiza&lt;br /&gt;
* '''Pull Request:''' https://github.com/expertiza/expertiza/pull/2696&lt;br /&gt;
* '''VCL Server:''' NOT Setup yet&lt;br /&gt;
&lt;br /&gt;
=='''Contributors to this project'''==&lt;br /&gt;
*Amulya Usem&lt;br /&gt;
*Erik Lopez-Godinez&lt;br /&gt;
*Gowtham Pollam&lt;br /&gt;
&lt;br /&gt;
*'''Mentor''': Srilekha Gudipati&lt;/div&gt;</summary>
		<author><name>Ealopezg</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2023_-_E2383._Grading_Audit_Trail&amp;diff=152014</id>
		<title>CSC/ECE 517 Fall 2023 - E2383. Grading Audit Trail</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2023_-_E2383._Grading_Audit_Trail&amp;diff=152014"/>
		<updated>2023-12-03T07:50:56Z</updated>

		<summary type="html">&lt;p&gt;Ealopezg: /* Solution - Implemented */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=='''Introduction'''==&lt;br /&gt;
&lt;br /&gt;
===Problem Statement===&lt;br /&gt;
After an instructor gave a grade to an assignment, there is no way to track who gave the grade.&lt;br /&gt;
A grading audit trail must be created and the following information needs to be stored: &lt;br /&gt;
:1. When a grade is assigned by an instructor, there needs to be an indication of who did it and when it was done. &lt;br /&gt;
:2. Comments previously provided by other instructors must also be preserved.&lt;br /&gt;
&lt;br /&gt;
This information needs to be stored every time an instructor edits a grade/comment and clicks the save button.&lt;br /&gt;
&lt;br /&gt;
There have been previous attempts from teams to implement such functionality and our implementation will be based on '''E1934''' and '''E2237'''. Each of these implementations have problems of their own that we need to address.&lt;br /&gt;
&lt;br /&gt;
== '''Overview of Major Changes By Previous Teams''' ==&lt;br /&gt;
===[https://wiki-expertiza.csc.ncsu.edu/index.php/E1934_-_Grading_Audit_Trail E1934]===&lt;br /&gt;
[https://youtu.be/yyxX_kRYxLc Their Screencast]&lt;br /&gt;
&lt;br /&gt;
*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)&lt;br /&gt;
*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.&lt;br /&gt;
*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.&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. 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. &lt;br /&gt;
:2. In the view grading record page, remove the receiver column and add it to the title &lt;br /&gt;
:3. Restrict the column width on the grading record page &lt;br /&gt;
:4. Add comments on list_submissions.html.erb to indicate that the alignment was changed to fix code climate issues &lt;br /&gt;
:5. Ensure that white space changes are separate commits &lt;br /&gt;
:6. Revert changes made to list_review_mapping.html.erb &lt;br /&gt;
:7. Remove the review_report_html.erb file&lt;br /&gt;
:8. Design doc – mention why each of those files were changed&lt;br /&gt;
&lt;br /&gt;
===[https://wiki-expertiza.csc.ncsu.edu/index.php/CSC/ECE_517_Spring_2022_-_E2237:_Grading_audit_trail E2237]===&lt;br /&gt;
&lt;br /&gt;
*They fixed some issues that were causing the system to crash during testing&lt;br /&gt;
*Altered the Grading History view&lt;br /&gt;
*Explained the reasoning for changes made to files using diagrams and justifications&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. Redundant files generated by scaffolding need to be removed, along with debugging code. Ex) Coffee created by scaffolding and console logging for debugging. &lt;br /&gt;
:2. Authentication could be done using existing utilities, no need to create their own. &lt;br /&gt;
:3. Some formatting changes could be done especially on how cells span in review report page. Ex) Formatting change for spans in between cells in review report.&lt;br /&gt;
:4. Code from previous implementation is a concern.&lt;br /&gt;
&lt;br /&gt;
=='''Proposed Solution'''==&lt;br /&gt;
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. These files cannot be added haphazardly since parts of the implementation is a cause to concern and caused the changes to not be implemented. It is also using an older version of expertiza so some parts may not be compatible.  &lt;br /&gt;
&lt;br /&gt;
We must first figure out exactly what changes and issues to address in their implementation by meeting with our mentor. We also need to reimplement the following files since none of their changes were implemented:&lt;br /&gt;
&lt;br /&gt;
*app/controllers/grading_histories_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     Calls the grading history view after validating Submission and Review Type.&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/grading_history.rb &lt;br /&gt;
'''&lt;br /&gt;
     Model for Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/review_grading_history.rb &lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Model containing specifics of Review Grading History. Inherits Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/submission_grading_history.rb &lt;br /&gt;
'''&lt;br /&gt;
     Model containing specifics of Submission Grading History. Inherits Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/views/grading_history/index_html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This is a view for grading audit trail, it will display all grading histories of a &lt;br /&gt;
     submission/review&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*spec/features/grade_histories_spec.rb&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Feature test to check if the grades appear in chronological order&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*spec/features/helpers/grade_histories_helper.rb&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Helper file to facilitate the above mentioned feature test.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
=='''Reimplementation'''==&lt;br /&gt;
Since the previous teams implementations were not integrated we have to reimplement the main idea of theirs again which we will do by looking at their commits and pull request to see what files are necessary and what can be left out to address the issues of their implementation.&lt;br /&gt;
&lt;br /&gt;
'''Reimplemented'''&lt;br /&gt;
*app/controllers/grading_histories_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was added because it was from the previous teams implementation which concerned the MVC of the grading_history they created. It dealt with allowing only the correct people to view the grading history, checking the assignment type whether it be a submission or review, and indexing all the grading history for the assignment in chronological order.&lt;br /&gt;
'''&lt;br /&gt;
*app/models/grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was added to follow the previous teams MVC of the grading_history they created.&lt;br /&gt;
'''&lt;br /&gt;
*app/models/review_grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was reimplemented to follow the previous teams MVC of the ReviewGradingHistory&lt;br /&gt;
'''&lt;br /&gt;
*app/models/submission_grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was reimplemented to follow the previous teams MVC of the SubmisionGradingHistory&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
'''Modified'''&lt;br /&gt;
*app/controllers/grades_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was modified based off the previous teams implementation because when the method save_grade_and_comment_for_submission was called it should also create a grading history so that the grading audit can be created and added to. This was mainly focusing on the grading history of submissions and not reviews.&lt;br /&gt;
'''&lt;br /&gt;
*app/controllers/review_mapping_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was modified based off the previous teams implementation because when the method save_grade_and_comment_for_reviewer was called it should also create a grading history so that the grading audit can be created and added to. This was mainly focusing on the grading history of reviews and not submissions.&lt;br /&gt;
'''&lt;br /&gt;
*app/views/assignments/list_submissions.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     It was modified to add the new hyperlink to display the grading history of a submission.&lt;br /&gt;
'''&lt;br /&gt;
*config/routes.rb&lt;br /&gt;
'''&lt;br /&gt;
     It was to add the new route for grading histories&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
=='''Solution - Implemented'''==&lt;br /&gt;
&lt;br /&gt;
'''E1934'''&lt;br /&gt;
&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. 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. &lt;br /&gt;
:2. In the view grading record page, remove the receiver column and add it to the title &lt;br /&gt;
:3. Restrict the column width on the grading record page &lt;br /&gt;
:4. Add comments on list_submissions.html.erb to indicate that the alignment was changed to fix code climate issues &lt;br /&gt;
:5. Ensure that white space changes are separate commits &lt;br /&gt;
:6. Revert changes made to list_review_mapping.html.erb &lt;br /&gt;
:7. Remove the review_report_html.erb file&lt;br /&gt;
:8. Design doc – mention why each of those files were changed&lt;br /&gt;
&lt;br /&gt;
'''Solutions''' &lt;br /&gt;
:1. Found the correct location put the Review Grading History link and also fix the previous teams creation of a grading history to work with the latest expertiza update. &lt;br /&gt;
Files changed include: &lt;br /&gt;
app/controllers/review_mapping_controller.rb&lt;br /&gt;
app/views/reports/_review_report.html.erb&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''E2237'''&lt;br /&gt;
&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. Redundant files generated by scaffolding need to be removed, along with debugging code. Ex) Coffee created by scaffolding and console logging for debugging. &lt;br /&gt;
:2. Authentication could be done using existing utilities, no need to create their own. &lt;br /&gt;
:3. Some formatting changes could be done especially on how cells span in review report page. Ex) Formatting change for spans in between cells in review report.&lt;br /&gt;
:4. Code from previous implementation is a concern.&lt;br /&gt;
&lt;br /&gt;
=='''Testing Plan'''==&lt;br /&gt;
The Testing that we will implement will build from E2237 since the previous tests crash and was something they solved. We also plan to implement test using the given Test Skeleton.&lt;br /&gt;
&lt;br /&gt;
=='''Future Scope'''==&lt;br /&gt;
This project may need further improvement since it does not seem like there should be an abundance of files added and perhaps using the MVC design is not necessarily needed.&lt;br /&gt;
&lt;br /&gt;
=='''Relevant Links'''==&lt;br /&gt;
* '''Github Repository:''' https://github.com/ErikLG360/expertiza&lt;br /&gt;
* '''Pull Request:''' https://github.com/expertiza/expertiza/pull/2696&lt;br /&gt;
* '''VCL Server:''' NOT Setup yet&lt;br /&gt;
&lt;br /&gt;
=='''Contributors to this project'''==&lt;br /&gt;
*Amulya Usem&lt;br /&gt;
*Erik Lopez-Godinez&lt;br /&gt;
*Gowtham Pollam&lt;br /&gt;
&lt;br /&gt;
*'''Mentor''': Srilekha Gudipati&lt;/div&gt;</summary>
		<author><name>Ealopezg</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2023_-_E2383._Grading_Audit_Trail&amp;diff=152013</id>
		<title>CSC/ECE 517 Fall 2023 - E2383. Grading Audit Trail</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2023_-_E2383._Grading_Audit_Trail&amp;diff=152013"/>
		<updated>2023-12-03T07:50:38Z</updated>

		<summary type="html">&lt;p&gt;Ealopezg: /* Solution - Implemented */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=='''Introduction'''==&lt;br /&gt;
&lt;br /&gt;
===Problem Statement===&lt;br /&gt;
After an instructor gave a grade to an assignment, there is no way to track who gave the grade.&lt;br /&gt;
A grading audit trail must be created and the following information needs to be stored: &lt;br /&gt;
:1. When a grade is assigned by an instructor, there needs to be an indication of who did it and when it was done. &lt;br /&gt;
:2. Comments previously provided by other instructors must also be preserved.&lt;br /&gt;
&lt;br /&gt;
This information needs to be stored every time an instructor edits a grade/comment and clicks the save button.&lt;br /&gt;
&lt;br /&gt;
There have been previous attempts from teams to implement such functionality and our implementation will be based on '''E1934''' and '''E2237'''. Each of these implementations have problems of their own that we need to address.&lt;br /&gt;
&lt;br /&gt;
== '''Overview of Major Changes By Previous Teams''' ==&lt;br /&gt;
===[https://wiki-expertiza.csc.ncsu.edu/index.php/E1934_-_Grading_Audit_Trail E1934]===&lt;br /&gt;
[https://youtu.be/yyxX_kRYxLc Their Screencast]&lt;br /&gt;
&lt;br /&gt;
*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)&lt;br /&gt;
*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.&lt;br /&gt;
*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.&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. 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. &lt;br /&gt;
:2. In the view grading record page, remove the receiver column and add it to the title &lt;br /&gt;
:3. Restrict the column width on the grading record page &lt;br /&gt;
:4. Add comments on list_submissions.html.erb to indicate that the alignment was changed to fix code climate issues &lt;br /&gt;
:5. Ensure that white space changes are separate commits &lt;br /&gt;
:6. Revert changes made to list_review_mapping.html.erb &lt;br /&gt;
:7. Remove the review_report_html.erb file&lt;br /&gt;
:8. Design doc – mention why each of those files were changed&lt;br /&gt;
&lt;br /&gt;
===[https://wiki-expertiza.csc.ncsu.edu/index.php/CSC/ECE_517_Spring_2022_-_E2237:_Grading_audit_trail E2237]===&lt;br /&gt;
&lt;br /&gt;
*They fixed some issues that were causing the system to crash during testing&lt;br /&gt;
*Altered the Grading History view&lt;br /&gt;
*Explained the reasoning for changes made to files using diagrams and justifications&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. Redundant files generated by scaffolding need to be removed, along with debugging code. Ex) Coffee created by scaffolding and console logging for debugging. &lt;br /&gt;
:2. Authentication could be done using existing utilities, no need to create their own. &lt;br /&gt;
:3. Some formatting changes could be done especially on how cells span in review report page. Ex) Formatting change for spans in between cells in review report.&lt;br /&gt;
:4. Code from previous implementation is a concern.&lt;br /&gt;
&lt;br /&gt;
=='''Proposed Solution'''==&lt;br /&gt;
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. These files cannot be added haphazardly since parts of the implementation is a cause to concern and caused the changes to not be implemented. It is also using an older version of expertiza so some parts may not be compatible.  &lt;br /&gt;
&lt;br /&gt;
We must first figure out exactly what changes and issues to address in their implementation by meeting with our mentor. We also need to reimplement the following files since none of their changes were implemented:&lt;br /&gt;
&lt;br /&gt;
*app/controllers/grading_histories_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     Calls the grading history view after validating Submission and Review Type.&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/grading_history.rb &lt;br /&gt;
'''&lt;br /&gt;
     Model for Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/review_grading_history.rb &lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Model containing specifics of Review Grading History. Inherits Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/submission_grading_history.rb &lt;br /&gt;
'''&lt;br /&gt;
     Model containing specifics of Submission Grading History. Inherits Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/views/grading_history/index_html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This is a view for grading audit trail, it will display all grading histories of a &lt;br /&gt;
     submission/review&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*spec/features/grade_histories_spec.rb&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Feature test to check if the grades appear in chronological order&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*spec/features/helpers/grade_histories_helper.rb&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Helper file to facilitate the above mentioned feature test.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
=='''Reimplementation'''==&lt;br /&gt;
Since the previous teams implementations were not integrated we have to reimplement the main idea of theirs again which we will do by looking at their commits and pull request to see what files are necessary and what can be left out to address the issues of their implementation.&lt;br /&gt;
&lt;br /&gt;
'''Reimplemented'''&lt;br /&gt;
*app/controllers/grading_histories_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was added because it was from the previous teams implementation which concerned the MVC of the grading_history they created. It dealt with allowing only the correct people to view the grading history, checking the assignment type whether it be a submission or review, and indexing all the grading history for the assignment in chronological order.&lt;br /&gt;
'''&lt;br /&gt;
*app/models/grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was added to follow the previous teams MVC of the grading_history they created.&lt;br /&gt;
'''&lt;br /&gt;
*app/models/review_grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was reimplemented to follow the previous teams MVC of the ReviewGradingHistory&lt;br /&gt;
'''&lt;br /&gt;
*app/models/submission_grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was reimplemented to follow the previous teams MVC of the SubmisionGradingHistory&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
'''Modified'''&lt;br /&gt;
*app/controllers/grades_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was modified based off the previous teams implementation because when the method save_grade_and_comment_for_submission was called it should also create a grading history so that the grading audit can be created and added to. This was mainly focusing on the grading history of submissions and not reviews.&lt;br /&gt;
'''&lt;br /&gt;
*app/controllers/review_mapping_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was modified based off the previous teams implementation because when the method save_grade_and_comment_for_reviewer was called it should also create a grading history so that the grading audit can be created and added to. This was mainly focusing on the grading history of reviews and not submissions.&lt;br /&gt;
'''&lt;br /&gt;
*app/views/assignments/list_submissions.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     It was modified to add the new hyperlink to display the grading history of a submission.&lt;br /&gt;
'''&lt;br /&gt;
*config/routes.rb&lt;br /&gt;
'''&lt;br /&gt;
     It was to add the new route for grading histories&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
=='''Solution - Implemented'''==&lt;br /&gt;
&lt;br /&gt;
'''E1934'''&lt;br /&gt;
&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. 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. &lt;br /&gt;
:2. In the view grading record page, remove the receiver column and add it to the title &lt;br /&gt;
:3. Restrict the column width on the grading record page &lt;br /&gt;
:4. Add comments on list_submissions.html.erb to indicate that the alignment was changed to fix code climate issues &lt;br /&gt;
:5. Ensure that white space changes are separate commits &lt;br /&gt;
:6. Revert changes made to list_review_mapping.html.erb &lt;br /&gt;
:7. Remove the review_report_html.erb file&lt;br /&gt;
:8. Design doc – mention why each of those files were changed&lt;br /&gt;
&lt;br /&gt;
'''Solutions''' &lt;br /&gt;
:1 Found the correct location put the Review Grading History link and also fix the previous teams creation of a grading history to work with the latest expertiza update. &lt;br /&gt;
Files changed include: &lt;br /&gt;
app/controllers/review_mapping_controller.rb&lt;br /&gt;
app/views/reports/_review_report.html.erb&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''E2237'''&lt;br /&gt;
&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. Redundant files generated by scaffolding need to be removed, along with debugging code. Ex) Coffee created by scaffolding and console logging for debugging. &lt;br /&gt;
:2. Authentication could be done using existing utilities, no need to create their own. &lt;br /&gt;
:3. Some formatting changes could be done especially on how cells span in review report page. Ex) Formatting change for spans in between cells in review report.&lt;br /&gt;
:4. Code from previous implementation is a concern.&lt;br /&gt;
&lt;br /&gt;
=='''Testing Plan'''==&lt;br /&gt;
The Testing that we will implement will build from E2237 since the previous tests crash and was something they solved. We also plan to implement test using the given Test Skeleton.&lt;br /&gt;
&lt;br /&gt;
=='''Future Scope'''==&lt;br /&gt;
This project may need further improvement since it does not seem like there should be an abundance of files added and perhaps using the MVC design is not necessarily needed.&lt;br /&gt;
&lt;br /&gt;
=='''Relevant Links'''==&lt;br /&gt;
* '''Github Repository:''' https://github.com/ErikLG360/expertiza&lt;br /&gt;
* '''Pull Request:''' https://github.com/expertiza/expertiza/pull/2696&lt;br /&gt;
* '''VCL Server:''' NOT Setup yet&lt;br /&gt;
&lt;br /&gt;
=='''Contributors to this project'''==&lt;br /&gt;
*Amulya Usem&lt;br /&gt;
*Erik Lopez-Godinez&lt;br /&gt;
*Gowtham Pollam&lt;br /&gt;
&lt;br /&gt;
*'''Mentor''': Srilekha Gudipati&lt;/div&gt;</summary>
		<author><name>Ealopezg</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2023_-_E2383._Grading_Audit_Trail&amp;diff=152012</id>
		<title>CSC/ECE 517 Fall 2023 - E2383. Grading Audit Trail</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2023_-_E2383._Grading_Audit_Trail&amp;diff=152012"/>
		<updated>2023-12-03T07:07:20Z</updated>

		<summary type="html">&lt;p&gt;Ealopezg: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=='''Introduction'''==&lt;br /&gt;
&lt;br /&gt;
===Problem Statement===&lt;br /&gt;
After an instructor gave a grade to an assignment, there is no way to track who gave the grade.&lt;br /&gt;
A grading audit trail must be created and the following information needs to be stored: &lt;br /&gt;
:1. When a grade is assigned by an instructor, there needs to be an indication of who did it and when it was done. &lt;br /&gt;
:2. Comments previously provided by other instructors must also be preserved.&lt;br /&gt;
&lt;br /&gt;
This information needs to be stored every time an instructor edits a grade/comment and clicks the save button.&lt;br /&gt;
&lt;br /&gt;
There have been previous attempts from teams to implement such functionality and our implementation will be based on '''E1934''' and '''E2237'''. Each of these implementations have problems of their own that we need to address.&lt;br /&gt;
&lt;br /&gt;
== '''Overview of Major Changes By Previous Teams''' ==&lt;br /&gt;
===[https://wiki-expertiza.csc.ncsu.edu/index.php/E1934_-_Grading_Audit_Trail E1934]===&lt;br /&gt;
[https://youtu.be/yyxX_kRYxLc Their Screencast]&lt;br /&gt;
&lt;br /&gt;
*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)&lt;br /&gt;
*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.&lt;br /&gt;
*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.&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. 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. &lt;br /&gt;
:2. In the view grading record page, remove the receiver column and add it to the title &lt;br /&gt;
:3. Restrict the column width on the grading record page &lt;br /&gt;
:4. Add comments on list_submissions.html.erb to indicate that the alignment was changed to fix code climate issues &lt;br /&gt;
:5. Ensure that white space changes are separate commits &lt;br /&gt;
:6. Revert changes made to list_review_mapping.html.erb &lt;br /&gt;
:7. Remove the review_report_html.erb file&lt;br /&gt;
:8. Design doc – mention why each of those files were changed&lt;br /&gt;
&lt;br /&gt;
===[https://wiki-expertiza.csc.ncsu.edu/index.php/CSC/ECE_517_Spring_2022_-_E2237:_Grading_audit_trail E2237]===&lt;br /&gt;
&lt;br /&gt;
*They fixed some issues that were causing the system to crash during testing&lt;br /&gt;
*Altered the Grading History view&lt;br /&gt;
*Explained the reasoning for changes made to files using diagrams and justifications&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. Redundant files generated by scaffolding need to be removed, along with debugging code. Ex) Coffee created by scaffolding and console logging for debugging. &lt;br /&gt;
:2. Authentication could be done using existing utilities, no need to create their own. &lt;br /&gt;
:3. Some formatting changes could be done especially on how cells span in review report page. Ex) Formatting change for spans in between cells in review report.&lt;br /&gt;
:4. Code from previous implementation is a concern.&lt;br /&gt;
&lt;br /&gt;
=='''Proposed Solution'''==&lt;br /&gt;
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. These files cannot be added haphazardly since parts of the implementation is a cause to concern and caused the changes to not be implemented. It is also using an older version of expertiza so some parts may not be compatible.  &lt;br /&gt;
&lt;br /&gt;
We must first figure out exactly what changes and issues to address in their implementation by meeting with our mentor. We also need to reimplement the following files since none of their changes were implemented:&lt;br /&gt;
&lt;br /&gt;
*app/controllers/grading_histories_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     Calls the grading history view after validating Submission and Review Type.&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/grading_history.rb &lt;br /&gt;
'''&lt;br /&gt;
     Model for Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/review_grading_history.rb &lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Model containing specifics of Review Grading History. Inherits Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/submission_grading_history.rb &lt;br /&gt;
'''&lt;br /&gt;
     Model containing specifics of Submission Grading History. Inherits Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/views/grading_history/index_html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This is a view for grading audit trail, it will display all grading histories of a &lt;br /&gt;
     submission/review&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*spec/features/grade_histories_spec.rb&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Feature test to check if the grades appear in chronological order&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*spec/features/helpers/grade_histories_helper.rb&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Helper file to facilitate the above mentioned feature test.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
=='''Reimplementation'''==&lt;br /&gt;
Since the previous teams implementations were not integrated we have to reimplement the main idea of theirs again which we will do by looking at their commits and pull request to see what files are necessary and what can be left out to address the issues of their implementation.&lt;br /&gt;
&lt;br /&gt;
'''Reimplemented'''&lt;br /&gt;
*app/controllers/grading_histories_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was added because it was from the previous teams implementation which concerned the MVC of the grading_history they created. It dealt with allowing only the correct people to view the grading history, checking the assignment type whether it be a submission or review, and indexing all the grading history for the assignment in chronological order.&lt;br /&gt;
'''&lt;br /&gt;
*app/models/grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was added to follow the previous teams MVC of the grading_history they created.&lt;br /&gt;
'''&lt;br /&gt;
*app/models/review_grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was reimplemented to follow the previous teams MVC of the ReviewGradingHistory&lt;br /&gt;
'''&lt;br /&gt;
*app/models/submission_grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was reimplemented to follow the previous teams MVC of the SubmisionGradingHistory&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
'''Modified'''&lt;br /&gt;
*app/controllers/grades_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was modified based off the previous teams implementation because when the method save_grade_and_comment_for_submission was called it should also create a grading history so that the grading audit can be created and added to. This was mainly focusing on the grading history of submissions and not reviews.&lt;br /&gt;
'''&lt;br /&gt;
*app/controllers/review_mapping_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was modified based off the previous teams implementation because when the method save_grade_and_comment_for_reviewer was called it should also create a grading history so that the grading audit can be created and added to. This was mainly focusing on the grading history of reviews and not submissions.&lt;br /&gt;
'''&lt;br /&gt;
*app/views/assignments/list_submissions.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     It was modified to add the new hyperlink to display the grading history of a submission.&lt;br /&gt;
'''&lt;br /&gt;
*config/routes.rb&lt;br /&gt;
'''&lt;br /&gt;
     It was to add the new route for grading histories&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
=='''Solution - Implemented'''==&lt;br /&gt;
&lt;br /&gt;
'''E1934'''&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. 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. &lt;br /&gt;
:2. In the view grading record page, remove the receiver column and add it to the title &lt;br /&gt;
:3. Restrict the column width on the grading record page &lt;br /&gt;
:4. Add comments on list_submissions.html.erb to indicate that the alignment was changed to fix code climate issues &lt;br /&gt;
:5. Ensure that white space changes are separate commits &lt;br /&gt;
:6. Revert changes made to list_review_mapping.html.erb &lt;br /&gt;
:7. Remove the review_report_html.erb file&lt;br /&gt;
:8. Design doc – mention why each of those files were changed&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''E2237'''&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. Redundant files generated by scaffolding need to be removed, along with debugging code. Ex) Coffee created by scaffolding and console logging for debugging. &lt;br /&gt;
:2. Authentication could be done using existing utilities, no need to create their own. &lt;br /&gt;
:3. Some formatting changes could be done especially on how cells span in review report page. Ex) Formatting change for spans in between cells in review report.&lt;br /&gt;
:4. Code from previous implementation is a concern.&lt;br /&gt;
&lt;br /&gt;
=='''Testing Plan'''==&lt;br /&gt;
The Testing that we will implement will build from E2237 since the previous tests crash and was something they solved. We also plan to implement test using the given Test Skeleton.&lt;br /&gt;
&lt;br /&gt;
=='''Future Scope'''==&lt;br /&gt;
This project may need further improvement since it does not seem like there should be an abundance of files added and perhaps using the MVC design is not necessarily needed.&lt;br /&gt;
&lt;br /&gt;
=='''Relevant Links'''==&lt;br /&gt;
* '''Github Repository:''' https://github.com/ErikLG360/expertiza&lt;br /&gt;
* '''Pull Request:''' https://github.com/expertiza/expertiza/pull/2696&lt;br /&gt;
* '''VCL Server:''' NOT Setup yet&lt;br /&gt;
&lt;br /&gt;
=='''Contributors to this project'''==&lt;br /&gt;
*Amulya Usem&lt;br /&gt;
*Erik Lopez-Godinez&lt;br /&gt;
*Gowtham Pollam&lt;br /&gt;
&lt;br /&gt;
*'''Mentor''': Srilekha Gudipati&lt;/div&gt;</summary>
		<author><name>Ealopezg</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2023_-_E2383._Grading_Audit_Trail&amp;diff=152011</id>
		<title>CSC/ECE 517 Fall 2023 - E2383. Grading Audit Trail</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2023_-_E2383._Grading_Audit_Trail&amp;diff=152011"/>
		<updated>2023-12-03T07:06:14Z</updated>

		<summary type="html">&lt;p&gt;Ealopezg: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=='''Introduction'''==&lt;br /&gt;
&lt;br /&gt;
===Problem Statement===&lt;br /&gt;
After an instructor gave a grade to an assignment, there is no way to track who gave the grade.&lt;br /&gt;
A grading audit trail must be created and the following information needs to be stored: &lt;br /&gt;
:1. When a grade is assigned by an instructor, there needs to be an indication of who did it and when it was done. &lt;br /&gt;
:2. Comments previously provided by other instructors must also be preserved.&lt;br /&gt;
&lt;br /&gt;
This information needs to be stored every time an instructor edits a grade/comment and clicks the save button.&lt;br /&gt;
&lt;br /&gt;
There have been previous attempts from teams to implement such functionality and our implementation will be based on '''E1934''' and '''E2237'''. Each of these implementations have problems of their own that we need to address.&lt;br /&gt;
&lt;br /&gt;
== '''Overview of Major Changes By Previous Teams''' ==&lt;br /&gt;
===[https://wiki-expertiza.csc.ncsu.edu/index.php/E1934_-_Grading_Audit_Trail E1934]===&lt;br /&gt;
[https://youtu.be/yyxX_kRYxLc Their Screencast]&lt;br /&gt;
&lt;br /&gt;
*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)&lt;br /&gt;
*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.&lt;br /&gt;
*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.&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. 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. &lt;br /&gt;
:2. In the view grading record page, remove the receiver column and add it to the title &lt;br /&gt;
:3. Restrict the column width on the grading record page &lt;br /&gt;
:4. Add comments on list_submissions.html.erb to indicate that the alignment was changed to fix code climate issues &lt;br /&gt;
:5. Ensure that white space changes are separate commits &lt;br /&gt;
:6. Revert changes made to list_review_mapping.html.erb &lt;br /&gt;
:7. Remove the review_report_html.erb file&lt;br /&gt;
:8. Design doc – mention why each of those files were changed&lt;br /&gt;
&lt;br /&gt;
===[https://wiki-expertiza.csc.ncsu.edu/index.php/CSC/ECE_517_Spring_2022_-_E2237:_Grading_audit_trail E2237]===&lt;br /&gt;
&lt;br /&gt;
*They fixed some issues that were causing the system to crash during testing&lt;br /&gt;
*Altered the Grading History view&lt;br /&gt;
*Explained the reasoning for changes made to files using diagrams and justifications&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. Redundant files generated by scaffolding need to be removed, along with debugging code. Ex) Coffee created by scaffolding and console logging for debugging. &lt;br /&gt;
:2. Authentication could be done using existing utilities, no need to create their own. &lt;br /&gt;
:3. Some formatting changes could be done especially on how cells span in review report page. Ex) Formatting change for spans in between cells in review report.&lt;br /&gt;
:4. Code from previous implementation is a concern.&lt;br /&gt;
&lt;br /&gt;
=='''Proposed Solution'''==&lt;br /&gt;
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. These files cannot be added haphazardly since parts of the implementation is a cause to concern and caused the changes to not be implemented. It is also using an older version of expertiza so some parts may not be compatible.  &lt;br /&gt;
&lt;br /&gt;
We must first figure out exactly what changes and issues to address in their implementation by meeting with our mentor. We also need to reimplement the following files since none of their changes were implemented:&lt;br /&gt;
&lt;br /&gt;
*app/controllers/grading_histories_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     Calls the grading history view after validating Submission and Review Type.&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/grading_history.rb &lt;br /&gt;
'''&lt;br /&gt;
     Model for Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/review_grading_history.rb &lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Model containing specifics of Review Grading History. Inherits Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/submission_grading_history.rb &lt;br /&gt;
'''&lt;br /&gt;
     Model containing specifics of Submission Grading History. Inherits Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/views/grading_history/index_html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This is a view for grading audit trail, it will display all grading histories of a &lt;br /&gt;
     submission/review&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*spec/features/grade_histories_spec.rb&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Feature test to check if the grades appear in chronological order&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*spec/features/helpers/grade_histories_helper.rb&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Helper file to facilitate the above mentioned feature test.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
=='''Reimplementation'''==&lt;br /&gt;
Since the previous teams implementations were not integrated we have to reimplement the main idea of theirs again which we will do by looking at their commits and pull request to see what files are necessary and what can be left out to address the issues of their implementation.&lt;br /&gt;
&lt;br /&gt;
'''Reimplemented'''&lt;br /&gt;
*app/controllers/grading_histories_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was added because it was from the previous teams implementation which concerned the MVC of the grading_history they created. It dealt with allowing only the correct people to view the grading history, checking the assignment type whether it be a submission or review, and indexing all the grading history for the assignment in chronological order.&lt;br /&gt;
'''&lt;br /&gt;
*app/models/grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was added to follow the previous teams MVC of the grading_history they created.&lt;br /&gt;
'''&lt;br /&gt;
*app/models/review_grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was reimplemented to follow the previous teams MVC of the ReviewGradingHistory&lt;br /&gt;
'''&lt;br /&gt;
*app/models/submission_grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was reimplemented to follow the previous teams MVC of the SubmisionGradingHistory&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
'''Modified'''&lt;br /&gt;
*app/controllers/grades_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was modified based off the previous teams implementation because when the method save_grade_and_comment_for_submission was called it should also create a grading history so that the grading audit can be created and added to. This was mainly focusing on the grading history of submissions and not reviews.&lt;br /&gt;
'''&lt;br /&gt;
*app/controllers/review_mapping_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was modified based off the previous teams implementation because when the method save_grade_and_comment_for_reviewer was called it should also create a grading history so that the grading audit can be created and added to. This was mainly focusing on the grading history of reviews and not submissions.&lt;br /&gt;
'''&lt;br /&gt;
*app/views/assignments/list_submissions.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     It was modified to add the new hyperlink to display the grading history of a submission.&lt;br /&gt;
'''&lt;br /&gt;
*config/routes.rb&lt;br /&gt;
'''&lt;br /&gt;
     It was to add the new route for grading histories&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
=='''Solution - Implemented'''==&lt;br /&gt;
&lt;br /&gt;
'''E1934'''&lt;br /&gt;
&lt;br /&gt;
:1. 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. &lt;br /&gt;
:2. In the view grading record page, remove the receiver column and add it to the title &lt;br /&gt;
:3. Restrict the column width on the grading record page &lt;br /&gt;
:4. Add comments on list_submissions.html.erb to indicate that the alignment was changed to fix code climate issues &lt;br /&gt;
:5. Ensure that white space changes are separate commits &lt;br /&gt;
:6. Revert changes made to list_review_mapping.html.erb &lt;br /&gt;
:7. Remove the review_report_html.erb file&lt;br /&gt;
:8. Design doc – mention why each of those files were changed&lt;br /&gt;
&lt;br /&gt;
=='''Testing Plan'''==&lt;br /&gt;
The Testing that we will implement will build from E2237 since the previous tests crash and was something they solved. We also plan to implement test using the given Test Skeleton.&lt;br /&gt;
&lt;br /&gt;
=='''Future Scope'''==&lt;br /&gt;
This project may need further improvement since it does not seem like there should be an abundance of files added and perhaps using the MVC design is not necessarily needed.&lt;br /&gt;
&lt;br /&gt;
=='''Relevant Links'''==&lt;br /&gt;
* '''Github Repository:''' https://github.com/ErikLG360/expertiza&lt;br /&gt;
* '''Pull Request:''' https://github.com/expertiza/expertiza/pull/2696&lt;br /&gt;
* '''VCL Server:''' NOT Setup yet&lt;br /&gt;
&lt;br /&gt;
=='''Contributors to this project'''==&lt;br /&gt;
*Amulya Usem&lt;br /&gt;
*Erik Lopez-Godinez&lt;br /&gt;
*Gowtham Pollam&lt;br /&gt;
&lt;br /&gt;
*'''Mentor''': Srilekha Gudipati&lt;/div&gt;</summary>
		<author><name>Ealopezg</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2023_-_E2383._Grading_Audit_Trail&amp;diff=152010</id>
		<title>CSC/ECE 517 Fall 2023 - E2383. Grading Audit Trail</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2023_-_E2383._Grading_Audit_Trail&amp;diff=152010"/>
		<updated>2023-12-03T06:58:57Z</updated>

		<summary type="html">&lt;p&gt;Ealopezg: /* Reimplementation */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=='''Introduction'''==&lt;br /&gt;
&lt;br /&gt;
===Problem Statement===&lt;br /&gt;
After an instructor gave a grade to an assignment, there is no way to track who gave the grade.&lt;br /&gt;
A grading audit trail must be created and the following information needs to be stored: &lt;br /&gt;
:1. When a grade is assigned by an instructor, there needs to be an indication of who did it and when it was done. &lt;br /&gt;
:2. Comments previously provided by other instructors must also be preserved.&lt;br /&gt;
&lt;br /&gt;
This information needs to be stored every time an instructor edits a grade/comment and clicks the save button.&lt;br /&gt;
&lt;br /&gt;
There have been previous attempts from teams to implement such functionality and our implementation will be based on '''E1934''' and '''E2237'''. Each of these implementations have problems of their own that we need to address.&lt;br /&gt;
&lt;br /&gt;
== '''Overview of Major Changes By Previous Teams''' ==&lt;br /&gt;
===[https://wiki-expertiza.csc.ncsu.edu/index.php/E1934_-_Grading_Audit_Trail E1934]===&lt;br /&gt;
[https://youtu.be/yyxX_kRYxLc Their Screencast]&lt;br /&gt;
&lt;br /&gt;
*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)&lt;br /&gt;
*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.&lt;br /&gt;
*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.&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. 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. &lt;br /&gt;
:2. In the view grading record page, remove the receiver column and add it to the title &lt;br /&gt;
:3. Restrict the column width on the grading record page &lt;br /&gt;
:4. Add comments on list_submissions.html.erb to indicate that the alignment was changed to fix code climate issues &lt;br /&gt;
:5. Ensure that white space changes are separate commits &lt;br /&gt;
:6. Revert changes made to list_review_mapping.html.erb &lt;br /&gt;
:7. Remove the review_report_html.erb file&lt;br /&gt;
:8. Design doc – mention why each of those files were changed&lt;br /&gt;
&lt;br /&gt;
===[https://wiki-expertiza.csc.ncsu.edu/index.php/CSC/ECE_517_Spring_2022_-_E2237:_Grading_audit_trail E2237]===&lt;br /&gt;
&lt;br /&gt;
*They fixed some issues that were causing the system to crash during testing&lt;br /&gt;
*Altered the Grading History view&lt;br /&gt;
*Explained the reasoning for changes made to files using diagrams and justifications&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. Redundant files generated by scaffolding need to be removed, along with debugging code. Ex) Coffee created by scaffolding and console logging for debugging. &lt;br /&gt;
:2. Authentication could be done using existing utilities, no need to create their own. &lt;br /&gt;
:3. Some formatting changes could be done especially on how cells span in review report page. Ex) Formatting change for spans in between cells in review report.&lt;br /&gt;
:4. Code from previous implementation is a concern.&lt;br /&gt;
&lt;br /&gt;
=='''Proposed Solution'''==&lt;br /&gt;
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. These files cannot be added haphazardly since parts of the implementation is a cause to concern and caused the changes to not be implemented. It is also using an older version of expertiza so some parts may not be compatible.  &lt;br /&gt;
&lt;br /&gt;
We must first figure out exactly what changes and issues to address in their implementation by meeting with our mentor. We also need to reimplement the following files since none of their changes were implemented:&lt;br /&gt;
&lt;br /&gt;
*app/controllers/grading_histories_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     Calls the grading history view after validating Submission and Review Type.&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/grading_history.rb &lt;br /&gt;
'''&lt;br /&gt;
     Model for Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/review_grading_history.rb &lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Model containing specifics of Review Grading History. Inherits Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/submission_grading_history.rb &lt;br /&gt;
'''&lt;br /&gt;
     Model containing specifics of Submission Grading History. Inherits Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/views/grading_history/index_html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This is a view for grading audit trail, it will display all grading histories of a &lt;br /&gt;
     submission/review&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*spec/features/grade_histories_spec.rb&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Feature test to check if the grades appear in chronological order&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*spec/features/helpers/grade_histories_helper.rb&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Helper file to facilitate the above mentioned feature test.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
=='''Reimplementation'''==&lt;br /&gt;
Since the previous teams implementations were not integrated we have to reimplement the main idea of theirs again which we will do by looking at their commits and pull request to see what files are necessary and what can be left out to address the issues of their implementation.&lt;br /&gt;
&lt;br /&gt;
'''Reimplemented'''&lt;br /&gt;
*app/controllers/grading_histories_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was added because it was from the previous teams implementation which concerned the MVC of the grading_history they created. It dealt with allowing only the correct people to view the grading history, checking the assignment type whether it be a submission or review, and indexing all the grading history for the assignment in chronological order.&lt;br /&gt;
'''&lt;br /&gt;
*app/models/grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was added to follow the previous teams MVC of the grading_history they created.&lt;br /&gt;
'''&lt;br /&gt;
*app/models/review_grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was reimplemented to follow the previous teams MVC of the ReviewGradingHistory&lt;br /&gt;
'''&lt;br /&gt;
*app/models/submission_grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was reimplemented to follow the previous teams MVC of the SubmisionGradingHistory&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
'''Modified'''&lt;br /&gt;
*app/controllers/grades_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was modified based off the previous teams implementation because when the method save_grade_and_comment_for_submission was called it should also create a grading history so that the grading audit can be created and added to. This was mainly focusing on the grading history of submissions and not reviews.&lt;br /&gt;
'''&lt;br /&gt;
*app/controllers/review_mapping_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was modified based off the previous teams implementation because when the method save_grade_and_comment_for_reviewer was called it should also create a grading history so that the grading audit can be created and added to. This was mainly focusing on the grading history of reviews and not submissions.&lt;br /&gt;
'''&lt;br /&gt;
*app/views/assignments/list_submissions.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     It was modified to add the new hyperlink to display the grading history of a submission.&lt;br /&gt;
'''&lt;br /&gt;
*config/routes.rb&lt;br /&gt;
'''&lt;br /&gt;
     It was to add the new route for grading histories&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
=='''Solution - Implemented'''==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=='''Testing Plan'''==&lt;br /&gt;
The Testing that we will implement will build from E2237 since the previous tests crash and was something they solved. We also plan to implement test using the given Test Skeleton.&lt;br /&gt;
&lt;br /&gt;
=='''Future Scope'''==&lt;br /&gt;
This project may need further improvement since it does not seem like there should be an abundance of files added and perhaps using the MVC design is not necessarily needed.&lt;br /&gt;
&lt;br /&gt;
=='''Relevant Links'''==&lt;br /&gt;
* '''Github Repository:''' https://github.com/ErikLG360/expertiza&lt;br /&gt;
* '''Pull Request:''' https://github.com/expertiza/expertiza/pull/2696&lt;br /&gt;
* '''VCL Server:''' NOT Setup yet&lt;br /&gt;
&lt;br /&gt;
=='''Contributors to this project'''==&lt;br /&gt;
*Amulya Usem&lt;br /&gt;
*Erik Lopez-Godinez&lt;br /&gt;
*Gowtham Pollam&lt;br /&gt;
&lt;br /&gt;
*'''Mentor''': Srilekha Gudipati&lt;/div&gt;</summary>
		<author><name>Ealopezg</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2023_-_E2383._Grading_Audit_Trail&amp;diff=152009</id>
		<title>CSC/ECE 517 Fall 2023 - E2383. Grading Audit Trail</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2023_-_E2383._Grading_Audit_Trail&amp;diff=152009"/>
		<updated>2023-12-03T06:58:01Z</updated>

		<summary type="html">&lt;p&gt;Ealopezg: /* Problem Statement */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=='''Introduction'''==&lt;br /&gt;
&lt;br /&gt;
===Problem Statement===&lt;br /&gt;
After an instructor gave a grade to an assignment, there is no way to track who gave the grade.&lt;br /&gt;
A grading audit trail must be created and the following information needs to be stored: &lt;br /&gt;
:1. When a grade is assigned by an instructor, there needs to be an indication of who did it and when it was done. &lt;br /&gt;
:2. Comments previously provided by other instructors must also be preserved.&lt;br /&gt;
&lt;br /&gt;
This information needs to be stored every time an instructor edits a grade/comment and clicks the save button.&lt;br /&gt;
&lt;br /&gt;
There have been previous attempts from teams to implement such functionality and our implementation will be based on '''E1934''' and '''E2237'''. Each of these implementations have problems of their own that we need to address.&lt;br /&gt;
&lt;br /&gt;
== '''Overview of Major Changes By Previous Teams''' ==&lt;br /&gt;
===[https://wiki-expertiza.csc.ncsu.edu/index.php/E1934_-_Grading_Audit_Trail E1934]===&lt;br /&gt;
[https://youtu.be/yyxX_kRYxLc Their Screencast]&lt;br /&gt;
&lt;br /&gt;
*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)&lt;br /&gt;
*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.&lt;br /&gt;
*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.&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. 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. &lt;br /&gt;
:2. In the view grading record page, remove the receiver column and add it to the title &lt;br /&gt;
:3. Restrict the column width on the grading record page &lt;br /&gt;
:4. Add comments on list_submissions.html.erb to indicate that the alignment was changed to fix code climate issues &lt;br /&gt;
:5. Ensure that white space changes are separate commits &lt;br /&gt;
:6. Revert changes made to list_review_mapping.html.erb &lt;br /&gt;
:7. Remove the review_report_html.erb file&lt;br /&gt;
:8. Design doc – mention why each of those files were changed&lt;br /&gt;
&lt;br /&gt;
===[https://wiki-expertiza.csc.ncsu.edu/index.php/CSC/ECE_517_Spring_2022_-_E2237:_Grading_audit_trail E2237]===&lt;br /&gt;
&lt;br /&gt;
*They fixed some issues that were causing the system to crash during testing&lt;br /&gt;
*Altered the Grading History view&lt;br /&gt;
*Explained the reasoning for changes made to files using diagrams and justifications&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. Redundant files generated by scaffolding need to be removed, along with debugging code. Ex) Coffee created by scaffolding and console logging for debugging. &lt;br /&gt;
:2. Authentication could be done using existing utilities, no need to create their own. &lt;br /&gt;
:3. Some formatting changes could be done especially on how cells span in review report page. Ex) Formatting change for spans in between cells in review report.&lt;br /&gt;
:4. Code from previous implementation is a concern.&lt;br /&gt;
&lt;br /&gt;
=='''Proposed Solution'''==&lt;br /&gt;
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. These files cannot be added haphazardly since parts of the implementation is a cause to concern and caused the changes to not be implemented. It is also using an older version of expertiza so some parts may not be compatible.  &lt;br /&gt;
&lt;br /&gt;
We must first figure out exactly what changes and issues to address in their implementation by meeting with our mentor. We also need to reimplement the following files since none of their changes were implemented:&lt;br /&gt;
&lt;br /&gt;
*app/controllers/grading_histories_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     Calls the grading history view after validating Submission and Review Type.&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/grading_history.rb &lt;br /&gt;
'''&lt;br /&gt;
     Model for Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/review_grading_history.rb &lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Model containing specifics of Review Grading History. Inherits Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/submission_grading_history.rb &lt;br /&gt;
'''&lt;br /&gt;
     Model containing specifics of Submission Grading History. Inherits Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/views/grading_history/index_html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This is a view for grading audit trail, it will display all grading histories of a &lt;br /&gt;
     submission/review&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*spec/features/grade_histories_spec.rb&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Feature test to check if the grades appear in chronological order&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*spec/features/helpers/grade_histories_helper.rb&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Helper file to facilitate the above mentioned feature test.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
=='''Reimplementation'''==&lt;br /&gt;
Since the previous teams implementations were not integrated we have to reimplement the main idea of theirs again which we will do by looking at their commits and pull request to see what files are necessary and what can be left out to address the issues of their implementation.&lt;br /&gt;
&lt;br /&gt;
The files that are included already and we plan to alter without a doubt are&lt;br /&gt;
*app/views/reports/_review_report.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This is the view in which we will need to add a link to the Grade History/Record for reviews&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
'''Reimplemented'''&lt;br /&gt;
*app/controllers/grading_histories_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was added because it was from the previous teams implementation which concerned the MVC of the grading_history they created. It dealt with allowing only the correct people to view the grading history, checking the assignment type whether it be a submission or review, and indexing all the grading history for the assignment in chronological order.&lt;br /&gt;
'''&lt;br /&gt;
*app/models/grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was added to follow the previous teams MVC of the grading_history they created.&lt;br /&gt;
'''&lt;br /&gt;
*app/models/review_grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was reimplemented to follow the previous teams MVC of the ReviewGradingHistory&lt;br /&gt;
'''&lt;br /&gt;
*app/models/submission_grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was reimplemented to follow the previous teams MVC of the SubmisionGradingHistory&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
'''Modified'''&lt;br /&gt;
*app/controllers/grades_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was modified based off the previous teams implementation because when the method save_grade_and_comment_for_submission was called it should also create a grading history so that the grading audit can be created and added to. This was mainly focusing on the grading history of submissions and not reviews.&lt;br /&gt;
'''&lt;br /&gt;
*app/controllers/review_mapping_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was modified based off the previous teams implementation because when the method save_grade_and_comment_for_reviewer was called it should also create a grading history so that the grading audit can be created and added to. This was mainly focusing on the grading history of reviews and not submissions.&lt;br /&gt;
'''&lt;br /&gt;
*app/views/assignments/list_submissions.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     It was modified to add the new hyperlink to display the grading history of a submission.&lt;br /&gt;
'''&lt;br /&gt;
*config/routes.rb&lt;br /&gt;
'''&lt;br /&gt;
     It was to add the new route for grading histories&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
=='''Solution - Implemented'''==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=='''Testing Plan'''==&lt;br /&gt;
The Testing that we will implement will build from E2237 since the previous tests crash and was something they solved. We also plan to implement test using the given Test Skeleton.&lt;br /&gt;
&lt;br /&gt;
=='''Future Scope'''==&lt;br /&gt;
This project may need further improvement since it does not seem like there should be an abundance of files added and perhaps using the MVC design is not necessarily needed.&lt;br /&gt;
&lt;br /&gt;
=='''Relevant Links'''==&lt;br /&gt;
* '''Github Repository:''' https://github.com/ErikLG360/expertiza&lt;br /&gt;
* '''Pull Request:''' https://github.com/expertiza/expertiza/pull/2696&lt;br /&gt;
* '''VCL Server:''' NOT Setup yet&lt;br /&gt;
&lt;br /&gt;
=='''Contributors to this project'''==&lt;br /&gt;
*Amulya Usem&lt;br /&gt;
*Erik Lopez-Godinez&lt;br /&gt;
*Gowtham Pollam&lt;br /&gt;
&lt;br /&gt;
*'''Mentor''': Srilekha Gudipati&lt;/div&gt;</summary>
		<author><name>Ealopezg</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2023_-_E2383._Grading_Audit_Trail&amp;diff=152008</id>
		<title>CSC/ECE 517 Fall 2023 - E2383. Grading Audit Trail</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2023_-_E2383._Grading_Audit_Trail&amp;diff=152008"/>
		<updated>2023-12-03T06:53:09Z</updated>

		<summary type="html">&lt;p&gt;Ealopezg: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=='''Introduction'''==&lt;br /&gt;
&lt;br /&gt;
===Problem Statement===&lt;br /&gt;
After an instructor gave a grade to an assignment, there is no way to track who gave the grade.&lt;br /&gt;
A grading audit trail must be created and the following information needs to be stored: &lt;br /&gt;
:1. When a grade is assigned by an instructor, there needs to be an indication of who did it and when it was done. &lt;br /&gt;
:2. Comments previously provided by other instructors must also be preserved.&lt;br /&gt;
&lt;br /&gt;
This information needs to be stored every time an instructor edits a grade/comment and clicks the save button.&lt;br /&gt;
&lt;br /&gt;
There have been previous attempts from teams to implement such functionality and our implementation will be based on E1934 and E2237. Each of these implementations have problems of their own that we need to address.&lt;br /&gt;
&lt;br /&gt;
== '''Overview of Major Changes By Previous Teams''' ==&lt;br /&gt;
===[https://wiki-expertiza.csc.ncsu.edu/index.php/E1934_-_Grading_Audit_Trail E1934]===&lt;br /&gt;
[https://youtu.be/yyxX_kRYxLc Their Screencast]&lt;br /&gt;
&lt;br /&gt;
*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)&lt;br /&gt;
*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.&lt;br /&gt;
*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.&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. 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. &lt;br /&gt;
:2. In the view grading record page, remove the receiver column and add it to the title &lt;br /&gt;
:3. Restrict the column width on the grading record page &lt;br /&gt;
:4. Add comments on list_submissions.html.erb to indicate that the alignment was changed to fix code climate issues &lt;br /&gt;
:5. Ensure that white space changes are separate commits &lt;br /&gt;
:6. Revert changes made to list_review_mapping.html.erb &lt;br /&gt;
:7. Remove the review_report_html.erb file&lt;br /&gt;
:8. Design doc – mention why each of those files were changed&lt;br /&gt;
&lt;br /&gt;
===[https://wiki-expertiza.csc.ncsu.edu/index.php/CSC/ECE_517_Spring_2022_-_E2237:_Grading_audit_trail E2237]===&lt;br /&gt;
&lt;br /&gt;
*They fixed some issues that were causing the system to crash during testing&lt;br /&gt;
*Altered the Grading History view&lt;br /&gt;
*Explained the reasoning for changes made to files using diagrams and justifications&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. Redundant files generated by scaffolding need to be removed, along with debugging code. Ex) Coffee created by scaffolding and console logging for debugging. &lt;br /&gt;
:2. Authentication could be done using existing utilities, no need to create their own. &lt;br /&gt;
:3. Some formatting changes could be done especially on how cells span in review report page. Ex) Formatting change for spans in between cells in review report.&lt;br /&gt;
:4. Code from previous implementation is a concern.&lt;br /&gt;
&lt;br /&gt;
=='''Proposed Solution'''==&lt;br /&gt;
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. These files cannot be added haphazardly since parts of the implementation is a cause to concern and caused the changes to not be implemented. It is also using an older version of expertiza so some parts may not be compatible.  &lt;br /&gt;
&lt;br /&gt;
We must first figure out exactly what changes and issues to address in their implementation by meeting with our mentor. We also need to reimplement the following files since none of their changes were implemented:&lt;br /&gt;
&lt;br /&gt;
*app/controllers/grading_histories_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     Calls the grading history view after validating Submission and Review Type.&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/grading_history.rb &lt;br /&gt;
'''&lt;br /&gt;
     Model for Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/review_grading_history.rb &lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Model containing specifics of Review Grading History. Inherits Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/submission_grading_history.rb &lt;br /&gt;
'''&lt;br /&gt;
     Model containing specifics of Submission Grading History. Inherits Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/views/grading_history/index_html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This is a view for grading audit trail, it will display all grading histories of a &lt;br /&gt;
     submission/review&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*spec/features/grade_histories_spec.rb&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Feature test to check if the grades appear in chronological order&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*spec/features/helpers/grade_histories_helper.rb&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Helper file to facilitate the above mentioned feature test.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
=='''Reimplementation'''==&lt;br /&gt;
Since the previous teams implementations were not integrated we have to reimplement the main idea of theirs again which we will do by looking at their commits and pull request to see what files are necessary and what can be left out to address the issues of their implementation.&lt;br /&gt;
&lt;br /&gt;
The files that are included already and we plan to alter without a doubt are&lt;br /&gt;
*app/views/reports/_review_report.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This is the view in which we will need to add a link to the Grade History/Record for reviews&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
'''Reimplemented'''&lt;br /&gt;
*app/controllers/grading_histories_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was added because it was from the previous teams implementation which concerned the MVC of the grading_history they created. It dealt with allowing only the correct people to view the grading history, checking the assignment type whether it be a submission or review, and indexing all the grading history for the assignment in chronological order.&lt;br /&gt;
'''&lt;br /&gt;
*app/models/grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was added to follow the previous teams MVC of the grading_history they created.&lt;br /&gt;
'''&lt;br /&gt;
*app/models/review_grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was reimplemented to follow the previous teams MVC of the ReviewGradingHistory&lt;br /&gt;
'''&lt;br /&gt;
*app/models/submission_grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was reimplemented to follow the previous teams MVC of the SubmisionGradingHistory&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
'''Modified'''&lt;br /&gt;
*app/controllers/grades_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was modified based off the previous teams implementation because when the method save_grade_and_comment_for_submission was called it should also create a grading history so that the grading audit can be created and added to. This was mainly focusing on the grading history of submissions and not reviews.&lt;br /&gt;
'''&lt;br /&gt;
*app/controllers/review_mapping_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was modified based off the previous teams implementation because when the method save_grade_and_comment_for_reviewer was called it should also create a grading history so that the grading audit can be created and added to. This was mainly focusing on the grading history of reviews and not submissions.&lt;br /&gt;
'''&lt;br /&gt;
*app/views/assignments/list_submissions.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     It was modified to add the new hyperlink to display the grading history of a submission.&lt;br /&gt;
'''&lt;br /&gt;
*config/routes.rb&lt;br /&gt;
'''&lt;br /&gt;
     It was to add the new route for grading histories&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
=='''Solution - Implemented'''==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=='''Testing Plan'''==&lt;br /&gt;
The Testing that we will implement will build from E2237 since the previous tests crash and was something they solved. We also plan to implement test using the given Test Skeleton.&lt;br /&gt;
&lt;br /&gt;
=='''Future Scope'''==&lt;br /&gt;
This project may need further improvement since it does not seem like there should be an abundance of files added and perhaps using the MVC design is not necessarily needed.&lt;br /&gt;
&lt;br /&gt;
=='''Relevant Links'''==&lt;br /&gt;
* '''Github Repository:''' https://github.com/ErikLG360/expertiza&lt;br /&gt;
* '''Pull Request:''' https://github.com/expertiza/expertiza/pull/2696&lt;br /&gt;
* '''VCL Server:''' NOT Setup yet&lt;br /&gt;
&lt;br /&gt;
=='''Contributors to this project'''==&lt;br /&gt;
*Amulya Usem&lt;br /&gt;
*Erik Lopez-Godinez&lt;br /&gt;
*Gowtham Pollam&lt;br /&gt;
&lt;br /&gt;
*'''Mentor''': Srilekha Gudipati&lt;/div&gt;</summary>
		<author><name>Ealopezg</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2023_-_E2383._Grading_Audit_Trail&amp;diff=151974</id>
		<title>CSC/ECE 517 Fall 2023 - E2383. Grading Audit Trail</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2023_-_E2383._Grading_Audit_Trail&amp;diff=151974"/>
		<updated>2023-12-02T20:07:19Z</updated>

		<summary type="html">&lt;p&gt;Ealopezg: /* Implementation */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=='''Introduction'''==&lt;br /&gt;
&lt;br /&gt;
===Problem Statement===&lt;br /&gt;
After an instructor gave a grade to an assignment, there is no way to track who gave the grade.&lt;br /&gt;
A grading audit trail must be created and the following information needs to be stored: &lt;br /&gt;
:1. When a grade is assigned by an instructor, there needs to be an indication of who did it and when it was done. &lt;br /&gt;
:2. Comments previously provided by other instructors must also be preserved.&lt;br /&gt;
&lt;br /&gt;
This information needs to be stored every time an instructor edits a grade/comment and clicks the save button.&lt;br /&gt;
&lt;br /&gt;
There have been previous attempts from teams to implement such functionality and our implementation will be based on E1934 and E2237. Each of these implementations have problems of their own that we need to address.&lt;br /&gt;
&lt;br /&gt;
== '''Overview of Major Changes By Previous Teams''' ==&lt;br /&gt;
===[https://wiki-expertiza.csc.ncsu.edu/index.php/E1934_-_Grading_Audit_Trail E1934]===&lt;br /&gt;
[https://youtu.be/yyxX_kRYxLc Their Screencast]&lt;br /&gt;
&lt;br /&gt;
*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)&lt;br /&gt;
*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.&lt;br /&gt;
*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.&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. 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. &lt;br /&gt;
:2. In the view grading record page, remove the receiver column and add it to the title &lt;br /&gt;
:3. Restrict the column width on the grading record page &lt;br /&gt;
:4. Add comments on list_submissions.html.erb to indicate that the alignment was changed to fix code climate issues &lt;br /&gt;
:5. Ensure that white space changes are separate commits &lt;br /&gt;
:6. Revert changes made to list_review_mapping.html.erb &lt;br /&gt;
:7. Remove the review_report_html.erb file&lt;br /&gt;
:8. Design doc – mention why each of those files were changed&lt;br /&gt;
&lt;br /&gt;
===[https://wiki-expertiza.csc.ncsu.edu/index.php/CSC/ECE_517_Spring_2022_-_E2237:_Grading_audit_trail E2237]===&lt;br /&gt;
&lt;br /&gt;
*They fixed some issues that were causing the system to crash during testing&lt;br /&gt;
*Altered the Grading History view&lt;br /&gt;
*Explained the reasoning for changes made to files using diagrams and justifications&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. Redundant files generated by scaffolding need to be removed, along with debugging code. Ex) Coffee created by scaffolding and console logging for debugging. &lt;br /&gt;
:2. Authentication could be done using existing utilities, no need to create their own. &lt;br /&gt;
:3. Some formatting changes could be done especially on how cells span in review report page. Ex) Formatting change for spans in between cells in review report.&lt;br /&gt;
:4. Code from previous implementation is a concern.&lt;br /&gt;
&lt;br /&gt;
=='''Proposed Solution'''==&lt;br /&gt;
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. These files cannot be added haphazardly since parts of the implementation is a cause to concern and caused the changes to not be implemented. It is also using an older version of expertiza so some parts may not be compatible.  &lt;br /&gt;
&lt;br /&gt;
We must first figure out exactly what changes and issues to address in their implementation by meeting with our mentor. We also need to reimplement the following files since none of their changes were implemented:&lt;br /&gt;
&lt;br /&gt;
*app/controllers/grading_histories_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     Calls the grading history view after validating Submission and Review Type.&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/grading_history.rb &lt;br /&gt;
'''&lt;br /&gt;
     Model for Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/review_grading_history.rb &lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Model containing specifics of Review Grading History. Inherits Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/submission_grading_history.rb &lt;br /&gt;
'''&lt;br /&gt;
     Model containing specifics of Submission Grading History. Inherits Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/views/grading_history/index_html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This is a view for grading audit trail, it will display all grading histories of a &lt;br /&gt;
     submission/review&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*spec/features/grade_histories_spec.rb&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Feature test to check if the grades appear in chronological order&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*spec/features/helpers/grade_histories_helper.rb&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Helper file to facilitate the above mentioned feature test.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
=='''Implementation'''==&lt;br /&gt;
Since the previous teams implementations were not integrated we have to reimplement the main idea of theirs again which we will do by looking at their commits and pull request to see what files are necessary and what can be left out to address the issues of their implementation.&lt;br /&gt;
&lt;br /&gt;
The files that are included already and we plan to alter without a doubt are&lt;br /&gt;
*app/views/reports/_review_report.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This is the view in which we will need to add a link to the Grade History/Record for reviews&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
'''Reimplemented'''&lt;br /&gt;
*app/controllers/grading_histories_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was added because it was from the previous teams implementation which concerned the MVC of the grading_history they created. It dealt with allowing only the correct people to view the grading history, checking the assignment type whether it be a submission or review, and indexing all the grading history for the assignment in chronological order.&lt;br /&gt;
'''&lt;br /&gt;
*app/models/grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was added to follow the previous teams MVC of the grading_history they created.&lt;br /&gt;
'''&lt;br /&gt;
*app/models/review_grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was reimplemented to follow the previous teams MVC of the ReviewGradingHistory&lt;br /&gt;
'''&lt;br /&gt;
*app/models/submission_grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was reimplemented to follow the previous teams MVC of the SubmisionGradingHistory&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
'''Modified'''&lt;br /&gt;
*app/controllers/grades_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was modified based off the previous teams implementation because when the method save_grade_and_comment_for_submission was called it should also create a grading history so that the grading audit can be created and added to. This was mainly focusing on the grading history of submissions and not reviews.&lt;br /&gt;
'''&lt;br /&gt;
*app/controllers/review_mapping_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was modified based off the previous teams implementation because when the method save_grade_and_comment_for_reviewer was called it should also create a grading history so that the grading audit can be created and added to. This was mainly focusing on the grading history of reviews and not submissions.&lt;br /&gt;
'''&lt;br /&gt;
*app/views/assignments/list_submissions.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     It was modified to add the new hyperlink to display the grading history of a submission.&lt;br /&gt;
'''&lt;br /&gt;
*config/routes.rb&lt;br /&gt;
'''&lt;br /&gt;
     It was to add the new route for grading histories&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
=='''Testing Plan'''==&lt;br /&gt;
The Testing that we will implement will build from E2237 since the previous tests crash and was something they solved. We also plan to implement test using the given Test Skeleton.&lt;br /&gt;
&lt;br /&gt;
=='''Future Scope'''==&lt;br /&gt;
This project may need further improvement since it does not seem like there should be an abundance of files added and perhaps using the MVC design is not necessarily needed.&lt;br /&gt;
&lt;br /&gt;
=='''Relevant Links'''==&lt;br /&gt;
* '''Github Repository:''' https://github.com/ErikLG360/expertiza&lt;br /&gt;
* '''Pull Request:''' https://github.com/expertiza/expertiza/pull/2696&lt;br /&gt;
* '''VCL Server:''' NOT Setup yet&lt;br /&gt;
&lt;br /&gt;
=='''Contributors to this project'''==&lt;br /&gt;
*Amulya Usem&lt;br /&gt;
*Erik Lopez-Godinez&lt;br /&gt;
*Gowtham Pollam&lt;br /&gt;
&lt;br /&gt;
*'''Mentor''': Srilekha Gudipati&lt;/div&gt;</summary>
		<author><name>Ealopezg</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2023_-_E2383._Grading_Audit_Trail&amp;diff=151973</id>
		<title>CSC/ECE 517 Fall 2023 - E2383. Grading Audit Trail</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2023_-_E2383._Grading_Audit_Trail&amp;diff=151973"/>
		<updated>2023-12-02T20:01:00Z</updated>

		<summary type="html">&lt;p&gt;Ealopezg: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=='''Introduction'''==&lt;br /&gt;
&lt;br /&gt;
===Problem Statement===&lt;br /&gt;
After an instructor gave a grade to an assignment, there is no way to track who gave the grade.&lt;br /&gt;
A grading audit trail must be created and the following information needs to be stored: &lt;br /&gt;
:1. When a grade is assigned by an instructor, there needs to be an indication of who did it and when it was done. &lt;br /&gt;
:2. Comments previously provided by other instructors must also be preserved.&lt;br /&gt;
&lt;br /&gt;
This information needs to be stored every time an instructor edits a grade/comment and clicks the save button.&lt;br /&gt;
&lt;br /&gt;
There have been previous attempts from teams to implement such functionality and our implementation will be based on E1934 and E2237. Each of these implementations have problems of their own that we need to address.&lt;br /&gt;
&lt;br /&gt;
== '''Overview of Major Changes By Previous Teams''' ==&lt;br /&gt;
===[https://wiki-expertiza.csc.ncsu.edu/index.php/E1934_-_Grading_Audit_Trail E1934]===&lt;br /&gt;
[https://youtu.be/yyxX_kRYxLc Their Screencast]&lt;br /&gt;
&lt;br /&gt;
*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)&lt;br /&gt;
*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.&lt;br /&gt;
*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.&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. 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. &lt;br /&gt;
:2. In the view grading record page, remove the receiver column and add it to the title &lt;br /&gt;
:3. Restrict the column width on the grading record page &lt;br /&gt;
:4. Add comments on list_submissions.html.erb to indicate that the alignment was changed to fix code climate issues &lt;br /&gt;
:5. Ensure that white space changes are separate commits &lt;br /&gt;
:6. Revert changes made to list_review_mapping.html.erb &lt;br /&gt;
:7. Remove the review_report_html.erb file&lt;br /&gt;
:8. Design doc – mention why each of those files were changed&lt;br /&gt;
&lt;br /&gt;
===[https://wiki-expertiza.csc.ncsu.edu/index.php/CSC/ECE_517_Spring_2022_-_E2237:_Grading_audit_trail E2237]===&lt;br /&gt;
&lt;br /&gt;
*They fixed some issues that were causing the system to crash during testing&lt;br /&gt;
*Altered the Grading History view&lt;br /&gt;
*Explained the reasoning for changes made to files using diagrams and justifications&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. Redundant files generated by scaffolding need to be removed, along with debugging code. Ex) Coffee created by scaffolding and console logging for debugging. &lt;br /&gt;
:2. Authentication could be done using existing utilities, no need to create their own. &lt;br /&gt;
:3. Some formatting changes could be done especially on how cells span in review report page. Ex) Formatting change for spans in between cells in review report.&lt;br /&gt;
:4. Code from previous implementation is a concern.&lt;br /&gt;
&lt;br /&gt;
=='''Proposed Solution'''==&lt;br /&gt;
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. These files cannot be added haphazardly since parts of the implementation is a cause to concern and caused the changes to not be implemented. It is also using an older version of expertiza so some parts may not be compatible.  &lt;br /&gt;
&lt;br /&gt;
We must first figure out exactly what changes and issues to address in their implementation by meeting with our mentor. We also need to reimplement the following files since none of their changes were implemented:&lt;br /&gt;
&lt;br /&gt;
*app/controllers/grading_histories_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     Calls the grading history view after validating Submission and Review Type.&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/grading_history.rb &lt;br /&gt;
'''&lt;br /&gt;
     Model for Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/review_grading_history.rb &lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Model containing specifics of Review Grading History. Inherits Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/submission_grading_history.rb &lt;br /&gt;
'''&lt;br /&gt;
     Model containing specifics of Submission Grading History. Inherits Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/views/grading_history/index_html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This is a view for grading audit trail, it will display all grading histories of a &lt;br /&gt;
     submission/review&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*spec/features/grade_histories_spec.rb&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Feature test to check if the grades appear in chronological order&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*spec/features/helpers/grade_histories_helper.rb&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Helper file to facilitate the above mentioned feature test.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
=='''Implementation'''==&lt;br /&gt;
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. &lt;br /&gt;
&lt;br /&gt;
The files that are included already and we plan to alter without a doubt are&lt;br /&gt;
*app/views/reports/_review_report.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This is the view in which we will need to add a link to the Grade History/Record for reviews&lt;br /&gt;
'''&lt;br /&gt;
*app/views/assignments/list_submissions.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This is the view in which we will need to add a link to the Grade History/Record for Assignment Grades&lt;br /&gt;
'''&lt;br /&gt;
'''Reimplemented'''&lt;br /&gt;
*app/controllers/grading_histories_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was added because it was from the previous teams implementation which concerned the MVC of the grading_history they created. It dealt with allowing only the correct people to view the grading history, checking the assignment type whether it be a submission or review, and indexing all the grading history for the assignment in chronological order.&lt;br /&gt;
'''&lt;br /&gt;
*app/models/grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was added to follow the previous teams MVC of the grading_history they created.&lt;br /&gt;
'''&lt;br /&gt;
*app/models/review_grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was reimplemented to follow the previous teams MVC of the ReviewGradingHistory&lt;br /&gt;
'''&lt;br /&gt;
*app/models/submission_grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was reimplemented to follow the previous teams MVC of the SubmisionGradingHistory&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
'''Modified'''&lt;br /&gt;
*app/controllers/grades_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was modified based off the previous teams implementation because when the method save_grade_and_comment_for_submission was called it should also create a grading history so that the grading audit can be created and added to. This was mainly focusing on the grading history of submissions and not reviews.&lt;br /&gt;
'''&lt;br /&gt;
*app/controllers/review_mapping_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was modified based off the previous teams implementation because when the method save_grade_and_comment_for_reviewer was called it should also create a grading history so that the grading audit can be created and added to. This was mainly focusing on the grading history of reviews and not submissions.&lt;br /&gt;
'''&lt;br /&gt;
*app/views/assignments/list_submissions.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     It was modified to add the new hyperlink to display the grading history of a submission.&lt;br /&gt;
'''&lt;br /&gt;
*config/routes.rb&lt;br /&gt;
'''&lt;br /&gt;
     It was to add the new route for grading histories&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
=='''Testing Plan'''==&lt;br /&gt;
The Testing that we will implement will build from E2237 since the previous tests crash and was something they solved. We also plan to implement test using the given Test Skeleton.&lt;br /&gt;
&lt;br /&gt;
=='''Future Scope'''==&lt;br /&gt;
This project may need further improvement since it does not seem like there should be an abundance of files added and perhaps using the MVC design is not necessarily needed.&lt;br /&gt;
&lt;br /&gt;
=='''Relevant Links'''==&lt;br /&gt;
* '''Github Repository:''' https://github.com/ErikLG360/expertiza&lt;br /&gt;
* '''Pull Request:''' https://github.com/expertiza/expertiza/pull/2696&lt;br /&gt;
* '''VCL Server:''' NOT Setup yet&lt;br /&gt;
&lt;br /&gt;
=='''Contributors to this project'''==&lt;br /&gt;
*Amulya Usem&lt;br /&gt;
*Erik Lopez-Godinez&lt;br /&gt;
*Gowtham Pollam&lt;br /&gt;
&lt;br /&gt;
*'''Mentor''': Srilekha Gudipati&lt;/div&gt;</summary>
		<author><name>Ealopezg</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2023_-_E2383._Grading_Audit_Trail&amp;diff=151972</id>
		<title>CSC/ECE 517 Fall 2023 - E2383. Grading Audit Trail</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2023_-_E2383._Grading_Audit_Trail&amp;diff=151972"/>
		<updated>2023-12-02T19:51:28Z</updated>

		<summary type="html">&lt;p&gt;Ealopezg: /* Introduction */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=='''Introduction'''==&lt;br /&gt;
&lt;br /&gt;
===Problem Statement===&lt;br /&gt;
After an instructor gave a grade to an assignment, there is no way to track who gave the grade.&lt;br /&gt;
A grading audit trail must be created and the following information needs to be stored: &lt;br /&gt;
:1. When a grade is assigned by an instructor, there needs to be an indication of who did it and when it was done. &lt;br /&gt;
:2. Comments previously provided by other instructors must also be preserved.&lt;br /&gt;
&lt;br /&gt;
This information needs to be stored every time an instructor edits a grade/comment and clicks the save button.&lt;br /&gt;
&lt;br /&gt;
There have been previous attempts from teams to implement such functionality and we will be basing ours based on E22&lt;br /&gt;
&lt;br /&gt;
== '''Overview of Major Changes By Previous Teams''' ==&lt;br /&gt;
===[https://wiki-expertiza.csc.ncsu.edu/index.php/E1934_-_Grading_Audit_Trail E1934]===&lt;br /&gt;
[https://youtu.be/yyxX_kRYxLc Their Screencast]&lt;br /&gt;
&lt;br /&gt;
*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)&lt;br /&gt;
*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.&lt;br /&gt;
*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.&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. 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. &lt;br /&gt;
:2. In the view grading record page, remove the receiver column and add it to the title &lt;br /&gt;
:3. Restrict the column width on the grading record page &lt;br /&gt;
:4. Add comments on list_submissions.html.erb to indicate that the alignment was changed to fix code climate issues &lt;br /&gt;
:5. Ensure that white space changes are separate commits &lt;br /&gt;
:6. Revert changes made to list_review_mapping.html.erb &lt;br /&gt;
:7. Remove the review_report_html.erb file&lt;br /&gt;
:8. Design doc – mention why each of those files were changed&lt;br /&gt;
&lt;br /&gt;
===[https://wiki-expertiza.csc.ncsu.edu/index.php/CSC/ECE_517_Spring_2022_-_E2237:_Grading_audit_trail E2237]===&lt;br /&gt;
&lt;br /&gt;
*They fixed some issues that were causing the system to crash during testing&lt;br /&gt;
*Altered the Grading History view&lt;br /&gt;
*Explained the reasoning for changes made to files using diagrams and justifications&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. Redundant files generated by scaffolding need to be removed, along with debugging code. Ex) Coffee created by scaffolding and console logging for debugging. &lt;br /&gt;
:2. Authentication could be done using existing utilities, no need to create their own. &lt;br /&gt;
:3. Some formatting changes could be done especially on how cells span in review report page. Ex) Formatting change for spans in between cells in review report.&lt;br /&gt;
:4. Code from previous implementation is a concern.&lt;br /&gt;
&lt;br /&gt;
=='''Proposed Solution'''==&lt;br /&gt;
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. These files cannot be added haphazardly since parts of the implementation is a cause to concern and caused the changes to not be implemented. It is also using an older version of expertiza so some parts may not be compatible.  &lt;br /&gt;
&lt;br /&gt;
We must first figure out exactly what changes and issues to address in their implementation by meeting with our mentor. We also need to reimplement the following files since none of their changes were implemented:&lt;br /&gt;
&lt;br /&gt;
*app/controllers/grading_histories_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     Calls the grading history view after validating Submission and Review Type.&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/grading_history.rb &lt;br /&gt;
'''&lt;br /&gt;
     Model for Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/review_grading_history.rb &lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Model containing specifics of Review Grading History. Inherits Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/submission_grading_history.rb &lt;br /&gt;
'''&lt;br /&gt;
     Model containing specifics of Submission Grading History. Inherits Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/views/grading_history/index_html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This is a view for grading audit trail, it will display all grading histories of a &lt;br /&gt;
     submission/review&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*spec/features/grade_histories_spec.rb&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Feature test to check if the grades appear in chronological order&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*spec/features/helpers/grade_histories_helper.rb&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Helper file to facilitate the above mentioned feature test.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
=='''Implementation'''==&lt;br /&gt;
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. &lt;br /&gt;
&lt;br /&gt;
The files that are included already and we plan to alter without a doubt are&lt;br /&gt;
*app/views/reports/_review_report.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This is the view in which we will need to add a link to the Grade History/Record for reviews&lt;br /&gt;
'''&lt;br /&gt;
*app/views/assignments/list_submissions.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This is the view in which we will need to add a link to the Grade History/Record for Assignment Grades&lt;br /&gt;
'''&lt;br /&gt;
'''Reimplemented'''&lt;br /&gt;
*app/controllers/grading_histories_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was added because it was from the previous teams implementation which concerned the MVC of the grading_history they created. It dealt with allowing only the correct people to view the grading history, checking the assignment type whether it be a submission or review, and indexing all the grading history for the assignment in chronological order.&lt;br /&gt;
'''&lt;br /&gt;
*app/models/grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was added to follow the previous teams MVC of the grading_history they created.&lt;br /&gt;
'''&lt;br /&gt;
*app/models/review_grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was reimplemented to follow the previous teams MVC of the ReviewGradingHistory&lt;br /&gt;
'''&lt;br /&gt;
*app/models/submission_grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was reimplemented to follow the previous teams MVC of the SubmisionGradingHistory&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
'''Modified'''&lt;br /&gt;
*app/controllers/grades_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was modified based off the previous teams implementation because when the method save_grade_and_comment_for_submission was called it should also create a grading history so that the grading audit can be created and added to. This was mainly focusing on the grading history of submissions and not reviews.&lt;br /&gt;
'''&lt;br /&gt;
*app/controllers/review_mapping_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was modified based off the previous teams implementation because when the method save_grade_and_comment_for_reviewer was called it should also create a grading history so that the grading audit can be created and added to. This was mainly focusing on the grading history of reviews and not submissions.&lt;br /&gt;
'''&lt;br /&gt;
*app/views/assignments/list_submissions.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     It was modified to add the new hyperlink to display the grading history of a submission.&lt;br /&gt;
'''&lt;br /&gt;
*config/routes.rb&lt;br /&gt;
'''&lt;br /&gt;
     It was to add the new route for grading histories&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
=='''Testing Plan'''==&lt;br /&gt;
The Testing that we will implement will build from E2237 since the previous tests crash and was something they solved. We also plan to implement test using the given Test Skeleton.&lt;br /&gt;
&lt;br /&gt;
=='''Future Scope'''==&lt;br /&gt;
This project may need further improvement since it does not seem like there should be an abundance of files added and perhaps using the MVC design is not necessarily needed.&lt;br /&gt;
&lt;br /&gt;
=='''Relevant Links'''==&lt;br /&gt;
* '''Github Repository:''' https://github.com/ErikLG360/expertiza&lt;br /&gt;
* '''Pull Request:''' https://github.com/expertiza/expertiza/pull/2696&lt;br /&gt;
* '''VCL Server:''' NOT Setup yet&lt;br /&gt;
&lt;br /&gt;
=='''Contributors to this project'''==&lt;br /&gt;
*Amulya Usem&lt;br /&gt;
*Erik Lopez-Godinez&lt;br /&gt;
*Gowtham Pollam&lt;br /&gt;
&lt;br /&gt;
*'''Mentor''': Srilekha Gudipati&lt;/div&gt;</summary>
		<author><name>Ealopezg</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2023_-_E2383._Grading_Audit_Trail&amp;diff=151971</id>
		<title>CSC/ECE 517 Fall 2023 - E2383. Grading Audit Trail</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2023_-_E2383._Grading_Audit_Trail&amp;diff=151971"/>
		<updated>2023-12-02T19:36:18Z</updated>

		<summary type="html">&lt;p&gt;Ealopezg: /* Proposed Solution */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=='''Introduction'''==&lt;br /&gt;
&lt;br /&gt;
===Problem Statement===&lt;br /&gt;
After an instructor gave a grade to an assignment, there is no way to track who gave the grade.&lt;br /&gt;
A grading audit trail must be created and the following information needs to be stored: &lt;br /&gt;
:1. When a grade is assigned by an instructor, there needs to be an indication of who did it and when it was done. &lt;br /&gt;
:2. Comments previously provided by other instructors must also be preserved.&lt;br /&gt;
&lt;br /&gt;
This information needs to be stored every time an instructor edits a grade/comment and clicks the save button.&lt;br /&gt;
&lt;br /&gt;
== '''Overview of Major Changes By Previous Teams''' ==&lt;br /&gt;
===[https://wiki-expertiza.csc.ncsu.edu/index.php/E1934_-_Grading_Audit_Trail E1934]===&lt;br /&gt;
[https://youtu.be/yyxX_kRYxLc Their Screencast]&lt;br /&gt;
&lt;br /&gt;
*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)&lt;br /&gt;
*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.&lt;br /&gt;
*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.&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. 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. &lt;br /&gt;
:2. In the view grading record page, remove the receiver column and add it to the title &lt;br /&gt;
:3. Restrict the column width on the grading record page &lt;br /&gt;
:4. Add comments on list_submissions.html.erb to indicate that the alignment was changed to fix code climate issues &lt;br /&gt;
:5. Ensure that white space changes are separate commits &lt;br /&gt;
:6. Revert changes made to list_review_mapping.html.erb &lt;br /&gt;
:7. Remove the review_report_html.erb file&lt;br /&gt;
:8. Design doc – mention why each of those files were changed&lt;br /&gt;
&lt;br /&gt;
===[https://wiki-expertiza.csc.ncsu.edu/index.php/CSC/ECE_517_Spring_2022_-_E2237:_Grading_audit_trail E2237]===&lt;br /&gt;
&lt;br /&gt;
*They fixed some issues that were causing the system to crash during testing&lt;br /&gt;
*Altered the Grading History view&lt;br /&gt;
*Explained the reasoning for changes made to files using diagrams and justifications&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. Redundant files generated by scaffolding need to be removed, along with debugging code. Ex) Coffee created by scaffolding and console logging for debugging. &lt;br /&gt;
:2. Authentication could be done using existing utilities, no need to create their own. &lt;br /&gt;
:3. Some formatting changes could be done especially on how cells span in review report page. Ex) Formatting change for spans in between cells in review report.&lt;br /&gt;
:4. Code from previous implementation is a concern.&lt;br /&gt;
&lt;br /&gt;
=='''Proposed Solution'''==&lt;br /&gt;
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. These files cannot be added haphazardly since parts of the implementation is a cause to concern and caused the changes to not be implemented. It is also using an older version of expertiza so some parts may not be compatible.  &lt;br /&gt;
&lt;br /&gt;
We must first figure out exactly what changes and issues to address in their implementation by meeting with our mentor. We also need to reimplement the following files since none of their changes were implemented:&lt;br /&gt;
&lt;br /&gt;
*app/controllers/grading_histories_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     Calls the grading history view after validating Submission and Review Type.&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/grading_history.rb &lt;br /&gt;
'''&lt;br /&gt;
     Model for Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/review_grading_history.rb &lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Model containing specifics of Review Grading History. Inherits Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/submission_grading_history.rb &lt;br /&gt;
'''&lt;br /&gt;
     Model containing specifics of Submission Grading History. Inherits Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/views/grading_history/index_html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This is a view for grading audit trail, it will display all grading histories of a &lt;br /&gt;
     submission/review&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*spec/features/grade_histories_spec.rb&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Feature test to check if the grades appear in chronological order&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*spec/features/helpers/grade_histories_helper.rb&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Helper file to facilitate the above mentioned feature test.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
=='''Implementation'''==&lt;br /&gt;
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. &lt;br /&gt;
&lt;br /&gt;
The files that are included already and we plan to alter without a doubt are&lt;br /&gt;
*app/views/reports/_review_report.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This is the view in which we will need to add a link to the Grade History/Record for reviews&lt;br /&gt;
'''&lt;br /&gt;
*app/views/assignments/list_submissions.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This is the view in which we will need to add a link to the Grade History/Record for Assignment Grades&lt;br /&gt;
'''&lt;br /&gt;
'''Reimplemented'''&lt;br /&gt;
*app/controllers/grading_histories_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was added because it was from the previous teams implementation which concerned the MVC of the grading_history they created. It dealt with allowing only the correct people to view the grading history, checking the assignment type whether it be a submission or review, and indexing all the grading history for the assignment in chronological order.&lt;br /&gt;
'''&lt;br /&gt;
*app/models/grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was added to follow the previous teams MVC of the grading_history they created.&lt;br /&gt;
'''&lt;br /&gt;
*app/models/review_grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was reimplemented to follow the previous teams MVC of the ReviewGradingHistory&lt;br /&gt;
'''&lt;br /&gt;
*app/models/submission_grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was reimplemented to follow the previous teams MVC of the SubmisionGradingHistory&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
'''Modified'''&lt;br /&gt;
*app/controllers/grades_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was modified based off the previous teams implementation because when the method save_grade_and_comment_for_submission was called it should also create a grading history so that the grading audit can be created and added to. This was mainly focusing on the grading history of submissions and not reviews.&lt;br /&gt;
'''&lt;br /&gt;
*app/controllers/review_mapping_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was modified based off the previous teams implementation because when the method save_grade_and_comment_for_reviewer was called it should also create a grading history so that the grading audit can be created and added to. This was mainly focusing on the grading history of reviews and not submissions.&lt;br /&gt;
'''&lt;br /&gt;
*app/views/assignments/list_submissions.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     It was modified to add the new hyperlink to display the grading history of a submission.&lt;br /&gt;
'''&lt;br /&gt;
*config/routes.rb&lt;br /&gt;
'''&lt;br /&gt;
     It was to add the new route for grading histories&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
=='''Testing Plan'''==&lt;br /&gt;
The Testing that we will implement will build from E2237 since the previous tests crash and was something they solved. We also plan to implement test using the given Test Skeleton.&lt;br /&gt;
&lt;br /&gt;
=='''Future Scope'''==&lt;br /&gt;
This project may need further improvement since it does not seem like there should be an abundance of files added and perhaps using the MVC design is not necessarily needed.&lt;br /&gt;
&lt;br /&gt;
=='''Relevant Links'''==&lt;br /&gt;
* '''Github Repository:''' https://github.com/ErikLG360/expertiza&lt;br /&gt;
* '''Pull Request:''' https://github.com/expertiza/expertiza/pull/2696&lt;br /&gt;
* '''VCL Server:''' NOT Setup yet&lt;br /&gt;
&lt;br /&gt;
=='''Contributors to this project'''==&lt;br /&gt;
*Amulya Usem&lt;br /&gt;
*Erik Lopez-Godinez&lt;br /&gt;
*Gowtham Pollam&lt;br /&gt;
&lt;br /&gt;
*'''Mentor''': Srilekha Gudipati&lt;/div&gt;</summary>
		<author><name>Ealopezg</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2023_-_E2383._Grading_Audit_Trail&amp;diff=151970</id>
		<title>CSC/ECE 517 Fall 2023 - E2383. Grading Audit Trail</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2023_-_E2383._Grading_Audit_Trail&amp;diff=151970"/>
		<updated>2023-12-02T19:22:50Z</updated>

		<summary type="html">&lt;p&gt;Ealopezg: /* E2237 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=='''Introduction'''==&lt;br /&gt;
&lt;br /&gt;
===Problem Statement===&lt;br /&gt;
After an instructor gave a grade to an assignment, there is no way to track who gave the grade.&lt;br /&gt;
A grading audit trail must be created and the following information needs to be stored: &lt;br /&gt;
:1. When a grade is assigned by an instructor, there needs to be an indication of who did it and when it was done. &lt;br /&gt;
:2. Comments previously provided by other instructors must also be preserved.&lt;br /&gt;
&lt;br /&gt;
This information needs to be stored every time an instructor edits a grade/comment and clicks the save button.&lt;br /&gt;
&lt;br /&gt;
== '''Overview of Major Changes By Previous Teams''' ==&lt;br /&gt;
===[https://wiki-expertiza.csc.ncsu.edu/index.php/E1934_-_Grading_Audit_Trail E1934]===&lt;br /&gt;
[https://youtu.be/yyxX_kRYxLc Their Screencast]&lt;br /&gt;
&lt;br /&gt;
*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)&lt;br /&gt;
*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.&lt;br /&gt;
*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.&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. 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. &lt;br /&gt;
:2. In the view grading record page, remove the receiver column and add it to the title &lt;br /&gt;
:3. Restrict the column width on the grading record page &lt;br /&gt;
:4. Add comments on list_submissions.html.erb to indicate that the alignment was changed to fix code climate issues &lt;br /&gt;
:5. Ensure that white space changes are separate commits &lt;br /&gt;
:6. Revert changes made to list_review_mapping.html.erb &lt;br /&gt;
:7. Remove the review_report_html.erb file&lt;br /&gt;
:8. Design doc – mention why each of those files were changed&lt;br /&gt;
&lt;br /&gt;
===[https://wiki-expertiza.csc.ncsu.edu/index.php/CSC/ECE_517_Spring_2022_-_E2237:_Grading_audit_trail E2237]===&lt;br /&gt;
&lt;br /&gt;
*They fixed some issues that were causing the system to crash during testing&lt;br /&gt;
*Altered the Grading History view&lt;br /&gt;
*Explained the reasoning for changes made to files using diagrams and justifications&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. Redundant files generated by scaffolding need to be removed, along with debugging code. Ex) Coffee created by scaffolding and console logging for debugging. &lt;br /&gt;
:2. Authentication could be done using existing utilities, no need to create their own. &lt;br /&gt;
:3. Some formatting changes could be done especially on how cells span in review report page. Ex) Formatting change for spans in between cells in review report.&lt;br /&gt;
:4. Code from previous implementation is a concern.&lt;br /&gt;
&lt;br /&gt;
=='''Proposed Solution'''==&lt;br /&gt;
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. &lt;br /&gt;
&lt;br /&gt;
We must first figure out exactly what changes and issues to address in their implementation by meeting with our mentor.&lt;br /&gt;
&lt;br /&gt;
Files to tentatively add:&lt;br /&gt;
*app/controllers/grading_histories_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     Calls the grading history view after validating Submission and Review Type.&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/grading_history.rb &lt;br /&gt;
'''&lt;br /&gt;
     Model for Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/review_grading_history.rb &lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Model containing specifics of Review Grading History. Inherits Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/submission_grading_history.rb &lt;br /&gt;
'''&lt;br /&gt;
     Model containing specifics of Submission Grading History. Inherits Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/views/grading_history/index_html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This is a view for grading audit trail, it will display all grading histories of a &lt;br /&gt;
     submission/review&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*spec/features/grade_histories_spec.rb&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Feature test to check if the grades appear in chronological order&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*spec/features/helpers/grade_histories_helper.rb&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Helper file to facilitate the above mentioned feature test.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
=='''Implementation'''==&lt;br /&gt;
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. &lt;br /&gt;
&lt;br /&gt;
The files that are included already and we plan to alter without a doubt are&lt;br /&gt;
*app/views/reports/_review_report.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This is the view in which we will need to add a link to the Grade History/Record for reviews&lt;br /&gt;
'''&lt;br /&gt;
*app/views/assignments/list_submissions.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This is the view in which we will need to add a link to the Grade History/Record for Assignment Grades&lt;br /&gt;
'''&lt;br /&gt;
'''Reimplemented'''&lt;br /&gt;
*app/controllers/grading_histories_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was added because it was from the previous teams implementation which concerned the MVC of the grading_history they created. It dealt with allowing only the correct people to view the grading history, checking the assignment type whether it be a submission or review, and indexing all the grading history for the assignment in chronological order.&lt;br /&gt;
'''&lt;br /&gt;
*app/models/grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was added to follow the previous teams MVC of the grading_history they created.&lt;br /&gt;
'''&lt;br /&gt;
*app/models/review_grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was reimplemented to follow the previous teams MVC of the ReviewGradingHistory&lt;br /&gt;
'''&lt;br /&gt;
*app/models/submission_grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was reimplemented to follow the previous teams MVC of the SubmisionGradingHistory&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
'''Modified'''&lt;br /&gt;
*app/controllers/grades_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was modified based off the previous teams implementation because when the method save_grade_and_comment_for_submission was called it should also create a grading history so that the grading audit can be created and added to. This was mainly focusing on the grading history of submissions and not reviews.&lt;br /&gt;
'''&lt;br /&gt;
*app/controllers/review_mapping_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was modified based off the previous teams implementation because when the method save_grade_and_comment_for_reviewer was called it should also create a grading history so that the grading audit can be created and added to. This was mainly focusing on the grading history of reviews and not submissions.&lt;br /&gt;
'''&lt;br /&gt;
*app/views/assignments/list_submissions.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     It was modified to add the new hyperlink to display the grading history of a submission.&lt;br /&gt;
'''&lt;br /&gt;
*config/routes.rb&lt;br /&gt;
'''&lt;br /&gt;
     It was to add the new route for grading histories&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
=='''Testing Plan'''==&lt;br /&gt;
The Testing that we will implement will build from E2237 since the previous tests crash and was something they solved. We also plan to implement test using the given Test Skeleton.&lt;br /&gt;
&lt;br /&gt;
=='''Future Scope'''==&lt;br /&gt;
This project may need further improvement since it does not seem like there should be an abundance of files added and perhaps using the MVC design is not necessarily needed.&lt;br /&gt;
&lt;br /&gt;
=='''Relevant Links'''==&lt;br /&gt;
* '''Github Repository:''' https://github.com/ErikLG360/expertiza&lt;br /&gt;
* '''Pull Request:''' https://github.com/expertiza/expertiza/pull/2696&lt;br /&gt;
* '''VCL Server:''' NOT Setup yet&lt;br /&gt;
&lt;br /&gt;
=='''Contributors to this project'''==&lt;br /&gt;
*Amulya Usem&lt;br /&gt;
*Erik Lopez-Godinez&lt;br /&gt;
*Gowtham Pollam&lt;br /&gt;
&lt;br /&gt;
*'''Mentor''': Srilekha Gudipati&lt;/div&gt;</summary>
		<author><name>Ealopezg</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2023_-_E2383._Grading_Audit_Trail&amp;diff=151969</id>
		<title>CSC/ECE 517 Fall 2023 - E2383. Grading Audit Trail</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2023_-_E2383._Grading_Audit_Trail&amp;diff=151969"/>
		<updated>2023-12-02T19:11:22Z</updated>

		<summary type="html">&lt;p&gt;Ealopezg: /* E2237 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=='''Introduction'''==&lt;br /&gt;
&lt;br /&gt;
===Problem Statement===&lt;br /&gt;
After an instructor gave a grade to an assignment, there is no way to track who gave the grade.&lt;br /&gt;
A grading audit trail must be created and the following information needs to be stored: &lt;br /&gt;
:1. When a grade is assigned by an instructor, there needs to be an indication of who did it and when it was done. &lt;br /&gt;
:2. Comments previously provided by other instructors must also be preserved.&lt;br /&gt;
&lt;br /&gt;
This information needs to be stored every time an instructor edits a grade/comment and clicks the save button.&lt;br /&gt;
&lt;br /&gt;
== '''Overview of Major Changes By Previous Teams''' ==&lt;br /&gt;
===[https://wiki-expertiza.csc.ncsu.edu/index.php/E1934_-_Grading_Audit_Trail E1934]===&lt;br /&gt;
[https://youtu.be/yyxX_kRYxLc Their Screencast]&lt;br /&gt;
&lt;br /&gt;
*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)&lt;br /&gt;
*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.&lt;br /&gt;
*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.&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. 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. &lt;br /&gt;
:2. In the view grading record page, remove the receiver column and add it to the title &lt;br /&gt;
:3. Restrict the column width on the grading record page &lt;br /&gt;
:4. Add comments on list_submissions.html.erb to indicate that the alignment was changed to fix code climate issues &lt;br /&gt;
:5. Ensure that white space changes are separate commits &lt;br /&gt;
:6. Revert changes made to list_review_mapping.html.erb &lt;br /&gt;
:7. Remove the review_report_html.erb file&lt;br /&gt;
:8. Design doc – mention why each of those files were changed&lt;br /&gt;
&lt;br /&gt;
===[https://wiki-expertiza.csc.ncsu.edu/index.php/CSC/ECE_517_Spring_2022_-_E2237:_Grading_audit_trail E2237]===&lt;br /&gt;
&lt;br /&gt;
*They fixed some issues that were causing the system to crash during testing&lt;br /&gt;
*Altered the Grading History view&lt;br /&gt;
*Explained the reasoning for changes made to files using diagrams and justifications&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. Redundant files generated by scaffolding need to be removed, along with debugging code.&lt;br /&gt;
:2. Authentication could be done using existing utilities, no need to create their own. &lt;br /&gt;
:3. Some formatting changes could be done especially on how cells span in review report page. &lt;br /&gt;
:4. Code from previous implementation is a concern.&lt;br /&gt;
&lt;br /&gt;
=='''Proposed Solution'''==&lt;br /&gt;
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. &lt;br /&gt;
&lt;br /&gt;
We must first figure out exactly what changes and issues to address in their implementation by meeting with our mentor.&lt;br /&gt;
&lt;br /&gt;
Files to tentatively add:&lt;br /&gt;
*app/controllers/grading_histories_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     Calls the grading history view after validating Submission and Review Type.&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/grading_history.rb &lt;br /&gt;
'''&lt;br /&gt;
     Model for Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/review_grading_history.rb &lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Model containing specifics of Review Grading History. Inherits Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/submission_grading_history.rb &lt;br /&gt;
'''&lt;br /&gt;
     Model containing specifics of Submission Grading History. Inherits Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/views/grading_history/index_html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This is a view for grading audit trail, it will display all grading histories of a &lt;br /&gt;
     submission/review&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*spec/features/grade_histories_spec.rb&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Feature test to check if the grades appear in chronological order&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*spec/features/helpers/grade_histories_helper.rb&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Helper file to facilitate the above mentioned feature test.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
=='''Implementation'''==&lt;br /&gt;
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. &lt;br /&gt;
&lt;br /&gt;
The files that are included already and we plan to alter without a doubt are&lt;br /&gt;
*app/views/reports/_review_report.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This is the view in which we will need to add a link to the Grade History/Record for reviews&lt;br /&gt;
'''&lt;br /&gt;
*app/views/assignments/list_submissions.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This is the view in which we will need to add a link to the Grade History/Record for Assignment Grades&lt;br /&gt;
'''&lt;br /&gt;
'''Reimplemented'''&lt;br /&gt;
*app/controllers/grading_histories_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was added because it was from the previous teams implementation which concerned the MVC of the grading_history they created. It dealt with allowing only the correct people to view the grading history, checking the assignment type whether it be a submission or review, and indexing all the grading history for the assignment in chronological order.&lt;br /&gt;
'''&lt;br /&gt;
*app/models/grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was added to follow the previous teams MVC of the grading_history they created.&lt;br /&gt;
'''&lt;br /&gt;
*app/models/review_grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was reimplemented to follow the previous teams MVC of the ReviewGradingHistory&lt;br /&gt;
'''&lt;br /&gt;
*app/models/submission_grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was reimplemented to follow the previous teams MVC of the SubmisionGradingHistory&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
'''Modified'''&lt;br /&gt;
*app/controllers/grades_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was modified based off the previous teams implementation because when the method save_grade_and_comment_for_submission was called it should also create a grading history so that the grading audit can be created and added to. This was mainly focusing on the grading history of submissions and not reviews.&lt;br /&gt;
'''&lt;br /&gt;
*app/controllers/review_mapping_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was modified based off the previous teams implementation because when the method save_grade_and_comment_for_reviewer was called it should also create a grading history so that the grading audit can be created and added to. This was mainly focusing on the grading history of reviews and not submissions.&lt;br /&gt;
'''&lt;br /&gt;
*app/views/assignments/list_submissions.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     It was modified to add the new hyperlink to display the grading history of a submission.&lt;br /&gt;
'''&lt;br /&gt;
*config/routes.rb&lt;br /&gt;
'''&lt;br /&gt;
     It was to add the new route for grading histories&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
=='''Testing Plan'''==&lt;br /&gt;
The Testing that we will implement will build from E2237 since the previous tests crash and was something they solved. We also plan to implement test using the given Test Skeleton.&lt;br /&gt;
&lt;br /&gt;
=='''Future Scope'''==&lt;br /&gt;
This project may need further improvement since it does not seem like there should be an abundance of files added and perhaps using the MVC design is not necessarily needed.&lt;br /&gt;
&lt;br /&gt;
=='''Relevant Links'''==&lt;br /&gt;
* '''Github Repository:''' https://github.com/ErikLG360/expertiza&lt;br /&gt;
* '''Pull Request:''' https://github.com/expertiza/expertiza/pull/2696&lt;br /&gt;
* '''VCL Server:''' NOT Setup yet&lt;br /&gt;
&lt;br /&gt;
=='''Contributors to this project'''==&lt;br /&gt;
*Amulya Usem&lt;br /&gt;
*Erik Lopez-Godinez&lt;br /&gt;
*Gowtham Pollam&lt;br /&gt;
&lt;br /&gt;
*'''Mentor''': Srilekha Gudipati&lt;/div&gt;</summary>
		<author><name>Ealopezg</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2023_-_E2383._Grading_Audit_Trail&amp;diff=151968</id>
		<title>CSC/ECE 517 Fall 2023 - E2383. Grading Audit Trail</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2023_-_E2383._Grading_Audit_Trail&amp;diff=151968"/>
		<updated>2023-12-02T19:10:38Z</updated>

		<summary type="html">&lt;p&gt;Ealopezg: /* E1934 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=='''Introduction'''==&lt;br /&gt;
&lt;br /&gt;
===Problem Statement===&lt;br /&gt;
After an instructor gave a grade to an assignment, there is no way to track who gave the grade.&lt;br /&gt;
A grading audit trail must be created and the following information needs to be stored: &lt;br /&gt;
:1. When a grade is assigned by an instructor, there needs to be an indication of who did it and when it was done. &lt;br /&gt;
:2. Comments previously provided by other instructors must also be preserved.&lt;br /&gt;
&lt;br /&gt;
This information needs to be stored every time an instructor edits a grade/comment and clicks the save button.&lt;br /&gt;
&lt;br /&gt;
== '''Overview of Major Changes By Previous Teams''' ==&lt;br /&gt;
===[https://wiki-expertiza.csc.ncsu.edu/index.php/E1934_-_Grading_Audit_Trail E1934]===&lt;br /&gt;
[https://youtu.be/yyxX_kRYxLc Their Screencast]&lt;br /&gt;
&lt;br /&gt;
*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)&lt;br /&gt;
*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.&lt;br /&gt;
*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.&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
:1. 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. &lt;br /&gt;
:2. In the view grading record page, remove the receiver column and add it to the title &lt;br /&gt;
:3. Restrict the column width on the grading record page &lt;br /&gt;
:4. Add comments on list_submissions.html.erb to indicate that the alignment was changed to fix code climate issues &lt;br /&gt;
:5. Ensure that white space changes are separate commits &lt;br /&gt;
:6. Revert changes made to list_review_mapping.html.erb &lt;br /&gt;
:7. Remove the review_report_html.erb file&lt;br /&gt;
:8. Design doc – mention why each of those files were changed&lt;br /&gt;
&lt;br /&gt;
===[https://wiki-expertiza.csc.ncsu.edu/index.php/CSC/ECE_517_Spring_2022_-_E2237:_Grading_audit_trail E2237]===&lt;br /&gt;
&lt;br /&gt;
*They fixed some issues that were causing the system to crash during testing&lt;br /&gt;
*Altered the Grading History view&lt;br /&gt;
*Explained the reasoning for changes made to files using diagrams and justifications&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
*Redundant files generated by scaffolding need to be removed, along with debugging code.&lt;br /&gt;
*Authentication could be done using existing utilities, no need to create their own. &lt;br /&gt;
*Some formatting changes could be done especially on how cells span in review report page. &lt;br /&gt;
*Code from previous implementation is a concern.&lt;br /&gt;
&lt;br /&gt;
=='''Proposed Solution'''==&lt;br /&gt;
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. &lt;br /&gt;
&lt;br /&gt;
We must first figure out exactly what changes and issues to address in their implementation by meeting with our mentor.&lt;br /&gt;
&lt;br /&gt;
Files to tentatively add:&lt;br /&gt;
*app/controllers/grading_histories_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     Calls the grading history view after validating Submission and Review Type.&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/grading_history.rb &lt;br /&gt;
'''&lt;br /&gt;
     Model for Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/review_grading_history.rb &lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Model containing specifics of Review Grading History. Inherits Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/submission_grading_history.rb &lt;br /&gt;
'''&lt;br /&gt;
     Model containing specifics of Submission Grading History. Inherits Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/views/grading_history/index_html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This is a view for grading audit trail, it will display all grading histories of a &lt;br /&gt;
     submission/review&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*spec/features/grade_histories_spec.rb&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Feature test to check if the grades appear in chronological order&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*spec/features/helpers/grade_histories_helper.rb&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Helper file to facilitate the above mentioned feature test.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
=='''Implementation'''==&lt;br /&gt;
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. &lt;br /&gt;
&lt;br /&gt;
The files that are included already and we plan to alter without a doubt are&lt;br /&gt;
*app/views/reports/_review_report.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This is the view in which we will need to add a link to the Grade History/Record for reviews&lt;br /&gt;
'''&lt;br /&gt;
*app/views/assignments/list_submissions.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This is the view in which we will need to add a link to the Grade History/Record for Assignment Grades&lt;br /&gt;
'''&lt;br /&gt;
'''Reimplemented'''&lt;br /&gt;
*app/controllers/grading_histories_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was added because it was from the previous teams implementation which concerned the MVC of the grading_history they created. It dealt with allowing only the correct people to view the grading history, checking the assignment type whether it be a submission or review, and indexing all the grading history for the assignment in chronological order.&lt;br /&gt;
'''&lt;br /&gt;
*app/models/grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was added to follow the previous teams MVC of the grading_history they created.&lt;br /&gt;
'''&lt;br /&gt;
*app/models/review_grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was reimplemented to follow the previous teams MVC of the ReviewGradingHistory&lt;br /&gt;
'''&lt;br /&gt;
*app/models/submission_grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was reimplemented to follow the previous teams MVC of the SubmisionGradingHistory&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
'''Modified'''&lt;br /&gt;
*app/controllers/grades_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was modified based off the previous teams implementation because when the method save_grade_and_comment_for_submission was called it should also create a grading history so that the grading audit can be created and added to. This was mainly focusing on the grading history of submissions and not reviews.&lt;br /&gt;
'''&lt;br /&gt;
*app/controllers/review_mapping_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was modified based off the previous teams implementation because when the method save_grade_and_comment_for_reviewer was called it should also create a grading history so that the grading audit can be created and added to. This was mainly focusing on the grading history of reviews and not submissions.&lt;br /&gt;
'''&lt;br /&gt;
*app/views/assignments/list_submissions.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     It was modified to add the new hyperlink to display the grading history of a submission.&lt;br /&gt;
'''&lt;br /&gt;
*config/routes.rb&lt;br /&gt;
'''&lt;br /&gt;
     It was to add the new route for grading histories&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
=='''Testing Plan'''==&lt;br /&gt;
The Testing that we will implement will build from E2237 since the previous tests crash and was something they solved. We also plan to implement test using the given Test Skeleton.&lt;br /&gt;
&lt;br /&gt;
=='''Future Scope'''==&lt;br /&gt;
This project may need further improvement since it does not seem like there should be an abundance of files added and perhaps using the MVC design is not necessarily needed.&lt;br /&gt;
&lt;br /&gt;
=='''Relevant Links'''==&lt;br /&gt;
* '''Github Repository:''' https://github.com/ErikLG360/expertiza&lt;br /&gt;
* '''Pull Request:''' https://github.com/expertiza/expertiza/pull/2696&lt;br /&gt;
* '''VCL Server:''' NOT Setup yet&lt;br /&gt;
&lt;br /&gt;
=='''Contributors to this project'''==&lt;br /&gt;
*Amulya Usem&lt;br /&gt;
*Erik Lopez-Godinez&lt;br /&gt;
*Gowtham Pollam&lt;br /&gt;
&lt;br /&gt;
*'''Mentor''': Srilekha Gudipati&lt;/div&gt;</summary>
		<author><name>Ealopezg</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2023_-_E2383._Grading_Audit_Trail&amp;diff=151967</id>
		<title>CSC/ECE 517 Fall 2023 - E2383. Grading Audit Trail</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2023_-_E2383._Grading_Audit_Trail&amp;diff=151967"/>
		<updated>2023-12-02T19:08:03Z</updated>

		<summary type="html">&lt;p&gt;Ealopezg: /* E1934 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=='''Introduction'''==&lt;br /&gt;
&lt;br /&gt;
===Problem Statement===&lt;br /&gt;
After an instructor gave a grade to an assignment, there is no way to track who gave the grade.&lt;br /&gt;
A grading audit trail must be created and the following information needs to be stored: &lt;br /&gt;
:1. When a grade is assigned by an instructor, there needs to be an indication of who did it and when it was done. &lt;br /&gt;
:2. Comments previously provided by other instructors must also be preserved.&lt;br /&gt;
&lt;br /&gt;
This information needs to be stored every time an instructor edits a grade/comment and clicks the save button.&lt;br /&gt;
&lt;br /&gt;
== '''Overview of Major Changes By Previous Teams''' ==&lt;br /&gt;
===[https://wiki-expertiza.csc.ncsu.edu/index.php/E1934_-_Grading_Audit_Trail E1934]===&lt;br /&gt;
[https://youtu.be/yyxX_kRYxLc Their Screencast]&lt;br /&gt;
&lt;br /&gt;
*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)&lt;br /&gt;
*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.&lt;br /&gt;
*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.&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
1. 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. &lt;br /&gt;
2. In the view grading record page, remove the receiver column and add it to the title &lt;br /&gt;
3. Restrict the column width on the grading record page &lt;br /&gt;
4. Add comments on list_submissions.html.erb to indicate that the alignment was changed to fix code climate issues &lt;br /&gt;
5. Ensure that white space changes are separate commits &lt;br /&gt;
6. Revert changes made to list_review_mapping.html.erb &lt;br /&gt;
7. Remove the review_report_html.erb file&lt;br /&gt;
8. Design doc – mention why each of those files were changed&lt;br /&gt;
&lt;br /&gt;
===[https://wiki-expertiza.csc.ncsu.edu/index.php/CSC/ECE_517_Spring_2022_-_E2237:_Grading_audit_trail E2237]===&lt;br /&gt;
&lt;br /&gt;
*They fixed some issues that were causing the system to crash during testing&lt;br /&gt;
*Altered the Grading History view&lt;br /&gt;
*Explained the reasoning for changes made to files using diagrams and justifications&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
*Redundant files generated by scaffolding need to be removed, along with debugging code.&lt;br /&gt;
*Authentication could be done using existing utilities, no need to create their own. &lt;br /&gt;
*Some formatting changes could be done especially on how cells span in review report page. &lt;br /&gt;
*Code from previous implementation is a concern.&lt;br /&gt;
&lt;br /&gt;
=='''Proposed Solution'''==&lt;br /&gt;
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. &lt;br /&gt;
&lt;br /&gt;
We must first figure out exactly what changes and issues to address in their implementation by meeting with our mentor.&lt;br /&gt;
&lt;br /&gt;
Files to tentatively add:&lt;br /&gt;
*app/controllers/grading_histories_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     Calls the grading history view after validating Submission and Review Type.&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/grading_history.rb &lt;br /&gt;
'''&lt;br /&gt;
     Model for Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/review_grading_history.rb &lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Model containing specifics of Review Grading History. Inherits Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/submission_grading_history.rb &lt;br /&gt;
'''&lt;br /&gt;
     Model containing specifics of Submission Grading History. Inherits Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/views/grading_history/index_html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This is a view for grading audit trail, it will display all grading histories of a &lt;br /&gt;
     submission/review&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*spec/features/grade_histories_spec.rb&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Feature test to check if the grades appear in chronological order&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*spec/features/helpers/grade_histories_helper.rb&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Helper file to facilitate the above mentioned feature test.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
=='''Implementation'''==&lt;br /&gt;
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. &lt;br /&gt;
&lt;br /&gt;
The files that are included already and we plan to alter without a doubt are&lt;br /&gt;
*app/views/reports/_review_report.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This is the view in which we will need to add a link to the Grade History/Record for reviews&lt;br /&gt;
'''&lt;br /&gt;
*app/views/assignments/list_submissions.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This is the view in which we will need to add a link to the Grade History/Record for Assignment Grades&lt;br /&gt;
'''&lt;br /&gt;
'''Reimplemented'''&lt;br /&gt;
*app/controllers/grading_histories_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was added because it was from the previous teams implementation which concerned the MVC of the grading_history they created. It dealt with allowing only the correct people to view the grading history, checking the assignment type whether it be a submission or review, and indexing all the grading history for the assignment in chronological order.&lt;br /&gt;
'''&lt;br /&gt;
*app/models/grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was added to follow the previous teams MVC of the grading_history they created.&lt;br /&gt;
'''&lt;br /&gt;
*app/models/review_grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was reimplemented to follow the previous teams MVC of the ReviewGradingHistory&lt;br /&gt;
'''&lt;br /&gt;
*app/models/submission_grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was reimplemented to follow the previous teams MVC of the SubmisionGradingHistory&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
'''Modified'''&lt;br /&gt;
*app/controllers/grades_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was modified based off the previous teams implementation because when the method save_grade_and_comment_for_submission was called it should also create a grading history so that the grading audit can be created and added to. This was mainly focusing on the grading history of submissions and not reviews.&lt;br /&gt;
'''&lt;br /&gt;
*app/controllers/review_mapping_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was modified based off the previous teams implementation because when the method save_grade_and_comment_for_reviewer was called it should also create a grading history so that the grading audit can be created and added to. This was mainly focusing on the grading history of reviews and not submissions.&lt;br /&gt;
'''&lt;br /&gt;
*app/views/assignments/list_submissions.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     It was modified to add the new hyperlink to display the grading history of a submission.&lt;br /&gt;
'''&lt;br /&gt;
*config/routes.rb&lt;br /&gt;
'''&lt;br /&gt;
     It was to add the new route for grading histories&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
=='''Testing Plan'''==&lt;br /&gt;
The Testing that we will implement will build from E2237 since the previous tests crash and was something they solved. We also plan to implement test using the given Test Skeleton.&lt;br /&gt;
&lt;br /&gt;
=='''Future Scope'''==&lt;br /&gt;
This project may need further improvement since it does not seem like there should be an abundance of files added and perhaps using the MVC design is not necessarily needed.&lt;br /&gt;
&lt;br /&gt;
=='''Relevant Links'''==&lt;br /&gt;
* '''Github Repository:''' https://github.com/ErikLG360/expertiza&lt;br /&gt;
* '''Pull Request:''' https://github.com/expertiza/expertiza/pull/2696&lt;br /&gt;
* '''VCL Server:''' NOT Setup yet&lt;br /&gt;
&lt;br /&gt;
=='''Contributors to this project'''==&lt;br /&gt;
*Amulya Usem&lt;br /&gt;
*Erik Lopez-Godinez&lt;br /&gt;
*Gowtham Pollam&lt;br /&gt;
&lt;br /&gt;
*'''Mentor''': Srilekha Gudipati&lt;/div&gt;</summary>
		<author><name>Ealopezg</name></author>
	</entry>
	<entry>
		<id>https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2023_-_E2383._Grading_Audit_Trail&amp;diff=151966</id>
		<title>CSC/ECE 517 Fall 2023 - E2383. Grading Audit Trail</title>
		<link rel="alternate" type="text/html" href="https://wiki.expertiza.ncsu.edu/index.php?title=CSC/ECE_517_Fall_2023_-_E2383._Grading_Audit_Trail&amp;diff=151966"/>
		<updated>2023-12-02T19:04:04Z</updated>

		<summary type="html">&lt;p&gt;Ealopezg: /* Overview of Major Changes By Previous Teams */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=='''Introduction'''==&lt;br /&gt;
&lt;br /&gt;
===Problem Statement===&lt;br /&gt;
After an instructor gave a grade to an assignment, there is no way to track who gave the grade.&lt;br /&gt;
A grading audit trail must be created and the following information needs to be stored: &lt;br /&gt;
:1. When a grade is assigned by an instructor, there needs to be an indication of who did it and when it was done. &lt;br /&gt;
:2. Comments previously provided by other instructors must also be preserved.&lt;br /&gt;
&lt;br /&gt;
This information needs to be stored every time an instructor edits a grade/comment and clicks the save button.&lt;br /&gt;
&lt;br /&gt;
== '''Overview of Major Changes By Previous Teams''' ==&lt;br /&gt;
===[https://wiki-expertiza.csc.ncsu.edu/index.php/E1934_-_Grading_Audit_Trail E1934]===&lt;br /&gt;
[https://youtu.be/yyxX_kRYxLc Their Screencast]&lt;br /&gt;
&lt;br /&gt;
*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)&lt;br /&gt;
*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.&lt;br /&gt;
*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.&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
*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. &lt;br /&gt;
*In the view grading record page, remove the receiver column and add it to the title &lt;br /&gt;
*Restrict the column width on the grading record page &lt;br /&gt;
*Add comments on list_submissions.html.erb to indicate that the alignment was changed to fix code climate issues &lt;br /&gt;
*Ensure that white space changes are separate commits &lt;br /&gt;
*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&lt;br /&gt;
&lt;br /&gt;
===[https://wiki-expertiza.csc.ncsu.edu/index.php/CSC/ECE_517_Spring_2022_-_E2237:_Grading_audit_trail E2237]===&lt;br /&gt;
&lt;br /&gt;
*They fixed some issues that were causing the system to crash during testing&lt;br /&gt;
*Altered the Grading History view&lt;br /&gt;
*Explained the reasoning for changes made to files using diagrams and justifications&lt;br /&gt;
'''Problems/Issues''' &lt;br /&gt;
*Redundant files generated by scaffolding need to be removed, along with debugging code.&lt;br /&gt;
*Authentication could be done using existing utilities, no need to create their own. &lt;br /&gt;
*Some formatting changes could be done especially on how cells span in review report page. &lt;br /&gt;
*Code from previous implementation is a concern.&lt;br /&gt;
&lt;br /&gt;
=='''Proposed Solution'''==&lt;br /&gt;
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. &lt;br /&gt;
&lt;br /&gt;
We must first figure out exactly what changes and issues to address in their implementation by meeting with our mentor.&lt;br /&gt;
&lt;br /&gt;
Files to tentatively add:&lt;br /&gt;
*app/controllers/grading_histories_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     Calls the grading history view after validating Submission and Review Type.&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/grading_history.rb &lt;br /&gt;
'''&lt;br /&gt;
     Model for Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/review_grading_history.rb &lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Model containing specifics of Review Grading History. Inherits Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/models/submission_grading_history.rb &lt;br /&gt;
'''&lt;br /&gt;
     Model containing specifics of Submission Grading History. Inherits Grading History.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*app/views/grading_history/index_html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This is a view for grading audit trail, it will display all grading histories of a &lt;br /&gt;
     submission/review&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*spec/features/grade_histories_spec.rb&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Feature test to check if the grades appear in chronological order&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
*spec/features/helpers/grade_histories_helper.rb&lt;br /&gt;
&lt;br /&gt;
'''&lt;br /&gt;
     Helper file to facilitate the above mentioned feature test.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
=='''Implementation'''==&lt;br /&gt;
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. &lt;br /&gt;
&lt;br /&gt;
The files that are included already and we plan to alter without a doubt are&lt;br /&gt;
*app/views/reports/_review_report.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This is the view in which we will need to add a link to the Grade History/Record for reviews&lt;br /&gt;
'''&lt;br /&gt;
*app/views/assignments/list_submissions.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     This is the view in which we will need to add a link to the Grade History/Record for Assignment Grades&lt;br /&gt;
'''&lt;br /&gt;
'''Reimplemented'''&lt;br /&gt;
*app/controllers/grading_histories_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was added because it was from the previous teams implementation which concerned the MVC of the grading_history they created. It dealt with allowing only the correct people to view the grading history, checking the assignment type whether it be a submission or review, and indexing all the grading history for the assignment in chronological order.&lt;br /&gt;
'''&lt;br /&gt;
*app/models/grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was added to follow the previous teams MVC of the grading_history they created.&lt;br /&gt;
'''&lt;br /&gt;
*app/models/review_grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was reimplemented to follow the previous teams MVC of the ReviewGradingHistory&lt;br /&gt;
'''&lt;br /&gt;
*app/models/submission_grading_history.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was reimplemented to follow the previous teams MVC of the SubmisionGradingHistory&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
'''Modified'''&lt;br /&gt;
*app/controllers/grades_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was modified based off the previous teams implementation because when the method save_grade_and_comment_for_submission was called it should also create a grading history so that the grading audit can be created and added to. This was mainly focusing on the grading history of submissions and not reviews.&lt;br /&gt;
'''&lt;br /&gt;
*app/controllers/review_mapping_controller.rb&lt;br /&gt;
'''&lt;br /&gt;
     This file was modified based off the previous teams implementation because when the method save_grade_and_comment_for_reviewer was called it should also create a grading history so that the grading audit can be created and added to. This was mainly focusing on the grading history of reviews and not submissions.&lt;br /&gt;
'''&lt;br /&gt;
*app/views/assignments/list_submissions.html.erb&lt;br /&gt;
'''&lt;br /&gt;
     It was modified to add the new hyperlink to display the grading history of a submission.&lt;br /&gt;
'''&lt;br /&gt;
*config/routes.rb&lt;br /&gt;
'''&lt;br /&gt;
     It was to add the new route for grading histories&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
=='''Testing Plan'''==&lt;br /&gt;
The Testing that we will implement will build from E2237 since the previous tests crash and was something they solved. We also plan to implement test using the given Test Skeleton.&lt;br /&gt;
&lt;br /&gt;
=='''Future Scope'''==&lt;br /&gt;
This project may need further improvement since it does not seem like there should be an abundance of files added and perhaps using the MVC design is not necessarily needed.&lt;br /&gt;
&lt;br /&gt;
=='''Relevant Links'''==&lt;br /&gt;
* '''Github Repository:''' https://github.com/ErikLG360/expertiza&lt;br /&gt;
* '''Pull Request:''' https://github.com/expertiza/expertiza/pull/2696&lt;br /&gt;
* '''VCL Server:''' NOT Setup yet&lt;br /&gt;
&lt;br /&gt;
=='''Contributors to this project'''==&lt;br /&gt;
*Amulya Usem&lt;br /&gt;
*Erik Lopez-Godinez&lt;br /&gt;
*Gowtham Pollam&lt;br /&gt;
&lt;br /&gt;
*'''Mentor''': Srilekha Gudipati&lt;/div&gt;</summary>
		<author><name>Ealopezg</name></author>
	</entry>
</feed>