Think of something that you wish Authorware could do but it doesn't?  Let the our good friends at Macromedia know via the wishlist.

Please let us know if you find any of the materials on this site inappropriate or offensive. Please include the url and why the material should be reviewed.

Comments and questions about the site are also welcome. Please no Authorware questions, use the AWARE list.

Back

1001 - How can I use lists to track simple test questions and responses?

by - Joseph Ganci


I am trying to develop a 40 question Test that will do several things.

1.Randomize the questions for each student.
2.Randomize the distractors for each question.
3.Track Student interaction with each question as in attempted not attempted.

Background and supporting information is that the questions will come from a central main database. 40 Questions will be pulled based upon Learning objective and stored in a (Class) database.

Problem: I am trying to pull in the 40 questions with the following information for each question (Question itself, distractors 1, 2, 3, 4, Correct answer, student answer, Learning Objective number)

I figure the best way to do this would be through a list or array but I cannot get beyond simple list mentality. I can build a list with all the information in all 40 questions but how do I construct it so that all the information of each single question group is tied together?

I considered going from the main database to a class database to a student database, but I am thinking I could much more efficiently track each students internal progress through lists.


You're welcome and thanks for your praise of the book. The approach I would normally take with what you're trying to do is to use a linear list of property lists. Those who attended the Texas Authorware Workshop this past weekend saw an example of this in my keynote speech.

In your case, I would set up a linear list called questions. Each location in the list would be a property list of the different items you need. Here's an example from a recent Authorware app.

qnum := 1
questions[qnum][#question] := "Question part"
questions[qnum][#answers][RespOrder[1]] := "Peggy Babcock"
questions[qnum][#answers][RespOrder[2]] := "Pebby Backpack"
questions[qnum][#answers][RespOrder[3]] := "Peggy Backpack"
questions[qnum][#answers][RespOrder[4]] := "Peppy Bagpipe"
questions[qnum][#right] := RespOrder[1]
questions[qnum][#feedbacks][RespOrder[1]] := "Muito bem."
questions[qnum][#feedbacks][RespOrder[2]] := "Infelizmente a resposta correta é "^letters[questions[qnum][#right]]^"."
questions[qnum][#feedbacks][RespOrder[3]] := "Na verdade não. A melhor resposta é "^letters[questions[qnum][#right]]^"."
questions[qnum][#feedbacks][RespOrder[4]] := "Que pena! A resposta certa é "^letters[questions[qnum][#right]]^"."
questions[qnum][#qtype] := qtypeAudio
questions[qnum][#video] := "tw1"
questions[qnum][#image] := @"1PeggyBabcock.tif"
questions[qnum][#animatedgif] := @"01_tw1.gif"
questions[qnum][#audio] := @"tw1.wav"



The reason I'm using RespOrder above is that I'm randomizing the four distractors (1, 2, 3, 4) in a list first. This way you can randomize the distracters without fear that the "right" answer will be pointing to the "wrong" answer. By the way, for those curious, that's Portuguese. Oh, and subsequent questions use:

qnum := qnum + 1

instead of assigning a literal number like 2, 3, 4. That allows you to randomize the questions.

There is 1 review
with a rating of 10
Read the review or
Add your review
Back