CSC/ECE 517 Fall 2015/oss E1562 APS: Difference between revisions
No edit summary |
|||
Line 5: | Line 5: | ||
'''Introduction to Expertiza'''<br> | '''Introduction to Expertiza'''<br> | ||
[http://expertiza.ncsu.edu/ Expertiza] is a peer review based system | [http://expertiza.ncsu.edu/ Expertiza] is a peer review based system which provides increment learning from the class. This project has been developed by the faculty and students using [http://rubyonrails.org/ Ruby on Rails] framework. Expertiza allows the instructor to create, edit and delete assignments, create new assignment topics, assign them to a particular class or selected stduents, have students work on teams and then review each other's assignments at the end. It supports submission of different file types for assignments, including the URLs and wiki pages. | ||
== E162 Problem Statement == | == E162 Problem Statement == |
Revision as of 20:06, 29 October 2015
E1562. Refactor AssignmentParticipant model<ref>https://docs.google.com/document/d/1uWs3zyrupTmrOFuv5IbVWCF4NRvCXqJmg8dZ0wCqgus</ref>
This page provides a description of the Expertiza based OSS project. This project aimed at refactoring the Leaderboard model, LeaderboardController, and Leaderboard_helper classes as per standard coding methodology for Ruby on Rails.
Introduction to Expertiza
Expertiza is a peer review based system which provides increment learning from the class. This project has been developed by the faculty and students using Ruby on Rails framework. Expertiza allows the instructor to create, edit and delete assignments, create new assignment topics, assign them to a particular class or selected stduents, have students work on teams and then review each other's assignments at the end. It supports submission of different file types for assignments, including the URLs and wiki pages.
E162 Problem Statement
Requirement
Refactor of AssignmentParticipant Model Classname: assignment_participant.rb
Tasks
- Scores(questions) method is complex and huge. Refactor this method into smaller methods.
- In set_handle method, there is no need for a separate elseif statement. Instead club the elseif statement into if statement as an another ‘or’ condition.
- Some of the methods of this class are not used anywhere like compute_quiz_scores(scores) , average_score_per_assignment(assignment_id) . Remove such methods from the class.
- Method cycle_deviation_score(cycle) is also present in CollusionCycle, remove any such method from this class.
- Methods related to reviews like teammate_reviews, bookmark_reviews etc do not belong to AssignmentParticipant model. Move them to appropriate class.
- Methods related to files and directories like files(directory) should not be present in AssignmentParticipant model, move them to appropriate file helper modules.
Introduction to Expertiza
Refactoring
Testing
References
<references/>