Applying the CMMI model in software process improvement.
Kozina, Melita
Abstract: SPI (Software Process Improvement) methodology has"
its own history and increasingly applied for the improvement of the
software development. CMMI (Capability Maturity Model Integration) and
SPICE (ISO/IEC 15504) are important SPI models in today's practice.
The purpose of the paper is to analyze the CMMI model and to conduct the
assessment using this model for the software organization. The conducted
research in the paper evaluates the target level of the organization
maturity 2 (Managed). The obtained results show that the software
organization has maturity level 1 (Initial) and achieves its business
goals based on the processes that are not well managed. The management
has to define the improvement needs and select the processes for the
improvement.
Key words: software crisis, SPI methodology, CMMI model, assessment
of the organization maturity level using CMMI.
1. INTRODUCTION
Many studies have shown a low level of IT project success and their
results indicate the crisis in software development (for example-Standih
Chaos Report). High costs, low productivity of development teams and low
usability are the main features of the software product.
Software Engineering Institute (SEI) at Carnegie Mellon University in Pittsburgh, USA, began the development of a process improvement
approaches and models for software engineering in the early 1980s.
Capability Maturity Model for Software (SW-CMM) was the first their
model. In addition, the Systems Engineering Capability Matuxity Model
(SE-CMM) was developed as well as the other CMM models. Each model had
different approaches and methods for assessment (Chrissis, Konrad,
Shrum, 2003). The aim was to integrate such models and make a CMMI model
for integrated product and process development. Including CMMI, SPI
(Software Process Improvement) methodology also includes models such as
Bootstrap, Bootcheck, Trillium, SPICE (ISO/IEC 15504), etc.
Chapter 2 describes the basic concept of the SPI methodology
(including CMMI). The basic components of the CMMI model are described
in the Chapter 3. Conducted assessment of the software organization
maturity using the CMMI model is analyzed and described in the Chapter
4. The conclusion of the paper includes main benefits of SPI methodology
as well as the problems related to their implementation through the
enterprise. The purpose of the paper is to analyze one of the important
SPI model, CMMI model and its application for the assessment of the
software organization maturity.
2. SPI CONCEPT
According to the objectives of SPI, the process must be
predictable, under statistical control and should be continuously
improved. The life cycle of process improvement includes assessment of
the current level of process capability, determining the target level of
process capability, prioritization of the process improvement, as well
as the implementation, monitoring and evaluation of these improvements.
The process improvement life cycle is shown on Fig. 1 (Wysocki, 2004).
[FIGURE 1 OMITTED]
The concept of the SPI models are based on the two dimensional
reference model for describing processes and process capability used in
a process assessment. ISO/IEC 15504-2 defined this reference model CMMI
model is compatible with the requirements related to this model. The
reference model defines a set of processes (key process areas) defined
in terms of their domain, purpose, outcomes -process reference model,
and a measurement framework for evaluating the capability of the
processes through capability levels (O=incomplete; 1 =performed," 2
=managed," 3 =defined," 4=quantitative managed,"
5=optimizing). This reference model is shown on Fig.2 (Sassenburg,
Kitson, 2006).
[FIGURE 2 OMITTED]
3. CMMI STRUCTURE
CMMI model has its structure based on the several important
components (CMMI Product Team, 2006). According to these components, the
assessment of the capability level for the process area in the software
organization, as well as the assessment of the maturity level of the
whole organization are conducted and analyzed in the paper.
Each process area has its defined purpose. In addition, the goal
(specific/generic) is the required outcome/achievement which is achieved
by implementing effective practices (specific/generic).The practice
describes the activities that are important for the implementation of
the objectives (goals). Work products are the results of the specific
practice (typical work products) as well as the results of the generic
practice. These products are the important indicators for the assessment
of the implementation the practices and achieving the goals. It may be
different files, products, specifications, documents, etc.
4. ASSESSMENT OF THE ORGANIZATION MATURITY LEVEL USING CMMI
For the practical assessment in the paper, CMMI for Development
(CMMI-DEV V1.2) was selected and its support tools-Appraisal Assistant
Beta 3 (version 2.0.9). The process areas are organized by maturity
level 2, 3, 4 and 5 (shown in Fig.4). The conducted research in the
paper evaluates the target level of the organization maturity 2
(Managed). Accordingly, it is necessary to first conduct an assessment
for the 7 key process areas organized by maturity level 2 (shown in
Fig.4). The research method is mainly based on the interviews with the
process owners and their documentation (work products as the main
assessment indicators). Incomplete documentation and largely subjective
responses were the main limitations of this research method.
The example of the practical capability level assessment for the
one of seven process areas is shown on Fig.3. This is the assessment for
the Requirements Management (REQM).
[FIGURE 3 OMITTED]
First, the assessment was conducted on the implementation specific
practices based on the assessment indicators (different work products)
according to the rating scale: fully implemented (80-100%); largely
implemented (50-80%); partially implemented (20-50%); not implemented
(0-20%); not yet (0%). In addition, the assessment was made in order to
assess the achievement of the specific goals for selected process area
according to the rating scale: satisfied or unsatisfied. Same assessment
procedure was conducted for the generic goals and practices. The
assessment results of the REQM indicate that the capability level of the
process is CL1 (Performed), not CL2. Same assessment procedure was
conducted for the other six process area organized by maturity level 2
in the software organization (shown in Fig.4). Some of them have the
capability level 0 i.e. uncompleted process area (for example,
configuration management). It is not enough for the organization
maturity level 2. The obtained results show that the software
organization has maturity level 1 (Initial) and achieves its business
goals based on the processes that are not well managed. In addition, the
other process areas organized by maturity level 3, 4 and 5 in the
software organization are also analyzed and assessed. In practice, the
organization maturity level is mainly 2 (or 3). In this organization the
management should first decide about the improvements related to the
processes of maturity level 2. Overall results are shown in Fig.4.
[FIGURE 4 OMITTED]
5. CONCLUSION
Major SPI benefits include increased customer satisfaction,
productivity, quality, cost savings, and cycle time reduction, ROI (Rico, 2004). SPI models can be combined with other methods and
standards such as Six Sigma, statistical process control, ISO/IEC 9000;
ITIL, ISO/IEC 20000, ISO/IEC 12207, ISO/IEC 15288, etc. The planning and
implementation of the best practice according to CMMI (SPI) models is
very expensive and complex task for the organization, especially for
small businesses. It can take several years to move from level 1 to
level 2. Moreover, whether the estimated maturity using CMMI or other
SPI model really relevant indicator of business success in the market?
Whether it is better to combine SPI with other quality standard? These
are important questions for decision making within the organization.
6. REFERENCES
Chrissis, M.B., Konrad, M., Shrum, S.(2003). CMMI[R]: Guidelines for Process Integration and Product Improvement, Addison Wesley, Boston
CMMI Product Team (2006). CMMI for Development, Version
1.2,http://www.sei.cmu.edu/library/abstracts/reports/06tr0 08.efrn,
Accessed: 2011-10-20
Rico, F.D.(2004). ROI of Software Process Improvement: Metrics for
Project Managers and Software Engineers, J. Ross Publishing, Inc., U.S.A
Sassenburg H., Kitson D.(2006). A comparative analysis of CMMI and
Automative SPICE, Carnegie Mellon University