Relatórios de exemplo de burndown do Sprint

Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019

Os gráficos de burndown de sprint são úteis para monitorar o quão bem uma equipe está executando seu plano de sprint. Vários gráficos integrados e widgets de painel suportam o burndown de sprint de monitoramento. Consulte Configurar e monitorar o burndown do sprint.

No entanto, você pode personalizar um gráfico de burndown de sprint usando o Analytics e o Power BI com as consultas fornecidas neste artigo. O exemplo a seguir mostra um burndown de User Stories e seus estados.

Captura de ecrã do relatório do gráfico de colunas agrupadas de burndown do Power BI Sprint.

Importante

  • Excluir caminhos de área ou reconfigurar caminhos de iteração causa perda de dados irreversível. Por exemplo, gráficos de widgets de burndown e burnup, burndown de sprint e gráficos de velocidade para equipes com caminhos de área alterados não exibirão dados precisos. Os gráficos de tendência históricos fazem referência ao Caminho de Área e ao Caminho de Iteração conforme foram definidos no momento para cada item de trabalho. Uma vez excluído, você não pode recuperar dados históricos para esses caminhos.
  • Você só pode excluir caminhos de área e iteração que não são mais usados por nenhum item de trabalho.

Para obter mais informações sobre burndown e burnup, e orientação de burndown e burnup.

Nota

Este artigo pressupõe que você leia Visão geral de relatórios de exemplo usando consultas OData e tenha uma compreensão básica do Power BI.

Pré-requisitos

  • Acesso: Ser membro de um projeto com pelo menos acesso Básico .
  • Permissões: por predefinição, os membros do projeto têm permissão para consultar o Analytics e criar vistas.
  • Para obter mais informações sobre outros pré-requisitos relacionados com a ativação de serviços e funcionalidades e atividades gerais de monitorização de dados, consulte Permissões e pré-requisitos para aceder ao Analytics.

Consultas de amostra

Os gráficos de burndown exigem consultar o WorkItemSnapshot conjunto de entidades para obter dados históricos.

Nota

Para determinar as propriedades disponíveis para fins de filtro ou relatório, consulte Referência de metadados para painéis do Azure. Você pode filtrar suas consultas ou retornar propriedades usando qualquer um dos Property valores em um EntityType ou NavigationPropertyBinding Path valores disponíveis com um EntitySet. Cada EntitySet um corresponde a um EntityTypearquivo . Para obter mais informações sobre o tipo de dados de cada valor, revise os metadados fornecidos para o .EntityType

Burndown User Stories para um caminho de área e a iteração atual

Copie e cole a seguinte consulta do Power BI diretamente na janela Obter Consulta em Branco de Dados>. Para obter mais informações, consulte Visão geral de relatórios de exemplo usando consultas 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

Cadeias de caracteres de substituição e detalhamento de consulta

Substitua as seguintes cadeias de caracteres por seus valores. Não inclua parênteses com a {} sua substituição. Por exemplo, se o nome da sua organização for "Fabrikam", substitua {organization} por Fabrikam, não {Fabrikam}.

  • {areapath} - O Caminho da Sua Área. Exemplo de formato: Project\Level1\Level2.

Detalhamento da consulta

A tabela a seguir descreve cada parte da consulta.

Parte da consulta

Descrição


$apply=filter(

Iniciar filtro()

WorkItemType eq 'User Story'

Burndown em histórias de usuários

and startswith(Area/AreaPath,'{areapath}')

Itens de trabalho em um Caminho de Área específico. A substituição por Area/AreaPath eq '{areapath}' retorna itens em um Caminho de Área específico.

Para filtrar por Nome da Equipe, use a instrução filter Teams/any(x:x/TeamName eq '{teamname})'

and StateCategory ne 'Completed'

Filtra os itens concluídos. Para obter mais informações sobre Categorias de Estado, consulte Como os estados do fluxo de trabalho e as categorias de estado são usados em Listas de Pendências e Painéis.

and DateValue ge Iteration/StartDate

Comece a tendência no início da iteração.

and DateValue le Iteration/EndDate

Fim da tendência no final da iteração.

and Iteration/StartDate le now()

Selecione a iteração atual.

and Iteration/EndDate ge now()

Selecionar iteração atual

)

Fechar filtro()

/groupby(

Iniciar groupby()

(DateValue, State, WorkItemType, Priority, Area/AreaPath, Iteration/IterationPath),

Agrupar por DateValue (usado para tendências) e quaisquer campos sobre os quais você deseja relatar

aggregate($count as Count, StoryPoints with sum as TotalStoryPoints)

Agregar por contagem de histórias de usuários e soma de pontos de história

)

Fechar groupby()

Burndown User Stories para uma equipe e a iteração atual

Esta consulta é a mesma usada acima, exceto que filtra por Nome da Equipe em vez de Caminho da Área.

Copie e cole a seguinte consulta do Power BI diretamente na janela Obter Consulta em Branco de Dados>. Para obter mais informações, consulte Visão geral de relatórios de exemplo usando consultas 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 para todos os sprints desde o início de um ano

Você pode querer exibir um burndown de todos os sprints em um único relatório. Essas consultas puxam burndowns de sprint, e seus pontos por história, para todos os sprints desde o início do ano de 2022.

Copie e cole a seguinte consulta do Power BI diretamente na janela Obter Consulta em Branco de Dados>. Para obter mais informações, consulte Visão geral de relatórios de exemplo usando consultas 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

Tarefas de burndown e trabalho restante

Copie e cole a seguinte consulta do Power BI diretamente na janela Obter Consulta em Branco de Dados>. Para obter mais informações, consulte Visão geral de relatórios de exemplo usando consultas OData.

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

(Opcional) Renomear consulta

Você pode renomear o rótulo de consulta padrão, Query1, para algo mais significativo. Basta inserir um novo nome no painel Configurações de consulta.

Captura de ecrã das opções do menu de consulta do Power BI, consulta de mudança de nome.

Expandir colunas no Power Query Editor

Antes de criar o relatório, você precisará expandir as colunas que retornam registros contendo vários campos. Nesse caso, você desejará expandir os seguintes registros:

  • Area
  • Iteration
  • AssignedTo

Para saber como expandir itens de trabalho, consulte Transformar dados do Analytics para gerar relatórios do Power BI.

Feche a consulta e aplique as alterações

Depois de concluir todas as suas transformações de dados, escolha Fechar & Aplicar no menu Início para salvar a consulta e retornar à guia Relatório no Power BI.

Captura de ecrã da opção Fechar e Aplicar do Power Query Editor.

Criar o relatório de gráfico de colunas empilhadas

  1. No Power BI, escolha o relatório Gráfico de colunas empilhadas em Visualizações.

    Captura de ecrã do relatório Visualizações e Seleções de Campos do Power BI para o Sprint Burndown.

  2. Adicionar DateValue ao Eixo X, clique com o botão direito do rato e selecione DateValue, em vez deDate Hierarchy

  3. Adicionar Count ao eixo Y.

  4. Adicionar State ao eixo Y.

O relatório de exemplo, que exibe burndown em Pontos de História e Contagem de Histórias.

Captura de ecrã do relatório de gráfico de colunas agrupadas de burndown do Power BI Sprint.