System-Related Non-Functional Requirements

3.1 Performance

Functionality, not performance, is the first priority of the CSTutor tool. However, performance is relevant in terms of memory space and processing time.

3.1.1 Time

All operations shall complete instantly. Nowhere in the tool is there a lengthy operation which an end-user is able to discern a noticeable time lapse. This tool does not account for network delays which may occur during any data transmission to or from the server.

3.1.2 Space

The CSTutor tool makes a relatively small memory footprint under nomral circumstances. It some extreme cases, the memory footprint may reach a significant size but nothing a contemporary server cannot handle. In case of such extremems, the CSTutor tool is prepared to work with:

3.2. General Characteristics

3.2.1. Reliablility

The tool shall operate continuously for no less than 12 continuous hours without failure.

3.2.2. Robustness

The tool shall gracefully handle errors stemming from the user, the tool itself and the network which the tool is using.

3.2.3. Accuracy of Data

The tool shall be tested to ensure data is saved correctly.

3.2.4. Correctness

The tool shall be tested to ensure it correctly functions.

3.2.5. Security

The tool shall not allow a student to gain instructor or administrator privileges to

3.2.6. Privacy

The tool shall not reveal any student's ID number, name or quiz scores to anyone other than the student or the student's instructor. The tool shall keep all guest information anonymous, even to the instructor for the course.

3.2.7. Safety

This tool has no critical operations which may endager human life and hence has no Safety requirements.

3.2.8. Portability

The tool shall not have a bias for any platform over all others and shall function identically on all platforms.

3.2.9. Modifiability and Extensibility

The tool shall be implemented with appropriate design patterns such that the tool's components are extensible, such as:

  • Menu Commands
  • Page / Quiz editing features
  • Statistics analyses
  • Chat interfaces
  • etc.

    3.2.10. Simplicity vs. Power

    The tool does not have any heavy-weight operations thus its primary focus is simplicity. Speed and efficiency shall give way to simplicity in the tool's implementation.



    Prev: Adding Classes | Up: Non-Functional | Top: Index