Wednesday, October 04, 2006

Team Development using MS TFS - Part 2

In the first installment of this series, I introduced TFS.

This time, we are going to take a look at its architecture.

TFS is based on a multi-tiered architecture, consisting of a client tier, an application tier, and a data tier.
Data tier is a SQL Server that stores work-items, version-controlled source files, test results and other project metrics. (In TFS entities like requirements, test-cases, and defects are categorized under one group called work-items. Each sub-category has its own properties and you can extend the list of sub-categories.)
The application tier is composed of web-based applications that are integrated with IIS. These applications include SQL Server Reporting Services, TFS Core Services, and Windows SharePoint Services.Application tier hosts Team Foundation windows services as well.TFS uses Windows SharePoint Services to provide a project portal for team. SQL Server Reporting Services offers reports and queries from project’s work-items.TFS application tier also includes Team Foundation Build and TFS Server Proxy. Build server provides build automation. Server proxy has been built to be used in distributed developments. It caches previously accessed source control files to improve the performance of source control operations over low-bandwidth connections. Following picture shows a use case of TFS server proxy.
 


The client tier consists of a tool called Team Explorer. Referring to the picture in part 1, Team Explorer can be used as a standalone application or integrated with Visual Studio (except Express Edition). It also integrates with Microsoft Project and Microsoft Excel. This feature helps project managers to view project information and submit information to TFS using tools they are most comfortable with.
As for implementation suffice to say that there are two types of deployment (excluding Build and Server Proxy): single-server deployment, dual-server deployment (one server for data tier and one for application tier). Build and proxy servers can be installed on separate machines or on the same server that application tier has been installed. A complete installation guide can be found here.

6 comments:

Anonymous said...

I've downloaded the installation guideline. But it's quite complicated. Too much of stuff. You know?
So I appreciate it if you simply explain how to setup and configure it. At least a single-server deployment approach.

By the way, nice weblog. Interesting contents. Seems you like writing.

thanks
Jason

Unknown said...

Jason,
Thanks for the comment.

I have also received an e-mail from a friend that had requested the same stuff.
I guess I have to do it in the next post.

Anonymous said...

Hi Dear Amir!
good job!
wish you success

Unknown said...

Thanks Mehdi..
Looking forward to seeing your technical comments in the future.

Anonymous said...

It has a well-formed architecture and same the other tools' architecture (Such as Rational ClearCase).
I'm really glad becouse of its integration with Visual Studio but if it was free I would be more happy.
Is it free (I mean TFS)or I should pay? :D

Unknown said...

:)
As you know, it costs you almost as much as Rational Suite does.
But you can download a full functional 6 months trial version from Microsoft's web site which I believe is good enough to evaluate and learn it.