Multiple versions of one test in an LMS

Sep 29, 2014

Hi there,

I have a problem which I am not able to solve until now.

I have an e-learning module that contains a test. The customer insisted on the fact that a user should have 3 attempts to pass this test and that the questions in the test are different for the three attempts.

So in total there are 30 questions, 10 for the first attempt, 10 for the second attempt, 10 for the third attempt.

Since the content should be published in an LMS, I can have only result slide for this three attempt. This means I have to include 30 questions in the result slide, resulting in a max score of 300 (even if the user only answered 10 questions and therefore could only score 100 points).

I can adjust the scores here and there to display the correct scores and percentages, but the LMS does receive a score divided by 3 (for example 30% when the user answered 9 of the first 10 questions correct).

Is there any way to adjust the value that is sent to the LMS, of otherwise work around this problem?

3 Replies
Leslie McKerchie

Hi Joris!

You can set attempts for the quiz in Storyline, check out this tutorial.

You may want to consider the utilization of question banks as shown in this tutorial. This will allow you to randomize the questions presented to the user, although it will not insure that every question is different.

This will allow you to set up a regular results slide and all the attempts/re-tries would be handled within the course.

Others in the community may have additional suggestions.

Joris Sprunken

Hi Leslie,

I have already used the things you mentioned. Thing is that the questions do need to be exactly as they are (there is a medical legal department setting this demands), so I see no other way than using three different question banks, which leads to the problem.

I have found out there should be a way of avoiding the negative effect, using JavaScript. Something like this:

var p = GetPlayer(); 

var TotalScore = p.GetVar("TotalScore");

var lmsAPI = parent; 

lmsAPI.SetScore(TotalScore, 100, 0); 

Problem is, this script is executed too early (the score is overwritten by the default score from the result screen). Any suggestions on how to ensure this script is executed last?

This discussion is closed. You can start a new discussion or contact Articulate Support.