CSC/ECE 517 Fall 2019 - E1997. Issues related to meta-reviewing
Problem Background
In Expertiza, meta-review is a feature that enables a third party to evaluate the quality of feedback that a reviewer gives a reviewee. meta-review is an important feature that can help students become better reviewers for their peers by providing detailed feedback that is actionable and positively formulated. Unfortunately, this feature is broken and the following issues were identified.
Issue1
Issue Description
When a user requests a new meta-review, (s)he should be able to click on the Begin button, which should redirect him/her to the meta-review questionnaire and when the user returns back (to the page where he can view the reviews and meta-reviews, by clicking on Others’ work in his/her assignment), (s)he should be then able to see view and update links for the meta-reviews (s)he has performed.
But the issue is Begin and Edit are not working for the given scenario.
Test Plan
Files to be modified
response.html.erb
Issue2
Issue Description
The number of meta-reviews(refer to the snapshot below),should decrease when a user requests a meta-review.Also, the button to request a new meta-review should not disappear until the total number of reviews assigned has reached the allowed limit.
Test Plan
Files to be modified
Design strategy For Issue1 and Issue 2
The flow chart below describes the design we choose to implement these two issues
Issue3
Issue Description
For an assignment, when 'Use Metareview Deadline' is unchecked, it means meta reviews are not enabled for that assignment. The check box is as below
As said, when this box is unchecked, it means there is no meta reviewing system for this assignment. The issue is, there are some meta review related fields that show up even if the above box is unchecked. Like in below image
Also, when a new issue is created, the default # of meta-reviews allowed and required should be null. As soon as someone checks the Has meta-review Limit box on the “Review Strategy” tab, the UI should fill in 3 and 3 as the required and allowed number. Of course, the user can change this number before submitting.
Design strategy
A boolean style variable, named say 'isMetaEnabled' which reflects the metareview enabled/disabled status is needed. When user checks 'Use metareview deadline' in Due dates tab, the isMetaEnabled will be set to true and vice versa.
This isMetaEnabled shall reside and gets initialized to 'True'(metareview enabled) in the assignments_controller.rb When user toggles the checkbox, the isMetaEnabled value shall be toggled accordingly.
In the Review Strategy tab, the metareview fields(3 of them) are conditioned to be displayed only if isMetaEnabled is set to true.
Pictorial representation of above explanation
Test Plan
1. Ensure that when an assignment is created, the number of meta reviews is set to null. 2. Ensure that the meta review fields in the review strategy tab are visible only when 'Use metareview deadline' is enabled in Due dates tab.
Files to be modified
1. _review_strategy.html.erb Source file: https://github.com/expertiza/expertiza/blob/master/app/views/assignments/edit/_review_strategy.html.erb
2. _due_dates.html.erb Source file: https://github.com/expertiza/expertiza/blob/master/app/views/assignments/edit/_due_dates.html.erb
3. assignments_controller.rb Source file: https://github.com/expertiza/expertiza/blob/master/app/controllers/assignments_controller.rb