The Teaching Machine consists of about 500 classes.
This is not an extremely large software system, but it is large enough that the arrangement of components is a significant factor in the ease of designing, implementing, testing, and maintaining the system.
The following image shows the packages and how they relate.
The packages are arranged into 3 subsystems:
Each package contains between 1 and 25 classes.
In each package, only some classes are intended to be used outside the package. These classes constitute the interface of the package.
© Theodore S. Norvell 1996--2004.