views:

106

answers:

4

Hello,

We are currently interested in implementing CMMI level 2 for our development processes. I've read some documents about CMMI and also Scrum. Personally I'm interested in Scrum as our native development processes because it can be easy for all team members to use (we are just a small team), but I have a few questions:

  1. Has anyone implemented CMMI level 2 With Scrum?
  2. Any suggestions for CMMI and Agile? Are these easier to use than Scrum or Scrum-like approaches?
  3. Also any suggestions for tools related to this topic and our requirements.

Best regards!

+4  A: 

CMMI does not dictate what your processes are, just that you have some, they are documented, and that you follow them.

Rob Goodwin
+1  A: 

Here's a tool for Scrum:

http://www.firescrum.com/

code4life
Is that relevant to OP's question about CMMI?
JeffH
He wanted to know what tools there were for CMMI and Scrum... (question #3)
code4life
+4  A: 

[soapbox] After being through CMMI certification at a few places, I'm not a fan. That said, neither am I one of those who say it is evil; I just think it is poorly applied or mis-applied more often than not. However, for some types of work it is required, even if it is not providing anything useful ... [/soapbox]

Anyway, none of the places I've worked have done Scrum and CMMI, so I can't tell of first hand experiences. (As Rob Goodwin submitted while I was typing my answer) CMMI doesn't tell you what to do, other than documenting your procedures and then following what your documentation says ... and documenting that! Fortunately, you can modify your procedure documents when necessary.

CMMI L2 deals mostly with project and configuration management; it doesn't have that much to do with the actual software development process (and in fact can be applied to non-software development work). Thus, as long as your documentation is kept in order and details what you are going to do with Scrum techniques (and you keep it up-to-date) you should be fine.

A couple resources I've seen during my CMMI experiences about blending Agile and CMMI are the Agile CMMI blog and Broadsword Solutions agileCMMI product. Not being well versed in either CMMI or Agile (we just sort of wing it where I am!), I don't know how good they are.

GreenMatt
Thank you!can you please, tell what's best approach you've used to perform CMMI? or what approach you use with CMMI?
@0x13: I've worked for 3 groups that obtained CMMI L2 certification while they employed me: At #1 I wasn't involved, but they hired internal experts, had outside training for other employees who were involved, and spent over a year preparing for the appraisal. #2 crammed the process into a couple months with no internal experts and training for only a few employees; I was pulled in for the last couple weeks, and was amazed we were certified. #3 took a similar strategy to #1, but didn't hire any internal experts. Depending on your size and budget, I would recommend the approach of #1 or #3.
GreenMatt
One curiosity (at least to me) of CMMI is that - at least in my experience - the same (external) person/organization usually does training and consulting to prepare an organization for CMMI and then does the appraisal. To me, it seems a conflict of interest could develop in such a situation, but it seems to be the way things usually work.
GreenMatt
thank you very much!
+4  A: 

As Matt ("GreenMatt") noted, one of the resources is the Agile CMMI blog.

I am the author of that blog, and I'm also a CMMI appraiser, so, I can provide you with first-hand information on achieving CMMI levels while also incorporating agile practices.

Rob's response is correct, to a degree, but can also be taken the wrong way. Your processes must be known to you, which is more important (and different) from being "documented". You need to plan your processes so that you can manage them at maturity level 2. Also, your processes would need to be conducted in such a way that they are able to achieve certain goals that are listed in CMMI.

For Maturity Level 2 and Scrum, what's important is that you are truly following Scrum and are not leaving out the hard parts like: calculating velocity & using velocity to set sprint backlogs, setting sprint goals, and not disrupting the sprint in the middle, etc.

As Rob correctly pointed out, CMMI contains no processes. What CMMI does have are only practices to improve your processes. That means you do need to know your process in the first place or CMMI will only confuse matters.

Matt is right, it's not the CMMI makes things hard, it's just that poor uses of CMMI makes things hard. And, he's also correct that ML2 has little to do with the actual development and much more to do with running the project and managing scope. The bottom line is that CMMI and Scrum at ML2 is very easy together, as long as you are clear about how you're using both.

These are some of the tips I can easily provide in a forum like this. Feel free to look me up and get in touch for a more detailed conversation.

Hillel
thank you for explications