How Microsoft/DevDiv uses TFS - Chapter 4
In the previous posts, I spoke about how we used TFS to implement the process.
In this post, I'll talk about how we went about planning a release.
On the feature record, we had a "Planning" tab:
Zooming in a bit:
What we did is have people enter an estimated cost for each feature in the work item. Then we pulled them into a stack-ranking spreadsheet that looked like this:
This is a TFS-bound Excel spreadsheet with some formatting options. Note the following:
- The ballpark estimates (and all the other data) are pulled directly from TFS. This was great, because all the estimates were entered separately, but could be pulled into a single place for planning
- We stack-ranked all the features, top-to-bottom.
- We added some logic to the spreadsheet to compare total cost with team capacity. Teams turned yellow if they used up more than 70% of their capacity, and turned red if they used up over 100%.
This gave us a very quick view of what could and could not be done, without a lot of work or schedule-crunching. It helped us determine where the cut-line was, and we played around by moving certain features up and down, to get a line we felt comfortable with. For example, some larger features were just moved down, simply because it allowed several smaller, key features to be above the cut-line.
Honestly, after a while, it felt like a video game. We called it the yellow/red game, because it was a trick to see how far we could push down the yellow and red! :-)
Next post: How we tracked progress