Uploaded image for project: 'Sakai'
  1. Sakai
  2. SAK-41440

Course grade miscalculates when you excuse a grade, if using Categories & Weights



    • Type: Bug
    • Status: CLOSED
    • Priority: Blocker
    • Resolution: Fixed
    • Affects Version/s: 19.0, 20.0
    • Fix Version/s: 19.0, 20.0
    • Component/s: Gradebook
    • Labels:
    • 19 status:
    • Test Plan:

      Please add a Test Plan here.

      Please add a Test Plan here.


      For Gradebooks that use Categories & Weights, the overall Course Grade is miscalculated if you excuse a grade.

      (If not using Cats & Weights, course grade calculates correctly when you excuse a grade.)

      I replicated on https://qa1-us.nightly.sakaiproject.org/ and on https://trunk-mysql.nightly.sakaiproject.org

      Steps to replicate:

      1. Set up a Gradebook with Categories & Weights, such as:
          - Homework = 40%
          - Exams = 60%
        2.Create a few items in the Homework category, such as:
          - HW1 = 100 pts
          - HW2 = 100 pts
          - HW3 = 100 pts
        3. Just to be thorough, create one or more items in the Exams category, such as:
          - Exam 1 = 100 pts
        4. Assign a student the following grades:
          - HW1 = 100 pts
          - HW2 = 80 pts
          - HW3 = 60 pts
        5. Notice that the Course Grade is 80%, which is correct.
        6. Excuse the student's grade for HW3 (which has a score of 60), by clicking the dropdown arrow in the cell and choosing "Excuse/Include Grade". The Course Grade doesn't immmediately update – click GRADEBOOK at the top to refresh the page to see the updated calculation.
        7. Notice that the Course grade is now 60%, which is incorrect – it should be 90%.
        8. Notice that the Weighted Average Column for the Homework category displays 90%, which is correct. (Group by Category must be ON to see this.)
        9. Enter a grade for Exam 1, such as 100. Notice that the Course Grade is now 84%, which is incorrect. It should be 96%.

      Note: If you go into Settings, and change to "Categories only" or "No categories", you will see that the Course Grade is correctly calculated.

      When you excuse a grade, two different weighted averages are being calculated for the category. The one displayed in the category's Weighted Average column is correct – but a different, miscalculated average is used in the Course Grade calculation. This miscalculated average wrongly includes the point value for the excused item in the denominator, like so:
      (HW1 grade + HW2 grade) / (HW1 pt value + HW2 pt value + HW3 pt value)

      The correct formula should be:
      (HW1 grade + HW2 grade) / (HW1 pt value + HW2 pt value)

        Gliffy Diagrams



              Issue Links



                  mcphaulk Karen McPhaul
                  mcphaulk Karen McPhaul
                  0 Vote for this issue
                  7 Start watching this issue



                      Git Integration