User Tools

Site Tools


2012_2013:s3:tp:sujet

Sujet de l'étude de cas TP S3T

La réalisation du jeu lui-même suite au travail mené en TD ne nécessite plus une analyse suffisante pour faire l'objet de TPs dans ce module. La décomposition du jeu est telle que l'implémentation est à présent la voie la plus adaptée à cerner les algorithmes. Malgré l'envie de concrétiser la réalisation du jeu, nous nous en éloignons donc ainsi que du public initial pour nous intéresser plus largement à l'organisation des tournois et aux différents processus qui entourent ce jeu.

Dans un objectif pédagogique, nous simplifions ici les règles qui sous-tendent ce type d'organisation.

  1. Gestion des tournois
    • Un manager crée un tournoi, il ne peut pas être en conflit avec un autre tournoi.
    • Un internaute consulte le calendrier des tournois, cela inclut les tournois passés et leurs résultats et les tournois futurs
    • Un licencié s'inscrit à un tournoi donné
    • Un manager enregistre les scores des joueurs à la fin d'un tournoi
    • Un manager annonce les dernières informations
    • EXTENSIONS
      • On peut savoir tous les tournois auxquels un joueur a participé,
      • on peut annuler un tournoi et dans ce cas notifier tous les joueurs,
      • le rang d'un joueur est “simplement” déterminé par la moyenne de ses scores
      • On ne déclenche plus une erreur si on a plusieurs tournois à la même date.
      • On peut demander au système une date de libre pour organiser un tournoi sur plusieurs jours, ….
      • Contrainte : On doit payer en fonction du nombre de sessions de connexion à la base de données. Du coup, on voudrait minimiser le nombre d'accès à la BD… que proposez-vous?
      • Extension BIS : Organisation d'un tournoi : ouverture des inscriptions en précisant le nombre maximum de participants, Un manager valide les demandes d'inscriptions ou les rejettent. Un licencié ne peut pas s'inscrire à un tournoi ayant atteint le nombre maximum de participants, A Chaque validation de l'inscription d'un licencié, un mail lui est atomatiquement envoyé.
  2. Gestion du vocabulaire
    • Un internaute peut vérifier la validité d'un mot
    • Un licencié peut proposer un mot en respectant les consignes
    • Le Comité de rédaction peut valider un mot proposé
    • Un internaute peut consulter la liste des mots par le nombre de lettres dans le mot, la première lettre
    • Un internaute peut demander le nombre de points d'un mot du scrabble
    • EXTENSIONS
      • On veut enrichir le vocabulaire en associant aux mots leur nature (verbe, nom, …) et le temps et la personne pour un verbe, le nombre pour un nom, … Que proposez-vous?
      • L'utilisateur peut à présent consulter ces informations sur les mots sélectionnés.
      • On veut avoir des statistiques sur le nombre de mots soumis et le nombre de mots validés.
      • Contrainte : On doit payer en fonction du nombre de sessions de connexion à la base de données, pas la durée. Du coup, on voudrait minimiser le nombre d'accès à la BD… que proposez-vous?
  3. Gestion d'une partie multi-joueurs
    • Un manager crée une partie, cela inclut de fixer la durée de réflexion des joueurs
    • Un joueur peut demander à s'inscrire à une partie
    • Un manager sélectionne des joueurs
    • Un manager lance et arrête la partie, ce qui inclut d'enregistrer les scores faits par chacun des joueurs.
    • Un joueur conteste un mot 1)
    • Un arbitre (ne peut pas être un joueur) valide ou non le mot contesté
    • Un joueur joue son tour
    • EXTENSIONS
      • Les demandes de contestations validées ou invalidées servent à l'arbitre : si le mot a déjà été contesté s'aligner sur la dernière décision.
      • On doit pouvoir geler une partie sur demande du maître du jeu dans une partie multi-joueurs.
      • Lors de la définition d'une partie, on définit le temps maximum accordé à chaque joueur. Si un joueur ne répond pas dans les temps, il passe son tour. Si un joueur a raté plusieurs tours, il est marqué comme absent.
      • Contrainte : On doit payer en fonction du nombre de sessions de connexion à la base de données. Du coup, on voudrait minimiser le nombre d'accès à la BD… que proposez-vous?
  4. Gestion de l'évolution du jeu
    • Un développeur peut proposer un joueur artificiel (niveau, archive, …)
    • Un manager valide l'enregistrement d'un joueur artificiel
    • Un joueur sélectionne un joueur artificiel (cela comprend choisir le niveau du jeu) puis joue contre lui.
    • Un internaute peut consulter les scores d'un joueur artificiel donné
    • Un joueur peut commenter les performances d'un joueur artificiel
    • Un manager peut invalider un commentaire
    • Un joueur peut signaler un commentaire non approprié.
    • EXTENSIONS
      • Le niveau d'un joueur articiel est obtenu en le confrontant à un “bench mark” correspondant à un ensemble prédéfini de tirage aux sorts des lettres.
      • Chaque fois qu'un nouveau joueur artificiel est soumis, son niveau est automatiquement calculé par le système.
      • Il est possible de visualiser le nombre de fois qu'un joueur artificiel a été sélectionné et la moyenne pondérée du niveau des joueurs contre lesquels il a joué, son taux de succès et d'échec.
      • Contrainte : On doit payer en fonction du nombre de sessions de connexion à la base de données. Du coup, on voudrait minimiser le nombre d'accès à la BD… que proposez-vous?
  5. Gestion des licenciés de la Fédération internationale de Scrabble® francophone
    • Un internaute consulte le classement des joueurs au niveau national ou international
    • Un internaute s'inscrit pour devenir licencié : paiement d'une cotisation, nom du club, nom du joueur, pseudo…
    • Un club valide ou non l'inscription d'un de ses membres
    • Un joueur est notifié de son inscription ou non
    • Un internaute peut consulter la liste des clubs de sa région
    • EXTENSIONS
      • Pour tout joueur d'un club on peut savoir à quels tournois il a participé.
      • Un manager peut voir l'activité des clubs en visualisant le ratio entre le nombre de joueurs d'un club, et leur nombre de participations à des tournois, ….
      • Un joueur ne peut pas être inscrit dans plusieurs clubs en même temps, mais il peut demander à changer de club.
      • Contrainte : On doit payer en fonction du nombre de sessions de connexion à la base de données. Du coup, on voudrait minimiser le nombre d'accès à la BD… que proposez-vous?
