Capability Maturity Model (CMM) is a model of 5 levels of process 'maturity' that determine effectiveness in delivering quality software. The 5 levels of CMM are described as below:
Level 1: Initial: - characterized by chaos, periodic panics, and heroic efforts required by individuals to successfully complete projects. Very few or none of the processes are in place.
Level 2: Repeatable: - Software Project Tracking, Requirements Management, Realistic Planning and Configuration Management Processes are in place; successful practices can be repeated.
Level 3: Defined: - Standard Software Development and Maintenance Processes are integrated throughout an organization. A Software Engineering Process Group is in place to oversee software processes, and training programs are used to ensure understanding and compliance.
Level 4: Managed: - Metrics are used to track productivity, processes, and products. Project performance is predictable, and quality is consistently high.
Level 5: Optimizing: - The focus is on continuous process improvement. The impact of new processes and technologies can be predicted and effectively implemented when required.
Any organization can start from any level, but its motto is to reach level 5; where the focus is continuous process improvement. By doing this, high quality s/w delivery is assured.
From this, we can see that the whole essence of CMM or CMMI is to produce quality software. It targets the whole organizational practices (or processes), which are believed to be the best across industries. Testing is part of Quality Assurance. CMM levels play an important role in an organization’s Quality Assurance effort. Thus testing plays an important role in determining CMM level.