Choosing Between Microsoft Visual Studio Team System and Microsoft Visual SourceSafe
Microsoft Visual Studio 2005 Team Foundation Server
Microsoft Visual SourceSafe 2005
Summary: Outlines the major factors that will help developers decide between Microsoft Visual SourceSafe 2005 and Microsoft Visual Studio 2005 Team Foundation Server for software change management. (6 printed pages)
Picking a software change management solution is an important decision for any developer, whether they are working on their own or as part of an Enterprise.
The Microsoft Visual Studio 2005 product-line offers two choices for software change management: Microsoft Visual SourceSafe 2005 and Microsoft Visual Studio 2005 Team Foundation Server.
Visual SourceSafe is a long-time member of the Visual Studio family. For its 2005 release, it receives a timely makeover, which includes remote access over HTTP, improved reliability, and Unicode support. Visual Studio 2005 Team Foundation Server is part of the new Microsoft Visual Studio 2005 Team System product. Team Foundation Server is a full software configuration management solution that offers release management, version control, work item tracking, and reporting functionality.
Both Visual SourceSafe and Team Foundation Server are suitable for teams of all sizes, as well as individuals. This overlap can understandably lead to some confusion.
There are a few key differences between these products that make this decision relatively easy to make. The first difference is how each product is architected.
Visual SourceSafe 2005 and Team Foundation Server have very different architectures; this difference is a key factor in deciding which product to adopt.
Visual SourceSafe 2005 is a completely self-contained system that requires no other software. Visual Studio 2005 Team Foundation Server is a server-based system that leverages several Microsoft technologies. Microsoft Internet Information Server (IIS) 6.0 is used to host the XML Web Service that Team Foundation Server uses for communication; Microsoft Windows SharePoint Services is use to publish portals for each of the projects that Team Foundation Server hosts; and, Microsoft SQL Server 2005 is used as a robust and secure storage engine.
Typically, Visual SourceSafe 2005 is installed on the same machine as the Visual Studio 2005 development environment, whereas Team Foundation Server is installed on a separate server and accessed remotely. (It is possible to install Visual SourceSafe on a dedicated machine or to install Team Foundation Server on the same machine as the Visual Studio 2005 development environment, but this is not considered to be the typical case.)
Many customers will find that setting up a dedicated server for Team Foundation Server is beyond the complexity that they require. For these customers, Visual SourceSafe 2005 is the better choice. On the other hand, some customers will find it impractical to keep their software configuration management alongside their development environment. For these customers, Team Foundation Server is the better choice.
Architectural complexity is one pivot point that can be used to help decide between Visual SourceSafe and Team Foundation Server. Project complexity is another such pivot point.
Even very small teams or individuals may be working on a project that requires a detailed level of requirements management, auditing, and project management. Visual Studio 2005 Team Foundation Server supports the full spectrum of software configuration management functionality, and so it is ideally suited for the needs of this customer.
On the other hand, some small teams or individuals will only need source code control. Visual SourceSafe 2005 is simple, lightweight, and easy to use, and so it is ideally suited for this type of customer.
The potential choice of Visual SourceSafe 2005 is a safe one for customers, because there is a supported migration path to Team Foundation Server if their needs ever grow.
Visual SourceSafe 2005 and Team Foundation Server can both support teams as well as individuals. The location and dynamics of a team, however, impact the choice between products.
Where team members are located and how they work together impact the decision to use either Visual SourceSafe or Team Foundation Server.
The desktop-based nature of Visual SourceSafe 2005 lends itself well to scenarios where team members may need occasional remote access to files. However, it is not intended for day-to-day usage by a geographically distributed team. The same is true of the parallel development capabilities of Visual SourceSafe. The basic file sharing that it supports is ideal for teams who need occasional collaboration; it is not intended for scenarios where a high degree of parallel development is required.
Team Foundation Server picks up where Visual SourceSafe 2005 leaves off in these respects. Its server-based nature is ideal for geographically distributed teams. Team Foundation Server's communication algorithms were designed to account for latency between distributed sites. It also provides a caching proxy to minimize network traffic between these sites. To support highly parallel development scenarios, Team Foundation Server provides robust data storage with SQL Server 2005, atomic operations, and sophisticated branching and merging capabilities.
For teams that work remotely day-to-day and that collaborate on a number of components in their projects, Team Foundation Server is the better choice. For teams that are generally located together and that work on individual pieces of a project, Visual SourceSafe 2005 is the better starting point.
Understanding how team members work together is a good way to determine which product is a better fit. This information also affects the cost of adopting Visual SourceSafe 2005 or Team Foundation Server.
Visual SourceSafe 2005 and Team Foundation Server are licensed quite differently.
Visual SourceSafe is licensed individually, whereas Team Foundation Server is licensed on a server and CAL (client access license) model. Figure 1 compares the cost of licensing Visual SourceSafe 2005 versus Team Foundation Server. ("Select D" licensing with a three-year Software Assurance (SA) agreement is used as the reference for Team Foundation Server licensing costs.)
Figure 1. Cost of licensing Visual SourceSafe 2005 versus Team Foundation Server
The first series of data charts the cost of licensing Visual Source Safe 2005. As expected, the licensing cost increases linearly with the number of users.
The second series of data charts the cost of using Visual Studio Team System as a client to Team Foundation Server. The client side of Visual Studio Team System consists of four products—Visual Studio Team Edition for Software Testers1/Developers2/Architects3 and Visual Studio Team Suite4. Each of these clients includes a five-person license for Team Foundation Server, so that there is no extra cost for teams with up to five members. For teams with more than five members, the cost of Team Foundation Server is just the server licensing cost, because each of the clients already includes a CAL.
The third series of data charts the cost of using Team Foundation Server with a client other than the Visual Studio Team System client. This client may be Visual Studio .NET/2003/2005 or another application altogether.
It is important to note that Figure 1 only compares the cost of licensing Visual SourceSafe 2005 or Team Foundation Server. The cost of obtaining the client is not included.
For customers who will be adopting one of the Visual Studio Team System client components, using Team Foundation Server is the obvious choice, from a cost perspective. There is no additional licensing cost for teams with up to five members; and for teams larger than that, the licensing cost remains constant. Each Team Foundation Server installation supports up to 500 users.
Cost should, of course, be just one factor in the decision between Team Foundation Server and Visual SourceSafe 2005. The scenarios used to illustrate cost here are only a subset of the almost infinite number of licensing scenarios that exist for customers.
Visual Studio 2005 Team Foundation and Visual SourceSafe 2005 are both excellent choices for version control. They both support a wide range of customer scenarios.
The choice between products depends on the infrastructure you are willing to support, the way your team is structured, how your team interacts, and finally, which product fits better into your budget.