0% ont trouvé ce document utile (0 vote)
59 vues3 pages

Examen 2

Transféré par

leader
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
59 vues3 pages

Examen 2

Transféré par

leader
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Polytech Paris-Sud UML

3e année Année 2013-2014

Devoir surveillé
3 février 2014. Durée : 3 heures
Les seuls documents autorisés sont les transparents du cours.

La fédération européenne du jeu de go veut mettre en place un site Internet permettant


d’organiser les inscriptions aux compétitions et de publier les résultats et le classement des
joueurs à l’échelle européenne.

Le jeu de go. Le jeu de go est originaire de Chine. Il oppose deux adversaires qui tour à tour
vont déposer des pierres blanches et noires sur un plateau (appelé goban) afin de gagner des
territoires. Les pierres représentent des soldats. Lorsqu’un soldat est encerclé par l’adversaire,
il devient son prisonnier.
Au début de la partie, le goban est vide. Le joueur ayant les
pierres noires commence. Les joueurs déposent alternativement une
pierre de leur couleur sur une intersection libre du goban. Une fois
placée sur le goban, la pierre ne change plus de place. Un joueur
peut aussi passer son tour ou abandonner la partie lorsque c’est son
tour. Si aucun des joueurs n’a abandonné, la partie se termine quand
les deux joueurs ont passé consécutivement. On comptabilise alors
le score de chacun : chaque joueur dénombre les intersections vides
qu’il contrôle complètement (c’est-à-dire qui sont entourées par ses
propres pierres), et retranche le nombre de pierres qui lui ont été
capturées. Celui qui possède le plus haut score gagne. En cas d’égalité, la partie est nulle.

L’échelle de niveau. L’échelle de niveau de la fédération européenne de go permet à chacun


de mesurer sa progression au fur et à mesure de ses participations aux compétitions françaises
et européennes. Le niveau est codé comme un nombre entier positif, qui peut aller de 100
à plus de 2940. Le niveau d’un joueur débutant est 100, puis il augmente et diminue (mais
pas au-dessous de 100) grâce aux parties gagnées ou perdues contre des joueurs de niveau
supérieur ou inférieur. Il augmentera plus suite à une victoire contre un joueur plus fort que
suite à une victoire contre un joueur moins expérimenté.
Le niveau d’un joueur n’est pas recalculé à chaque partie mais seulement à la fin d’une
compétition à laquelle il a participé. Il est calculé en fonction de son niveau au début de la
compétition, des résultats des parties qu’il a jouées et des niveaux de ses adversaires (au début
de la compétition), selon une règle qu’on ne détaille pas ici.

Le rôle et l’organisation du site. De façon à pouvoir conserver l’historique des com-


pétitions et des parties jouées, le site doit permettre aux clubs de déclarer les compétitions
qu’ils organisent et de publier les résultats d’une compétition, et aux joueurs de s’inscrire à
ces compétitions. Il doit aussi permettre la consultation des compétitions et des résultats ainsi
que du classement général des joueurs.

