0

I've run into a little bit of a problem. I've spent many weeks on a prototype that a client was very happy with, but I have since decided to scrap the prototype and recreate the application with Adobe Captivate to make SCORM compliance a little easier. The problem I'm having is I need to find a way to not have the status changed to complete until the quiz is passed 3 times with a 100% grade.

Kevin Remisoski
  • 489
  • 4
  • 9
  • 1
    And what have you tried so far? – dg99 May 01 '15 at 00:15
  • What I've tried so far hasn't worked, so I'm not really sure how that's helpful plus that was with the prototype code prior to my decision to switch to Captivate. I'm hoping I might be able to have SCORM pass a variable to the LMS itself for the given user with a level integer starting at zero, resetting to zero on fail, passing on 100%, and completing on level 3. I'm just not sure how to do that if it is possible. – Kevin Remisoski May 01 '15 at 01:47
  • Can you explain why you need the course to pass three times? Why not have three separate SCOs of your course? – joel May 01 '15 at 11:16
  • I need it to pass three times, because anybody can ace a quiz if they cram and everything registers to their short term memory. That entirely defeats the purpose of learning. 3 SCOs would be anti-dry. – Kevin Remisoski May 01 '15 at 22:09

3 Answers3

0

AFAIK Captivate isn't designed to provide this functionality and there isn't a setting that's going to give you what you need. That gives you three options:

  1. Do something clever with JavaScript and intercept the default Captivate SCORM calls. This is going to require a good bit of work, you to have decent JavaScript skills and a good working knowledge of SCORM.

  2. Do something on the LMS side so that he SCO has to be completed 3 times in order to be recorded as a pass in the LMS. This is probably the worst option.

  3. Duplicate the quiz three times in the course. Yep, literally just copy and paste the quiz slides and make it one quiz where every question appears three times. This might not give you the exact user experience you're looking for and maintaining it will be a little more painful, but it's certainly the fastest of the three options.

Andrew Downes
  • 1,068
  • 8
  • 20
  • 1
    Thanks for the shoutout Andrew, but those blog posts were written prior to Rustici's SCORM Driver being implemented in Captivate, and are pretty outdated now. (Which is actually a good thing) – pipwerks May 02 '15 at 02:00
  • Thanks for the heads up. Looks like I messed up the link anyway. I'll remove that sentence from the answer. – Andrew Downes May 04 '15 at 09:54
0

I think you have two options for this:

  1. Is to break your course up into three separate parts. This allows the LMS to track each portion and you can go from there. You can force the course sections to be played in order

  2. You can have 3 child objectives in your course an set a score to each objective. Once all three are passed, you can pass the entire course and calculate the score too for the entire course.

Option 1 will work on more LMS because this more supported but if you need to pass data between these SCOs, in some branching mechanism, you'll need to look at option 2.

Option 2 takes advantage of cmi.objectives. Find out if your target LMS supports that. If your plan is to have this course consumed on many LMS, this may not be the path you want to go. This option will allow for communication across all parts of a course.

An additional option for compatibility for LMS is to use SCORM Cloud dispatch.

joel
  • 157
  • 1
  • 8
0

I haven't used Captivate 8, but Captivate supports custom variables.

The first thing I'd try is populating a custom variable based on the outcome of the quiz. For example, make a variable named quizpasses and set it to 0. After passing the quiz the first time, set it to 1. Rinse lather repeat.

Ensure the page that the learner hits after taking the exam contains logic checking the value of your custom quizpasses variable. If it's less than 3, automatically redirect to the start of the quiz (or handle however you wish to handle, you get the idea).

Have the course completion be dependent on reaching the last slide, not on the outcome of the exams. This can be achieved by telling Captivate to set completion based on viewing all slides, or by putting a 1-question quiz at the end, with the correct answer being labeled as "Click here to finish the course" or similar. Then have Captivate rely on the value of this final question for determining overall course completion status.

Really hacky, kinda dumb, but would probably work.

Again, this is hypothetical, I haven't used Captivate 8 and can't validate the scenario.

Good luck

pipwerks
  • 4,440
  • 1
  • 20
  • 24
  • Thanks pipwerks. Unfortunately, the client's requirements have changed, but despite no longer requiring this functionality at the moment, I will be needing it in upcoming projects to mimic the behavior of some legacy code. As soon as this project is complete, I'll test out your solution and check back here if it works. Thanks again. – Kevin Remisoski May 05 '15 at 02:08