Papillon

Il vous est demandé de développer un logiciel qui reste en permanence au premier plan, comme un papillon collé sur le moniteur. Sa surface affichera une liste de rappels que l'utilisateur souhaite avoir sous les yeux. L'espace occupé devra être le plus petit possible, afin de ne pas gêner l'accès aux autres fenêtres.

Vous produirez un programme écrit en Java utilisant uniquement des classes originales et les classes vues en cours. Un rapport d'activité y sera joint. Le travail sera fait en binôme ou trinôme, et devra être terminé avant le dimanche 26 octobre 2025 à 23h59.

La partie logicielle sera développée dès le départ à l'aide du serveur Gitea du département. Le rapport prendra la forme d'un fichier au format PDF joint aux sources.

Rappels

Un rappel se décompose en différentes parties :

  • un titre
  • un contenu (optionnel)
  • un thème
  • un rang

Le titre est un texte de 50 caractères maximum (afin qu'il tienne sur une ligne courte).

Le contenu est texte de 200 caractères maximum (donc 4 lignes environ). Il peut être omis dans un affichage dense, mais il faut évidemment prévoir une façon de le consulter. On anticipe qu'une proportion importante de rappels ne possèdera pas de contenu.

Le thème est un élément visuel distinctif. Vous devez en proposer au moins 5. Les thèmes n'ont pas de nom, afin que les utilisateurs puissent librement choisir leur signification (comme le choix de la couleur d'un post-it).

Le rang permet de trier les rappels. Il peut représenter l'urgence, l'ordre chronologique ou quelque chose de plus spécialisé. Il est recommandé de concevoir les fonctionnalités de votre logiciel de manière à faciliter l'usage des deux premières interprétations.

Fonctionnalités

L'utilisateur doit avoir accès aux opérations basiques (CRUD).

Il devra pouvoir créer un nouveau rappel, consulter la liste des rappels, consulter un rappel en particulier, modifier tout ou partie d'un rappel existant, et enfin supprimer un rappel existant.

Une partie importante de la note portera sur l'ergonomie de vos interfaces.

Serveur

Les rappels devant être préservés d'une session à une autre, un serveur de base de données vous servira à retenir les informations correspondantes.

Les problèmes liés à l'accès à cette base ne devront pas être seulement envoyés vers la sortie sur erreur. Vous devrez communiquer graphiquement avec l'utilisateur.

Sources

Les sources de votre projet (et pas les fichiers .class) devront être disponibles à tout moment sur le serveur Gitea du département. Votre dépôt sera privé, nommé obligatoirement SAE31_2025 et incluera Luc Hernandez (login : hernand) dans la liste des collaborateurs. Le nombre de soumissions, leur date et l'équilibre entre leurs auteurs influeront sur la note finale.

Pour chaque classe, vous prévoierez un fichier source. Suivez les consignes habituelles scrupuleusement. La définition de chaque classe et de chaque membre de classe sera précédée d'un commentaire formaté pour permettre la génération de documentation technique par l'outil javadoc (ceci est un exemple de fichier source bien commenté).

Vous devrez respecter l'organisation du code vue au début de l'année. Toutes vos classes appartiendront à un package. Un fichier Makefile devra permettre la compilation de votre projet et la création d'une archive jar, et un but factice nommé run devra en permettre l'exécution. Transcrivez bien toutes les dépendances entre vos fichiers dans les règles.

Rapport

Le rapport d'avancement prendra la forme d'un fichier PDF disponible avec les sources sur le serveur Gitea. Vous y inclurez au moins les éléments suivants (mais la liste n'est pas exhaustive) :

  • le nom des membres du groupe,
  • une introduction contenant une brève description du sujet (avec vos propres mots),
  • la description des fonctionnalités de votre programme, aidée de captures d'écran,
  • une présentation de la structure du programme, avec diagramme(s) de classes simplifié à l'appui,
  • une présentation des tables de la base de données, avec diagramme de classes complet à l'appui,
  • une explication, pour chaque écran, des améliorations ergonomiques que vous avez mises en œuvre,
  • une conclusion personnelle pour chaque auteur.

Soignez la présentation ! L'orthographe, la grammaire, les pages de garde, la table des matières, les en-tête et pieds de page ne sont pas en option...

Notez bien que le rapport ne doit pas contenir d'extrait du code source du projet, étant donné que le correcteur peut aller le consulter directement s'il en éprouve le besoin. N'hésitez pas en revanche à illustrer vos propos par des schémas. Ceux-ci peuvent être construits directement dans le logiciel de traitement de texte s'il le permet, ou dans un logiciel dédié, tel que Inkscape ou Draw (tous deux gratuits). Les diagrammes de classe et d'objets seront réalisés à l'aide de StarUML.

retour à la page d'accueil

retour au sommet