CMMI - CMMI Makes Me Inquisitive
2005.09.16
I work for a small company. And that’s a good thing. One main advantage of being small is that you can eliminate a lot of bullshit and get straight to the customer (less middle muddle, as Jason puts it). Being small increases adaptability and flexibility - you’re not a slave of a process, and don’t flinch in the face of change. Projects take ad hoc paths; the team has more room for creativity; hackers thrive. Small, indeed, is the new big.
I’ve always thought that really big organizations (read big open source projects. E.g.:Linux) and really small organizations (37 Signals) are better off without concrete processes. The ones in between, the medium to big software firms, need something to reduce chaos - best practices is as good a name as any for that something.
Mine could be a misinformed notion, and perhaps it was proved so today when I attended a presentation by V Sankaran of KPMG India, who is working with Virtusa on their CMMI appraisals. The following are some interesting points I gathered from Sankaran’s insightful presentation (Addison-Wesley has an easily digestible article on CMMI which I found quite helpful).
CMM, the (not so) old process model by SEI is dead. In it’s place is CMMI, a model that takes in to account the essential need for better integration of several possibly independant processes within a given organization. The goal of CMM and CMMI (or any similar standard, methodology, or guideline for that matter) is to allow organizations to streamline their software development and systems engineering processes in order to improve the way they do business.
However, a common trap most companies fall in to is making CMMI Assessment a goal rather than a means of achieving their business goals. Reaching a maturity level just for the sake of adding a medal to the tally and “empowering the marketing department” is taking CMMI by the wrong end.
CMMI is not a certification - no external body actually certifies a software development center as being CMMI compliant. It’s supposed to be an honest self-assessment, hence the word Assessment. Once you reach a maturity level, it’s yours for life. Reaching a maturity level is not so difficult as meeting client expectations once you announce that you’ve reached it - if you force processes on your organization just to be CMMI compliant and those processes don’t turn out to be ideally suited for you, soon your clients are going to see through that Level 5 label.
Answering questions from the audience, Sankaran explained how educating clients is a vital part of effective implementation of CMMI practices within an organization. If the client is not desciplined, the whole process will be affected. However, vendors who have understood the value of keeping the client on the same bandwidth are reaping the benefits. Instead of mind blowing presentations inside board rooms where potential clients are bombarded with CMMI maturity levels and ISO certifications and finally, if time permits, on what the company is all about, those organizations who have absorbed CMMI in to their processes seamlessly can invite the client to directly talk to the developers and experience first hand how his system will be built. That is always more effective than the sexiest ppt file.
When does CMMI stops being an overhead and starts becoming effective for small organizations? What minimum head-count would justify adopting CMMI? Those were our questions. And the answer was that CMMI is never an overhead if properly implemented, regardless of the size of the organization. Of course it would be rather difficult for a really small company to reach maturity level 4 and above due to reasons like project count (apparently you need to have atleast 7 ongoing projects at a given time), but achieving maturity level 3 should not be a problem for a company like ours, as far as the constraints of Assessments are concerned.
It was an interesting presentation, and I’m sure we’ll be posting more on these best practices in the future. It would be even more interesting to compare CMMI with the happy-go-lucky open source development model. Afterall, the projects that gave birth to the world’s most reliable operating system and the world’s most powerful web server never came close to using any standard process.
4 Comments
Comments Feed
sittingnut
September 17th, 2005 at 2:15 am
standard great
sittingnut
September 17th, 2005 at 2:18 am
sorry!
standard ne great
Ashoka Ekanayaka
October 25th, 2005 at 8:57 am
One thing I read about CMMI (and for ISO as well for that matter) is that “it helps documenting the success but generally gets in the way of creating it” This is from Mary Popendieck’s famous book on Lean Development. Needless to say, my personal experience forces me to agree completely. :-)
Detritus
November 22nd, 2005 at 3:33 pm
duh…
I only just figure out the rerecursive acronym in the title.
ha ha.
good one!