|
The description of the Capability Maturity Model for Software was initially
produced by a dedicated group of people who spent many hours discussing
the model and its features and then trying to document it in CMM v1.0. This
group consisted of Mark Paulk, Bill Curtis, Mary Beth Chrissis, Edward Averill,
Judy Bamberger, Tim Kasse, Mike Konrad, Jeff Perdue, C fb3 harlie Weber,
and Jim Withey.
This paper is based on the vision of Watts Humphrey, first director
of the SEI's Software Process Program. It took several drafts to evolve
this paper into the final product. Jim Withey, Mark Paulk, and Cynthia
Wise produced an early draft in 1990. Watts Humphrey provided a second
draft of the document, and Mark Paulk then took over the paper and remained
book boss until the end. Mary Beth Chrissis and Bill Curtis helped Mark
produce the CMM v1.0 revision of this paper in August, 1991. Mark Paulk
produced the CMM v1.1 revision of the paper, which is this technical report.
At various stages, several people contributed to the concepts expressed
in this paper. They include Joe Besselman, Marilyn Bush, Anita Carleton,
Marty Carlson, Betty Deimel, Suzie Garcia, Richard Kauffold, Steve Masters,
Mary Merrill, Jim Over, George Pandelios, Jane Siegel and Charlie Weber.
We appreciate the administrative help from Todd Bowman, Dorothy Josephson,
Debbie Punjack, Carolyn Tady, Marcia Theoret, Andy Tsounos, and David
White; and the editorial assistance from Mary Beth Chrissis, Suzanne Couturiaux,
and Bill Pollak. Renne Dutkowski from the American Institutes for Research
provided suggestions for the design of the document.
In November 1986, the Software Engineering Institute (SEI), with assistance
from the Mitre Corporation, began developing a process maturity framework
that would help organizations improve their software process. This effort
was initiated in response to a request to provide the federal government
with a method for assessing the capability of its software contractors.
In September 1987, the SEI released a brief description of the process maturity
framework [Humphrey 87a] and a maturity questionnaire [Humphrey87b]. The
SEI intended the maturity questionnaire to provide a simple tool for identifying
areas where an organization's software process needed improvement. Unfortunately,
the maturity questionnaire was too often regarded as "the model" rather
than as a vehicle for exploring process maturity issues.
After four years of experience with the software process maturity framework
and the preliminary version of the maturity questionnaire, the SEI evolved
the software process maturity framework into the Capability Maturity Model
for Software (CMM) [Paulk91, Weber91]. The CMM is based on knowledge acquired
from software process assessments and extensive feedback from both industry
and government. By elaborating the maturity framework, a model has emerged
that provides organizations with more effective guidance for establishing
process improvement programs.
The initial release of the CMM, Version 1.0, was reviewed and used by
the software community during 1991 and 1992. A workshop was held in April,
1992 on CMM v1.0, which was attended by about 200 software professionals.
This version of the CMM, Version 1.1, is the result of the feedback from
that workshop and ongoing feedback from the software community.
The CMM is the foundation for systematically building a set of tools,
including a maturity questionnaire, which are useful in software process
improvement. The essential point to remember is that the model, not a
questionnaire, is the basis for improving the software process. This paper
is intended to introduce the reader to CMM v1.1.
This paper provides a technical overview of the Capability Maturity Model
for Software and reflects Version 1.1. Specifically, this paper describes
the process maturity framework of five maturity levels, the structural components
that comprise the CMM, how the CMM is used in practice, and future directions
of the CMM. This paper serves as one of the best sources for understanding
the CMM, and it should clear up some of the misconceptions associated with
software process maturity as advocated by the SEI.
The SEI 190 has worked with industry and government to refine and expand
the model, and software organizations are encouraged to focus on the CMM
rather than on the maturity questionnaire. The SEI has developed, and
is developing, a suite of process products to encourage this focus. This
paper [Paulk93a], in combination with the "Key Practices of the Capability
Maturity Model, Version 1.1" [Paulk93b], compr ed5 ises CMM v1.1. The
"Key Practices of the Capability Maturity Model, Version 1.1" describes
the key practices for each level of the CMM. This paper describes the
principles underlying software process maturity and is intended to help
software organizations use CMM v1.1 as a guide to improve the maturity
of their software processes.
This paper presents an introduction to the CMM and its associated products.
Therefore, anyone who is interested in learning about the CMM should read
this paper. However, this paper assumes that the reader has some knowledge
of, and experience in, developing and/or maintaining software, as well as
an understanding of the problems that the software community faces today.
This document can be used in several ways:
- by anyone wanting to understand the key practices that are part of
effective processes for developing or maintaining software,
- by anyone wanting to identify the key practices that are needed to
achieve the next maturity level in the CMM,
- by organizations wanting to understand and improve their capability
to develop software effectively,
- by acquisition organizations or prime contractors wanting to know
the risks of having a particular software organization perform the work
of a contract,
- by the SEI as the basis for developing questions for the maturity
questionnaire, and
- by instructors preparing teams to perform software process assessments
or software capability evaluations.
This paper has five chapters:
Chapter
1 Defines the concepts necessary to understand the CMM and the motivation
and purpose behind it.
Chapter
2 Describes the five levels of the CMM and the principles that underlie
them.
Chapter
3 Describes how the CMM is structured into key process areas, organized
by common features, and described in terms of key practices.
Chapter
4 Provides a high-level overview of how the CMM provides guidance
for software process assessments, software capability evaluations, and
process improvement programs.
Chapter
5 Concludes by providing a description of future directions for the
CMM and its related products.
Although this paper can be read in isolation, it is designed to be the launching
point for other products. This paper and the associated products help the
reader understand and use the CMM. All of the CMM-based products have been,
or will be, systematically derived from the model. At the time of this writing,
most of these products are not available in their final form, although preliminary
versions are in various stages of pilot testing and release.
The CMM-based set of products includes several diagnostic tools, which
are used by software process assessment [ Begin Footnote ] --- A software
process assessment is an appraisal by a trained team of software professionals
to determine the state of an organization's current software process,
to determine the high-priority software process-related issues facing
an organization, and to obtain the organizational support for software
process improvement. --- [ End Footnote ] and software capability evaluation[
Begin Footnote ] -- 190 - A software capability evaluation is an appraisal
by a trained team of professionals to identify contractors who are qualified
to perform the software work or to monitor the state of the software process
used on an existing software effort.--- [ End Footnote ] teams to identify
strengths, weaknesses, and risks of an organization's software process.
Probably the best known of these is the maturi f4b ty questionnaire. The
software process assessment and software capability evaluation methods
and training also rely on the CMM.
The users of these products form a community dedicated to improving
the maturity of their software process. The SEI will continue to work
with the software community to enhance the model and its associated products.
For further information regarding the CMM and its associated products, including
training on the CMM and how to perform software process assessments and
software capability evaluations, contact:
SEI Customer RelationsSoftware Engineering InstituteCarnegie Mellon
UniversityPittsburgh, PA 15213-3890(412) 268-5800Internet: [email protected]
SEI technical reports, such as this paper and the "Key Practices of
the Capability Maturity Model, Version 1.1," are directly available
from the Defense Technical Information Center (DTIC), the National Technical
Information Service (NTIS), and Research Access Inc. (RAI). These documents
can be obtained by contacting:
RAI: Research Access Inc. 3400 Forbes Avenue Suite 302 Pittsburgh, PA
15213 Telephone: (800) 685-6510 FAX: (412) 682-6530
NTIS: National Technical Information Service U.S. Department of Commerce
Springfield, VA 22161-2103 Telephone: (703) 487-4600
DTIC: Defense Technical Information Center ATTN: FDRA Cameron Station
Alexandria, VA 22304-6145 Telephone: (703) 274-7633
SEI technical reports are also available via Internet. To use anonymous
ftp from a Unix system on Internet:
ftp ftp.sei.cmu.edu
(The SEI ftp machine address is 128.237.2.179)
login: anonymous
password: your user id or any string
cd pub/cmm
get READ.ME
get files
quit
The file READ.ME contains information on what files are available. Other
SEI publications are available in a similar manner.
|
|