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

From Expertiza_Wiki
Jump to navigation Jump to search
mNo edit summary
Line 37: Line 37:
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 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>
The screencast can be found <span class = "plainlinks">[https://drive.google.com/file/d/1SBUJALEeaQsFl9B1OjJh41OTY88FCsEt/view?usp=sharing here:]</span>




Line 49: Line 49:
:app/models/bookmark.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 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>
The screencast can be found <span class = "plainlinks">[https://drive.google.com/file/d/14A9e76pcd6HoNEYFzPrfH4xR3HBjps-c/view?usp=sharing here:]</span>





Revision as of 19:07, 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

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.

Earlier:

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.

Earlier:

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.

Earlier:

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.

Earlier:

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