Software Development with CMII

by Leo Clark

                                                                              

                                   

Development Without Controls

 

A mature organization does not leave its checkbook lying around for any employee to drain. They may assume, however, that resources spent on software development cannot be controlled.

 

Multiple programmers are allowed to hack away at multiple copies of the same file, each with different intentions. Analysis, design, construction and maintenance are all performed by the same group of people. It is tempting to rapidly change hats. It is also misleading and costly. Let me propose a fix.

 

Create Descriptive Documents

 

A programmer that starts to write a function, object or subroutine has an idea of what that component should accomplish and how to do it. Write it down. Present this descriptive document to a designated user to see if it is clear, concise and valid. If so, release it. If not, rewrite it.

 

Use Work Authorizations

 

Issue a work authorization which says "build a component that conforms to the descriptive document." Suddenly, there is control over who works on what and who checks out what files. We can even gather metrics on code construction and avoid conflicting work that needs some miraculous "merge" utility to save our schedule.

 

The granularity of your work orders depends on your organization's maturity. Micro-manage only if you need to. Have evidence that the level of granularity that you have chosen is the right level. If the checkbook continues to drain, stockholders may ask why you chose to base your business decisions on mythology. Be prepared to show your process and your controls. They will return. The American Dream

 

Two or three people start a business, preferably in a garage, to hack out the next software product. If they have a true heart, the latest technology toys, and a 12-pack of Jolt Cola, they can codeup a video game, a resource planning product or a web-based, animated Christmas Card list. The world will beat a path to their door.

 

To The Dreamers, I Wish You Luck

 

The fruits of all this labor are an equity position that represents a mountain of wealth too enormous to count. Our heros can contemplate the meaning of this success from the opulent comfort of the owner's luxury box of their newly acquired NFL franchise.

Now, if you can only get the darn code to compile.

 

The Mythology of Software

 

This dream comes with its own mythology. If you remain chained to your machine long enough, forego showers and green vegetables, the Software Gods will take pity on your torment and whoomp you with a wisdom stick. Vulture capitalists will press bags of seed money into the hand that doesn't work the mouse. And you'll finally be able to unload all of the software drudgery to some off-shore white collar sweatshop.

 

Eliminate the Myth; Process First

 

Sorry, I have to reject that mythology. When the process is right, the product will be right. Your job is to create a process which guarantees good output.

 

(Yeah, I'm one of THOSE guys). Some people call this discipline. I prefer the term, maturity.    

                                                                                

                                                                       

                                                     

                                            

Institute of Configuration Management Scottsdale, AZ 85261-5656 Tel: (480) 998-8600 Fax: (480) 998-8923 Email: info@icmhq.com