Web Tutorials with the WTUTOR System

Mark Huckvale
Phonetics and Linguistics
University College London
June 1998

Contents

  1. Outline
  2. Components
    1. Browser
    2. WTUTOR software
    3. QFORM & QASK software
    4. Quiz database
    5. Tutorials
  3. Quiz Design
    1. Access
    2. Question edit form
    3. Question numbering and texts
    4. Question response line formats
  4. Tutorial Design
    1. Preparation tools
    2. Embedded controls
    3. Authoring guidelines
  5. Software download and installation

1. Outline

This document describes how to author tutorial materials compatible with the Web-based tutorial system WTUTOR developed within the Department of Phonetics and Linguistics at University College London.

All of the web tutorial software is in the public domain - if you are interested in using or developing the software or compatible tutorials, please send an e-mail to Mark Huckvale (mark@phon.ucl.ac.uk).

The rest of this document contains 4 main sections: in section 2 the basic components of the system and their interaction are described; in section 3 details of the interactive quiz system are given, while section 4 describes the construction of the tutorials themselves. A description of how to download and install the software is given in section 5.

The web-based tutorial system is still under development - the information in this document is provisional and subject to change without notice.

2. Components

2.1 Browser

User operation of the system is through a web browser such as Netscape Navigator or Microsoft Internet Explorer. The software has been designed to be operational with most varieties of browser, but support for HTML forms and tables is expected. Tutorials may also include multimedia components such as: GIF and JPEG formatted images, WAV audio files, AVI or MPEG video clips.

The current software has been tested with the following browsers: Netscape Navigator 3.0 Gold, Microsoft Internet Explorer 3.01. Future versions and some future functionality may require a limited amount of JavaScript support. Future individual tutorials may require Java, VRML or other functionality.

2.2 WTUTOR software

WTUTOR is a program that operates on a web server and mediates access to tutorial material. Requests from a browser on the network are satisfied by the WTUTOR program using tutorial texts and quizzes stored on the server. WTUTOR operates according to the CGI (Common Gateway Interface) specification. Requests may be made using the GET or POST methods of access specified in CGI. WTUTOR is written in ANSI C and is freely available.

2.3 QFORM & QASK software

QFORM is a program that supports the authoring of quizzes. Quizzes are collections of questions, answers and explanations stored on a web server. New questions can be added to the database of quizzes, or existing questions can be modified or deleted from a browser anywhere on the network. Password protection prevents unauthorised access. A description of the operation of the program and the allowed question formats are given in section 3.

QASK allows entire quizzes to be run: providing the selection, presentation and marking of quizzes.

QFORM and QASK operate under CGI, are written in ANSI C and are freely available, see end of this document.

2.4 Quiz database

The database of quizzes are stored in a hierarchy of directories on the server. The top level directory defines the 'course' for which the quizzes are provided, the second level directory defines the 'lesson'. Within the lesson directory, a number of quizzes may be stored, one per file. Each quiz may consist of 1 to 100 questions. Thus each question is defined by the quadruple:

      course, lesson, quiz, number
for example:
      B203, Basics, Logarithms, 4b
The questions are stored in a simple keyed text format which is constructed from an HTML form input by the QFORM and converted back to HTML by the QASK and WTUTOR programs.

2.5 Tutorials

Tutorials are HTML documents stored on the web server, processed by the WTUTOR program and delivered to the user's browser. Currently all tutorials are stored beneath a single directory on the server. They may be written using any HTML editor, for example Microsoft Word with the Internet Assistant add-in.

Control of the tutorial - for example embedded interactions and division into sections - is undertaken with special non-HTML control commands incorporated in the HTML file. The WTUTOR program decodes these commands and presents appropriate portions of the tutorial to the user, incorporating quiz questions and answers as required. Section 4 describes the authoring of tutorials.

3. Quiz Design

3.1 Access

