Sunday, December 7, 2014

LiveCode vs. Captivate and Storyline: Battle of the Multiple-Choice Question

Many of our students here at UGA learn Adobe Captivate or Articulate Storyline. Both are easy-to-learn tools that are good for what typically passes as eLearning. You know, present some information, then quiz people on it for practice, maybe provide some extra guidance, then test them, record the results, and move on. I know there is a place for this sort of thing and I realize there are those rare times when this is exactly the kind of instruction that is needed, but I find no inspiration in it. And, unfortunately, all too often this is the "default" instructional approach for so many designers. But, let us not fault the multiple-choice question itself for its overuse and abuse within eLearning. It can be a very effective design element when used creatively, an idea I'll revisit at the end of this blog posting.

One of the appealing things about Captivate or Articulate is the ease with which one can create quizzes. One can simply choose a question type and then fill in the various boxes. But, is it really that easy? I actually think this approach is very labor intensive, especially for multiple choice questions - the interactive darling of the eLearning world. After all, you have to go in and manually enter each part of the question - the stem and the all the choices - through the tool's quiz GUI. Although it's easy to do, I repeat that it's very labor intensive, especially when you want to go and modify the quiz questions. The ability or option to reuse quiz questions from one application to another is also an important consideration. Captivate allows for the creation of question pools that can be shared by multiple projects. Storyline also allows for copying of content between applications, though it looks cumbersome to do so to me.

A better approach is to put all the questions into a simple text file and then import the questions into the quiz engine. With Captivate, this supposedly can be done using the GIFT format (here is another article and a PDF that explains the GIFT format). QTI, or Question and Test Interoperability, is another standard for creating quiz questions that can be imported into a variety of learning management systems (LMSs). It was developed by IMS. Similarly, Respondus is popular tool with higher education faculty who want to create question banks for use with their university's LMSs.

Unfortunately, Articulate Storyline does not support GIFT or any other method to import questions from a text file into its quiz tool. So, designers must enter the questions one by one within the Storyline interface. And, frankly, I doubt many Captivate authors know about or use the GIFT format. (To be honest, I did not know about either GIFT or QTI before now.)

Let's take a moment to look a little closer at the GIFT format because it is similar to the approach that I invented for my quiz tool. It is just a simple text file with certain symbols used to define the question and the answers (correct and incorrect). Here is the basic format (explained in a Wikipedia article):

//Comment line
::Question title
:: Question {
     =A correct answer
     ~Wrong answer1
     #A response to wrong answer1
     ~Wrong answer2
     #A response to wrong answer2
     ~Wrong answer3
     #A response to wrong answer3
     ~Wrong answer4
     #A response to wrong answer4
}

You would type the questions using this format, one after the other, in a text file.

Lloyd's Multiple-Choice Quiz App


That's a long-winded introduction to the fact that a few months ago I decided I would take a shot at creating a multiple-choice quiz generator that reads all of the questions from a simple text field. Here's a five-minute video of how the app works:

[ Get the free LiveCode Community version. ]



I started this one morning and just jumped into the programming with nothing other than my thoughts to guide me, a prototyping approach I love to use, and one that works well with LiveCode. I spent about an hour and made good progress. After I got home from work that day, I spent maybe another two hours on the prototype.

I returned to the prototype just the other day and decided to make one significant improvement to the original prototype - the option to randomize the answers for a particular question. This is a relatively simple thing to do and took only about an hour to program, yet it vastly improves the quiz environment in many ways. In traditional eLearning designs, it preempts the possibility that students will share specific answers to questions. In other designs, such as gaming, this feature dramatically extends the shelf-life of the question bank. Of course, some questions need to have the answers presented in a certain order, so I provided the means to override the randomization feature for individual questions. I'm thinking about adding the feature of randomizing the order in which the questions are presented. This also would not be hard to do.

This question app can consist of as many questions you want with up to 5 answers per question. The app begins by counting and displaying the total number of questions. Each question is displayed in order. If there are fewer than 5 answer choices, then only the buttons with choices are shown.

