Azure DevOps - Maximum backlog levels allowed is 5 - azure-devops

I have a number of teams in the Azure DevOps (Visual Studio Online) tracking a different type of work item.
Currently i have created 3 different backlogs for 3 different teams.
There is 2 default backlogs 'Epics' and 'Features', hence total of 5 backlogs.
I'm trying to added a 4th team and now trying to add a backlog for that team.
But i'm getting the message "You have reached the maximum number of backlog levels".
I also learnt that maximum number of allowed Portfolio backlog levels defined for a process is 5.
I also tried to edit the default backlog, which would not let me de-select the work item selected in it, so i could rename it and add the new work item it needs to track.
So is there any other way i could achieve that or to increase the number of portfolio backlog levels.

By default projects, your hierarchy is shown as below:
If you need more than two portfolio backlogs, you can add up to two more for a total of five backlog levels. (limits mentioned here. Portfolio backlog levels defined for a process 5)
This will increase the totally level to 7 (3 customized+ Epic+Feature+PBI+Task)
You can add them by customizing your process, adding new work item types, and then configuring your backlogs and boards.
You can also add or modify the fields defined for a work item type (WIT) or add a custom WIT.
After this it could be:
For details, see Customize an inheritance process and Customize your backlogs or boards (Inheritance process).
However, this is backlog level not designed for multiple teams.
Your team's product backlog lists only those items whose area path matches those assigned to your team.
For details, see Define area paths and assign to a team.
Then you could simply switch backlog for different teams here:

I think you may be going about this the wrong way with respect to Azure DevOps.
You should look into having an Area Path for each Team. See here. For instance in my company we have two Teams say; Alpha and Omega and we've set up two Area Paths as Company\Alpha and Company\Omega. You can then manage each teams backlogs, iterations, work items etc. separately. See here also. We use the same set of iterations across all teams and when we move work items between teams we change the Area Path of the work items.

Related

The order column in Azure boards

I am using Azure DevOps boards and when I navigate to Backlogs in Azure Boards, I see a column named Order.
When I check/open the work items, they don't have a field named "order". There is no value seen for that column for us. We are not sure whats the purpose of such field/column and where we can enter the values for it.
Kindly share your information on this.
This column represents a sequence of your work. The mapped work item field depends on your team project process template: Backlog priority or stack rank order
As you drag and drop items within the backlog list, a background
process updates the Stack Rank (Agile and CMMI processes) or Backlog
Priority (Scrum process) fields
Additionally, the backlogs do not show the order if you enable parents in the view.
Helpful link: Fix display, reordering, and nesting issues

Is there a way to total estimates and completed work in Azure DevOps queries?

We've come across a number of issues with our Azure DevOps projects and are trying to surface relevant information to the management team with queries and dashboards on projects. Mainly it's just been counting the number of results for particular queries, e.g. when a status hasn't changed in 30 days, number of blocked items, total items in current sprint etc.
What we've been asked for though is to be able to rollup the original estimate total for all work items, and also roll up the completed work as another value. The queries and other things I've seen only seem to be able to count, rather than sum up, but some of the widgets I've seen do appear to sum things for graphs (but I'm just looking for the values).
Can anyone suggest anything?
I imagine that you have two different options here. The first being is that you could leverage the new roll-up columns and aggregate some of this information on the backlog view. Some of this makes assumptions about how you are grouping and the hierarchy of your work items.
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.
Choose from the menu provided.
Progress bar displays progress bars based on the percentage of associated descendant work items which 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. Rollup column
menu
Remaining Work of Tasks shows the sum of Remaining Work of tasks that are linked to the parent item.
If you wanted to instead see the summarized details on a dashboard, I'd recommend downloading the Query Tile PRO marketplace extension. Let's say you had a query already defined:
The options support sums based on query fields:
And so you have the tile with the summation value you are wanting. Just replace with other fields that you might need.

How can we work on multiple sprints at the same time if we only have one team?