Access to the database of questions is through a hyperlink to the QFORM program of the form:

      .../cgi-bin/qform?uname=mark&authority=psswd
The 'uname' parameter specifies the user name and the 'authority' parameter specifies the user password in clear text. Such a link can be constructed either with straight HTML or through a POST method using an HTML form. The main quiz authoring page at UCL provides such a form.

The result of this enquiry is a top-level list of courses on the system. Access to the lessons, quizzes and questions within a course is limited by password. Courses for which changes are authorised by the supplied password are indicated as hyperlinks. Only the system administrator can set up new courses and assign usernames and passwords.

By following a hyperlink for a given course, a list of available lessons is presented. New lessons may be added and existing lessons may be deleted (provided that they contain no quizzes).

By following a hyperlink for a given lesson, a list of available quizzes is presented. New quizzes may be added and existing quizzes may be renamed or deleted.

By following a hyperlink for a given quiz, a list of available questions is presented. New questions may be added, and existing questions edited or deleted.

By following a hyperlink for a given question or for 'add new' question, a question specification and editing form is displayed.

3.2 Question Edit Form

The question edit form comprises the following components:

3.3 Question numbering and texts

Questions may be numbered by any alphanumeric string. However questions are sorted according to the following method: The number is divided into two parts: an initial numeric part and an alphanumeric part. Questions are sorted on the numeric part on the basis of their numerical value, and for questions with identical numeric values, the questions are sorted on alphabetic order of the second part. Thus the sequence 1a,1b,2a,10a is correctly sorted.

Optionally, each question has a question text which is presented before the response lines and which is normally used to state the question to be answered.

Optionally, each question has an incorrect answer explanation text which is presented only when the user has got the question wrong.

Optionally, each question has a further explanation text which is always presented with the answer to the question whether the user got the question right or wrong.

For each of these texts entered in the question edit form, links to other HTML documents may be entered by using HTML instructions, and special characters and multimedia components may also be included using the standard HTML commands.

3.4 Question response line formats

Each question has 1 or more response lines associated with it. The response lines indicate, for example, the different answer choices in a multiple-choice question, or the need for an edit field for users to type in their answer. There are 3 basic types of response line: single selection, multiple selection and edit. Combinations of these may also be used.

Single selection lines correspond to multiple choice questions where only a single line may be chosen. Multiple selection lines correspond to multiple choice questions where a number of lines may be chosen to correspond to the correct answer. Edit selection lines specify an edit field in the question where users should type their responses.

On the question edit form, each line begins with a selection box containing a code from the following selection:

In the second field on the response line may be typed a prompt - usually the text comprising one of the answer selections.

In the third field may be typed the matching answer(s) for edit responses. When there are a number of possible answers, these can be given on subsequent lines in the form. These lines should be indicated as 'continuation' lines using the first field. Continuation lines may use regular expressions to match typed answers.

The fourth field is used to indicate a non-default scoring scheme: enter a numeric value indicating the score to be attributed when this response line is chosen. Fractional values may be used, although the final score for the question is stored only as integral values. The default scheme is to give 1 point for a totally correct answer, and 0 points for incorrect and partially correct answers.

The fifth field is used to enter an explanation text returned to the user when this response line is selected. For correct answers, the explanation field may be used to give congratulations.

Notes:

4 Tutorial Design

4.1 Preparation tools

WTUTOR compatible tutorials are simple HTML formatted documents containing embedded control commands. Any HTML editor may be used to create the tutorials, including those based on a word processor such as Microsoft Word. The HTML tutorial document can contain hypertext links and multimedia components.

Care should be taken with references to embedded multimedia components, since these need to be placed on the web server in a directory where they may be accessed using absolute addressing. Since the tutorial is delivered by the WTUTOR program, the base directory of the tutorial document is not known by the server and hence relative links are inoperative.

4.2 Embedded controls

All the control commands understood by the WTUTOR program are specified inside curly brackets (braces) in the HTML tutorial document. For example the command

      {ASK Number=1b}
