CAPABILITY MATURITY MODEL


DEFINITION:  CMM is nothing but an organizational model in which how the processes in an organization are managed.

HISTORY:
CMM is a service mark registered with the U.S. It was originally developed as tool for assessing the government contractor’s processes to perform a contracted software project.
Even though it starts with the software development process it penetrates into all departments such as Software engineering, System Engineering, Project Management, Risk Management Etc., It is used to evaluate the way the software was built and Maintained. The CMM was found to be problematic when it is integrated with the multiple models so it paves the way for the New Model called CMMI( Capability Maturity Model Integration) which sort out the issues of using Multiple Models in software Processes. Each and every entity ( it may be Manufacturing or Software ) are always looking for their best process to improve the efficiency, quality of the product , and also to satisfy the customer.

SOFTWARE MATURITY MODEL:

 It describes the principles and practices involving in software process maturity. It intends to improve the Maturity of the software process. It consists of five stages and it starts from Initial to Optimizing of the Processes. To identify the key process areas where we can improve it to a disciplined one. Each and every Process has their own standard operating procedures, policies that force the organization to implementing and performing consistently.

Practices should be repeated so that you can improve it without any obstacle. After the improvement of the process the organization should implement and perform consistently.
Define the process, Analyze the process and the performance variations, Measures should be taken to maintain the process inline. Standardize the process and the final stage is optimizing it.





FIVE STAGES OF CMM:

Initial:

In the initial level process is ad-hoc, poorly controlled, unpredictable, and only a few processes are defined.

Repeatable:

The Output of the process is consistent and basic controls are in place, and the process that produces results are
 not understood.

Defined Level:

In this level the process outputs are consistent and understood, used by the organization.

Managed Level:

In this level process are measured by the detailed collection of data and the quality of the output produced by the process.

Optimizing Level:

In this level continuous process improvement is in place and adopted by feedback, new ideas, technologies.