Skip to content

Cahier des charges

Espion-Charles edited this page Oct 17, 2026 · 80 revisions

Cahier des charges - Logiciel de gestion de tournoi de tennis de table (M. Delvaux)

Informations générales

  • Auteurs du document : Nathan Gosiau, Charles Leclercq, Jennifer Thiery, Antoine Urger
  • Historique de version :
    • v1 : 05/10/2026 - Version initiale

Convention d’identification

Élément Format Exemple
Règle métier RM-xx RM-01
Donnée D-xx D-02
Fonctionnalité F-xx F-03
Exigence fonctionnelle EF-xx.y (avec xx, le numéro de la fonctionnalité associée) EF-03.1
Exigence non-fonctionnelle ENF-xx ENF-04

1. Contexte

Présentation du client

Marc Delvaux. Président bénévole du TTC Les Raquettes du Bois, à Ottignies.

1.1. Présentation du projet

Chaque année, le TTC Les Raquettes du Bois organise l'Open de la Saint-Nicolas. Aujourd'hui, celui-ci est entièrement organisé par M. Delvaux à l'aide d'un classeur Excel. Cette organisation lui demande beaucoup de temps et des erreurs arrivent fréquemment.

M. Delvaux souhaiterait donc disposer d'un logiciel qui lui permette de gérer le tournoi de A à Z. Il pourrait y ajouter les joueurs, générer les poules, imprimer les feuilles de match, encoder les scores et obtenir le classement final.

1.2. Objectif du client

Avoir une solution informatique qui lui permette de noter les données du tournoi et qui permette de limiter le nombre d'erreurs en automatisant des tâches comme la répartition des joueurs pour les poules et pour le tableau. La solution informatique doit aussi être capable de retranscrire tout les matchs dans une liste qui sera prête à être envoyée à la fédération de manière à éviter de devoir tout retranscrire à la main et à ne plus avoir de problème de retranscription.

2. Description générale

2.1. Vue d’ensemble du produit

Ce logiciel a pour but d’informatiser la gestion du tournoi de tennis de table afin de gagner du temps et de limiter les erreurs. Il centralise les informations et gère automatiquement les poules, l’arbre et l’enchaînement des matchs pendant le tournoi. Il permet également d’exporter les résultats pour la fédération.

2.2. Profils utilisateur

Ce produit est destiné à 3 utilisateurs : M. Delvaux, commanditaire du projet, et 2 membres du comité. M. Delvaux est responsable du tournoi et désire remplacer les Excel avec un outil plus fiable. Les membres du comité vont aider pendant le déroulement du tournoi. M. Delvaux désire que l'outil puisse l'aider depuis l'encodage des inscriptions jusque pendant le déroulement du tournoi. Il veut le contrôle sur tout.

2.3. Périmètre

Le logiciel couvre l’organisation de l’Open de la Saint-Nicolas, des inscriptions jusqu’aux résultats finaux. Il comprend :

  • La gestion des participants et de leurs inscriptions aux tableaux.
  • La génération des poules et de l’arbre du tournoi.
  • L’organisation des matchs et leur affectation aux tables.
  • L’impression des feuilles de match.
  • L’encodage des scores et le calcul des classements.
  • L’export des résultats pour la fédération.

