Developments in Configuration Management tools

Posted by Andy Gavin on Tue, 2007-04-10 00:28

Like many I cannot wait for a better configuration management tool. Possibly the most widely used tool up until recently was CVS (on UNIX at least) and the even worse SourceSafe (on windows). You cannot be overly critical of CVS--- to my mind anyway, it is a child of the eighties, and as so is more than a grandfather to most systems out there. Its popularity has remained because it's free and relatively easy/maintain. Also there is a large body of knowledge from people who have been using it for all these years. In the last few years Subversion has arrived as a CVS replacement--- why subversion should be considered a CVS replacement when no other is is anyone's guess. Little is similar to CVS. There are notable improvements like atomic commits and versioned directories. All make people who have used it not want to convert back to CVS. However, it looks like a product of the 90's. Current research and other systems are much better at handling change and are more suited the way modern teams work. There have been some interesting developments in recent years, that might mean that Subversion will either have to adapt or it will be supplanted by a newer system--- one more suitable to how development is performed now. Two of the most interesting developments are:

Distributed Configuration Management
Distributed configuration management comes out of a new model for storing change, rather than the traditional delta approach, changesets are used. This allows changes to be better managed and merged. The distributed model no longer relies on a central repository for managing the change, but allows local versions of the repository to be created and later merged. Users can work locally with their own repositories then choose to merge the repositories together at some later time. There are freely available distributed configuration management systems. One that illustrates an application of distributed configuration management is Bazaar. It's name makes reference to a famous book in the open-source community
The Cathedral and the Bazaar
. Which contrasts the open-source way of organising development compared to more traditional approaches used in large organisations. Like many distributed systems it is still young and has not yet reached version 1.0.

Object-orientated Configuration Management systems

This is a new concept and is the subject of current research. The system has greater knowledge about the composition of the system: it is primarily designed for object-orientated languages. By the system knowing more about the composition it can better manage change and refactoring between classes. In theory anyway.
The first of perhaps many such systems is Molhado which is a research project at Iowa State University.


Add new comment