2.2.2 Creating a Blank Test
To create a new test from scratch, the user selects File->New->'Blank Test' from the menu bar.
The TestTool responds by opening the 'New Test' window shown in Figure 1.
Figure 1: New Test Window
The user must provide the class, test title, and a unique filename in order to create a test manually.
When the user selects 'Submit', the TestTool responds by populating the Question Bank tab in the main UI with a filtered view of the repository. The output of this operation is detailed in Figure 2.
Figure 2: Question Bank Tab in Main UI
The 'Question Bank' only contains questions from the repository that belong in the specified class. If there are no questions for the chosen class in the repository, then the table representing the 'Question Bank' is empty until the user adds questions for that class to the repository.
The current test window displays the same information as the question bank tab, except the 'Point Value' of each question and the 'Total Points' of a test become visible. The 'Total Points' of a test dynamically changes as questions are added to and removed from the test.
Along with populating the question bank, the TestTool also creates the 'Current Test Window' (labeled "Midterm 2 Winter 2010" in Figure 3). The 'Current Test Window', coupled with the 'Question Bank', provides the user with the the necessary functionality to build and edit a test from scratch.
Figure 3: Current Test Window
The user can add questions to the current test in a two-step procedure. First, the user highlights the candidate question in the 'Question Bank' tab (shown in Figure 4).
Figure 4: Selected Question in Question Bank
The user adds a selected question to the current test by either dragging and dropping it into the 'Current Test Window', or selecting the 'Add' button in the 'Current Test Window'.
The TestTool responds by populating a row in the table within the 'Current Test Window' with the candidate question's attributes, including the point value for that question. This operation is depicted in Figure 5. For a detailed description of how the 'Point Value' of each question is assigned, see section 2.2.1.
Figure 5: Current Test Window Post Add
Additional Current Test Window Functionality
From the 'Current Test Window', the user customizes question order by selecting a question then dragging it and dropping it in the desired location. Figure 6 depicts the selection and movement of a question.
Figure 6: On the Fly Move
When the user drags a question within the 'Current Test Window', the TestTool responds by cascading all questions below it, as shown in Figure 7.
Figure 7: Post Move
From the 'Current Test Window', the user edits any question in current test by simply selecting a field and changing the value (standard Excel functionality). Edits are only temporary changes made to the current test.
Figure 8: On the Fly Edit
From the 'Current Test Window', the user removes questions by highlighting them and selecting the 'Remove' button.
Figure 9: On the Fly Remove
Figure 10: Post Remove
From the 'Current Test Window', the user replaces an undesirable question by highlighting it and selecting the 'Replace' button. The question is replaced with a new question from the question bank with matching difficulty, type, and time attributes. The new question also has the same default point value as the old question.
Figure 11: On the Fly Replace
Figure 12: Post Replace
Additional Question Bank Functionality
The user sorts questions by clicking the column heading with the desired attribute to sort by. Each row is sorted alphabetically ascending. The user selects the column again to sort alphabetically descending.
Figure 13: Column Selection
Figure 14: Post Sort By Time
The user searches for specific questions in the question bank by using the search bar on the bottom of the 'Question Bank' tab. Only questions that include all of the specified tags are shown in the question bank. Tags are separated by commas. (e.g. "print, scanf") If the search bar is blank, then all questions are shown.
If the user selects tags "memory" and "scanf", the tool displays the rows containing these tags in the table within 'Question Bank' tab
Figure 15: Search Bar and Post Search