The service also supports distributed version control, through the use of a bridge to the open-source GIT version-control software. Developers can use their local copies of GIT to clone the code base from the service, work on the code, and then, when finished, merge it back into the canonical code base on the Team Foundation Service. "Not all companies are comfortable with their developers having local versions of all the source code. [Distributed version control] is a pretty common pattern with startups, but it's not common in enterprises," Ravindran said.
ALM software manages the development of software programs across different departments within an organization. It includes not only version-control software -- which captures all the changes of the developing code -- but also includes testing, building and deployment capabilities, as well as oversight tools for project managers and product owners. "Development of the code becomes a team process, especially as the project starts scaling," Ravindran said.
In addition to Microsoft, other companies such as Hewlett-Packard, IBM, CollabNet, CA Technologies and Coverity offer ALM software as well.