Capability Maturity Model Integration (up)

Introduction (up)

The Capability Maturity Model Integration is a heavily used maturity model, applied to processes concerning various types of software projects. According to [KNE06] it is used by various reputable companies such as Siemens, EDS, Deutsche Post World Net, and BMW.  
Due to the fact that it is used as a foundation for most SOA-Maturity Models it is described in the following section in greater detail. Nevertheless, The contents of the specific CMMI Versions are not explained in detail. For a deeper discussion on the content of the different CMMI models, [SEI09] is considered as a good starting point. 

Development from CMM to CMMI (up)

CMMI is the successor of the Capability Maturity Model (CMM) which was initially developed in 1991 to overcome CMM's pitfall of having many incompatible maturity models. The idea was to create an overall framework for the integration of different maturity models. This framework should assure that different maturity models can be applied together and led to the CMMI which was introduced as version 1.0 in 2000. CMMI also assures compatibility to ISO 15504 also known as Software Process Improvement and Capability Determination (SPICE) and previous CMM versions. At this point in time the CMMI covered the disciplines of software development as well as system integration and was later extended by a model for the discipline of integrated process and product development and for software acquisition [KNE06].  
All these models follow equal rules and make use of the same elements. The constituent parts of such a model for a specific discipline are the process areas, the goals, and the type of representation which will be described in more detail in the following paragraphs. 
History of CMMI, adapted from KNE06
Abbildung 1: History of CMMI, adapted from KNE06
For this description CMMI version 1.2 is used which was released in 2007 [SEI09] and was the latest available version during the creation of this work. [1] gives a good overview of the different versions developed since 1987. 

Process Areas (up)

Process areas are clusters of different processes which all relate to the same topic. Thereby, one process can be assigned to one or more process areas and one process area can pool one or more processes. An example in CMMI would constitute the process area ‘Project Planning’ pooling processes such as ‘define project lifecycle’, ‘identify project risks’, and ‘create project plan’. Process areas are combined to maturity levels and categories in the staged representation and the continuous representation, respectively [CFD09]

Model Components (up)

Model components within CMMI are divided into three categories: Required model components, expected model components, and informative model components [CFD09].  
Required model components are basically goals which need to be achieved. These goals can be either specific or generic goals. For each of the Process Areas one or more specific goals are defined. The characteristics described by these goals must be present to satisfy a process area. Generic goals are defined for maturity level and capability level in the staged representation and the continuous representation, respectively. These model components are also required and the described characteristics must be present in order to institutionalize process areas. As long as one of the goals for a certain level is not achieved the corresponding level cannot be considered as achieved. 
Expected model components can be specific and generic practices. These practices support the achievement of the required model components and are therefore directly associated to one goal. They describe activities which are expected to result in the achievement of the associated goal. Nevertheless, it is permitted to achieve the goals using activities different from the ones described in the practices, as long as they satisfy the need of achieving the goals. 
Informative model components are neither expected nor required. However, they properly support a CMMI introduction and are of great help when it comes to interpreting required and expected model components. Examples of informative model components are references pointing to more detailed information in a related process area or generic practice elaborations which provide guidance on how to apply a generic practice to a process area [KNE06]

Staged representation (up)

The staged representation is the most common type of representation for maturity models. Figure 10 gives a good overview of the staged representation and its maturity levels. According to [CFD09] CMMI defines five consecutive levels of maturity: 
 
Example of the staged CMMI representation, adapted from CFD09
Abbildung 2: Example of the staged CMMI representation, adapted from CFD09
For each maturity level one or more process areas are assigned. As described earlier for each process area one or more specific goals are defined and for each maturity level generic goals are defined. Subsequently, all specific goals defined for process areas which are situated at the next level of maturity as well as the generic goals defined for the next level of maturity have to be achieved to be able to move to the next level of maturity. [2] exemplifies a staged representation with an as-is state at level three and target state at level four. Of course all goals defined for all levels below also have to be met. The two generic goals defined for the staged representation are the following: 
 

Advantages (up)

In order to get a better feeling for the different types of representations the main advantages of the staged representation are mentioned briefly: 
 

Continuous Representation (up)

In terms of specific goals the continuous representation makes no difference to the staged representation and allows defining one or more specific goals per process area. However, when it comes to generic targets there is a difference between the two types of representation. As shown in [3], the generic representation defines five generic goals, one for each capability level, except for level zero: 
 
Another important difference is the use of six capability levels in contrast to five maturity levels defined at the staged representation. For the continuous representation each process area can achieve a capability level, independent of other process areas in order to allow a more fine grained classification as shown in figure 11. A higher capability level can only be obtained if all goals from level zero to the higher levels are achieved. The six capability levels are defined as follows (see figure 10 for an overview): 
 
Mapping of CMMI maturity and capability levels, adapted from CFD09
Abbildung 3: Mapping of CMMI maturity and capability levels, adapted from CFD09
[3] shows a mapping of the continuous and the staged representation. The capability levels two to five correspond to the maturity levels two to five. Capability level zero is only predominant if no goal for a certain process area is achieved, whereas capability level one is achieved if all generic goals defined for the capability level and all specific goals defined for the process area are achieved. Therefore, neither capability level zero, nor level one can be mapped to maturity level one [KNE06]
The continuous representation further defines four categories of process areas due to better structuring. An example of such a process category can be seen in [4]. Since the process categories in CMMI have no effect in respect of content they are only listed briefly without further explanation: 
 
Example of the continuous CMMI representation, adapted from CFD09
Abbildung 4: Example of the continuous CMMI representation, adapted from CFD09

Advantages (up)

For the continuous representation flexibility is considered as the most important advantage. It allows focusing on process areas which tend to provide more benefit and therefore enables to achieve quick wins. 
Letzte Änderung: 08.05.2009, 08:31 | 1742 Worte