there’s an interesting, if not largely commented on, discussion on
advogato

regarding
software development models

:

“My company just started with the company wide implementation of the CMM practices. Which means a lot more documentation, more task lists, more reports, more forms to be filled, rigid templates and in general more structure to whatever we have been doing in the past.

The thing is supposed to add to the profitibilty of the company and bring in some order. We always had followed the practice of writing good documentation and following plans, but working to some particular model like CMM, is some sort of working in bounds. Have any of the people worked within such environments ? Would like to know the benefits as well as the disadvantages.”

as somebody who works in an environment indoctrinated with the tenents of the
capability maturity model

, i’m very interested in these types of questions. as is alluded in one of the responses, many people consider the
capability maturity model

to be antagonistic to more
“agile”

development practices.

as usual it’s not really that black-and-white.
extreme programming and capability maturity model

provides a nice introduction to some of the issues:

“My assessment overall is that XP has some characteristics in common with the higher SEI levels, up to and including level 5. However, I would not assert that an XP team is a level 5 team. It takes a lot more documentation and “proving” going on in CMM than we recommend for XP. XP is in some ways a “vertical” slice through the SEI levels 2 through 5.”

Extreme Programming from a CMM Perspective

gives a slightly more detailed overview of how one might attempt to bring together the demands of the cmm with more agile practices:

“The Software CMM focuses on the management issues associated with putting effective and efficient processes in place, along with systematic process improvement. XP is a specific set of practices — a “methodology” — that is effective within its context of small, co-located teams. Both have good ideas that can be synergistic, particularly in conjunction with other good engineering and management practices.”

despite the apparent synergies, it’s been my experience that the clash in cultures can present significant hurdles marrying the practices, which is unfortunate since both have their time and place. that said, i think with a little blood, sweat and tears good things can result by bringing the best from both worlds.

Leave a Reply