E2145. OSS Project Beige: Difference between revisions

From Expertiza_Wiki
Jump to navigation Jump to search
No edit summary
 
(9 intermediate revisions by 2 users not shown)
Line 1: Line 1:
This page provides description of Open source project on Expertiza.
This wiki page provides description of changes made under E2145 OSS assignment for Fall 2021, CSC/ECE 517.
 
==About Expertiza==
[http://expertiza.ncsu.edu/ Expertiza] is an open source project based on [http://rubyonrails.org/ Ruby on Rails] framework. 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==
When a participant updates the submission after the reading the review comments, the reviewer will have to review it again when the second review cycle starts. However, since the reviewer may have multiple submissions to review, some of which are updated, and some that are not, it becomes difficult for the reviewer to identify the updated submissions that need attention. Currently there is no way of identifying the difference between updated and stale submissions.
 
==Proposed Solution==
For identifying the submission status of the project in next review cycle, the reviewer should be able to quickly identify the submissions that need attention. This can be done in the UI of the reviewer’s page. The submissions can be color-coded using a scheme like the one used in the “Review Report” page.
* <span style="color:red">Red</span> – If the review has not been started
* <span style="color:orange">Orange</span> – If the review was started, but not completed
* <span style="color:brown">Brown</span> – Submission has been reviewed
 
This solution will allows reviewers to identify and prioritize their work without having to dig deep into individual submissions.
 
[[File:Workflow-Diagram.PNG|600px]]
 
The following diagram illustrates how the control would flow. As the user acts on a review, the status of the review changes.
 
==Tasks==
The following would be the key tasks:
* Add a new model to track the status of a review
* Upon change of review stage, update the data in the database.
* Change color in the UI based on the status of the review.
 
==Implementation==
===List of Changes===
We came up with the following model to capture the status of a review.
[[File:Review Status Map.PNG|1000px]]
 
We will keep of the stage a review is in. The following would be the three stages of a review:
*Ready : As soon as a student requests for a new review.
*Started : Once a student has started the review.
*Completed : Once a review has been submitted.
 
This will allow us to designate a unique color to each stage and update accordingly.
 
[[File:Ready.PNG|1000px]]
 
'''As soon as a review is assigned to a user, create a new entry in the Review Status table with the status of "Ready".'''
 
[[File:Started.PNG|1000px]]
[[File:Started1.PNG|1000px]]
 
'''Once a student starts doing the review, we fetch the record from Review Status table and update the status to "Started".'''
 
[[File:Completed.PNG|1000px]]
[[File:Completed1.PNG|1000px]]
 
'''Once a review is submitted from student's end we mark the status of the review to be "Completed".'''
 
==Testing==
===Rspec===
[[File:Test_Ready.PNG|600px]]
 
This basic test checks that a review gets status as "Ready" when the user requests for a new review.
 
==References==
#[https://github.com/expertiza/expertiza Expertiza on GitHub]
#[https://github.com/WintersLt/expertiza GitHub Project Repository Fork]
#[http://expertiza.ncsu.edu/ The live Expertiza website]
#[http://wikis.lib.ncsu.edu/index.php/Expertiza Expertiza project documentation wiki]
#[https://relishapp.com/rspec Rspec Documentation]

Latest revision as of 21:55, 20 October 2021

This wiki page provides description of changes made under E2145 OSS assignment for Fall 2021, CSC/ECE 517.

About Expertiza

Expertiza is an open source project based on Ruby on Rails framework. 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

When a participant updates the submission after the reading the review comments, the reviewer will have to review it again when the second review cycle starts. However, since the reviewer may have multiple submissions to review, some of which are updated, and some that are not, it becomes difficult for the reviewer to identify the updated submissions that need attention. Currently there is no way of identifying the difference between updated and stale submissions.

Proposed Solution

For identifying the submission status of the project in next review cycle, the reviewer should be able to quickly identify the submissions that need attention. This can be done in the UI of the reviewer’s page. The submissions can be color-coded using a scheme like the one used in the “Review Report” page.

  • Red – If the review has not been started
  • Orange – If the review was started, but not completed
  • Brown – Submission has been reviewed

This solution will allows reviewers to identify and prioritize their work without having to dig deep into individual submissions.

The following diagram illustrates how the control would flow. As the user acts on a review, the status of the review changes.

Tasks

The following would be the key tasks:

  • Add a new model to track the status of a review
  • Upon change of review stage, update the data in the database.
  • Change color in the UI based on the status of the review.

Implementation

List of Changes

We came up with the following model to capture the status of a review.

We will keep of the stage a review is in. The following would be the three stages of a review:

  • Ready : As soon as a student requests for a new review.
  • Started : Once a student has started the review.
  • Completed : Once a review has been submitted.

This will allow us to designate a unique color to each stage and update accordingly.

As soon as a review is assigned to a user, create a new entry in the Review Status table with the status of "Ready".

Once a student starts doing the review, we fetch the record from Review Status table and update the status to "Started".

Once a review is submitted from student's end we mark the status of the review to be "Completed".

Testing

Rspec


This basic test checks that a review gets status as "Ready" when the user requests for a new review.

References

  1. Expertiza on GitHub
  2. GitHub Project Repository Fork
  3. The live Expertiza website
  4. Expertiza project documentation wiki
  5. Rspec Documentation