Capability Maturity Model (CMM)

The use of five software process levels of maturity to assess, further develop, and improve the software development processes of an entity

What is the Capability Maturity Model (CMM)?

The Capability Maturity Model (CMM) uses five software process levels of maturity to assess, further develop, and improve the software development processes of an entity. CMM involves key processes related to planning, engineering, and managing an organization’s software development and maintenance. Organizations can use the CMM framework to achieve their goals for cost, functionality, product quality, and schedule.

 

Capability Maturity Model (CMM)

 

Summary

  • The Capability Maturity Model (CMM) uses five software process levels of maturity to assess, further develop, and improve the software development processes of an entity.
  • The CMM was created to assess the ability of government-contracted software developers and implementors’ processes and abilities to deliver on their contracts.
  • The CMM paradigm incorporates a five-level developmental path of more gradually coordinated and systematically advanced processes. It includes the Initial, Repeatable, Defined, Managed, and Optimizing levels.

 

History of the Capability Maturity Model

The Capability Maturity Model came into existence during the 1980s, created to assess the ability of government-contracted software developers and implementors’ processes and abilities to deliver on their contracts. The model was created and endorsed by Carnegie Mellon University’s Software Engineering Institute (SEI), which was established in 1984 as an R&D center focusing primarily on the identification of software engineering and development-related issues and improvement of software engineering methods.

The SEI’s core activities include the optimization and improvement of software development processes and the acquisition and maintenance of software systems for the U.S. Department of Defense (DoD), which sponsors the development center.

In 2006, the SEI developed a more improved version of the Capability Maturity Model known as the Capability Maturity Model Integration (CMMI). The CMMI framework addresses some of the limitations of the CMM, gaining immense popularity in the process.

 

The Five Maturity Levels of the Capability Maturity Model

The CMM paradigm incorporates a five-level developmental path of more gradually coordinated and systematically advanced processes. The levels include:

 

1. Initial Level

The initial level, as the name suggests, is the starting point for the utilization of an undocumented or new repeat process. Processes at the initial level are generally not documented and tend to be in a state of active change.

The processes also tend to be operated by events and/or users in an uncontrolled manner. The result is that processes are unstable. Success in the initial level is not expected to be repeatable because processes are not adequately documented or defined.

 

2. Repeatable Level

Processes at the repeatable level, as the name suggests, are repeatable and tend to generate constant results. At this level, general project management strategies exist, and successes may be replicated when the appropriate measures and processes have been developed, identified, and recorded.

 

3. Defined Level

Processes at the defined level are usually defined and recorded (documented). Standard processes are also defined and developed and can be improved as time passes. Hence, process validation for various scenarios may be possible. Essentially, processes at the defined level are expected to be in the development stage, and they can be enhanced to the next level.

 

4. Managed Level

At the managed level, organizations tend to exercise control over their processes and can monitor them. Process capability is defined, process sustainability is tested across various environments, and processes are normally improved and in use. Additionally, the process maturity at the managed stage allows for them to be used in certain environments or projects without quality deterioration or specification alteration.

 

5. Optimizing Level

The optimizing level tends to encompass continuous upgrades of processes via feedback obtained from monitoring activities and through the development of new and creative processes that will increase organizational efficiency. The optimizing stage focuses heavily on process performance improvement.

 

The Structure of the CMM

The CMM framework comprises five key elements:

  1. Maturity levels (as discussed above)
  2. Primary Process areas, which identify groups of similar activities that reach a set of important objectives when they are carried out together
  3. Goals, which provide an overview of the key process areas
  4. Common Features, which include procedures that execute key process areas
  5. Key Practices, which detail the components of structure and procedures that relate to the development and establishment of the key process areas

 

Additional Resources

CFI is the official provider of the global Certified Banking & Credit Analyst (CBCA)™ certification program, designed to help anyone become a world-class financial analyst. To keep advancing your career, the additional CFI resources below will be useful:

  • Agile Project Management
  • Fintech
  • Quality Management
  • Straight-Through Processing (STP)

Financial Analyst Certification

Become a certified Financial Modeling and Valuation Analyst (FMVA)® by completing CFI’s online financial modeling classes and training program!