1. Player decides what move to make. (If this is a human, this step is transparent, this step is included for sake of clarity when AI is implemented.)<br />

+

1. Player decides what move to make. (If this is a human, this step is transparent, this step is included for sake of clarity when AI is implemented.)<span style="color:darkred">#extend Use Case UC5: Pass on a Turn</span><br/>

2. Active Player selects a piece, which then becomes the Active Piece.<br />

2. Active Player selects a piece, which then becomes the Active Piece.<br />

3. The Active Player requests to make a Translation or Rotation on the Active Piece.<br />

3. The Active Player requests to make a Translation or Rotation on the Active Piece.<br />

Line 100:

Line 102:

1. This use case does not involve the laser firing or checking for winning conditions. That will be dealt with in the next iteration phase.

1. This use case does not involve the laser firing or checking for winning conditions. That will be dealt with in the next iteration phase.

2. The Active Player may change the Active Piece to a different piece anytime before requesting a Translation or Rotation of that piece. Once a move has been requested, the Active Player loses that ability unless the move is declared invalid.

2. The Active Player may change the Active Piece to a different piece anytime before requesting a Translation or Rotation of that piece. Once a move has been requested, the Active Player loses that ability unless the move is declared invalid.

+

|}

+

{| class="wikitable" style="color:darkred"

+

|-

+

! '''Use Case UC5:''' Pass on a Turn

+

|-

+

|'''Trigger:''' Player wished to pass on a turn<br />

+

'''Extension Points:''' Deciding a move in Make a Move.<br/>

+

'''Level:''' Subfunction<br />

+

'''Primary Actor:''' Player<br />

+

'''Stakeholders and Interests:'''<br />

+

- Player: plays the game as a form of entertainment.<br />

+

'''Preconditions:''' Player is playing the game and it is the players turn.<br />

+

'''Success Guarantee:''' Player is able to pass play to next Player by ending turn without changing the board.<br />

+

'''Main Success Scenario:'''<br />

+

1. Player passes their turn. And the game board remains unchanged<br />

+

2. The player does not have to select a piece and will leave the board as is.<br />

+

3. The turn is over and the other player is now the active player. <br />

+

'''Extensions:'''<br />

+

1. If the board remains the same for 3 rounds(both players pass) the game can end in a draw.

|}

|}

{{AgileProcessforAndroidGameFooter}}

{{AgileProcessforAndroidGameFooter}}

Latest revision as of 00:26, 1 December 2010

Use Case for Elaboration 1

The use case for what will be coded this iteration is as follows:

1. Player starts a new 2-player game.
2. Player 1 moves or rotates his/her piece.
3. Player 2 moves or rotates his/her piece.
4. Steps 3-4 repeat until the application is closed.

Note, no laser is fired so no pieces are destroyed and no winner can be declared. This iteration only ensures that the pieces can be moved appropriately and the basic game loop works as intended.

Later iterations will contain another way to exit the loop by firing the laser and checking for winning conditions.

Use Cases made while brainstorming on Inception Phase

Use Case UC1: Play Game

Scope: Laser Chess application

Level: User goalPrimary Actor: PlayerStakeholders and Interests:
- Player: plays the game as a form of entertainment.
- Company: wants to ensure game flows as intended and players enjoy playing the game.
- Advertiser: wants players to view and interact with their advertisement(s) within the game.Preconditions: Player has application installed.Success Guarantee: Player plays through an entire game.Main Success Scenario:
1. Player starts the application and initiates a game mode: Single Player, Two Player Mode, or Online Multiplayer.
2. Game is initiated, sides are chosen, and the player who moves first is selected.
3. Play begins and player makes move(s) #include Use Case UC4: Make a Move.4. Laser fires and pieces, if any, are destroyed and removed from the board.
5. Next player (AI or human opponent) becomes the active player.
6. Steps 3 through 5 are repeated until a player's Pharoah is destroyed and the winner is declared.Extensions:
1. Player exits game before a winner is declared:
- a. The player who exits the game forfeits.
2. Player times-out (fails to make a move within 7 days):
- a. The player whose turn was pending forfeits the game.

Level: <”user-goal” or “subfunction”>Primary Actor: <Calls on the system to deliver its services>Stakeholders and Interests: <Who cares about this use case, and what do they want?>Preconditions: <What must be true on start, and worth telling the reader?>Success Guarantee: <What must be true on successful completion, and worth telling the reader?>Main Success Scenario: <A typical, unconditional happy path scenario of success>Extensions: <Alternate scenarios of success or failure>Special Requirements: <Related non-functional requirements>Technology and Data Variations List: <Varying I/O methods and data formats>Frequency of Occurrence: <Influences investigation, testing, and timing of implementation>Miscellaneous: <Such as open issues>

Use Case UC4: Make a Move (aka Bust a move)

Scope: Laser Chess application sub function

Level: User goalPrimary Actor: PlayerStakeholders and Interests:
- Player: plays the game as a form of entertainment.Preconditions: Player has application installed.Success Guarantee: Player is able to pass play to next Player by ending turn.Extension Points: Deciding a move, step 1.Main Success Scenario:
1. Player decides what move to make. (If this is a human, this step is transparent, this step is included for sake of clarity when AI is implemented.)#extend Use Case UC5: Pass on a Turn
2. Active Player selects a piece, which then becomes the Active Piece.
3. The Active Player requests to make a Translation or Rotation on the Active Piece.
4. The board checks to make sure the Move that is being requested is able to be performed.
5. If the Move is performed, the Move is implemented and the Turn is over and the other player becomes the new Active Player. Otherwise, go back to step 3. Extensions:
1. This use case does not involve the laser firing or checking for winning conditions. That will be dealt with in the next iteration phase.
2. The Active Player may change the Active Piece to a different piece anytime before requesting a Translation or Rotation of that piece. Once a move has been requested, the Active Player loses that ability unless the move is declared invalid.

Use Case UC5: Pass on a Turn

Trigger: Player wished to pass on a turn

Extension Points: Deciding a move in Make a Move.Level: SubfunctionPrimary Actor: PlayerStakeholders and Interests:
- Player: plays the game as a form of entertainment.Preconditions: Player is playing the game and it is the players turn.Success Guarantee: Player is able to pass play to next Player by ending turn without changing the board.Main Success Scenario:
1. Player passes their turn. And the game board remains unchanged
2. The player does not have to select a piece and will leave the board as is.
3. The turn is over and the other player is now the active player. Extensions:
1. If the board remains the same for 3 rounds(both players pass) the game can end in a draw.