CSC/ECE 517 Spring 2019 - Project E1931. Conflict notification

From Expertiza_Wiki
Jump to navigation Jump to search

This wiki page is for the description of changes made under ECE517 SPRING 2019 PROJECT E1931 CONFLICT NOTIFICATIONS

Problem Statement

Current conflict notification sends an email to the instructor whenever two reviews for the same submission differ "significantly" on their scoring (the threshold is specified in the "Notification limit" on the Rubrics tab of assignment creation). Right now an email is sent at any such time one of these conflicts happen, however, it does not link to the particular review or submission which initiated the notification.

Existing Feature Description

Currently, this feature works as follows:

Whenever a new review is submitted, it is compared with the average of the previously submitted reviews. If the difference between the new submission and existing average is more than the threshold limit set, then a mail is sent to the instructor. With every review submitted for an assignment of a particular student, the average is updated.

Flaws with the existing Implementation

No view exists to analyze the conflict report

Currently whenever the conflict happens,a summary link is sent to the instructor which contains the score of all the reviews but there is no view where the instructor can see all the conflicts and analyze them.

Incorrect email message links

The existing email body uses hardcoded URLs mentioned in models/response.rb file in the method notify_instructor_on_difference. Being hardcoded, these links wouldn't work on other servers where Expertiza is running. For Example, if the setup is done on localhost, the links will not be functional.

  • Conflicting Review which triggered the mail
  • Summary of all the reviews

What needs to be done

The scope of this project is to send an email notification to instructor which will contain links to the conflicting review, summary link, and a link to report which can be used for analyzing. The new report will have the information like the Team(having conflicts), the standard deviation for the team review score and pictorial representation of all the review scores.

Implementation

  • Feature 1: No hardcoded URLs

Hardcoded URLs will be managed by the config file in order to make these links functional on every server running Expertiza

  • Feature 2: New view to show the conflict report

A new view of the report which will have the following information:-

  • Name of the team
  • Standard deviation
  • Graph showing a plot of the review scores vs the team name

This view will have a report of all the teams on one page. This report link will be added to the mail that is already being sent whenever some conflict happens.

  • Sample view of the new report -

Files to be changed in this Project

A new option will be added to view the conflict report in the _searchbox.html.erb.A new view will be added for the same.

Test Plan

To test code implementation and correctness of the modified feature, we plan to do the following tests:-

  • Run and pass existing RSpec Tests
  • Develop New RSpec Tests for the new code
  • UI testing on the deployed project

Rspec Testing

Rspec test files to be updated -

[Screenshots to be populated after coding is complete]

UI Testing

[Screenshots/video to be populated after coding is complete]

References

Team

Abhishek Arya
Bhargav Deshpande
Ramandeep Kaur
Udita Chattopadhyay