Vous êtes sur la page 1sur 24

Projet : Gestionnaire de tournois d’échecs

Réalisé par :
Aymen FAYADHI
Aymen FOURATI
Mehdi JERBI
Mohamed AYADI

Professeur : Sonia Bouzidi


Année universitaire : 2021 2022

Groupe : RT3/2

Plan :

I. Contexte du projet

II. Spécifications fonctionnelles

III. Spécifications non fonctionnelles

IV. Diagramme de Cas d'utilisations

V. Interface graphique d’utilisateurs

VI. Description des cas d’utilisations

VII. Conclusion
I. Contexte du projet :

Le jeu d'échecs est le jeu le plus populaire et ancien de l’histoire de


l’humanité. En effet, les joueurs se battent pour les titres de meilleurs joueurs
avec une avidité croissante surtout avec la prolifération digitale du jeu appuyé
par les réseaux sociaux et les films consacrés à ce fameux art. On se propose de
realis

1. Description du tournoi :

D'une manière générale, les tournois d'échecs se présentent sous trois


formes : le système suisse, le tournoi à la ronde et le match. Le système suisse,
ou "suisse" en abrégé, est le plus populaire.

a. Le système à la ronde :

Un tournoi round-robin est un tournoi où tout le monde joue contre tout


le monde.Les tournois roundrobin sont utilisés pour déterminer la plupart des
championnats nationaux et sont la norme dans les tournois internationaux.
Un tournoi toutes rondes permet les avantages suivants:
- La part du hasard est minimisée puisque tous les participants se
rencontrent.
- Un participant peut remporter la victoire finale en dépit de quelques
contre-performances, ce qui n'est pas le cas dans un système à
élimination directe.
Et impose les inconvénients suivants :
- Le format rond robin est très gourmand en termes de temps : vu que tout
le monde joue contre tout le monde.
- L’asymétrie nuit à l'équité, puisque la motivation de l'adversaire n'est pas
la même au début et à la fin de la compétition.
- Il n'y a pas de match final spectaculaire.

b. Le système suisse :

Le système suisse couramment utilisé dans les compétitions d'échecs où


les joueurs ou les équipes doivent s'affronter deux à deux. Il s'agit d'une méthode
d'appariement permettant d'organiser des tournois regroupant un grand nombre
de protagonistes en un nombre de confrontations réduit.
En effet pour un nombre 2 a la puissance n de joueurs on n’a besoin que de
n rounde pour déterminer un classement final.

c. Le système à élimination directe :

Un tournoi à élimination directe est un tournoi où le perdant de n'importe


quelle partie est éliminé. Cependant, il n'est pas éliminé de la compétition, dans
certains cas, des matchs supplémentaires sont ajoutés, comme la troisième
place, par exemple.

2. Intérêt du projet :

On se propose de réaliser une application de gestion de tournoi d’échecs


qui vise à englober les différents types de tournoi sur une seule plateforme. En
effet, l’utilisateur peut composer entre différents types afin de générer un
système d'appariement adéquats à un nombre données de joueurs.
Nous considérons que ce projet lie innovation et efficacité puisque
n’importe quel utilisateur, doté d’une simple connaissance des jeux d'échecs et
des algorithmes d'appariements, peut aisément manier notre application.

II. Spécifications fonctionnelles :

● Gérer les organisateurs.


● Ajouter un participant.
● Consulter le classement.
● Consulter les matchs joués.
● Gérer un profil.
● Consulter le programme du tournoi.
● Spécifier l’issue d’un match.
● Authentification (participant ou administrateur).
● Générer les matchs du tournoi.
● Créer un tournoi.
● Éliminer un participant.
● Choisir un type de tournoi.

III. Spécifications non fonctionnelles :

● Assurer la responsivité du design.


● Assurer la confidentialité des données.
● Convivialité
● Toutes les actions ne dépassent pas 5 secondes.
● Assurer un système de notification pour les joueurs une fois un
changement au niveau des programmes se produit.
● La fiabilité.
● Mise à jour instantanée après chaque modification
● Le système doit être sécurisé.

IV. Diagramme de cas d’utilisation :


VI. Interface graphique d’utilisateurs :
Interface de login de l’admin / joueur

Menu principale pour le joueur


Menu principale pour l’admin

Cas d’utilisation gestion de tournois


Cas d’utilisation Consulter programme

Cas d’utilisation Consulter Programme


VI. Description des cas d’utilisations :

Description de cas d’utilisation : «Gestion des tournois » :

Résumé :
Création d’un tournoi , l’ajout des participants et l’annulation d’un tournoi.

Acteur :

Administrateur

Précondition :

Le cas d’utilisation « Se loger » est déjà exécuté et le compte est associé à


un administrateur.

Déroulement nominal :

L’administrateur demande la gestion des tournois

Le système affiche 4 options “Créer tournoi” , “Affecter joueur” et


