1
Using the Software CMM in Small Organizations
Mark C. Paulk
Abstract
The Capability Maturity ModelSM for Software developed by the Software Engineering Institute has had
a major influence on software process and quality improvement around the world. Although the CMM
has been widely adopted, there remain many misunderstandings about how to use it effectively for
business-driven software process improvement, particularly for small organizations and small projects.
Some of the common problems with interpreting the Software CMM for the small project/organization
include:
§ What does "small" mean? In terms of people? Time? Size of project? Criticality of product?
§ What are the CMM "requirements"? Are there key process areas or goals that should not be applied
to small projects/organizations? Are there "invariants" of good processes?
§ What are the drivers and motivations that cause abuse of the CMM?
This paper discusses how to use the CMM correctly and effectively in any business environment, with
examples for the small organization. The conclusion is that the issues associated with interpreting the
Software CMM for the small project or organization may be different in degree, but they are not different
in kind, from those for any organization interested in improving its software processes. Using the
Software CMM effectively and correctly requires professional judgment and an understanding of how the
CMM is structured to be used for different purposes.
MARK C. PAULK
Software Engineering Institute
Carnegie Mellon University
4500 Fifth Avenue
Pittsburgh, PA 15213
Telephone: +1 (412) 268-5794
Fax: +1 (412) 268-5758
Internet: mcp@sei.cmu.edu
Mark is a Senior Member of the Technical Staff at the Software Engineering Institute. He has been with
the SEI since 1987, initially working with the Software Capability Evaluation project. Mark has worked
with the Capability Maturity Model project since its inception and was the project leader during the
development of Version 1.1 of the Software CMM. He is also