Metrics are undoubtedly one of the most important features of Team System. Team System's reporting infrastructure provides visibility and transparency within your Team Project. It is the key area to help you effectively manage software development projects using software engineering techniques. For example, you can track the velocity of your team and react to potential bottlenecks (instances of special cause variation) using the Remaining Work report.
The Team System reporting infrastructure has value to all the members of your team: the project manager can use summary reports to understand the big picture; developers and testers can look at meaningful data (such as code coverage) to get a view of their particular slice of the project.
You can look at a project metrics two main ways. The traditional (also referred to as waterfall view), shows a view of common project management elements such as time, resources, functionality, and quality. In this project management approach, you track the progress of tasks against set requirements. Within a time scope, your developers will try to develop an application against a range of specifications. In his book Software Engineering using Visual Studio Team System, Sam Guckenheimer refers to this approach as "Work Down."
Team System provides you with the tools to approach software development using a completely opposite "Value Up" approach - a combination of Agile techniques mixed in with established software engineering practices. In "Value Up," rather than prescribe the flow of work, Team System provides a descriptive view of your work. In this paradigm, you can measure the true velocity of your team and other metrics such as bug rates and code churn.
You don't necessarily need a deep technical knowledge of SQL Server Reporting Services to create reports (for example, Excel pivot table reports). However, what you do need is a solid understanding of how to store your data in the data warehouse and how to extract it. If you look at it in statistical terms, only a small number of people (approximately 5 percent) in your organization will know how to create a useful report without additional training or books. You can create ad hoc reports that can provide historical (and current) data. Team System also ships with a number of preconfigured reports that are integrated within the MSF for Agile Software Development and MSF for CMMI Process Improvement process templates.
At the heart of Team System's reports is SQL Server Reporting Services and SQL Server 2005 Analysis Services. Data warehousing, business intelligence (BI), and advanced report customizations are complex topics that can easily take up several books. The goal in this chapter is to provide you with enough working knowledge of SQL Server Reporting Services and OLAP to work with reports within the context of Team System.
If you want to go really deep on the subject, we suggest you read books such as Professional SQL Server Analysis Services 2005 with MDX (ISBN: 0764579185) and Professional SQL Server 2005 Reporting Services (ISBN: 0764568787) published by Wrox Press. The product documentation (http://msdn.microsoft.com) and the process guidance in MSF for Agile Software Development and MSF for CMMI Process Improvement will provide you with the fundamental data points around reporting.
To be able to leverage the Team System reports, it helps to have a good understanding of OLAP, metrics gathering within a mature process and process improvement. You should read and absorb other chapters of this book to get a solid understanding of how process is handled within Team System. For example, if you are not sure how work items are managed through the lifecycle, how can you identify trends and troubleshoot problems?