Rilasciare query e report di esempio di burndown
Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019
I report burndown e burnup mostrano quanto lavoro viene completato nel tempo. L'immagine seguente mostra il burndown in base al conteggio delle storie utente e alla somma dei punti storia.
I grafici burn-down hanno senso solo se si pianifica il lavoro per il periodo di tempo del grafico. In caso contrario, se si prevede uno sprint per sprint, non verrà visualizzato un burndown standard. In questi casi, un grafico di burnup ha più senso per vedere come vengono eseguiti i progressi nel tempo.
Importante
L'eliminazione di percorsi di area o la riconfigurazione dei percorsi di iterazione può causare una perdita di dati e non può essere ripristinata. Ad esempio, i grafici dei widget burndown o burnup, il burndown sprint e i grafici di velocità per i team i cui percorsi di area vengono modificati non rifletteranno i dati corretti. I grafici di tendenza cronologici fanno riferimento al percorso area e al percorso di iterazione, come definito in un punto nel passato per ogni elemento di lavoro. Quando viene eliminato un percorso area o un percorso di iterazione, non è possibile recuperare i dati cronologici.
Per altre informazioni sul burndown e sul burnup, vedere Configurare un widget burndown o burnup e burndown e indicazioni sul burnup.
Nota
Questo articolo presuppone di avere letto Panoramica dei report di esempio usando query OData e avere una conoscenza di base di Power BI.
Prerequisiti
- Per visualizzare i dati di Analisi ed eseguire query sul servizio, è necessario essere membri di un progetto con accesso basic o superiore. Per impostazione predefinita, a tutti i membri del progetto vengono concesse le autorizzazioni per eseguire query su Analisi e definire le visualizzazioni di Analisi.
- Per altre informazioni sugli altri prerequisiti relativi all'abilitazione di servizi e funzionalità e alle attività generali di rilevamento dei dati, vedere Autorizzazioni e prerequisiti per l'accesso ad Analytics.
Query di esempio
Le query in questa sezione illustrano come generare grafici burn-down degli elementi di lavoro in base ai dati cronologici. Tutte queste query specificano il WorkItemSnapshot
set di entità.
Nota
Per determinare le proprietà disponibili a scopo di filtro o report, vedere Informazioni di riferimento sui metadati per Azure Boards. È possibile filtrare le query o restituire proprietà usando uno qualsiasi dei Property
valori in un EntityType
oggetto o NavigationPropertyBinding Path
i valori disponibili con un oggetto EntitySet
. Ognuno EntitySet
corrisponde a un oggetto EntityType
. Per altre informazioni sul tipo di dati di ogni valore, esaminare i metadati forniti per l'oggetto corrispondente EntityType
.
Burndown delle storie utente in un percorso di area dalla data di inizio e di fine
La query seguente illustra come restituire i dati cronologici delle storie utente per una versione in base agli elementi di lavoro contrassegnati con un tag di versione.
Nota
Per i report basati sul filtro di un tag, il tag deve essere assegnato all'elemento di lavoro all'inizio della data di inizio del rilascio o del burndown/burnup. In caso contrario, l'elemento di lavoro non è incluso nei dati restituiti.
È possibile incollare la query di Power BI elencata di seguito direttamente nella finestra Recupera query vuota dati>. Per altre informazioni, vedere Panoramica dei report di esempio che usano query OData.
let
Source = OData.Feed ("https://analytics.dev.azure.com/{organization}/{project}/_odata/v3.0-preview/WorkItemSnapshot?"
&"$apply=filter(WorkItemType eq 'User Story' "
&"and StateCategory ne 'Completed' "
&"and startswith(Area/AreaPath,'{areapath}') "
&"and Tags/any(x:x/TagName eq '{tagname}') "
&"and DateValue ge {startdate} "
&"and DateValue le {enddate} "
&") "
&"/groupby ( "
&"(DateValue,State,Area/AreaPath), "
&"aggregate ($count as Count, StoryPoints with sum as TotalStoryPoints) "
&") "
,null, [Implementation="2.0",OmitValues = ODataOmitValues.Nulls,ODataVersion = 4])
in
Source
Stringhe di sostituzione e scomposizione delle query
Sostituire le stringhe seguenti con i valori. Non includere parentesi quadre {} con la sostituzione. Ad esempio, se il nome dell'organizzazione è "Fabrikam", sostituire {organization}
con Fabrikam
, non {Fabrikam}
.
{organization}
- Nome dell'organizzazione{project}
- Nome del progetto team o omettere completamente "/{project}" per una query tra progetti{areapath}
- Il percorso dell'area. Formato di esempio:Project\Level1\Level2
{tag}
- Tag che rappresenta la versione. Tutti gli elementi di lavoro contrassegnati con{tagname}
sono inclusi nel report{startdate}
- Data di inizio del report burndown con il formato :YYYY-MM-DDZ
. Ad esempio:2022-04-01Z
rappresenta il 2022-aprile-01. Non racchiudere tra virgolette.{enddate}
- Data di fine del report di burndown.
Suddivisione delle query
La tabella seguente descrive ogni parte della query.
Parte della query
Descrizione
$apply=filter(WorkItemType eq 'User Story'
Includi storie utente nel burndown.
and StateCategory ne 'Completed'
Filtra gli elementi completati. Per altre informazioni sulle categorie di stato, vedere Modalità di utilizzo degli stati e delle categorie di stato del flusso di lavoro nei backlog e nelle bacheche.
and startswith(Area/AreaPath,'{areapath}')
Includere solo le storie utente in un percorso di area specifico sostituendo '{areapath}'
.
Per filtrare in base al nome di un team, usare l'istruzione Teams/any(x:x/TeamName eq '{teamname})'
filter .
and Tags/any(x:x/TagName eq '{tagname}')
.
Specifica l'etichetta di tag che rappresenta la versione in cui eseguire il burndown e per includere tutti gli elementi di lavoro contrassegnati con {tagname} nel report.
and DateValue ge {startdate}
Avviare il burndown su o dopo la data specificata. Esempio: 2019-04-01Z rappresenta il 2019-aprile-01.
and DateValue le {enddate}
Avviare il burndown prima o prima della data specificata. Stesso formato di {startdate}.
)
Clausola Close filter()
.
/groupby (
Clausola Start groupby()
.
(DateValue, State, Area/AreaPath),
Raggruppa per DateValue
(usato per la tendenza) e tutti i campi su cui si desidera creare report.
aggregate ($count as Count, StoryPoints with sum as TotalStoryPoints)
Aggrega per conteggio delle storie utente e della somma dei punti storia.
)
Clausola Close groupby()
.
Burndown delle storie utente per un team
La query seguente restituisce i dati di burndown filtrati in base al nome del team anziché al percorso area.
È possibile incollare la query di Power BI elencata di seguito direttamente nella finestra Recupera query vuota dati>. Per altre informazioni, vedere Panoramica dei report di esempio che usano query OData.
let
Source = OData.Feed ("https://analytics.dev.azure.com/{organization}/{project}/_odata/v3.0-preview/WorkItemSnapshot?"
&"$apply=filter(WorkItemType eq 'User Story' "
&"and StateCategory ne 'Completed' "
&"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 Tags/any(x:x/TagName eq '{tagname}') "
&"and DateValue ge {startdate} "
&"and DateValue le {enddate} "
&") "
&"/groupby ( "
&"(DateValue,State,Area/AreaPath), "
&"aggregate ($count as Count, StoryPoints with sum as TotalStoryPoints) "
&") "
,null, [Implementation="2.0",OmitValues = ODataOmitValues.Nulls,ODataVersion = 4])
in
Source
Burndown User Stories con uno snapshot ogni venerdì
L'uso di uno snapshot settimanale riduce la quantità di dati estratti in Power BI e aumenta le prestazioni delle query.
È possibile incollare la query di Power BI elencata di seguito direttamente nella finestra Recupera query vuota dati>. Per altre informazioni, vedere Panoramica dei report di esempio che usano query OData.
let
Source = OData.Feed ("https://analytics.dev.azure.com/{organization}/{project}/_odata/v3.0-preview/WorkItemSnapshot?"
&"$apply=filter(WorkItemType eq 'User Story' "
&"and StateCategory ne 'Completed' "
&"and startswith(Area/AreaPath,'{areapath}') "
&"and Tags/any(x:x/TagName eq '{tagname}') "
&"and DateValue ge {startdate} "
&"and DateValue le {enddate} "
&"and Date/DayName eq 'Friday' "
&") "
&"/groupby ( "
&"(DateValue,State,Area/AreaPath,AreaSK), "
&"aggregate ($count as Count, StoryPoints with sum as TotalStoryPoints) "
&") "
,null, [Implementation="2.0",OmitValues = ODataOmitValues.Nulls,ODataVersion = 4])
in
Source
Burndown User Stories basato su un'area e un percorso di iterazione
Alcune organizzazioni usano percorsi di iterazione per contrassegnare le storie per una versione. Ad esempio, possono avere un percorso di iterazione di MyProject\Release1. La query seguente mostra come selezionare Storie utente in base al percorso di iterazione.
È possibile incollare la query di Power BI elencata di seguito direttamente nella finestra Recupera query vuota dati>. Per altre informazioni, vedere Panoramica dei report di esempio che usano query OData.
let
Source = OData.Feed ("https://analytics.dev.azure.com/{organization}/{project}/_odata/v3.0-preview/WorkItemSnapshot?"
&"$apply=filter(WorkItemType eq 'User Story' "
&"and StateCategory ne 'Completed' "
&"and startswith(Area/AreaPath,'{areapath}') "
&"and startswith(Iteration/IterationPath,'{iterationpath}') "
&"and DateValue ge {startdate} "
&"and DateValue le {enddate} "
&") "
&"/groupby ( "
&"(DateValue,StateCategory,State,Area/AreaPath,AreaSK), "
&"aggregate ($count as Count, StoryPoints with sum as TotalStoryPoints) "
&") "
,null, [Implementation="2.0",OmitValues = ODataOmitValues.Nulls,ODataVersion = 4])
in
Source
Burndown User Stories con un valore di campo personalizzato
Alcune organizzazioni usano un campo personalizzato per contrassegnare le storie utente per una versione. Ad esempio, possono avere un campo denominato Cardine. Questa query mostra come selezionare Storie utente in base a un campo personalizzato.
Sarà necessario sostituire sia che {customfieldname}
{releasevalue}
nella query. Per determinare il nome del campo personalizzato, vedere Informazioni di riferimento sui metadati per Azure Boards, Proprietà personalizzate. Si sostituirà {customfieldname}
con il nome della proprietà personalizzata, ad esempio Custom_Milestone
.
È possibile incollare la query di Power BI elencata di seguito direttamente nella finestra Recupera query vuota dati>. Per altre informazioni, vedere Panoramica dei report di esempio che usano query OData.
let
Source = OData.Feed ("https://analytics.dev.azure.com/{organization}/{project}/_odata/v3.0-preview/WorkItemSnapshot?"
&"$apply=filter(WorkItemType eq 'User Story' "
&"and StateCategory ne 'Completed' "
&"and startswith(Area/AreaPath,'{areapath}') "
&"and {customfieldname} eq '{releasevalue}' "
&"and DateValue ge {startdate} "
&"and DateValue le {enddate} "
&") "
&"/groupby ( "
&"(DateValue,StateCategory,State,Area/AreaPath,AreaSK), "
&"aggregate ($count as Count, StoryPoints with sum as TotalStoryPoints) "
&") "
,null, [Implementation="2.0",OmitValues = ODataOmitValues.Nulls,ODataVersion = 4])
in
Source
(Facoltativo) Rinominare la query
È possibile rinominare l'etichetta di query predefinita Query1 in qualcosa di più significativo. È sufficiente immettere un nuovo nome dal riquadro Query Impostazioni.
Espandere le colonne in editor di Power Query
Prima di creare il report, è necessario espandere le colonne che restituiscono record contenenti diversi campi. In questa istanza è necessario espandere i record seguenti:
Links
Links.TargetWorkItem
Area
Iteration
AssignedTo
Per informazioni su come espandere gli elementi di lavoro, vedere Trasformare i dati di Analisi per generare report di Power BI.
Chiudere la query e applicare le modifiche
Dopo aver completato tutte le trasformazioni dei dati, scegliere Chiudi e applica dal menu Home per salvare la query e tornare alla scheda Report in Power BI.
Creare l'istogramma a colonne raggruppate
In Power BI scegliere Istogramma cluster in Visualizzazioni.
Aggiungi
DateValue
all'asse X, fai clic con il pulsante destro del mouse e scegliDateValue
, anzichéDate Hierarchy
Aggiungi
Count
all'asse Y.Aggiungi
TotalStoryPoints
all'asse Y.
Il report di esempio visualizza il burndown sia sul conteggio delle storie che sulla somma o sui punti storia.
Articoli correlati
- Panoramica dei report di esempio che usano query OData
- Costruire query OData per Analytics
- Connessione con le query di Power BI e OData
- Informazioni di riferimento sui metadati per Analisi di Azure Boards
- Report di esempio e indice di riferimento rapido
- Aggiungere un filtro dei dati team a un report esistente
Commenti e suggerimenti
https://aka.ms/ContentUserFeedback.
Presto disponibile: Nel corso del 2024 verranno gradualmente disattivati i problemi di GitHub come meccanismo di feedback per il contenuto e ciò verrà sostituito con un nuovo sistema di feedback. Per altre informazioni, vedereInvia e visualizza il feedback per