We have a small group < 4 but work on several different applications that we support. Each application gets its own Git repo, but as for managing the effort I really don't want to setup a separate team as well for each product.
Questions:
- For a small group working on several different products (eg. websites, services, utilities etc), can a single "team" within one project allow us to work on 2 sprints at the same time that are within different area paths?
- If I have already defined multiple teams, can I migrate all the content into the backlog of a single team?
- Assuming one team and multiple area paths, the project "hierarchy" would look something like this, correct?
Project
|__Team
Area-1
|__Sprint 1-n
Area-2
|__Sprint 1-n
Area-3
|__Sprint 1-n
[ update ]
On further inspection looking at the docs, the iterations can have their own paths. It seems that if we want to manage 2 or more simultaneous sprints or overlapping sprints that involve different products, it makes sense to go ahead and configure a team per product or possibly one team per "business area" (eg. Sales, Operations, Warehouse etc). Within a business area, our group would only have 1 active sprint at a time, which seems straightforward, compared to trying to manage multiple sprints within the same team.
https://learn.microsoft.com/en-us/azure/devops/organizations/settings/set-iteration-paths-sprints?view=azure-devops
So the better approach might be multiple teams, with one (default) area per team and a iteration list for each team.
The Team's areas and the Team's iterations are disjointed. I would think you could assign the different product areas (websites, services, utilities) to the team but then have just a single iteration list instead without trying to segregate the iterations by area. This won't work if the sprint dates for the different areas are different, but if they are different I don't think any approach you try to leverage in app will work.
Areas:
Sandbox
|__Team
|___Websites
|___Services
|___Utilities
Iterations:
Sandbox
|__Sprint 1
|__Sprint 2
|__Sprint 3
I don't think you will get to a good solution if the different product areas have different start/end dates for the sprint even if you could make something workable using the tool.

How to add an existing work item to a board?

How do I add an existing work item to a the default board?
I can create work items under the Work Items section and I can also create work items by clicking + New Item in the Boards section.
But how can I add an existing item to that board?
I cannot find a setting, field, option anywhere to do that.
This is an organization Azure DevOps.
Your existing item needs to be "visible" to the board by existing in the appropriate iteration path and area path.
Without breaking out all the organization settings that allow you to detail this stuff, the easy way to know the value you need to use is to create a new item on the board you want, and use the values it gets in iteration path and area path on the existing item.
Illustrations:
Make sure your project has areas and iterations that make sense for you. Typically your project will start out with a root iteration path and three child iteration paths:
Iteration 1
Iteration 2
Iteration 3
Iteration paths are used to handle both backlogs and sprints for teams.
The combination of area path and iteration path allows admins to divide sections of the global backlog among the teams that are doing the work.
Think of the connection like a grid. If the rows are iteration paths, then the areas are the columns that divide that row (or vise versa). Multiple teams can operate on the same row (iteration/backlog), but they will only see the work items that also fall inside their assigned columns (areas).
When you create a team the area can be created for you, or you can assign an area to a team after it is created.
You can also change the backlog iteration for a team.
Now your team has a board and a backlog. Again, for your first team, this is done for you.
You have obviously already created some work items, so you'll need to move them into the right area and iteration to make them show up.
This can also be done in bulk from another team backlog
You can configure the board on what to be displayed.
By default, it's the Backlog items, so you will see the work items from your backlog (according to the sprints).
You can't just add a particular work item to the board.
See more details here.

Synchronize custom column state between Area Paths in VSTS

I have a VSTS project based on the Scrum process with two Area Paths for frontend and backend teams. For all Backlog item boards I created a new column to indicate what is 'ready for testing' (splitted in doing and done). For the state mapping I could only chose 'Commited' from the dropdown list.
The root area is configured to include both sub-areas and should provide a broad overview for the product owner about the progress and the tester to see what he needs to do.
My problem is, that when a team moves an item to this column, the change of state is not reflected on the general board. How can I achieve this? Or what are best practices to deal with additional states like 'ready for deployment' and 'ready for test'?
Kanban board states are "per team" so you won't see the change reflected in another team's board (in this case, the top level default team).
If this was on-premise we could add a new underlying State to the Work Item so it worked across teams. I believe this is coming for VSTS but it's not there yet.
VSTS and TFS 2015 Update 1 allow you to Query by Kanban board changes which means you could have a Work Item Query which shows all the items across teams that are Ready For Test on the board.
Depending on exactly what you want to see in your query results, you'll probably have to do something slightly clever with grouping the clauses of your query - ie. (PBI Area Path = Area 1 AND Column State = Ready for test) OR (PBI Area Path = Area 2 AND Column State = Ready for test)