Team Foundation Server Extensibility
You can customize and extend Team Foundation Server to meet your specific needs. The Team Foundation Administrator's Guide in the Team Foundation Server Help documentation shows you how to customize Team Foundation Server functionality by modifying XML schemas. The Team Foundation Server SDK shows you how to extend Team Foundation Server functionality by writing code.
Before writing code to access the object models described in the Team Foundation Server SDK, you must become familiar with the customization techniques. You might discover that customization gives you all the extensibility that you need.
Customizations
You can customize a Team Foundation Server installation by using a plug-in such as the Reports plug-in or by editing existing XML documents. The information that you need is in the Team Foundation Administrator's Guide in the following sections:
Customizing Work Item Types
Customizing Process Templates
Customizing Team Foundation Build
Extensions
You can extend a Team Foundation Server installation by coding to access the Team Foundation Server object models in order to build add-ins and integration components that add value and round out the Team Foundation Server product line. An SDK programmer might be a developer tools vendor, an independent software vendor (ISV), or another solution provider. An SDK programmer might use the SDK to create specialized tools such as the following:
An adapter that integrates an existing tool set with Team Foundation Server.
A customized Team Foundation Server development solution for a vertical industry.
The information that programmers require in order to extend Team Foundation Server is documented here in the Team Foundation Server SDK.
A comprehensive solution could involve both customizations and extensions. In such cases, you will need both the Help documentation and this SDK documentation.
SDK Projects
The goal of the Team Foundation Server SDK is to provide documentation and samples that help you build on the Team Foundation platform. For example, you can use the Team Foundation Server SDK to help you complete the following software development projects.
Write a Web client for work items.
Write an add-in that integrates your requirements management tool with Team Foundation Server so that requirements in your tool can link to work items, changesets, and test results in Team Foundation Server.
Write an integration adapter between the Team Foundation work item tracking component and your company's help desk application so that help requests are synchronized automatically with product team work items.
Write a tool to help customers edit Team Foundation Server process templates with a graphical user interface to simplify managing workflow for a Team Foundation server.