What is Capability Maturity Model(CMM)?
Explain levels in CMM.
The Capability Maturity Model (CMM) is a methodology used to develop and refine an organization's software development process. The model describes a five-level evolutionary path of increasingly organized and systematically more mature processes.
The different levels of CMM are
- At the initial evel, processes are disorganized and chaotic. Success is likely to depend on individual efforts, and is not considered to be repeatable, because processes would not be sufficiently defined and documented to allow them to be replicated.
- At the repeatable level, basic project management techniques are established and successes could be repeated, because the requisite processes would have been made established, defined, and documented.
- At the defined level, an organization has developed its own standard software process through greater attention to documentation, standardization, and integration.
- At the managed level, an organization monitors and controls its own processes through data collection and analysis.
- At the optimising level, processes are constantly being improved through monitoring feedback from current processes and introducing innovative processes to better serve the organization's particular needs.
The capability maturity model specifies an increasing series of levels of software development organization.The higher the level,the better the software development process,hence reaching each level is am expensive and time consuming process.
Levels of CMM:
Level on:Initial-The software process is characterised as inconsistent and occasionally even chaotic.Defined processes and standard practices that exist are abandoned during a crisis.Success of the organization majority depends on am individual effort,talent.
Level two: Repeatable-This level of software development organization has a basic and consistent project management processes to track cost,schedule and functionality.The process is in place to repeat the earlier successes on projects with similar applications.Project management is a key characteristic of a level two organisation.
Level Three:Defined-The software process for both management and engineering activities are documented,standardized and integrated into standard software process for the entire organization and all the projects across the organization use an approved,tailored version of the organizations standard software process for developing,testing and maintaining the application.
Level Four: Managed-Management can effectively control the software development effort using precise measurements.At this level organization set a quantitative quality goal for both software process and software maintenance.At this maturity level the performance of processes is controlled using statistical and other quantitative techniques and is quantitatively predictable.
Level Five:Optimizing-The key characteristic of this level is focusing on continually improving process performance through both incremental and innovative technological improvements.At this level changes to the process are to improve the process performance and at the same time maintaining statistical probability to achieve the established quantitative process improvement objective.