3. Non-Functional Requirements

The non-functional requirements for the Test Tool are organized into these categories:

3.1. Performance

All test tool operations must execute instantaneously, except for the following:

The time to execute all administrative commands must be instantaneous, except for any delays due to network transmission of data from the central host.

In general, the performance of Test Tool commands that must access data across a network is subject to potential network delays. The Test Tool must transmit data as fast as is possible on any given network, but delays due to external network circumstances are beyond the control of the Test Tool.

There are no specific requirements for the allowable size of a test in terms of the number of questions. A Test on the order of hundereds of questions is the maximum expected size during normal use.

The maximum expected sizes of the Test Tool databases are the following:

While there may on the order of tens of thousands of registered users, the expected maximum number of users connected to any given server at any given time is on the order or hundreds.

The Test Tool must be able to operate with tests and databases of sizes larger than these normal maximums. However, the tool need not the meet the previously-enumerated time performance requirements for tests or databases larger than normal maximum sizes.

3.2. General Characteristics

3.2.1. Security and Privacy

Students must only be able to view their own tests and their own grades. Students must also be able to take their own tests and only in the time specified by the professor. Students must not have access to the question database and the must not have access to the test database. The central host passwords of any user must be kept secure from viewing or modification by any other Test Tool user, and from any user at all on the central host.

Grading scripts run by the system must protect system resources and confidential data. The program must sandbox these scripts so they may not access any parts of the application or the system it is running on other than itself and the code file that it is set to grade.

3.2.2. Simplicity versus Power

On a spectrum of simple-to-use versus powerful, the Test Tool is on the side of simple-to-use. Users are assumed to understand basic concepts about the internet and web browsers.


Prev: functional | Next: developer-overview | Up: index | Top: index