• Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other Pie Elite all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Campbell Ritchie
  • Jeanne Boyarsky
  • Ron McLeod
  • Paul Clapham
  • Liutauras Vilda
Sheriffs:
  • paul wheaton
  • Rob Spoor
  • Devaka Cooray
Saloon Keepers:
  • Stephan van Hulst
  • Tim Holloway
  • Carey Brown
  • Frits Walraven
  • Tim Moores
Bartenders:
  • Mikalai Zaikin

What is CMMi, PCMM and CMM? Which is good for Quality

 
Greenhorn
Posts: 1
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
I need some information about the Quality levels. I am working in CMM Level5, which is also PCMM Level 5 company. But I need some information about the good Certification for Quality? :roll:

[please use the forum, not email. Thanks - Ilja]
[ January 18, 2006: Message edited by: Ilja Preuss ]
 
Greenhorn
Posts: 22
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Srinivas, you can go to SEI website to find most of the info on CMM and CMMI since they developed it and do the assessments.

SEI Home page

good Certification for Quality?



I am not too sure what you mean by this. CMM and CMMI define a process that may produce "High quality" software. If you are in a company that is CMM 5, then you should have access to all software production processes etc and references to quality.

Maybe even chat with the QA's they will provide more information in regards to quality.

Hope this helps,
Shameer
 
author & internet detective
Posts: 41860
908
Eclipse IDE VI Editor Java
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
CMMi replaced CMM. This description of PCMM explains the differences between PCMM and CMM/CMMi well. In particular:

Some argue the CMM focuses too heavily on process or technology, not people.

 
author
Posts: 608
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
These process frameworks don't ensure quality, and frankly they may even prevent it and instead promote uneccessary bureaucracy.

Agile techniques such as TDD and more importantly Refactoring promote quality.

- Scott
 
author
Posts: 14112
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
From what I've heard, *CMM* mostly encourage repeatability and discourage taking risks - which isn't exactly what you want to do if you need to produce *innovative* high quality products.
 
Ranch Hand
Posts: 120
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Hi Scott & Ilja,
I would like to raise my doubts too. I live in Bangalore,India where CMM/CMMi/PCMM are hyped too much. Industry experts over here take pride in the fact that Bangalore has the highest number of CMM Level 5 Companies in the world.
I am learning OOA/D at the beginner level using books authored by Craig Larman,Philip Kruchten. I use some web resources as well including ambysoft.com as suggested by Scott. My questions are :
1. Is it acually worthy for these companies to get CMM/CMMi/PCMM Certified, since you suggest that these process frameworks don't assure quality?
2. Are CMM/CMMi/PCMM outdated?
3. Where does Agile Model stand? Is it an extension of CMM/CMMi/PCMM or is it an alternative to CMM/CMMi/PCMM?
4. If it is an alternative to CMM/CMMi/PCMM, are there any assessment bodies to certify the practising companies at a certain level?
5. Despite getting to know about Agile methods, I am forced to work in a CMMi environment in my organization that does Big Design Up Front. I don't find too many companies following agile methods over here in India. It is very much in its infancy over here. When would the situation change?
I look forward to your replies.
Thanks very much both of you. I have benefiited a lot from your previous replies.
 
Scott Ambler
author
Posts: 608
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator

1. Is it acually worthy for these companies to get CMM/CMMi/PCMM Certified, since you suggest that these process frameworks don't assure quality?




Absolutely. Having the CMMI level X gold star is absolutely critical to your company's marketing efforts to your clients in the US and Europe. Your clients believe in this rubbish and look for it.

2. Are CMM/CMMi/PCMM outdated?



Yes. They really weren't leading edge at any point in time, from what I can tell. The CMM/... comes from the US DoD, the worst organization in the world at developing software.


3. Where does Agile Model stand? Is it an extension of CMM/CMMi/PCMM or is it an alternative to CMM/CMMi/PCMM?



Agile development techniques focus on repeatable results, not repeatable processes. We're far more interested in developing high-quality, working software which meets the changing needs of our stakeholders. Furthermore, agile techniques come from people who actually build software for a living. How many of the SEI people do you think actually code on a regular basis?


4. If it is an alternative to CMM/CMMi/PCMM, are there any assessment bodies to certify the practising companies at a certain level?




I don't know of anybody giving out Agile gold stars yet. Frankly, many people in the Agile community consider that idea to be very repulsive, but the reality is that most organizations will want something like this because they think that it means something.

