Occasionally there are error fixes which can affect gradebook calculations in certain courses. As part of the upgrade process, such courses are identified and a message is displayed in the gradebook informing instructor
s that error fixes may result in some grades being changed. Details of these changes are provided below. The 8-digit version number is the date of the fix.
It is recommended that the errors are fixed by clicking the button ‘Accept grade changes and fix calculation errors’. Until this is done, the message will continue to be displayed in the gradebook (only for instructors; users can’t see it). The old gradebook calculations will still be used (ensuring grades remain unchanged), however, they are likely to result in more errors if grades are updated in the future.
20150619 – Calculation of extra credit item weights when using natural aggregation
Two errors were fixed:
- Overriding the weight of the extra credit item can lead to changes in other items’ weights and random final grades
- The automatic weight of an extra credit item was dependent on the overrides of the normal item’s weights
The second error was especially noticeable for users with excluded grade items (for example, when they are hidden or empty).
For example, a category has two normal grade items and one extra credit item. If the maximum grades for each item are the same, the weights of the three items will be 50%, 50%, and 50%. However if the weights of the normal items are overridden to be 50% and 50%, then the weight of the extra credit item would become 0%. If the instructor
overrode the weight of the first item to 80%, the second item would automatically become 20% (correct) and the extra credit would also become 20% (incorrect).
The correct behavior (after the fix): If the weight of extra credit item is not overridden, it should be itemmaxgrade / totalmaxgrade, where totalmaxgrade does not include the extra credit item. In the example, the weight of the extra credit item should always be 50%.
20150627 – Calculated grade items
Two errors affecting grades were fixed:
- Changing the maxgrade for a category item with a calculation that has existing grades results in grades displayed out of the old maximum grade, not the updated one. This can cause flow-on effects for automatic weights with Natural Aggregation.
- Values for grade items with a calculation are always displayed from 0 to 100 regardless of the minimum and maximum grades for the grade item. This can cause flow-on effects for automatic weights with Natural Aggregation.
These fixes will impact existing grades by correcting the maximum grade for existing grade items.
20160518 – letter grade boundary issue
Some letter boundaries, when achieved by a user, would not give the user the associated grade.
For example. If the letter grades were updated so that the letter boundary for a C was 57 and a D was 50, a user that received 57 for a grade would get a D instead of a C.
This problem only affects sites that have edited the letter grades, and not all letter boundaries have this problem. The default settings do not produce this error.
This has now been fixed, but the course gradebook will be frozen if the system has detected that the course has been affected by an altered letter grade boundary. There is a possibility that user’s letter grades will change after the gradebook freeze has been accepted.
The upgrade step that freezes the gradebook above for the letter grade boundary is not 100% accurate. The upgrade step was optimized for speed and will freeze any course that has the potential to be a problem. The script may freeze more courses than it needs to. To determine if a course is definitely affected requires a lot of processing. We have created a script that will go through each of the courses and analyze the grades to see if the grade displayed will actually change. Due to the complex nature of the gradebook, this requires checking how the grade will be displayed from a instructors perspective as well as the user perspective and is consequently very slow.
Important
- The script can only be run after the upgrade has been done. The upgrade step is cautious with the courses it freezes and so the script uses the frozen courses as a base to do its calculations.
- The script is a Command Line Interface (CLI) and is to be run from the command line.
- The script has two settings.
php 57script.php
Running the script with no options will only produce a report of which courses should be frozen and which should not. No alterations to the freeze will be made.
php 57script.php --update
Running the script with the “update” option will unfreeze courses that it deems do not actually require freezing.
