Rapports d’exemples de sprint burndown
Azure DevOps Services | Azure DevOps Server 2022 | Azure DevOps Server 2019
Les graphiques sprint burndown sont utiles pour surveiller l’exécution d’une équipe sur son plan de sprint. Plusieurs graphiques intégrés et widgets de tableau de bord prennent en charge la surveillance du burndown de sprint. Consultez Configurer et surveiller le burndown de sprint.
Toutefois, vous pouvez personnaliser un graphique sprint burndown à l’aide d’Analytics et de Power BI avec les requêtes fournies dans cet article. L’exemple suivant montre un burndown des user Stories et de leurs états.
Important
La suppression des chemins d’accès de zone ou la reconfiguration des chemins d’itération peuvent entraîner une perte de données et ne peuvent pas être rétablies. Par exemple, les graphiques de widgets burndown ou burnup, le sprint burndown et les graphiques de vitesse pour les équipes dont les chemins d’accès à la zone sont modifiés ne reflètent pas les données correctes. Les graphiques de tendance historique référencent le chemin d’accès à la zone et le chemin d’itération tels que définis à un point dans le passé pour chaque élément de travail. Lorsqu’un chemin d’accès à une zone ou un chemin d’itération est supprimé, les données historiques de ce chemin ne peuvent pas être récupérées.
Pour en savoir plus sur le burndown et le burnup, ainsi que sur les conseils de burndown et burnup.
Notes
Cet article suppose que vous avez lu Vue d’ensemble des exemples de rapports à l’aide de requêtes OData et que vous avez une compréhension de base de Power BI.
Prérequis
- Pour afficher les données Analytics et interroger le service, vous devez être membre d’un projet avec un accès de base ou supérieur. Par défaut, tous les membres du projet sont autorisés à interroger Analytics et à définir des vues Analytics.
- Pour en savoir plus sur d’autres prérequis concernant l’activation des services et des fonctionnalités et les activités générales de suivi des données, consultez Autorisations et prérequis pour accéder à Analytics.
Exemples de requêtes
Les graphiques burndown nécessitent l’interrogation du jeu d’entités WorkItemSnapshot
pour obtenir des données historiques.
Notes
Pour déterminer les propriétés disponibles à des fins de filtre ou de rapport, consultez Informations de référence sur les métadonnées pour Azure Boards. Vous pouvez filtrer vos requêtes ou renvoyer des propriétés à l’aide de l’une Property
des valeurs sous ou EntityType
des NavigationPropertyBinding Path
valeurs disponibles avec un EntitySet
. Chaque EntitySet
correspond à un EntityType
. Pour en savoir plus sur le type de données de chaque valeur, passez en revue les métadonnées fournies pour le .EntityType
Burndown User Stories pour un chemin d’accès de zone et l’itération actuelle
Vous pouvez coller la requête Power BI répertoriée ci-dessous> directement dans la fenêtre Obtenir une requête vide. Pour plus d’informations, consultez Vue d’ensemble des exemples de rapports utilisant des requêtes OData.
let
Source = OData.Feed ("https://analytics.dev.azure.com/{organization}/{project}/_odata/v3.0-preview/WorkItemSnapshot? "
&"$apply=filter( "
&"WorkItemType eq 'User Story' "
&"and startswith(Area/AreaPath,'{areapath}') "
&"and StateCategory ne 'Completed' "
&"and DateValue ge Iteration/StartDate "
&"and DateValue le Iteration/EndDate "
&"and Iteration/StartDate le now() "
&"and Iteration/EndDate ge now() "
&") "
&"/groupby( "
&"(DateValue,State,WorkItemType,Priority,Area/AreaPath,Iteration/IterationPath), "
&"aggregate($count as Count, StoryPoints with sum as TotalStoryPoints) "
&") "
,null, [Implementation="2.0",OmitValues = ODataOmitValues.Nulls,ODataVersion = 4])
in
Source
Chaînes de substitution et répartition des requêtes
Remplacez les chaînes suivantes par vos valeurs. N’incluez pas de crochets {} avec votre substitution. Par exemple, si le nom de votre organisation est « Fabrikam », remplacez par {organization}
Fabrikam
, et non {Fabrikam}
par .
{areapath}
- Chemin d’accès de votre zone. Exemple de format :Project\Level1\Level2
.
Répartition des requêtes
Le tableau suivant décrit chaque partie de la requête.
Composant de requête
Description
$apply=filter(
Démarrer filter()
WorkItemType eq 'User Story'
Burndown sur les témoignages utilisateur
and startswith(Area/AreaPath,'{areapath}')
Éléments de travail sous un chemin d’accès de zone spécifique. Le remplacement par Area/AreaPath eq '{areapath}'
renvoie des éléments à un chemin d’accès de zone spécifique.
Pour filtrer par nom d’équipe, utilisez l’instruction filter Teams/any(x:x/TeamName eq '{teamname})'
and StateCategory ne 'Completed'
Filtre les éléments terminés. Pour plus d’informations sur les catégories d’état, consultez Utilisation des états de flux de travail et des catégories d’état dans backlogs et tableaux.
and DateValue ge Iteration/StartDate
Commencez la tendance au début de l’itération.
and DateValue le Iteration/EndDate
Terminer la tendance à la fin de l’itération.
and Iteration/StartDate le now()
Sélectionnez Itération actuelle.
and Iteration/EndDate ge now()
Sélectionner l’itération actuelle
)
Fermer filter()
/groupby(
Démarrer groupby()
(DateValue, State, WorkItemType, Priority, Area/AreaPath, Iteration/IterationPath),
Regrouper par DateValue (utilisé pour les tendances) et tous les champs sur lesquels vous souhaitez créer un rapport
aggregate($count as Count, StoryPoints with sum as TotalStoryPoints)
Agrégation par nombre d’histoires d’utilisateurs et somme de points d’histoire
)
Fermer groupby()
Burndown User Stories pour une équipe et l’itération actuelle
Cette requête est identique à celle utilisée ci-dessus, sauf qu’elle filtre par nom d’équipe plutôt que par chemin d’accès à la zone.
Vous pouvez coller la requête Power BI répertoriée ci-dessous> directement dans la fenêtre Obtenir une requête vide. Pour plus d’informations, consultez Vue d’ensemble des exemples de rapports utilisant des requêtes OData.
let
Source = OData.Feed ("https://analytics.dev.azure.com/{organization}/{project}/_odata/v3.0-preview/WorkItemSnapshot? "
&"$apply=filter( "
&"WorkItemType eq 'User Story' "
&"and (Teams/any(x:x/TeamName eq '{teamname}) or Teams/any(x:x/TeamName eq '{teamname}) or Teams/any(x:x/TeamName eq '{teamname}) "
&"and StateCategory ne 'Completed' "
&"and DateValue ge Iteration/StartDate "
&"and DateValue le Iteration/EndDate "
&"and Iteration/StartDate le now() "
&"and Iteration/EndDate ge now() "
&") "
&"/groupby( "
&"(DateValue,State,WorkItemType,Priority,Area/AreaPath,Iteration/IterationPath), "
&"aggregate($count as Count, StoryPoints with sum as TotalStoryPoints) "
&") "
,null, [Implementation="2.0",OmitValues = ODataOmitValues.Nulls,ODataVersion = 4])
in
Source
Burndown User Stories pour tous les sprints depuis le début d’une année
Vous souhaiterez peut-être afficher un burndown de tous les sprints dans un seul rapport. Ces requêtes extrayent les burndowns de sprint, et leur par points d’histoire, pour tous les sprints depuis le début de l’année 2022.
Vous pouvez coller la requête Power BI répertoriée ci-dessous> directement dans la fenêtre Obtenir une requête vide. Pour plus d’informations, consultez Vue d’ensemble des exemples de rapports utilisant des requêtes OData.
let
Source = OData.Feed ("https://analytics.dev.azure.com/{organization}/{project}/_odata/v3.0-preview/WorkItemSnapshot? "
&"$apply=filter( "
&"WorkItemType eq 'User Story' "
&"and startswith(Area/AreaPath,'{areapath}') "
&"and StateCategory ne 'Completed' "
&"and DateValue ge Iteration/StartDate "
&"and DateValue le Iteration/EndDate "
&"and Iteration/StartDate ge 2022-01-01Z "
&") "
&"/groupby( "
&"(DateValue,Iteration/EndDate,Area/AreaPath,Iteration/IterationPath,State,WorkItemType,Priority,AreaSK), "
&"aggregate($count as Count, StoryPoints with sum as TotalStoryPoints) "
&") "
,null, [Implementation="2.0",OmitValues = ODataOmitValues.Nulls,ODataVersion = 4])
in
Source
Tâches de burndown et travail restant
Vous pouvez coller la requête Power BI répertoriée ci-dessous> directement dans la fenêtre Obtenir une requête vide. Pour plus d’informations, consultez Vue d’ensemble des exemples de rapports utilisant des requêtes OData.
Doc-ready Power BI Query (anonomized)
let
Source = OData.Feed ("https://analytics.dev.azure.com/{organization}/{project}/_odata/v3.0-preview/WorkItemSnapshot? "
&"$apply=filter( "
&"startswith(Area/AreaPath,'{project}') "
&"and StateCategory ne 'Completed' "
&"and DateValue ge Iteration/StartDate "
&"and DateValue le Iteration/EndDate "
&"and Iteration/StartDate le now() "
&"and Iteration/EndDate ge now() "
&"and WorkItemType eq 'Task' "
&") "
&"/groupby( "
&"(DateValue,State,WorkItemType,Activity,Priority,Area/AreaPath,Iteration/IterationPath,AreaSK), "
&"aggregate($count as Count, RemainingWork with sum as TotalRemainingWork) "
&") "
,null, [Implementation="2.0",OmitValues = ODataOmitValues.Nulls,ODataVersion = 4])
in
Source
(Facultatif) Renommer la requête
Vous pouvez renommer l’étiquette de requête par défaut , Query1, en quelque chose de plus significatif. Entrez simplement un nouveau nom dans le volet Paramètres de requête .
Développer des colonnes dans Éditeur Power Query
Avant de créer le rapport, vous devez développer des colonnes qui retournent des enregistrements contenant plusieurs champs. Dans ce cas, vous devez développer les enregistrements suivants :
Area
Iteration
AssignedTo
Pour savoir comment développer des éléments de travail, consultez Transformer des données Analytics pour générer des rapports Power BI.
Fermez la requête et appliquez vos modifications
Une fois que vous avez terminé toutes vos transformations de données, choisissez Fermer & Appliquer dans le menu Accueil pour enregistrer la requête et revenir à l’onglet Rapport dans Power BI.
Créer le rapport d’histogramme empilé
Dans Power BI, choisissez le rapport d’histogramme empilé sous Visualisations.
Ajouter
DateValue
à l’axe X, cliquez avec le bouton droit et sélectionnezDateValue
, plutôt queDate Hierarchy
Ajouter
Count
à l’axe Y.Ajouter
State
à l’axe Y.
L’exemple de rapport, qui affiche le burndown sur les points d’histoire et le nombre d’histoires.
Articles connexes
- Vue d’ensemble des exemples de rapports utilisant des requêtes OData
- Construire des requêtes OData pour Analytics
- Se connecter à l’aide de requêtes Power BI et OData
- Informations de référence sur les métadonnées pour Azure Boards Analytics
- Exemples de rapports et index de référence rapide
- Ajouter un segment Team à un rapport existant
Commentaires
https://aka.ms/ContentUserFeedback.
Bientôt disponible : Tout au long de l’année 2024, nous abandonnerons progressivement le mécanisme de retour d’information GitHub Issues pour le remplacer par un nouveau système de commentaires. Pour plus d’informations, consultez :Soumettre et afficher des commentaires pour