Capability Maturity Model Integration
Introduction
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
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.
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
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
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
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:
- Maturity Level 1 – InitialProcesses are only basically defined or not defined at all. This leads to a strong dependence on single persons within a project. A remedy is to define and document basic processes and keep records of important information. In CMMI no process areas are assigned to level 1 because it is the initial starting point.
- Maturity Level 2 – ManagedIn order to establish a basis, the fundamentals of project management need to be defined at level 2. These applied project management principles lead to controllable and manageable projects which can be completed in time and in budget. This is a prerequisite for all further process improvements. Nevertheless, the improvements of level 2 are done on a per project basis and are therefore not identical across the whole organization.
- Maturity Level 3 – DefinedAt level 3 the focus shifts from single projects to the whole organization. Standardized processes are defined globally within the organization which leads to a stronger exchange of data and experience across different projects. It also implies some kind of cultural change since employees have to change their minds from focusing solely on their project goals to focusing on the organization’s overall goals.
- Maturity Level 4 - Quantitatively ManagedAfter consistent processes have been introduced across the organization, measurement and benchmarking systems can be introduced in order to be able to better control projects. As these measures can be applied organization-wide, adequate predictions of processes as well as other assumptions based on recognized variances at a particular process can be made.
- Maturity Level 5 – OptimizingAt level five the focus is to continuously improve the prevailing processes. This is mostly done by analyzing variations based on the quantitative measure introduced at level four. Due to changes of circumstances a continuous adaptation to new requirements is indispensable in order to remain competitive.
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:
- Generic goal 2: Institutionalize a managed processThis generic goal is assigned to maturity level 2 only. The number two in the name is obviously based on the threshold maturity level for the generic goal.
- Generic goal 3: Institutionalize a defined processIn contrast to generic goal 2 this generic goal is assigned to all process areas at level 3, 4, and 5. This implies that all process areas at level 2 also have to achieve generic goal 3 to be able to achieve maturity level 3 overall.
Advantages
In order to get a better feeling for the different types of representations the main advantages of the staged representation are mentioned briefly:
- It defines a rigorous pathway for improvements which does not allow delaying complicated process areas or focusing solely on easier ones.
- A top down comparison of the whole organization becomes easier because each part can be measured and compared to other parts based on the achieved maturity level.
Continuous Representation
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:
- Generic goal 1: Achieve specific goals
- Generic goal 2: Institutionalize a managed process
- Generic goal 3: Institutionalize a defined process
- Generic goal 4: Institutionalize a quantitatively managed process
- Generic goal 5: Institutionalize an optimized process
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):
- Capability Level 0: Incomplete
- Capability Level 1: Performed
- Capability Level 2: Managed
- Capability Level 3: Defined
- Capability Level 4: Quantitatively Managed
- Capability Level 5: Optimizing
[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:
- process management category
- project management category
- engineering category
- support category
Advantages
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