Skip to content

Iteration 2

ashaduzzamane edited this page Oct 12, 2019 · 36 revisions

Iteration 2 - UI-Mockup, Controller Interfaces, Cucumber mappings

Features Assigned and UI Mockup Creation

As instructed in the documents, the features were distributed equally amongst the team members who created the corresponding UI mockups using the Pencil UI prototyping tool. Below is the task distribution and the mockups can be found here.

Feature Number Feature Assigned Member
1 Start a new game Vanessa Ifrah
2 Provide or select user name Vanessa Ifrah
3 Set total thinking time Andrew Ta
4 Initialize board Andrew Ta
5 Rotate wall Enan Ashaduzzaman
6 Grab wall Enan Ashaduzzaman
7 Move wall Shuby Mao (Le-Li)
8 Drop wall Shuby Mao (Le-Li)
9 Save position Mitchell Keeley
10 Load position Mitchell Keeley
11 Validate position Sacha Lévy
12 Switch player / Update board Sacha Lévy

UI MockUps

Feature 1: Start a New Game (Vanessa Ifrah)

Users are prompted with the "Start a New Game" screen when they first open the Quoridor game. User interface characteristics linked to this feature:

  • A player clicks the "Start New Game" button to start setting up the game

UI sketch

Feature 2: Provide or Select User Name (Vanessa Ifrah)

Users set their player names before the game is set up. User interface characteristics linked to this feature:

  • Users can enter new player names
  • Users can select from existing usernames (dropdown)

UI sketch

Feature 3: Set Total Thinking Time (Andrew Ta)

Each user can set the total thinking time at the beginning of the game to ensure that it does not last forever. UI linked to this feature:

  • Each user has two fields to input their time (one for minutes and one for seconds).
  • Users can click the button "Set Time" to confirm their action.
  • Users then click the button "Start Game" to start playing.

UI sketch

Feature 4: Initialize Board (Andrew Ta)

Initialize Board is initiated after users are created and total thinking time are set. UI linked to this feature:

  • A new board with 81 tiles are created and displayed on screen
  • Two players (black and white) are created and put on their initial positions on the board.
  • Each player has 10 walls on its stock.
  • White player's clock starts counting down.

UI sketch

Feature 5: Rotate Wall (Enan Ashaduzzaman)

Rotate wall can only be implemented when the player has grabbed a wall. User interface characteristics linked to this feature:

  • a player can toggle the direction of the wall from horizontal and vertical with the use of a single button.

UI sketch

Feature 6: Grab Wall (Enan Ashaduzzaman)

Grab wall can be implemented as a move when it is the player's turn to move. User interface characteristics linked to this feature:

  • a player can grab a wall with the click of a button in the game.
  • a dialogue box pops up notifying the player that it has grabbed a wall from the stock.
  • the grabbed wall is placed on the board and is highlighted blue to notify the player which wall they can move and rotate.

UI sketch

Feature 7: Move Wall (Le-Li Mao)

Move wall can be implemented only when the player has a wall in his/her hand. User interface characteristics linked to this feature:

  • the move wall can be triggered with the use of the arrow keys on the respective game board side of the player.
  • while the wall is in the hand of the player and being moved, the wall will stay highlighted blue to indicate that the wall still needs to be placed.

UI sketch

Feature 8: Drop Wall (Le-Li Mao)

Drop wall can be implemented once the player has finalized an appropriate location for the placement of his/her wall. User interface characteristics linked to this feature:

  • the drop wall method can be triggered with the use of a single button in the game.
  • while the wall is in the hand of the player, the wall will be highlighted blue. Once the player has dropped the wall in an appropriate location, the wall will not be highlighted indicating that the wall has been placed.

UI sketch

Feature 9: Save Position (Mitchell Keeley)

Save position can only be implemented when the user clicks to save the game. User interface characteristics linked to this feature:

  • Creating a popup dialog box to write the file name for the save game
  • Alerting the user that the file name already exists and prompting them to overwrite the existing file
  • Alerting the user that the file name is invalid

UI sketch

Feature 10: Load Position (Mitchell Keeley)

Load position can only be implemented when the user clicks to load a game. User interface characteristics linked to this feature:

  • Creating a popup dialog box to write the file name of the game to load
  • Alerting the user that the file name is invalid
  • Alerting the user that the file contents are invalid

UI sketch

Feature 11: Validate Position (Sacha Lévy)

Validate position is integrated within any move made by a player on the board. User interface characteristics linked to this feature:

  • notifying the player when a forbidden move is attempted by displaying a pop-up dialog box asking the player to make another trial

UI sketch

Feature 12: Switch Player (Sacha Lévy)

Switching player is automatically triggered by a player making a successful move. User interface characteristics linked to this feature:

  • letting the clocks of the players stop and run (clock of the player who just made his move stops and vis-versa)
  • notifying the players of their turn by using a pop-up dialog box
  • shading the command buttons of the player not moving

UI sketch

Clone this wiki locally