Synchronize custom column state between Area Paths in VSTS - azure-devops

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)

Related

Show issues instead work items in Sprint's taskboard

I have a azure boards project with simple flow.
We only use Epics / Issues, almost never work-items for sake of simplicity.
Can I customize the Sprint Taskboard (or create new board), so that it will show Issues in the state columns instead workitems?
You can customize the Product backlog Board to do exactly what you want. In which case you could completely ignore the "Sprints":
If needed add additional columns:
To end up with something like this:
You may create a child process based on Agile: Create and manage inherited processes and assign your project to it.
After that, you may assign Issue to any backlog level... as example:
open the task backlog level:
Add issue to the task level:
Use it in the sprint:

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

Azure Devops Tracking committed vs actuals

My organization is trying to find an out of the box way with Azure DevOps to see which features were 'committed to' at the start of the release, and which are delivered. The Velocity report would be perfect, except Features are assigned to areas that are configured to run off of sprints that are child-iterations of larger release-iterations, and we want the data at the release-iteration level.
We're able to build queries that can mostly deliver this, but that method doesn't track changes, just shows you a current point in time view of how things are.
The goal is to have data we can use to evaluate if we're making commitments we can keep.
How have other organizations tackled this sort of problem? How do you tie committed vs. actuals at the Feature level?
I could understand your requirements. But based on my test, Velocity Report has some limitations:
For example:
If the Iteration Path has Child Iteration, it will show the child Iteration on Velocity Report. As you said , release-iteration will not show in the Report.
So it cannot meet all your needs.
I tested some related extensions and existing charts, and it seems that there is no tool that can improve or replace the Velocity Report .
For a workaround:
For Child Iteration, you still could use the Velocity Report to record the process.
For the Parent Iteration, you could create different queries to show the process(Planned
, Completed,Completed Late and so on). You can use query to get the work item list of the corresponding state.
Here are examples:
Planned :
Completed:
...
Then you could add them to the Dashboards(Query Title Widget):
On the other hand, this requirement is valuable.
You could add your request for this feature on our UserVoice site, which is our main forum for product suggestions.

Azure DevOps - Maximum backlog levels allowed is 5

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.

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.