DISCLAIMER: It has been quite awhile since anyone worked on this code, and the original author has since left CMU. This README generally describes the files in this archive, but the reader will need some experience with perl5 to understand exactly how and what each of these scripts do. Background: ------------ This README describes the distribution of a system that the CMU Pebbles project created for administering concept tests in a classroom/lecture environment. Concept tests are typically multiple choice questions, which are often administered by a lecturer in the middle of a lecture in order to guage the understanding of the students. This allows some "real-time" feedback for the instructor, who can then alter his lecture to account for the pace of the class. This system was written for the second semester freshman chemistry class at CMU (Chem 106: Modern Chemistry II). It was first used in the spring semester of 2000, and once again in 2001. A CMU technical report was written about the experiences with the software in the spring 2000 class. I have included it in the distribution as CMU-CS-00-152.pdf. It is also available from the Pebbles web page at: http://www.cs.cmu.edu/~pebbles/papers/CMU-CS-00-152.pdf. I highly suggest reading the technical report before examining the software, because it gives a good description of the implementation and capabilities of this system. The system anticipates that the teacher will have a laptop computer that they lecture with, and that the students will each be equipped with a Internet-connected machine with access to the WWW. We used 802.11b equipped HP Jornada 680 and 720 handheld computers, but any devices that can access the WWW and supports HTML forms and cookies should be capable of using this system. The system is not currently being used and the current implementation can be accessed at http://quiz.cs.cmu.edu/. The administration password is available on request. One of the key discoveries of the first classroom experience with the software was that teachers rarely had time or inclination to author their own tests using the system. It turned out to be easier to use the system without the authoring system, by showing handwritten questions on an overhead projector and asking students to pick the corresponding answer on their handheld. Evidence of this discovery can be found in most of the script files. Directories: ------------ icons: some images that were used in early example tests to show the versatility of the test authoring system (see the tech report). May no longer be needed. html: The navigation structure used for accessing the tests. These should be the same files that make up the quiz.cs.cmu.edu website. cgi-bin: These are the scripts used for implementing the authoring system. They will be described in somewhat more detail below. Scripts: -------- register.cgi: Creates a cookie that contains the users ID information, which is used by testconcept.cgi for recording purposes. (for us, this is the user's "andrew" login, the general purpose computing system at CMU) listregister.cgi: Lists the handhelds that have registered with the register.cgi script. conceptscores.cgi: Displays stored data for any concept test. conceptscores1.cgi: A shortcut for displaying the stored data for the "generic" (see the tech report) concept test. testconcept.cgi: Displays the question for any concept test. concepttest1.cgi: A shortcut for the testconcept.cgi script, that displays the question for the "generic" concept test. conceptmonitor.cgi: Used for monitoring a test in progress and, in the new system, for setting the parameters of the next question (see the tech report). monitorconcepttest1.cgi: A short for monitoring the "generic" concept test. testgen.cgi: Deals with the "standard" test. Not sure what this was... Perhaps documented in the technical report. testsubmit.cgi: Part of the test authoring system...Used for uploading a test to the server. Currently unused in the CMU system. testmonitor.cgi: Monitors the "standard" test. Again, its unclear if this still works or what it does. Installation Notes: ------------------- This software currently runs on an apache server on a Sun workstation. It should work correctly if installed on any web server that has CGI and perl support, but there are no guarantees. The perl scripts rely on several libraries. CGI.pm and its associated libraries are required. MLDBM.pm is also required for database storage. I don't know if this has a more common name. An XML parser module is also used by some of the older scripts, I believe XML.pm. All of these libraries should be available on www.perl.com. Questions: ---------- This software is provided AS IS, and is NOT supported by the Pebbles research group. You are welcome to ask questions about the software, but we cannot guarantee a quick or accurate response, especially about implementation details. To ask a question, please contact: Jeffrey Nichols jeffreyn+@cs.cmu.edu