Page 293 -
P. 293
When an organization begins a process improvement effort based on the CMM or CMMI,
a good first step is to set up a software engineering process group (SEPG). This is a team of soft-
ware engineering professionals and/or managers within the organization who are dedi-
cated either part- or full-time to improving the software process. They identify problems
and inefficiencies, define the practices needed to address those problems, and implement
them in the project teams.
Another important part of the CMM and CMMI is the assessment process. In an assess-
ment, an assessor is brought into the organization. He spends time (typically one week)
reviewing the process documentation, interviewing the people on the team, and verifying
whether the process is actually carried out on real projects. The result of the assessment is
a report that identifies which practices are in place, which practices are missing from key
process areas, and the maturity level of the organization.
Assessments are a useful tool that SEPGs can use to identify areas for improvement. How-
ever, there is a downside to assessments. There are many organizations that must comply
with the CMM or CMMI in order to qualify for certain government programs or to bid on
contracts that require a minimum maturity level. Other organizations pursue a maturity
level for publicity or public relations purposes. The assessment process assumes that the
organization being assessed is honestly representing its practices. A software organization
that is intent on getting assessed at a certain level can create reports and work products
that will make it appear as if all of the practices have been implemented. This is just like a
company that fools an accounting auditor by keeping two sets of books—it may pass the
audit through no fault of the auditor.
When the CMM or CMMI is abused, it is no longer an effective way to improve an organi-
zation. The practices that are part of the KPAs then simply amount to pushing paper
around. Documents that could be useful have simply become bureaucratic forms to be
filled out. A project plan is created not to help the team understand and plan the work,
but simply to satisfy an organizational policy. When this happens, the team members still
face the same problems they have always faced: increasing delays, decreasing quality,
overtime, dissatisfaction, and poor software development practices. But now they also get
to fill out a bunch of paperwork.
Despite this potential abuse, when the CMM or CMMI is used well, it can be a powerful
tool for actually improving the software process and capability of an organization. It con-
tains a wealth of good practices, as well as advice for implementing those practices. When
an organization really works toward understanding and fulfilling the goals and imple-
menting the practices, they stand a good chance at truly building better software.
NOTE
The Capability Maturity Model and a great deal of supporting informa-
tion can be obtained for free from the Software Engineering Institute
web site at http://www.sei.cmu.edu/cmmi/cmmi.html.
PROCESS IMPROVEMENT 285