NTU Singapore has been using the online assessment tool for quite some
time now. There are some issues that you should be aware of, viz:
A) the number of simultaneous students accessing the system (those doing
the online test, AS WELL AS others on campus) is limited by the system. If
you are running on Sun Solaris, that limitation is the Apache web server.
A parameter called max_client determines the number of such simultaneous
connections. BB sets by default (I think) 40 connections. The number of
connections depends on your hardware configuration. In other words, you
set the max_client value to 250 (there is a maximum value of 256), your
system must have the hardware resources of RAM and processors to support
it. Otherwise, it would be a case of installing a 250 kmph speedometer in
a car without upgrading the engine size, types, etc. For the Wintel
platform, the limit, based on our experience, is the capability of your
network card. In other words, it is usually not the BB application or the
server that is the limit.
B) to overcome this physical limitation, there are a few avenues:
i) upgrade your current system hardware and then increase your
max_client parameter (there is an article on this - search the Apache
documentation on the web. There is another parameter for connection
persistence, that is, how long to keep the connection alive for. There are
also other things to fine-tune, but these are the two that you should
start with
ii) have multiple application servers, each with the capability of
serving up to the max_client parameter of 256 (not advisable - we set ours
at 250). In this multiple application server, you should have a load
balancer up front. This configuration also provides some level of
robustness and redundancy.
iii) in case you see $$$, there is a cheaper and more immediate
solution; this is to stagger the test by minutes. The mechanics is as
follows: when the individual request or initiate an online test, and the
test is designed to select a random subset from a pool of questions, a
computational intensive process begins. Such a process takes time. If all
120 students (worst case scenario) activate such a request simultaneously,
and your max_client is 40, and these 120 are the only students online
(unlikely), then the first 40 to have done so will be served first. The
randomization process starts (your CPU activity level shoots up). The 41th
students and following would have to wait for the first test to be
delivered. If such a test does not include graphics and other multimedia
element, that might not be too bad, otherwise, it would be really bad!!
So, after the delivery of questions completes, the next student (41st,
42nd, etc) in the queue gets served, and the computer-intensive
randomization process begins, and so forth. Depending on the time-out
value, it would be inadvertent, therefore that those further down that
queue (like 80th, 81st, perhaps, of 120) will be timed out with a server
error message. Understanding this leads us to approach the situation as
follows:
a) stagger the test by short intervals. For example, you have six classes.
Break the students into groups.
b) let Group A (of 5 students, or row 1 from the back) start the test.
c) after that group of students have the test presented on the screen
(usually, depending on the server load, type of question, use of
multimedia elements, etc) after a few minutes as discussed above, get
Group B in whichever classroom to start. This caters for the possibility
of all Group Bs of 6 classes of 5 students (=30 out of the max_client of
40)
d) repeat for the other groups. As the tests are usually individually
timed, it does not really matter too much when each test was started for
the class. It is usually small, but more importantly, you have conducted
the test without incident.
e) tests should be proctored to prevent cheating (see below).
C) I can share with you war stories of the ingenuity of students with the
use of technology. Here's two major ones:
i) In an online test during our early days, a student had problems with
the browser. I closed the browser with the intent of re-starting it. Lo
and behold, there was another window - an ICQ message from his friend with
formulae, notes, etc. behind the active test page! This is the advent of
the e-cheat sheet!
ii) the use of random question selection was mentioned. Well, here's
another war story. A student can, after the questions have been presented
to him, can select all/copy/paste the questions (yes, it is different from
the other students to prevent cheating-by-peeping) on a Hotmail e-mail
page, and send it to his friend/senior/etc. Answers come back as a string
of alphabets. Perfect score, this time, with the help of mere mouse clicks!
These are two challenges that we know of. Solution? We use a product
called SecureExam which has worked well for us. Effectively, it
quarantines the test environment, that is, it does not allow any other
windows or applications to be created. The only actions allowed are (a) do
the test, and (b) press the "Submit" button.
Of course unproctored informal online tests – this can be useful as part
of the pedagogical point of view.
|