Ukázkové dotazy a sestavy pro vypálení vydané verze
Azure DevOps Services | Azure DevOps Server 2022 – Azure DevOps Server 2019
Sestavy burndownu a burnup ukazují, kolik práce se v průběhu času dokončí. Následující obrázek ukazuje burndown podle počtu uživatelských scénářů i součtu bodů scénáře.
Grafy burndownu mají smysl jenom v případě, že plánujete práci na časové období grafu. Jinak pokud plánujete sprint po sprintu, neuvidíte standardní burndown. V těchto případech má burnup graf větší smysl zjistit, jak se v průběhu času dělá pokrok.
Důležité
- Odstranění cest oblasti nebo změna konfigurace cest iterace způsobí nevratnou ztrátu dat. Například grafy burndownu a burnup widgetů, sprint burndown a grafy rychlosti pro týmy se změněnými cestami oblastí nezobrazují přesná data. Historické grafy trendu odkazují na cestu oblasti a cestu iterace, protože byly definovány v době pro každou pracovní položku. Po odstranění nemůžete načíst historická data pro tyto cesty.
- Můžete odstranit pouze oblasti a iterační cesty, které už nejsou používány žádnými pracovními položkami.
Další informace o burndownu a burnup naleznete v tématu Konfigurace burndownu nebo burnup widgetu a Burndown a burnup pokyny.
Poznámka:
Tento článek předpokládá, že si přečtete přehled ukázkových sestav pomocí dotazů OData a máte základní znalosti o Power BI.
Požadavky
- Přístup: Buďte členem projektu s alespoň základním přístupem.
- Oprávnění: Ve výchozím nastavení mají členové projektu oprávnění k dotazování na Analýzy a vytváření zobrazení.
- Další informace o dalších požadavcích týkajících se povolení služeb a funkcí a obecných aktivit sledování dat najdete v tématu Oprávnění a požadavky pro přístup k Analýzám.
Vzorové dotazy
Dotazy v této části ukazují, jak generovat burndownové grafy pracovních položek na základě historických dat. Všechny tyto dotazy určují WorkItemSnapshot
sadu entit.
Poznámka:
Informace o dostupných vlastnostech pro účely filtru nebo sestavy najdete v referenčních informacích k metadatům pro Azure Boards. Dotazy můžete filtrovat nebo vracet vlastnosti pomocí libovolné hodnoty Property
pod hodnotami nebo NavigationPropertyBinding Path
hodnotami dostupnými v objektu EntitySet
EntityType
. Každý EntitySet
odpovídá hodnotě EntityType
. Další informace o datovém typu každé hodnoty najdete v metadatech zadaných pro odpovídající EntityType
hodnotu .
Burndown uživatelských scénářů v cestě oblasti od počátečního a koncového data
Následující dotaz ukazuje, jak vrátit historická data uživatelských scénářů pro vydání na základě pracovních položek označených značkou vydané verze.
Poznámka:
U sestav založených na filtrování značky musí být značka přiřazena pracovní položce na začátku vydání nebo počátečního data burndownu nebo burnupu. V opačném případě není pracovní položka zahrnuta do vrácených dat.
Zkopírujte a vložte následující dotaz Power BI přímo do okna Získat>prázdné dotazy . Další informace najdete v tématu Přehled ukázkových sestav pomocí dotazů 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
Náhradní řetězce a rozpis dotazů
Nahraďte následující řetězce hodnotami. Nezahrnujte do náhradních závorek {} . Pokud je například název vaší organizace "Fabrikam", nahraďte {organization}
ho Fabrikam
, nikoli {Fabrikam}
.
{organization}
– Název vaší organizace{project}
– Název vašeho týmového projektu nebo úplně vynecháte /{project}, pro dotaz mezi projekty{areapath}
- Cesta k vaší oblasti. Příklad formátu:Project\Level1\Level2
{tag}
– Značka, která představuje vaši verzi. Všechny pracovní položky označené značkou{tagname}
jsou součástí sestavy.{startdate}
- Datum zahájení sestavy burndownu ve formátu:YYYY-MM-DDZ
. Například:2022-04-01Z
představuje 2022-April-01. Nezadávejte do uvozovek.{enddate}
- Datum ukončení sestavy burndownu.
Rozpis dotazů
Následující tabulka popisuje jednotlivé části dotazu.
Část dotazování
Popis
$apply=filter(WorkItemType eq 'User Story'
Zahrnout uživatelské scénáře do burndownu
and StateCategory ne 'Completed'
Vyfiltruje dokončené položky. Další informace o kategoriích stavů najdete v tématu Jak se v backlogech a panelech používají stavy a kategorie stavů pracovního postupu.
and startswith(Area/AreaPath,'{areapath}')
Zahrnout pouze uživatelské scénáře do konkrétní cesty oblasti nahrazení '{areapath}'
.
Chcete-li filtrovat podle názvu týmu, použijte příkaz Teams/any(x:x/TeamName eq '{teamname})'
filtru .
and Tags/any(x:x/TagName eq '{tagname}')
.
Určuje popisek značky, který představuje verzi pro burndown, a zahrnout do sestavy všechny pracovní položky označené značkou {tagname}.
and DateValue ge {startdate}
Začněte burndown dne nebo po zadaném datu. Příklad: 2019-04-01Z představuje 2019-Duben-01.
and DateValue le {enddate}
Začněte burndown dne nebo před zadaným datem. Stejný formát jako {startdate}.
)
Klauzule Close filter()
/groupby (
Klauzule Start groupby()
.
(DateValue, State, Area/AreaPath),
Seskupit podle DateValue
(používá se k trendu) a všechna pole, na která chcete sestavovat.
aggregate ($count as Count, StoryPoints with sum as TotalStoryPoints)
Agreguje se podle počtu uživatelských scénářů a součtu bodů obsahu.
)
Klauzule Close groupby()
Burndown of User Stories for a team
Následující dotaz vrátí data burndownu filtrovaná podle názvu týmu místo cesty oblasti.
Zkopírujte a vložte následující dotaz Power BI přímo do okna Získat>prázdné dotazy . Další informace najdete v tématu Přehled ukázkových sestav pomocí dotazů 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 with a snapshot every Friday
Použití týdenního snímku snižuje objem dat natažených do Power BI a zvyšuje výkon dotazů.
Zkopírujte a vložte následující dotaz Power BI přímo do okna Získat>prázdné dotazy . Další informace najdete v tématu Přehled ukázkových sestav pomocí dotazů 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 based on an area and iteration path
Některé organizace používají iterační cesty k označení scénářů pro vydání. Mohou mít například cestu iterace MyProject\Release1. Následující dotaz ukazuje, jak vybrat uživatelské scénáře podle cesty iterace.
Zkopírujte a vložte následující dotaz Power BI přímo do okna Získat>prázdné dotazy . Další informace najdete v tématu Přehled ukázkových sestav pomocí dotazů 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 with a custom field value
Některé organizace používají vlastní pole k označení uživatelských scénářů pro vydání. Mohou mít například pole s názvem Milník. Tento dotaz ukazuje, jak vybrat uživatelské scénáře podle vlastního pole.
V dotazu budete muset nahradit obojí {customfieldname}
i {releasevalue}
v dotazu. Pokud chcete určit název vlastního pole, přečtěte si referenční informace k metadatům pro Azure Boards, vlastní vlastnosti. Nahradíte {customfieldname}
názvem vlastní vlastnosti, například Custom_Milestone
.
Zkopírujte a vložte následující dotaz Power BI přímo do okna Získat>prázdné dotazy . Další informace najdete v tématu Přehled ukázkových sestav pomocí dotazů 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
(Volitelné) Přejmenování dotazu
Výchozí popisek dotazu , Query1, můžete přejmenovat na něco smysluplnějšího. Jednoduše zadejte nový název z podokna Nastavení dotazu.
Rozbalení sloupců v Editor Power Query
Před vytvořením sestavy budete muset rozbalit sloupce, které vracejí záznamy obsahující několik polí. V tomto případě budete chtít rozbalit následující záznamy:
Links
Links.TargetWorkItem
Area
Iteration
AssignedTo
Informace o tom, jak rozbalit pracovní položky, najdete v tématu Transformace analytických dat pro generování sestav Power BI.
Zavřete dotaz a použijte změny.
Jakmile dokončíte všechny transformace dat, v nabídce Domů zvolte Zavřít a použít dotaz a vraťte se na kartu Sestava v Power BI.
Vytvoření skupinového sloupcového grafu
V Power BI zvolte skupinový sloupcový graf v části Vizualizace.
Přidat
DateValue
na osu X, kliknout pravým tlačítkem myši a vybratDateValue
místoDate Hierarchy
Přidat
Count
na osu YPřidat
TotalStoryPoints
na osu Y
Ukázková sestava zobrazuje burndown jak pro počet scénářů, tak pro součet nebo body scénářů.