Software Capability Maturity Model Level Two (SW-CMM)
The Software Capability Maturity Model, (SW-CMM or CMM), the Carnegie
Mellon University software process is a great project for a consultant.
Kind of like ISO 9000. What a great scam, a lot of nothing going on
for a huge price, but no real standards are there. SW-CMM usually is FUBAR
right at LEVEL 2, which is the level of engineering maturity right
after the capability to stand upright and make fire.
Never Use The Accounting System
Some of the basic milestones in the Capability Maturity Model Level Two
are the ability to plan and oversight to track a software project.
Central to tracking both planning and oversight is the organization's real
accounting system. If the accounting system has charge numbers
that do not correspond to the people, organizations, tasks and
goods used in making software there is no real planning or tracking
occurring and no Capability Maturity Model possible.
However, I see many books on the Capability Maturity Model that advocate
planning and tracking that do not involve the actual organization
accounting tools. The Carnegie Mellon CMM definition itself is
wonderfully vague about this and makes no mention of using the real
accounting system. In fact, anyone can and does proclaim themselves
CMM Level whatever for whatever reason they want.
Instead Cook the Books
The usual result of CMM is a double set of books and a lot of bogus paperwork.
One set of books is real, the accounting
system of charge numbers, purchase orders and budget. The other set of
books is trotted out for CMM certification and uses what ever bogus
numbers are needed. No real problem, who cares what a CMM report says,
and there is no real certification body, so nobody is looking anyway.
But what is really needed is one set of books set up with CMM as
part of the accounting architecture.
The accounting system is what really gets audited; the
accounting system is
used to make budgets, hire and fire people, show profit or loss;
accounting systems can send people to jail as Enron and Andersen
finally found out.
Accounting systems also already track labor and budget so no
extra burden is put on the software project. The traceability to
the software projects will be very clear.
Any consultant that says a Capability Maturity Model can be done
without the real accounting system involved is selling you a crock and
hoping you pay for it as a one time extraordinary charge to the
organization accounting system.
So, changes must be made in accounting systems to really track software
projects. Without the organization understanding this fact
any Software Capability Maturity Model mumbo jumbo is at best just another
management fad of the month with no hope of success. At worst, it is
fraud.
Of course, 99% of organizations will not change the accounting system
to reflect what they actually do. That is real work to change, and
then results will be audited for real. Actual budget is tied to the
system and problems will seen by the rest of the organization.
Horrors, at the current state of software planning of most organizations
this will be embarrassing at first.
So this CMM model thing is born dead. I have yet to see in industry
any CMM based on the accounting system. The extra effort of maintaining
the phony set of SW-CMM books just burdens the software managers
whose foundering projects are now guaranteed to fail under a blizzard
of bogus paperwork. CMM run this way should be counted as an added
risk to failure of the project. And all the expensive fancy-schmancy
software engineering tools, Big Six consultant fancy suit and tie
hocus pocus or Gant-chart-making MS project planning tools are no
better than using a Magic Eight Ball because the CMM data and
architecture is not based on real stuff. CMM is a house of cards,
if level two is not using the accounting system in the real world there
is no going to a level three. Hold on, I am wrong, a Magic Eight Ball
is easier, cheaper, faster and gives results that will be assessed with
the proper skepticism.
How to Really SAVE MONEY at CMM Level 2
Here is my recommendation: people advocating and doing CMM without using the
actual accounting and labor systems are just pulling numbers out of their
ass and should be fired. This will save the organization the precious
budget and resources needed to actually get the software done in the
current "death march" project at CMM Level One.
That is why most organizations are firmly anchored at a Software Capability
Maturity Model Level of ONE. In other words, software is made in total
chaos with a process that is not planned or measured. It is real
work to create a system that can plan and track software projects in
the accounting system.
Other articles on Software Engineering and Project Management
Software Engineering Basics This article
Software Project Planning Tips
Capability Maturity Models and Software Engineering
Choosing Software Contractors
Manage Your Software Consultants
Outsource Your Software Problems