Martin Heller
Contributing Writer

Can SCM Make Your Software More Reliable?

analysis
Nov 5, 20072 mins

No developer in his or her right mind builds significant software in this day and age without some sort of version control or software configuration management (SCM). Free climbing (without a belay rope) and free tightrope walking (without a net) may get your pulse rate going (even if they verge on the suicidal), but it's hard to see any value at all to losing your software development efforts to an accident. No

No developer in his or her right mind builds significant software in this day and age without some sort of version control or software configuration management (SCM). Free climbing (without a belay rope) and free tightrope walking (without a net) may get your pulse rate going (even if they verge on the suicidal), but it’s hard to see any value at all to losing your software development efforts to an accident.

Now, one SCM system is pretty much like another, right? Not according to Damon Poole of AccuRev.

Consider the common scenario where you’ve branched an application to allow for maintenance of version 1 by one team while a second team builds version 2. Suppose version 1 gets 20 bug fixes before it’s time for version 2 to go into alpha test. How are you going to know whether all 20 fixes were properly merged into version 2?

I thought that the SCM tools I use (Subversion and Visual Source Safe) could handle this, but I was wrong; I had to keep track of bug fixes by branch manually. AccuRev can track merges automatically, however, according to Poole.

Suppose you were a company that built many different products based on a shared software code base — a common situation for embedded systems makers that churn out a new product revision every month, but have to maintain their existing products in the field for years. That branching scenario just became a nightmare, because the number of branches just became very large, and the importance of tracking merges just went way up. Missing a patch in one product out of hundreds can make that product unreliable; if it’s a product that people depend on, that unreliability could become a major issue.

So maybe SCM can make your software more reliable.

AccuRev’s site is here. In addition to the usual sales pitch and white papers, it offers a free 5-user, 30-day trial.

Martin Heller

Martin Heller is a contributing writer at InfoWorld. Formerly a web and Windows programming consultant, he developed databases, software, and websites from his office in Andover, Massachusetts, from 1986 to 2010. From 2010 to August of 2012, Martin was vice president of technology and education at Alpha Software. From March 2013 to January 2014, he was chairman of Tubifi, maker of a cloud-based video editor, having previously served as CEO.

Martin is the author or co-author of nearly a dozen PC software packages and half a dozen Web applications. He is also the author of several books on Windows programming. As a consultant, Martin has worked with companies of all sizes to design, develop, improve, and/or debug Windows, web, and database applications, and has performed strategic business consulting for high-tech corporations ranging from tiny to Fortune 100 and from local to multinational.

Martin’s specialties include programming languages C++, Python, C#, JavaScript, and SQL, and databases PostgreSQL, MySQL, Microsoft SQL Server, Oracle Database, Google Cloud Spanner, CockroachDB, MongoDB, Cassandra, and Couchbase. He writes about software development, data management, analytics, AI, and machine learning, contributing technology analyses, explainers, how-to articles, and hands-on reviews of software development tools, data platforms, AI models, machine learning libraries, and much more.

More from this author