2.4. Règles métier

  • RM-01 Les participants d'un tableau sont classés selon leur classement fédéral (du meilleur au moins bon), puis répartis dans les poules en serpentin : le meilleur est placé en poule A, le deuxième en poule B et ainsi de suite jusqu'à la dernière poule. On repart ensuite dans l'autre sens.
  • RM-02 Il est préférable de ne pas avoir deux joueurs d'un même club dans une même poule.
  • RM-03 Le tournoi est séparé en 4 niveaux :
    • Les jeunes (moins de 15 ans)
    • Débutants (classement NC à E0)
    • Intermédiaires (classement D6 à D0)
    • Confirmés (classement C6 et au-dessus)
  • RM-04 Un joueur peut être sur maximum 2 tableaux à la fois.
  • RM-05 Un jeune (moins de 15 ans) peut jouer dans les tableaux adultes mais un adulte ne peut pas jouer dans le tableau des jeunes.
  • RM-06 Un participant peut jouer dans le tableau qui correspond à son classement et le classement juste au-dessus, mais jamais celui en dessous.
  • RM-07 Un résultat n'est officiel que si le participant possède une licence.
  • RM-08 Un score ne peut pas être modifié une fois entré.
  • RM-09 Les matchs doivent être envoyés à la fédération avec le numéro de licence de chaque joueur et le score set par set.
  • RM-10 Un participant qui se retire avant le début du tournoi est retiré de la liste des inscrits et les poules sont réajustées. Le tournoi est considéré comme commencé dès que le premier match est lancé. À partir de ce moment, un participant ne peut plus être supprimé de la liste.
  • RM-11 Un participant attendu à une table qui ne se présente pas, est déclaré forfait. Il reste dans la liste et la règle suivante s'applique (article 7 du règlement) :
    • s'il a joué moins de la moitié de ses matchs de poule, toutes ses rencontres sont effacées;
    • sinon, ses résultats sont conservés et ses matchs restants sont perdus par forfait.
  • RM-12 Chaque poule compte 3 ou 4 joueurs.

2.5. Données

  • D-01 Participant : Un participant est défini par son nom, son prénom, son numéro de licence, son club, son classement fédéral, son email et son numéro de téléphone.

    • Volume : 80 à 120 participants.
    • Conservation : Q-02
    • Opérations : Ajouter un participant, modifier ses informations, supprimer un participant avant le tournoi ou (peut-être après ? Q-02)
  • D-02 Tableau : Un tableau est un regroupement de matchs dans un certain niveau (RM-03). Il regroupe des poules de 3 à 4 joueurs (RM-12)

    • Volume : maximum 4
    • Conservation : Q-02
    • Opérations : Création des tableaux avant le tournoi
  • D-03 Match : Un match est défini par les participants au match ainsi que son résultat (F-NEW ajout résultat match)

    • Volume : Dépend du nombre d'inscrits
    • Conservation : Q-02
    • Opérations : Ajout automatique des matchs d'un tournoi, ajout d'un résultat après le match
  • D-04 Table : Une table peut être soit libre soit occupée

    • Volume : 12 tables
    • Conservation : Toujours
    • Opérations : Mettre à jour le match en cours sur la table

3. Exigences

3.1. Exigences fonctionnelles

Vue d'ensemble

ID Fonctionnalité Priorité
F-01 Ajouter des participants manuellement dans le logiciel Indispensable
F-02 Gérer la liste des participants Indispensable
F-03 Répartir les joueurs dans les différentes poules selon leurs niveaux Indispensable
F-04 Gestion des scores dans chaque poule Indispensable
F-05 Ajout des gagnants de chaque poule dans l'arbre du tournoi Indispensable
F-06 Enregistrement des scores de chaque match pour la fédération Indispensable
F-07 Gérer l'avancement des matchs dans le tableau Indispensable
F-08 Automatiser la répartition des tables selon leurs disponibilités Optionnel
F-09 Afficher la liste des prochains matchs Optionnel

F-01 : Ajouter des participants manuellement dans le logiciel - Jennifer THIERY

L'utilisateur ajoute un participant à la liste des participants en renseignant ses informations (voir D-01). Il peut ensuite consulter la liste avec tous les participants inscrits.

Exigences :

  • EF-01.1 Un participant est ajouté dans la liste avec ses informations (voir D-01).
  • EF-01.2 L'utilisateur peut consulter la liste de tous les participants.
  • EF-01.3 L'ajout d'un participant est refusé si le numéro de licence figure déjà dans la liste.
    • Critères d'acceptation : Le participant "Pierre Dupont" avec la licence "12345678" est déjà dans la liste. L'ajout d'un nouveau participant avec la licence "12345678" est refusé.

F-02 : Gérer la liste des participants - Jennifer THIERY

Après avoir ajouter des participants, l'utilisateur peut ensuite modifier ou supprimer des participants.

