Comment connecter PowerBI et Jira pour créer des métriques Agiles?

Dans cet article, je vous explique comment connecter PowerBI et Jira. De mon expérience Agile et en tant qu’ancienne développeuse BI, il y a une chose récurrente qui m’étonne dans les organisations, c’est l’inexistence de métriques Agiles pertinentes et utiles pour les équipes!

Oui, j’insiste bien sur le “pour les équipes” et non pas pour la direction!

Coaching Agile

Dans cet article je ne vais pas revenir sur les métriques Agiles (vous référez au guide EBM), mais plutôt expliquer comment connecter PowerBI et Jira pour réaliser et automatiser la génération de vos métriques.

Nota bene: une métrique n’est pas un argument pour émettre un jugement négatif ou positif vis-à-vis d’une équipe, d’un produit ou d’une organisation. Une métrique est seulement un signal qui donne une information à un instant T permettant de s’évaluer, s’introspecter, apprendre de nous, justifier la prise d’une décision pour s’ajuster et changer le futur! Puis se mesurer de nouveau pour évaluer la dernière décision prise, etc. Bref, être agile!

Je n’invente rien, j’ai trouvé ces astuces en anglais en fouillant sur internet, je me permets de les repartager en français pour en faire profiter la communauté francophone! 🤗

Comment connecter PowerBI et Jira?

Connecter PowerBI et Jira depuis une requête JQL (solution simple)

Avantages

  • Gratuit
  • Simple
  • Rapide à mettre en place

Limites

  • Nécessite de connaitre le langage JQL (Jira Query Language) qui est le langage de recherche de demandes dans Jira, il ressemble beaucoup au langage SQL.
  • Je recommande vivement l’utilisation de cette méthode de par ses avantages mais elle ne répondra pas à tous vos besoins puisque cette méthode extrait seulement les 100 premières de la requête JQL.

Méthode étapes par étapes

Générer un token APIRendez-vous sur https://id.atlassian.com/manage-profile/security/api-tokens

Cliquez sur “Créer un jeton d’API” et conservez bien précieusement votre mot de passe!
Créer une connexionOuvrez PowerBI Desktop.

Créez une nouvelle connexion de type Web de base.

Dans la zone URL, saisir: “https://<id entreprise>.atlassian.net/rest/api/3/search?jql=<requête JQL>&maxResults=100”
Importer les données dans Power QueryL’éditeur Power Query s’ouvre automatiquement après quelques secondes.

Si besoin, vous pouvez transformer vos données depuis Power Query, sinon cliquez sur “Fermer & Appliquer”.

Félicitation, vous venez de créer votre première connexion entre PowerBI et Jira, vous êtes prêt à créer un rapport!

Connecter PowerBI et Jira depuis une requête JQL (solution complexe)

Avantages

  • Gratuit
  • Pas de limite d’extraction de lignes

Limites

  • Nécessite une connaissance du langage DAX
  • Nécessite de connaitre le langage JQL (Jira Query Language) qui est le langage de recherche de demandes dans Jira, il ressemble beaucoup au langage SQL.
  • Méthode beaucoup plus complexe qui n’hésite un peu de pratique pour se sentir à l’aise

Méthode étapes par étapes

Générer un token APIRendez-vous sur https://id.atlassian.com/manage-profile/security/api-tokens

Cliquez sur “Créer un jeton d’API” et conservez bien précieusement votre mot de passe!
Création de la requête GetJsonFromJQLJiraCliquez sur “Transformer les données”.

Power Query s’ouvre automatiquement, cliquez sur “Nouvelle source” puis “Requête vide”.

Copiez/Collez le code:
= (StartAt as number, JQL as text, Fields as text, optional Expand) =>
let
Expand = if Expand = null then "none" else Text.From(Expand),
RawData = Web.Contents("https://<id atlassian entreprise>.atlassian.net",
[
RelativePath="rest/api/3/search",
Query=[
jql=JQL,
startAt=Text.From(StartAt),
fields=Fields,
expand=Text.From(Expand)
],
Headers=[Accept="application/json"]
]),
Json = Json.Document(RawData)
in Json


Renommez cette requête: GetJsonFromJQLJira
Création de la requête GetIssueCountJiraCliquez sur “Nouvelle source” puis “Requête vide”.

Copiez/Collez le code:
= (JQL as text) => let Json = GetJsonFromJira(0, JQL, "none"), Count = Json[total] in Count

Renommez cette requête: GetIssueCountJira
Création de la requête GetIssuePageValuesJiraCliquez sur “Nouvelle source” puis “Requête vide”.

Copiez/Collez le code:
= (Index as number, EntitiesPerPage as number, JQL as text, Fields as text, optional Expand) => let Json = GetJsonFromJQLJira((Index * EntitiesPerPage), JQL, Fields, Expand), Value = Json[#"issues"] in Value

Renommez cette requête: GetIssuePageValuesJira
Création de la requête GetIssueFromJiraCliquez sur “Nouvelle source” puis “Requête vide”.

Copiez/Collez le code:
= (JQL as text, Fields as text, optional Expand) =>
let
EntitiesPerPage = 50,
EntityCount = List.Max({EntitiesPerPage, GetIssueCountJira(JQL) }),
PageCount = Number.RoundUp(EntityCount / EntitiesPerPage),
PageIndices = { 0 .. PageCount -1 },
Pages = List.Transformation(PageIndices, each GetIssuePageValuesJira(_, EntitiesPerPage, JQL, Fields, Expand)),
Entities = List.Union(Pages),
EntitiesToTable = Table.FromList(Entities, Splitter.SplitByNothing(), null, null, ExtraValues.Error)
in EntitiesToTable


Renommez cette requête: GetIssueFromJira
Création d’une tableDans le menu gauche nommé “Requêtes”, vous placez sur “GetIssuesFromJira”.

Dans la zone JQL, renseignez une requête JQL.

Dans la zone Fields, listez les champs Jira à extraire séparé par une virgule. Par exemple "key, project".

Cliquez sur le bouton “Appeler”.

Renommez la table créée “Issues”.

Importer les données dans Power QuerySi besoin, vous pouvez transformer vos données depuis Power Query, sinon cliquez sur “Fermer & Appliquer”.

Félicitation, vous venez de créer votre première connexion entre PowerBI et Jira, vous êtes prêt à créer un rapport!

Connecter PowerBI et Jira en investissant dans un connecteur

Avantages

  • Très simple

Limites

  • Les connecteurs sont payants, évaluez donc bien la valeur générée par vos métriques avant d’investir!

Exemples de connecteurs

Bon reporting!

Emilie Olivier CogitCoach Coaching