Peer Review Feature - Backporting to 2.9.x
There are here a list of JIRAs related with Peer Review Feature, developed by Bryan Holladay (Longsight) and included in Sakai 10.
I have backported (with some help of Alex Ballesté) almost all the JIRAs for 2.9.x, but it seems that there aren't resources enough available to merge them and to do QA in 2.9.x, so I document the process and attach the patches right here, just in case somebody wants to include this cool feature in their 2.9 deployment as we plan to do soon at UPNA (Spain).
Our QA in our own test server has gone very fine. No issues found so far, except a minor i18n issue that we are going to send to JIRA. (Edit: reported as - SAK-27829Getting issue details... STATUS )
Of course, if you find any issue or error in this document or in the patches, do not hesitate in documenting it here or just contact me to fix it.
Edit (2014-08-21): Bryan Holladay comments that he already backported Peer Review feature for 2.9.x in a branch for Duke. The patch does not apply well at all into 2.9.x because that branch has other local customizations.
Duke's 2.9.x branch is in https://source.sakaiproject.org/svn/msub/duke.edu/assignment/branches/assignment-2.9.x
The list of patches applied to that branch is in https://source.sakaiproject.org/svn/msub/duke.edu/assignment/branches/assignment-2.9.x/CUSTOMIZATIONS.txt
And if somebody wants to check the Peer Review patch applied to that branch (as I did), it can be downloaded with this command:
svn diff -r 311730:311731 https://source.sakaiproject.org/svn/msub/duke.edu/assignment/branches/assignment-2.9.x/ > patch.txt
Basic information
If you want to run the feature, there are some changes you must do previously in your installation:
Set the next property in your sakai.properties:
assignment.usePeerAssessment=true
Create a new table in your database. The script (for MySQL) is included in https://source.sakaiproject.org/svn/reference/trunk/docs/conversion/sakai_10_0_mysql_conversion.sql
A similar script for Oracle can be found there. The SQL needed (for MySQL) is this one.-- ------------------------ -- -- SAK-23812 Peer Review feature for Assignments -- -- ------------------------ CREATE TABLE ASN_PEER_ASSESSMENT_ITEM_T ( SUBMISSION_ID varchar(255) NOT NULL, ASSESSOR_USER_ID varchar(255) NOT NULL, ASSIGNMENT_ID varchar(255) NOT NULL, SCORE int(11) NULL, REVIEW_COMMENT varchar(6000) NULL, REMOVED bit(1) NULL, SUBMITTED bit(1) NULL, PRIMARY KEY(SUBMISSION_ID,ASSESSOR_USER_ID) ); create index PEER_ASSESSOR_I on ASN_PEER_ASSESSMENT_ITEM_T (SUBMISSION_ID, ASSESSOR_USER_ID); create index PEER_ASSESSOR2_I on ASN_PEER_ASSESSMENT_ITEM_T (ASSIGNMENT_ID, ASSESSOR_USER_ID); -- -------------------- -- -- END SAK-23812 Peer Review feature for Assignments -- -- --------------------
Very important: If you run Peer Review in a cluster environment, you should be aware of - SAK-23130Getting issue details... STATUS and - SAK-13776Getting issue details... STATUS . It seems that jobScheduler can fail if it is running in several nodes of a cluster. The solution is enabling jobScheduler in only one of the servers and disabling it in the others.
The patch
This big patch includes the next JIRAs, all related to Peer Review. I have each JIRA isolated in a single patch that I will attach separately, in case somebody prefer to apply them step by step.
To apply it, put it in assignments folder and run (in Linux) the next command:
patch -p0 -l < patch_PeerReview_Completo_SAK-23812-25609-25610-25611-25638-25639-25644-25645-25660-25666-25719.patch
Important: You must also apply SAK-25897 separately in jobscheduler folder. Patch is attached below.
The JIRAs
- SAK-23812Getting issue details... STATUS - The main JIRA, with a lot of revisions. There are several conflicts with 2.9, mainly in AssignmentAction, but not difficult to adjust them.
patch_PeerReview_SAK-23812_Completo.patch
- SAK-25609Getting issue details... STATUS - Subtask of SAK-23812. Straightforward backport.
patch_PeerReview_SAK-25609.patch
- SAK-25610Getting issue details... STATUS - Subtask of SAK-23812. Straightforward backport.
patch_PeerReview_SAK-25610.patch
- SAK-25611Getting issue details... STATUS - Subtask of SAK-23812. Straightforward backport.
patch_PeerReview_SAK-25611.patch
- SAK-25638Getting issue details... STATUS - Straightforward backport.
patch_PeerReview_SAK-25638.patch
- SAK-25639Getting issue details... STATUS - Three revisions. Issues backporting this patch because it collides with Group Submissions feature, not included in 2.9. Some diff tweaks were necessary.
patch_PeerReview_SAK-25639_Completo.patch
- SAK-25644Getting issue details... STATUS - A minor issue with a property changed in another JIRA. Quite straightforward backport.
patch_PeerReview_SAK-25644.patch
- SAK-25645Getting issue details... STATUS - Straightforward backport.
patch_PeerReview_SAK-25645.patch
- SAK-25660Getting issue details... STATUS - A minor issue because 2.9 uses deprecated StringUtil instead StringUtils. Quite straightforward backport.
patch_PeerReview_SAK-25660_Completo.patch
- SAK-25666Getting issue details... STATUS - Straightforward backport.
patch_PeerReview_SAK-25666.patch
- SAK-25716Getting issue details... STATUS - Subtask of SAK-23812. It is a straightforward backport and it is included by error (my fault) in SAK-23812 patch, so you can ignore it.
- SAK-25719Getting issue details... STATUS - Straightforward backport.
patch_PeerReview_SAK-25719.patch
- SAK-25897Getting issue details... STATUS - It is addressed in - SAK-26050Getting issue details... STATUS - Straightforward backport. This patch is for jobscheduler tool.
patch_PeerReview_jobscheduler_SAK-26050.patch
Not backported JIRAs
There is a single JIRA that I have not been able to backport.
- SAK-27787Getting issue details... STATUS - Peer Assessment Student View or Reviews looks ugly
The reason is explained in the comments. This patch uses jQuery accordion widget, which seems to work oddly with 2.9 jQuery version.
A patch including a more recent jQuery library could be done, but I think that is not a good practice at all. And this issue is not a big deal IMHO. If anybody desire to apply it anyway, a patch for Duke University's 2.9.x is included in SAK-27787.