“Terminer tournoi”, “Déclarer une nouvelle phase”.

cas 1 : Créer tournoi

L’administrateur choisit l’option “Créer tournoi”

Le système présente une fiche contenant les champs liés à un tournoi,


comme nom, date, système, nombre de joueurs...etc.

L’administrateur remplit la fiche.

Le système crée le tournoi et met son état à “en cours”.

cas 2 : Affecter joueur

L’administrateur choisit l’option “Affecter joueur”

Le système affiche la liste des tournois dont l’administrateur est gérant.

L’administrateur choisit un tournoi.

Le système affiche la liste des joueurs inscrits.

L’administrateur choisit un joueur à ajouter.

Le système affecte le joueur au tournoi avec un score initial nul.

cas 3 : Terminer tournoi


L’administrateur choisit l’option “Terminer tournoi”

Le système affiche la liste des tournois dont l’administrateur est gérant.

L’administrateur choisit un tournoi.

Le système change l'état du tournoi à “terminé”.

Le système met à jour le classement.

Le système met à jour le programme.

cas 4 : Déclarer une nouvelle phase

L’administrateur choisit l’option “Déclarer une nouvelle phase”

Le système affiche la liste des tournois dont l’administrateur est gérant.

L’administrateur choisit un tournoi.

Le système présente une fiche contenant les champs : nombre de joueurs


à prendre, système d'appariement suivant.

L’administrateur remplit la fiche.

Le système met à jour le tournoi, prend les meilleurs joueurs du


classement précédent (nombre de joueurs à été précisé par
l’administrateur) et élimine les autres.

Post condition :

Le tournoi est bien modifié ou créé.

Description de cas d’utilisation : « Ajouter un administrateur » :

Résumé :
Ajouter un administrateur et saisir les données relatives.

Acteur :

Administrateur

Précondition :

Le cas d’utilisation « Se loger » est déjà exécuté et le compte est associé à


un administrateur.

Déroulement nominal :

L’administrateur demande l’ajout d’un autre administrateur


Le système présente une fiche contenant les champs liés à un
administrateur, comme nom, prénom, pseudonyme, mot de passe...etc.

L’administrateur remplit la fiche

Le système sauvegarde les données en cryptant le mot de passe.

L’exception :

L’administrateur demande de sauvegarder sans remplir tous les champs :


->Le système affiche un message « Tous les champs sont obligatoires »

L’administrateur saisie un pseudonyme déjà utilisé :


->Le système affiche un message « Le pseudo existe déjà »

Post condition :

L’administrateur est ajouté au système.

Description de cas d’utilisation : « Se loger »

Résumé :
S’authentifier en donnant les données personnelles pour se loger à la
plateforme

Acteur :

Administrateur

Joueur

Précondition :

L’utilisateur (Administrateur/Joueur) possède un compte pour s’identifier.

Déroulement nominal :

-L’utilisateur demande de se loger.

-Le système lui présente une fiche contenant les champs login et
motDePasse.

-L’utilisateur remplit la fiche.

-Le système demande à l’utilisateur de remplir un test Captcha pour


vérifier qu’il n’est pas un robot

-Le système vérifie la correspondance des données

-Le système distingue le type du compte ( Administrateur or Joueur)

-Le système affiche un message de bienvenue


-Le système affiche les fonctionnalités selon le type du compte.

L’exception :

L’utilisateur demande de se loger sans remplir tous les champs :


->Le système affiche un message « Tous les champs sont obligatoires »

L’utilisateur demande de se loger sans vérifier le test Captcha :


->Le système affiche un message « Le Captcha doit être verifier »

L’utilisateur demande de se loger avec des données erronées :


->Le système affiche un message « login ou mot de passe erroné »

Post condition :

L’utilisateur a accès à la plateforme.

Description de cas d’utilisation : « Consulter Le classement »

Résumé :
Consulter le classement et voir le score de chaque joueur durant le
tournoi.

Le système actualise le contenu à chaque génération d’une nouvelle


ronde.

Acteur :

Administrateur

Joueur

Précondition :

-Le cas d’utilisation « Se loger » est déjà exécuté.

Déroulement nominal :

-L’utilisateur clique sur le bouton du Classement

-Le système affiche une page de joueurs organisés en fonction de leurs


scores

-L’utilisateur peut contrôler la manière d'affichage du classement


(Ascendant/Descendant)

-L’utilisateur peut consulter les profils des joueurs a partir de la page du


classement en cliquant sur leur noms
Description de cas d’utilisation : « Consulter l’historique des matchs joués»

Résumé :
Consulter l’historique des matchs joués et voir les joueurs de chaque
partie.

Acteur :

Joueur

Précondition :

-Le cas d’utilisation « Se loger » est déjà exécuté et le compte est associé à
un Joueur.

Déroulement nominal :

