David Tsu Marco Chavez
a. This is the card game Blackjack. The goal of the game is to get card combinations equal to 21 points.
b.
-
-As a user I can select the number of players (1-3) so that I can play with other people.
-
-As a user I can set the player names.
-
-As a user I can press a 'hit' button so I can get another card.
-
-As a user I can press a 'stay' button so I can keep my current set of card and move on to the next player.
-
-As a user I can press a 'Double Down' button so I can double my bet.
-
-As a user I can change the amount I bet before the round start so I can win or lose more or less money.
-
-As a user I can change the color of the background so I can personalize the looks of the game.
c. In its current state the game can change bets and also double down during the round. It also lets you hit or stay with the set of cards you have. The game displays the possible value of each players hand, the amount of money each player has, the number of wins and losses and, the cash won and lost. In order to leave a game all players must leave. After each round the player can change their betting amount.
d.
- -As a user I can leave the game individually so that the rest of the players can continue to play after I leave.
- -As a user I can switch decks to other preselected colors
- -As a user I can see my statistics (time played, games played, etc.)
- -Add a background image to look like a card table
- -Add a "Rules" tab on the main menu to explain the game, or alternatively, a tutorial.
- -As a user I can not access button on main GUI when I have other menus open so that I don't open a menu up multiple times.
e.
- -A simple description for each class would help clarify the importance of each
- -Looks good otherwise
f. Looks clear as is. Everything has a description.
g. There are currently 2325 points of issues, not including the ones we may add in the future. Issues are clear.
h. Unsure what issues to add at the moment.
i. For some reason, the source code is found at the bottom of a chain of 5 folders inside src. The game is broken down into a few main classes: Blackjack (main), BlackjackGui, Card, Deck, Hand, Player, and their respective test classes. Cards hold all the typical card values, Deck and Hand are both groups of Card objects, and Player contains a hand and various other betting-related variables. The code in all the classes is nicely organized and easy to understand.
j. There is a test for every class except main, and each test appears comprehensive enough to cover the current material.