Is there a way to customize capacity planning in TFS2015? I would like to set capacity per iteration for the whole team or every single person. Is there a way to accomplish that without setting capacity per day for each user?
Thanks.
There is no way to do this.
You have to add the same value for each team member at the dart of the iteration.
You should be able to script it.
Related
Want to build a report showing each team member's percentage contribution per a completed Sprint.
We break up the work in Tasks and assign a Remaining Work value to indicate the time needed. The problem then is that remaining value is clear or decreased as the sprint progresses.
Have been looking for a way to find the original remaining value, so I can use it for reporting post the sprint. All in an effort to try and build a relation between originally set Effort and Actual hours.
Any assistance would be appreciated.
First I have to say this, as a Professional Scrum Trainer with Scrum.org, we highly discourage the breakdown of effort to the individual team member as part of standard reporting. Where scrum is concerned, the individual contribution is of little consequence outside of the team context, and inside of the team we feel that team members should be able to openly discuss the perceived value added by other team members as part of their Sprint Retrospective.
Secondly, because TFS can't register multiple users being assigned to a task, nor support the trackign of hours spent by multiple team members on the same task, your report will either be incomplete at best, cause additional administration overhead in most cases and may even cause team members to not work together at worst.
That said...
TFS tracks all assigned and saved values for work item fields. Using the API it's easy to iterate through the work items and retrieve their previous Revisions. As an alternative, the API offers asof work item queries which allow you to track what the values of a workitem were on a specific date. This information is also store in the TFS datawarehouse, if you are using it, aggregated at the daily level.
But if you need accurate tracking of time spent, the only reliable way is to add the Completed Work field to your work item type definition:
Completed Work
The amount of work that has been spent implementing a task. You can specify work in hours or in days. There are no inherent time units associated with this field.
Reference name=Microsoft.VSTS.Scheduling.CompletedWork, Data type=Double
Task, Bug
This is required to cover cases where the original estimate was lower than the actual time spent, remaining work would in that case remain the same, or even increase, while a team member had spent time on that item. without also tracking CompletedWork, this data is lost.
The Agile and CMMI template use this field by default. The Scrum template doesn't, you can guess why based on my initial cautions.
We have a project with multiple teams managed in TFS 2013 update 2.
The problem is that if i have two teams, and a person works 5 hours in each, when i look at the teams parent, i dont see the value automatically updated to 10.
In other words if i make a mistake and define a capacity that sums up to more than the actual work day, there is no way for me to see it.
I can develop a server extension that will update the capacity of the parent team, but i am stil hoping for an easier solution.
There currently is no solution. Team Capacity is not easily queryable, the UI has no option to do it and it's not part of the Data Warehouse.
TFS kind of assumes that a team member is part of one team. And one team only. And have work flow to the team, instead of people swicthing between teams. I suggest you file a suggestion on Uservoice.
I am filling the product backlog for a new product with user story PBIs. As I write, I realise that some PBIs are dependent on others being completed first. I cannot use the order of the backlog because it gets changed by others depending on client requirements. I want it to be obvious that one PBI depends upon another being completed first. Inter-PBI links are possible but it's not clear what a link between PBIs represents.
What is the best way to get TFS 2012 (in the cloud) using the SCRUM template to represent PBI dependencies?
Does anyone use hierarchical PBIs or tags for this purpose?
Thanks in advance.
There is a WI link type for Predecessor/Successor. This is how I typically do it. It doesn't make it super-obvious, but the information is captured somebody just has to go to the WI Links tab to see it.
I would recommend that you get all of the people competing for priority in the backlog to appoint a single Backlog Owner who understand the dependencies ( sounds like you). That person can then order the backlog taking into account both customer priority and dependency.
I have in the past added a Customer priority field to the PBI & Bug to allow the Sales\Customer Services guys to order that field to their hearts content in excel.
That way they are not interfering with your order but still providing the influential and valuable customer order.
In TFS when I setup a new iteration, I start out by creating "Requirement" work items, which are then associated with multiple child "Task" work items. On the task work items I put the estimate for the task and then as the task is worked on the completed and remaining hours are updated.
What I want is an excel report that will show a breakdown of iteration, requirements, and task, with the hours totaled at the requirement and iteration level.
I envision this to be some kind of pivot table but I can't figure out how to pull in the data so I can relate it.
There is no rollup available out of the box in TFS 2010. You could write a macro in Excel to calculate the rollup hours and pivot on that.
You could also use the SSRS report User Story Overview to see the value, but that value is delayed (which is probably not what you want).
You could also take a look at the Project Server Integration CTP, which has the rollup feature.
If instead of Excel, you use an Agile planning web application for TFS such as Urban Turtle, you will obtain rollup feature at the requirement and iteration level.
According to Microsoft, the premier Agile tooling for TFS is Urban Turtle. Discloser: I work with the Urban Turtle team. So do not take my words. Instead, read what Brian Harry, who is the Product Unit Manager for Team Foundation Server, said about Urban Turtle: "...awesome Scrum experience for TFS." You can read Brian Harry's blog here
We are using VS 2010 and TFS 2010 with the Microsoft Scrum Template.
We use the Team Queries for the Current Sprint like the Sprint Backlog query.
The problem is when we move to sprint 2 the "Current Sprint" still points to sprint 1.
Is there a way to to tell TFS that we are now currently in sprint 2 and have the queries use a variable to run against instead of hard-coding the sprint?
For example: If you look at the screen shot below you will notice that the definition of the query uses a variable called "#Project" for the team project. Is there a way to have a variable for the sprint?
Tom,
What you are asking for is not available in TFS 2010. There are not even dates on the iterations, so TFS does not know what the current iteration is.
In TFS11 (vNext) we have added the dates on the iterations. It now knows in which iteration you are, and this is also reflected on the backlog page in web access. In the preview version that is out now it is however not possible to add a filter clause to your queries to filter on the current iteration (something like #CurrentIteration). We have heard strong feedback to add this in the product before it ships. It is also very high on our wish list, but we need to fix other things first before we can ship.
You can add this request on User Voice. If the idea gets lots of votes it makes it easier to build a case that we need to put this in. But we cannot promise anything.
Ewald - TFS Program Manager
Almost all answers here say that you either need to wait until Visual Studio implements #CurrentSprint token or to change all existing queries manually.
I found another great practice that might help you which is explained here:
http://intellitect.com/transitioning-between-sprintsiterations-with-tfs.
Try to create a “release” called “Current” and move the specific current sprint under it. It's much easier and quicker than dealing with queries every time you start a new sprint.
You could modify the work item query programmatically: http://www.ewaldhofman.nl/post/2010/03/09/TFS-SDK-2010-e28093-Part-6-e28093-Replace-text-in-all-Work-Item-Query-Definitions.aspx
I've only ever read documentation/guidance (links unavailable at the moment), that said at the start of a new sprint there are a few various steps you need to take in TFS, e.g:
create the new sprint/release nodes
set the applicable PBI work items' iteration to the current sprint
set the applicable PBI work items as committed
update all the "Current Sprint" queries to reflect the new sprint number.
I've never seen documentation on doing the last step list (or any of them) in a hands-off (automatic) way. That said, I'm not suggesting it's not possible, just stating that I've never seen guidance on how to do it, but have seen plenty of guidance on doing it manually.
You could use a plugin called TEK workitem. TEK workitem is a Visual Studio extension for TFS that allows bulk edit of query definitions, besides other features like open in Visual Studio workitems and queries from a Hyperlink, delete Workitems from Visual Studio UI, etc.
You can download a demo from Visual Studio Gallery: TEK workitem
I am pretty recent to TFS Scrum 1.0 but this is what I do.....
I am currently managing my sprint dates outside of the template
I use the 'Current Sprint > Query’s' to give myself and team quick access to the queries on the current sprint.
When I finish a sprint and want to increment to the next sprint and have the queries under 'Current Sprint' point correctly I do the following:
Edit each query under ‘Current Sprint’
Right lick and select ‘edit query’
You may see an error dialog if you have changed the hierocracy of your iterations. OK to click through to the query editor.
Set the value of ‘Iteration Path > Under’ by selecting the correct sprint from the drop down (populated with your iterations.
Save the query and bob’s your anty…. Queries will display you current sprint. Just repeat each iterations.
Hope this helps....
I found in TFS 2013 that if you uncheck the sprint/iteration the one with the earliest dates get assigned to current automatically. If you want to keep the old one visible, move the dates out a year or so and it drops to bottom of list, but out of scope.
This is TFS online 2017
Step 1) Settings-> Work->Default team settings
Step 2) and then 'Default Iteration'->Change
Keep in mind that next time you might be starting in Step 2. So Step 1 is optional.