Laureline's Wiki

Laureline's Wiki

Ars Tactica: Rapport Intermédiaire - Cas d'Utilisation

Ars Tactica: Rapport Intermédiaire - Cas d'Utilisation

<uml title=“UseCase”>

Anonymous –> (Create Account)

Player –> (Play a Game) (Play a Game) ..> (Queue up for a Game) : <include> (Queue up for a Game) ..> (Log in to the Client) : <include>

Player <|– Administrator

Administrator –> (Ban Account) (Ban Account) ..> (Login in to the Admin)

Administrator <|– :System Administrator: :System Administrator: –> (Start Server)

</uml>

Acteurs

Nom Description
Anonymous Utilisateur ne possédant pas de compte
Player Utilisateur possédant un compte
Administrator Rôle permettant d’administrer le système

Rôles

Nom Description
Create Account Un utilisateur peut créer un compte
Login to the Game Un utilisateur peut s’authentifier auprès du serveur et récupérer une session
Queue up for a Game Un utilisateur peut entrer dans la file d’attente pour une partie
Play a Game Un utilisateur peut participer à une partie
Login to the Admin Un administrateur peut se connecter à l’interface d’administration
Ban Account Un administrateur peut bannir un joueur
Start Server Un administrateur système peut démarrer le serveur de jeu

Scénarios

Create Account

Prérequis: Le client doit être lancé

  1. Le jeu présente l'écran de création de compte
  2. L'utilisateur remplis le formulaire
  3. L'utilisateur soumet le formulaire
  4. Le client envoie une demande de création de compte au serveur
  5. Le serveur crée le compte (LoginSystem)
  6. Le serveur répond favorablement au jeu
  7. Le jeu présente l'écran de connexion

Scénarios Alternatifs

  • Le compte existe déjà
    1. Le nom d'utilisateur est déjà pris
    2. Le serveur répond de manière négative
    3. Le jeu présente un message d'erreur à l'utilisateur

Login to the Game

Prérequis: Le client doit être lancé, L'utilisateur doit avoir crée un compte

  1. Le jeu présente l'écran de connexion
  2. L'utilisateur saisit ses credentials (username, password)
  3. Le client envoie une demand de connexion au serveur
  4. Le serveur authentifie l'utilisateur (LoginSystem)
  5. Le serveur répond favorablement à la connexion
  6. Le jeu présente le menu principal

Scénarios Alternatifs

  • Les credentials de l'utilisateur ne sont pas valides
    1. Le serveur répond de manière négative
    2. Le jeu présente un message d'erreur à l'utilisateur

Queue up for a Game

Prérequis: L'utilisateur doit être authentifié auprès du serveur

  1. L'utilisateur sélectionne la file d'attente de son choix (1v1, …)
  2. Le jeu envoie une notification au serveur
  3. Le serveur place le joueur dans la file d'attente
  4. Le serveur attend que suffisament de joueurs soient dans la file d'attente (2 joueurs pour du 1v1, 4 joueurs pour du 2v2, etc)
  5. Le serveur crée le lobby et y place les joueurs
  6. Le serveur notifie les clients de la création d'un Lobby
  7. Le jeu affiche l'écran de Lobby
  8. L'utilisateur signale qu'il est prêt
  9. Le jeu envoie une notification au serveur
  10. Le serveur attend que tous les joueurs soient prêts (ou que le timer interne soit échu)
  11. Le serveur crée une partie et y place les joueurs
  12. Le serveur notifie les clients du début de la partie
  13. Le jeu affiche l'écran de jeu

Scénarios Alternatifs

  • Le timer du lobby expire
    1. Le serveur notifie les clients que le lobby est fermé
    2. Le jeu affiche le menu principal
    3. Le jeu affiche un message d'erreur

Play a Game

Prérequis: Le joueur doit être dans une partie

  1. Le serveur notifie les clients qu'ils sont entrés dans une partie
  2. Le jeu affiche l'écran de jeu
  3. Le serveur crée l'état de jeu original
  4. Le serveur détermine l'ordre de passage des joueurs
  5. A effectuer tant qu'il reste plus d'un joueur
    1. Le serveur informe les clients du joueur en cours
    2. Tant que le joueur peut effectuer une action
      1. Le joueur effectue une action (déplacement, attaque, …)
      2. Le serveur valide l'action et l'applique à l'état de jeu
      3. Le serveur informe les clients des changements dans l'état de jeu
      4. Si un joueur à été éliminé
        1. Informer tous les joueurs du joueur éliminé
    3. Le joueur termine son tour
    4. Le serveur sélectionne le prochain joueur dans l'ordre de passage
  6. La serveur notifie de la fin de la partie
  7. Le jeu affiche le menu principal

Scénarios Alternatifs

  • La connexion est interrompue lors d'une partie
    1. Si un joueur met plus d'un certain temps à ne rien faire durant son tour il est éliminé
  • Si un joueur est éliminé
    1. Le jeu affiche une notification “Vous avez perdu”
    2. Le jeu affiche le menu principal

Login to the Admin

  1. L'administrateur ouvre son navigateur à l'adresse de la console d'administration
  2. L'administrateur entre ses credentials pour se connecter
  3. La console d'administration vérifie la validité des credentials
  4. La console d'administration affiche son menu de gestion

Ban Account

Prérequis: Connexion à la console d'administration

  1. L'administrateur sélectionne un compte utilisateur
  2. L'administrateur ajoute un banissement

Start Server

  1. L'administrateur système se connecte au serveur
  2. L'administrateur système lance l'application serveur