10.01.2015 Views

Présentation du projet - Service d'echange de Donnees de l'ENST ...

Présentation du projet - Service d'echange de Donnees de l'ENST ...

Présentation du projet - Service d'echange de Donnees de l'ENST ...

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Projet Java/BD<br />

Présentation <strong>du</strong> <strong>projet</strong><br />

Philippe PICOUET<br />

Philippe TANGUY<br />

03 janvier 2006<br />

Encadrants<br />

Philippe PICOUET<br />

Philippe TANGUY<br />

(philippe.picouet@ens-bretagne.fr)<br />

(philippe.tanguy@enst-bretagne.fr)<br />

Objectifs<br />

L’objectif <strong>du</strong> <strong>projet</strong> est d’abord technologique. Il s’agira <strong>de</strong> développer une application Web utilisant les<br />

technologies Java et SGBD relationnel.<br />

Le <strong>projet</strong> débute début janvier et se termine à la fin <strong>du</strong> mois <strong>de</strong> mars 2006.<br />

Description <strong>de</strong> l’application<br />

En fin <strong>de</strong> <strong>projet</strong>, l’application visée sera un jeu <strong>de</strong> type gestion <strong>de</strong> portefeuille qui se déroule sur une pério<strong>de</strong><br />

virtuelle comprise entre <strong>de</strong>ux dates t1 et t2 précisées au début <strong>du</strong> jeu par un joueur particulier, disposant <strong>du</strong><br />

statut <strong>de</strong> « Maître <strong>de</strong> jeu ».<br />

N joueurs, déclarés par le maître <strong>de</strong> jeu et disposant à la date t1 d’une même somme d’argent M, peuvent<br />

chaque jour acheter ou vendre <strong>de</strong>s actions <strong>de</strong> leur portefeuille au cours <strong>du</strong> jour.<br />

Tous les cours quotidiens <strong>de</strong>s actions sur une pério<strong>de</strong> incluant t1 et t2 sont accessibles via un service Web<br />

« QueryFimatex », accessible en lecture à tous sous la machine candle.enst-bretagne.fr. Cette source <strong>de</strong><br />

données servira à initialiser puis à actualiser la base <strong>de</strong> données <strong>du</strong> jeu.<br />

A la date t2, tous les portefeuilles sont soldés et le gagnant est celui qui dispose <strong>du</strong> plus <strong>de</strong> liquidités.<br />

La fonctionnalité JEU est une fonctionnalité qui « met en scène » la fonctionnalité GESTION DE<br />

PORTEFEUILLE pour un ensemble d’utilisateurs. Cette secon<strong>de</strong> fonctionnalité sera à étudier et à<br />

développer dans une première version.<br />

Notes<br />

Des renseignements sur le service Web et les données FIMATEX sont disponible à l’URL :<br />

http://candle.enst-bretagne.fr/download/FIMATEX/Projet_Java_BD_Fimatex.pdf<br />

Une application Web exemple est disponible à l’URL :<br />

http://candle.enst-bretagne.fr/FimatexAppliWebExemple/in<strong>de</strong>x.html


Exemple <strong>de</strong> cas d’utilisation<br />

<br />

<br />

<br />

Chaque joueur accè<strong>de</strong> via un navigateur à l’application qui lui affiche d’une part le contenu (et la<br />

valeur) <strong>de</strong> son portefeuille et les liquidités dont il dispose, et d’autre part d’un écran lui présentant le<br />

cours <strong>du</strong> jour (et ceux <strong>de</strong>s jours passés) <strong>de</strong>s actions. Il peut déci<strong>de</strong>r <strong>de</strong> vendre une partie <strong>de</strong> ses actions<br />

et/ou d’en acheter d’autres au cours <strong>du</strong> jour, dans la limite <strong>de</strong> ses liquidités. Quand il a passé tous les<br />

ordres pour la journée en cours, il <strong>de</strong>man<strong>de</strong> à passer au jour suivant. Le passage au jour suivant se fait<br />

