| By Dennis Minium | Article Rating: |
|
| January 28, 2005 12:00 AM EST | Reads: |
22,792 |
Architected for Extensibility
Each tool offered in Team Foundation is highly customizable and automatable. Work item definitions, source control policies, build scripts, process templates, and programmability interfaces all enable customers to tailor their Team Foundation installation to their needs. In addition, at the core of Team Foundation is a set of mechanisms intended to enable outside tools to integrate into the Team Foundation environment as first-class citizens.
These shared Team Foundation integration services are depicted as blue boxes in Figure 2. The green boxes represent the elements a tool builder can provide to leverage the Team Foundation architecture. The orange boxes show the tooling included in Team Foundation.
Team Foundation's shared services include the following:
- The linking service enables tools to establish loosely coupled relationships ("links") between the data elements they hold. For example, in Team Foundation the relationship between a defect work item and the source code that was changed to fix the defect is held as this sort of link. To participate, a tool must implement methods that expose their data as Team Foundation "artifacts" and respond to queries against them. Using this facility a tool can participate in a relationship that it wasn't initially designed to recognize.
- To use security service supports Team Foundation-specific security groups, that can be used to collect Windows identities for permission assignment. These groups which are local to a Team Foundation Server, can be administered without the help of the IT department. When a new tool is introduced to Team Foundation, it should respect these groups by using the group security service API. The security service also provides authorization services. Tools that do not offer their own authorization mechanism have the option to use the security service to secure objects and establish permissions.
- The eventing service is a Web service-based pub/sub mechanism. As you'd expect, tools can raise events to the eventing service. Subscribers can register to receive notification when an event matches their subscription criteria. A notification recipient can either be a Web service or an e-mail address. When it's a Web service, the subscription includes the URL of a Web service to be called when a notification is to be delivered. When it's an e-mail address, a notification can be delivered through e-mail via an SMTP server.
- The classification service works in coordination with the linking service to allow classification of Team Foundation artifacts according to predefined taxonomies. This enables tools in which the artifacts do not share a common "natural" taxonomy to organize their data in such a way that cross-tool reporting along common axes is possible. For instance, if work items are naturally organized by team and tests are naturally organized by component, tests can additionally be organized by team to enable them to be reported alongside work items.
- When a new tool is introduced to Team Foundation, its artifact types, link types, event schemas, and service interfaces are registered via the registration service. Clients of the new tool discover its location by asking the registration service.
- For a consistent client experience, use VSIP to integrate the UI into the IDE. Alternatively, you can build a stand-alone .NET application that accesses the application tier using the intelligent proxy layer.
- Add creation of your tool's artifacts to the Team Project Creation Wizard (and, by implication, the process template that drives it).
- Make your tool and its data visible as nodes on the Visual Studio Team Explorer.
- Use the warehouse dynamic schema modification facilities to extend the warehouse with your tool's data. Then build a warehouse adapter to pull your tool's operational data into the warehouse structures.
Published January 28, 2005 Reads 22,792
Copyright © 2005 SYS-CON Media, Inc. — All Rights Reserved.
Syndicated stories and blog feeds, all rights reserved by the author.
More Stories By Dennis Minium
Dennis Minium is a lead program manager on Visual Studio Team System. He is responsible for defining and designing the integration architecture for VSTS. Dennis's principal focus is to ensure that the Team Foundation software on which VSTS is built is a rich and friendly environment for extension and customization by partners and customers alike. Prior to joining the VSTS team, Dennis worked on application development tools of various stripe at Microsoft. His career before Microsoft focused on the creation of tools and methods for enterprise application development.
- Kindle 2 vs Nook
- Confessions of a Ulitzer Addict
- IBM Hardware Chief, Intel VC Exec Arrested in Insider Trading Scam
- Tactical Cloud Computing Panel at 1st Annual GovIT Expo
- Ulitzer.com Named Exclusive "New Media" Sponsor of Cloud Computing Conference & Expo
- Infrastructure-as-a-Service Will Mature in 2010: Microsoft's David Chou
- Windows 7 – Microsoft’s First Step to the Cloud
- Cloud Expo and the End of Tech Recession
- Jill Tummler Singer, Deputy CIO of CIA, Keynotes at GovIT Expo
- Reality Check at the Cloud Computing Expo
- Visual Studio 2010 Is Cloud Friendly
- Fired SCO CEO Fires Back
- Kindle 2 vs Nook
- The Difference Between Web Hosting and Cloud Computing
- Ajax in RichFaces 3.3, JSF 2 and RichFaces 4
- Confessions of a Ulitzer Addict
- Wave on Ulitzer: Confessions of a Google Wave Fanboy
- IBM Hardware Chief, Intel VC Exec Arrested in Insider Trading Scam
- Cloud Computing Best Practices
- Tactical Cloud Computing Panel at 1st Annual GovIT Expo
- Ulitzer.com Named Exclusive "New Media" Sponsor of Cloud Computing Conference & Expo
- Infrastructure-as-a-Service Will Mature in 2010: Microsoft's David Chou
- Eval JavaScript in a Global Context
- Windows 7 – Microsoft’s First Step to the Cloud
- Google Maps and ASP.NET
- Crystal Reports XI & How It Has Changed
- Converting VB6 to VB.NET, Part I
- Creating Controls for.NET Compact Framework in Visual Studio 2005
- Where Are RIA Technologies Headed in 2008?
- How to Write High-Performance C# Code
- AJAX World RIA Conference & Expo Kicks Off in New York City
- Implementing Tab Navigation with ASP.NET 2.0
- i-Technology Photo Exclusive: Bill Gates & Steve Jobs In "Nerds"
- .NET Archives: Getting Reacquainted with the Father of C#
- i-Technology Viewpoint: "SOA Sucks"
- Programmatically Posting Data to ASP .NET Web Applications


























