Remediation Is Hard – Part 1

Retry All Resets Everything

Many SCORM 2004 sequencing strategies require remediation upon failure. These strategies often call for only material which was not previously mastered to be required on subsequent attempts. The most straightforward approach to implementing such a strategy would call for storing mastered competencies in global objectives and then issuing a retryAll to trigger remediation. Unfortunately, unless the global objectives are global to the system (a dangerous practice), when a retryAll request is issued, a new attempt begins on the root of the activity tree and all of the global objectives are reset making them unavailable as input into the remediation sequencing strategy.


  • Option 1 (DANGEROUS) – Set objectives global to system = true. Since the global objectives now have a broader scope, a new attempt on the package does not trigger a reset of all the objectives. There is peril ahead though should objectives ever experience naming collisions (i.e. there is nothing that says that another course can’t use the same objective identifier as you do), not to mention the chronic pain in the neck of deployment testing (have you ever tried to reset global objectives in a production LMS?).
  • Option 2 – Create a shell inside the course that can be retried without initiating a new attempt on the root. For example:

    -Course Root
    —Remediation Shell – is visible = false, post condition rule, if not satisfied, retry
    —–SCO 1
    —–SCO 2

    Basically, moving remediation down a level will preserve the state of global objectives since it does not create a new attempt on the course as a whole.

  • Ann Marie

    I would like to know the standards on remediation. It is my understanding that if a trainee sits a course and fails they are not allowed to view the questions they got wrong but would have to complete all the questions again.

    Is there a regulation on trainees re-sitting the questions they got wrong ONLY?

    Thank you for your help.

    Ann Marie

  • Hi Ann,

    There aren’t any one size fits all standards for remediation. SCORM allows you to implement remediation however you see fit. Different situations require different implementations and regulations are specific to your community of practice.


  • Ken Prat

    Hi Mike,

    For Option 2, doesn’t a new attempt on any activity imply a new attempt on the root and thus nuke the globals anyway?


  • Hi Ken,

    No, child activities can have new attempt initiated without starting a new attempt on the root.


  • Hi mike

    Can you help me how to integrate Scorm cloud API in php i have use my custom open source.

    i have create account account in and upload articulate content.