Is there a way to prevent the course from calling LMSCommit() and recording a quiz result in the LMS until the entire quiz is completed?

Hi All...hoping that someone can help me.

I've created a course set, in which the final course is a Final Exam.  This is exam is 20 questions out of a pool of 60 and the user had 3 attempts to pass (score of 75% or higher).

I am attempting to prevent a certain scenario.  My course is setup to get/set a javascript variable from CMI resume data that determines how many times a user has attempted a quiz.  If the course determines the user has attempted the quiz 3 times, they should be blocked on the 4th attempt.

The problem I am encountering is the user can close the course mid-quiz and LMSCommit() gets called and a quiz result is recorded in the LMS.   Is there a way to prevent the course from calling LMSCommit() and recording a quiz result in the LMS until he has gone through the entire quiz?

I am happy to provide the lesson for review....although you won't be able to answer the questions :)....I've attached an example of the report that I receiving from the LMS -- showing one particular user who took 3 separate course set exams. (1x for 1 exam, 2x for another course exam, and 6x for the 3rd exam)...6 is not possible, as the exam will not restart after 3rd attempt.

We will be automating this certification process and a scenario like this will 'break' the automation process.  Any help you can provide would be fantastic!

6 Replies
Ashley Terwilliger

Hi Cathy, 

Are you passing this from the resume data using a Javascript trigger, or it's how your LMS is reading it? You may want to look at testing this in the SCORM Cloud set up, as it's an industry standard for testing LMS content. This article will walk you through the steps to upload and test there.  

Also, you will want to look at the ways in which you've set up your completion and tracking as a part of your publish for LMS.

Cathy DeBurro

Thanks, Ashley....

I honestly don't know the answer to that question. :(
We use a 3rd party LMS platform. I've sent a request to them and will let you know.
I have the exams set to Always Resume (Because I don't want the user to leave the exam and return to it - expecting to start again). They must pick up where they left off.

I've attached a test story (with a couple of test questions) and zipped output- for your review.
As another approach....if there was a way to prevent a user from 'exiting' the player - or marking the quiz attempt as an automatic failure for exiting mid-stream, that is also an option, if it can be done.

Bottom line - what we are trying to do:

Provide users 3 attempts to get certified on our product. We provide a 20 questions (out of a pool of 50-60 questions) - 30 minute timed exam.

If the pass great!
If they fail - they have two remaining attempts. When they fail all three, they are no longer eligible foir certificate.
We are integrating this with our Salesforce which will automatically mark them as 'failed' when the third attempt occurs....and that will send out an automated message to the user.

But it appears (based on that report on Friday) - that a user had 6 attempts on one course....I'm not even sure how that is possible....we don't want to send an email indicating the failure to a user who may have closed the exam and still has an attempt or two left....

So again...bottom line - 3 attempts to pass. What is the best way to report that?
Any ideas?
Warm Regards,

Cathy 

Ashley Terwilliger

Hi Cathy,

First I did want to let you know that responding via email includes your signature here. You're welcome to edit the post and remove that information if you wish. 

As far as attempts, they're tracked by the LMS, although you can set Storyline up to not allow the user further attempts as detailed here - but if the LMS allows them to "restart" the course that wold override it. I can't think of anything within Storyline that I've seen which allowed the third attempt to automatically give the user a passing grade - that sounds like an LMS specific setting. What LMS are you using? You may want to share more specifics about your set up so that folks in the community who have the same are able to share ideas here. 

Cathy DeBurro

Ashley

No passing grade.  If they fail, they fail.  The LMS is reporting every time the user closes out of the exam....even if they are Mid-way through it -- yet, I've set the tracking to report off of the results slide....and the results slide is set to prevent any retries after 2.

If a user has 3 tries to complete the exam and mid way through the first try, for whatever reason, closes it out (unfinished and before getting to the results slide)....the # of attempts reported to us through the LMS is 1 (even though they haven't completed it yet).  

They then log back in and continue where they left off....completing their first attempt of three....the exam shows them that they have 2 tries left, but what is reported to us from the LMS is that 2 attempts have been made, even though he's technically only completed the quiz once.  Sounds confusing, I know....

Bringing us back to the question:

Is there a way to prevent the course from calling LMSCommit() and recording a quiz result in the LMS until the entire quiz is completed?

Thanks!

Ashley Terwilliger

Hi Cathy,

Sorry for my confusion - I thought you meant, that no matter what on the 3rd attempt they'd be considered passed. 

As far as the LMS Commit, Storyline communicates course completion to an LMS (LMSCommit) when the user meets the completion requirement, either when they reach the appropriate result slide or when they have viewed the required number of slides. BUT communication is continually going back and forth so it may be that your LMS is reading things differently Perhaps it would help if you could see the actual communication that is happening?  You could enable LMS debug mode or look at testing it in SCORM Cloud, as that's an industry standard for LMS output. I  cannot assist with modifying the published output to change how LMS Commit is being communicated, so I'll have to defer to the community.