1. Afin de recevoir une note pour le cours, l'étudiant doit proposer un cahier des charges pour au moins deux ou trois améliorations de son choix pour le serveur de chat développé en chapitre 4.9 du cours.

Ces améliorations doivent être spécifiques à cette implémentation du serveur et non consister à copier un serveur de chat Java existant. La description des améliorations doit m’être soumise par courriel et approuvée avant le début des travaux.

Exemples d’améliorations (d’autres peuvent être suggérées) :

•    Login authentifié des utilisateurs (avec nom et mot de passe) .
•    Affichage de la liste de tous les utilisateurs authentifiés (en ligne ou hors ligne).
•    Possibilité d’enregistrer la conversation en cours dans un fichier.
•    Possibilité d’envoyer un message à un seul utilisateur ou à certains d’entre eux.
•    Possibilité d’envoyer un message à un utilisateur hors ligne.
•    Possibilité de voir quand un utilisateur hors ligne a lu un message.
•    Implémentation du serveur avec un pool de threads.
•    Possibilité de joindre un fichier au message.
•    Possibilité d'afficher quand l'utilisateur a été vu pour la dernière fois.

La note finale est basée sur la réalisation et la présentation des améliorations approuvées. La présentation du projet peut inclure des autres modifications qui devront être mises en œuvre sur place.


2. Pour le projet semestriel:

Développer la documentation (uniquement sous forme électronique) pour le projet décrit ci-dessus qui contient: