Projet Interface Graphique IR3

Archiveur


Objectif

L'objectif de ce projet est de développer une application en Java, utilisant Swing, permettant de consulter et manipuler des fichiers d'archives au format ZIP. Un exemple du type d'application souhaité est le logiciel WinZip sous Windows.

Ce qu'il faut rendre et quand

Il vous est demandé de concevoir, de réaliser, de tester et de commenter le code d'une telle application. À l'issu de votre travail, vous devrez rendre une archive (tar compressé ou zip) contenant:

  1. un rapport succinct (pas plus de 10 ou 15 pages) décrivant vos choix de conception et d'implémentation, les difficultés rencontrées, les limitations et les propositions d'amélioration de votre application. Ce dossier devra impérativement être fourni dans un format standard (ps, pdf ou html par exemple);
  2. un fichier Jar exécutable de votre application, de sorte qu'il soit utilisable directement par java -jar jarfile [args...];
  3. les programmes sources de votre application (tous les fichiers doivent être fournis de sorte qu'une compilation soit possible);
  4. les fichiers de documentation des API de votre application, en html, générés par l'outil javadoc.

Tous ces éléments devront être envoyés par mail à Etienne.Duris[at]univ-mlv.fr et à Rémi.Forax[at]univ-mlv.fr au plus tard le 1er Mars 2002. Les projets reçus ultérieurement seront soit ignorés (considérés comme non rendus), soit amputés de points de pénalité de retard.

Au cas où la correction nécessiterait des explications ou des commentaires supplémentaires, vous prendrez soin de donner dans votre rapport vos coordonnées (adresse mail) où vous êtes joignable pendant votre séquence professionnelle.

Quelques indications

On attend de cette application qu'elle permette, au minimum:

Plus précisément, on tirera profit des classes du paquetage java.util.zip des API standard de Java et on utilisera les tables (javax.swing.JTable) et/ou les arborescences (javax.swing.JTree) de Swing.

Puisqu'il s'agit d'un projet d'interface graphique, on apportera le plus grand soin au découpage modèle/vue/contrôleur de l'application, et on distinguera soigneusement la partie applicative (gestion des archives et de leurs entrées, c'est à dire le modèle) de la partie graphique (icônes, formats, etc., c'est à dire de les renderers).

Un point important est que votre application doit fonctionner indifférement sur les systèmes Windows ou Linux.

Les fonctionnalités citées dans ce sujet sont les minimales attendues. Il est important que vous ajoutiez une ou plusieurs fonctionalités, propres à votre application, lui donnant une valeur ajoutée.


Etienne.Duris[at]univ-mlv.fr - Rémi.Forax[at]univ-mlv.fr - © Université de Marne-La-Vallée - Février 2002