CSC/ECE 517 Fall 2019 - E1939. OSS Project Juniper: Bookmark enhancements: Difference between revisions

From Expertiza_Wiki
Jump to navigation Jump to search
No edit summary
No edit summary
Line 1: Line 1:
=Project Juniper Bookmark enhancements=
Peer Review Assessment Credentials
The credentials for Peer review assessment for Bookmark Enhancement project are
Instructor Login: username => instructor6 password=>password
Accounts for Impersonation: username => student6340, student6341
Assignment => Exercises, CSC456, Fall2015
== Expertiza ==
== Expertiza ==


Line 19: Line 8:




'''
 
==Project Juniper Bookmark Enhancements==
==Bookmark Enhancements==
'''
 
The Bookmark functionality in expertiza is in its nascent stage which allows user to provide feedback on the projects that he is interested in. It also allows the author to rate the bookmarks that he has received for his project. Project Juniper Bookmark Enhancements is an attempt to make the bookmarks more user-friendly and credible. We have improved the functionality for an author to descriptively evaluate the bookmark  that he has received on his project using rubrics as set by the instructor.
The Bookmark functionality in expertiza is in its nascent stage which allows user to provide feedback on the projects that he is interested in. It also allows the author to rate the bookmarks that he has received for his project. Project Juniper Bookmark Enhancements is an attempt to make the bookmarks more user-friendly and credible. We have improved the functionality for an author to descriptively evaluate the bookmark  that he has received on his project using rubrics as set by the instructor.


'''
 
== Tasks that were identified  ==  
=== Tasks that were identified  ===  
'''
 
*Fixing the “Back” button  
*Fixing the “Back” button  
::When user visits “Create Bookmarks" and  "View Bookmarks", the back button was not functional which refrained the user from going back to the Signup-sheet. Now this issue has been fixed which in future will allow to any contributor to use this back functionality.
*Validations on the form for adding bookmarks were missing
*Validations on the form for adding bookmarks were missing
::The form for adding bookmark allowed malformed URLs to be entered into the system. Now, the bookmarks can be added only when user enters legitimate URL while creating the bookmark..
*Allowed the creator of bookmark to rate himself  and the average rating calculation was wrong
*Allowed the creator of bookmark to rate himself  and the average rating calculation was wrong
:: When multiple users rated the bookmark, the average rating for the bookmark was wrongly calculated. Now, this issue is fixed as well as the creator cannot rate his own bookmark. This would ensure genuine ratings.
*Bookmark Rating Questionnaire could not be created
*Functionality for review of  bookmarks using rubric
::Users  other than the creator of the bookmark can now review the bookmark and give feedback about the quality of the same in a subjective format using the rubric as set by the instructor.
 
== Solutions Implemented ==
 
 
'''Fixing the Back button:'''
When user visits “Create Bookmarks" and  "View Bookmarks", the back button was not functional which refrained the user from going back to the Signup-sheet. Now this issue has been fixed which in future will allow to any contributor to use this back functionality.
 
How to reproduce the error
 
