Problem Statement
When building a game, unclear or incomplete requirements cause confusion and errors during development. Without well-defined game rules, players experience inconsistent gameplay and frustration, leading to poor user satisfaction.
This diagram shows how requirements lead to defining game rules, which the game engine uses to process player input and control gameplay.
### Before: No clear rules, logic scattered class Game: def play(self, action): if action == 'jump': print('Player jumps') elif action == 'shoot': print('Player shoots') # No win/loss conditions or scoring ### After: Clear rules and requirements implemented class GameRules: def __init__(self): self.score = 0 self.lives = 3 def apply_action(self, action): if action == 'jump': print('Player jumps') elif action == 'shoot': print('Player shoots') self.score += 10 def check_game_over(self): return self.lives <= 0 class Game: def __init__(self): self.rules = GameRules() def play(self, action): self.rules.apply_action(action) if self.rules.check_game_over(): print('Game Over') else: print(f'Score: {self.rules.score}')