The Design of Software (CLOSED)

A public forum for discussing the design of software, from the user interface to the code architecture. Now closed.

The "Design of Software" discussion group has been merged with the main Joel on Software discussion group.

The archives will remain online indefinitely.

People familiar with CMM/CMMI?

So I just turned the sitemap feature on at CodeSnipers ( ) and I noticed that we have people talking about various Agile Methods, but no one talking about CMM or CMMI.

Anyone interested in writing a Guest Contributor entry?

There's no $$ involved, just a bit of attention as we're getting *lots* of attention so far.
KC Send private email
Tuesday, September 13, 2005
CMM(I) is a process improvement model, and has very little to do with development methods.  It's understandable that it wouldn't get attention at a site made for programmers.  :-)
Matt Brown
Tuesday, September 13, 2005
Actually, it's often used in reference to Systems Engineering ( ) and since there are quite a few around here who work for big organizations, various government groups, etc, there might be a few people who have been sentenced to following some CMM/CMMI suggested practices.  ;)
KC Send private email
Tuesday, September 13, 2005
CMM is meant as a way of quantifing the maturity level of a company's software development process.  It provides a means for process improvement since the company can then know why it is at a certain level and what it takes to get the subsequent levels.

It stems from DoD initiatives, and many developers in the private sector don't have much time for it.
Peter Ritchie Send private email
Tuesday, September 13, 2005
My entire being here at General Dynamics involves following our CMMi Level 3 processes.

Level 5 next year -- wohoo.
Yehudah Send private email
Tuesday, September 13, 2005
I'm one of those people.  :)

CMM is one of those things that we just accept (resistance is futile), but don't revere.  Admittedly it does lend some benefits to projects, primarily in resisting scope creep and costing, but it offers no help in the technical arena.  I was on a project once that had terrific processes but the technical side was atrocious.  The management was absolutely focused on the documentation and schedule, and all but ignored the product quality feedback.  Luckily my current gig is a lot better.
Matt Brown
Wednesday, September 14, 2005
Quality has always been a hard topic to discuss. I've seen techno geeks always ran far from quality audits, and following CMMI processes, just because they don't find any thing creative in that...As with the case with me. The boring part is to always define a certain task in a managed way, hampering creativity.

However, to professionally reach on the top goal, companies have stated adorning these medals on there vitae. It’s easy to have a certification but equally hard to maintain it. Especially in case of service companies, those are running for CMMI and ISO standards.

Yesterday itself, I had to attend training for CMMI, and I simply walked out of the training room, since finding it hard to get the gist and implement it into my day to day activities. It’s good for project manger but heck of a use for a young programmer like me.
Kris Gautam Send private email
Wednesday, September 14, 2005
CMM, like ISO9000, doesn't say "this is the recipe for quality." Instead they say "successful, repeatable quality (without heroics) projects have these things in common."

They are "hygiene" issues for project management. They aren't popular, or fashionable, especially here in the US. But they are also partly why project management hasn't got much better in the past 30+ years from Brook's "The Mythical Man Month." Computers are several orders of magnitude better, development isn't, because people haven't changed since it was written.

I can go on for some essays about it, if you want. Drop me a line. I usually don't have my email address linked.
Peter Send private email
Wednesday, September 14, 2005
Matt, Kris, Peter, feel free to drop me a line... it's just webmaster at
KC Send private email
Thursday, September 15, 2005
My biggest gripe with CMMI style processes is that it promotes a one-size-fits-all painting-by-numbers approach that simply doesn't work in many cases. As has been alluded to, the Government awards large contracts to those companies that are perceived to be able to execute them. A Government contractors' CMMI level is an indicator to bolster that perception.

The FBI spent $104M on the Virtual Case File system, built by a CMMI level 5 company, SAIC, which was then scrapped because it "was not scalable and that the engineering was not what it should be in order to make it an effective tool for the FBI, and it requires us now to go a different route."

And just recently, the National Archives awarded a $308M contract to Lockheed Martin (CMMI 5) which also has SAIC on its team.

In times gone by, IT managers would buy IBM systems because 'no one got fired' for buying IBM. Now it seems to be CMMI 5 is the 'safe' bet...
unimpressed taxpayer
Thursday, September 15, 2005
CMM does not guarantee anything. It improves the likelihood of a predictable outcome.  In the case where a system was not scalable, the fact they were level 5 would  have reduced that outcome, but certainly not eliminated it.

Think of it this way.  You ask me to build you a car to get to work.  So, I go and build a nice Toyota Camary.  It's fast,is somewhat attractive and hey it even gets good mileage.  Things you describe in your specifications.  On the day of arrival, I tell you, we are $10,000 under budget.  Yahoo! 

Looking in the parking lot, you can't seem to find it.  When I point it out, you tell me that's nice, but you haul the manure to the farm where you work. 

CMM processes should investigate when/where we had a disconnect. You said "build a car to get to work".  You meant "vehicle" and assumed if I did not know that I should have asked.  Somewhere we would also find that either you did not certify specifications or I took a left turn and never sent it back through the loop.  In the end, the _next_ project is going to benefit.

Where I see CMM resistance at its highest is level 1 to 2. The reason is these are process changes within the management of projects themselves.  CMM took off like gang-busters in the 90s until managers, directors, and VPs realized it was not the developers that needed to change, but them.  Then suddenly, it wasn't nearly as exciting. PMI tried to bridge the void, but like "Total Quality" and "Six Sigma" it lost is shine when it became obvious this was not going to make Polly Programmer and Dean Developer 5 times more productive, or guarantee a project would be on time and budget, using the same PM techniques PMs have always used.

Where it has hung on is in the areas of government, where they want to know that if you bid $10,000,000  and seven months, you have some chance in heck of being close.
Friday, September 16, 2005

This topic is archived. No further replies will be accepted.

Other recent topics Other recent topics
Powered by FogBugz