would ask question 1b from the currently selected quiz at this point in the document.

Currently, the following commands are available:

{START}
This indicates the point in the document where the tutorial starts. It is at this point that the HTML FORM command is issued. Normally this is placed at the very start of the tutorial.
{END}
This indicates the end of the tutorial. When this point is reached, WTUTOR outputs the 'Complete Tutorial' button to allow a summary printout of the whole tutorial to be produced.
{SECTION}
This indicates the start of a new tutorial section. Sections are used to divide a long tutorial up into manageable pieces. Tutorials are also divided up by quiz questions, so the use of section markers is optional. Section markers simplify the interaction with the browser and are the only means to provide sections with no quiz questions.
{ENDSECTION}
This indicates the end of a section. If no questions have been asked in the section, an OK button is output here.
{QUIZ course=cname,lesson=lname,quiz=qname}
Specifies the quiz to use for questions in the tutorial. The values cname, lname and qname are used to identify the course, lesson and quiz in the quiz database. Currently only 1 QUIZ command is allowed per tutorial.
{ASK number=qnum,number=...}
Selects and presents one or more questions from the current quiz.
{USER}
Inserts two edit fields for users to enter their username and password so that partially completed tutorials may be stored (not yet implemented).
{NOTES}
Inserts a text edit area for users to type their own notes.
{MAIL address=email}
Inserts a feedback mail link (not yet implemented)

4.3 Authoring guidelines

The features of the WTUTOR system have been designed to be compatible with good practice in the design of open learning materials. An excellent introduction to open learning may be found in the 'Open Learning Handbook' by Phil Race, published by Kegan Paul in 1989.

Some observations about the use of WTUTOR for the creation of open learning material:

Other possibilities include:

5. Software Download and Installation

5.1 Download

The C sources for QFORM, QASK and WTUTOR ready for compilation on a Unix system to operate as a CGI application on a web server can be downloaded from the directory:

	https://www.phon.ucl.ac.uk/downloads/wtutor
Look for the latest version tar achive containing the sources, for example:
	wtutor-1.0.tar

An example question set and tutorial can be found in the files:

	logs.qsc
	t-log.htm
	t-log.gif

5.2 Installation

Installation consists of the following steps:

  1. Configure, compile and install programs
  2. Create directories
  3. Set up ownership privileges
  4. Set up user passwords

To configure the software, unpack the sources into a temporary directory. You will then need to edit the file 'rootdir.h' to set up the names of the rootdirectory for the web service on the system, the name of the bin directory where CGI executables need to be placed, and the name of the directory which will form the base directory for the web-based tutoring (WBT) files.

The programs may then be compiled with an ANSI compatible C compiler such as gcc, and copied to the CGI bin directory.

The directories that need to be set up are within the base directory for the WBT system:

Within the courses directory, you need to set up one directory per course. You need to set the ownership and privileges of the 'courses' directory and the course sub-directories so that only the CGI programs can read, write and search them. This often means setting their owner to 'nobody' and their privileges to 0755.

To install the demonstration tutorial you need to create the directories: 'course/B203' and 'course/B203/Basics' and to copy the file logs.qsc into the latter. You can then copy the tutorial t-log.htm into the 'tutorial' directory. To test the tutorial, enter a URL such as:

	http://your.site/cgi-bin/wtutor?tutorial=t-log.htm

To set up privileges for quiz authoring, each course needs a password file for each allowed author. The file is put in the appropriate course subdirectory; it has the name '.<name>', for example '.mark', and it contains the password in plain text. Ensure the privileges are set so that only the CGI programs can read the files, something like:

	chown nobody .mark
	chmod 0400 .mark

That's it! For each new course, create a sub directory in courses and add a password file. You may also want to create a suitable sub-directory under tutorial and give that the ownership of the tutorial author.


Last Changed: 980626