Files Changed:
:app/controllers/bookmarks_controller.rb
:app/controllers/sign_up_sheet_controller.rb <br/>
:app/views/bookmarks/list.html.erb <br/>
:app/views/bookmarks/new.html.erb <br/>
The changed code can be found  <span class="plainlinks">[https://github.com/expertiza/expertiza/pull/1540/commits/aad5803b1e2bb49c17cff082d9d0661eb5e5f4aa?file-filters%5B%5D=.erb&file-filters%5B%5D=.rb&file-filters%5B%5D=No+extension#diff-dfb6f1f1b681adb17aeaef26d931880b here]</span>
The screencast can be found <span class = "plainlinks">[here:]</span>
 
 
'''Bookmark Validations '''
The form for adding bookmark allowed malformed URLs to be entered into the system. Now, the bookmarks can be added only when user enters legitimate URL as well as all the fields are completely filled. Validations were added as a security measure to prevent misuse.
 
How to reproduce the error
 
Files Changed:
:app/controllers/bookmarks_controller.rb
:app/models/bookmark.rb
The changed code can be found <span class = "plainlinks">[https://github.com/expertiza/expertiza/pull/1540/commits/4f70a3dc25dddf04c671186d52f0942b744d91da here:]</span>
The screencast can be found <span class = "plainlinks">[here:]</span>
 
 
'''Self Rating of Bookmarks and average calculation'''
When reviewing the bookmark, the average rating for that bookmark shown was calculated wrongly and showed average rating for the bookmark that wasn’t reviewed. Also, the user who created the bookmark could rate himself.  
Now, the user cannot rate his own bookmarks and the average rating is calculated perfectly after one or more people have reviewed it.
 
How to reproduce the error
 
Files Changed:
:app/controllers/bookmarks_controller.rb
:app/views/bookmarks/list.html.erb
The changed code can be found <span class = "plainlinks">[https://github.com/expertiza/expertiza/pull/1540/commits/3ad53b0cbd9b06f4a3a3ff85311c38f5b5672970?file-filters%5B%5D= here:]</span>
The screencast can be found <span class = "plainlinks">[here:]</span>


'''Solutions:
'''
* Fixing the Back button:
::When a logged in user goes to “View Bookmark” or “Create bookmark“ page, he cannot to go back to the Sign-up sheet using “back button”.


'''Review bookmark using rubric functionality'''
* The form for adding bookmarks had no validations
The bookmark functionality earlier only allowed for the users to rate the bookmark and not give feedback about the the quality of the Bookmark. Now, feature is added so that the instructor can decide whether to allow for bookmark to be just rated or a have a rubric . The instructor can customize the questions in the rubric.  The rubric once created by the instructor can be used for multiple assignments and also multiple rubrics can be created for different types of assignments.  
::Validations were added as a security measure to prevent misuse.


To view this:
How to reproduce the error
1. Do steps 1-3 as above and click on add bookmark button
2. The form will not allow malformed expressions as input


3. Average Calculation:
Files Modified
When using the Scale method for reviewing the bookmark, the average rating for that bookmark shown was calculated wrongly and showed average rating for the bookmark that wasn’t reviewed.  
:app/controllers/questionnaires_controller.rb
:app/controllers/response_controller.rb
:app/models/questionnaire.rb
The screencast can be found <span class = "plainlinks">[here:]</span>




New Features Added
==Deployment==
• Functionality for the author to review the  bookmarks using descriptive form
This application with the mentioned changes have been deployed on VCL and can be found at [http://152.46.19.205:8080 http://152.46.19.205:8080]
Now the author can rate the bookmark as well as review it with the rubric as it is set by the instructor.


To view this:
'''Peer Review Assessment Credentials
1. Log in as an instructor and in the edit assignment part, ensure that ‘Allow participants to create bookmarks?’ checkbox is checked.
'''
2. Impersonate as user and then add bookmarks
The credentials for Peer review assessment for Bookmark Enhancement project are
3. The owner of that project should be able to see all the bookmarks created for his project and can rate the bookmark.
Instructor Login: username => instructor6 password=>password


Accounts for Impersonation: username => student6340, student6341
Assignment => Exercises, CSC456, Fall2015
== Testing  Plan ==


===Testing From UI ===


Bugs that are still to be fixed:
* Enable Bookmarks
1. When the instructor doesn’t allow the bookmarks to be created, we can still add the bookmark but cannot rate or review it.
# After logging in as instructor, go to Manage > Assignments
# Select Edit under Actions for assignment
# Under Topics Tab select 'Allow participants to create bookmarks?' to allow bookmarks
# Go to Rubrics tab, under 'Bookmark Rating' select the Bookmark review questionnaire to use the rubric for reviewing the bookmarks , else if only Rating of bookmarks should be allowed select None.  


Testing From UI:
'''Note''': The error popping 'You did not specify all the necessary rubrics. You need [BookmarkRating] of assignment Exercises before saving the assignment. You can assign rubrics here.' when None is selected in Bookmark rating is out of scope of the current project. Although the error pops up, the functionalities are working as it is expected  and the error can safely be ignored from point of view of this project
* Fixing the back Button
'
#    Log in as an instructor and impersonate as a student (student6340 or  student6341)
* Fixing the back Button & Validations
#    Log in as an instructor and impersonate as a student using the credentials given above
# Select ‘Exercises’ assignment and go to the Signup sheet
# Select ‘Exercises’ assignment and go to the Signup sheet
# We can see a list of projects with 2 columns to add or remove the Bookmark, select any of them
# We can see a list of projects with 2 columns to add or remove the Bookmark, select any of them
# You’ll be redirected to the corresponding page where the back button will be visible
# You’ll be redirected to the corresponding page where the back button will be visible
#      Select add bookmark and the form can be tested for Validations. 
*Create new Bookmark Rating Rubric
# As an instructor, go to Manage>Questionnaires and select Bookmark Rating field
#Create a new rubric with required details
# Start adding questions. This can be done by manually entering into the system or importing Questionnaire.
*View Bookmarks


# Log in as an instructor and impersonate as user using the credentials mentioned above and then select assignment "Exercises"
#    Add bookmarks to other topics.
# The owner of that project should be able to see all the bookmarks created for his project and can rate the bookmark through the way instructor has defined it (rating or rubric).




Github Link: https://github.com/srujana13/expertiza
=== Testing with test cases ===
Pull Request: https://github.com/expertiza/expertiza/pull/1540/
== Future Scope ==


Reference:  
== References ==
http://wiki.expertiza.ncsu.edu/index.php/E1830_OSS_Project_Juniper:_Bookmark_enhancements
#Github Link: https://github.com/srujana13/expertiza
https://github.com/expertiza/expertiza
#Pull Request: https://github.com/expertiza/expertiza/pull/1540/
#http://wiki.expertiza.ncsu.edu/index.php/E1830_OSS_Project_Juniper:_Bookmark_enhancements
# Expertiza on Github https://github.com/expertiza/expertiza

Revision as of 06:40, 5 November 2019

Expertiza

Expertiza is an educational web application created and maintained by the joint efforts of the students and the faculty at NCSU. It’s an open source project developed on Ruby on Rails platform and the code is available on Github. It allows students to review each other’s work and improve their work upon this feedback. Students and Instructors (including TA's) use this application though their credentials. Instructors can add new projects, assignments etc as well edit the previous ones and at a later stage can see the student submission and grade them. They can even put a time limit (deadline) for submitting the assignment. Students can form teams for the projects, submit their work through handles (Wiki page, link to a video etc). Students can even review their teammates and other peers, as well give them any suggestions if required

Bookmark Functionality in Expertiza

Expertiza features the bookmarking functionality which allows users to help the author of the project by suggesting insights. Let’s say there are five topics that I’m interested in and would like to contribute to, but I can only choose one. Well, for the other topics, I’m allowed to submit hyperlinks to pages that I think would help the author do the work. On each line of the signup sheet are two icons, one for adding a bookmark to the topic, and another for viewing bookmarks on the topic. The bookmarks are attached to each project topic and user can suggest by filling up a questionnaire. As soon as a user creates a bookmark, the project author is able to view all the bookmarks that are created for his project. The author can give a feedback on the bookmark that he has received which helps even the user know the usefuless of his bookmark.


Bookmark Enhancements

The Bookmark functionality in expertiza is in its nascent stage which allows user to provide feedback on the projects that he is interested in. It also allows the author to rate the bookmarks that he has received for his project. Project Juniper Bookmark Enhancements is an attempt to make the bookmarks more user-friendly and credible. We have improved the functionality for an author to descriptively evaluate the bookmark that he has received on his project using rubrics as set by the instructor.


Tasks that were identified

  • Fixing the “Back” button
  • Validations on the form for adding bookmarks were missing
  • Allowed the creator of bookmark to rate himself and the average rating calculation was wrong
  • Bookmark Rating Questionnaire could not be created
  • Functionality for review of bookmarks using rubric
Users other than the creator of the bookmark can now review the bookmark and give feedback about the quality of the same in a subjective format using the rubric as set by the instructor.

Solutions Implemented

Fixing the Back button: When user visits “Create Bookmarks" and "View Bookmarks", the back button was not functional which refrained the user from going back to the Signup-sheet. Now this issue has been fixed which in future will allow to any contributor to use this back functionality.

How to reproduce the error

Files Changed:

app/controllers/bookmarks_controller.rb
app/controllers/sign_up_sheet_controller.rb
app/views/bookmarks/list.html.erb
app/views/bookmarks/new.html.erb

The changed code can be found here The screencast can be found [here:]


Bookmark Validations The form for adding bookmark allowed malformed URLs to be entered into the system. Now, the bookmarks can be added only when user enters legitimate URL as well as all the fields are completely filled. Validations were added as a security measure to prevent misuse.

How to reproduce the error

Files Changed:

app/controllers/bookmarks_controller.rb
app/models/bookmark.rb

The changed code can be found here: The screencast can be found [here:]


Self Rating of Bookmarks and average calculation When reviewing the bookmark, the average rating for that bookmark shown was calculated wrongly and showed average rating for the bookmark that wasn’t reviewed. Also, the user who created the bookmark could rate himself. Now, the user cannot rate his own bookmarks and the average rating is calculated perfectly after one or more people have reviewed it.

How to reproduce the error

Files Changed:

app/controllers/bookmarks_controller.rb
app/views/bookmarks/list.html.erb

The changed code can be found here: The screencast can be found [here:]


Review bookmark using rubric functionality The bookmark functionality earlier only allowed for the users to rate the bookmark and not give feedback about the the quality of the Bookmark. Now, feature is added so that the instructor can decide whether to allow for bookmark to be just rated or a have a rubric . The instructor can customize the questions in the rubric. The rubric once created by the instructor can be used for multiple assignments and also multiple rubrics can be created for different types of assignments.

How to reproduce the error

Files Modified

app/controllers/questionnaires_controller.rb
app/controllers/response_controller.rb
app/models/questionnaire.rb

The screencast can be found [here:]


Deployment

This application with the mentioned changes have been deployed on VCL and can be found at http://152.46.19.205:8080

Peer Review Assessment Credentials The credentials for Peer review assessment for Bookmark Enhancement project are Instructor Login: username => instructor6 password=>password

Accounts for Impersonation: username => student6340, student6341 Assignment => Exercises, CSC456, Fall2015

Testing Plan

Testing From UI

  • Enable Bookmarks
  1. After logging in as instructor, go to Manage > Assignments
  2. Select Edit under Actions for assignment
  3. Under Topics Tab select 'Allow participants to create bookmarks?' to allow bookmarks
  4. Go to Rubrics tab, under 'Bookmark Rating' select the Bookmark review questionnaire to use the rubric for reviewing the bookmarks , else if only Rating of bookmarks should be allowed select None.

Note: The error popping 'You did not specify all the necessary rubrics. You need [BookmarkRating] of assignment Exercises before saving the assignment. You can assign rubrics here.' when None is selected in Bookmark rating is out of scope of the current project. Although the error pops up, the functionalities are working as it is expected and the error can safely be ignored from point of view of this project '

  • Fixing the back Button & Validations
  1. Log in as an instructor and impersonate as a student using the credentials given above
  2. Select ‘Exercises’ assignment and go to the Signup sheet
  3. We can see a list of projects with 2 columns to add or remove the Bookmark, select any of them
  4. You’ll be redirected to the corresponding page where the back button will be visible
  5. Select add bookmark and the form can be tested for Validations.
  • Create new Bookmark Rating Rubric
  1. As an instructor, go to Manage>Questionnaires and select Bookmark Rating field
  2. Create a new rubric with required details
  3. Start adding questions. This can be done by manually entering into the system or importing Questionnaire.
  • View Bookmarks
  1. Log in as an instructor and impersonate as user using the credentials mentioned above and then select assignment "Exercises"
  2. Add bookmarks to other topics.
  3. The owner of that project should be able to see all the bookmarks created for his project and can rate the bookmark through the way instructor has defined it (rating or rubric).


Testing with test cases

Future Scope

References

  1. Github Link: https://github.com/srujana13/expertiza
  2. Pull Request: https://github.com/expertiza/expertiza/pull/1540/
  3. http://wiki.expertiza.ncsu.edu/index.php/E1830_OSS_Project_Juniper:_Bookmark_enhancements
  4. Expertiza on Github https://github.com/expertiza/expertiza