| By Dennis Minium | Article Rating: |
|
| January 28, 2005 12:00 AM EST | Reads: |
22,787 |
The Shape of Team Foundation
Team Foundation is a three-tiered architecture comprised of a client tier, an application tier, and a data tier. Clients interact with the application tier via Web services, and the application tier connects to persistent data stores on the data tier using database connections. An overview of the architecture appears in Figure 1.
Much of the Team Foundation user interface is offered through the Visual Studio IDE. This portion of the UI is implemented with the same VSIP interfaces our customers and partners use. In addition, functionality is exposed on the client through Office applications, specifically Microsoft Word and Microsoft Project. There are some Web elements as well - most notably the team project portal and the report server.
A simplified UI has been created for project managers and other nondevelopers for whom the Visual Studio IDE might be a complex and daunting environment. The Team Foundation Client (TFC) provides access to features that project members outside the technical staff will want to use without the clutter of language tools, debuggers, and developer utilities. This includes creating and monitoring project progress, controlling policies, and tracking work items. Developers and testers who need both the language tools and access to Team Foundation can also easily augment their full-function IDE with the capabilities of the TFC.
Whether a client application is written to run under the VS IDE or as a stand-alone Windows app, it communicates with the Web services on the application tier through an object model and a set of APIs that act as rich proxies. These mechanisms greatly simplify programming against the native Web services layer and provide intelligent caching to minimize server round trips. In fact, because a great deal of functionality including validation, caching, and cross-tool interaction is embedded in the client APIs, it's strongly recommended that toolsmiths and extenders stick to using them and avoid coding directly against the Web services APIs. Even so, all APIs are public including the direct Web services APIs, for which full Web Service Description Language (WSDL) is provided.
The server portion of Team Foundation consists of an application tier and a data tier. Both require the Windows 2003 Server operating system. These tiers really represent logical divisions of functionality to enable scalability. As it happens, though, the functions of the app and data tiers can be collocated on a single machine for smaller installations.
The application tier is where the majority of the work of Team Foundation is done: this is where each tool's Web services are ex-posed. The architecture of Team Foundation does not allow direct access to data stored on the data tier from client applications. All requests for data must be made through the application tier. Furthermore, all communication between components on the application tier is made through Web services.
In addition to each tool's Web services, the application tier hosts the Windows SharePoint Services (WSS) site for the project portal. This site fronts the WSS data store in which project documents are stored. Finally, the SQL Reporting Services Web site is hosted on the app tier.
All persistent data is stored on the data tier. This includes the operational stores of all Visual Studio Team System tools, including the version control store, work item database, test results database maintained by the developer and tester tools, and team build database. In addition to these working production stores, the data tier hosts a hybrid relational and OLAP data warehouse used for project analytics and reporting. The preponderance of data in the data tier is stored in SQL Server databases. Team Foundation requires SQL Server 2005 at a minimum.
In addition to the components that fit directly into the three-tiered architecture, Team Build allows for the introduction of dedicated build machines. Builds are initiated from a client, execute on the build machine, and send results into a results store on the data tier through a Team Build Web service on the application tier.
Next: Elements of Team Foundation...
Published January 28, 2005 Reads 22,787
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




























