|
8. Capability Maturity ModelThe Software Engineering Institute (SEI) at Carnegie Mellon University has developed the Capability Maturity Model (CMM). This is an evolving model that combines knowledge from software engineering, project management and quality circles. It serves as a software process framework that organisations can follow. It contains five maturity levels as shown in figure 5 (taken from the University of Massachusetts Computer and Information Science website). Each level (accept for level 1) contains process goals that serve the purpose of improving the development process. When an organisation completes all of the goals at one level, they then attain that maturity level. They then proceed to implement the processes one level up.
Figure 5. The SEI CMM levels
The five levels are briefly described here:
The CMM model gives an organisation a comprehensive plan to follow to achieve a solid software development process. All of the key issues are included, and an increase in software quality should be apparent as an organisation moves up the levels. CMM is not free from criticism however. Many organisations are forced to undertake accreditation of some form by market forces. Most often this is in the form of ISO-9001 standard, but applies equally to CMM. If a developer does not have accreditation, it puts them at a disadvantage. These demands for accreditation may have, in some instances, lead to the inappropriate awarding of CMM or ISO. Ron Radice, CMM assessor and president of Software Technology Transition, suggests that it takes between 9 months and 3 years to move between levels of the CMM model. Some relatively young Indian software development companies have reported levels of maturity at 5. This is very rare in the software industry, and begs the question is the assessment playground level from country to country? A paper written by Cater-Steel and Fitzgerald (1998) also points out that certification may not be suitable for all organisations. This was not directly pointed at CMM, but the additional costs of implementing a model like CMM may exceed the benefits. This is most likely to be the case with a very small software development company / function. The paper also goes on to suggest that clients of a would-be developer look at other factors, in conjunction with accreditations, to determine their suitability for the project.
|