Tracing student activity by web page reauthoring with a CGI script

Tom Backer Johnsen ( and Simon Duff

University of Bergen, Norway

As a teaching aid, the WWW is ideal, at least on a superficial level.  Once
placed on a server, web pages are easily accessible using standard and
platform independent software. The location of the viewer / client is also
to a large extent irrelevant.  In spite of copyright problems, it is
therefore very tempting to place a large amount of information on the web in
an attempt to supplement conventional educational methods by providing the
users with some form of self-assessment learning environment.

This highlights one of the major weaknesses of the WWW, lack of control.
Web servers normally do not track the activity of single users. The moment
the server finishes transmission of a web page to the client it normally
"forgets" all about the transaction.  In other words, it is simple to write
a chain of pages containing educational material but, it is more difficult
to trace and log details of the activity of each of a number of students.
For example, when a student responds to a questionnaire, it is normally
impossible to know which pages s/he has looked at and hopefully read. This
is important information for the development of any teaching program and
particularly for teachers who wants to provide students with a useful and
'intelligent' self-assessment tool using the WWW.

One solution is to write each individual web page as a CGI script, i.e., as
a dedicated computer program placed on a web server.  The program can then
log all activity (link usage, times, responses) before sending off the next
page.  This is at best cumbersome and requires at least simple programming
skills.  However, since a web page is simply text with embedded HTML tags,
an alternative is to write a "filter", i.e., a program to transform the text
and the tags in normal web pages according to predefined rules.  The teacher
can then use normal authoring tools to write a page, and let the filter on
the server do the necessary conversion reprogramming) of the web page "on
the fly".

The "Athene" program is a filter of this type, written as a CGI script in
Delphi (a Pascal dialect).  This program resides on a web server and may be
started from a normal web page.

The primary function of the program is to read a web page and modify it
before transmitting the page to the client machine. This includes the
insertion of some Javascript statements, and a form. All links defined as
"href" statements are also changed, to "submit" type of functions. All
modifications are in standard HTML, and the appearance of the page is unchanged.

Questionnaire pages are treated in similar manner, with the difference that
individual questions are transferred to the client machine one by one with
the response alternatives as radio buttons.  The Javascript functions
inserted in the page also validates responses before they are returned to
the server and included in the log.

All information from the client machine (including the use of links and the
time spent on each page) is stored in a log (one catalog per user).
Users/clients may request a summary of their activity.

The main advantages from the point of view of the students are :

- They can selectively browse the material, and concentrate on areas they
have not yet been exposed to or areas in which their performance has not
been up to their own standards.
- They can receive feedback from the questionnaires.
- They may use any machine (any Windows flavor, OS/2, Linux, Unix), provided
it is on the Internet.
- Any standard JavaScript-enabled browser may be used to view the material.

For the teacher the advantages are :

- No special tools are needed for authoring.
- The author of the web page controls the sequence of the pages and where
the questions are to be presented in the sequence.


- The teacher needs access to a web server (DOS/Windows/Intel) where the
webmaster permits scripts.
- References between pages in the teaching program must be "self-contained",
i.e., no links outside the system.

Planned extensions include :

- Investigate the most appropriate kinds of material to present (e.g.,
lecture summaries, in depth analyses of experiments, student exercises etc.)
and the most appropriate mode of presentation (e.g., text, animations, video
clips etc.). Currently the system uses primarily text based lecture notes /
- Permit past behavior on the system to control information to be presented,
e.g., refuse to go past a certain point in the pages unless particular
questions have been responded to, or certain pages have been read.
- Permit more types of responses in the questionnaires (at present only
multiple choice are permitted)
- Generation of reports on page usage to the teacher (dedicated program in
the server)

A short and simple demo of the current version of the program (using
Cognitive psychology and Psychometrics as tools) may be found in URL :   More details can be found at

The project has been financially supported by the EIST program at the
University of Bergen.