Team Foundation Server plays a very important part in Team System. It is the collaborative suite that supports the entire software development life cycle (SDLC). Prior versions of Visual Studio supported developers only and everyone else had to rely on third-party products to achieve any kind of integration. The different tiers of Team System can be further broken down into its client and server components.
Brian Harry has posted on his blog a Visio diagram outlining how Team System was deployed within Microsoft. Specifically, it maps out the overall topology of both server and components. You can download the Visio file at the following link: http://blogs.msdn.com/bharry/archive/2006/08/22/712746.aspx.
Here is a listing of Team System's core client components. You can't really talk about a server without discussing how the clients interact with the server (of course). Along with these clients, the Team Foundation Server API (also known as the Team Foundation Core Services) contains methods that allow you to programmatically connect to Team Foundation Server (and create your own custom clients).
Visual Studio 2005 Team Editions - Even though this is a book on Team Foundation Server, we would be remiss not to cover client features and how they integrate with Team Foundation Server. Refer to the individual editions below for details on the coverage level.
For software architects - Unfortunately, this book has little to no coverage of the architecture tools. If you are interested in Team Edition for Software Architects, we would like to refer you to Professional Visual Studio 2005 Team System (Wrox Press, ISBN: 0764584367).
For software developers - For developers, the book covers version control management (Chapter 12) and extensibility (Chapters 9 through 11).
For software testers - For testers, refer to Chapter 15 for information about the Team Test Load Agent. We also cover test case management to a limited degree in Chapter 13.
For database professionals - Chapter 8 is devoted to Team Edition for Database Professionals and how the data development lifecycle ties into the software development lifecycle.
Visual Studio 2005 Team Suite - Visual Studio 2005 Team Suite integrates the features of Team Edition for Software Architects, Team Edition for Software Developers, and Team Edition for Software Testers. Starting late 2006, Team Suite will also include Team Edition for Database Professionals.
Team Explorer - Team Explorer ships on the Team Foundation Server media and provides connectivity between Visual Studio 2005 and Team Foundation Server. You can learn more details about Team Explorer in Chapter 2.
Third Party Tools - There are a number of third-party companies developing tools for Team Foundation Server. When appropriate, we have provided you with links to these complementary tools.
MSSCCI Provider (for Visual Studio 6.0 and 2003) - Many companies have made investments in .NET 1.0 and .NET 1.1, and need to support Visual Basic 6.0. The Microsoft Source Code Control Interface provider allows these IDEs to connect to Team Foundation Server.
Microsoft Office Excel 2003 - Microsoft Excel is used as a project management tool within Team System. (A developer or any other team member can also use it to manage their work items.) You can learn how to make the most out of Excel in Chapter 13.
Microsoft Project 2003 - Microsoft Project has special capabilities and limitations that are documented in Chapter 13.
These server components provide the infrastructure backbone for Team System. In this book, we examine each one of these in detail:
Team Foundation Server - Team Foundation Server is comprised of a number of components and services. The installation of the product is covered in Chapter 2, you learn about backup and recovery strategies in Chapter 5, right up to retirement in Chapter 17.
Team Foundation Build - Team Foundation Build provides an automated, integrated build experience. You can learn a great deal more about Team Foundation Build in Chapter 3.
Team Test Load Agent - The Team Test Load Agent is composed of an Agent and Controller, which allows you to test Web applications against a profile of a thousand users or more. There is coverage of these tools in Chapter 15.
Team Foundation Server Proxy - Team Foundation Server Proxy is a tool that helps improve the performance of Team Foundation Version Control over HTTP. We cover the proxy in Chapter 15.
Team Foundation Core Services (TFCS) - Team Foundation Core Services is a set of services and APIs that allow you to extend Team Foundation Server. You can learn more about extensibility in Chapter 9.
Active Directory domain controller - If you are working within a big enterprise, Active Directory (AD) is essential for the management of your user's roles and credentials. You'll find deep coverage of AD in Chapters 2 and 4.
Mail server - Team Foundation Server has the ability to leverage a mail server to send out alerts to your team members. The alert and eventing infrastructure is covered in several chapters, most notably in Chapter 14.