On se propose de réaliser une application client/serveur écrite en Java permettant d'échanger des images à travers le réseau. Il est donc demandé d'écrire l'application cliente et l'application serveur. Le principe de fonctionnement est très similaire au système de news USENET.
Le service d'échange est composé de thèmes (ex: paysage, automobile, animaux, etc) pouvant être crées par n'importe quel utilisateur. L'application serveur centralise la liste des thèmes disponibles et pour chacun d'eux la liste des images disponibles. Un utilisateur se connecte au service par l'intermédiaire d'une appplication cliente permettant : de s'identifier, d'obtenir la liste des thèmes auxquels il est abonné, de s'abonner ou de se désabonner de certains thèmes, de sélectionner un thème auquel il est abonné pour faire apparaitre la liste des images disponibles (visualisation non graphique), d'obtenir la visualisation d'une image en particulier, d'envoyer une image à destination d'un thème vers le serveur, de sauver en local une image de son choix.
Une "image" sera représentée (dans la liste des images d'un thème) par : un nom (unique), une taille, un propriétaire (identité de l'expéditeur) et une date.
L'interface pourrait ressembler à ce qui suit :
Un menu de gestion de présélection des thèmes serait pratique, ainsi qu'une gestion de préférences (serveur par défaut, identification, etc.)
On se devra de réaliser un serveur et un client en langage Java. De plus un rapport devra être fourni, indiquant les choix effectués (protocole, représentation des données, etc.) Le sujet doît être considéré comme un "guide" (ne devant pas être pris au pied de la lettre); toutefois on se devra d'en respecter l'esprit.
De plus le travail devra être réalisé par groupe de trois personnes au plus.
La date limite de remise des projets n'est pas encore fixée, mais elle se situera dans le courant du mois de Juin, ainsi que la date des soutenances (des informations complémentaires vous seront communiquées ultérieurement).
L'auteur de cette page est : Jean-Baptiste Yunes