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.

Schermopname van power BI Sprint burndown geclusterd kolomdiagramrapport.

Belangrijk

Het verwijderen van gebiedspaden of het opnieuw configureren van iteratiepaden kan leiden tot verlies van gegevens en kan niet worden teruggedraaid. Bijvoorbeeld burndown- of burnupwidgetdiagrammen, sprint burndown- en snelheidsdiagrammen voor teams waarvan gebiedspaden worden gewijzigd, bevatten geen juiste gegevens. Historische trenddiagrammen verwijzen naar het gebiedspad en iteratiepad , zoals gedefinieerd op een punt in het verleden voor elk werkitem. Wanneer een gebiedspad of iteratiepad wordt verwijderd, kunnen de historische gegevens hiervoor niet worden opgehaald.

Meer informatie over burndown en burnup, burndown en burnup richtlijnen.

Notitie

In dit artikel wordt ervan uitgegaan dat u overzicht van voorbeeldrapporten hebt gelezen met behulp van OData-query's en basiskennis hebt van Power BI.

Vereisten

  • Als u analysegegevens wilt bekijken en een query wilt uitvoeren op de service, moet u lid zijn van een project met basic-toegang of hoger. Standaard krijgen alle projectleden machtigingen om query's uit te voeren op Analytics en analyseweergaven te definiëren.
  • Zie Machtigingen en vereisten voor toegang tot Analytics 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. Voor meer informatie over het gegevenstype van elke waarde, bekijkt u de metagegevens die voor de bijbehorende EntityTypewaarde zijn opgegeven.

Burndown-gebruikersverhalen voor een gebiedspad en de huidige iteratie

U kunt de onderstaande Power BI-query> rechtstreeks in het venster Gegevens leeg ophalen plakken. Raadpleeg 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'

Hiermee worden items gefilterd die zijn voltooid. Zie Hoe werkstroomstatussen en statuscategorieën worden gebruikt in achterstanden en borden voor meer informatie over statuscategorieën.

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.

U kunt de onderstaande Power BI-query> rechtstreeks in het venster Gegevens leeg ophalen plakken. Raadpleeg 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.

U kunt de onderstaande Power BI-query> rechtstreeks in het venster Gegevens leeg ophalen plakken. Raadpleeg 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

U kunt de onderstaande Power BI-query> rechtstreeks in het venster Gegevens leeg ophalen plakken. Raadpleeg overzicht van voorbeeldrapporten met behulp van OData-query's voor meer informatie.

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

(Optioneel) Naam van query wijzigen

U kunt de naam van het standaardquerylabel Query1 wijzigen in iets zinvoller. Voer een nieuwe naam in het deelvenster Query Instellingen in.

Schermopname van menuopties voor Power BI-query's, naam van query wijzigen.

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

Zie Transform Analytics-gegevens voor het genereren van Power BI-rapporten voor meer informatie over het uitvouwen van werkitems.

Sluit de query en pas uw wijzigingen toe

Zodra u al uw gegevenstransformaties hebt voltooid, kiest u Sluiten en toepassen in hetmenu Start om de query op te slaan en terug te keren naar het tabblad Rapport in Power BI.

Schermopname van Power Query-editor optie Sluiten en toepassen.

Het gestapelde kolomdiagramrapport maken

  1. Kies in Power BI het rapport Gestapeld kolomdiagram onder Visualisaties.

    Schermopname van Power BI-visualisaties en -veldenselecties voor Sprint Burndown-rapport.

  2. Toevoegen DateValue aan X-as, met de rechtermuisknop klikken en selecteren DateValuein plaats van Date Hierarchy

  3. Toevoegen Count aan Y-as.

  4. Toevoegen State aan Y-as.

Het voorbeeldrapport, waarin burndown wordt weergegeven op zowel Story Points als Count of Stories.

Schermopname van power BI Sprint-voorbeeldrapport met geclusterde kolomdiagrammen.