What is Capability Maturity
Model Integration? (CMMI)
|
Capability
Maturity Model Integration (CMMI) is a process improvement approach that
provides organizations with the essential elements of effective processes.
CMMI for
Development Ver 1.2 consists of 22 process areas with Capability or Maturity
levels. CMMI should be adapted to each individual company, therefore
companies are not "certified." A company is appraised at a certain
level of CMMI.
History
The CMMI
is the successor of CMM. The goal of the CMMI project is to
improve usability of maturity models for software engineering and other
disciplines, by integrating many different models into one framework. It was
created by members of industry, government and the SEI.
Appraisal
There are
three different types of appraisals, type A, B and C. In Appraisal
Requirements for CMMI (ARC) the requirements for CMMI appraisal methods are
described. The Standard CMMI Assessment Method for Process Improvement
(SCAMPI) is the only appraisal method which meets all of the ARC requirements
for a Class A appraisal method. The results of the appraisal can be published
on the SEI website.
Evaluation
The SEI
states that 25 organizations measured increases of performances in the
categories cost, schedule, productivity, quality and customer satisfaction.
The median increase in performance varied between 14% (customer satisfaction)
and 62% (productivity). However, the CMMI model mostly deals with what
processes should be implemented, and not so much with how they can be
implemented. SEI thus also mentions that these results do not guarantee that
applying CMMI will increase performance in every organization. A small
company with few resources may be less likely to benefit from CMMI.
Interestingly,
Turner & Jain (2002) argue that although it is obvious there are large
differences between CMMI and agile methods, both approaches have much in
common. They believe neither way is the 'right' way to develop software, but
that there are phases in a project where one of the two is better suited.
They suggest one should combine the different fragments of the methods into a
new hybrid method. The combination of the project management technique Earned
value management (EVM) with CMMI has been described (Solomon, 2002). To
conclude with a similar use of CMMI, Extreme Programming (XP), a software engineering method,
has been evaluated with CMM/CMMI (Nawrocki et al., 2002). For example, the XP
requirements management approach, (which relies on oral communication), was
evaluated as not compliant with CMMI.
Structure
The CMMI
comes with two different representations - staged and continuous. The staged
model, which groups process areas into 5 maturity levels, was also used in
the ancestor software development CMM, and is the representation used to
achieve a "CMMI Level Rating" from a SCAMPI appraisal. The
continuous representation, which was used in the ancestor systems engineering
CMM, defines capability levels within each profile. The differences in the
representations are solely organizational; the content is equivalent.
The CMMI
uses a common structure to describe each of the 25 process areas (PAs). A
process area has 1 to 4 goals, and each goal is comprised of practices.
Within the 22 PAs these are called specific goals and practices, as they
describe activities that are specific to a single PA. There is one additional
set of goals and practices that apply in common across all of the PAs; these
are called generic goals and practices. Table 1 describes CMMI terminology in
more detail. The page numbers refer to the Staged Representation. Common
Features are historical artifacts from the software CMM; they do not appear
in the CMMI v1.2.
CMMI concept definition list
|
No comments:
Post a Comment