7 Tips for Implementing CMMI
15 June 2010 Leave a comment
CMMI (Capability Maturity Model) is used in a number of businesses to help improve how they work. It was started in the technology industries and with big organisations but you could apply parts of it to your organisation. The point is to get your organisation to do things in a predictable way (giving benefits in being able to estimate what new work will cost) that is measured so you can make business decisions based on real information not guess-work. There is another blog that talks about the structure of CMMI. Oh yes, the model is free to use but if you want a badge for your business, you’ll have to pay a qualified assessor.
Tip 1: don’t start with the model
CMMI is a model. It is an abstract – the boiled down essence of what needs to be done. It describes each process as a series of objectives and activities. Learn the model and how it applies to the type of business you want to improve but don’t start from the model – that leads to inefficiencies and waste.
Tip 2: start with the reality of the business
Many organisations start projects with “achieve CMMI level x in 2 years”. That is OK as an objective but it tells you nothing about the purpose of the project. Understand why the business wants to do CMMI driven improvement then focus on that. The project is more likely to get stakeholder backing and be successful if there are benefits beyond “get the badge ’cause its a good thing to do”.
Tip 3: model the business as a series of processes end to end
CMMI gets into the detail of the best way to do something very quickly. For CMMI to be successful, it needs to run with the tide of effort in the business. High level understanding of the process will show you where different parts of the model apply – rather than every job trying to do every bit of it and drowning in paperwork that doesn’t quite fit what they are trying to do. Knowing the processes at a high level noting the inputs, outputs, resources, controls, measures, other data required to make the work will help all the way through (IDEF0 – IDEF zero – may help)
Tip 4: one process at a time
From the high level, take each discrete processes and drill that down until everyone working on that process understands their inputs, outputs and methods for their work. Make sure the outputs from each sub process joins up with the next step and that each high-level input and output matches up with the chain of subordinate processes that show the details.
Tip 5: use the model to validate
This is so easily forgotten (I know I’ve paid the price of missing this out sometimes). Walk through the model with groups of stakeholders look out for processes you missed, processes without controls, inputs or outputs, or controls, inputs or outputs that aren’t used. Then double-check against the CMMI model that the process description is complete. Make a list of the things you’ve missed and work them through with the people who will do the job: something inflicted upon them by you looking at the model will disengage them.
Tip 6: remember CMMI is a model
Just because it is in the model, it doesn’t have to happen in the business. The model is generic and if it simply doesn’t work for your business, exclude it from the scope. That is not an excuse for laziness but it does mean you don’t add unnecessary work to the business.
Tip 7: look for efficiencies and improvements
Remember that the business works in real life. In reality people can do things together and at the same time (a project board can have an agenda item to be the change control board, rather than have a separate meeting) do not implement the abstract model make it efficienctly fit the business.