It has been a while since software configuration management has seen any changes, but industry experts sense that some new things on the SCM front are brewing. With the advent of accepted open-source solutions and Distributed Version Control Systems (DVCS), married with tighter collaboration of roles and tools and the expansion of SCM within the application life cycle, the typically quiet and fragmented industry is poised for some imminent changes while working with the ones that have already occurred.

Perhaps the most interesting and “revolutionary” movement the SCM market has experienced is the introduction of CollabNet’s Subversion (a tool for version control) and Git, a DVCS tool. Both open-source solutions bring a different flavor to the table of SCM tools by offering developers and organizations alike different options for developing software.

Viewing this change on the micro level of SCM, Forrester analyst Dave West said, “I’ve seen a migration away from complex and expensive software configuration management solutions to Subversion and other open-source solutions.

“These tools are easier to work with, of course cheaper, and are gaining popularity,” he added, and if the trend continues, “I see a continued movement towards Git and other DVCS tools.”

A fairly recent innovation in version control, DVCS tools offer developers a much easier and more compelling way to develop software, especially if teams are distributed across the world, said Eric Sink, founder of SCM vendor SourceGear.

DVCS tools differ in several ways from a more traditional centralized approach to revision control. Unlike the centralized model, DVCS may offer several “central” repositories for developers to work with, easing the difficulty of distributed teams collaborating on work, explained Jack Repenning, CTO of ALM vendor CollabNet. These types of tools also enable users to work productively even when not connected to a network, which is another differentiator from traditional revision control tools that require a connection to a network for operations and tasks.

“A team in Ohio and Ireland can work in two separate repositories during the day and let their work sync over night,” Sink said. “In enterprise speak, these tools don’t just scale up, they scale out, too.”

For the moment, though, Sink said DVCS tools are more compelling to developers than managers because of the productivity boost they can provide.

Repenning agreed: “Many of the developer attractions of DVCS are individual user conveniences,” such as “local, fast and private versioning, graceful developer-to-developer merges without bothering the central repository, and easier project joins,” he said.

Repenning thinks that DVCS will be ready for enterprise use in a future that he says will include “automatic branch ‘push’ to a designated central repository, central control of access rights and automatic status updates (‘Who’s working on what, how has it changed?’) to all players,” he said.  

However, current DVCS tools also present task-management issues as far as disconnected operations, Sink said. “I believe this is the one thing that needs to improve before DVCS tools can become mainstream.”

Nigel Chanter, COO of SCM vendor Perforce, said that DVCS tools do not offer the same amount of visibility as a traditional centralized model. Traditional models, he said, “offer the best control of metadata of projects all in one place and enable instant access and visualization of assets,” unlike DVCS solutions.  

Some experts have also predicted a shift from one suite offering all an organization needs to users picking and choosing which tools they wish to implement, said Daniel Magid, chief product strategist of ALM vendor Aldon. “I’m seeing a movement away from a single suite from a single vendor to users choosing what they want,” he said.

For example, people might implement Aldon’s Service Desk and life-cycle management solutions while using an open-source tool like Subversion for source control, plus use a build tool like CruiseControl or Hudson while using Eclipse-based IDEs, Magid explained. Either way, he said, “I’m seeing people starting to look at hooking different solutions together.”

Repenning predicted this “best-of-breed” tool collaboration as well. “We are entering a period of consolidation in the SCM world where we now see a cross-pollination of the ‘best-of-both-worlds’ products,” he said.

However, Jeff Amfahr, director of product management for ALM vendor Seapine, disagreed with these predictions. “Companies are less inclined to spend time integrating various tools together to build an ad hoc ALM solution, including SCM, when they can deploy an end-to-end ALM solution that ships pre-integrated with readily available training and customer support,” he said.  

Others expect the seamless integration of SCM into the agile-application life cycle, in part due to the need for version control during each step of software development as well as the need for tighter integration of developmental and operational tasks.

Because agile techniques such as Scrum and XP (as well as lean methodologies) are becoming more popular and implemented more widely, some have predicted an evolution of the SCM tool. “SCM is evolving from being a ‘control tool’ to becoming a facilitator for collaboration,” said Mike Shepherd, senior technical consultant with SCM vendor PureCM.

“This development is driven by agile becoming more and more popular with its call for tighter collaboration between traditionally separated roles,” he said, adding that SCM tools need to reflect this trend as well as provide teams with relevant information and visibility across the development life cycle.

Seapine’s Amfahr agreed. “As companies look at faster process cycles using agile approaches, the ability to link SCM solutions with other development and QA activities becomes even more critical,” he said. “The feedback and learning loop that is such a critical part of things like Scrum and lean requires you to have all the data, so your SCM solution can’t just be part of the background anymore.”

Although implementation of agile techniques has certainly expanded the demand for SCM, others see the need for integration of the tool within the application life cycle a little differently. Matt Klassen, strategic solutions manager of ALM vendor MKS, said, “The future of SCM will be driven by the fundamental paradigm shift from file-based systems managing pieces of code to a more abstracted software assets model,” including version control for a requirement, feature or test plan.

