CSC/ECE 517 Spring 2022 - E2241: Heatgrid fixes and improvements
This page provides information about the refactoring work done on the reputation web service controller as part of the OSS project.
Team
Mentor
- Nicholas Himes (nnhimes)
Team Members (PinkPatterns)
- Eshwar Chandra Vidhyasagar Thedla (ethedla)
- Gokul Krishna Koganti (gkogant)
- Jyothi Sumer Goud Maduru (jmaduru)
- Suneha Bose (sbose2)
Heat Grid
Heat Grid refers to a part of view in expertiza that shows review scores of all the reviews done for a particular assignment. It shows scores given for each rubric by peer reviewers. This is used by instructors to assign scores to individual assignments and by students to view review scores of their assignment. Our project scope involves dealing with fixing issues related to the heat grid and any subsequent bugs that might arrive.
Issues identified
Restrict teammates from reviewing their own work (Issue #2019)
There are some instances where a student was shown as reviewing his/her team. This is impossible and is classified as a bug. This must be dealt with. Test cases must be extensively added so that we can be notified if the bug occurs again.
Deal with the metrics of the heat grid (Issue #1869)
metric-1 column name in the heat grid follows bad naming convention. It doesn't explain what the column refers to. This must be changed to make the column name more apt.
As of now, the heat grid uses only one metric (metric-1). We must facilitate the system for addition of new metrics. Instructors should be able to toggle between various metrics as per their preferences. This can be done by the use of a drop down menu.
Current Implementation
Plan of work
Files to be targeted
Issue #1869
For Heat grid
- app/views/grades/_view_heatgrid.html.erb
- app/views/grades/view_team.html.erb
- app/helpers/grades_helper.rb
- app/controllers/grades_controller.rb
- app/models/vm_question_response.rb
- app/models/vm_question_row.rb
For Assignment
- app/views/assignment/edit/_general.html.erb
- app/controllers/assignments_controller.rb
Test Plan
- Capybara Test cases for testing the UI of heat grid view with the expected metric for the respective assignment and the UI of team view with relevant metric selected with all other metrics in the dropdown
- Spec test cases for testing the grades controller and assignment controller to check if they are returning the values as expected
- Unit test cases will be added to verify the logic behind the methods to calculate the values for their metrics
Important Links
- GitHub repository link: https://github.com/EshwarCVS/expertiza
- Project Description Document: https://docs.google.com/document/d/1H0BjzMBz5it7Wckhegq4LXhMi8RVctTwVzP2x9gnFCo/edit#heading=h.tqdrrd12xs4x
- GitHub Issue #1869: https://github.com/expertiza/expertiza/issues/1869
- GitHub Issue #2019: https://github.com/expertiza/expertiza/issues/2019