5. Despite getting to know about Agile methods, I am forced to work in a CMMi environment in my organization that does Big Design Up Front. I don't find too many companies following agile methods over here in India. It is very much in its infancy over here. When would the situation change?



It's changing now. I was in India last year giving agile talks and consulting to some of the services vendors. People want to change, but their client base isn't letting them. Plus, they've spent significant effort building up their existing organizations, and it's hard to change things.

- Scott
 
Ilja Preuss
author
Posts: 14112
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator

Originally posted by Scott Ambler:
I don't know of anybody giving out Agile gold stars yet. Frankly, many people in the Agile community consider that idea to be very repulsive, but the reality is that most organizations will want something like this because they think that it means something.



Well, there is the Scrum-Master certification, and I think the DSDM consortium provides something similar?

It's far from being similar to CMM certification, though. And even those "Agile certifications" are quite controversial in the community...
 
Shameer Subedar
Greenhorn
Posts: 22
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Scott, you have brought up some interesting points. I have a few questions in regards to the CMM and Agile processes.

Having worked in CMM company for a good 5 years and now working in very ad-hoc environments with no processes, would it be possible to integrate the CMM or CMMI with the Agile methods. The list below from the Agile Alliance homepage lists the following methods:

* AD - Agile Database Techniques
* AM - Agile Modeling
* ASD - Adaptive Software Development
* Crystal
* FDD - Feature Driven Development
* DSDM - Dynamic Systems Development Method
* Lean Software Development
* Scrum
* TDD - Test-Driven Design
* XBreed
* XP - eXtreme Programming

From my understanding and experience of CMM, it describes a set of KPA�s that must be meet. How the organization defines the actual implementation of the KPA's is not specified. This I believe allows an organization to use process/methods from the agile community, to map back to KPA's defined by the CMM

In fact looking at XP, and TDD could even classified as KPA level 5 that maps to defect prevention. That produces higher quality code.

Having said all that, would it be correct to say that CMM / CMMI provides an over arching process model that can integrate with agile, RUP or
process xyz ?

The point you made about "promote unnecessary bureaucracy", I would have to agree with this, good example would the whole change process CCB. This can be an endless cycle that never ends until a decision is made.

The final point I would like to make is that the CMM/CMMI also provides the ability to tailor the process for your current project. In the unlikely event, a project manager (from a CMM company) could say to his team we will follow agile methods for this project. Moreover all projects that are developed by CMM / CMMI company does not have to run at Level 5, just remove KPA's that are not required.

Scott if you could clarify the above that would really appreciated. I am not promoting the CMM/CMMI but trying to better understand the whole agile methods and process as I very new to it.

Many thanks,
Shameer
 
Jeanne Boyarsky
author & internet detective
Posts: 41860
908
Eclipse IDE VI Editor Java
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
At a talk I attended a few weeks ago, the presenter said that some CMM assessors will let you argue that most agile processes fit CMM. This sounds highly subjective and dependent on the appraiser though.

CMM was written to fit a waterfall approach as used by the Dept of Defense. So sometimes retrofitting it for agile requires stretching.

I think it depends on the process. For example, TDD doesn't conflict with CMM as much as the whole of XP does. We are getting our feet wet with CMM while using iterations and unit tests. So far, there haven't been any conflicts.

On "ensuring quality", I don't think any process can ensure it. Of course some make it more likely than others.

"From what I've heard, *CMM* mostly encourage repeatability and discourage taking risks"
Yes. The idea is to be able to better predict how long things will take and the expected quality. For example, if you typically get 4 defects and an app has 100, you know something is wrong. It doesn't discourage risks per se. More monitoring risks and being on top of them when they occur.
 
(instanceof Sidekick)
Posts: 8791
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Here's a neat story about Agile CMM. It winds up not being what most people think of as "agile" or "cmm". Of course it's about MicroSoft where they "embrace and extend" any good idea until it's, um, MicroSoft.
 
Ilja Preuss
author
Posts: 14112
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
The Agile Alliance also has a bunch of links to articles on Agile + CMMx: http://www.agilealliance.org/articles/AgileArticlesCatSearch?category=CMM
 
Scott Ambler
author
Posts: 608
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Answering a few questions at once, sorry for any confusion.

Having said all that, would it be correct to say that CMM / CMMI provides an over arching process model that can integrate with agile, RUP or process xyz ?


In theory, yes. Unfortunately, the CMM/I mindset typically leads to a serial, bureaucratic process. This doesn't fit will with the Agile or RUP mindsets.