Exigences :

  • EF-02.1 L'utilisateur peut modifier les informations d'un participant existant.
    • Critères d'acceptation : L'utilisateur change le classement de "Pierre Dupont". La modification est enregistrée et visible dans la liste.
  • EF-02.2 La modification d'un participant est refusé si le numéro de licence figure déjà dans la liste.
    • Critères d'acceptation : Le participant "Pierre Dupont" avec la licence "12345678" est déjà dans la liste. L'utilisateur modifie la licence de "Martin Dubois" en "12345678", déjà attribuée à "Pierre Dupont". La modification est refusée, car ce numéro de licence appartient à un autre joueur.
  • EF-02.3 L'utilisateur peut supprimer un participant, à condition que le tournoi n'ait pas encore commencé.
    • Critères d'acceptation : Le participant "Pierre Dupont" est déjà dans la liste.
      • Le tournoi n'a pas encore commencé : L'utilisateur supprime "Pierre Dupont" qui se retire. La suppression est accepté (voir RM-10).
      • Le tournoi a déjà commencé : L'utilisateur tente de supprimer "Pierre Dupont". La suppression est refusé (voir RM-11).

F-03 : Répartir les joueurs dans les différentes poules selon leurs niveaux - Jennifer THIERY

L'utilisateur répartit les joueurs inscrits dans un tableau en plusieurs poules. Le logiciel forme les poules selon le classement fédéral des joueurs et leur club, puis l'utilisateur peut consulter la composition de chaque poule de chaque tableau.

Exigences :

  • EF-03.1 L'utilisateur peut générer les poules d'un tableau. Le logiciel répartit tous les joueurs inscrits à ce tableau (voir RM-02, RM-03 et RM-12).
    • Critères d'acceptation : Il y a 8 joueurs inscrits dans le tableau "Débutants". Le logiciel génèrera 2 poules de 4 joueurs.
  • EF-03.2 Le logiciel répartit les joueurs dans les poules en serpentin (voir RM-01).
  • EF-03.3 Tant que le tournoi n'a pas commencé, l'utilisateur peut régénérer une nouvelle composition des poules (voir RM-10).
    • Critères d'acceptation : Le tournoi n'a pas encore commencé et le participant "Pierre Dupont" se retire. L'utilisateur régénère une nouvelle composition où les nouvelles poules ne contiennent plus "Pierre Dupont".
  • EF-03.4 L'utilisateur peut consulter la composition de chaque poule d'un tableau.

F-04 : Gestion des scores dans chaque poule - Nathan GOSIAU

Le logiciel doit permettre d'encoder les scores des matchs et de calculer automatiquement le classement des joueurs dans chaque poule.

Exigences :

  • EF-04.1 Le logiciel doit permettre d'encoder les scores des matchs.
    • Critère d'acceptation : Les scores encodés sont enregistrés et le classement se met à jour automatiquement.
  • EF-04.2 Le logiciel doit calculer automatiquement le classement en fonction du nombre de victoires.
  • EF-04.3 En cas d'égalité, le logiciel doit départager les joueurs dans l'ordre : confrontation directe pour deux joueurs, rapport victoire/défaite et tirage au sort si nécessaire.
    • Critère d'acceptation : En cas d'égalité, le logiciel applique correctement les règles de départage.

Données impliquées : D-01 Participant , D-02 Tableau , D-03 Match


F-05 : Ajout des gagnants de chaque poule dans l'arbre du tournoi - Nathan GOSIAU

Le logiciel doit sélectionner les deux meilleurs joueurs de chaque poule et les placer automatiquement dans un arbre à élimination directe.

Exigences :

  • EF-05.1 Le logiciel doit sélectionner automatiquement les deux premiers joueurs de chaque poule.
    • Critère d'acceptation : Les deux premiers de chaque poule sont correctement ajoutés dans l'arbre de leur tableau.
  • EF-05.2 Le logiciel doit générer un arbre de 8, 16 ou 32 places pour chaque tableau, selon le nombre de qualifiés.
  • EF-05.3 Le logiciel doit séparer les deux qualifiés d'une même poule dans des moitiés opposées. S'il y a des places libres, les meilleurs premiers sont exemptés du premier tour.
    • Critère d'acceptation : L'arbre respecte le placement des joueurs et gère les places manquantes.

