It’s the 21st century, and every company is trying to become the superior one among its competitors, but in this technological era, only product attributes are not sufficient to stand out in the crowd.
Organizations need to take the help of hardware and software services to face the competition.
To assist organizations in developing software strategies, certain behaviour models are used which measure the success and growth graph of these services. CMM and CMMI are two such tools engaged in guiding organizations in the field of software maturity and other processes.
Key Takeaways
- CMM focuses on software engineering and management processes, whereas CMMI focuses on product development and maintenance.
- CMM uses a five-level maturity model to assess the organization’s processes, while CMMI uses a staged representation.
- CMMI incorporates best practices from various disciplines, while CMM focuses solely on software engineering.
CMM vs CMMI
Capability Maturity Model (CMM) is a five-level evolutionary path model used to develop and refine an organization’s software development process. CMM Integrated is a process and behavioural model that helps organizations to develop behaviours that decrease risks in service, product, and software development.
CMM was developed as an assessment model by the Software Engineering Institute at Carnegie Mellon University in 1990.
This model’s main task was measuring the maturity levels of a software development process in an organization. The term CMM stands for Capability Maturity Model and measures an organization’s software practices based on five stages.
While CMMI stands for Capability Maturity Model Integration, it is a successor of CMM and a more revolutionized software development model.
It allows the incorporation of multiple disciplines per the organisation’s needs and wants. This model consists of five stages different from the previous model’s stages.
Comparison Table
Parameters of Comparison | CMM | CMMI |
---|---|---|
Definition | CMM stands for Capability Maturity Model. | CMMI stands for Capability Maturity Model Integration. |
Meaning | It is a behavior model developed to measure an organization’s software development process. | It is a successor of the CMM model and is more effective and task-oriented. |
Developed in | The year 1990 | The year 2006 |
Purpose | To evaluate the process maturity levels in software. | To combine many software models into one and to overcome the drawbacks of CMM. |
Stages | This model has five stages: Initial Repeat Defined Managed Optimized. | This model has five stages, too: Initial Managed Defined Quantitively managed Optimized. |
Efficiency | Less effective one | More effective one |
What is CMM?
Developed by the Software Engineering Institute in the year 1990, CMM emerged as a behavioural model which measured the maturity of software to determine how it should be developed further.
It was primarily designed to assist the defence system of the U.S. but eventually made its debut in the general software world also.
CMM lists down some specific activities and asks the organization to undertake those. If the organization successfully performs all the tasks, the model assumes that it will achieve success.
This hampers the actual evaluation as the only completion of a task does not guarantee success for any organization.
CMM has various branches in it, such as Software CMM and People CMM. This does not provide an integrated approach to the process and increases the workload. The model also focuses on a lot of paperwork which consumes so much time.
Following are the five stages included in this model, along with a brief description:
- Initial (defines a newbie organization that does not have a process yet)
- Repeat (defines an organization that repeats some of the processes)
- Defined (defines an organization having a set of the standard process)
- Managed (defines an organization having control over these processes)
- Optimized (defines an organization that uses quantitative tools to bring improvement in the process)
What is CMMI?
CMMI was developed in the year 2006 as a successor to the CMM. It was developed by the Software Engineering Institute at Carnegie Mellon University to overcome the drawbacks of the CMM.
This model not only focuses on the tasks but also pays attention to the success rate and performance of these tasks.
It measures how an organization performs even after completing the tasks and suggests changes accordingly. This model integrates all the branches of CMM and provides a better and more integrated approach.
This model has the following five stages:
- Initial (defines an organization having poor and unpredictable processes)
- Managed (defines an organization that has managed all its requirements and resources)
- Defined (defines an organization having more detailed processes)
- Quantitively managed (defines an organization that has all the previous goals)
- Optimized (focuses on continually improving processes)
Main Differences Between CMM and CMMI
- CMM was developed in the year 1990, while CMMI was developed in the year 2006.
- CMM stands for Capability Maturity Model. Meanwhile, CMMI stands for Capability Maturity Model Integration.
- CMM was developed as the first major software maturity evaluating model, while CMMI emerged as the successor for CMM to overcome its shortcomings.
- Both CMM and CMMI have five stages in their model, but the stages are different from each other. In contrast, CMM has- Initial, Repeat, Defined, Managed, and Optimized. CMMI has Initial, Managed, Defined, Quantitively Managed, and Optimized.
- CMM measures an organization’s success based on specific tasks that the organization performs. It does not pay much attention to the results. In contrast, CMMI measures the results while evaluating the maturity levels.