The point you made about "promote unnecessary bureaucracy", I would have to agree with this, good example would the whole change process CCB. This can be an endless cycle that never ends until a decision is made.


Yes, that's a great example. Management thinks that's a good strategy, the CMM/I consultants probably think so too, but it dramatically reduces your ability to be agile.

At a talk I attended a few weeks ago, the presenter said that some CMM assessors will let you argue that most agile processes fit CMM. This sounds highly subjective and dependent on the appraiser though.


Yes, CMM/I assessment is highly subjective, no matter how you look at it. Worse yet, in my experience it really doesn't prove much. I've been in several organizations which claim to be CMM level 3, and have been assessed at that level, yet when I ask the developers what process they follow they can't answer me, and sometimes even don't know who to ask.

CMM was written to fit a waterfall approach as used by the Dept of Defense. So sometimes retrofitting it for agile requires stretching.


Yes, and the DoD is the worst organization in the world at software development. Why are we listening to them?

"From what I've heard, *CMM* mostly encourage repeatability and discourage taking risks"
Yes. The idea is to be able to better predict how long things will take and the expected quality. For example, if you typically get 4 defects and an app has 100, you know something is wrong. It doesn't discourage risks per se. More monitoring risks and being on top of them when they occur.


Which is more important -- following a repeatable process or producing repeatable results? CMM/I focuses on repeatable process, agility is about repeatable results (the production of high quality software which meets the changing needs of your stakeholders).

- Scott
 
Jeanne Boyarsky
author & internet detective
Posts: 41860
908
Eclipse IDE VI Editor Java
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator

Originally posted by Scott Ambler:
Which is more important -- following a repeatable process or producing repeatable results? CMM/I focuses on repeatable process, agility is about repeatable results (the production of high quality software which meets the changing needs of your stakeholders).


The theory is that a repeatable process will lead to repeatable results. We haven't been doing CMM long enough to see how that pans out.

Yes, and the DoD is the worst organization in the world at software development. Why are we listening to them?


Good question. And there is also the question of why a process (CMM) that works on 1000 developer projects would automatically be implied to be useful on a 10 person project.
 
Ilja Preuss
author
Posts: 14112
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator

Originally posted by Jeanne Boyarsky:

The theory is that a repeatable process will lead to repeatable results.



That would only be a sensible theory, in my opinion, if the repeatable process would be repeatedly applied to the same problem, in the same environment. As a consequence, it builds on the assumption that people are replacable.

Agile Software Development builds on the assumption that it's the people and there interactions that let a project succeed. We have a violent crash of value systems here...
 
Scott Ambler
author
Posts: 608
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator

The theory is that a repeatable process will lead to repeatable results. We haven't been doing CMM long enough to see how that pans out.


Yes, but that doesn't seem to be the case at other organizations. Repeatable results definitely result in repeatable results though....

Good question. And there is also the question of why a process (CMM) that works on 1000 developer projects would automatically be implied to be useful on a 10 person project.


I've seen CMM applied to smaller projects too. I've also seem 20 person projects bloat out to 80 person projects as the result of CMM/I. Perhaps the CMM/I's focus should be on economical processes, not on repeatable processes?

The bottom line is that there has never been a study done comparing CMM/I organizations with organizations which are good at software development. I suspect that we all know what the answer is, including the pro-CMM/I people.

- Scott
 
Jeanne Boyarsky
author & internet detective
Posts: 41860
908
Eclipse IDE VI Editor Java
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator

Originally posted by Ilja Preuss:
As a consequence, it builds on the assumption that people are replacable.


Right. That's a central value of CMM. And I agree it isn't something that is logically true. However, if you have the same people and similar projects, it stands to reason that we will get better at estimating. Or maybe that's just wishful thinking.

Originally posted by Scott Ambler:
Repeatable results definitely result in repeatable results though....


 
Ilja Preuss
author
Posts: 14112
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator

Originally posted by Jeanne Boyarsky:

However, if you have the same people and similar projects, it stands to reason that we will get better at estimating. Or maybe that's just wishful thinking.



It's certainly not wishful thinking - if you regularly reflect on how you are doing.

You don't really need CMMx for that, though...
 
What? What, what, what? What what tiny ad:
a bit of art, as a gift, the permaculture playing cards
https://gardener-gift.com
reply
    Bookmark Topic Watch Topic
  • New Topic