Voorbeeldrapporten van Sprint burndown
Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019
Burndown-grafieken voor sprints zijn handig om te controleren hoe goed een team werkt aan hun sprintplan. Verschillende ingebouwde grafieken en dashboardwidgets bieden ondersteuning voor het bewaken van sprint burndown. Zie Burndown voor sprints configureren en bewaken.
U kunt echter een burndowndiagram voor sprints aanpassen met behulp van Analytics en Power BI met de query's in dit artikel. In het volgende voorbeeld ziet u een burndown van gebruikersverhalen en hun staten.
Belangrijk
- Als u gebiedspaden verwijdert of iteratiepaden opnieuw configureert, kunnen gegevens verloren gaan. In burndown- en burnupwidgetdiagrammen, sprint burndown- en snelheidsdiagrammen voor teams met gewijzigde vlakpaden worden bijvoorbeeld geen nauwkeurige gegevens weergegeven. Historische trenddiagrammen verwijzen naar het gebiedspad en iteratiepad zoals deze zijn gedefinieerd op het moment dat elk werkitem wordt gedefinieerd. Nadat u de gegevens hebt verwijderd, kunt u geen historische gegevens voor deze paden ophalen.
- U kunt alleen gebieds- en iteratiepaden verwijderen die niet meer worden gebruikt door werkitems.
Voor meer informatie over burndown en burnup, en Burndown en burnup richtlijnen.
Notitie
In dit artikel wordt ervan uitgegaan dat u overzicht van voorbeeldrapporten leest met behulp van OData-query's en basiskennis hebt van Power BI.
Vereisten
- Toegang: Wees lid van een project met ten minste basistoegang .
- Machtigingen: projectleden zijn standaard gemachtigd om query's uit te voeren op Analytics en weergaven te maken.
- Zie Machtigingen en vereisten voor toegang tot Analyse voor meer informatie over andere vereisten met betrekking tot het inschakelen van services en functies en algemene activiteiten voor het bijhouden van gegevens.
Voorbeeldquery's
Voor burndowngrafieken moet een query worden uitgevoerd op de WorkItemSnapshot
entiteit die is ingesteld om historische gegevens op te halen.
Notitie
Als u de beschikbare eigenschappen voor filter- of rapportdoeleinden wilt bepalen, raadpleegt u de naslaginformatie over metagegevens voor Azure Boards. U kunt uw query's filteren of eigenschappen retourneren met behulp van een van de Property
waarden onder een EntityType
of NavigationPropertyBinding Path
waarden die beschikbaar zijn met een EntitySet
. Elk EntitySet
komt overeen met een EntityType
. Raadpleeg voor meer informatie over het gegevenstype van elke waarde de metagegevens die voor de bijbehorende EntityType
waarde zijn opgegeven.
Burndown-gebruikersverhalen voor een gebiedspad en de huidige iteratie
Kopieer en plak de volgende Power BI-query rechtstreeks in het venster Lege query ophalen>. Zie Overzicht van voorbeeldrapporten met behulp van OData-query's voor meer informatie.
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
Uitsplitsing van tekenreeksen en query's vervangen
Vervang de volgende tekenreeksen door uw waarden. Neem geen vierkante haken {} op bij uw vervanging. Als de naam van uw organisatie bijvoorbeeld Fabrikam is, vervangt u door {organization}
Fabrikam
, niet {Fabrikam}
.
{areapath}
- Uw gebiedspad. Voorbeeldindeling:Project\Level1\Level2
.
Uitsplitsing van query's
In de volgende tabel wordt elk deel van de query beschreven.
Queryonderdeel
Beschrijving
$apply=filter(
Filter starten()
WorkItemType eq 'User Story'
Burndown op gebruikersverhalen
and startswith(Area/AreaPath,'{areapath}')
Werkitems onder een specifiek gebiedspad. Vervangen door Area/AreaPath eq '{areapath}'
retourneert items in een specifiek gebiedspad.
Als u wilt filteren op teamnaam, gebruikt u de filterinstructie Teams/any(x:x/TeamName eq '{teamname})'
and StateCategory ne 'Completed'
and DateValue ge Iteration/StartDate
Begin de trend bij het starten van iteratie.
and DateValue le Iteration/EndDate
Eindtrend bij iteratie.
and Iteration/StartDate le now()
Selecteer de huidige iteratie.
and Iteration/EndDate ge now()
Huidige iteratie selecteren
)
Filter sluiten()
/groupby(
Start groupby()
(DateValue, State, WorkItemType, Priority, Area/AreaPath, Iteration/IterationPath),
Groeperen op DateValue (gebruikt voor trending) en eventuele velden waarop u wilt rapporteren
aggregate($count as Count, StoryPoints with sum as TotalStoryPoints)
Aggregeren op aantal gebruikersverhalen en som van verhaalpunten
)
Close groupby()
Burndown User Stories voor een team en de huidige iteratie
Deze query is hetzelfde als de query die hierboven wordt gebruikt, behalve dat deze filtert op teamnaam in plaats van op gebiedspad.
Kopieer en plak de volgende Power BI-query rechtstreeks in het venster Lege query ophalen>. Zie Overzicht van voorbeeldrapporten met behulp van OData-query's voor meer informatie.
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 voor alle sprints sinds het begin van een jaar
U kunt een burndown van alle sprints in één rapport bekijken. Deze query's halen burndowns en hun verhaalpunten op voor alle sprints sinds begin 2022.
Kopieer en plak de volgende Power BI-query rechtstreeks in het venster Lege query ophalen>. Zie Overzicht van voorbeeldrapporten met behulp van OData-query's voor meer informatie.
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
Burndowntaken en resterend werk
Kopieer en plak de volgende Power BI-query rechtstreeks in het venster Lege query ophalen>. Zie Overzicht van voorbeeldrapporten met behulp van OData-query's voor meer informatie.
Doc-ready Power BI Query (anonymized)
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
(Optioneel) Naam van query wijzigen
U kunt de naam van het standaardquerylabel Query1 wijzigen in iets zinvoller. Voer gewoon een nieuwe naam in het deelvenster Queryinstellingen in.
Kolommen uitvouwen in Power Query-editor
Voordat u het rapport maakt, moet u kolommen uitvouwen die records met verschillende velden retourneren. In dit geval wilt u de volgende records uitbreiden:
Area
Iteration
AssignedTo
Sluit de query en pas uw wijzigingen toe
Zodra u al uw gegevenstransformaties hebt voltooid, kiest u Sluiten en toepassen in het menu Start om de query op te slaan en terug te keren naar het tabblad Rapport in Power BI.
Het gestapelde kolomdiagramrapport maken
Kies in Power BI het rapport Gestapeld kolomdiagram onder Visualisaties.
Toevoegen
DateValue
aan X-as, met de rechtermuisknop klikken en selecterenDateValue
in plaats vanDate Hierarchy
Toevoegen
Count
aan Y-as.Toevoegen
State
aan Y-as.
Het voorbeeldrapport, waarin burndown wordt weergegeven op zowel Story Points als Count of Stories.