The Capability Maturity Model for Software (SW-CMM) was the first improvement model developed by the Software Engineering Institute (SEI). It was created to address the need for the Department of Defense software projects in determining who should win the bids other than being the lowest bidder. At first, the CMM questionnaire was used to measure the software developer/contractor’s capability of producing the quality software systems. It was also the software developer’s way of self-assessing their internal process improvement.
The SW-CMM provided guidelines towards software process improvement. It was used as a reference model of mature practices in assessing a group’s ability to perform the discipline. It provided guidance to organization on how to gain control of their processes in the development and software maintenance, work within the culture of software engineering and excellent management. It was designed in such a way that software organizations may be guided in selecting the process improvement strategies by establishing the current process maturity and identifying some issues that are critical to software quality and process improvement. The SW-CMM is based on recommended practices acquired from software-process assessments and feedbacks from both industry and government.
The SW-CMM has 5 maturity levels. The levels are Level 1 (Initial), Level 2 (Repeatable), Level 3 (Defined), Level 4 (Managed) and Level 5 (Optimizing). Each maturity level defines the level of process capability. Each level consists of set of process goals. An establishment of a different component in the software process under each level of maturity results to an increase in the organization’s process capability.
It should be noted that SW-CMM is a guide a model, it is not suppose to be dictatorial. Your process work improvement depends entirely on your decision subject to recommended best practices.