CSC/ECE 517 Fall 2016/OSS E1637: Difference between revisions
m (moved User:Smurali8 to CSC/ECE 517 Fall 2016/OSS E1637) |
|||
Line 5: | Line 5: | ||
This project deals with LatePoliciesController and PenaltyHelper files. It focuses on calculating a penalty which would be deducted from the total score obtained by the student if the student submits the assignment or review past the specified deadline. The goal of our project is to make the task of calculating and deducting penalties function perfectly and also refactor the code to make it more intuitive and modular. | This project deals with LatePoliciesController and PenaltyHelper files. It focuses on calculating a penalty which would be deducted from the total score obtained by the student if the student submits the assignment or review past the specified deadline. The goal of our project is to make the task of calculating and deducting penalties function perfectly and also refactor the code to make it more intuitive and modular. | ||
== Files Modified == | == Files Modified == | ||
The files modified for the penalty functionality to work are as follows, | |||
==== Controllers ==== | |||
*late_policies_controller.rb | |||
*grades_controller.rb | |||
==== Helpers ==== | |||
*penalty_helper.rb | |||
==== Views ==== | |||
*_participant.html.erb | |||
*_participant_charts.html.erb | |||
*_participant_title.html.erb | |||
=== LatePolicyController === | === LatePolicyController === | ||
This controller contains the functions to create, update and delete a late policy. The instructor can create a late policy for any assignment where in the instructor can specify the points per unit and the maximum penalty that can be applied for a particular assignment. In | This controller contains the functions to create, update and delete a late policy. The instructor can create a late policy for any assignment, where in the instructor can specify the points per unit and the maximum penalty that can be applied for a particular assignment. The create and the update functions in this module was very long and it had to be refactored so that the code was modular. | ||
=== GradesController === | |||
In grades controller, the total penalty was not getting deducted from the total score due to the mismatch of conditions. The conditions were modified in this controller for the penalty to be deducted from the total score obtained. | |||
=== PenaltyHelper === | === PenaltyHelper === | ||
This helper file has functions to calculate submission, review and metareview penalties. | This helper file has functions to calculate submission, review and metareview penalties. This function was not returning the values of the calculated penalty as required and modifications were made so that the correct penalty values are returned. | ||
=== Views === | |||
In the current implementation, the penalty deducted is not displayed when a student views scores. The views were modified so that the deducted penalties and total score are displayed appropriately. | |||
== List of Tasks == | == List of Tasks == | ||
*T1: Modification to the PenaltyHelper so that correct penalty value is calculated and returned | *T1: Modification to the PenaltyHelper so that correct penalty value is calculated and returned |
Revision as of 21:31, 29 October 2016
E1637: Refactor penalty_helper.rb and late_policies_controller.rb
Expertiza
Expertiza is an educational web application built on Ruby on Rails framework. It provides functionality for the instructor to create assignments for a specific course. The students can sign up for a list of topics created by the instructor. Expertiza allows students to form teams and work together. Students can provide feedback to assignments and projects submitted by other students. The students can also provide reviews about each individual member in their team as well. The numerous functionalities provided by expertiza makes the process of assignment submission, feedback and management much simpler and for the students and the instructors.
Motivation
This project deals with LatePoliciesController and PenaltyHelper files. It focuses on calculating a penalty which would be deducted from the total score obtained by the student if the student submits the assignment or review past the specified deadline. The goal of our project is to make the task of calculating and deducting penalties function perfectly and also refactor the code to make it more intuitive and modular.
Files Modified
The files modified for the penalty functionality to work are as follows,
Controllers
- late_policies_controller.rb
- grades_controller.rb
Helpers
- penalty_helper.rb
Views
- _participant.html.erb
- _participant_charts.html.erb
- _participant_title.html.erb
LatePolicyController
This controller contains the functions to create, update and delete a late policy. The instructor can create a late policy for any assignment, where in the instructor can specify the points per unit and the maximum penalty that can be applied for a particular assignment. The create and the update functions in this module was very long and it had to be refactored so that the code was modular.
GradesController
In grades controller, the total penalty was not getting deducted from the total score due to the mismatch of conditions. The conditions were modified in this controller for the penalty to be deducted from the total score obtained.
PenaltyHelper
This helper file has functions to calculate submission, review and metareview penalties. This function was not returning the values of the calculated penalty as required and modifications were made so that the correct penalty values are returned.
Views
In the current implementation, the penalty deducted is not displayed when a student views scores. The views were modified so that the deducted penalties and total score are displayed appropriately.
List of Tasks
- T1: Modification to the PenaltyHelper so that correct penalty value is calculated and returned
- T2: Modification of LatePoliciesController so that it
- T3: Refactor the LatePoliciesController to make the code more readable and intuitive
- T4: The calculated penalty should be deducted from the score obtained by the student
- T5: The deducted penalty and the new score should be visible to the students
Testing
UI Testing
The following steps can be followed from the Web UI to ensure that the penalty is deducted and the correct scores are updated according to the specified late policy.
- Login as instructor
- Create an assignment in course
- Set the deadline for the assignment
- Add a late policy
- Create a team of 2-3 students
- Login as a student to submit the assignment and the reviews
- Make sure to add certain late submission
- Check the scores to make sure that the penalties are deducted from the total score