CMM - Capability Maturity Model - was developed in 1987 by American software programmers Software Engineering Institute (SEI). was supported by the US Department of Defense and its goal was to develop methods that would improve the effectiveness of IT projects that were implemented by the Department of Defense. For this purpose, many years of research were carried out, the effect of which was to create the Capability Maturity Model for Software (SW-CMM). It is a model that focuses on improving manufacturing processes in organizations involved in the production of software. CMM is built based on the concept of maturity, where each (higher) subsequent level means more control over the processes taking place during the project. Thanks to the application of the model, the organization is able to determine the directions of changes and achieve greater efficiency. The model also helps in determining the path of the organization's evolution. CMM distinguishes five levels of maturity of the software development organization:
CMM-1 is a basic level for the first stage of development of a software company. There are no formal definitions of software development processes, planning or cost estimation. All processes are chaotic and unpredictable, which results from continual changes taking place during the project. The management only realizes that a project is being implemented. A characteristic feature of CMM1 is the fact that the success of the project largely depends on the work of the super-programmer (s), and therefore it is not repeatable.
CMM-2 - This level is characterized by the fact that the organization uses planning and cost analysis tools. Processes are planned and carried out according to the adopted organizational policy. It is necessary to follow the project requirements (resources, expectations of the client). The organization controls and tracks changes, creates measures of product quality and maintains them at a high level. The management is constantly acquainted with the progress of the work of the project being carried out. The works are carried out on the basis of the action plan prepared and adopted by the organization
CMM-3 - The organization has achieved its objectives from the CMM-2 level. Project management processes as well as the software production process itself are defined, described and formalized. Each employee is an element of a well-functioning system that generates software. The organization should create a thoroughly defined quality policy and refine the process of informing the management about the progress of work carried out within a given project. This level is significantly more advanced and structured in relation to the CMM-2 level.
It is necessary for the company to develop a precisely defined quality policy and mechanisms to inform the board about the progress.
CMM-4 - The organization develops mechanisms for measuring the efficiency of processes. Indicators are created that accurately determine the level of product quality. Processes are managed in a quantitative way, their course is tracked, sources of their variability are analyzed. The biggest difference with respect to the CMM-4 level is the very high predictability of the processes in the organization.
CMM-5 Taking into account the measurement of process efficiency and product quality of the product, the organization makes controlled changes to the current processes in order to improve the indicators. All targets from previous levels have been achieved. This level focuses on continuous improvement of processes through the use of modern technology and innovative solutions.
CMM vs CMMI
The CMM model has been developed in several versions, which were created in the nineties of the twentieth century. The CMM successor is CMMI (Capability Maturity Model Integration), which, unlike its predecessor, is a comprehensive model that can be implemented in organizations with a different business profile.
- Curtis, B., Hefley, B., & Miller, S. (2009). People capability maturity model (P-CMM) version 2.0 (No. CMU/SEI-2009-TR-003). CARNEGIE-MELLON UNIV PITTSBURGH PA SOFTWARE ENGINEERING INST.
- Carbone, G., De Novellis, L., Commissaris, G., & Steinbuch, M. (2010). An enhanced CMM model for the accurate prediction of steady-state performance of CVT chain drives. Journal of Mechanical Design, 132(2), 021005.
- Paulk, M. C., Curtis, B., Chrissis, M. B., & Weber, C. V. (1993). Capability maturity model, version 1.1. IEEE software, 10(4), 18-27.