Données impliquées : D-01 Participant , D-02 Tableau , D-03 Match


F-06 : Enregistrement des scores de chaque match pour la fédération - Charles LECLERCQ

Les matchs sont enregistrés automatiquement dans un fichier sous forme de liste pour permettre l’envoi à la fédération.

Exigences :

  • EF-06.1 Les données de chaque match sont enregistrées après chaque match.
  • EF-06.2 Tout les matchs, après le tournoi, sont introduits automatiquement dans un fichier pour la fédération.
    • Critère d’acceptation : Le fichier suit la structure demandée par la fédération (voir RM-09).

Données impliquées : D-01 participant, D-03 Match


F-07 : Gérer l'avancement des matchs dans le tableau - Antoine URGER

Génère automatiquement les futures matchs.

Exigences :

  • EF-07.1 Les matchs de poules sont générés juste avant le premier match.
  • EF-07.2 Les matchs de poule sont des matchs entre chacun des joueurs d'une même poule.
  • EF-07.3 Pendant la phase de tournoi, les joueurs doivent avoir fini leur match précédent pour pouvoir être inscrits à un autre match.
    • Critère d'acceptation : Si on essaie de créer un match en quart de finale il faut que les joueurs aient fini leur match en huitième.
  • EF-07.4 Pendant la phase de tournoi, le joueur peut avancer dans le tournoi s'il a gagné son match précédent.

Données impliquées : D-01 Participant D-03 Match


F-08 : Automatiser la répartition des tables selon leurs disponibilités - Antoine URGER

Répartir le prochain match à jouer sur une table en fonction d'une liste de tous les matchs et de son importance d'être joué.

Exigences :

  • EF-08.1 Pour la phase de poule, la liste des matchs doit privilégier les joueurs avec moins de matchs déjà joués.
    • Critère d'acceptation : Si joueur 4 a encore un match avec joueur 2 et joueur 1, et qu'il a joué 1 seul match et que joueur 1 en a deux et que joueur 2 n'en n'a qu'un on privilégiera le match avec le joueur 2.
  • EF-08.2 Pour la phase de tournoi, la liste des matchs prend en compte le tour sur lequel le match se trouve pour lui donner son importance.
    • Critère d'acceptation : Un match de huitième de finale sera plus important qu'un match de quart.
  • EF-08.3 Dès qu'un match sur une table est fini on y affecte le match le plus important dans la liste des matchs.

Données impliquées : D-01 Participant D-03 Match D-04 Table


F-09 : Afficher la liste des prochains matchs. - Charles LECLERCQ

Les matchs sont affichés selon leur ordre et la disponibilité des joueurs. Les matchs en cours ne sont pas affichés dans cette liste.

Exigences :

  • EF-09.1 Le programme récupère tous les matchs qu’il y aura.
  • EF-09.2 Le programme filtre les matchs qui sont en cours.
  • EF-09.3 Le programme actualise la liste à chaque fois qu’un match est terminé.

Données impliquées : D-01 Participants, D-03 Match

3.2. Exigences non fonctionnelles

  • ENF-01 Les données doivent être les mêmes entre les différents utilisateurs.

4. Contraintes

Le logiciel doit être simple d'utilisation, car il sera utilisé par M. Delvaux et deux membres du comité qui sont peu à l'aise avec l'informatique.

5. Enveloppe budgétaire

Aucun budget n'a été fixé pour le moment. M. Delvaux préfère d'abord vérifier que nous avons bien compris le déroulement de son tournoi, en lisant ce cahier des charges. Le budget sera discuté une fois le document validé.

6. Planification et livrables

M. Delvaux souhaite une version test pour début novembre et aura besoin de la version finale le premier week-end de décembre.

7. Questions ouvertes

ID Question À poser à … Éléments impactés Statut
Q-01 Comment comptez-vous définir si un participant est jeune ou non ? Demandez-vous l'âge ou simplement s'il/elle a moins de 15 ans ? M. Delvaux RM-05 Ouverte
Q-02 Que doit-on faire des données après le tournoi ? M. Delvaux D-01 Ouverte