The Capability Maturity Model (CMM)
It has long been accepted that continuous process improvement is based on many small evolutionary steps rather than larger revolutionary innovations. The Capability Maturity Model (CMM) provides a framework for organising these evolutionary steps into five maturity levels that lay successive foundations for continuous process improvement.
This methodology is at the heart of most management systems which are designed to improve the quality of the development and delivery of all products and services.
The Five Maturity Levels
The five maturity levels define a scale for measuring the maturity of an organisation’s software process and for evaluating the capability of these processes. They also help an organisation prioritise its improvement efforts.
A maturity level is a well-defined evolutionary plateau toward achieving a mature software process.
Each maturity level comprises a set of process goals that, when satisfied, stabilise an important component of the process. Achieving each level of maturity framework establishes a different component in the software process, resulting in an increase in the process capability of the organisation.
Capability Maturity Model Integrated (CMMI)
CMMI is the successor to CMM and combines a number of maturity models into one integrated capability maturity model. Developed by the Software Engineering Institute of Carnegie Mellon University, CMMI can be used to guide process improvement across a project, a division, or an entire organisation.
CMMI currently addresses three areas of interest:
- Product and service development — CMMI for Development (CMMI-DEV)
- Service establishment, management, and delivery — CMMI for Services (CMMI-SVC)
- Product and service acquisition — CMMI for Acquisition (CMMI-ACQ)
What is the difference between CMMI and CMM?
The CMMI structure and the Software CMM structure are similar with respect to maturity levels, key process areas, goals (divided into specific and general goals in CMMI), and practices.
A big difference however is that CMMI offers two representations of the maturity of the processes. CMMI offers a staged representation with five maturity levels just like the Software CMM and a continuous model where each process area has its own maturity level.
An organisation cannot be certified in CMMI; instead, an organisation is appraised. Depending on the type of appraisal, the organisation can be awarded a maturity level rating (1 to 5) or a capability level achievement profile.
The traditional approach that organisations often adopt to achieve compliance with CMMI involves the establishment of an Engineering Process Group (EPG) and Process Action Teams (PATs). This approach requires that members of the EPG and PATs be trained in the CMMI, that an informal (SCAMPI C) appraisal is performed, and that process areas be prioritised for improvement.
Service Capability Maturity Model (CMM)
The original Capability Maturity Model (CMM) was originated to meet the needs of improving and managing the quality of the services in any organisation. Understanding the CMM model is fundamental to any long term service improvement strategy.
ISO 15504 - SPICE
The international standard ISO/IEC 15504, which is also known as SPICE (Software Process Improvement and Capability Determination), provides a framework for the assessment and improvement of software development processes. It is derived from the process lifecycle standard ISO12207 and from maturity models such as Bootstrap, Trillium and the Capability Maturity Model Integrated (CMMI). While SPICE and CMMI are very similar frameworks, SPICE has the advantage of being a published standard, publically available and fully supported by the international community. Over 4,000 assessments have been performed to date and the standard has been widely adopted in the automotive, space and medical industries.