Since 1991, CMMs have been developed for myriad disciplines. Some of the most notable include models for systems engineering, software engineering, software acquisition, workforce management and development, and integrated product
and process development (IPPD).
Although these models have proven useful to many organizations in different industries, the use of multiple models has been problematic. Many organizations would like their improvement efforts to span different groups in their
organizations. However, the differences among the discipline-specific models used by each group, including their architecture, content, and approach, have limited these organizations’ capabilities to broaden their improvements successfully. Further,
applying multiple models that are not integrated within and across an organization is costly in terms of training, appraisals, and improvement activities.
The CMM IntegrationSM project was formed to sort out the problem of using multiple CMMs. The CMMI Product Team’s initial mission was to combine three source models:
1. The Capability Maturity Model for Software (SW-CMM) v2.0 draft C [SEI 1997b]
2. The Systems Engineering Capability Model (SECM) [EIA 1998]
3. The Integrated Product Development Capability Maturity Model (IPD-CMM) v0.98 [SEI 1997a]
The combination of these models into a single improvement framework was intended for use by organizations in their pursuit of enterprise-wide process improvement.
These three source models were selected because of their widespread adoption in the software and systems engineering communities and because of their different approaches to improving processes in an organization.
Using information from these popular and well-regarded models as source material, the CMMI Product Team created a cohesive set of integrated models that can be adopted by those currently using the source models, as well as by those
new to the CMM concept. Hence, CMMI is a result of the evolution of the SW-CMM, the SECM, and the IPD-CMM.
Developing a set of integrated models involved more than simply combining existing model materials. Using processes that promote consensus, the CMMI Product Team built a framework that accommodates multiple disciplines and is
flexible enough to support the different approaches of the source models [Ahern 2003].
Figure 1.2: The History of CMMs
Since the release of CMMI v1.1, we have seen that this improvement framework can be applied to other areas of interest [SEI 2002a, SEI 2002b]. To apply to multiple areas of interest, the framework groups best practices into what
we call “constellations.” A constellation is a collection of CMMI components that are used to build models, training materials, and appraisal documents.
Recently, the CMMI model architecture was improved to support multiple constellations and the sharing of best practices among constellations and their member models. Work has begun on two new constellations: one for services
(CMMI for Services) and the other for acquisition (CMMI for Acquisition). Although CMMI for Development incorporates the development of services, including the combination of components, consumables, and people intended to meet service
requirements, it differs from the planned CMMI for Services (CMMI-SVC), which focuses on the delivery of services. The CMMI models that have been available in the community prior to 2006 are now considered part of the CMMI for Development
constellation.