The ScrumMaster Trainers list is discussing the Scrum CMMI Level 5 paper and raise good questions:
Does CMMI provide any benefits? Some have worked on CMMI projects that just generated more overhead with no benefits. What do the authors think about this?
Systematic Software Engineering finds CMMI to have strong benefits and would not do without it.1. Strategically they want to get large contracts in the U.S. and Scandinavia that require CMMI Level 5.
2. It gives high predictability. Contract date completions are over 95%.
3. It provides a better engineered product for scalability, maintainability, adaptability, etc.
4. It eliminates 80% of rework (which includes bugs). Scrum then cut the remaining rework in half so now they have eliminated 90% of rework. The average Scrum only eliminates 40% of rework without CMMI.
Systematic would do CMMI over Scrum. However, they find Scrum to provide amazing benefits to CMMI Level 5. I think the cost of going to CMMI Level 5 starting with Scrum could be reduced by 50-80%. This would allow more companies to achieve the benefits. We believe everyone can provide better engineered products with much higher quality and very high predictability on dates. The process overhead of CMMI Level 5 with Scrum is 4%. Most Scrums have far more waste in them than 4%.
Of the Scrum's I have seen, early implementations typically average about 50% waste, the CMMI Level 1 number. However, even a bad Scrum improves productivity so total waste is less than Scrum. Yet most companies can't show metrics that demonstrate they more than doubled productivity. This is so easy to do with Scrum I'm starting to think that we should say that a company hasn't implemented Scrum yet if they cannot show real metrics that demonstrate they have doubled velocity using their burndown charts. Failure to do this means they have not been tracking their burndown so they haven't implemented Scrum. Or it means their implementation is so riddled with impediments that they have been unable to implement Scrum effectively.
A lot of companies are going through the motions while disfunctional management is so bad they can't really implement Scrum. CMMI Level 5 will require managers to remove impediments or lose CMMI Level 5 certification. We have agreed on this with the CMMI Level 5 auditor, who says the management role must be clear and must be enforced. High maturity means that management aggressively eliminates impediments surfaced by the teams. They should start doing this now even if they are going to remain at CMMI Level 1 (where most companies are). Failure to do this means management sucks.
In some companies I work with, particularly the multi-billion dollar companies, the cost of developing software is so small compared to the rest of the company budget, that they do not have the incentive to remove software impediments because it requires change, and change is hard. They have bigger problems in other parts of the company. This just means the management is doing a worse job elsewhere than they are doing in software development. At least, they should insist that the software development managers clean up their act, even if they can't provide them with much higher level management attention. Scrum metrics and Scrum transparency of data will help them clean up what is essentially a middle-management problem with very little effort.
They should then ask development managers why they can't operate at CMMI Level 5 when the process overhead is 4% or less with Scrum. Management wants firm dates they can count on. They want higher quality and more scalable and adaptable implementations. Good CMMI implementation can provide this. The only thing preventing progress is the cost of change. That cost should be carefully analyzed. A roadmap should be build for process change and resource requirements should be mapped out with a timeline. Once this is done, a clear business decision can be made and execution of a rational plan becomes much easier and more effective.
The bottom line is that most companies will never find an ROI that justifies going to CMMI Level 5 with a waterfall methodology. The cost is just too high and the benefits too remote. With Scrum, the cost is dramatically reduced, and the speed of implementation could be radically accelerated. The ROI could suddenly look pretty good for a lot of companies.
In the final analysis, some process experts say that a well implemented Scrum across a company cannot be done without being at CMMI Level 3. Essentially you get that for free by implementing Scrum well. Going to Level 5 won't cost you much more with Scrum.