Projet. UML
Sujet propos® par
Pierre Gérard
pierre.gerard@iutv.univ-parie13.fr
DUT Informatique $2
IUT de Villetancuse
Université de Paris 13
Resumé
Ce projet a pour objectif Papprentissage de Putilisation dun « Atelier G Jel »pour
mmener de bout en bout la conception dan logiciel avec une démarche cobérente, Le sujet
proposé fera également Fabjet dit projet Java. Aussi, nous vous recommandons de produire
nar conception UML prieise ct de qualite, Non seulement votre travail sera appeécié em UML,
‘mais cet cffort vous aidera & mener A biew Je projet Java dans los meilleures conditions,
1 Organisation du projet
1.1 Méthode de conception
Pour Ia conception, vous devrez utiliser la méthode « minimale »décrite en cours et résumée
par le diagramine suivant
_» ae? ~ et
ia] ar end
oy m= —>
sed Doers O80! Peirce
=
Classe cb conceptionLes besoins précis sont ceux que vous jugerer opportuns. Is devront étre exprimés dabord
par un cahier des charges sommaire que vous écrirez, puis par un diagramme de cas (utilisation
Toutes les ctapes devront tre prises en compte, Une maniére de procéder pourrait done étre
Spécification des besoins a Paide d'un diagranme de cas Wutilisation
Definition dm modele du domaine & Vaide d'un diagramme de classes
Pour chaque cas d'utilisation, on produira un diagrammne de sequence syste Mlustrant les
interactions entre Ie logiciel et les acteurs. Ceci nous aidera a definir les operations systime,
La premidre version du diagramune de classes sera reprise pour y adjoindre des classes de
contrile ot dinterface. Les opérntions systéme seront réparties entre les différentes classes
interface.
Chaque diagrammie de séquence systéme sera repris pour écre détaillé en prenant en compte
les informations apportées par le diagramme de classes participantes. En particulier, on
éclatera & chaque fois le systéine en plusieurs classes participantes de maniére & momtrer
comment les différentes classes interagissent pour réaliser chacum des eas (utilisation,
Les messages échangés entre les classes participantes permettront de définir les opérations,
de chacune des classes participantes. Ces opérations seront spécifiges dans la nouvelle ver~
sion du dingramme de classes : le diagramme de classes de conception. On veillera A ee que
‘omtes les opérations soient réalisables.
La production du code sera Fobjet d’un autre projet dependant du cours de Java,
Cette méthode est minimale. Si vous tronver pertinent de spécifier certains aspects du logiciel
em utilisant autres diagrames, vous Gies naturellement libres de le faire. On pourrait — par
exemple — utiliser des dingrammes de s¢quences pour décrire certains algorithmes parti les plus
complexes
vous é{es Join de vous demander quoi faire ex plus et eraigaes plutot ne pas pouvoir faire la
totalité des diagrammes demandés, il est alors préferable de se concentrer sur la conception des
fonctionalités les plus centrales et pour celles-ci, daller jusqu’au diagramme de classes de concep-
tion, quitte a néyliger certaines fonctionnalités secondaires. Ce sera préférable A une exploitation
do Ta totalite des cas CPutilisation mais en i plus haut niveau (abstraction. En
autres termes, un travail en profondeur Pabord sera préféré & umn travail en largeur Pabord
1.2 Rendu
Le projet doit etre réalisé en binomes. Libre a. vous de former les groupes comme vons
Penteniles, Dans le cas of nombre d’étudiants dans groupe est impair il est possible d’avoir, dams
ce groupe, un et un seul groupe de 3 étudiants. Les groupes ne pourront en aucun cas changer
‘au cours du projet UML. En outre, ces groupes devront ére les mémes pout le projet Jawa et ne
sauraient non plus etre changés a ce moment 1a
Le rendu de chaque groupe se fer par mail :
A : PrenonEnseignant..NonEnseignant@iuty .univ-parisi3.fr
Sujet : [Projet AGL] NomiNom2
Piteos jointcs : Nomillon2¥ ?.z4p, NomiNom2.txt, NomtNon2. pat
Nous vous prions de bien vouloir respecter scrupuleusement la syntaxe des différents éléments
du mail. NomtWom2 est bien sfir 4 remplacer par vos vrais noms. Si par exemple votre bindme est
furmé des ¢tudiants Dupond et Dupont, Fobjet du mail serait « [Projet AGL] DupondDupont »
Une partie de Pévaluation concernera utilisation de PAGL PowerAMC. Aussi nous vons
demandons de bien vouloi noter dans un fichier annexe (NomtMom2.txt} les manipulations que
vous aurez ffectuées mais qui ne seraient pas immédiatoment visibles,
Nous vous demazdons également de bien vouloir commenerr le projet par la rédnetion d’un
cahier des charges somumaire que vous noueres Nomtlon2 . pdf. Si vous aver des dilficultés & pro
cluire un fichier pdf, vous pouver aussi rendre le fichier source (Nom1Nom2.. doc, Nomilom2. odp...)Dans la méthode proposée, certains diagrammes sont affinés au fil de Ia conception. Par
exemple,
Le premier diagramme des classes est le « modele du domaine qui est ensuite enrich de
classes interfaces et de controle pour devenir « diagramme ‘ies classes participantes »puis,
enfin « diagramme des classes de conception »
A chaque cas Putilisation est associé-un « diagramme de séquence systéme »généralement,
asser. simple mais A qui on associe ensuite wn diagramme de séquences plus complexe qui
rend compte des « interactions »8 Pintérieur du systeme. Souvent, la production de ces
nouveaux diagrammes aunéne a reconsidérer certains choix opérés en amont dans les « dia-
gramme de sequence systéme », et meme parfois dans les « ciagrammes de vas (utilisation »
IL est indispensable que ce gue vous rendre permette au correcteur de mesurer Pévolution de
la conception’, Nous vous demandons dine de readre trois versions de la conception que yous
ures produite
VIL avec le diagramme de cas, le modéle du domaine et Je diagramme de sequences syst?me
V2 avec les classes participantes, les diagramimes Pinteractions e¢ les diagrammes précédemts
éventucllement modifies & Ja lumiere de vos derni¢res réflexions
VB avec les classes de conception et les diagrammes précédents éventuellement modifiés & la
Jumiére de vos toutes dernieres reflexions
Chacune de ces versions pourra étre sauvegardée dans un dossier different NomtNom2v? puis
archivée dans un fichier NomiNom2V?.zip ou HomiNon2V?.tgz. Ie, < ? »vaut pour les trois
uméros de version, Par exemple, des étudiants sommés Dupond et Dupont joinront a leur mail
un fichier DupondDupontVi .2ip, un autre DupondDapontV1.zip et encore un autre DupondDupontVi «zip.
2 Présentation du projet
21 Objectif général
Liobjet cu projet est la réalisation dun jeu multi-joueurs de Poker, dans sa-variante la plas
populaire ; le Texas Hold'em, Chaque joueur devea lancer le jeu depuis un terminal different
mais tous devront participer & la méane partie. Si nécessaire, on peut aussi envisager de Lanect
une progtamme « serveut scans tn autre terminal.
On ne réclame pas de mécaaismes de gestion réseau et IP pour synchroniser los différents
joueurs : une communication par Pintermédiaire d'un fichier partagé suffira. Vous pouver aussi
imvisager un petite hase de données si vous préférez, On ne reclame pas non plus des geaphismes
trés Glaborés : un alfichage en mode texte dans un terminal sera suffisant.
2.2 Les cartes
Un jen de cartes est constitné de 32 cartes. Ces cartes sont divisées en 4 couleurs, chacume
ayant 13 rangs
Les couleurs sont dune valeur egale, C'est-f-dire qu'aueune couleur nest plus forte qu'une
autre. Les couleurs sont
~ Pique (Spades, 8)
Cocur (Hearts, H)
Carreau (Diamonds, D)
~ Tree (Clubs .c)
Les tangs donnent des valeurs différentes aux cartes, An poker, PAS est la carte Ia plus furte,
rt le? la carte Ia plus faible. Mais As peut étre utilisé comme carte faible pour former la quinte
Se4:32-As, Du plus haut au plus faible, les 13 rangs sont
— As (Ace, A)
A ce titre, Test tink a Fait normal que le premier diagram do cas = par exemple = soit impart et qu’
soit eorrige pat la suiteRoi (King, Kc)
Reine (Queen, Q)
Valet (Jack, J)
Dix (rm, T)
Neuf (Nine, 9)
Huit (Eight, 8)
Sept (Seven, 7)
Six (Six, 6)
Cing (Five, 5)
Quatre (Four, 4)
‘ois (Three, 3)
~ Deux (Deuce, 2)
2.3 Les combinaisons
An poker une main est constitute de 5 cartes. Les mains sont divisées en plusieurs combi-
isons, comme la couleur, la quinte ow la double paire. Le joneur qui a la plus asute combimaison
gagne. En uénéral, quand deux joueurs ont le méme genre de combinaison, celui qui a les cartes
los plus fortes gagne, Les différentes combinaisons classées dans un ordre déeroissant sont les
suivantes
— La guinte flush (Straight Flush). Um quinte fush est constituée de 5 cartes de la méme
couleur qui se suivent mumériquement. La plus haute quinte flush gagne. AKQUT est la
plus hante quinte flush, et est aussi appelée la quinte royale. 54324 ext Ia plus faible quinte
slush,
Le Carré (4-of-a-kind). Le plus haut careé gagno. Si deux joucurs ont le méme earré, alors
celui quia Te plis haut kicker gagne.
Le Pull (Bull House). Un full est constitué d'un brelan et dune pair. Celui qui a le plus
hhout brelan gagne. Si deux joueurs ont le meme brelam, celui qui ala plus haute paire
gagne. Le full est aussi commu sous Te nom de Boat,
Ja Couleur (Flush). Une couleur est constituée de 5 cartes de Ja meme couleur. La couleur
qui a la carte la plus forte gague. Si deux couleurs ont la meme plus forte carte celle qui a
Jn meilleur 2eme carte gugne, et ainsi de suite
La Quinte ou Site (Straight). Une quince est constituée de 5 cartes qui se suivent mumnérique-
ment, La quinte avec Ja plus haute carte gagne, AKQJT eat Ia plus hautes quinte, 54324
cat la plus petite, (64824 ost aussi appelée un wheel.)
Lr Brelan (3-of-ackind). Le plus fort Brelan gagne. Si deux joueurs ont le méme brelan,
alors les deux kickers (cartes non combinées) sont utilisées pour déterminer Je gagnant. Le
brelan est aussi appelé Teips. Si vous avez une paire et que vous ubtenez un brelan avec le
flop, on Pappelle aussi un Set,
La Double Paire (Two pair). La main avec la plus forte paire gagne. Si les deux plus fortes
paifes sont identiques, alors c'est les paites les plus faibles qui entrent en jeu. Si elles sont,
identiques, alors c'est le Kicker (carte non combinée) qui détermine Te vainquewr,
La paire (One pair). La main avec la plus haute paire gagne. Si les paires sont identiques,
ost les Kickers qui sont utilists pour dévcrminer le gagnant, en commencant par la carte
Jn plus haute, puis par la 2éine, et finalement la derniére carte.
Lu Carte forte (Jligh carr). Si une main n'entrent dans aucune combinaison, elle est classe
selon sa carte [a plus forte. Deux mains sont comparées en utilisant les cartes fortes. Si
elles sant identiques, on compare les secondes cartes Tes plus fortes et ainsi de suite.2.4 Cas particulier du Texas Hold’em
Le Texas Hold'em est certainement la forme de poker ki plus populaire, Voici comment se
iléroule une main
Cartes privatives. Chaque joueur recoit deux cartes fermées.
Le Flop. Trois cartes ouvertes sont mises sur La table,
Le Tum, Une quatrieme carte est mise sur la table.
La River. Enfin, une cinquiéme carte est inise sur la table
cing cartes sur la table forment les cartes communes (le boartl). Vous formes votre main
em constituant Ii meilleure enmbinaison possible de 5 cartes parmi les T disponibles (5 cartes
communes + 2 cartes privatives). Mais rappeles vous que tous les joueurs ont accés aux cartes
communes. Quand on joue pour de Fargent, il y a un tour Peachére aprés chaque tour de donne
(done 4 tours en tout).
Dans Pexemple ci dessous, vous aver une couleur, forme & partir des 3 tréfles du board
(cartes communes) et de vos deux cartes fermées,
&
Cd
¢ ss
. tae
| 4 +
Votre main
Dans Pexemple ci dessous, vous aver une paire de Roi avee un Kicker Dame. Le kicker est
2s Important, car il vous permettrait de battre une joueur avant Roi/Valet ou Roi/ 5, mais
vous perdries face As/Roi
IZ
44 i 6
iy Me
i owas! x
Votre main
Dans Pexemple ci dessous, vous avez une quinte au Roi, en utilisant toutes les cartes com
runes eb aucune de vos cartes. Mais rappelez vous bien que tous les ausres joueurs ont aussi une
quinte, Comment, dans cette situation, pourties vous gagner le pot en eatier au lieu de simple~
ent le partager ? Vous devriea miser et laisser croire que vous avez un As. Mais, si quelyu’un en
face de yous a récllement un As, vous seticz relanct, et du coup plact dans une situation plutot
inconfortable
Votre main Tableau
2.5 Les bases des enchéres
2.5.1 Stil n'y a aucune mise avant vous (tout le monde check avant vous)
Miser (bet) + Vous pouves ajouter de argent dans le pot en misant. Maintenant, tous les
joueurs doivent suivre votre mise en payant Li meme somme argent, sinon, ils doivent se coucher,