Goal
- Understand the concept of User Story Mapping
- Learn how to write user stories that deliver real value to users
- Apply mapping to a simple CLI game: Hit and Blow
App Specification
- Game: Hit and Blow
- Type: CLI application
- The app allows users to guess a 4-digit number
Rules
- The user guesses a 4-digit number (no duplicates)
- Feedback is given as:
- Hit: Correct digit in the correct position
- Blow: Correct digit in the wrong position
- Game ends when:
- User guesses correctly
- OR runs out of attempts
Sample Gameplay
go run .
Welcome to Hit and Blow!
Please guess a 4-digit number (e.g., 1234):
1234
Hit: 2, Blow: 1
...
1230
Hit: 3, Blow: 0
Congratulations! You've guessed the number correctly!
Instructions
- Use Excalidraw to create a User Story Map for the Hit and Blow game
- Access the site of Excalidraw
- Create a new drawing and share the link with your team
- Follow the steps below to complete the User Story Mapping exercise
Step 1: Identify Activities
What does the user try to do?
Activities
- Start the game
- Make a guess
- Receive feedback
- End the game
Step 2: Write User Stories
User Stories
- As a player, I want to start the game, so that I can begin playing.
- As a player, I want to enter a guess, so that I can try to find the correct number.
- As a player, I want to receive feedback after each guess, so that I can adjust my next guess.
- As a player, I want to see a win/lose message, so that I know the result.
Step 3: Map Stories
Story Map
| Activity |
Start Game |
Make Guess |
Get Feedback |
End Game |
| User Story |
Start screen shows |
Accept 4-digit input |
Show hits & blows |
Show result message |
| Sub-tasks |
Welcome message |
Validate input |
Compare digits |
Show win/lose outcome |
| Retry on error |
Count attempts |
Ask to play again? |
|
|
Step 4: Prioritize for Release
Releases
| Release |
Features |
| R1 |
Basic game loop (start, input, result) |
| R2 |
Input validation, attempt limit |
| R3 |
Replay prompt, performance tweaks |