System Test Procedure
for
Dots &
Boxes
Version 1.0
August 25, 2001
Contributors
|
Team Member |
email |
Role |
|
Donna Stidolph |
donna@stidolph.com |
Only contributor |
Configuration Change Record (CCR)
|
Date |
Version |
Changes/Additions |
Resp. Person |
|
8/29/ 2001 |
1.0 |
Initial release of STP |
D. Stidolph |
Table of Contents
1 Game Requirements.................................................................................................................................... 1
2 References....................................................................................................................................................... 1
3 Terminology................................................................................................................................................... 1
4 Test Procedures.......................................................................................................................................... 3
4.1 Initialization............................................................................................................................................ 3
4.2 Play of the Game..................................................................................................................................... 3
4.3 Completing Play of the Game (Winning).................................................................................... 7
4.4 Illegal Moves............................................................................................................................................. 8
4.5 Restarting a Game................................................................................................................................. 9
4.6 Quitting the Game................................................................................................................................. 10
4.7 Help................................................................................................................................................................. 12
5 Tracability Matrix................................................................................................................................. 13
The Dots & Boxes
System Test Procedure (STP)
Version 1.0
Dots & Boxes requires a computer with a pointing device of some sort and Java 1.2 or higher installed. To get a copy of Java 1.2, visit http://java.sun.com. It will work on Windows 9x and NT and unix operating systems. Memory requirements are TBD.
After Java is installed, store the game file and the help file in the same directory on the machine. To run it, type ‘java dotsandboxes’ and, within a second, the game board and controls will be displayed.
It is assumed that the tester is familiar with the game of Dots & Boxes and with this implementation. If there are questions about the necessary steps to perform required tasks, refer to the Dots & Boxes User Manual, version 1.0. If there are questions about the source of the test requirement, refer to the Dots & Boxes System Requirements Document, version 1.0.
The terms used in this STP and to play the game are shown in Figure 3.1 and explained below.

Figure 3.1 Dots, a Box, Lines and the Cursor
Box - A box is created when four dots that form the corners of square are connected. The game automatically fills in the square. Each square is worth one point for the player who completes it. In the case of Figure 2.1, player 2 (light blue) completed the square.
Cursor - controlled by the mouse and used to select lines and different controls. In Figure 2.1, the cursor is positioned for the player to select the gray line segment with a left mouse click.
Dot - Dots form the grid the game is played on. There are 64 of them making up the 8 dot by 8 dot gameboard matrix. See Figure 1.
Line - the connectors between the dots. In this implementation, the dots are static, the lines detect the player's selection. A line is formed between two dots by clicking on the gray line segment directly between them. After a line segment has been selected, it is colored to indicate the player who selected it, dark blue for player 1, light blue for player 2. Only the gray segments are legal to choose. See Figure 3.1 above.
Precondition: Game executable and help file installed on personal computer.
|
Player Action |
Expected Dots
and Boxes Response |
Actual Response |
Pass/Fail |
Req Para. |
|
1. Type "java dotsandboxes" |
Game initializes and displays clear a gameboard consisting of an 8 x 8 grid of dots connected by gray line segments. All squares are gray. The Quit game control is visible. The Restart control is visible. The Help control is visible. The Status area instructs Player 1 to make a move. A scoring area appears with scores set to 0 for both players. |
|
|
7.1.1.1, 7.1.1.2.a, 7.1.1.3.f 7.1.1.2.b 7.1.1.2.c 7.1.1.2.d 7.1.1.2.e, 7.1.1.3.d 7.1.1.2.f, 7.1.1.3.e |
Equivalence classes: This sequence of operations is intended to verify that squares can be detected and properly scored for all positions.
In order to test all cases of square building, the following squares must be built, as shown in figure 4.1:
1. Upper right corner - top and right boundaries are external lines.
2. Lower right corner - bottom and right boundaries are external lines.
3. Upper left corner - top and left boundaries are external lines.
4. Lower left corner - bottom and left boundaries are external lines.
5. Center - all lines are internal.
6. Middle right - three lines are external.
In addition, the tester is asked to select several line segments that do not form squares to verify that scores are not incremented inappropriately.

