[LON-CAPA-users] Re: Bubble sheets

Stuart Raeburn lon-capa-users@mail.lon-capa.org
Sun, 01 Feb 2009 23:30:41 -0500


Lars,

>  (a) What is the CODE used for?

CODE is used in "anonymous" bubble sheet quizzes/exams in which each  
student receives a quiz/exam with a code (e.g., six letters: each  
letter one of A through J) in place of the student's name.  This makes  
it easier to administer the quiz/exam, as it is no longer necessary to  
match a correct (named) printed quiz/exam to the corresponding  
student.  Instead the students must bubble in the six character code  
in the appropriate location on the bubble sheet, so that LON-CAPA will  
grade the student's bubbled submissions according to the version of  
the exam the student answered (the CODE is used in the randomization  
when the quizzes/exams are printed).  When using CODEs it is not  
necessry to print an individual quiz/exam for each student.  If you  
decided to use say ten CODES you could print ten quizzes/exams (one  
for each of the CODEs) and could then photocopy each version how ever  
many times you needed to generate the required total number of  
quizzes/exams.  To use anonymous quizzes/exams with CODEs your bubble  
sheet scanning mechanism needs to be able to extract the code (which  
the student bubbles in on a specific location on the bubble sheet) and  
include it in the raw data record written for each student in the  
columns specified according to: CODEstart and CODElength

> (b) What is Qlength The examples uses a value of either 1 or 10.  
> What does this mean?

Qlength is the number of characters in the raw data used to record the  
student's bubbled answer for each row on the bubble sheet.  If the raw  
data indicate bubble position by a letter or a number (e.g., A = first  
bubble or 1 = first bubble etc.) then the number of characters would  
be 1 (assuming 10 bubbles or less for the number case).  If however,  
bubble position is indicated by position of the Qon (bubbled)  
character, then each bubble row might have 10 characters (one for each  
of the 10 possible positions with Qon at the position bubbled and Qoff  
elsewhere, (e.g. if Qon = 1, Qoff = .  the portion of a student's  
record for a single bubble row might be:  ...1......  indicating  
position 4 was the one bubbled.

> (c) What is Qon and Qoff? Qoff seems to be empty in the examples. Is  
> Qon    designed to explain to lon-capa any discrepancy between the  
> labeling of lon-capa question options and those on the scantron form?

Qon is the character used in the raw data generated by the bubble  
sheet scanner to indicate a filled-in bubble.  This could be the  
corresponding letter (A - J), or number (1,2 ... 9,0) to indicate  
which bubble was filled, or in the positional case might be a  
character (e.g., 1) to indicate the presence of a filled bubble.  Qoff  
is the character used to indicate an unfilled bubble, this is commonly  
a single blank space.

> (d) What are PaperID and PaperIDlength
PaperID is an identifier which the bubble sheet scanner generates for  
each sheet scanned (some hardware prints this on the bubble sheet when  
scanning it so that you can match the raw data to the corresponding  
paper, in case there is a question over multiple bubbles or undetected  
bubbles on a single bubble sheet row). The PaperID is included in the  
raw bubble sheet data at the column position defined by PaperID.   
PaperIDlength is the number of characters used for this identifier.   
LON-CAPA reports the PaperID (if defined) where a bubble error is  
encountered (double bubble, missing bubble etc.) ans also uses the  
PaperID in cases where each CODE is only to be used once, i.e., each  
student receives a unique quiz/exam.

For completeness, below is the text included in the bubble sheet  
config comments in /home/httpd/lib/perl/Apache/grades.pm (the LON-CAPA  
module used for grading using bubble sheet raw data files):

       name         - internal name for the this configuration setup
       description  - text to display to operator that describes this config
       CODElocation - if 0 or the string 'none'
                           - no CODE exists for this config
                      if -1 || the string 'letter'
                           - a CODE exists for this config and is
                             a string of letters
                      Unsupported value (but planned for future support)
                           if a positive integer
                                - The CODE exists as the first n items from
                                  the question section of the form
                           if the string 'number'
                                - The CODE exists for this config and is
                                  a string of numbers
       CODEstart   - (only matter if a CODE exists) column in the line where
                      the CODE starts
       CODElength  - length of the CODE
       IDstart     - column where the student ID number starts
       IDlength    - length of the student ID info
       Qstart      - column where the information from the bubbled
                     'questions' start
       Qlength     - number of columns comprising a single bubble line from
                     the sheet. (usually either 1 or 10)
       Qon         - either a single character representing the character used
                     to signal a bubble was chosen in the positional setup, or
                     the string 'letter' if the letter of the chosen bubble is
                     in the final, or 'number' if a number representing the
                     chosen bubble is in the file (1->A 0->J)
       Qoff        - the character used to represent that a bubble was
                     left blank
       PaperID     - if the scanning process generates a unique number for each
                     sheet scanned the column that this ID number starts in
       PaperIDlength - number of columns that comprise the unique ID number
                       for the sheet of paper
       FirstName   - column that the first name starts in
       FirstNameLength - number of columns that the first name spans

       LastName    - column that the last name starts in
       LastNameLength - number of columns that the last name spans

There is also some discussion of bubble sheet exams in the Course  
Coordination Manual (section 19: Scantron Examms - page 65).

Stuart Raeburn
MSU LON-CAPA group


> Thanks Stuart and Ray for answering these questions. I still hae a  
> couple of questions on the fields in scantron.tab:
>
> (a) What is the CODE used for?
>
> (b) What is Qlength The examples uses a value of either 1 or 10.  
> What does this mean?
>
> (c) What is Qon and Qoff? Qoff seems to be empty in the examples. Is  
> Qon    designed to explain to lon-capa any discrepancy between the  
> labeling of lon-capa question options and those on the scantron form?
>
> (d) What are PaperID and PaperIDlength
>
> Thanks so much for your help.
>
> Lars.