Section 4: Developer Overview

This section is a brief executive summary of formal model's module structure and major objects and operations.

The Question module contains the objects and operations related to the variously formatted questions supported by the test tool. It also defines the inheritence hierarchy modeling the following question progression through the stages of creation, test inclusion, student completion, and instructor grading:



The QuestionBank module defines the tool's question bank as a list of FullQuestions. It models operations such as the addition, modification, removal, and synchronization of the user's question database. The specification employs the following model of a test:



The fundamental test object, and unit saveable from the File menu, is the GeneratedTest. It stores question references instead of actual questions to illustrate that if a question is modified in the question bank, all unpublished tests, including those saved to disk, are affected. The GeneratedTest is the object generated by the creation wizard modeled in module TestGen. Module Test defines the objects and operations associates with manual generation of tests. The publishing process, also detailed in this module, makes a created test available for download by proctors and students.

In modules Proctor, StudentTesting, and Grade are the objects and operations modeling test proctoring, taking, and grading, respectively.