en même temps pour l’ensemble <strong>de</strong>s joueurs.<br />

Le maître <strong>de</strong> jeu configure la partie (nombre <strong>de</strong> joueurs, i<strong>de</strong>ntifiant <strong>de</strong>s joueurs) et déci<strong>de</strong> <strong>du</strong> mo<strong>de</strong> <strong>de</strong><br />

passage à une date ultérieure : manuel, ce sera à lui <strong>de</strong> passer à la date suivante, et ceci même si tous<br />

les joueurs n’ont pas terminé toutes leurs opérations ; automatique, le passage à une date ultérieure<br />

aura lieu au bout d’un temps défini à l’avance (la journée peut <strong>du</strong>rer 5mn, par exemple) ou encore<br />

quand tous les joueurs auront validé la modification quotidienne <strong>de</strong> leur portefeuille.<br />

Un historique <strong>de</strong>s opérations <strong>de</strong>s joueurs est conservé dans la base <strong>de</strong> données afin <strong>de</strong> permettre <strong>de</strong><br />

développer dans le futur <strong>de</strong>s nouvelles fonctionnalités, telles que rejouer une partie ou analyser la<br />

stratégie <strong>de</strong>s différents joueurs.<br />

Etapes principales<br />

Etape 1 : familiarisation avec les données FIMATEX<br />

Cette étape consiste à prendre en main les données FIMATEX et à maîtriser au sein d’un programme écrit en<br />

Java l’accès au service Web qui en permet la récupération.<br />

Etape 2 : définition <strong>du</strong> cahier <strong>de</strong>s charges <strong>de</strong> la partie GESTION DE<br />

PORTEFEUILLE<br />

Cette <strong>de</strong>uxième étape consiste, à définir plus précisément le cahier <strong>de</strong>s charges. Celui-ci doit préciser les<br />

fonctionnalités <strong>de</strong> l’outil à réaliser et proposer une série <strong>de</strong> prototypes intermédiaires à mettre en œuvre. Pour<br />

chacun <strong>de</strong>s prototypes, la démarche s’appuiera ensuite sur l’utilisation d’UML pour les schémas fonctionnels,<br />

les schémas <strong>de</strong> classes et la tra<strong>du</strong>ction <strong>de</strong> ce schéma en modèle logique pour la base <strong>de</strong> données.<br />

Livrables atten<strong>du</strong>s : à définir.<br />

Etape 3 : développement partie GESTION DE PORTEFEUILLE<br />

Partie base <strong>de</strong> données<br />

Partie Application Web (JSP Java)<br />

Livrables atten<strong>du</strong>s : co<strong>de</strong> source commentés.<br />

Etape 4 : définition <strong>du</strong> cahier <strong>de</strong>s charges <strong>de</strong> la partie JEU<br />

I<strong>de</strong>m étape 2


Etape 5 : développement partie JEU<br />

I<strong>de</strong>m étape 3<br />

Organisation pédagogique<br />

Les groupes seront composés <strong>de</strong> trois étudiants. Les groupes sont incités à collaborer pour progresser plus<br />

vite. Une réunion hebdomadaire avec les encadrants est planifiée toutes les semaines. Les avancées seront<br />

présentées et les problèmes rencontrés seront discutés. Un compte ren<strong>du</strong> succinct <strong>de</strong> la réunion, établi par les<br />

élèves, sera diffusé à l’ensemble <strong>de</strong>s intervenants à la suite <strong>de</strong> la réunion.<br />

Organisation technique<br />

Langage : Java<br />

SGBD relationnel : PostgreSQL 8<br />

Environnement <strong>de</strong> développement :<br />

Eclipse 3.1<br />

Plugin Tomcat<br />

Plugin NitroX (édition <strong>de</strong> co<strong>de</strong> HTML, XML, JSP, etc.)<br />

Gestion <strong>de</strong> versions : SubVersion + plugin Eclipse (SubClipse)

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!