It is no longer about just managing source code, Klassen said. It is about managing everything in the life cycle because “development doesn’t happen in a vacuum. It is dependent on the upstream and downstream of information, assets, activities, and all of the relationships among them.”

SCM is an enabler of innovation, Klassen explained, and innovation comes from the design and requirements, not version control. But the more SCM happens automatically behind the scenes, the more efficiencies are gained with the reuse of source code as well as other things the tool can deliver, he said.  

Aside from these two predictions of the future of SCM integration, Forrester’s West added that operational and developmental integrations will be key in the future as well. “Right now we see transient links at best [between the two], to the point that developers have to do archeology in the build if something goes wrong, and that is the biggest concern to me,” he said.

“The only way I see to really fix this is to have the same people working on the same code all the time, which is unrealistic,” he added. But, “if a focus is shifted from powerful repositories that don’t link deployment and other areas to tighter working structures,” the problem could be eased.

On the periphery of SCM’s future is the expansion of version control into other industries. Perforce’s Chanter said, “Source code management is only the tip of the iceberg for SCM, and versioning more types of content for more types of people is definitely part of [Perforce’s] future road map. We see SCM going beyond product and system development.”

West agreed that version control is becoming valid in other areas, such as architecture, general administration and engineering.

This initiative would enable versioning of more types of data and expand SCM to a wider audience, Chanter said. “Currently, we store digital assets and large binary files, but eventually we’d like to store medical records or legal documents, for example, and broaden people’s access to this data” by hosting the solutions in the cloud or as a service, he added.

Major players weigh in

Aldon:

What’s the biggest differentiator of your SCM solution?
Daniel Magid, chief product strategist: Aldon provides a simple, automated method for tracking everything that happens with a user request, from the moment the need arises until a solution has been delivered to production.

What do you believe is the most important factor an enterprise buyer should look for in an SCM solution?
Enterprise buyers should be looking for end-to-end change management automation and comprehensive compliance support in easy-to-use multi-platform solutions.

CollabNet:

What’s the biggest differentiator of your SCM solution?
Mark Phippard, director of Subversion engineering at CollabNet: Subversion is a reliable, simple and central SCM with globe-spanning performance. It is easy to use and has a stable API with compatibility guarantees.

What do you believe is the most important factor an enterprise buyer should look for in an SCM solution?
When researching new SCM solutions, enterprises are not looking for radical new features. They want a product that is secure, reliable, stable and performs well in a distributed environment.

MKS:

What’s the biggest differentiator of your SCM solution?
Colin Doyle, product manager: MKS Integrity is highly ranked by industry analysts for broad and deep SCM capabilities, but the biggest differentiator for MKS Integrity is its superior support for complex change and configuration management scenarios.

What do you believe is the most important factor an enterprise buyer should look for in an SCM solution?
Matt Klassen, strategic solutions manager: Today’s enterprises need traceability and control throughout the application life cycle. An SCM solution must cope with governance demands as well as scaling up to meet the sheer volume and overwhelming complexity of modern software development.  

Perforce:

What’s the biggest differentiator of your SCM solution?
Nigel Chanter, COO: Flexibility. Perforce supports a company’s development environment regardless of the methodology it chooses. Perforce’s flexibility also refers to its ability to easily integrate with other products in the development life cycle as well as support for a company’s growth over time.

What do you believe is the most important factor an enterprise buyer should look for in an SCM solution?
The most important factor is to choose an SCM solution that has unlimited scalability, and easily supports a company as it changes and grows over time.

PureCM:

What’s the biggest differentiator of your SCM solution?
Mike Shepard, senior technical consultant: PureCM is optimized to offer a lightweight and intuitive cross-platform SCM solution. With its latest release, PureCM 2010-1, the Professional edition now comes with one of the tightest change and configuration management integrations on the market.

What do you believe is the most important factor an enterprise buyer should look for in an SCM solution?
We think there are three pillars to enterprise SCM: scalability and performance, transparency and reporting, and an optimized user experience.  

Seapine:

What’s the biggest differentiator of your SCM solution?
Jeff Amfahr, director of product management: One, our use of an industry standard (relational database management system) back end for stability and backup. Second is the deep integration and traceability we provide in the full suite of products in Seapine ALM, which standalone products cannot offer.  

What do you believe is the most important factor an enterprise buyer should look for in an SCM solution?

SCM software needs to be a reliable vault where you store all your critical digital assets. You need to make sure the solution you pick keeps your data safe in a way that you understand, and with tools and technologies that your company knows how to manage and scale.  

SourceGear:

What’s the biggest differentiator of your SCM solution?
Eric Sink, founder: Our product, SourceGear Vault, offers the best migration path for users of [Microsoft Visual] SourceSafe. The data migration is seamless and Vault supports all SourceSafe features with a familiar interface.

What do you believe is the most important factor an enterprise buyer should look for in an SCM solution?
When forced to choose only one factor, I’ll say flexibility. Find the product and vendor with the ability to adapt to your situation.