Display rollup progress or totals in Azure Boards
Azure DevOps Services | Azure DevOps Server 2022 | Azure DevOps Server 2020
Rollup columns allow you to view progress bars or totals of numeric fields for descendant items within a hierarchy. Descendant items correspond to all child items within a hierarchy. You can add one or more rollup columns to a product or portfolio backlog, but sprint backlogs aren't supported. For more information, on linking work items in a hierarchy, see Link type reference/Work link types.
For example, here we show Progress by Work Items which displays progress bars for ascendant work items based on the percentage of descendant items that have been closed. Descendant items for Epics include all child Features and their child or grand-child work items. Descendant items for Features include all child User Stories and their child work items.
Important
Rollup data supports progress bars, counts of work items, or sums of numeric fields within a project. Child items that link to a different project aren't counted within the parent rollup calculations. Also, links to test cases or test artifacts are also not included in rollup calculation. These items are linked using a test-specific link types.
Note
You can also view rollup progress from the new version of Delivery Plans that is available in public preview for Azure Boards. This feature is now part of Azure Boards and not an extension. To enable it, see Manage or enable features and turn on New Delivery Plans Experience. For more information, see Review team Delivery Plans.
Prerequisites
- Rollup column data is calculated from the Analytics service.
- To add a rollup column, the Analytics service must be enabled on your on-premises Azure DevOps Server. For more information, see Install/uninstall or enable/disable the Analytics service.
Rollup and hierarchical work items
The default set of backlog work items that supports a natural hierarchical grouping varies depending on the process chosen for your project. The easiest way to group work items into a hierarchy is by mapping them, or adding them to the parent item on a board. For more information, see Organize your backlog, map child work items to parents and Board features and epics.
The following image shows the Agile process backlog work item hierarchy. Each team can configure how they manage bugs—at the same level as User Stories or Tasks—by configuring the Working with bugs setting.
Open a product or portfolio backlog
Each user can set their own column options that persist for each backlog across the user's sessions.
Open a product or portfolio backlog. Optionally, enable Show parents from your view options. Even if child items aren't listed, rollup for them displays.
Tip
Consider opening a portfolio backlog and choose to view In Progress Items and Completed Child Items. That way, you can check the State value of items against the rollup value.
Choose Column options, or choose the
actions icon and then select Column options.
Tip
Remember that the Column options you choose are for the selected backlog level. They persist across your sessions until you change them.
Add a rollup column
In the Column options dialog, choose Add a rollup column, select From quick list, and then choose from one of the options listed.
Note
The menu options vary depending on the process chosen for your project, the backlog level you've selected, and whether or not you have the Show parents view option enabled.
Choose from the menu provided.
- Progress bar displays progress bars based on the percentage of associated descendant work items that have been completed or closed.
- Total number displays the sum of descendant items or the associated fields of descendant items. Totals provide a measure of the size of a Feature or Epic based on the number of its child items. For example, Count of Tasks shows the sum of all tasks that are linked to parent items. The active or closed state is ignored.
For example, the following image shows the Count of Tasks for the parent user stories is 2 and 4, respectively. The Count of Tasks is 6 for the parent Feature and Epic.
Remaining Work of Tasks shows the sum of Remaining Work of tasks that are linked to the parent item.
Tip
Reminder that when a task is closed, the Remaining Work field is set to zero.
Analytics, latency, and error states
Rollup data is calculated from the Analytics service. When there's a large amount of data, it's possible to experience some latency in displaying rollup. If you hover over the
rollup icon, you can determine the state of the data.
If an error occurs in retrieving rollup data, you'll see an
info icon and empty rows. Errors indicate when the Analytics data was last updated. This means that the Analytics services are still processing changes made which may affect rollup calculations. Once the Analytics data is up to date, the rollup columns refresh with the latest data.
For more information about the service, see What is Analytics?.
Change the column order or remove a rollup column
To change the order of the fields, drag-and-drop the field where you want it within the set of selected fields. And, to remove a field, choose the .
Rollup of custom work item types or custom fields
If you add a custom work item type or field to a backlog level, you can view rollup based on those options. For example, the Customer Request type is added to the Requirements category, and a Count of Customer Requests is shown in the following image.
From the Column options dialog, choose Add a rollup column, select Configure custom rollup option.
Choose the options you want from the Custom Rollup column dialog.
Choose OK. and then OK to complete your operations.
Tip
If you add custom fields or custom work item types, you must refresh the backlog page to reflect your changes.
Use keyboard shortcuts to change the column order, column width, or sort options
You can change the column order, column size, or sort options by using the following keyboard commands:
- To change the column order, select the field and drag it to a new location
- To resize a column, choose the column divider to the right of the field and drag to a new location