Thursday, March 24, 2005 - Posts

Thoughts on the Team System pricing scheme

The pricing scheme for Visual Studio Team System has disappointed many .NET developers lately. It is easy to get excited by the features in Team System, but the larger part of the target market for the Visual Studio product isn’t enterprise development organizations and hence do not need the Team System features. Eric Sink is in line with my views on the matter in his comments on the scheme. At Objectware we’ve been using third party products that provide many of the Team System features for some time. The effort to establish a continuous integration framework to support our development process has been sphereheaded by Mads Nissen; who apparently also thinks along the same paths as Eric Sink since SourceGear Vault has become part of our CI platform recently.

I’ve done some experimenting with Team System, including the Team Foundation server during the past six months. The product is excellent, but I’m not sure if it is the perfect solution for a consulting firm such as Objectware. The reason is this; we do projects for a wide variety of clients. With many of the clients we must be prepared to take part in an existing development organization. It is acceptable to introduce a bundle of open source products to use within a product for a client because there is no visible cost with such a toolset. Team System on the other hand has a pricing scheme which forces enterprises to make a choice on whether to use the suite or not. For a contracted project it would be irresponsible to try to introduce such a product. Another scenario would be to run all development projects as in-house projects on our own servers. This would be beneficial because every project within our organization would utilize the same development environment independent of the client the project is carried out for. However there are some challenges with this approach. Most of our projects are developed on-site with the client on their equipment. Many of our clients have their own tool for bug-reporting and similar, but these tools do not integrate with Team System.

As an architect, I would like to use one single product for end to end of the development process, and since I’ve put my time as a J2EE developer behind men, Team System is the perfect suite. However, Team System is intended for large enterprises or large ISVs. To make Team System attractive to consultants, Microsoft must come up with a way to use the product as a backend system for consultants whose client and team aren’t using the product without sacrificing the project management features of Team System.

I don’t think I’ll ever experience this, because Team System simply isn’t meant to be used this way. I think the only sane thing to do is conclude that Team System wasn’t meant to be used by individuals. It is an enterprise development tool. One thing I'd like to see was the unit test features, without Team Foundation integration, included in the Professional Edition.