Feedback consists of "Knowledge of Correct Results," that is, if wrong, the person is given the correct answer. The quiz results, including the percentage correct, are updated and displayed after each question.

As I mentioned above, I did not know about the GIFT format before creating this tool, but it would not be hard to create a new version that uses the GIFT format. It would be also easy to create an app to assist a designers or teacher to create quizzes in the GIFT format. But I doubt there would be much of a market for it.

A little sidenote... when I decided to revisit this app after many months, it took more time than I want to admit to "relearn" how it was programmed. I had not commented the code very well. So, this is a good "reminder to self" that the effort to comment the code thoroughly is a good investment of time that will be returned to you manyfold later on.

How to Enter and Format Questions in a Text File


The questions are entered using the following format:

  1. On the first line enter the line number of the correct answer (using the line of the first answer as line number 1). If you want a particular question to override the "Randomize Answers" option, then add a comma and enter "off" (example: 3,off).
  2. Enter the question stem on the next line.
  3. Enter as many answers as you wish, up to five. Put each answer on a separate line.
  4. After the last answer, on a separate line, write the word "end."

Here's an example:

4,off
What color is a stop sign?
green
yellow
blue
red
violet
end

Feel free to take, use, or adapt this LiveCode file any way you wish. In future posts, I'll explain how key features of this quiz app work.

A feature of LiveCode I really like is the ability to import text files from the Internet using this simple command:

put URL "http://mywebsite/mytextfile.txt" into field "data"

So, although the current prototype of my app requires you to type the questions into the app directly, it would be easy to have the app check a web site as soon as the app opens to retrieve the question bank for the app. I plan on creating a version of this question app that does this.

OK, You Can Create M/C Questions in LiveCode. So What?


Unlike Captivate or Storyline, the range of possibilities of what one can do with multiple-choice quizzing in LiveCode is limited only by the imagination of the designer. Again, this may seem unfair to Captivate or Storyline, but I don't think so. I argue that these tools significantly constrain the designer. With LiveCode, my thoughts about what to do with my questioning app immediately turn to gaming. Probably my most favorite family game is Trivial Pursuit, a fact that continues to surprise me because it's all about answering questions about, well, trivia. I find it fascinating that a game with such a premise is so compelling to me and many other people. But, it's fun to know what you know. (I once scored big for my team because I knew the middle name of former president Jimmy Carter. Do you?)

But, any game you can imagine that uses the question and answer format could be built. One design that I like is commonly used in an in-flight game on Delta airlines where a timer begins when presented with a question. More points are given for a correct answer the faster you make your selection. However, you are not allowed to change your answer once selected.

Another idea I like is where you have students be responsible for generating the questions. This is a very constructivist design strategy.

So, Who Invented the Multiple-Choice Quiz Anyway?


Finally, I must give a nod to the people who came up with the idea of multiple-choice tests. After an exhausting literature search (translation: I googled it), I found that, according to Wikipedia, the originator was the famous behavioral psychologist E.L. Thorndyke, but it seems most of the credit for popularizing them goes to Frederick J. Kelly, who "...was the first to use such items as part of a large scale assessment. While Director of the Training School at Kansas State Normal School (now Emporia State University) in 1915, he developed and administered the Kansas Silent Reading Test. Soon after, Kelly became the third Dean of the College of Education at the University of Kansas. The first all multiple choice, large scale assessment was the Army Alpha, used to assess the intelligence and more specifically the aptitudes of World War I military recruits."

It's a good reminder that although multiple-choice quizzes and tests are easy targets for criticism, we should all be so clever to come up with an interaction and assessment strategy that has stood the test of time so well. Yes, they are overused and abused, but that is the fault of the designer, teacher, or more likely the state, federal, or company bureaucrats, not the inventor.

Gee, I wonder who invented the number 2 pencil?


No comments:

Post a Comment