The more time I spend using Team Foundation Server (TFS), the more I believe it’s an integral component of the Application Lifecycle Management (ALM) Framework. Now while most organizations employ some sort of source control and change management system there are those that still “wing it” or have rudimentary processes in place when it comes to software development. These are the ones that can most truly benefit from using a solution such as TFS.
Obviously TFS can be housed/installed on premises but let’s say a small company with only a handful of developers wants to implement TFS and would like the “try before you buy” option. Conversely, a large company wants to install TFS but eliminate the concerns of making a substantial investment in hardware, software and server management.
Having TFS on Azure will help reduce both businesses’ implementation risks by providing an evaluation and training environment that they can use to assess the capabilities that TFS has to offer and identify the best ways to address any development challenges their respective organizations may be encountering. During this phase developers can begin to develop and see what works and what doesn’t and relay their experiences to their team leads who in turn share that knowledge with their managers, senior management team and so on. All this goodness (call it a pilot if you will) can help to dramatically increase solution adoption and prepare the team for a full production implementation.
But wait, there’s more. Now that the development team and other parties (project managers, testers, business analysts, etc.) are involved and want to move ahead, the benefits of having a cloud based environment start to shine. Scalability, flexibility and simplicity (to name just a few) are all there for the taking.
TFS “in the cloud” will accelerate the adoption of Agile practices, improve the productivity and predictability of software construction for multiple sized teams and add further emphasis on collaboration through integration across all roles in the team.
Cameron Skinner, General Manager of the Visual Studio Ultimate team recently discussed at TechEd a lot of innovative functionality regarding ALM which demonstrates just how important of a piece TFS is to the ALM puzzle. The full presentation on “The Future of Microsoft Visual Studio Application Lifecycle Management” can be found here.
Now although I paint a picture of bliss, currently TFS “in the cloud” is in its infancy. Brian Harry has a blog entry that basically is a “state of the union” on where TFS is concerning Azure. I do find his general rule for
services (“people are your biggest source of error…everything should be automated and repeatable”) somewhat ironic as we are the one’s building those very services. Then again, maybe I just watched The Matrix to many times.
Clearly there is work to be done to have the same functionality and stability in the cloud that the boxed product offers but once those equations are equal, TFS will not only bring cost savings to small, mid-sized and large organizations but also new application management practices as well.