Cette description sert de point de départ. Elle doit être affinée projet par projet pour s'assurer que des fonctionnalités n'ont pas été oubliée, sélectionner les points forts, regrouper éventuellement des fonctionnalités, …

Références

!-http://www.kurokatta.org/doc/words-en-fr-toc -! !- * On peut savoir tous les tournois auxquels un joueur a participé, on peut annuler un tournoi et dans ce cas notifier tous les joueurs, le rang d'un joueur est “simplement” déterminé par la moyenne de ses scores.

  • C3 : On doit payer en fonction du nombre de sessions de connexion à la base de données. Du coup, on voudrait minimiser le nombre d'accès à la BD… que proposez-vous?
  • On veut enrichir le vacabulaire en associant aux mots leur nature (verbe, nom, …) et le temps et la personne pour un verbe, le nombre pour un nom, … Que proposez-vous? L'utilisateur peut à présent consulter ces informations sur les mots sélectionnés.
  • On ne déclenche plus une erreur si on a plusieurs tournois à la même date. On peut demander au système une date de libre pour organiser un tournoi sur plusieurs jours, ….
  • Les demandes de contestations validées ou invalidées servent à l'arbitre pour si le mot a déjà été contesté s'aligner sur la dernière décision. Toutes les demandes validées sont transmises au comité nationale pour demande d'ajout au dictionnaire du scrabble.
  • Le niveau d'un joueur articiel est obtenu en le confrontant à un “bench mark” ensemble de parties. Chaque fois qu'un nouveau joueur est soumis, son niveau est automatiquement calculé par le système.
  • Il est possible de visualiser le nombre de fois qu'un joueur artificiel a été sélectionné et la moyenne pondérée du niveau des joueurs contre lesquels il a joué, son taux de succès et d'échec.
  • On doit pouvoir geler une partie sur demande du maître du jeu dans une partie multi-jueurs ou contre un joueur virtuel.
  • Lors de la définition d'une partie, on définit le temps maximum accordé à chaque joueur. Si un joueur ne répond pas dans les temps, il passe son tour. Si un joueur a râté plusieurs tours, il est marqué comme absent. S'il est déconnecté, il apparaît comme déconnecté et le nombre de points est
  • Pour tout joueur d'un club on peut savoir à quels tournois il a participé. Un manager peut voir l'activité des clubs en visualisant le ratio entre le nombre de joueurs d'un club, et leur nombre de participations, ….

-!

1)
En cas de contestation d'un mot … par un joueur, celui-ci doit écrire lisiblement le mot contesté sur ce bulletin,… puis appeler un arbitre pour vérification…. Il inscrit sur le bulletin si le mot est admis ou non admis, et le rendra aux joueurs sans autre commentaire. Les joueurs doivent s'assurer que d'éventuelles contestations précédentes, portées sur le même bulletin, sont clairement biffées. extrait de ftp://ftp.ffsc.fr/classique/Papeterie.Classique.2012.xls
2012_2013/s3/tp/sujet.txt · Last modified: 2013/01/26 09:30 by blay