The Mathwise environment has been designed to provide some discipline in the use of hypertext (without which users can easily lose sight of their learning objectives) whilst simultaneously retaining the advantages of hypertext as a cross-referencing mechanism. This is achieved by allowing direct jumps between modules only through small blocks of materials known as leaflets (see Figure 1.). So for example if a user encounters a reference to `phase' in a module on electric circuit theory, it is possible to call up a leaflet on `phase' (if it exists) from another module about, say, complex numbers. However, the user is prevented from studying the complex number module in its entirety except by deliberately quitting the circuit theory module and then entering the complex number module.
A primary requirement was that the whole collection of courseware materials should be as flexible as possible, allowing an individual site to replace a leaflet or module with one of its own. In order to achieve this an application known as "The Courseware Manager" keeps track of all the components by means of a database which it can rebuild dynamically, allowing lecturers to configure the installation using standard graphical user interface techniques for file management (e.g., Macintosh Finder/Windows File Manager).
The Courseware Manager also provides tools for labelling files as leaflets and modules so that material not previously associated with Mathwise can be quickly incorporated. This allows rapid `shallow integration' of courseware resources written in almost any authoring/presentation system.
The information required to specify a courseware object in this system is comprised of two data structures called `descriptors' and `locators'. The descriptor contains information such as the type of courseware object, a unique code to identify which module the object belongs to and, amongst other things, a list of keywords for searching. The locator contains information used by the Courseware Manager to `navigate' to the node. This may be as simple as opening a file or as complex as navigating to a particular card in a HyperCard stack and highlighting a word in a text field.
The Courseware Manager manages databases of descriptors and allows the target of a link to be specified in general ways, e.g., `leaflet about phase' in the above example. In the event of multiple hits (or no hits!) it presents the user with a suitable choice dialog (or fail message).

Figure 1. The Mathwise Entry Unit.