CSC/ECE 517 Fall 2022 - E2282. Fix teammate-review view: Difference between revisions
No edit summary |
No edit summary |
||
Line 74: | Line 74: | ||
==== Problem ==== | ==== Problem ==== | ||
Student names are visible in the teammate reviews tab, even when the user is in the anonymized view. | Student names are visible in the teammate reviews tab, even when the user is in the anonymized view. | ||
==== Solution ==== | ==== Solution ==== | ||
We plan to remove the team member name from being displayed when using anonymized view by adding some changes to the following files. | We plan to remove the team member name from being displayed when using anonymized view by adding some changes to the following files. |
Revision as of 02:40, 15 November 2022
Problem Description
In Expertiza, both students and instructors are able to view a student's teammate reviews. On the reviews page, only a single heatmap is shown which does not provide a full representation of the student's performance. In addition, it is unclear if the heatmap is displaying information about the reviews the student has written or received. The heatmaps on the instructor and student views are not labeled and do not provide clarity on the information they are displaying.
Proposed Changes
Calculate Composite Review Score
Problem
It would be useful for the instructor to see a composite score derived from all of the reviews similar to the average score shown on the students review page. Currently, the code only displays the average score for each row of the review table on the instructors view. The image below shows where we would like to display the composite score.
Solution
The previous semester's team calculated the composite value within the view page which does not follow the design principles of this course. We plan to move this mathematical operation to the appropriate model where it where will be accessible to any view that requires a composite score for its heatmap.
The problem will have to be solved through changes in the two files listed below:
rscore.rb
This file contains the logic for doing mathematical functions for review tables. In the init function, the average score for each table is calculated. A new method can push the average score for each review into an array that can later be used to calculate the average across all reviews. Another method can reference this array to calculate the composite score across each review.
_view_heatgrid.html.erb
This file will call the composite score method described above to populate a string tag that displays the average score for all reviews on a view.
Improved Handling of Relevant Reviews
Problem
The heatmap displayed on the Student view does not give the full representation of the group performance. The view should show both the reviews received from a students teammates as well as external reviews. The image below shows that the students can not see their teammates reviews even when the instructor checkbox for viewing teammate reviews is selected.
Solution
We will need to improve how the review table(s) intended for display are generated.
The problem will have to be solved through changes in file listed below:
grades_controller.rb
This file contains the logic for orchestrating the build of the heatmap tables. The logic is this controller will need to be updated to populate the table array with reviews from each team participant.
view_team.html.erb
This file controls what tables are displayed when an instructor views a team. This view will needed to be updated to include the display the missing tables.
Improved Display of Review Heatmap
Problem
This problem contains many parts. Firstly, the student scores view does not even show a heatmap of reviews at all as seen below.
This will have to be included with the condition that the instructor has selected that the student can view the reviews in the assignment options. Additionally, in the display of the heatmap itself there is no indication if the reviews displayed are reviews about the student signed in or made by the student signed in as seen below.
A more descriptive label will have to be added to show this. Lastly, a composite score will have to be displayed under each heatmap to average the scores that the student received.
Solution
The problem will have to be solved through changes in two erb files listed below:
_view_heatgrid.html.erb
This file contains the logic to display the actual heatgrid to the user. It will have to be modified in two ways. Firstly, we will have to add a conditional header that will either display that the heatgrid shows reviews for the student or by the student depending on the type of questionnaire that it is displaying. Secondly, we will have to add a place under the heatgrid to display the composite score of that heatgrid. In the previous attempt at this project, the group added the calculation logic for the composite score to this file which is incorrect because it is an erb file. Instead, this file will contain a call to a funtion in the model that will calculate the value and return it for display.
view_team.html.erb
This file contains the logic to display the page where the student views the questionnaires. We will have to add logic to display the reviews of that student if the assignment is set to have show teammate reviews be true.
Preservation of Anonymized View Naming Convention
Problem
Student names are visible in the teammate reviews tab, even when the user is in the anonymized view.
Solution
We plan to remove the team member name from being displayed when using anonymized view by adding some changes to the following files.
user.rb
In user file the anonymized user function is defined and when called it checks and returns True if a particular user is in anonymized view or else returns False. We will be improving the conditional logic to display the user name only when not present in anonymized view.
_view_heatgrid.html.erb
The file contains the logic to display the heatgrid to the user. When we make the changes to user file we will need to make some changes in this file to not display the user name in anonymized view.