Rapport d'étude Bugzilla

De April MediaWiki

Rappel du contexte : adapter Bugzilla pour en faire un outil de gestion des tâches destiné aux groupes de travail et pour gérer le bénévolat : DocumentDeReferenceCommunaute#Permettre_le_suivi_des_t.C3.A2ches

Je fais un rapide compte rendu ; tout est de tête, donc je ne garantie pas l'exhaustivité.

Ma conclusion est que l'outil correspond à tout ce qui a été noté comme nécessaire, sauf la gestion des échéances qui n'est peut être pas très pratique (mais pas non plus forcément indispensable pour du bénévolat).

L'interface est plus conviviale que je ne le pensait, et au moins pour le end-user, ça peut être très simple.

@++, François

Le sentiment général après avoir manipulé l'outil est plutôt bon, ceci dit nous n'avons pas fait non plus un test "grandeur nature". L'outil offre une grande configurabilité, et étonnamment, sans mettre les mains dans le cambouis. Ce dernier point est important car du coup il y n'y a aucun effort de maintenance d'éventuelles adaptations. Cette configurabilité se paye naturellement d'une interface qui peut faire un peu peur (tout est en interface web), mais la logique de l'outil me semble rapide à acquérir. De plus, l'apprentissage sera surtout nécessaire aux gens qui l'administrent (les animateurs de groupe), pas pour les utilisateurs finaux. Le seul manque qui semble assez flagrant, c'est l'absence de gestion d'échéances (tout du moins explicitement sous forme de dates, car on peut les retrouver sous la forme d'un élément bloquant pour un changement de version (ex : travailler par rapport aux n° de semaines...)).

  • L'arborescence de gestion est : classification/produit/composant. La "classification" est désactivable, et est là pour séparer franchement différents usages faits de l'outil sur le même Bugzilla (des exemples de classification pourraient être : bénévolat ; contacts reçus ; espace CA). Les "produits" et "composants" sont ensuite des ramifications qui peuvent disposer d'une description, etc. Typiquement ça serait "Groupe de travail" et "Projets". Emmanuel nous a montré un Bugzilla où toutes les occurrences de "Bug" sont remplacées par "Tâches". Je ne sais pas si c'est aussi simple pour "produits" et "composants", mais vu que c'est du logiciel libre...
  • Gestion des permissions : la gestion des permissions est fine et complète, de la visibilité d'une tâche, à la création/destruction, en passant par la modification de son état. Tout est géré au travers des notions d'utilisateurs et groupes.
  • Les états et le workflow est complètement configurable. Il est possible de rajouter un nombre arbitraire d'états (ceux ci restant discrets, c'est à dire qu'il n'y a pas de progression continue possible), et de leur donner un indice d'avancement et un nom particulier ; ceci dit, toute cette possibilité d'expressivité est laissée à l'initiative du contributeur : à lui de l'utiliser correctement, le cas échéant. Le workflow se configure par une matrice, de façon global.
  • Il existe une notion de drapeau (qui est par erreur appelée étiquette) : si un utilisateur lève un drapeau, c'est généralement pour lever une interrogation, demander un avis qui réclame une compétence particulière.
  • Il existe la notion de mot clé, pour qualifier une tâche. Malheureusement, dans la version actuelle (c'est appelé à évoluer), les mots clés sont à taper dans un champ libre, donc il ne faut pas se tromper (sinon il insulte).
  • La partie "recherche" de Bugzilla est très complète (lire: horrible!), mais il est possible de sauvegarder ses paramètres de recherche et de les partager entre utilisateurs ; ainsi, on peut créer des "vues" précisément affinées pour présenter l'information aux visiteurs de la façon qu'il souhaite. Tout attribut qualifiant une tâche peut être utilisée dans la recherche (d'où le qualificatif de "horrible" pour le profane qui s'y aventure...).
  • Dans la dernière version de Bugzilla, il est possible de programmer des actions sur ces vues ; par exemple : les envoyer par courriel à un groupe d'email, alimenter un flux atom, etc. Un exemple d'utilisation possible (outre d'éviter d'oublier des tâches trop longtemps) : chaque jour poster sur april@april.org une tâche au hasard parmi celles à réaliser, lui offrant un large public de contributeurs potentiels.
  • On peut créer des dépendances entre les tâches (pour organiser des projets nécessitant plusieurs sous-tâches), organiser des blocages, et afficher un arbre ou un graphe de dépendances.