Requirements Specification
for Testtool
Version 1.0
13 December 2006





Contents

1.  Introduction
     1.1. Problem Statement
     1.2. System Personnel
     1.3. Operational Setting
     1.4. Impacts
     1.5. Related Systems

2.  Functional Requirements
     2.1. User Interface Overview
     2.2. Managing the Question Database
         2.2.1. Editing a Question
     2.3. Adding a New Question
         2.3.1. Adding New Question Properties
         2.3.2. Multiple Choice Question
         2.3.3. True/False Question
         2.3.4. Coding Question
         2.3.5. Short Answer/Essay Question
         2.3.6. Fill-in-the-blank Question
         2.3.7. Matching Question
         2.3.8. Previewing an Added Question
     2.4. Creating a Test
         2.4.1. Creating an Auto-generated test
         2.4.2. Creating a Test Manually and Manually Editing an existing Test
     2.5. Proctoring a Test
     2.6. Grading Interface
         2.6.1. Grading a Multiple Choice Question
         2.6.2. Grading a True/False Question
         2.6.3. Grading a Coding Question
         2.6.4. Grading a Short Answer/Essay Question
         2.6.5. Grading a Fill-in-the-blank Question
         2.6.6. Grading a Matching Question
     2.7. Student Functionality
         2.7.1. Taking a Proctored Test
         2.7.2. Taking a Non-Proctored Test
         2.7.3. Reviewing a Graded Test

3.  Non-Functional Requirements
     3.1 System-Related Requirements
     3.2 Process-Related Requirements
     3.3 Personnel-Related Requirements

4.  Developer Overview

5.  Formal Specification
     5.1. Questions (questions.fmsl)
     5.2. Database (database.fmsl)
     5.3. Tests (tests.fmsl)
     5.4. Test Template (testtemplate.fmsl)
     5.5. Question Create Functionality (QuestionCreateFunctionality.fmsl)
     5.6. Question Edit Functionality (QuestionEditFunctionality.fmsl)
     5.7. Autograding (Grading.fmsl)
     5.8. GradeInterface.fmsl (GradeInterface.fmsl)
     5.9. Proctor Functionality (ProctorFunctionality.fmsl)
     5.10. Student Functionality (StudentFunctionality.fmsl)
     5.11. Main UI Functionality.fmsl (MainUIFunctionality.fmsl)
     5.12. File.fmsl (File.fmsl)
     5.13. Edit.fmsl (Edit.fmsl)

 




List of Figures