CMM or Capability Maturity Model is an implementation method that can aid in improving business processes in an organization. Before we understand what CMM is and what role this maturity model plays in process management, it is mandatory to understand what a maturity model is.
Maturity Models
Maturity Models are a set of layered or structured levels or standards that denote the efficiency with which the process followed in an organization can produce reliable results. It acts as a benchmark for comparing an organization’s processes and results with an established standard. A Maturity Model helps in understanding the initial starting point for process improvising, the common vision that is shared, the priority actions and the way in which process improvement needs to be done.
CMM Overview
Now that we know what a Maturity Model is, it becomes easier to relate CMM with its features. In case of CMM, the aspect of comparison is the software process of an organization. Initially developed in Carnegie Mellon University as a tool for assessing the process of a government software project contract, the model was developed into a framework and released in a generalised format in the year 1991. Majorly used in software development scenarios, the framework can also be extended to other diverse areas of Information Technology like system engineering, software maintenance, software engineering, risk management, project management, etc. The CMM framework has also been extensively used across the globe in many developed and developing organizations and government office.
Structure of CMM Model
Structure of a CMM model includes a standard layout which includes Maturity Levels, Key Process Areas (KPAs), Goals, Common Features and Key Practices.
1. Maturity Levels – The CMM model is a 5 level process which provides a step-by-step approach on process optimization and improvement.
2. Key Process Areas – Also known as KPA, these are a cluster of related activities which are performed to achieve a desired goal. The activities are normally performed together as an aim of obtaining the desired result.
3. Goals – There are goals that are associated with every key process areas, which establish the effectiveness and importance of a KPA. Also the goal achievement level indicates the capability of an organization at an indicated level. Thus the goals are an indication of the boundaries and scope of every key process involved.
4. Common Features – The common features are a consolidated set of practices that implement and institutionalize the key process areas or KPAs. The common features of are five types and are listed as Ability to Perform, Commitment to Perform, Measurement and Analysis, Activities Performed, Measurement and Analysis and at the last Verifying Implementation.
5. Key Practices – These describe the elements of infrastructure and practice which contribute to the effective implementation of the key process areas (KPAs).
Levels and KPAs in CMM Process
The five levels of CMM is believed to improve the process of an organization and make it more stable as the levels go up. The five levels of the maturity model are Initial, Managed, Defined, Quantitatively, Managed and Optimized. Within each level, key process areas are defined that are the characteristics to each of the levels. Each of the KPAs are identified by five features namely goals, commitment, ability, measurement and verification. Each of the levels and the internal key process areas is a theoretical representation denoting the process improvement in every step as an organization travels up the different levels. It is not possible or allowed to skip any level of the model.
Level 1: Initial: Also known as the chaotic level, this level is a characteristic process where the processes are undocumented and in an ad hoc fashion. The environments of the processes are dynamic and unstable at this level of the model.
Level 2: Repeatable: Though there is not much of rigorous process discipline at this stage, certain repeatable processes are maintained in the organization. These processes are maintained to be used at times of stress and have been tested based on consistent results.
Level 3: Defined: At this stage, there exist certain standard and definable processes that are established in an organization. These processes are well in place and have created a level of consistency and improvement over time.
Level 4: Managed: In this level, usage of metrics and effective management can help in controlling the software processes involved. The company can find ways to choose processes suitable for the projects without much reduction in quality. Process capability is well established from this level.
Level 5: Optimized: At this level, the processes have been well established and the focus is now on improving the existing process on a continuous basis through reviews and defect prevention methods.