Capability Maturity Model Integration (CMMI) Overview
The Capability Maturity Model Integration (CMMI) is a model for creating and maintaining repeatable software, product, & service development processes. Moreover, CMMI assists organizations in improving processes, mitigating risks, repeating projects, and encouraging a productive development culture. In a nutshell, CMMI provides a structured view of process improvement across an organization.
CMMI was initially created by the Software Engineering Institute (SEI) at Carnegie Mellon University for use by the U.S. Department of Defense to assess the quality and capability of their software contractors. Since then CMMI models have expanded beyond software engineering to help organizations in any industry build, improve, and measure their development capabilities. Today CMMI is a common requirement for DoD and Federal Government contracts that include any kind of development.
CMMI Maturity Levels
The CMMI model breaks down organizational maturity into five maturity levels which each level providing a description of how well the behaviors, practices, and processes of an organization can enable development to be repeatable and sustainable. According to the SEI, “Predictability, effectiveness, and control of an organization’s software processes are believed to improve as the organization moves up these five levels. While not rigorous, the empirical evidence to date supports this belief”.
A maturity model provides a guideline for the level of effectiveness of the development processes of an organization and can be used as a benchmark for comparison between organizations. The higher the level of maturity, the more effective the organization is. Organizations at Maturity Level 1 are considered ineffective as development processes are undocumented and non-repeatable. While organizations are at either Maturity Levels 4 or 5 are considered highly-effective as they are proactively managing processes with the use the statistical data.
Maturity Level 1: Initial (Ad-hoc Project Management) – Development tasks and projects are conducted on an ad-hoc basis with little or no documentation supporting the development process. Projects are viewed as unpredictable and reactive.
Maturity Level 2: Managed (Basic Project Management) – Development processes are documented sufficiently enough so that repeating the same steps may be attempted. Projects are planned, executed, and managed at this level, but repeatability and sustainability is not yet achieved.
Maturity Level 3: Defined (Process Standardization) – Development processes are defined and established as a standard businesses process with some degree of process improvement occurring over time. At this level, organizations are more proactive than reactive as standards and guidelines exist to provide direction across projects and programs. Organizations understand their shortcomings and how to address theses shortcomings. Moreover, organizations know what their goals are for improvement.
Maturity Level 4: Quantitatively Managed (Quantitative Process Performance and Management) – Development processes are measured and controlled by quantitative data that includes metrics and indicators. The organization utilizes this quantitative data to determine predictable processes. Moreover, the organization uses data to effectively manage risks, make processes more efficient, and correct process deficiencies.
Maturity Level 5: Optimizing (Continuous Process Improvement) – Development processes at this level focus on continually improving process performance through both incremental and innovative technological change. At this highest stage, an organization is in a constant state of improving and enhancing itself by utilizing statistical common causes of process variation.
CMMI Appraisal
The official method used by the CMMI institute to appraise the CMMI maturity level of an organization is called Standard CMMI Appraisal Method for Process Improvement (SCAMPI). There are three classes of appraisals, A, B and C, which focus on identifying improvement opportunities and comparing the organization’s processes to best practices. Of these, class A appraisal is the most formal and is the only one that can result in a maturity level rating. Class B appraisal is often used as a test appraisal to provide an idea of where an organization stands and determines areas for improvement. Class C appraisal is typically used as a gap analysis from a previous appraisal.
Appraisal Class A: Provides a benchmark for organizations and is the only level that results in an official rating. It must be performed by an appraisal team that includes a certified lead appraiser.
Appraisal Class B: Less official than Appraisal Class A. Determines a target CMMI maturity level, predicts success for evaluated practices, and give an organization a better idea of where they stand in the maturity process.
Appraisal Class C: This appraisal method is more rapid and more cost-effective than either Appraisal Class A or B. It’s designed to quickly assess an organization’s established practices and how well the practices integrate or align with CMMI practices. It can be used at either a enterprise level or micro level to address organizational issues or smaller process or departmental issues.
Process Areas Associated with CMMI Maturity Levels
Included within each CMMI maturity level are process areas which characterize the maturity level. CMMI defines a process area as, “A cluster of related practices in an area that, when implemented collectively, satisfies a set of goals considered important for making improvement in that area.” Key process areas are organized by common features which address how goals are implemented and describe activities or infrastructure that must be carried out or put in pace.
In order to be appraised at a maturity level, an organization has to successfully implement the process area associated with the maturity level as well as all of the process areas from lower maturity levels.
Process Areas for Maturity Level 1 – Initial (Ad-hoc Project Management)
• No Process Areas
Process Areas for Maturity Level 2 – Managing (Basic Project Management)
• CM – Configuration Management
• MA – Measurement and Analysis
• PPQA – Process and Quality Assurance
• REQM – Requirements Management
• SAM – Supplier Agreement Management
• SD – Service Delivery
• WMC – Work Monitoring and Control
• WP – Work Planning
Process Areas for Maturity Level 3 – Define (Process Standardization)
• CAM – Capacity and Availability Management
• DAR – Decision Analysis and Resolution
• IRP – Incident Resolution and Prevention
• IWM – Integrated Work Managements
• OPD – Organizational Process Definition
• OPF – Organizational Process Focus
• OT – Organizational Training
• RSKM – Risk Management
• SCON – Service Continuity
• SSD – Service System Development
• SST – Service System Transition
• STSM – Strategic Service Management
Process Areas for Maturity Level 4 – Quantitatively Managed (Quantitative Process Performance and Management)
• OPP – Organizational Process Performance
• QWM – Quantitative Work Management
Process Areas for Maturity Level 5 – Optimizing (Continuous Process Improvement)
• CAR – Causal Analysis and Resolution
• OPM – Organizational Performance Management