Uploaded image for project: 'Moodle'
  1. Moodle
  2. MDL-21305

Mastery Score: wrong condition in the main flow (status vs credit)

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Critical
    • Resolution: Fixed
    • Affects Version/s: 1.9.7
    • Fix Version/s: 1.9.10
    • Component/s: SCORM
    • Labels:
      None
    • Environment:
      LAMP, PHP 5.2.11
    • Database:
      MySQL
    • Difficulty:
      Easy
    • Affected Branches:
      MOODLE_19_STABLE
    • Fixed Branches:
      MOODLE_19_STABLE

      Description

      Mastery Score is currently linked to the "completed" status.
      While this should be a practice of good sense, it's an assumption over the way courses implement learning strategies quite opposite with the AICC (AICC - CMI Guidelines for interoperability) / SCORM (v1.2: The SCORM Run-Time Environment) specs, where the conditional branch is evaluated over the value of core.credit, being "credit".

      The current code will prevent the Mastery Score related behaviour to work as expected with those tracked activities where the status of a SCO is "incomplete" and everything inside a SCO is managed by a final test whose final status is managed only through the Mastery Score.

      mod/scorm/aicc.php:
      ...
      if ($mode == 'normal') {
      if ($lessonstatus == 'completed') {
      if ($sco = scorm_get_sco($scoid)) {
      if (!empty($sco->mastery_score)) {
      if (!empty($score)) {
      if ($score >= $sco->mastery_score)

      { $lessonstatus = 'passed'; }

      else

      { $lessonstatus = 'failed'; }

      }
      }
      $id = scorm_insert_track($USER->id, $scorm->id, $sco->id, $attempt, 'cmi.core.lesson_status', $lessonstatus);
      }
      }
      }
      ...

      "$lessonstatus == 'completed'" should be replaced with "true" since "normal" mode is just set when core.credit is "credit". It could be optionally sophisticated accessing the core.credit data.

        Attachments

          Activity

            People

            Assignee:
            danmarsden Dan Marsden
            Reporter:
            matteo Matteo Scaramuccia
            Tester:
            Nobody
            Participants:
            Component watchers:
            Damyon Wiese, Dan Marsden, Matteo Scaramuccia, Adrian Greeve, Jake Dallimore, Mathew May, Mihail Geshoski, Peter Dias
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Dates

              Created:
              Updated:
              Resolved:
              Fix Release Date:
              25/Oct/10