Figure 4.2.1 Square Scoring Test
Precondition: The game has been initialized on the computer and the gameboard with controls is displayed, as described in Initialization.
|
Player Action |
Expected Dots and Boxes
Response |
Actual Response |
Pass/Fail |
Req. Para. |
|
Position the cursor on the leftmost horizontal gray line segment in the top row and click the mouse |
The selected line changes from gray to dark blue. The "player turn" message changes to prompt Player 2 to play. |
|
|
7.2.1.1 7.3.1.2 |
|
Acting as Player 2, position the cursor on the topmost vertical gray line segment in leftmost column and click the mouse. |
The selected line changes from gray to light blue. The "player turn" message changes to prompt Player 1 to play. |
|
|
7.2.1.1 7.3.1.2 |
|
Acting as Player 1, position the cursor on the leftmost horizontal line in the second row from the top and click the mouse. |
The line changes from gray to dark blue. The "player turn" message changes to prompt Player 2 to play. |
|
|
7.2.1.1 7.3.1.2 |
|
Acting as Player 2, select the line segment that makes the fourth side of a square; the topmost vertical line in the second column from the left. |
The gray square is filled in with the light blue, corresponding to Player 2 who completed the square. Player 2's score is 1. The turn remains with the Player 2. |
|
|
7.2.1.2.a 7.3.1.4 7.2.1.2.b |
|
Still as Player 2, position the cursor on the rightmost horizontal gray line segment in the top row and click the mouse. |
The line changes from gray to light blue. The "player turn" message changes to prompt Player 1 to play. |
|
|
7.2.1.1 7.3.1.2 |
|
Acting as Player 1, position the cursor on the topmost vertical line in the rightmost column and click the mouse. |
The line changes from gray to dark blue. The "player turn" message changes to prompt Player 2 to play. |
|
|
7.2.1.1 7.3.1.2 |
|
Acting as Player 2, position the cursor on the rightmost horizontal line in the second row and click the mouse. |
The line changes from gray to light blue. The "player turn" message changes to prompt Player 1 to play. |
|
|
7.2.1.1 7.3.1.2 |
|
Acting as Player 1, select the line segment that makes the fourth side of a square; the topmost vertical line in the seventh column from the left. |
The gray square is filled in with the dark blue, corresponding to Player 1 who completed the square. Player 1's score is 1. The turn remains with the Player 1. |
|
|
7.2.1.2.a 7.3.1.4 7.2.1.2.b |
|
Repeat the steps 1 - 8 for the squares in the bottom corners of the board. |
The corner squares should fill in as shown in Figure 2.1 (the center squares will not be completed yet.) Player 1's score is 2 Player 2's score is 2 |
|
|
7.2.1.2.a 7.3.1.4 7.2.1.2.b |
|
Acting as Player 1, begin completing the center square. |
The selected line changes from gray to dark blue. The "player turn" message changes to prompt Player 2 to play. |
|
|
7.2.1.1 7.3.1.2 |
|
Alternating turns, complete the center square. |
The gray square is filled in with the light blue, corresponding to Player 2 who completed the square. Player 1's score remains 2. Player 2's score is 3. The turn remains with the Player 2. |
|
|
7.2.1.2.a 7.3.1.4 7.2.1.2.b |
|
Alternating turns, complete the square in the leftmost column, midway down |
The gray square is filled in with the dark blue, corresponding to Player 1 who completed the square. Player 1's score is 3. Player 2's score remains 3. The turn remains with the Player 1. |
|
|
7.2.1.2.a 7.3.1.4 7.2.1.2.b |
|
Alternating turns, complete the square in the rightmost column, midway down |
The gray square is filled in with the light blue, corresponding to Player 2 who completed the square. Player 1's score is 3. Player 2's score remains 4. The turn remains with the Player 2. |
|
|
7.2.1.2.a 7.3.1.4 7.2.1.2.b |
|
Alternating turns, select several more line segments, but do not complete any squares. |
Line segment color changes to show the player who selected it. The player prompt message changes after each line segment selection. The score remains unchanged |
|
|
7.2.1.1 7.3.1.2 |
Precondition: Play has proceeded until all line segments but one have been selected. See Figure 4.3.1 for one possible set up.
|
Player |
Expected Dots and
Boxes Response |
Actual Response |
Pass/ Fail |
Req Para |
|
1. Select last unselected (gray) line segment, which will also complete a square. |
The line and square turns the color corresponding to the player who made the move. The status area displays a message identifying that player as the winner. The combined score for the two players is 49. |
|
|
7.2.1.3 7.3.1.3 |
|
|
|
Figure 4.3.1 Winning Dots & Boxes
Illegal moves consist of selecting line segments previously selected by the other player.
Precondition: Game is initialized and the gameboard is clear.
Equivalence Classes:
Player 1 is prevented from making illegal moves.
Player 2 is prevented from making illegal moves.
|
Player |
Expected Dots and
Boxes Response |
Actual Response |
Pass/ Fail |
Req Para |
|
1. Player 1 clicks on the topmost, rightmost vertical line segment. |
Line segment turns dark blue The "player turn" message changes to prompt Player 2 to play. |
|
|
|
|
2. Player 2 selects the same line segment. |
Error message is displayed in status area stating that the player must choose a previously unselected line segment. Turn stays with Player 2. |
|
|
7.3.2.2.a, 7.3.2.2.b |
|
3. Player 2 selects another line segment. |
Selected line segment turns light blue The "player turn" message changes to prompt Player 1 to play. |
|
|
|
|
4. Player 1 selects the same line segment. |
Error message is displayed in status area stating that the player must choose a previously unselected line segment. Turn stays with Player 1. |
|
|
7.3.2.2.a, 7.3.2.2.b |
|
5. Player 1 selects another line segment. |
Selected line segment turns light blue The "player turn" message changes to prompt Player 2 to play. |
|
|
|
Precondition: The game is initalized and the gameboard is clear. Play has not begun.
Equivalence classes: The Restart control is active at all times while the game is active. Equivalence classes for demonstrating this consist of
1. Restarting at initialization
2. Restarting mid-game
3. Restarting after a game is won
4. Restarting when the Help function is active.
|
Player |
Expected Dots
and Boxes Response |
Actual Response |
Pass/ Fail |
Req Para |
|
Either player positions the cursor over the Restart button and clicks the mouse. |
No change in gameboard. |
|
|
7.1.1.2.c, 7.1.1.3.b, 7.3.1.1a , 7.3.1.1b , 7.3.1.1c , 7.3.1.1d |
|
Alternate turns until both players have scored multiple points. |
Gameboard has multiple lines and squares, showing both player's colors Scores corresponds to number of squares each player has completed. |
|
|
|
|
Either player positions the cursor over the Restart button and clicks the mouse. |
All line segments are set to gray. All squares are set to gray Both player's scores are set to zero Player 1 is prompted to take a turn. |
|
|
7.1.1.3.b, 7.3.1.1a , 7.3.1.1b , 7.3.1.1c , 7.3.1.1d |
|
Continue play until one player wins. |
Win message is displayed. |
|
|
|
|
Either player positions the cursor over the Restart button and clicks the mouse. |
All line segments are set to gray. All squares are set to gray Both player's scores are set to zero Player 1 is prompted to take a turn. |
|
|
7.1.1.3.b, 7.3.1.1a , 7.3.1.1b , 7.3.1.1c , 7.3.1.1d |
|
Either player positions the cursor over the Help button and clicks the mouse. |
Help information is displayed in a window. |
|
|
|
|
Either player positions the cursor over the Restart button and clicks the mouse. |
All line segments are set to gray. All squares are set to gray Both player's scores are set to zero Player 1 is prompted to take a turn. |
|
|
7.1.1.3.b, 7.3.1.1a , 7.3.1.1b , 7.3.1.1c , 7.3.1.1d |
Precondition: The game is initalized and the gameboard is clear. Play has not begun.
Equivalence classes: The Quit control is active at all times while the game is active. Equivalence classes for demonstrating this consist of
|
Player |
Expected Dots and Boxes Response |
Actual Response |
Pass/ Fail |
Req Para |
|
Either player positions the cursor over the Close Window icon and clicks the mouse. |
The game window is closed and a DOS command window is left. |
|
|
7.1.1.2.b, 7.1.1.3.a, 7.1.2.1 |
|
Close the existing DOS window. Reinitialize the game by opening a DOS window and typing "java dotsandboxes" |
Game initializes with clear gameboard |
|
|
|
|
Alternate turns until both players have scored multiple points. |
Gameboard has multiple lines and squares, showing both player's colors Scores corresponds to number of squares each player has completed. |
|
|
|
|
Either player positions the cursor over the Close Window icon and clicks the mouse. |
The game window is closed and a DOS command window is left. |
|
|
7.1.2.1 |
|
Close the existing DOS window. Reinitialize the game by opening a DOS window and typing "java dotsandboxes" |
Game initializes with clear gameboard |
|
|
|
|
Alternate turns until both players have scored multiple points. |
Gameboard has multiple lines and squares, showing both player's colors Scores corresponds to number of squares each player has completed. |
|
|
|
|
Either player positions the cursor over the Help button and clicks the mouse. |
A separate window is displayed containing a text description of the rules of the game and the available controls. |
|
|
|
|
Either player positions the cursor over the Close Window icon and clicks the mouse. |
The game window is closed and a DOS command window is left. |
|
|
7.1.2.1 |
|
Close the existing DOS window. Reinitialize the game by opening a DOS window and typing "java dotsandboxes" |
Game initializes with clear gameboard |
|
|
|
|
Alternate turns until one player wins. |
Win message is displayed. |
|
|
|
|
Either player positions the cursor over the Close Window icon and clicks the mouse. |
The game window is closed and a DOS command window is left. |
|
|
7.1.2.1 |
Precondition: The game is initalized and the gameboard is clear. Play has not begun.
Equivalence classes: The Help control is active at all times while the game is active. Equivalence classes for demonstrating this consist of
|
Player |
Expected Dots
& Boxes Response |
Actual Response |
Pass/ Fail |
Req Para |
|
Either player presses Help button |
Textual description of the rules of the game and the available controls is presented. |
|
|
7.3.1.5.a, 7.3.1.5.b |
|
Player 1 moves Help window off the gameboard and makes play. |
Player can select lines - Help is not modal. |
|
|
7.3.1.6 |
|
Player 1 closes Help window by positioning cursor over Close Window icon and clicking mouse. |
Help window closes. |
|
|
7.3.1.7 |
|
Alternate turns until both players have scored multiple points. |
|
|
|
|
|
Either player presses Help button |
Textual description of the rules of the game and the available controls is presented. |
|
|
7.3.1.5.a, 7.3.1.5.b |
|
Continue play until one player wins. |
Win message is displayed |
|
|
|
|
Either player presses Help button |
Textual description of the rules of the game and the available controls is presented. |
|
|
7.3.1.5.a, 7.3.1.5.b |
|
Requirement |
STP Step(s) |
Comment |
|
7.1.1.1 |
4.1.1 |
Initialization from DOS window |
|
7.1.1.2 |
|
Gameboard components |
|
7.1.1.2a |
4.1.1 |
Gameboard with grid |
|
7.1.1.2b |
4.1.1, 4.6.1 |
Quit control |
|
7.1.1.2c |
4.1.1, 4.5.1 |
Restart |
|
7.1.1.2d |
4.1.1 |
Help |
|
7.1.1.2e |
4.1.1 |
Status area |
|
7.1.1.2f |
4.1.1 |
Score area |
|
7.1.1.3 |
|
State at initialization |
|
7.1.1.3a |
4.6.1 |
Quit active |
|
7.1.1.3b |
4.5.1, 4.5.3 |
Restart active |
|
7.1.1.3c |
4.7.1, 4.7.5, 4.7.7 |
Help active |
|
7.1.1.3d |
4.1.1 |
Player prompt |
|
7.1.1.3e |
4.1.1 |
Scores are zeroed |
|
7.1.1.3f |
4.1.1 |
Lines and squares "unowned" |
|
7.1.2.1 |
4.6.1, 4.6.4, 4.6.8, 4.6.11 |
Quit control active at all times, action of quit |
|
7.2.1.1 |
4.2.1 - 3 |
Connecting dots |
|
7.2.1.2 |
|
Making a square |
|
7.2.1.2a |
4.2.4 |
Marking the square |
|
7.2.1.2b |
4.2.4 |
Keeping the turn |
|
7.2.1.3 |
4.3.1 |
Win condition |
|
7.3.1.1 |
|
Restart |
|
7.3.1.1a |
4.5.1, 4.5.3 |
Player 1 score to zero |
|
7.3.1.1b |
4.5.1, 4.5.3 |
Player 2 score to zero |
|
7.3.1.1c |
4.5.1, 4.5.3 |
Clear gameboard |
|
7.3.1.1d |
4.5.1, 4.5.3 |
Prompt Player 1 |
|
7.3.1.2 |
4.2.1 - 3 |
Prompt player whose turn it is |
|
7.3.1.3 |
4.3.1 |
Win message |
|
7.3.1.4 |
4.2.4 |
Squares cause score to increment |
|
7.3.1.5 |
|
Help |
|
7.3.1.5a |
4.7.1, 4.7.5, 4.7.7 |
Rules |
|
7.3.1.5b |
4.7.1, 4.7.5, 4.7.7 |
Controls |
|
7.3.1.6 |
4.7.2 |
Non-modal help |
|
7.3.1.7 |
4.7.3 |
Closing help |
|
7.3.1.8 |
N/A |
Restart active at all times |
|
Note: the use case will have to be executed several times to demonstrate that the restart control is always active. |
||
|
7.3.2.1 |
N/A |
Diagonal line error - No longer a requirement, not possible with this UI |
|
7.3.2.2 |
|
Already used line error |
|
7.3.2.2a |
4.4.1 |
Error message |
|
7.3.2.2b |
4.4.1 |
Retain turn |
|
7.3.2.3 |
N/A |
Non-adjacent dots error - No longer a requirement, not possible with this UI |
|
7.4.1.1 |
Distinguishing |
Save |
|
7.4.1.2 |
Distinguishing |
Open |
|
7.4.1.3 |
Distinguishing |
Multiple size grids |
|
C1 |
|
8 x 8 grid of dots |
|
C2 |
|
Changes occur within 1 second |
|
C3 |
|
Usability |