|
Computer Based Testing:
A Question of Time - Andrew Linn
We used Macromedia Director
to create these programs. For timing, we used Director's "the Milliseconds"
command. When a computer is turned on, the internal clock starts counting
the passage of time in milliseconds. The Milliseconds command reads the
current number of milliseconds that have passed since the computer was
turned on. Very accurate, (down to the millisecond) and available on both
Macs and PCs.
When we wanted to begin timing,
the program set a variable to the current number of milliseconds, something
like "BeginTime = the Milliseconds." When we wanted to stop
timing, the program would issue something like "EndTime = the Milliseconds."
The it does the math: EndTime - BeginTime = TimePassed.
The problem is accurately getting
the computer to recognize when the EndTime command should be issued and
processed. We needed user input, and so required some way for the user
to signal the computer that something needed to happen. We chose the keyboard
as the most common, most readily available user interface, and specified
various keys as indicators of correct/incorrect answers.
When a key is pressed, a signal,
called an interrupt, is sent to the CPU. In a multitasking environment
such as Windows or the Mac OS, the CUP might or might not be busy at any
given time, and the interrupt may or may not be processed the instant
it is sent. This variances in timing may be substantial enough
to skew data, or if the computers are sufficiently powerful the variance
might be too small to notice.
There are literally dozens
if not hundreds of variables that might or might not affect this timing:
CPU speed, amount of memory, other processes running concurrently, changes
in the operating system, variances in keyboards, variances in the components
that make up the computer itself, who knows what all, perhaps even ambient
temperatures.
The long and the short of it
is: I don't know. Tests could be devised to determine the variances, but
only under certain circumstances,
|