"Excused" Reweighting Logic

Jump to solution
Community Member

I am looking for guidance on what the expected behaviour is for excused assignments when the total of assignment groups is greater than 100%.

First, I'll explain my understanding for the "easy" scenario where the total includes 100%.. Suppose the following. Three assignment groups, each containing a single graded item. Group 1 is worth 20%, Group 2: 40% and Group 3: 40%.

Suppose the student is excused from the single assignment in Group 1 and obtains a 100% and 50% for Group 2 and 3 respectively. Their grade is a 75% because the 20% is "allocated" to the other weights. (Screenshot attached). Note also that, obviously, the student does better than if they received a 0 in Group 1. In that case, they would have received a 60%. This makes sense, the excused is helping them.

Calculation: (40%+10%)*100%+(40%+10%)*50% =75% (The 10s being added are being reweighted from the excused assignment)

Now suppose all is the same except now the two latter groups are worth 60% each. In other words, now the total is 140% instead of 100%. What's the grade for the student now? 90%. (Screenshot attached) This feels odd. For one, this is no different than if the excused assignment had been assigned a grade of zero. There's no benefit here for excusing the student. Secondly, the calculation is clearly different.

If we use the same calculation method as before

Calculation: (60%+10%)*100%+(60%+10%)*50% =105%

Whereas this calculation appears to be consistent with

60% * 100% + 60% * 50% = 90%

It feels like having an excused result in the same outcome as a zero is not intended behaviour. Is there any documentation on the logic behind how excused assignment groups are reweighted? Are they ignored if the totals are greater than 100%? Or is this a weird bug?


1 Solution
Community Champion


@james_whalley explained this, but I wanted to clarify how the weights get distributed.

The final grade is a weighted average of the scores for assignment groups where the student has at least one score. An excused would keep them from having an assignment grade and if it was the only assignment in the assignment group, then the assignment group would be excluded.

Weighted average = (sum of weights * scores) / (sum of weights).

The weight is the percentage assigned to each category and the score is the percentage (total points scored / total points possible) for the assignment group.

The denominator is capped at 100%.

If the sum of the assignment group categories is less than 100%, then each assignment group proportionally counts more than it is weighted. If you have assignment groups worth 40%, 30%, 20%, and 10%, but only the 40%, 30%, and 20% have assignments for a student, then the sum of the weights is 90% and the numerator is divided by 0.9 to bring the final grade up to 100 possible. But it's proportional to the original weights (not equally distributed) so the first group counts 40/90, the second group 30/90, and the third group 20/90. If you had assignments in the 40% and 10% groups, then the total weight is 50% and the score would be doubled (divided by 0.5). The first group would now account for 40/50=80% and the second group would count for 10/50=20% of the grade.

The denominator never exceeds 100%, even when the assignment groups add up to more than 100%. This allows people to have extra credit.

By the way, Canvas has no idea which assignment groups are extra credit. It doesn't do parsing of the text to figure that out. All assignment groups go into the same calculation and if an extra credit assignment group has scores before the total of all the assignment groups meets 100%, it becomes part of their regular grade.

View solution in original post