Evolution du logiciel libre
GanttProject
Spécifications
fonctionnelles
Ref :
ADAE_Gantt_SFD
Version 1.1
Descriptif du document
Document : |
Evolution du logiciel libre GanttProject Spécifications fonctionnelles |
Référence du document : |
ADAE_Gantt_SFD |
Etat : |
A valider |
Auteurs : |
M. Jean-Marc LIBS, Directeur de projet M. Guillaume DREYER, Chef de projet M. Vincent GASS, Responsable de Département M. Benoît BARANNE, Consultant M. Nicolas BOHN, Consultant |
Diffusion : |
Comité de pilotage |
Diffusion du document
Nom |
Organisme |
Pour information |
Pour action |
Pour validation |
Comité de
Pilotage |
ADAE |
|
|
X |
Communauté
Open Source |
GANTTPROJECT |
X |
|
|
Jean-Marc LIBS |
ACTIMAGE |
|
X |
|
Guillaume DREYER |
ACTIMAGE |
|
X |
|
Vincent GASS |
ACTIMAGE |
|
X |
|
Benoît BARANNE |
ACTIMAGE |
|
X |
|
Nicolas BOHN |
ACTIMAGE |
|
X |
|
Christophe MEGEL |
ACTIMAGE |
X |
|
|
Equipe projet |
ACTIMAGE |
X |
|
|
Révision(s) du document
Date |
Révision |
Nature de la révision |
Auteur |
14/01/2005 |
0.1 |
Création du document |
Guillaume DREYER |
20/01/2005 – 09/02/2005 |
0.2 – 0.7 |
Première version |
Benoît BARANNE, |
21/02/2005 |
1.0 |
Après réunion de concertation à l’ADAE |
Benoit Baranne, |
7/3/2005 |
1.1 |
Après réunion de concertation à l’ADAE |
Jean-Marc Libs |
SOMMAIRE
2.1 Enjeux,
objectifs et contraintes
2.2 Infrastructures
et relations entre les différents intervenants
3.2 Livraisons
des évolutions fonctionelles
4 Validation des spécifications
4.2 Release
2 – fin Avril 2005
5.1 ERGO-1 :
Ajout d’une liste de tâches
5.2 ERGO-2 :
Copier / Coller entre plannings ou parties
5.3 ERGO-3 :
Iconographie du logiciel
5.4 ERGO-4 :
Interface et aide en français
6.1 FONCT-1 :
Touche « annuler »
6.2 FONCT-2 :
Améliorer l’impression
6.3 FONCT-3 :
Niveaux de visualisation
6.4 FONCT-4 :
Délai dans une dépendance de tâches
6.5 FONCT-5 :
Visualiser l’avancée du projet
6.6 FONCT-6 :
Système d’alerte lors des retards
6.7 FONCT-7 :
Gestion multi projets
6.8 FONCT-8 :
Jours fériés, vacances et week-ends
6.9 FONCT-9 :
Plusieurs rôles par acteur
6.10 FONCT-10 :
Responsable de chaque tâche.
6.11 FONCT-11 :
Visualisation des sur charges
6.12 FONCT-12 :
Visualisation des sous charge
6.13 FONCT-13 :
Liste des tâches par ressource
6.14 FONCT-14 :
Diagramme de PERT
6.15 FONCT-15 :
Vision par année
6.16 FONCT-16 :
Compatibilité MS Project
6.17 FONCT-17 :
Drag/drop des tâches
6.18 FONCT-18 :
Modifier plusieurs tâches
6.19 FONCT-19 :
Découper les tâches
6.20 FONCT-20 :
Meilleur contrôle de l’affichage des propriétés des tâches
6.21 FONCT-21 :
Colonnes de propriétés
6.22 FONCT-22 :
Chemin critique
7.1 BOGUE-1 :
Renversement de tâche inopiné
7.2 BOGUE-2 :
Import de ressources XML
8.1 NOUV-1 :
Changer le format de stockage XML des projets
8.2 NOUV-2 :
Gérer les versions de format
8.3 NOUV-3 :
Rafraîchissement de la vue
8.4 NOUV-4 :
Date minimum de début
9 Annexe : Historique GanttProject –
releases
Le présent document a pour objectif de spécifier fonctionnellement les évolutions logicielles envisagées à l’application GanttProject.
Il reprend les fonctionnalités du cahier des charges et explicite l’impact des développements à venir sur ces fonctionnalités.
Ce document est rédigé par l’équipe projet d’Actimage, pour être validé par la Maîtrise d’Ouvrage à l’ADAE, en collaboration avec la communauté GanttProject.
Les détails et retours d’expérience sur la collaboration avec la communauté GanttProject sont l’objet d’un document distinct, livré en fin de projet.
Titre du document |
Référence
du document |
Plan d’Assurance Qualité |
ADAE_Gantt_PAQ |
Cahier des Charges |
CC_Gantt-v3,
15/11/2004 |
Proposition d’ACTIMAGE |
O_ADAE_GANTT_041115 |
Les évolutions ont été découpées en 4 parties (reprenant le découpage de l’offre d’ACTIMAGE) :
q Evolutions ergonomiques ;
q Fonctionnalités ;
q Bogues ;
q Nouvelles fonctionnalités transverses.
Pour chaque fonctionnalité, nous allons définir :
q Une fiche globale (reprise de l’offre) pour le cadrage ;
q Les réponses apportées par les évolutions du logiciel entre l’offre (version 1.9.10) et le document actuel (version 1.10.3 releasée, 1.11 en cours) ;
q Le détail de l’évolution souhaitée / proposée ;
q Des premiers éléments de réponses techniques (lien vers les spécifications techniques).
L’ADAE a adopté depuis Mars 2004 le logiciel de planification et de structuration des projets / ressources GanttProject. Ce logiciel est disponible sur tous les postes utilisateurs et a vocation, dès complétion, déboguage et finalisation, d’être intégré sur le CD master libre de l’ADAE contenant tous les logiciels de configuration d’un poste de travail type.
Le logiciel GanttProject est sous licence GPL (« GNU Public License ») et réside en un outil simple et convivial permettant l’étalement des tâches attenantes à un projet sur un chronogramme. L’ADAE souhaite faire évoluer cet outil en confiant à ACTIMAGE les missions suivantes :
q La spécification technique de fonctionnalités additionnelles à développer ;
q Le déboguage et les spécifications attenantes ;
q Le développement et l’intégration de ces fonctionnalités complémentaires ;
q Les tests de l’outil complet sur une plate-forme dédiée puis en conditions réelles d’utilisation ;
q La fourniture du logiciel complet sur un CD « prêt à installer » (de type auto exécutable) ;
q Une documentation exhaustive de l’outil d’un point de vue utilisateur (guide d’utilisation, bonnes pratiques, etc.) et exploitation (installation, configuration, etc.) ;
q La recette auprès des utilisateurs cibles ;
q Une assistance informatique et la mise en place d’un historique sur les problèmes rencontrés ;
q Le transfert de compétences avec le BIT ;
q L’échange avec la communauté GanttProject selon les recommandations de l’ADAE ;
q Une force de propositions des évolutions ultérieures suggérées ;
q Un retour d’expérience avec la communauté d’un logiciel libre, en l’occurrence ici celle de l’outil GanttProject.
Suite à soumission d’une offre le 15/11/2004, ACTIMAGE a été retenue pour la réalisation de la maîtrise d’œuvre du projet.
Contractualisé le 08/12/2004, le projet a été officiellement lancé le 5 Janvier 2005 lors de cette réunion.
Un outil simple d’utilisation et efficace permettant de gérer une équipe projet en étalant les tâches correspondantes et les balises de validation sur un chronogramme est un besoin évident de toute entreprise ou institution. Ce besoin basique d’organisation et de structuration des projets repose bien souvent sur des solutions logicielles dont les leaders du marché, comme le révèle notre étude jointe à notre offre, sont très souvent propriétaires (Microsoft Project).
L’ADAE souhaite mettre à disposition de ses partenaires un CD-ROM appelé « master » contenant toutes les applications logicielles nécessaires à l’installation et la configuration d’un poste de travail type. On imagine clairement la solution de gestion de projets comme un incontournable de ce master.
Cette solution doit répondre aux contraintes suivantes :
q Etre porteuse d’un certain nombre de fonctionnalités basiques mais indispensables pour les prétentions d’utilisation visées (gestion de plannings dont certains sont complexes et à fort degré d’interdépendance des tâches les composant) ; ces fonctionnalités sont listées par le cahier des charges / l’offre d’ACTIMAGE avec un facteur pondérant leur importance ;
q Etre munie d’une interface conviviale, une « bonne interface » selon la définition du cahier des charges ; ce qui signifie une interface dont la prise en mains ne nécessite pas une formation spécifique ni ne relève d’un degré de technicité trop important : à nouveau le critère d’accessibilité aux utilisateurs est fondamental, en prenant en compte la cible visée (des utilisateurs a priori érudits de la gestion de projets mais qui ne souhaitent pas perdre du temps sur l’appréhension de l’outil de planification) ;
q Pour des raisons de liberté d’action et de pérennité du produit, la solution envisagée sera un logiciel libre, sous une licence de type GPL. On conçoit aussi aisément les économies d’échelle qu’offre le choix Open Source pour ce créneau logiciel, outre le scope d’évolutions important et le support d’acteurs expérimentés.
Les récentes évolutions de l’application illustrent l’importance d’un échange soutenu entre ACTIMAGE et la Communauté GanttProject, non contractualisé mais indispensable pour éviter tout doublon dans les développements. L’organisation mise en place permet de s’assurer que les développements souhaités par l’ADAE sont bien intégrés à l’application que la Communauté GanttProject maintient et fait évoluer sur les infrastructures des serveurs de la fondation SourceForge, afin de pérenniser le travail fourni. Pour faire travailler plusieurs développeurs sur le même code source en leur permettant de synchroniser les travaux indépendants, l’outil principal est un serveur de type CVS. C’est également l’outil qu’utilise Actimage pour ses projets internes.
En pratique, l’équipe projet d’Actimage profite conjointement des ressources internes d’Actimage (locaux, matériel, logiciels, serveur CVS interne, mailing-liste projet), des ressources que la communauté GanttProject met à disposition de tous (accès en lecture au CVS SourceForge, mailing-listes d’annonces, forums d’aide aux utilisateurs et outils de remontée de bogues), et des ressources que la communauté GanttProject met à disposition des membres de son équipe de développement (accès en écriture au CVS SourceForge, mailing-listes et forums développeurs).
Les relations entre l’équipe projet Actimage et l’ADAE se font par contacts directs, réunions ou bien par les outils de travail collaboratif Vit@Min2.
A cet effet, le développement de toute nouvelle fonctionnalité se fait en concertation avec la Communauté GanttProject, représentée par Monsieur Alexandre THOMAS, et selon un workflow décrit ci-dessous :
Les livrables sont de trois natures.
1) Il y a tout d’abord un certain nombre de livrables sous forme de documents formalisés, détaillés dans la section 3.1 et le PAQ :
· Spécifications Fonctionnelles
· Spécifications Techniques
· Guide et procédures d’installation
· Etude et retour d’expériences sur les méthodes de développement et la collaboration avec le communauté GanttProject
2) Il y a une liste contractuelle d’évolutions fonctionnelles à intégrer à l’application GanttProject. Celles-ci sont décomposées en trois livraisons détaillées dans la section 3.2.
3) Il y a un certain nombre de documents et d’actions non formalisées contractuellement, qui seront décrits dans le document « Etude et retour d’expériences sur les méthodes de développement et la collaboration avec le communauté GanttProject ». Une liste non exhaustive donnée à titre d’exemple :
· Pages d’aide en ligne en Français
· Guide du développeur à mettre sur le site SourceForge (en anglais)
· Actions de promotion du projet à définir au fur et ç mesure des opportunités, telles que des annonces sur linuxfr.org
Il s’agit du document présent. Ce document a pour objet de reprendre point par point tous les engagements d’Actimage tels qu’ils sont listés dans l’offre d’Actimage à l’ADAE et de détailler les actions que l’équipe projet d’Actimage va les mettre en œuvre. Ce document décompose également les développements prévus en trois livraisons.
Les Spécifications Fonctionnelles font l’objet d’une validation par la Maîtrise d’Ouvrage à l’ADAE. Cette validation donne le départ des développements.
Les Spécifications Techniques détaillent les solutions techniques qui permettent de réaliser les fonctionnalités détaillées dans les Spécifications Fonctionnelles. Ce document permet aux développeurs de se coordonner pendant le projet, de suivre l’évolution des développements et évolue au fur et à mesure du projet. Il permet à la fin du projet d’avoir un statut précis de la manière dont les fonctionnalités sont implémentées dans le code, et justifie les choix techniques qui ont été retenus et documente les choix envisagés mais abandonnés.
Il est prévu de documenter la manière d’installer l’application GanttProject sur des stations sous Windows, Linux et Macintosh.
Ce document est destiné à exposer les méthodes de travail qui permettent à un logiciel libre d’évoluer, et la manière dont il est possible de collaborer à son évolution. Les retours d’expérience de la collaboration avec le Communauté GanttProject constituent bien sur la trame principale du document. Ce document sera bien sur livré en fins de mission, pour être complet.
Suite aux différentes releases livrées par la Communauté GanttProject entre la date de production de l’offre d’ACTIMAGE et la contractualisation du marché, un certain nombre de fonctionnalités ont évoluées voire sont apparues, nécessitant une remise à jour du cahier des charges.
En particulier, sont listées ci-dessous les évolutions composant les 3 releases du développement ainsi que les dernières modifications à ces évolutions.
Identifiant |
Description |
Priorité |
Charge |
Ergo 1 |
Création plus rapide d’une liste de tâches |
1 |
1 |
Fonct 1 |
Touche « Annuler ». |
1 |
10 |
Fonct 2 |
Impression améliorée des plannings |
1 |
10 |
Fonct 3 |
Choix des niveaux de visualisation |
1 |
3 |
Fonct 4 |
Relations de dépendance entre les tâches améliorées |
1 |
3 |
Fonct 8 |
Prise en compte du calendrier (fériés, week-end, congés) |
1 |
6 |
Fonct 16 |
Compatibilité avec MS Project et d’autres logiciels |
1 |
10 |
Fonct 17 |
Déplacement d’une tâche |
1 |
2 |
Fonct 21 |
Colonnes d’informations supplémentaires |
2 |
5 |
Fonct 22 |
Chemin critique du projet. |
1 |
3 |
Bogue 1 |
Bug de déplacement de tâche avec dépendances |
1 |
2 |
Nouv 1 |
Changer le format de stockage XML des projets. |
* |
2 |
Nouv 2 |
Gérer les versions de format d'importation/exportation |
* |
3 |
Version 1 – Fin mars 2005 |
60 |
q Ergo 1 – Release 1.10 : Importation
de fichiers TXT pour une liste de tâches.
q Fonct 2 – Release 1.10 : Export en
image des plannings. Ajout d’attributs de propriétés pour les projets et les
tâches. Corrections d’exportation XSL / PDF.
q Fonct 16 – Release 1.10 : Export en
XFIG (et donc indirectement en Image) et en CSV. Customisation des champs à
exporter.
q Fonct 17 / Bogue 1 – Release 1.10 /
Release 1.10.1 : Sélection multiple de tâches pour déplacement / modification.
Ajout de boutons « UP / DOWN » sur l’interface.
Identifiant |
Description |
Priorité |
Charge |
Ergo
2 |
Copier/
coller entre plannings |
2 |
3 |
Ergo
3 |
Grossissement des icônes |
2 |
2 |
Fonct
9 |
Identification des rôles dans chaque tâche |
2 |
2 |
Fonct 10 |
Responsable de chaque tâche. |
2 |
1 |
Fonct 11 |
Surcharge d’une ressource |
2 |
2 |
Fonct 13 |
Détermination de la liste des tâches par ressource |
2 |
2 |
Fonct 15 |
Modifier le zoom de l’échelle de temps (année) |
2 |
1 |
Fonct 18 |
Application de propriétés à un groupe de tâches |
2 |
2 |
Fonct 19 |
Scission d’une tâche en gardant les propriétés |
2 |
2 |
Fonct 20 |
Affichage de propriétés sur le diagramme Gantt |
2 |
3 |
Bogue 2 |
Vérifier que l’import de ressources XML fonctionne |
2 |
1 |
Nouv 4 |
Date minimum de début d’une tâche |
* |
1 |
Version 2 – Mi avril 2005 |
22 |
q Ergo 3 – Release 1.10 : Changement
d’icônes. Possibilité de choisir l’interface (petits boutons, gros boutons ou
texte).
q Fonct 18 – Release 1.10 : Sélection
multiple de tâches pour déplacement / modification.
q Fonct 20 – Release 1.10 :
Informations supplémentaires dans le fichier XML.
Identifiant |
Description |
Priorité |
Charge |
Ergo 4 |
Interface et aide en français |
3 |
2 |
Fonct 5 |
Avancée du projet (différence prévu / réel) |
2 |
5 |
Fonct 6 |
Alertes pour les retards de planning |
3 |
2 |
Fonct 7 |
Gestion multi-projets |
2 |
3 |
Fonct 12 |
Identification et évaluation des sous-charges |
3 |
2 |
Fonct 14 |
Diagramme de Pert |
3 |
4 |
Nouv 3 |
Rafraîchissement de la vue. |
* |
3 |
Version 3 – Fin avril 2005 |
21 |
Les tableaux ci-après donnent un état de l’avancement des validations des spécifications, en fonction des releases prévues pour la prestation.
Ces tableaux, nécessaires pour les évolutions de ce document, sont aussi le référentiel pour le passage ou non d’une évolution en spécifications techniques et développement.
Ils permettent de planifier les développements évolutifs et correctifs en relation avec la Communauté Open Source pour ne pas aboutir à des chevauchements ou des méprises.
Identifiant |
Description |
Etat |
Version SFD |
Ergo 1 |
Création plus rapide d’une liste de tâches |
A préciser |
0.1 |
Fonct 1 |
Touche « Annuler ». |
A préciser |
0.1 |
Fonct 2 |
Impression améliorée des plannings |
A préciser |
0.1 |
Fonct 3 |
Choix des niveaux de visualisation |
A préciser |
0.1 |
Fonct 4 |
Relations de dépendance entre les tâches améliorées |
A préciser |
0.1 |
Fonct 8 |
Prise en compte du calendrier (fériés, week-end, congés) |
A préciser |
0.1 |
Fonct 16 |
Compatibilité avec MS Project et d’autres logiciels |
A préciser |
0.1 |
Fonct 17 |
Déplacement d’une tâche |
A préciser |
0.1 |
Fonct 21 |
Colonnes d’informations supplémentaires |
A préciser |
0.1 |
Fonct 22 |
Chemin critique du projet. |
A préciser |
0.1 |
Bogue 1 |
Bug de déplacement de tâche avec dépendances |
A préciser |
0.1 |
Nouv 1 |
Changer le format de stockage XML des projets. |
A préciser |
0.1 |
Nouv 2 |
Gérer les versions de format d'importation/exportation |
A préciser |
0.1 |
Identifiant |
Description |
Etat |
Version SFD |
Ergo
2 |
Copier/
coller entre plannings |
A préciser |
0.1 |
Ergo
3 |
Grossissement des icônes |
A préciser |
0.1 |
Fonct
9 |
Identification des rôles dans chaque tâche |
A préciser |
0.1 |
Fonct 10 |
Responsable de chaque tâche. |
A préciser |
0.1 |
Fonct 11 |
Surcharge d’une ressource |
A préciser |
0.1 |
Fonct 13 |
Détermination de la liste des tâches par ressource |
A préciser |
0.1 |
Fonct 15 |
Modifier le zoom de l’échelle de temps (année) |
A préciser |
0.1 |
Fonct 18 |
Application de propriétés à un groupe de tâches |
A préciser |
0.1 |
Fonct 19 |
Scission d’une tâche en gardant les propriétés |
A préciser |
0.1 |
Fonct 20 |
Affichage de propriétés sur le diagramme Gantt |
A préciser |
0.1 |
Bogue 2 |
Vérifier que l’import de ressources XML fonctionne |
A préciser |
0.1 |
Nouv 4 |
Date minimum de début d’une tâche |
A préciser |
0.1 |
Identifiant |
Description |
Etat |
Version SFD |
Ergo 4 |
Interface et aide en français |
A préciser |
0.1 |
Fonct 5 |
Avancée du projet (différence prévu / réel) |
A préciser |
0.1 |
Fonct 6 |
Alertes pour les retards de planning |
A préciser |
0.1 |
Fonct 7 |
Gestion multi-projets |
A préciser |
0.1 |
Fonct 12 |
Identification et évaluation des sous-charges |
A préciser |
0.1 |
Fonct 14 |
Diagramme de Pert |
A préciser |
0.1 |
Nouv 3 |
Rafraîchissement de la vue. |
A préciser |
0.1 |
Dans cette partie, nous traiterons principalement des points ergonomiques :
· Amélioration de l’interface ;
· Accessibilité / ergonomie du logiciel ;
· Documentation du produit.
Nom |
Ajout d’une liste de tâches |
||
Référence |
Ergo-1 |
||
Priorité |
1 |
Type |
Développement Interface |
Description |
|
||
Avoir la possibilité de créer plus rapidement et plus facilement la liste des tâches (ex : comme dans un tableur – je rentre le nom de la tâche puis « Entrée »). |
|||
|
|||
Proposition fonctionnelle |
|
||
Lorsqu’on crée une nouvelle tâche, celle-ci apparaît déjà sélectionnée. Il suffirait qu’à ce moment-là le nom de la tâche (déjà sélectionné) soit éditable. De plus, valider le nom de la tâche par le biais de la touche « Entrée » doit automatiquement créer une nouvelle tâche immédiatement en dessous, dans les mêmes conditions. |
Release |
Evolution |
1.10 |
Importation des tâches via un fichier texte. |
L’arborescence actuelle devra être remplacée par un tableau permettant également la gestion de hiérarchie. Toutes les cellules de ce tableau doivent être éditables, ainsi l’entrée de valeur sera beaucoup plus aisée. Les détails de ce tableau sont décrits dans la Fonct-21.
Afin de faciliter l’ajout de tâche, après la saisie du nom d’une tâche, si l’utilisateur appuie sur « Entrée » une nouvelle tâche se créée immédiatement avec le nom directement éditable. La validation d’une tâche sans nom la supprimera. La perte de focus de la tâche implique également sa validation. Si l’utilisateur souhaite entrer rapidement une série de tâches, il se contentera de taper à la file tous les noms de tâches, séparés par un appui sur touche « Entrée ». La fin de la saisie peut se caractérisée par deux appuis consécutifs sur la touche « Entrée » (équivalent à valider une tâche sans nom).
Nom |
Copier / Coller entre plannings ou parties |
||
Référence |
Ergo-2 |
||
Priorité |
2 |
Type |
Développement Interface |
Description |
|
||
Pouvoir effectuer des copier/ coller entre différents plannings de Gantt Project ou parties de planning de Gantt Project. |
|||
|
|||
Proposition fonctionnelle |
|
||
La dernière version de GanttProject (1.10) comprend déjà cette fonctionnalité. Cependant elle est limitée à la sélection simple. Il faut faire évoluer cette fonctionnalité vers la multi sélection. |
Release |
Evolution |
1.10 |
Possibilité de copier et coller des tâches à condition qu’elles soient sous une tâche englobante. Possibilité de copier/coller entre plannings. |
La sélection des tâches à copier/coller pourra se faire soit dans le tableau de gauche de la vue « Gantt » (l’arborescence actuelle sera remplacée par un tableau gérant également les hiérarchies) ou directement sur les tâches du graphique. La multi sélection pourra se faire classiquement avec les boutons Ctrl et Maj.
Le comportement lors du collage est le suivant :
q si on copie une tâche mère, ses filles sont prises en compte lors de l’opération ;
q le collage à lieu à partir de la tâche sélectionnée ou en fin de tableau si aucune tâche n’est sélectionnée ;
q lors du collage les ressources seront ignorées.
q les colonnes de propriétés qui auront été définies par l’utilisateur seront également perdues.
q les dépendances entre les tâches copiées seront gardées, par contre les dépendances vers des tâches non copiées seront perdues.
Pour copier des tâches et les coller dans un autre planning, il faut copier les tâches désirées, fermer le projet courant, ouvrir le projet dans lequel on veut coller les tâches et enfin les coller.
Nom |
Iconographie du logiciel |
||
Référence |
Ergo-3 |
||
Priorité |
2 |
Type |
Développement Interface |
Description |
|
||
Grossir les icônes de l’interface utilisateur et noter à quoi elles correspondent en dessous. Pouvoir modifier l’ordre des icônes dans la barre. |
|||
|
|||
Proposition fonctionnelle |
|
||
Cette fonctionnalité est disponible dans la version 1.10 mais il reste des bugs au niveau de la persistance des options sélectionnées et de la visibilité des icônes. Il est nécessaire de revoir à ce sujet la persistance de configuration globale (distincte de la configuration par projet). L’ordre des icônes dans la barre est pour l’instant figé, il faut permettre à l’utilisateur de définir l’ordre des icônes. |
Release |
Evolution |
1.10 |
Possibilité de choisir des icônes plus grandes et d’afficher ou non un texte informatif à propos du bouton. |
Les modifications possibles sur les icônes sont accessibles par le menu Edition -> Préférences -> Général -> Apparence. Il est possible de choisir d’utiliser les petites icônes (choix par défaut actuellement) ou non via une case à cocher. L’affichage de l’icône, du texte ou des deux est choisit via un menu déroulant.
Paramètres
d’affichage des icônes :
Exemple si on choisit d’afficher grandes icônes et
textes :
Par contre, il est possible que sur certain écran, même en agrandissant la fenêtre du logiciel au maximum, certaines icônes n’apparaissent pas. Il faudra modifier la barre d’outils pour qu’elle permette l’affichage des icônes non visibles. Un bouton sur la droite de la barre d’outils permettra d’afficher les icônes non affichées :
Ajout d’un bouton
permettant d’afficher les icônes cachées.
Il faudra également revoir l’enregistrement des paramètres d’affichage qui, actuellement, ne prend pas en compte les paramètres concernant les icônes.
Ajout d’un bouton pour
ajouter des séparations entre les boutons. Ajout de deux boutons pour
monter et descendre les éléments de la liste. Ajout d’une liste pour
choisir l’ordre des icônes dans la barre d’outils. Le haut de la liste
correspond à la gauche de la barre d’outils.
En
outre, il faut permettre à l’utilisateur de paramétrer l’ordre d’affichage des
icônes dans la barre d’outils. Cela pourra être fait dans les préférences de
l’application :
Un bouton permettra également l’ajout de séparations pour grouper visuellement les boutons. Les séparations pourront également être supprimées.
Nom |
Interface et aide en français |
||
Référence |
Ergo-4 |
||
Priorité |
3 |
Type |
Développement Interface |
Description |
|
||
Disposer de l’interface et du contenu de l’aide en français |
|||
|
|||
Proposition fonctionnelle |
|
||
L’interface est déjà en place. L’aide est également disponible en français. Par contre il reste un petit bogue à corriger concernant le chargement de l’aide après modification de la langue de l’application. L’aide devra également être étoffée. |
Release |
Evolution |
1.10.3 |
L’aide d’affiche mais est toujours en anglais. |
Pour l’instant seule l’interface est configurable en français. Dans la version 1.10.3 l’aide s’affiche en anglais quelle que soit la langue choisie pour l’application. Dans la version 1.11 pre2 du CVS si l’application est en français l’aide s’affichera en français.
Il faudra étoffer cette aide car pour l’instant elle est très sommaire. Une fois complète, l’aide en ligne servira de guide pour l’utilisateur.
Ici seront traités des évolutions fonctionnelles, c’est-à-dire :
q Ajout de nouvelles fonctionnalités / capacités du logiciel ;
q Evolution / accroissement des capacités de modules existants ;
q Changement de certains workflows fonctionnels (simplification, étapes supplémentaires / à supprimer, …).
Nom |
Touche « annuler » |
||
Référence |
Fonct-1 |
||
Priorité |
1 |
Type |
Fonctionnalité |
Description |
|
||
Touches Annuler/Rétablir permettant d’annuler un certain nombre d’actions faites par l’utilisateur et de les rétablir. |
|||
|
|||
Proposition fonctionnelle |
|
||
Mémorisation des « n » états passés à chaque modification de l'état. Possibilité de configurer « n » dans la fenêtre de paramètres généraux pour définir un compromis performances-confort d’utilisation. Il ne faudra pas que cette fonctionnalité ralentisse l’application. |
Release |
Evolution |
|
Aucune |
Ajout d’un composant
permettant de spécifier le nombre d’annulations possibles. Nombre d’annulations
possibles
Exemple
de spécification des niveaux d’annulation :
Le nombre d’annulation sera plafonné (la valeur n’est pas encore fixée, elle dépend de l’implémentation) pour des raisons de performances. En effet, nous privilégierons la rapidité et la réactivité plutôt qu’un nombre d’annulations important entraînant des temps d’attente longs.
Ajout de deux boutons
permettant d’annuler et rétablir les actions.
Il
faut rajouter deux boutons adéquats pour annuler et rétablir :
Ajout de deux boutons
permettant d’annuler et rétablir les actions.
Il
faut aussi insérer ces deux fonctions dans le menu « Edition » :
Nom |
Améliorer l’impression |
||
Référence |
Fonct-2 |
||
Priorité |
1 |
Type |
Fonctionnalité |
Description |
|
||
Améliorer l’impression des plannings (GANTT) et des rapports. Avoir la possibilité de choisir le format du planning sur une ou deux pages, (A4 ou A3), en fonction du choix de l’utilisateur. Pouvoir disposer les propriétés des tâches sur le Gantt comme on le souhaite pour améliorer la lecture du Gantt. |
|||
|
|||
Proposition fonctionnelle |
|
||
L’impression du graphique étant directement liée à l’affichage à l’écran de celui-ci, il faudra ajouter des fonctionnalités de visualisation au niveau de l’application. L’impression tiendra compte de la visualisation courante du diagramme. |
Release |
Evolution |
1.10 |
Image factor, mais non pris en compte lors de l’impression |
L’impression dépend directement de ce qui est affiché à l’écran lors de la visualisation du planning. Améliorer l’impression implique l’amélioration de la visualisation du planning. Il faut donc apporter des évolutions à l’application avant tout.
Au niveau de l’affichage d’une partie du diagramme, il faut ajouter une fonctionnalité permettant de cacher certaines tâches (ou projets) puis de les faire réapparaître. De cette façon, il sera possible de visualiser une partie du planning. L’impression ne concernera que les tâches et projets affichés.
Il faut ajouter un bouton dans le menu contextuel de l’arborescence de tâche permettant de réafficher toutes les tâches qui ont été cachées.
Au niveau du déplacement sur le chronogramme, il faut ajouter une fonctionnalité permettant de centrer l’affichage sur la tâche sélectionnée ou sur un ensemble de tâches sélectionnées. Ce déplacement ne joue pas sur le zoom ; c’est le zoom courant qui sera gardé lors du déplacement.
Le centrage de l’affichage lorsque aucune tâche n’est sélectionnée aura pour effet de centrer l’affichage sur tout le projet et d’ajuster le zoom de manière à ce que le projet soit affiché en totalité sur le chronogramme.
Au niveau du zoom, il faut qu’il se fasse sur la ou les tâche(s) sélectionnées.
Ajout de deux
boutons : - un pour cacher les
tâches non sélectionnées ; - un pour réafficher les
tâches cachées. Cette vue sera remplacée
par un tableau. Ajout d’un bouton pour le
centrage de la vue.
Une fois ces fonctionnalités d’affichage ajoutées, l’impression sera améliorée puisqu’elle reprend la même image qu’affichée dans l’application.
L’impression pourra se faire en format « paysage » ou « portrait » au choix de l’utilisateur.
Nom |
Niveaux de visualisation |
||
Référence |
Fonct-3 |
||
Priorité |
1 |
Type |
Fonctionnalité |
Description |
|
||
Pouvoir avoir différents niveaux de visualisation d’informations sur le schéma Gantt (exemple : juste la date de début et de fin, ou seulement la durée, … pouvoir sélectionner les ressources que l’on désire afficher). |
|||
|
|||
Proposition fonctionnelle |
|
||
Un nouveau menu permettant de sélectionner ces éléments à afficher (ou pas). Ajout d’un menu Affichage ou Visualisation contenant des boutons à cocher pour afficher ou non les informations. |
Release |
Evolution |
|
Aucune |
Ajout d’un menu pour
choisir les éléments à afficher ou non.
Ajouter un menu à la barre de menu :
Ce menu pourrait se nommer « Visualisation » ou « Affichage » par exemple. Il permettra d’afficher ou non les informations suivantes dans le diagramme :
q les dates de début et de fin de projet ;
q les dates de début et de fin de chaque tâche ;
q les noms des tâches ;
q les durées des tâches ;
q les avancements des tâches ;
q le responsable des tâches.
Cette fonctionnalité, couplée à la possibilité de cacher certaines tâches (Cf. Fonct-2), permettrait d’afficher les informations uniquement pour un groupe de tâches.
De plus, l’utilisateur pourra choisir l’emplacement des informations affichées par rapport à la tâche (via le bouton « Personnaliser »). Quatre emplacements seront disponibles: au dessus, en dessous, à gauche et à droite. Une interface fonctionnellement proche de celle qui est présentée ci-dessous est envisageable :
Cette fonctionnalité sera accessible via un bouton dans le nouveau menu « Affichage ».
Nom |
Délai dans une dépendance de tâches |
||
Référence |
Fonct-4 |
||
Priorité |
1 |
Type |
Fonctionnalité |
Description |
|
||
Améliorer les relations entre les tâches. Proposer une relation de prédécesseurs « n+x » jours entre deux tâches. C'est-à-dire commencer la deuxième tâche après que la première soit terminée depuis (Fin+nj -> début). |
|||
|
|||
Proposition fonctionnelle |
|
||
Transformation de la DTD (tag "depend"). Modification de l'algorithme de scheduling. Le délai sera une propriété de la tâche, il indiquera le temps d’attente entre la fin de la tâche qui le précède et son propre début. |
Release |
Evolution |
|
Aucune |
Au niveau des relations entre une tâche et d’autres, on pourra spécifier le
délai d’attente entre deux tâches liées.
Ajout d’une colonne pour
spécifier le délai entre la tâche courante et chacun de ses prédécesseurs.
Il faut modifier la DTD du fichier XML d’export de projet.
Nom |
Visualiser l’avancée du projet |
||
Référence |
Fonct-5 |
||
Priorité |
2 |
Type |
Fonctionnalité |
Description |
|
||
Avoir la possibilité de visualiser l’avancée du projet. C'est-à-dire pouvoir visualiser sur le graphique la différence entre le planning prévisionnel et le réel. |
|||
|
|||
Proposition fonctionnelle |
|
||
Pour le diagramme de suivi --> nécessite une sauvegarde du planning d'origine. Nécessite de revoir la visualisation du diagramme, en décalant en fonction de l'avancée réelle. |
|||
|
Release |
Evolution |
|
Aucune |
Pour
cette fonctionnalité, nous proposons une vue permettant de suivre l’avancée du
projet par rapport à un planning prévisionnel préalablement enregistré :
Sur cette vue les tâches prévisionnelles sont grisées, les tâches du planning réel sont en couleur : rouge pour le chemin critique, bleu pour les autres.
Contrairement à cette solution, nous n’afficherons pas systématiquement le chemin critique dans cette vue puisque une fonctionnalité annexe permet de le faire. Ainsi, les tâches prévisionnelles seront grisées tandis que les tâches réelles seront colorées.
De
plus, il faut ajouter un bouton permettant d’enregistrer le planning
prévisionnel et un autre bouton pour afficher les différences entre le planning
prévisionnel et le planning réel :
Lors de l’enregistrement du planning courant comme référence pour comparaison, une fenêtre apparaître pour que l’utilisateur puisse nommer l’enregistrement de comparaison. Ainsi, il va être possible d’enregistrer plusieurs états pour effectuer des comparaisons à des instants différents.
Lors de la comparaison, une fenêtre permettra à l’utilisateur d’effectuer la comparaison avec l’un des états précédemment sauvé.
Il faut modifier la DTD du fichier XML d’export de projet.
Nom |
Système d’alerte lors des retards |
||
Référence |
Fonct-6 |
||
Priorité |
3 |
Type |
Fonctionnalité |
Description |
|
||
Disposer d’un système d’alerte lors des retards de planning |
|||
|
|||
Proposition fonctionnelle |
|
||
Les retards de planning seront gérés en fonction de l’avancée du projet et par rapport à la date courante. |
Release |
Evolution |
|
Aucune |
Lorsque l’on suit le projet, on peut affecter un pourcentage de réalisation pour chaque tâche. Si lors de l’ouverture du projet, une tâche se terminant « aujourd’hui » n’a pas une avancée de 100%, c'est-à-dire qu’elle n’est pas terminée alors qu’elle le devrait, une alerte est émise.
Deux types d’alertes seront possibles :
q une alerte pour les tâches non critiques, c'est-à-dire que le retard sur ces tâches n’impactent pas directement sur le projet.
q une alerte pour les tâches critiques, c'est-à-dire que le retard va directement impacter le projet et le retarder.
Au niveau de l’affichage des tâches en retard, une icône particulière sera ajouter dans le tableau des tâches pour indiquer le retard et son niveau (non critique ou critique).
Nom |
Gestion multi projets |
||
Référence |
Fonct-7 |
||
Priorité |
2 |
Type |
Fonctionnalité |
Description |
|
||
Pouvoir gérer plusieurs projets en les visualisant sur la même page. |
|||
|
|||
Proposition fonctionnelle |
|
||
Mieux séparer les projets distincts lorsqu’on importe plusieurs projets dans la même vue. |
Release |
Evolution |
|
Aucune |
Actuellement, l’import d’autres projets ne permet que d’importer des tâches dans un projet en cours. Les liens entre les tâches ne sont pas importés, ni les ressources affectées aux tâches. Il conviendrait de gérer complètement l’affichage multi projet.
Il sera possible d’importer d’autres projets dans le projet courant. Un projet importé sera la racine de la hiérarchie de toutes ses tâches. Une icône particulière permettra d’identifier un projet par rapport à une tâche mère. Ainsi on pourra visualiser l’ensemble des projets, certains projets, des parties de projets grâce à la fonctionnalité permettant de cacher des tâches ou projets (Cf.Fonct-2). L’affichage du chemin critique se fera pour chaque projet chargé.
La gestion multi projet a beaucoup d’impact sur GanttProject. En effet, actuellement, il n’y a pas de notion de projet puisque GanttProject ne gère qu’un projet à la fois. La portée des modifications sera très certainement importante dans le code de GanttProject.
Nom |
Jours fériés, vacances et week-ends |
||
Référence |
Fonct-8 |
||
Priorité |
1 |
Type |
Fonctionnalité |
Description |
|
||
Pouvoir prendre en compte les jours fériés et les week-ends dans le calendrier. Pouvoir rajouter ou supprimer des jours fériés, des week-ends et des vacances au niveau des ressources afin d’avoir une évaluation de la charge de travail plus réaliste et plus fine. (Faire la différence entre les jours ouvrables et ceux du calendrier). |
|||
|
|||
Proposition fonctionnelle |
|
||
La gestion des week-ends est facile, moyennant une révision de l'algorithme de scheduling et de l'affichage. Gérer des vacances au niveau de chaque ressource demande une modification de l'interface de gestion des ressources et du schéma XML. Gérer des jours fériés est extrêmement délicat dans le cadre d'un projet multinational. Nous proposons dans un premier temps de considérer que tout le projet fait appel à des ressources provenant du même pays. Cela impose quand même de disposer à l'ouverture du projet d'une sélection de pays (nous proposons de démarrer avec deux choix, incluant la France). |
Release |
Evolution |
1.11 pre |
Gestion
des week-end simple. |
Les jours fériés :
A la création d’un projet, il faudra choisir un pays de référence pour les jours fériés. Une fois choisit, les jours fériés seront attribués à chaque ressource. Propres à chaque ressource, ceux-ci seront éditables, on pourra ainsi ajouter ou supprimer des jours fériés. Le choix proposé par défaut sera la France.
Une interface devra permettre l’édition des jours fériés pour un pays donné, en ajouter et en supprimer. L’accès à cette interface pourra se faire via une nouvelle entrée dans les préférences du projet. Un calendrier similaire à celui existant pour la définition des dates de début et de fin de tâche, dans les propriétés des tâches, pourra être utilisé pour définir les jours fériés à prendre en compte :
Ce calendrier devra subir quelques modifications pour permettre l’ajout, la suppression et la visualisation des jours fériés. Il pourrait y avoir un menu déroulant supplémentaire permettant de choisir le pays concerné par l’édition des jours fériés. Un bouton supplémentaire permettra de préciser que le jour sélectionné est un jour férié ou non.
Les jours de congés :
Ils pourraient être définis sur le diagramme représentant la charge de travail des ressources :
On pourrait à ce niveau pouvoir définir des jours de congés en cliquant sur les jours du calendrier de droite. Les jours de congés seront donc propres à chaque ressource.
Les week-ends :
Par défaut le samedi et le dimanche seront les jours de week-end, jours durant lesquels on ne peut pas travailler. Ces week-ends appartiennent au projet et seront appliqués toutes les semaines pendant toute la durée du projet. Ils concerneront toutes les ressources du projet.
Une interface permettra de choisir les jours composant le week-end, il suffira de sélectionner les jours de repos hebdomadaires que l’on veut avoir.
Les jours fériés, les jours de congés et les week-ends seront identifiables par une couleur différente.
Il faut modifier la DTD du fichier XML d’export de projet.
Les fichiers de définition des jours fériés pour les différents pays seront en XML.
Nom |
Plusieurs rôles par acteur |
||
Référence |
Fonct-9 |
||
Priorité |
2 |
Type |
Fonctionnalité |
Description |
|
||
Pouvoir identifier plus précisément le rôle des différents acteurs pour chaque tâche (ex : le chef de projet inscrit à ce poste lors de la description de la ressource peut-être également expert sur certaines tâches qui lui sont affectées). |
|||
|
|||
Proposition fonctionnelle |
|
||
Cela peut se faire en conservant un rôle par défaut à la ressource, mais il faut changer la DTD du schéma XML pour que le rôle soit un attribut de l’affectation de la ressource, et non plus de la ressource. |
Release |
Evolution |
|
Aucune |
Ajout d’une colonne
permettant d’affecter des rôles aux ressources pour cette tâche.
Lorsque
l’on affecte une ressource à une tâche il faut prévoir la possibilité de lui
ajouter un ou plusieurs rôles :
Les rôles proposés seront ceux disponibles dans le projet, à savoir les mêmes que lors de la création des ressources, ainsi que ceux qui ont été créés par la suite via l’interface « Préférences à Fonctions ».
Il faut modifier la DTD du fichier XML d’export de projet.
Nom |
Responsable de chaque tâche. |
||
Référence |
Fonct-10 |
||
Priorité |
2 |
Type |
Fonctionnalité |
Description |
|
||
Avoir la possibilité de rajouter le responsable de chaque tâche. |
|||
|
|||
Proposition fonctionnelle |
|
||
Cet attribut peut être ajouté aux tâches. |
Release |
Evolution |
|
Aucune |
Ajout d’une colonne
permettant de marquer le ou les responsables pour cette tâche.
Il
faut prévoir la possibilité de spécifier un ou des responsables pour les
tâches :
Par défaut, la première ressource affectée à la tâche en sera le responsable. Il sera possible d’éditer par la suite les « responsabilité » des ressources en cochant ou décochant les cases dans la nouvelle colonne.
Ainsi il sera possible de n’avoir aucun responsable pour une tâche donnée, ou d’en avoir un ou plusieurs.
Une colonne supplémentaire dans le tableau des ressources permettra également de spécifier la responsabilité des ressources.
Il faut modifier la DTD du fichier XML d’export de projet.
Nom |
Visualisation des sur charges |
||
Référence |
Fonct-11 |
||
Priorité |
2 |
Type |
Fonctionnalité - gestion des ressources |
Description |
|
||
Identification plus précise et évaluation (pourcentage) de surcharge pour chaque ressource. |
|||
|
|||
Proposition fonctionnelle |
|
||
Dans la vue « Ressources » les surcharges sont déjà représentées par une couleur rouge. Il reste à faire apparaître le pourcentage de surcharge. |
Release |
Evolution |
1.10 |
Affichage de surcharge dans la vue « Ressource ». Une surcharge est identifiable par une couleur rouge sur le diagramme des tâches des ressources. |
Dans la vue « Ressources » il y a actuellement un code couleur pour indiquer qu’une ressource est surchargée. Par contre, on n’a pas d’indication quantitative relative à cette surcharge.
Ajout des pourcentages de
surcharge. 150 % 200 %
Il faudrait ajouter le pourcentage de charge de la ressource dans le cas d’une surcharge. Par contre, étant donné que le calcul de surcharge est journalier, l’affichage des pourcentages ne se fera que lors que le zoom aura la granularité du jour. Dans les autres zooms on se contentera du code couleur.
Ici, les surcharges sont en rouge.
Nom |
Visualisation des sous charges |
||
Référence |
Fonct-12 |
||
Priorité |
3 |
Type |
Fonctionnalité - gestion des ressources |
Description |
|
||
Identification et évaluation (pourcentage) des périodes de sous charge. |
|||
|
|||
Proposition fonctionnelle |
|
||
De la même manière que pour les surcharges les sous charges seront représentées par une couleur spécifique. La charge de la ressource sera également indiquée. |
Release |
Evolution |
|
Aucune |
60 % 150 % 200 %
De la même manière que pour les surcharges, les sous charges
seront représentées dans la vue « Ressources ». Un code couleur
différent sera choisi pour les sous charges :
De la même manière que pour les
surcharges, le pourcentage des sous charges ne seront affichées que lorsque la
granularité du zoom atteindra le jour. Dans les autres cas, le code couleur
sera la seule indication.
Nom |
Liste des tâches par ressource |
||
Référence |
Fonct-13 |
||
Priorité |
2 |
Type |
Fonctionnalité - gestion des ressources |
Description |
|
||
Détermination de la liste des tâches par ressource. |
|||
|
|||
Proposition fonctionnelle |
|
||
Cela correspondrait à une nouvelle vue au même niveau que « Gantt » et « Ressources » dans laquelle on choisit une ressource, et il apparaîtrait un tableau listant les tâches de la ressource. |
Release |
Evolution |
|
Aucune |
Dans la vue « Ressources » le tableau gérera également la hiérarchie. Au niveau de l’arborescence, les fils des ressources seront les tâches auxquelles elles sont affectées. Les informations affichées pour les tâches dans cette vue seront le nom de la tâche et le rôle de la ressource pour cette tâche.
Voici un aperçu de la vue dans un autre outil :
Il faut y ajouter des colonnes de propriétés.
Nom |
Diagramme de PERT |
||
Référence |
Fonct-14 |
||
Priorité |
3 |
Type |
Fonctionnalité |
Description |
|
||
Avoir la possibilité de faire apparaître un diagramme de PERT. |
|||
|
|||
Proposition fonctionnelle |
|
||
Les informations sont disponibles. Il faudrait une nouvelle vue dans un nouvel onglet au même niveau que « Gantt » et « Ressources ». |
Release |
Evolution |
|
Aucune |
Un nouvel onglet au même niveau que « Gantt » et « Ressources » permettra de visualiser le diagramme de PERT correspondant au diagramme de Gantt courant.
On pourra s’inspirer de ce que fait Microsoft Project pour l’affichage du réseau PERT :
Les informations dans les cases sont :
· Nom · Début · Fin |
· N° · Durée · Ressources |
Le réseau PERT ne sera pas éditable, il ne permettra que la
visualisation de l’organigramme des tâches. Ce réseau pourra bien entendu être
imprimé.
Nom |
Vision par année |
||
Référence |
Fonct-15 |
||
Priorité |
2 |
Type |
Fonctionnalité |
Description |
|
||
Modifier le zoom de l’échelle de temps pour pouvoir avoir une vision par année. |
|||
|
|||
Proposition fonctionnelle |
|
||
Cette fonctionnalité existe déjà, via les icônes de zoom et la molette de la souris. |
Release |
Evolution |
1.9.11 |
La vision par année est possible. |
Cette fonctionnalité existe déjà, voici comment l’utiliser.
Le zoom permet actuellement d’avoir une vue allant de la semaine à une vue sur trois ans, en passant par des vues intermédiaires : un et deux semaines ; un, deux, trois, quatre, et six mois ; un, deux et trois ans.
Le
zoom peut être utilisé via la molette de la souris ou les boutons de
zoom :
La loupe permet d’avoir un chronogramme plus large
dans le temps (passage d’une année à deux années par exemple). En faisant
rouler la molette de la souris vers le bas on obtient le même résultat.
La loupe permet d’avoir un chronogramme moins large
dans le temps (passage d’une année à six mois par exemple). En faisant rouler
la molette de la souris vers le haut on obtient le même résultat.
NB : Dans la version actuelle du CVS (le 20 février
2005), le zoom ne permet plus une vision par année. Cela n’est que
temporaire : un des principaux contributeurs est en train de modifier la
gestion de l’affichage des graphiques.
Nom |
Compatibilité MS Project |
||
Référence |
Fonct-16 |
||
Priorité |
1 |
Type |
Fonctionnalité |
Description |
|
||
Compatibilité avec MS Project et d’autres logiciels: permettre l’import / export de fichiers MS Project (ou de morceaux de fichiers), pouvoir récupérer une liste de tâches d’un tableur ou d’un fichier texte. |
|||
|
|||
Proposition fonctionnelle |
|
||
Nous sommes ouverts à l'écriture de filtres d'importation/exportation vers tout format XML dont la DTD est disponible. Précision: avant MS Project 2002, MS Project n'utilise pas de format XML mais un format propriétaire non documenté. L’utilisation de la librairie MPXJ dont l’intégration dans GanttProject a commencée permettra l’importation et l’exportation de fichiers MS Project. |
Release |
Evolution |
1.10 |
Importation d’une liste de tâches d’un fichier texte. Aucune évolution pour l’importation et l’exportation de fichier MS Project. Il existe actuellement des outils permettant différentes importations et exportations de et vers d’autres logiciels (Planner et Freemind). Ces outils sont disponibles en téléchargement à l’adresse : |
L’importation et l’exportation de fichiers se feront par le
menu « Fichier », à l’aide des boutons « Importer » et
« Exporter » :
En ce qui concerne l’import/export de fichier MS Project, il faut s’intéresser à la librairie MPXJ (http://mpxj.sourceforge.net/) permettant la manipulation de fichier MS Project, entre autres, en Java.
Actuellement, l’importation de fichiers MS Project est implémentée et en cours de test. Il faudra compléter l’importation pour qu’elle prenne compte des évolutions que nous apporterons à GanttProject.
Nom |
Drag/drop des tâches |
||
Référence |
Fonct-17 |
||
Priorité |
1 |
Type |
Fonctionnalité |
Description |
|
||
Disposer d’une fonction « déplacement d’une tâche », permettant le déplacement d’une ou plusieurs tâches dans le temps tout en gardant toutes les propriétés de celle-ci. |
|||
|
|||
Proposition fonctionnelle |
|
||
Actuellement on peut presque le faire mais un déplacement à la souris serait mieux. |
Release |
Evolution |
1.9.11 |
Cette fonctionnalité existe, mais il convient de corriger quelques comportements. |
Actuellement il est possible de déplacer une tâche dans le temps en utilisant le bouton du milieu de la souris. Il persiste toutefois quelques bugs si on déplace la tâche dans le passé lorsque le début de la tâche déplacée précède la fin d’un de ses prédécesseurs. Elle reprend sa position initiale même si sa date de début est fixée.
De plus, il n’est pas encore possible de déplacer plusieurs tâches à la fois. Il faut tenir compte de la multi sélection de tâches lors des déplacements à la souris.
Nom |
Modifier plusieurs tâches |
||
Référence |
Fonct-18 |
||
Priorité |
2 |
Type |
Fonctionnalité |
Description |
|
||
Sélectionner plusieurs tâches et leur attribuer la même propriété. |
|||
|
|||
Proposition fonctionnelle |
|
||
Sélectionner plusieurs tâches, et pouvoir quand même rentrer dans le menu « propriétés » (actuellement indisponible quand plusieurs tâches sont sélectionnées). Dans ce menu « propriétés », le nom et l’onglet « prédécesseurs » seront grisés, car non éditables. A la validation de ce menu, toutes les valeurs éditées sont modifiées dans chacune des tâches de la sélection. Les valeurs non éditées restent inchangées. |
Release |
Evolution |
|
Aucune |
Sélection
de plusieurs tâches puis clic droit sur la sélection illustrée ici:
On pourra éditer toutes les propriétés sauf celles qui concernent les prédécesseurs et le nom. La tâche de référence lors de l’ouverture de la fenêtre de propriétés sera celle sur laquelle l’utilisateur aura cliqué du bouton droit pour ouvrir le menu contextuel, ou la plus élevée de la sélection si l’utilisateur utilise le bouton de propriétés ou le menu.
Nom |
Amélioration du copier-coller (découper les tâches) |
||
Référence |
Fonct-19 |
||
Priorité |
2 |
Type |
Fonctionnalité |
Description |
|
||
Pouvoir dupliquer simplement une tâche existante en plusieurs tout en gardant les paramètres de la première. |
|||
|
|||
Proposition fonctionnelle |
|
||
Pouvoir dupliquer simplement une tâche existante en plusieurs tout en gardant les paramètres de la première. Les nouvelles tâches sont créées par une séquence Ctrl-C + Ctrl-V ou des clics droits correspondants dans les menus contextuels. Par défaut, les nouvelles tâches apparaîtront directement sous la tâche d’origine avec des noms qui en dérivent. |
Release |
Evolution |
|
Aucune |
Nom |
Meilleur contrôle de l’affichage des propriétés des tâches |
||
Référence |
Fonct-20 |
||
Priorité |
2 |
Type |
Fonctionnalité |
Description |
|
||
Disposer d’un diagramme de Gantt avec possibilité d’afficher certaines propriétés sur les tâches (début, fin, nombre de jours, …). |
|||
|
|||
Proposition fonctionnelle |
|
||
Pris en compte dans la résolution de Fonct-3. |
Release |
Evolution |
|
Aucune |
Cf. Fonct-3.
Nom |
Colonnes de propriétés |
||
Référence |
Fonct-21 |
||
Priorité |
2 |
Type |
Fonctionnalité |
Description |
|
||
Disposer de colonnes supplémentaires qui permettront de rentrer des propriétés (intitulés de colonnes) définies par la personne qui réalise le Gantt puis de choisir le type de données à rentrer. |
|||
|
|||
Proposition fonctionnelle |
|
||
Cette fonctionnalité implique un changement de la vue « Gantt » dans laquelle il faudra remplacer l’arborescence actuelle par un tableau complexe gérant la hiérarchie. Par le biais de ce tableau il sera possible d’ajouter des colonnes de propriétés personnalisées. La définition de nouvelles propriétés et de leur type pourra également être accessible dans un nouvel onglet dans la fenêtre de propriétés d’une tâche. Les types seraient les types existants : chaîne de caractères, nombre entier, nombre à virgule, pourcentage, booléen (oui/non), date. |
Release |
Evolution |
|
Aucune |
Il faut remplacer l’arborescence dans la partie gauche de la vue « Gantt » actuelle par un tableau plus complexe gérant également la hiérarchie. Ce tableau on aura les tâches sur les lignes et les propriétés (déjà existantes et celles définies par l’utilisateur) en colonnes.
Les actions possibles sur ce tableau seront :
q l’interversion de colonnes
Ø par un simple drag & drop sur les titres des colonnes, celles-ci seront déplacées.
q le dimensionnement de colonnes
Ø le curseur de la souris changera entre deux colonnes du tableau pour pouvoir redimensionner les colonnes
q le dimensionnement des lignes
Ø idem que pour les colonnes
Ø un bouton supplémentaire de le menu contextuel du tableau permettra de remettre la hauteurs des lignes à une unité (hauteur par défaut s’il n’y a qu’une ligne de texte)
q la suppression d’une colonne que l’on ne veut pas voir affichée
Ø par un menu contextuel s’ouvrant sur un clic droit sur une colonne précise
q réafficher les colonnes qui ont été cachées
Ø par un menu contextuel ayant un bouton « Afficher toutes les colonnes ».
q l’ajout d’une colonne à un endroit précis du tableau
Ø lors d’un clic droit alors que la souris est entre deux colonnes, un bouton permettra de choisir l’ajout d’une nouvelle colonne. Une interface spécifique permettra alors de choisir le nom et le type de cette nouvelle colonne.
Les colonnes par défaut du tableau seront les suivantes :
q un numéro de ligne ;
q une icône pour définir le type de la tâche (projet, tâche mère, tâche simple) ;
q une icône de priorité ;
q une icône spéciale pour les éventuels retards ;
q le nom de la tâche;
q la date de début ;
q la date de fin ;
q la durée ;
q l’avancement ;
q le responsable ;
La fonctionnalité d’ajout de colonnes personnalisées sera également accessible dans la fenêtre de propriétés d’une tâche. Elle fera l’objet d’un nouvel onglet dans cette fenêtre.
Attention, bien que cette fonctionnalité soit accessible dans les propriétés d’une tâche donnée, la création de nouvelles propriétés affectera l’ensemble des tâches y compris celles qui seront créées ultérieurement.
Nom |
Chemin critique |
||
Référence |
Fonct-22 |
||
Priorité |
1 |
Type |
Fonctionnalité |
Description |
|
||
Pouvoir visualiser en un clic le chemin critique du projet. |
|||
|
|||
Proposition fonctionnelle |
|
||
Le plus pertinent semble être de rajouter un bouton aboutissant à changer la couleur des tâches sur le chemin critique. Ce bouton permettrait d’afficher ou non le chemin critique du projet. |
Release |
Evolution |
|
Aucune |
Ajout d’un bouton pour
l’affichage ou non du chemin critique.
Le
chemin critique pourra être affiché ou non grâce à un nouveau bouton. Il faudra
choisir une icône parlante pour ce bouton :
Actuellement il est possible de choisir la couleur que l’on veut pour les tâches, c’est pourquoi les tâches critiques ne seront pas affichées en rouge comme le suggère le screenshot. De plus, les hachures et autres rayures sont également déjà disponibles pour n’importe quelle tâche. Nous ne pouvons pas non plus les utiliser pour identifier le chemin critique.
Alexandre Thomas a demandé sur le forum de GanttProject si les hachures sont utilisées par les utilisateurs. En fonction des réponses et des idées de la communauté, nous aviserons pour choisir le moyen de représenter le chemin critique.
Nous référencerons ici les corrections / résolutions de bogues considérés comme bloquant / majeur par l’ADAE dans l’utilisation day-to-day du logiciel.
Nom |
Renversement de tâche inopiné |
||
Référence |
Bogue-1 |
||
Priorité |
1 |
Type |
Bogue |
Description |
|
||
Lorsqu’on déplace le début d’une tâche, si elle est de dépendance du type « fin-fin » à une autre tâche, alors la tâche en cours de modification peut se « renverser ». |
|||
|
|||
Proposition fonctionnelle |
|
||
Ce bogue ne semble plus être d’actualité, par contre les dépendances « fin-fin » ne sont pas correctement enregistrées. Les dépendances « fin-fin » sont enregistrées comme étant des « début-fin » et à l’ouverture du projet, les tâches sont faussées. |
Release |
Evolution |
? |
Ce bug ne semble plus exister, mais un autre y ressemble. |
Il convient de corriger ce bogue connu.
Nom |
Import de ressources XML |
||
Référence |
Bogue-2 |
||
Priorité |
2 |
Type |
Bogue |
Description |
|
||
Vérifier que l’import de ressources XML fonctionne. |
|||
|
|||
Proposition fonctionnelle |
|
||
Ce qui est possible pour l’instant est d’importer les ressources d’un projet déjà enregistré. Par contre l’importation de ressources a pour conséquence de supprimer toutes les ressources déjà entrées. |
Release |
Evolution |
|
Aucune |
Il faudra que l’importation n’écrase pas les ressources déjà présentes dans le projet et s’ajoute à la liste des ressources existantes.
Les évolutions ci-après sont les fonctionnalités complémentaires qu’ACTIMAGE intègre à l’évolution du logiciel. Ces évolutions permettent de répondre plus facilement aux attentes précédentes de l’ADAE, et nous paraissent donc essentielles pour la prestation.
Nom |
Changer le format de stockage XML des projets |
||
Référence |
Nouv-1 |
||
Priorité |
1 |
Type |
Nouvelle Fonctionnalité |
Description |
|
||
Changer le format de stockage XML des projets. |
|||
|
|||
Proposition fonctionnelle |
|
||
Changer le format de stockage XML des projets pour permettre les modifications associées aux tâches : Fonct-4 Fonct-5 Fonct-8 Fonct-9 Fonct-10 Fonct-17 Fonct-19 Fonct-21 Nouv-4 |
Release |
Evolution |
|
Aucune |
Les modifications à apporter au format de stockage XML doivent répondre aux besoins des tâches citées ci-dessus.
Nom |
Gérer les versions de format |
||
Référence |
Nouv-2 |
||
Priorité |
1 |
Type |
Nouvelle Fonctionnalité |
Description |
|
||
Gérer les versions de format d'importation/exportation |
|||
|
|||
Proposition fonctionnelle |
|
||
GanttProject doit reconnaître les versions des formats d’import/export et les convertir, afin de garder la compatibilité ascendante après la réalisation de la tâche « Nouv-1 » |
Release |
Evolution |
|
Aucune |
A chaque modification du format de stockage en XML relative au la tâche « Nouv-1 », il faudra tester la compatibilité entre les différentes versions de stockage.
Nom |
Rafraîchissement de la vue. |
||
Référence |
Nouv-3 |
||
Priorité |
3 |
Type |
Nouvelle Fonctionnalité |
Description |
|
||
Rafraîchissement de la vue. |
|||
|
|||
Proposition fonctionnelle |
|
||
Un bouton « rafraîchir la vue » ou un appui sur F5 devrait recalculer tous les paramètres des affichages en cours. |
Release |
Evolution |
|
Aucune |
Ajout d’un bouton pour le
rafraîchissement de la vue.
Ajouter
un bouton « Rafraîchir la vue » dont le raccourci clavier serait
F5 :
Nom |
Imposer une date minimum de début pour une tâche |
||
Référence |
Nouv-4 |
||
Priorité |
2 |
Type |
Nouvelle Fonctionnalité |
Description |
|
||
Pouvoir imposer une date minimum de début pour une tâche, même si les tâches dont elle dépend sont finies en avance. |
|||
|
|||
Proposition fonctionnelle |
|
||
Semble prévu, mais ne fonctionne pas car la tâche « oublie » sa date de départ dès qu’on rajoute une contrainte de début de tâche (celle-ci prend la priorité) |
Release |
Evolution |
1.9.11 |
Il est possible de spécifier que la date de début est fixe. Par contre il subsiste un bug. |
Il faut stocker une date supplémentaire : la date minimum de début.
Ajout d’une date minimum
de début.
Ajouter une date minimum de début dans la fenêtre de
propriétés d’une tâche :
Il faut modifier la DTD du fichier XML d’export de projet.
Date |
Release |
Commentaires |
Avril 2004 |
1.9.11 |
Release de base de réflexion. |
Septembre 2004 |
1.10 |
Import d’une liste de tâches d’un fichier texte. Possibilité de choisir de plus grandes icônes et d’afficher ou non le teste correspondant. |
Novembre 2004 |
1.10.2 |
- |
Décembre 2004 |
1.10.3 |
- |
Janvier 2005 |
1.11-pre |
Gestion simple des week-ends. |