Work Item Tracking
The process of developing software on a team can be as difficult as writing the actual code. Developers want to be free to focus on writing great code. Clients, project sponsors, project managers, testers, architects, even other developers, on the other hand, are all interested in tracking the progress of that code and determining the overall state of the project. Keeping everyone in the loop requires time-consuming meetings. These meetings generate reports that are often out of sync with what is really happening before the target audience has a chance to review them.
A similar challenge is getting actual, meaningful metrics. This can be problematic at best. Project managers are often left to interpret the ramblings of team members as they take turns reporting their progress in weekly meetings. This data, by its very nature, represents only a small view of reality on the project. Therefore, in the absence of real statistical measures, a divide begins to open between what is happening on a project and what is being reported.
Many software development shops have become good at managing this divide. They become better and better at estimating, reporting, and tracking progress. To do so, they have implemented methodologies such as RUP, MSF, CMMI, eXtreme programming, and so on. These methodologies have been an important part of maturing the software development process. However, the tools to support these methodologies within a development platform have been lacking, too expensive, not cohesive, or all the above.
With Team Foundation Server and work items, Microsoft is addressing the desire for developers to get back to writing great code while still giving other team members the information they need. This chapter covers work items in depth. It presents work items from the perspective of various team members in the Software Development Life Cycle (SDLC).
Review Chapter 17, "Team Collaboration and Visual Studio Team System," for a better understanding of the methodologies that ship with TFS. This chapter focuses specifically on work items and how they relate to the development process and Visual Studio 2005. Where appropriate, we discuss work items in context with MSF Agile and CMMI. However, work items are only part of the overall methodology picture.
When you define a project website, Team System creates pages that define process guidance around the selected methodology. These pages are required reading and can provide a quick reference if you ever lose your context within the methodology.