Archive for the ‘Uncategorized’ Category

Thoughtful insights

Friday, December 15th, 2006

I’ve been to Creative Chaos a number of times recently.

In the recent set of posts (same link as above), Matthew Heusser has some thoughtful insights about AgileCMMI.

Although it seems like his actual hands-on experience with CMMI comes from a particular flavor of ultra-heavy CMMI implementation, I think he does a pretty fair (as in balanced) job of representing CMMI and some of the challenges when implementing it in an otherwise agile development environment.

I could also appreciate him pointing out several blanks in the agile approaches as well and his recognition of some disconcerting trends in the software industry.

But none of this rises to the top of reasons of why I decided to cross-post his blog. What compelled me most to cross-post is a statement he makes in a number of places about CMMI’s inherent “value system involving comprehensive documentation”.

I think Matthew deserves a lot of credit for making — even given this way of understanding CMMI — a number of very astute leaps in logic to move past this inherent “value system” and towards ways of implementing process improvement with CMMI that can co-exist with agile development.

What I would like to add to the discussion are these observations from the “other side” of the CMMI table that may, I hope, make it even easier for others to make the same leaps in logic:

  • It’s not “documentation” that CMMI expects, it’s *evidence* of a process that shows up in “work products” of the process. CMMI does not dictate or expect documentation, evidence types or work products. The projects (or their organization) can determine those for themselves — and should! The common problem in far too many CMMI implementations is the interpretation of the model in ways that make the lives of the appraisal team easy and the lives of the developers painful. That’s where most of your ‘heavyweight’ documentation-centric stories come from. I sympathize with any organization who has or is taking that route. It’s completely unnecessary and in many cases the wrong path to be on.
  • The current version (v1.2) of CMMI is 150 pages shorter than the one Matthew mentions (v1.1). That’s a 21% reduction in page count. The formatting is the same and the vast majority of the model is intact, yet the SEI was able to simultaneously support the current version of its flagship product while also improving it by 21% (using just page-count as a metric) in about 5 years. Some who know might say that dropping 3 process areas makes it easy to drop page-count. But those who understand would point out that the process areas were dropped, but the goals and practices from those process areas were transferred to other process areas, not eliminated. What page-count doesn’t convey is the improvements in communicating the material or in clarifying the implementation of the model. Unfortunately this is purely subjective and can only be demonstrated through usage and “proven” (for lack of a better term) through surveys. But why does this point about v1.2 matter? Because it demonstrates that the SEI and CMMI are not immutable or infallible, and, to re-enforce the idea that if something as abstract as a model for process improvement can be made better, what are the implications for interpreting the [CMMI] model and also interpreting the “model” for Agile so that they grow towards each other? Perhaps, if the ‘manifesto’ were also viewed as a model it could help things move along.
  • I’d like to toss something out there… while there are way too many folks misreading CMMI that ends up with document-centric, heavy-handed implementations, I suspect there’s a comparable number of Agile proponents mis-reading the manifesto resulting in the “things on the right” being forbidden, let alone valued less than the “things on the left”.

    More Good Agile CMMI news…

    Saturday, November 18th, 2006

    Check out this news from Brad Swanson’s blog.

    As you read, please keep the following in mind:

    The company was already very mature at using agile methods. It’s likely that their maturity in their own processes enabled their capability to affect process improvement (which, afterall, is what CMMI is really about). So, it’s not that agile ALONE facilitated their CMMI ML4 rating, it’s that they were good at what they did, had a culture of discipline to keep at it and that alone probably got them all the way through ML3. What ML4 provided was the ability to manage their projects and their processes statistically. Now *that* takes some doing!

    Brad is right that many companies achieve high maturity levels (i.e., 4 & 5) using smoke and mirrors. And, the SEI is attempting to crack down on that (personally, I’m not sure their approach will entirely work).

    Although… to get ML4 in two years is very very unusual. Readers should be warned that the SEI *is* likely to investigate that appraisal.

    On the other hand, if it can be shown that mature agile methods allowed the company to get to ML4 in two years, you can bet it will open a flood of interest in agile from the “traditionalists”.

    Way to go!

    What a difference a YEAR makes!

    Wednesday, November 15th, 2006

    Reporting here from Denver as I particpate in the NDIA CMMI conference (see this entry), I am happy to report that traction for agile and CMMI is really growing.

    The Agile/Lean track sessions are full, attracting 40-80 people each (while there are at least 8 concurrent tracks). The presentations are unique and most of them are pointing out all the different ways in which to apply CMMI in agile settings and most of those are pointing out how it’s poor CMMI implementations and bad processes that prevent agile from surviving in places where CMMI is being implemented. In fact, one presentation pointed out how being (‘doing’) agile actually takes more discipline than ‘traditional’ BPUF development because what BPUF does is actually abdicate to a contextually obsolete document the responsibility for staying on top of customer needs and priorities.

    One fascinating (but not surprising) presentation was of a large systems integrator (i.e., “Defense Contractor”) with a large Maturity Level 5 organization that is using agile approaches and maintains its Maturity Level practices. As you might imagine, there was hardly A THING about how they do it that isn’t highly proprietary, so whatever the presenter said is about as much as I know about it. Still… I plan to become a really good friend to this person! :-)

    Way cool!