Le besoin
Qui ? : Le programme manager
Quoi ? : Un board JIRA permettant de visualiser l'avancement des Feature
Pourquoi ? : Eviter la maintenance manuelle d'un fichier Excel
Conditions :
- Le statut des Features doit se mettre à jour automatiquement en fonction de celui des User Story associées
- Un champ doit afficher l'avancement % des points Done
La solution mise en place
Pour la solution proposée ici nous avons utilisé les Add-ons gratuits suivant :
La solution consiste en un Board Agile affichant uniquement les Features du projet et leur statut respectif :
- TO DO : si aucune des User Story associées n'est commencée ou terminée
- IN PROGRESS : si une au moins des User Story est commencée ou terminée
- DONE : si toutes les User Story associées sont Done
Un champ scripté qui calcule automatiquement le % des points Done a été ajouté au type Feature et ce champ est configuré pour apparaître sur le Board Agile
Automation du statut des Features
Le plugin Automation permet de déclencher des transitions automatiquement sur la base du résultat d'une requête à un intervalle de temps donné
Nous avons d'abord créé des filtres pour identifier deux ensembles de User Story
Celles qui ne sont plus à faire NOT TO DO
resolution != Unresolved OR status in ("Coding WIP", "Coding done", "Return to dev", "Ready for test", "Testing WIP", "Testing done", Done, "In Progress")
Celles qui ne sont pas terminées NOT DONE
resolution = Unresolved OR status not in (Done, "Testing done")
Ces deux requêtes nous permettent de créer les 3 requêtes utilisées par l'automation
Feature TO DO
Toutes les Feature qui contiennent des User Story qui ne sont pas pas à faire
Feature In PROGRESS
Toutes les Feature qui contiennent des User Story qui ne sont ni à faire ni terminées
issuetype=Feature AND status not in ("In Progress") AND issueFunction in hasLinks("is Epic of") AND issueFunction in linkedIssuesOf("filter='NOT DONE'", "has Epic") AND issueFunction in linkedIssuesOf("filter='NOT OPEN'", "has Epic")
Feature DONE
Toutes les Feature qui contiennent des User Story qui ne sont pas pas terminées
issuetype=Feature AND status not in (Done) AND issueFunction in hasLinks("is Epic of") AND NOT(issueFunction in linkedIssuesOf("filter='NOT DONE'", "has Epic"))
Ajout d'un champ indiquant la progression de l'avancement des Feature
Script Runner permet de créer des Custom Field de type Scripted Field et d'y associer un script Groovy qui à chaque affichage du champ va être executé
Ce script récupère toutes les Issues Jira associées à la feature et compute le % de points Done
Le script doit finir par un return qui renvoie une String affichée dans le champ
Exemple : 12 / 21 (todo/done) - 51% (% pts done)
Pour afficher ce champ dans mon Board Agile, je vais dans Configure / Card Layout et j'ai juste à sélectionner le champ (ici Progression) pour qu'il apparaisse sur mes cartes
Le script doit finir par un return qui renvoie une String affichée dans le champ
Exemple : 12 / 21 (todo/done) - 51% (% pts done)
Pour afficher ce champ dans mon Board Agile, je vais dans Configure / Card Layout et j'ai juste à sélectionner le champ (ici Progression) pour qu'il apparaisse sur mes cartes
Voici le script :
Belle contribution. Merci
RépondreSupprimerSuper partage merci.
RépondreSupprimer