In order to make the tool accessible for as many users as possible, it has been established as a WWW-based application. It is composed of static documents (hypertext documents, pictures) and dynamic documents implemented using Common Gateway Interface (CGI) scripts. The static documents are created manually or formed automatically during the installation. The dynamic documents are parameterised and generated during the runtime according to a specific request. User interaction such as identification or data input for homework evaluation is based on submission forms. In general, more advanced evaluation interface, e.g. based on Java applets, can be used. Each form submission invokes corresponding CGI script with necessary parameters to generate a dynamic document. This script typically queries course database, performs some necessary computation, updates database (e.g. writes homework evaluation result), and displays output. A database access library is provided as a part of the whole environment.
Implementation of database supports multiple courses. Each course database has several folders. Student folder contains student related data - student id (used for student identification in the system), student name, and student coefficients used to parameterise homeworks for that particular student. Homework folder contains one entry for every evaluation with homework number, student id, and result of evaluation. Test folder, records of which are again related to student id, consists of test results. Separate database folder is used to store logged access to protected areas (where authentication is required). Note that database structure can be easily adapted according to the further needs. The overview of the tool layout is depicted in Figure 1.
Teacher has to supply the homework description, evaluation form, and course related data, all prepared by his/her favourite tool, and evaluation CGI routine (a standalone program or interface to available analytical package). No restriction on particular programming language is given, although additional support for scripts written in C language is provided. Tools for automatic generation of unique student parameters and for automatic installation or de-installation of the course package (or its parts) to or from WWW server are also available.