2022-02-27T14:56:15.671560282LibreOffice/7.3.0.3$Linux_X86_64 LibreOffice_project/30$Build-32022-02-27T19:11:51.732559584PT2H1S35 0 0 46383 35608 view1 12 3 2 2 1 1 3 0 3 0 1 0 100 60 true false User Stories 1203 0 100 60 false true true true 12632256 true true true true false false false 1270 1270 1 1 true false true true true 0 true true false true false en US 12632256 true true false false true true false 3 false Generic Printer false pAH+/0dlbmVyaWMgUHJpbnRlcgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAU0dFTlBSVAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWAAMAxQAAAAAAAAAIAFZUAAAkbQAASm9iRGF0YSAxCnByaW50ZXI9R2VuZXJpYyBQcmludGVyCm9yaWVudGF0aW9uPVBvcnRyYWl0CmNvcGllcz0xCmNvbGxhdGU9ZmFsc2UKbWFyZ2luYWRqdXN0bWVudD0wLDAsMCwwCmNvbG9yZGVwdGg9MjQKcHNsZXZlbD0wCnBkZmRldmljZT0xCmNvbG9yZGV2aWNlPTAKUFBEQ29udGV4dERhdGEKUGFnZVNpemU6TGV0dGVyAER1cGxleDpOb25lAAASAENPTVBBVF9EVVBMRVhfTU9ERQ8ARHVwbGV4TW9kZTo6T2Zm false 1270 1270 1 1 true false true true true true 7 true Sheet1 % ??? Page 1 ???(???) 00/00/0000, 00:00:00 Page 1/ 99 Short Title Theme User Story Clarifications Test or Conditions of Satisfaction Kano Category Story Points Relative Benefit Relative Penalty Total Value Value % Cost % Priority Main Epic User Story Epic As a player, I would like to play the game Four-Line Dropper, so that I can have fun. Mandatory 928 174 148 322 100.00% 1 Choose game type Front-End Interface As a player, I would like to choose to play against the AI, or another Player over the network, or another Player locally, so that I can choose the type of game to play. The player should be presented with a menu to select the game type. When networking hasn’t yet been implemented, “local-mulitplayer” or “against the AI” are the only options available. The game type should be selectable. Player is queued for play against another player, or starts a game against an AI, or starts a game in “Local-Multiplayer” mode. Mandatory 10 8 16 4.97% 1.08% 4.6111801242236 Game start Front-End Interface As a player, I would like to know when the game has started, so that I know to start playing the game. The game should start once the current Player has been paired with another player, or immediately after choosing to play against an AI or local Player. If pairing has not yet ocurred, it should be obvious that pairing is still pending. Mandatory 40 8 16 4.97% 4.31% 1.1527950310559 Player pairing cancellation Front-End Interface As a player, I would like to abort playing against another Player and play against an AI, so that I don’t have to keep waiting for the game to start. The player should be able to remove themselves from the pairing process and immediately start a game against an AI. Exciter 37 6 2 8 2.48% 3.99% 0.623132449219406 Visible “whose turn it is” Front-End Interface As a player, I would like to see who’s turn it is, so that I can wait for my turn and play when it is my turn. It should be obvious whose turn it is during gameplay. Mandatory 13 7 9 16 4.97% 1.40% 3.54706163401816 Column availability Front-End Interface As a player, I would like to know which columns of the game board are available to place tokens, so that I can pick a column to place a token. It should be obvious which columns can accept a dropped token. Mandatory 18 8 16 4.97% 1.94% 2.56176673567978 Token placing Front-End Interface As a player, I would like to place a token in an available column of my choosing, so that I could finish my turn. An available column is a column in the game board that is not full. A player should be able to place a token into an available column. Mandatory 25 9 8 17 5.28% 2.69% 1.95975155279503 Visible game board Front-End Interface As a player, I would like to see the game board, so that I can see the current state of the game and plan accordingly. The game board is 7 tokens wide and 8 tokens tall. The size of the board and all tokens on the board should be visible. Mandatory 23 9 18 5.59% 2.48% 2.25546853902241 Final game results Front-End Interface As a player, I would like to see if the game is over, so that I can know if the game is over and if I have won or not. It should be obvious if the game has ended and who the winner is in that case. Mandatory 20 8 16 4.97% 2.16% 2.3055900621118 End game options Front-End Interface As a player, I would like to choose to play again if the game has ended, so that I can continue playing. The player should be able to return to the very first state of the game to start over. Exciter 13 6 3 9 2.80% 1.40% 1.99522216913521 Website URL and availability Front-End Interface As a player, I would like to know the URL of the website for Four-Line Dropper, so that I can visit the website and play the game. A webserver should serve the game’s front-end and the URL of the webserver should be given to Players. Linear 24 9 8 17 5.28% 2.59% 2.04140786749482 AI implementation Back-End Implementation As a player, I would like to play against the AI, so that I can play “singleplayer mode”. AI is expected to be “Utility-AI” based. The AI should be implemented such that a full game of Four-Line Dropper can be played with it. Exciter 100 7 4 11 3.42% 10.78% 0.317018633540373 Game logic turn implementation Back-End Implementation As a player, I would like to play the game expecting that the game knows whose turn it is, so that the game can progress. The game should keep track of whose turn it is. Mandatory 30 8 16 4.97% 3.23% 1.53706004140787 Game logic record token drop implementation Back-End Implementation As a player, I would like to play the game expecting that my moves are recorded, so that the game keeps track of everyone’s moves. The game should be able to record and keep track of tokens placed by Player(s) and/or AI. Mandatory 65 8 16 4.97% 7.00% 0.709412326803631 Game logic win/lose/draw state detection Back-End Implementation As a player, I would like to play the game expecting that the game knows when it has ended, so that the game works as expected. Win/Lose if a player has 4 in a row/column/diagonal or a draw if no more tokens can be placed. The game should be able to detect end-game state. Mandatory 70 8 7 15 4.66% 7.54% 0.61756876663709 Multiplayer pairing Networking As a player, I would like to be able to pair with another Player, so that I can play a multiplayer game. The front-end should be able to communicate with the back-end server to enqueue a Player to pair against another Player. Exciter 77 8 5 13 4.04% 8.30% 0.486569331289828 Multiplayer game start Networking As a player, I would like to know when the game has started a multiplayer game, so that I can play a multiplayer game. The back-end should communicate to the front-end(s) that the game has started and whose turn it is. This will occur after a Player has been paired. Mandatory 45 9 18 5.59% 4.85% 1.1527950310559 Multiplayer game whose turn it is Networking As a player, I would like to play a multiplayer game knowing whose turn it is, so that the game can progress. The back-end should communicate whose turn it is to the front-end(s). Mandatory 50 9 8 17 5.28% 5.39% 0.979875776397516 Multiplayer record turn action Networking As a player, I would like to play a multiplayer game knowing that the game keeps track of each Player’s turn, so that the game can progress. The front-end and back-end should communicate a Player’s decision on their turn to be stored in the back-end. Mandatory 68 8 16 4.97% 7.33% 0.67811472415053 Multiplayer game board state Networking As a player, I would like to play a multiplayer game knowing the board’s state, so that I can accurately know the board’s state. The back-end should communicate the state of the game board to the front-end(s). Linear 53 9 18 5.59% 5.71% 0.978788233915387 Multiplayer end-game state Networking As a player, I would like to know if a multiplayer game has ended, so that I can see the results. The back-end should communicate to the front-end(s) that the game has ended and who the winner/loser is or if it has ended in a draw. Linear 48 8 7 15 4.66% 5.17% 0.900621118012422 In-game emotes Extra As a player, I would like to communicate with the other player with the available in-game emotes, so that I can have some banter with the opponent. The front-end should be able to send user-selected emotes to the back-end, to be communicated to the other player’s front-end. Exciter 47 7 2 9 2.80% 5.06% 0.551869961675697 In-game column emotes Extra As a player, I would like to communicate with the other player with the available in-game emotes to highlight a specific column, so that I can have some banter with the opponent. The front-end should be able to send user-selected emotes on a specific column to the back-end, to be communicated to the other player’s front-end. Exciter 52 7 2 9 2.80% 5.60% 0.498805542283803