About
Subscribe

Working wisely

CMMI is the gold standard by which software development organisations are judged, while helping them to learn how to change the way they work for the better.
By Stuart Mann, Performance and productivity improvement leader at EDS.
Johannesburg, 26 Mar 2004

Not many people go to work in the morning thinking, "I can`t wait for today`s project status meeting!" or "I`m really looking forward to updating my management plan!" And yet these types of tasks are often the foundation for the success of a project.

However, like brushing one`s teeth, process can seem to offer no immediate pay-off. Process-type activities take time and effort for an end result that, like dental hygiene, is not necessarily either glamorous or obvious. However, the consequences of not achieving the end result can be unpleasant, to say the least.

Human nature being what it is, persuading people that the time and effort required to work according to a process is valuable isn`t easy. There`s also the discipline required not to jump right into the "real work", but to lay the foundation for the initiative and do the work required to plan the project in accordance with the process. This common-sense approach does not yet form part of the culture of the software development industry as a whole, although its benefits are massive.

Think of it like this: you are sitting in your in the parking lot of a shopping centre in a strange part of town. You need to get to a friend`s house for lunch - you`ve been there numerous times before, but how to get to the general area where you will be able to navigate from memory? You are armed with a map book and earlier on your friend told you it takes roughly 15 minutes to get from the shopping centre to her house.

You have plenty of time to meet your objective, let`s say 30 minutes for this illustration. Common sense tells us that the best practice would be to take a few minutes, look up the shopping centre in the map book and plot a route to your friend`s house. There may be a number of possible routes and a bit of extra time determines the optimal route. By following this `best practice` you will meet your deliverable and arrive at your friend`s house with time to spare (barring circumstances beyond your control). Let`s say you spent five minutes determining the best route in the map book, there were no accidents, earthquakes or other impediments to your journey and you arrive 10 minutes early for lunch.

There is a huge desire from the business community at large that is not being serviced by the software development industry.

Stuart Mann, performance and productivity improvement leader, EDS

The alternative is to ignore the map book and start driving blindly, hoping you stumble upon a familiar road or landmark. This option produces a great deal more variability. You could strike it lucky and chance upon the correct route straight away, saving yourself five minutes of map book reading and arriving 15 minutes early for lunch. However, it is more likely that you will either take `the scenic route` or get completely lost - and here popular perception tells us that the female gender is better placed to eventually get to lunch because women will stop and ask for directions! But will you get to lunch on time?

Reading the map book first gives us a predictable outcome: five minutes with the map book, 15 minutes on the road and we arrive 10 minutes early for lunch. Rejecting the map book reading process introduces risk and a concomitant high degree of variability: 15 minutes early to x minutes late.

Furthermore, the map book reading option is repeatable. If there were 10 people sitting in the same parking lot, going to the same lunch and they left at exactly the same time, we would expect them to all arrive within a minute or so of one another. If the same 10 lunch guests ignored the map book it is likely that there will be a wide gap between the arrival of the first and last guest.

Predictability and repeatability are exactly what a development house`s customers want. Even casinos want their software projects to be predictable and repeatable. Business people want vendors to tell them how much a system will cost and when it will be delivered - and then deliver on what is promised. Studies show that less than 75% of software projects are delivered on time and budget - there is a huge desire from the business community at large that is not being serviced by the software development industry. We are not meeting the expectations of our customers.

The best starting point for our industry is probably the Software Engineering Institute`s Capability Maturity Model Integrated (CMMI). This provides a model for organisations that want to improve their process maturity, as well as a five-level grading scale enabling organisations to assess their process maturity.

There is a Chinese proverb that if you don`t know where you are, any road will do. The corollary to this is that if you don`t know where you are, a map book won`t help. CMMI provides both the map book (the model contains global best practices) and the means to determine where you are (an internationally-recognised assessment indicates what level you are on).

CMMI has quickly become the gold standard by which software development organisations are judged - specifically when sending work offshore. For those of us who want to work for organisations which are globally competitive - and build our own careers at the same time - learning to work on the gold standard has big benefits, and not only for us.

Share