Finer Grained Document-Level Matrix Permissions

Jira Number:


Related Jira Numbers:



OSP Matrix


Narjes Boufaden (CRIM), Jean-Marc Heneman (CRIM), Katharina Bauer-Öppinger (CRIM)


February 4, 2009

Demo Status and Date(s):

Status: Suggested
Date: Reviewed August 3, 2009 (branch & demo pending)

Part 1: Functional Description

Finer Grained Document-Level Matrix Permissions (1)

Summary (1)

The proposed functionality will provide shared control at the document level to a group of specific users. Moreover, the functionality of adding a private comment is enabled which is visible only for the owner of the document and the creator of the feedback.

Rationale (1)

The proposed enhancement is a requirement to enable interns to reflect on their hospital training, the difficulties they face in their trainings. They have to fill out forms prepared by a tutor where they can report their reflection on their trainings. The forms are organized in a matrix where columns are trainings and rows are competencies. The proposed enhancement is to allow reviewers to review the forms at the cell level with reviewing permissions at the document level. Currently, the permission to review a form was only at the cell level which means a reviewer had access to all forms of a cell or to none. Because these reflections can involve other residents and staff members' interaction, the resident wants to ensure that only a restricted group of people can review their reflection. In addition, the reviewers are chosen by the intern who can add new participants or remove the reviewing rights at any time. The proposed enhancement ensures confidentiality at the document level in a cell matrix and is a step toward more collaborative work between peers.

An appendant feature of the proposed enhancement is the new review type "private feedback". Currently, reviewers can give feedbacks to documents which are visible for everyone who has access to the cell of the document. The new type of private comments is only viewable by the writer of the feedback and the owner of the document. Using private feedbacks, reviewers feel freer to add constructive criticism which again enriches the collaborative work.

Origin (1)

The origin is the Faculty of Medicine at Université de Montréal. The department wishes to foster collaborative learning by sharing and exchanging reflections with other colleagues.

User Stories (1)

Actors and Stakeholders


Functional Details (may be added after community demo) (1)

The resident who wishes to invite individuals will select them from a list of possible individuals. For now, the list of possible individuals is generated from the list of the site users. An enhancement for this configuration would be to define groups of users and allow users not in the site to be part of the groups. The invited people will only see documents they are granted to review and can add private comments which are only viewable for the resident.

Interaction and Implications (1)

A participant can grant reviewing permissions by document (filled form) in a matrix cell. A reviewer can review only the forms that were granted by the owner of the forms. Reviews are not viewable by everyone with access to the matrix cell but only by the reviewer and the owner of the document.

Diagrams and Mockups (3)

Invite a group of individuals to review a reflection.




1. Enter cell of matrix that already
contains forms or create forms in cell.

2. Click on button next to form for
selecting reviewers for this document.

3. Change reviewing permissions by
addingor removing users to/from the
list of selected users. Selected users
receive an invitation via e-mail.

4. Result: User "resident2" has access
to form "Reflection on collaboration"
and can review it.

5. Result: User "resident3" has no access
to form "Reflection on collaboration"
and cannot see that it exists.

Read and comment a reflection.



1. See accessible reflections and click
on button to add a private feedback.

2. Result: Creator can review his/her
given private feedback.

3. Result: Owner of document can
review private feedback of reviewer.

4. Result: User "resident3" has no
access to private feedback created
by user "resident2".

Community Acceptance (4)

Elements of this enhancement have been raised on sakai-dev@collab.sakaiproject.org and portfolio@collab.sakaiproject.org. Also, during the meeting of Monday 2009-02-03 11 am, we discussed details and that seem to raise interests among participants.

Part 2 of the Proposal for Enhancement Template: The Specification
The specification should be filled out once the feature is clearly defined.

Specification Template (5)


Invitation of Users for Reviewing Reflection

Prerequisite Conditions or Step:

Document (filled form) created in a matrix cell.


By default no user (except owner of document) has reviewing permissions. Users of current site are shown in selector for document-level permissions. Selected user IDs are stored as a property (IDs are connected to a String) in resource of document. After confirmation of selected users, the invitation is sent via e-mail to the reviewers.

Post-step Conditions or Next Step:

Document-Level Matrix Permissions

Document-Level Matrix Permissions

Prerequisite Conditions or Step:

Resident invited users to review his/her reflection. Reviewers received an invitation via e-mail. Users' IDs are stored in resource of document. 


Before showing a document in a matrix cell, its resource property which includes IDs of permitted users is read. If current user ID is stored in resource of document, he/she can see the specific document.

Post-step Conditions or Next Step:

Invited users can review document and add a comment.

Addition of Private Feedback

Prerequisite Conditions or Step:

Invitation for reviewing reflection. User has access to document.


User adds a private feedback by clicking on button next to document and using the same form as for adding a "normal" feedback. This feedback uses new review type "private feedback".

Post-step Conditions or Next Step:

Access to private feedback.

Access to Private Feedback

Prerequisite Conditions or Step:

Invited reviewer added private feedback to a reflection.


Before showing a review document in a matrix cell, type of review is checked for "private feedback". If document has type "private feedback", current user ID is compared with the creator ID of review and with the owner ID of document (filled form). Only those users are permitted to access a private feedback.

Post-step Conditions or Next Step:

Reviewing process continues as previously implemented.


Quality Metrics

The ability of selecting reviewers for each document in a matrix cell gave more flexibility to the matrix. In the same screen, the user can add a form and select it for reviewing by individuals chosen by him.



Outstanding Issues

Following the recommendations of the SAKAI community, we will be refining the concept of private feedback at the document level by allowing groups of users to be defined and selected in the dialog box.