Three Wishes for Software Configuration Management (SCM)

[article]

In his CM: the Next Generation series, Joe Farah gives us a glimpse into the trends that CM experts will need to tackle and master based upon industry trends and future technology challenges.

Summary:
Joe Farah writes of three Christmas wishes he has for the world of software configuration management (SCM). If we do these key things properly, we won't just see an jump in SCM maturity. We'll see a fire that spreads the wealth.

Another year has gone by. We've seen what's happening out there and what's not.  So looking back, what's my Christmas wish for the SCM world?  I think I can actually put it down to 3 key points:

1. Bring Next Generation CM and ALM education to the market place.
2. Give Software Configuration Management training and certification a boost.
3. SCM: Aim higher

If we do these things properly, we won't just see a jump in SCM maturity.  We'll see a fire that spreads the wealth.
 
Bring Next Generation CM and ALM Education to the Marketplace
I have seen significant efforts to adopt a more advanced CM or ALM solution in the marketplace over the past couple of years.  However, these efforts are just a fraction of what there should be.  Organizations, for the most part, still seem happy to go ahead with low end or open source solutions, saving $10,000s, yet missing $100,000s in unrealized productivity gains.  Or they're willing to pay big bucks for solutions that have been popular in the past but no longer deliver the state of the art in capability.

Some of this is the fear factor.  CM Managers have been through a lot and they expect CM/ALM solutions not just to be costly and time consuming, but rather to require significant investment in expertise.  That's not the case anymore.  Not enough people understand this, though, so we really need to educate the market place.

While it's true that open source solutions are gradually improving, and that there are many commercial solutions out there that are near par with these solutions, there are also solutions out there that really exceed these lower end options.  The annual savings potential is staggering

  • CM administration
  • Multiple site capabilities
  • Tool glue and maintenance thereof
  • Customization costs
  • Additional training costs
  • Lost productivity
  • Lower quality

There are companies spending $10M in CM administration alone.  Plus licensing costs, consulting costs, upgrades, and so forth.  Just to keep the CM solution working.  Tell me of a company that wouldn't like to recover $100M from the past 10 years of CM, yet life goes on without change.  Why?  Education.  Sure cm crossroads helps, but there's a wider audience out there that needs to be educated.

Give Software Configuration Managment Training and Certification a Boost
Although there are a number of tool-specific and process-specific SCM courses and even certifications, there are too few good generic SCM training courses.  The industry needs to address this and this is one area where I'm looking to jump in starting in 2010. We need:

  • Introductory training so that those thrust into SCM can learn, not just to tread water but to excel.
  • Integrated training on SCM and project management so that we don't have competing factions, but a unified one.
  • In depth training on the real SCM issues and how addressing them dramatically reduces costs.
  • Better education on evaluation of SCM tools and processes - what works and what to avoid.

On top of this, we need an industry expert peer group to review course material and offer their certification credentials on good materials.  Certification of ideas is all we're looking for here.  Not a whole course or program.  Just a 4-star expert rating for the various ideas, solutions, and best practices that can be drawn upon to get us to the point where we can really talk about certifying SCM professionals.

Too often I see quality standards that are weak in substance, but strong in certification.  This must not happen in the CM world, but how do we get consensus in a discipline that is anything but disciplined? Maybe the CM Journal should run a “certified corner” plus blog, where it takes an idea and has its authors/editors certify it or at least rate it.  Over the course of a couple of years, we could have a full library of certified practices.

SCM: Aim Higher
I’ve been in the SCM industry over 30 years. Quite frankly, compared to most other software disciplines, SCM advances really slowly.  Perhaps database technology is slower to advance, largely because of the significant level of standardization, but at least there are some bright spots on the horizon.

Often, the CM industry will rally around a new tool that introduces one or two key concepts.  This is a good start, but if the tool stays there, it is stuck in a rut.  New concepts become the core of the SCM offering, while the rest of the solution remains stagnant. SCM is a very wide and complex arena and technology has to address the entire arena.  It is not sufficient to have shining lights mixed in with dimming bulbs.  Ever hear of a chain being only as strong as its weakest link?

Vendors, in particular, need to step up to the plate and address the entire spectrum of SCM issues.  Yes, ALM is good, but it is not enough.   There are administration, ease-of-use, functional integration, traceability, customization, query and reporting, and a whole mess of other issues.

In many of my past articles, I've tried to identify the generational boundaries for CM.  Too few vendors are aiming at next generation CM.  Instead, they're happy to continue to advance their existing technology even if the underlying architecture will be a hard stop in any attempt to meet next generation goals.  I understand the economic pressures, but these same pressures say that there's a strong market out there for next generation tools that provide less complex CM, easy to use tools, low administration, CM maturity, seamless integration, role-based dashboards, easy customization, etc.

CM is not just for techies:  accountants, lawyers, graphic artists, and a host of other professionals use it.  They are in desperate need for CM, but let's not even think of addressing their needs unless we're really willing to aim higher.  3rd and 4th generation CM goals address things like administration, easy of use, ease of customization, fail-safe operation and scalability.  If we're aiming for 3rd Generation functionality, that's where we'll end up.  If we really want to go beyond the 3rd and 4th generation CM goals and address the information industry at large, then we need to recognize that our tools and processes are too complex.

Once we do that, and only then, will we see technology evolve that really can address the real software market.  An accountant isn't going to pay a CM manager to install and operate a solution.  Nor is (s)he going to consider outsourcing confidential data to a solution provider who may not be around in a few years.  They will spend an hour to let someone show them how they can save money and increase the services for their customers while reducing their own information chaos. But CM will never get to that point, will it?  Not if we don't aim higher.

There are various pushes to get software engineering to move from a black art to an engineering discipline.   This is by no means an easy task.  CM can form the backbone of any engineering discipline, though, if we approach it as such.  Enough, “I like this way, and I swear by this tool!”  Let's hear more "This is the proper way to do this and here are the tradeoffs" in the SCM world.  We can then get the tools to support the engineering practices and move forward.

To all those who have followed my column in the past year, my thanks! Have a Merry Christmas or a Happy Hanukkah and remember the real reason for this festival of lights!

About the author

AgileConnection is a TechWell community.

Through conferences, training, consulting, and online resources, TechWell helps you develop and deliver great software every day.