L'application avant : L'application Jtimer v1 permet à l'utilisateur de compter le temps passer sur un projet donner. Fonctionnalité : - Création/ Ajout/ Suppression de tâche/ sous-tâche. - Activation/ Désactivation de tâche qui lance le compteur. - Augmenter/Diminuer le temps passé sur une tâche. - Faire apparaître/ Masquer des tâches. - Commenter une tâche. - Poser/ Enlever des alertes sur une tâche du type : -temps total à ne pas dépasser par tâche. -temps total à ne pas dépasser par jour sur une tâche. - Détection de l'inactivité, arrêt si trop inactif. Ce que l'on veut pour la V2 : Fonctionnalité à reprendre de la V1 : - Création/ Ajout/ Suppression de tâche/ sous-tâche. - Activation/ Désactivation de tâche qui lance le compteur. - Augmenter/Diminuer le temps passé sur une tâche. - Faire apparaître/ Masquer des tâches. - Commenter une tâche. - Poser/ Enlever des alertes sur une tâche du type : -temps total à ne pas dépasser par tâche. -temps total à ne pas dépasser par jour sur une tâche. - Détection de l'inactivité (techno envisagée go). Fonctionnalité de la V2 : - Solution avec un serveur local pour synchroniser les données et permettre un interface avec des applis tiers. - Lancement sur un serveur local : jetty pour l'instant - UI gérée par Angularjs, rafraîchissement en temps réel. - Interaction ui-server - Enregistrer en local les données dans une base de données h2 : 2 tables pour l'instant task et tasktime. ? Utilité de la mise en cache des tâches actuelles dans le navigateur ? Peut être pour le test. - Récupération des données pour synchronisation de l'interface au démarrage : requête REST - Centralisation des données pour avoir une vision globale des temps passés, par la suite gestion avec Chorem. - Technos envisagées : Java/AngularJS/Go/Maven/H2/Jetty Ce que veulent les utilisateurs : - Possibilité d'avoir des tâches personnelles qui ne se synchronisent pas avec le reste. - Pouvoir dé-commenter des tâches. - Archivage (pas d'apparition) des tâches terminées. - Système de taches urgentes. Idée d'ajout : - Ajouter un label/service à la tâche pour pouvoir faire des statistiques sur un label/service - Lancement de l'alerte avant fin de temps → avoir une barre de chargement statique ou dynamique (ui.bootstrap.progressbar) http://angular-ui.github.io/bootstrap/ Ou encore Stacked pour le projet général permettrait de faire un truc sympa au niveau du temps total ( diagramme de Gant style). A faire : - Gestion de la base de données - Mise en place de communication REST entre l'UI et le serveur local - Définir le process de synchronisation - Étudier comment permettre l'ajout de nouvelles sources de synchronisation (ex: chorem, redmine, un autre serveur local).