A Christmas (Configuration) Carol (Abridged)

We have endeavored in this ghostly little tale, to raise the Ghost of an Idea, which shall not put our readers out of humour with themselves, with each other, with the season, or with us. May it haunt their houses pleasingly, and provide inspiration this season!

Once upon a time -- of all the good days in the year, on Christmas Eve, Sally took her melancholy dinner in her usual melancholy tavern; and having read all the newspapers, and beguiled the rest of the evening with her release notes, went home to bed. 

Sally was feeling ground down by all the hard work she had been up to, and the pressures to release more and more frequently. Indeed she had just been pressed to put out a release that very day, and as usual had had to visit each of the developers and try and work out what they had been doing since last time, cross reference that with the changes that had been checked into the repository  and guess at the meaning of some unexplained extra changes. All that together with writing something suitable for the clients that wouldn’t make the VP of marketing come down on her like a ton of bricks for giving the wrong impression about their product.

She was feeling so weary of the same old problems coming up again and again, and of not having the time and resources to do anything about it.

The previous release, the system had mysteriously stopped working just before the release went out the door and it had taken an all-nighter to fix things. Then there was a panic because a bug that had been fixed in a previous release and suddenly been found to be present in that release - which had caused a lot of embarrassment with one of their biggest customers.

She could see all the development staff suffering somewhat similarly.

She had had various conversations with the VP of development, old ‘Benezer Scrooge, but oh was he a tight-fisted hand at the grind-stone - a squeezing, wrenching, grasping, scraping, clutching, covetous, old sinner!  He carried his own low temperature always about with him; he iced his office in the dogdays; and didn't thaw it one degree at Christmas. Buy new tools for the whole team? Change their processes to improve things? "Bah! Humbug!" had been the end of the last conversation she had had with him.

So it was at a very low ebb that Sally returned to her room and started brewing some cocoa. She was very surprised when she turned around to see a ghostly figure - and even more so when she recognized it as Charlie - the Configuration Manager she had taken over from. Charlie had left to go on to a different company and she had envied him all the success she had heard about on the grapevine. She had been saddened by the news of his untimely death in an accident a short while before.

On seeing this ghostly figure she lacked the energy to be frightened, and just asked him what he was doing.

Charlie reassured her that he was there to help and asked her to explain what was causing her to look so depressed. Sally poured her heart out to him and described all the problems and issues that she and the whole team had been facing, and how lacking in resources they were. She also explained the issues she had getting any investment from ‘Benezer Scrooge.

Charlie explained that she needed to communicated with ‘Benezer in a language that he would understand: pounds, shillings and pennies (although dollars were also acceptable).

It was at this point that Charlie asked her to bring out a pen and paper, and at his direction she drew the following table.

Management, he explained, is all about problem solving, decision making and planning, and the appropriate action depends on the timing. All three timings may be involved, but the manager has to begin somewhere, and often only one is at work. If a customer complains about something in the past then fix it, or maybe in the present it is about selecting a new tool or process.

In addition, there are various types of action possible to address a problem or potential problem. Charlie got Sally to draw the following diagram:

(c) Alan Weiss Ph.D. See reference

Charlie explained that problems have effects which we see and which draw our attention. Addressing the cause in the past, after the effects are felt, is corrective. Ameliorating the effects we're currently feeling is adaptive. Anticipating and averting causes from arising in the future is preventive. Anticipating and lessening the effects in the future (should the preventive action fail or unforeseen causes develop) is contingent.

A fire marshal checking for unsafe conditions, or running acceptance tests before release are preventive measure. Insurance to cover losses if a fire occurs anyway, or the legal liabilities of the damage defects might cause are contingent measures.  Finding the cause of the customer's bugs so that they don't recur is a corrective measure. Giving the customer free credit to ease current unhappiness is an adaptive action.

Sally started to become excited and energised as she realized the potential and how this applied to what she was doing.

A lot of her work in configuration management, and indeed the development processes in use by the whole team, was firmly in the corrective and adaptive segments, and yet if they could move work into the preventive segment life could potentially be a lot easier.

The relative costs also seemed to make sense - it usually costs more to fix the problems than it does to prevent them.

Charlie agreed with Sally and discussed how he had taken this idea and applied it in his previous company, using it as a tool for communication with the business in order to get investment and backing for appropriate tools and resources.

The End of It

Due to lack of time we have to leave the gentle reader to imagine the scenes when Charlie took her back into her past as a young and enthusiastic configuration engineer, and then showed her the future Sally ground down and depressed by unremitting and unrelenting hard work and problems.

Indeed we must even leave the reader to imagine what happened when Charlie left Sally and she worked up her courage to approach Ben Scrooge, but with a new ability to communicate with the old skinflint, and a golden glow of energy and enthusiasm around her, we can only hint at portents of results such as automated builds, continuous integration, automated test suites, automated release note production, appropriate branching patterns and the like.

To quote the master:

Scrooge became as good a friend, as good a VP, and as good a man, as the good old city knew, or any other good old city, town, or borough, in the good old world. Some people laughed to see the alteration in him, but he let them laugh, and little heeded them; for he was wise enough to know that nothing ever happened on this globe, for good, at which some people did not have their fill of laughter in the outset; and knowing that such as these would be blind anyway, he thought it quite as well that they should wrinkle up their eyes in grins, as have the malady in less attractive forms. His own heart laughed: and that was quite enough for him. 

The Unofficial Guide to Power Managing by Alan Weiss, Ph.D., IDG Books Worldwide Inc, 2000

Charles Dickens was an English novelist. During his career Dickens achieved massive worldwide popularity, winning acclaim for his rich storytelling and memorable characters. Considered one of the English language's greatest writers, he was the foremost novelist of the Victorian era as well as a vigorous social campaigner. He was a reformist writer (a writer who wrote about the bad things in order to change society for the better). Among other books he published:
A Christmas Carol - http://www.gutenberg.org/ebooks/46

About the author

About the author

About the author

CMCrossroads is a TechWell community.

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