A process is the system of rules/methods and tools that people use to convert the inputs given them (by customers, users, themselves) into the outputs expected of them (by their customers, users and managers.) The Capability Maturity Model Integration (CMMI)(r) concerns itself with the rules portion of the process triangle and leaves the selection of tools and personnel up to each individual organization.
The CMMI provides both staged and continuous representations by which organizations can gauge their process maturity against an industry accepted reference model. If an organization wants to increase or improve its process maturity it will have to initiate a Software Process Improvement (SPI) effort. In order to be successful, there are several basic principles of software process improvement that should be followed.
The Basic Principles Of Software Process Improvement
- Major changes must start at the top – It’s all well and good to try to get a grass roots process improvement effort going, and it may make you feel better; but to really be successful it takes the management’s approval, encouragement, and support. In fact, if management is not a continuous visible presence supporting the process improvement effort, it is highly likely that the initial feel good glow will shortly be replaced by cynicism and discontent.
- The process, not the people, should be fixed – If an organization has no clear cut roles and responsibilities and guidance on how to perform different roles, there is the tendency to lay the blame for lack of success at the feet of the people who must do the work. Nothing could be further from the real situation, which is, the failure of management in fulfilling its obligation to the staff in the area of clearly stating their expectations as to how each person is to do what is expected of them and by when.
- Improvement must be continuous, else stagnation occurs, followed by decay – Without periodic inputs of energy (training, money, encouragement, reward, incentives, etc.), the continuous process improvement system will behave much as any other system in the real world. If you don’t paint your house it will rot. If you don’t work on your relationships they will fail. Continuous process improvement is just like any other system; don’t expect it to behave any differently.
- The process, not the people, should be fixed – If an organization has no clear cut roles and responsibilities and guidance on how to perform different roles, there is the tendency to lay the blame for lack of success at the feet of the people who must do the work. Nothing could be further from the real situation, which is, the failure of management in fulfilling its obligation to the staff in the area of clearly stating their expectations as to how each person is to do what is expected of them and by when.
Using the CMMI as your framework for adhering to the basic principles of software process improvement will drive your organization in the direction of heightened software process maturity. This in turn will significantly improve the chances of meeting your project's cost, schedule and quality targets.
If you have any further questions about software process improvement, appraisals or training, please feel free to email me.
Comments