CSC/ECE 517 Spring 2019 E1926 Improve self-review: Difference between revisions

From Expertiza_Wiki
Jump to navigation Jump to search
Line 94: Line 94:


===Files identified to be modified===
===Files identified to be modified===
*app/controllers/grades_controller.rb
*app/models/response_map.rb
*app/models/author_feedback_questionnaire.rb
*app/models/vm_question_response.rb
*app/models/review_questionnaire.rb
*app/models/teammate_review_questionnaire.rb
*spec/controllers/grades_controller_spec.rb
*spec/models/assignment_particpant_spec.rb
*app/models/assignment_participant.rb
*app/models/vm_question_response_row.rb





Revision as of 20:14, 26 April 2019

E1926. Improve self-review, Link peer review & self-review to derive grades

This page provides a description of the Expertiza based Semester project.


About Expertiza

Expertiza is an open source project based on Ruby on Rails framework. The Expertiza allows the instructor to create new assignments and customize new or existing assignments. It also allows the instructor to create a list of topics the students can sign up for. Students can form teams in Expertiza to work on various projects and assignments. Students can also peer review other students' submissions. Expertiza supports submission across various document types, including the URLs and wiki pages.


Problem Statement and Overview

The Expertiza provides an option for students to self-review their submissions. In which, each member of the team gets to evaluate their project on the same criteria as the peer review. However, these scores contribute in no way to calculate the overall score for their assignment. So, we focus on improving the self-review system and to extend its functionality. Some of the objectives we try to achieve for this project are as follows –

  • Provide a formula that takes both the peer review score and self-review score into account for calculating the composite score.
  • The composite score should get higher as the self-review score gets closer to the peer review score.
  • Make sure that the peer review scores are not visible before the self-review submission.
  • Display the composite score on the “View Scores” page.
  • Display the self-review scores in the "View Scores" and heat map of peer-reviews, showing that they are a different type of review.

The need for the self-review section is to know how well the students can judge their work and understand how to evaluate their flaws and rectify them. Also, if they can score themselves close to their peers, then it means that they have good self-assessment skills and they are being honest about what they think of their work.


Previous Process

Previously, Expertiza allowed students to submit an assignment and provides a link for self-review. Once the self-reviewing was done, the submitted score gets stored in the database but was not used in calculating the overall score of the assignment for the student. Because of this, students can score themselves higher than what they should get. This helps students in no way. So, to make productive use of this score and to help students learn self-evaluating, we have made some changes in the review score calculation which is explained in the section below.

New Process

We derived a new formula that takes into account the self-review score and calculates a composite score, which will be the student's final score. After we made the changes needed, now the students are able to see their peer review score, Final score and the Final derived peer review score displayed on the “View scores” page.

Add the pic

These scores will also be reflected in the "stats" as shown below

Add stats pic

In the same way, we will make some changes to the instructor’s page as well because the instructor should be able to see the self-reviewing score from each member of the team, displayed along with the peer review score for that assignment.

Application Flow

  • The above image shows how the instructor will allow users to give a self-review on the work they have done. The instructor has to go to the review strategy tab while assignment creation to enable the self-review option.
  • User then can see the self-review option on the assignment to do tasks to give a self-review.
  • In the view scores page, a new column showing the self-review scores will be displayed.

Use case

  • Actors:
  1. Instructor: This actor is responsible for creating assignments and adding students to the assignment. 
  2. Student:    This actor is responsible for submitting, self-reviewing and viewing the scores. 
  • Actions
  1. Instructor: Create Assignment, Enable Self-Review.
  2. Student: Login, Add work and Submit, Submit Self-Review, View Scores.

Formula Proposed

We have to implement a way to combine self-review and peer-review scores to derive a composite score. We have to come up with a formula to derive the composite score as below.

  deviated_score_scale = (100 - abs(self_review_score - mean(all_peer_review_scores)))/100;
  derived_score =  deviated_score_scale * peer review score;

The proposed formula first calculate by how much scale the self-review has deviated from the average peer-review score, the participant got.

Then the derived score can be calculated by multiplying that scale with the actual peer-review score the participant got.


Test Plan

  • Once set up is done, figure out the flow of code and files which would be modified to implement the proposed solution.
  • We shall Design a way to show them in the regular “View Scores” page and the alternate (heat-map) view.
  • Then implement a way to combine self-review and peer-review scores to derive a composite score
  • Implement the functionality in a way that the author(s) should be required to submit their self-evaluation(s) before seeing the results of their peer evaluations.
  • Perform testing using “Cucumber” and “rSpecs”

Files identified to be modified

  • app/controllers/grades_controller.rb
  • app/models/assignment_participant.rb
  • app/models/response_map.rb
  • app/models/vm_question_response.rb
  • app/models/vm_question_response_row.rb
  • app/views/grades/_participant.html.erb
  • app/views/grades/_participant_charts.html.erb
  • app/views/grades/_participant_title.html.erb
  • app/views/grades/view_team.html.erb
  • app/views/reports/_self_review_report.html.erb

References