1
Les compétitions passées et à venir ainsi que les résultats des compétitions doivent être
publics pour être visibles par tout internaute sur le site de la fédération. Les résultats d’une
compétition présentent la liste des joueurs participants avec pour chacun son pays, son club
et la liste des résultats des parties qu’il a jouées. On peut accéder aux détails des résultats
d’un joueur (ses adversaires et leur niveau à chaque partie, l’évolution de son niveau, etc). On
peut aussi consulter les résultats des joueurs par club ou par pays.
Ce sont les clubs de go membres de la fédération européenne qui gèrent les compétitions sur
le site. La fédération européenne de go regroupe les fédérations nationales de 36 pays, chaque
fédération nationale regroupant l’ensemble des clubs de go du pays. La fédération française
de go par exemple comprend 110 clubs membres. Chaque club de chaque pays possède un
compte sur le site de la fédération européenne, identifié par un code unique attribué au club
(Fr91Or par exemple est le code du club d’Orsay) et un mot de passe. Ces comptes sont créés
par l’administrateur du site sur demande des clubs (la création de ces comptes est en dehors
du système).
Un club organisateur doit être connecté pour pouvoir gérer ses compétitions. Une fois
connecté, il déclare une compétition en donnant son nom, la date et le lieu où elle se déroule
et le nombre maximum de participants qu’elle peut accueillir. À la création d’une compétition,
ses inscriptions sont fermées (aucun joueur ne peut demander son inscription), jusqu’à ce que
le club organisateur ouvre les inscriptions. Un joueur peut alors s’inscrire à cette compétition,
après s’être connecté au site. Il peut aussi se désinscrire tant que les inscriptions sont ouvertes.
Lorsque le club ferme les inscriptions (la veille de l’événement par exemple), plus aucun joueur
ne peut s’inscrire ou se désinscrire de l’événement. Lorsque les inscriptions sont ouvertes, si la
capacité de la compétition est atteinte, les nouvelles inscriptions sont (possibles mais) refusées
tant qu’il n’y a pas de nouvelles places libres. Des places peuvent être libérées si l’organisateur
augmente le nombre de places disponibles ou si un joueur se désinscrit. Le club organisateur
peut modifier les informations de la compétition (sauf la date) tant qu’elle n’a pas commencé.
Il peut modifier le nombre de places disponibles mais seulement en l’augmentant. En cas de
modification d’une information, tous les joueurs inscrits à cette compétition sont notifiés par
e-mail de la mise à jour de l’événement.
Pour participer à une compétition, un joueur de go doit posséder une licence. Tous les
licenciés ont un compte sur le site de la fédération européenne, créé à l’achat de la licence. On
ne modélisera pas la création des comptes des joueurs, on supposera l’existence d’un compte
pour tout joueur licencié. Le compte d’un joueur est identifié par le numéro de licence du joueur
et un mot de passe. Il regroupe toutes les informations d’un joueur : ses nom et prénom, son
adresse e-mail, son club, son pays et son niveau sur l’échelle. Un joueur peut changer de mot
de passe, modifier son adresse e-mail, mais ne peut pas modifier son club de rattrachement ni
son pays, qui dépend du club. Il ne peut pas non plus modifier lui-même son niveau.
Les résultats d’un joueur à une partie contre un autre joueur sont représentés par la couleur
des pierres avec lesquelles il a joué, son score et son résultat (1 si le joueur a gagné, 0,5 si
la partie est nulle, 0 s’il a perdu). Après une compétition qu’il a organisée, le club publie les
résultats de la compétition en envoyant sur le site les résultats de toutes les parties pour tous
les joueurs sous la forme d’un fichier respectant un format donné. Les niveaux des joueurs sont
alors mis à jour automatiquement et les résultats de la compétition sont publiés sur le site.

2
Questions
1. Donner les acteurs et les cas d’utilisation du système sous forme de diagramme de cas
d’utilisation. Préciser le vocabulaire utilisé et expliquer les choix d’organisation des cas
(justifier les extend, les include et les généralisations).
2. Donner un scénario concret, sous forme de diagramme de séquence, illustrant l’effet de
la publication des résultats d’une compétition sur le niveau des participants.
On prendra l’exemple d’une compétition acceptant seulement deux joueurs et ne com-
prenant qu’une partie. Le scénario montrera toutes les interactions entre les acteurs et le
système, depuis la création de la compétition par le club organisateur jusqu’à la consul-
tation par les joueurs de leurs résultats. On fera apparaître clairement le changement de
niveau des joueurs entre le début et la fin du scénario.
On rappelle que dans un scénario instancié, les arguments des opérations doivent prendre
des valeurs concrètes.
3. Une première analyse a permis d’identifier les classes Joueur, Partie, Compétition, Club
et Résultat (donnant le détail des résultats d’un joueur à une partie). En utilisant au
moins ces classes, donner la structure du système sous forme de diagramme de classes.
On s’assurera entre autres qu’il est facile de trouver toutes les parties jouées lors d’une
compétition. On s’assurera également qu’on peut connaître facilement tous les résultats
d’un joueur (afin d’établir des statistiques par exemple). On fera apparaître clairement
les différents statuts d’une compétition liés à sa création, à l’ouverture et la fermeture
des inscriptions, et à la publication des résultats.
4. Donner l’ensemble des contraintes que doit vérifier le système, exprimées à l’aide des
éléments du diagramme de classes (les contraintes doivent porter sur les attributs et les
associations du diagramme).
5. Lors de la publication des résultats d’une compétition, le club organisateur donne éga-
lement un classement des participants établi sur la base de leurs performances durant
la compétition. Modifier le diagramme de classe de la question 4 afin de faire appa-
raître ce classement. Expliquer les modifications apportées et expliciter les contraintes
supplémentaires si nécessaire.
6. Donner un diagramme états-transitions représentant le cycle de vie d’une compétition,
depuis sa déclaration jusqu’à son archivage après publication des résultats.
On s’assurera de la cohérence entre les différents états du diagramme et les différents
statuts possibles d’une compétition. On étiquètera les transitions du diagramme par des
opérations liées aux cas d’utilisation.

Vous aimerez peut-être aussi