- Introduction to Software Engineering
- The Evolving Role Of Software
- Changing Nature Of Software
- Software Myths
- A Generic View of Process
- Software Engineering- A Layered Technology
- A Process Framework
- The capability maturity model integration (CMMI)
- Process Patterns
- Process Assessment
- Personal And Team Process Models
- Process Models
- The Waterfall Model
- Incremental Process Models
- Evolutionary Process Models
- The Unified Process Model
The capability maturity model integration (CMMI)
Capability Maturity Model Integration (CMMI) is a successor of CMM and is a more evolved model that incorporates best components of individual disciplines of CMM like Software CMM, Systems Engineering CMM, People CMM, etc. Since CMM is a reference model of matured practices in a specific discipline, it becomes difficult to integrate these disciplines as per the requirements. This is why CMMI is used as it allows the integration of multiple disciplines as and when needed.
Objectives of CMMI
Fulfilling customer needs and expectations
Value creation for investors/stockholders
Market growth is increased
Improved quality of products and services
Enhanced reputation in industry
CMMI representation – Staged and continuous
A representation allows an organization to pursue a different set of improvement objectives. There are two representations for CMMI:
Staged representation
Uses a pre-defined set of process areas to define improvement path
Provides a sequence of improvements, where each part in the sequence serves as a foundation for the next
An improved path is defined by maturity level
Maturity level describes the maturity of processes in organization
Staged CMMI representation allows comparison between different organizations for multiple maturity levels
Continuous representation
Allows selection of specific process areas
Uses capability levels that measure improvement of an individual process area
Continuous CMMI representation allows comparison between different organizations on a process-area-by-process-area basis
Allows organizations to select processes which require more improvement
In this representation, order of improvement of various processes can be selected which allows the organizations to meet their objectives and eliminate risks
CMMI model – Maturity levels
In CMMI with staged representation, there are five maturity levels described as follows:
Maturity level 1: Initial
Processes are poorly managed or controlled
Unpredictable outcomes of processes involved
Ad hoc and chaotic approach used
No KPAs (Key Process Areas) defined
Lowest quality and highest risk
Maturity level 2: Managed
Requirements are managed
Processes are planned and controlled
Projects are managed and implemented according to their documented plans
The risk involved is lower than Initial level, but still exists
Quality is better than Initial level
Maturity level 3: Defined
Processes are well characterized and described using standards, proper procedures, and methods, tools, etc.
Medium quality and medium risk involved
Focus is process standardization
Maturity level 4: Quantitatively managed
Quantitative objectives for process performance and quality are set
Quantitative objectives are based on customer requirements, organization needs, etc.
Process performance measures are analyzed quantitatively
Higher quality of processes is achieved
Lower risk
Maturity level 5: Optimizing
Continuous improvement in processes and their performance
Improvement has to be both incremental and innovative
Highest quality of processes
Lowest risk in processes and their performance
CMMI model – Capability levels
A capability level includes relevant specific and generic practices for a specific process area that can improve the organization’s processes associated with that process area. For CMMI models with continuous representation, there are six capability levels as described:
Capability level 0: Incomplete
Incomplete process – partially or not performed
One or more specific goals of process area are not met
No generic goals are specified for this level
This capability level is same as maturity level 1
Capability level 1: Performed
Process performance may not be stable
Objectives of quality, cost and schedule may not be met
A capability level 1 process is expected to perform all specific and generic practices for this level
Only a start-step for process improvement
Capability level 2: Managed
Process is planned, monitored and controlled
Managing the process by ensuring that objectives are achieved
Objectives are both model and other including cost, quality, schedule
Actively managing processing with the help of metrics
Capability level 3: Defined
A defined process is managed and meets the organization’s set of guidelines and standards
Focus is process standardization
Capability level 4: Quantitatively managed
Process is controlled using statistical and quantitative techniques
Process performance and quality is understood in statistical terms and metrics
Quantitative objectives for process quality and performance are established
Capability level 5: Optimizing
Focuses on continually improving process performance
Performance is improved in both ways – incremental and innovation
Emphasizes on studying the performance results across the organization to ensure that common causes or issues are identified and fixed