-Le Joueur clique sur le bouton “Consulter l’historique des matchs joués”

-Le système affiche une page contenant son historique.

-L’utilisateur choisit le match qu’il veut consulter.

-Le système affiche une page contenant les joueurs et l’issue de ce match.

-L’utilisateur peut consulter les profils des joueurs en cliquant sur leur
nom.

Post condition :

L’historique a été consulté.

Description de cas d’utilisation : « Spécifier l’issue d’un match » :

Résumé :
Saisir le résultat d'un match spécifié

Acteur :

Administrateur

Précondition :

-Le cas d’utilisation « Se loger » est déjà exécuté et le compte est associé à
un administrateur.

Déroulement nominal :

-L’administrateur clique sur le bouton “Spécifier l’issue d’un match”

-Le système lui affiche les matchs de la ronde actuelle.


-L’administrateur choisit un match.

-Le système lui affiche 4 options “nulle”, “blanc gagne”, “noir gagne” et
“annulé” .

-L’administrateur choisit le résultat d'un match parmi ces options.

-Le système sauvegarde les données.

-Le système réaffiche les matchs de la ronde actuelle.

Post condition :

Le résultat du match est bien enregistré.

Description de cas d’utilisation : «Éliminer un joueur » :

Résumé :
Eliminer un joueur d’un tournoi (pour des raisons de triche, d’absence ou
autre)

Acteur :

Administrateur

Précondition :

-Le cas d’utilisation « Se loger » est déjà exécuté et le compte est associé à
un administrateur.

Déroulement nominal :

-L’administrateur clique sur le bouton "Éliminer un joueur”

-Le système lui affiche la liste des tournois dont il est gérant.

-L’administrateur choisit un tournoi.

-Le système affiche la liste des joueurs du tournoi choisi.

-L’administrateur choisit un joueur à éliminer.

-Le système élimine le joueur

-Le système affiche la nouvelle liste des joueurs .

Post condition :

Le joueur est éliminé.


Description de cas d’utilisation : « Générer les matchs d’une ronde » :

Résumé :

On génère les matchs par un algorithme choisi. Ce cas d’utilisation


s’entend jusqu'à la fin de la dernière ronde.

Acteur :

Administrateur

Précondition :

-Une ronde est arrivée à sa fin.

-Le tournoi a été créé.

Déroulement nominal :

L’administrateur entre les résultats d’une ronde .

Le système génère la ronde suivante.

Le système actualise le classement des joueurs.

Le système actualise le programme.

L’exception :

Il n’existe pas de ronde précédente ; Le tournoi vient d'être créé :

->Le système génère les matchs de la ronde à partir des paramètres


initiaux du tournoi , il génère un classement initial et un programme
initial.

Post condition :

Les matchs de la ronde ont été générée.

Description de cas d’utilisation : « Consulter le programme du tournoi » :

Résumé :

Tous les joueurs et administrateurs peuvent consulter le programme du


tournoi qui est mis à jour au fur et à mesure de l’avancement du tournoi. Il
contient les matchs des rondes suivantes ainsi que les pauses.
Acteur :

Administrateur

Joueurs

Précondition :

Le tournoi a été créé.

Déroulement nominal :

Le système génère le programme.

L’administrateur entre les résultats de la première ronde.

Le système met à jour le programme avec les nouveaux matchs.

Le même processus se répète jusqu'à la fin du tournoi.

L’exception :

Un joueur est éliminé entre les rounds, le système doit mettre à jour le
programme. `

Post condition :

Le programme est prêt à être consulté par les joueurs et administrateurs.

Description de cas d’utilisation : « Gérer le profile » :

Résumé :

Chaque joueur peut gérer son profil : voir ou changer sa photo, sa


biographie. consulter les matchs qu’il va jouer dans le cas où il est inscrit dans un
tournoi.

Acteur :

Joueur

Précondition :

Un joueur s’inscrit sur la plateforme.

Déroulement nominal :

Un joueur crée un profil sur la plateforme.

Le joueur accède à son profil et effectue des modifications. `

Post condition :
Le profil d’un joueur a été géré.

Exemple de gestion pour le joueur : Cas d'utilisation “‘s’inscrire”

diagramme de classes d’analyse


diagramme de classes détaillé

Diagramme de séquence : Générer les matchs d’une ronde


Diagramme de séquence : Spécifier l’issue d’un match
Diagramme de packages
Diagramme de composants

Diagramme de déploiement
VII. Conclusion :

En conclusion, EasytoChess présente, malgré son allure simple, une


réponse à la contrainte d’évolutivité imposée par la nature progressive des
compétitions. Nous pouvons affirmer avec une grande confiance que ce projet
peut rivaliser avec les plus grands produits sur le marché.

A l’intention d’en faire plus qu’un simple modèle de conception, on vous


remercie pour votre attention.

Vous aimerez peut-être aussi