• No results found

The Capability Maturity Model for Software, Version 1.1

N/A
N/A
Protected

Academic year: 2022

Share "The Capability Maturity Model for Software, Version 1.1"

Copied!
27
0
0

Loading.... (view fulltext now)

Full text

(1)

The Capability

Maturity Model for

Software, Version 1.1

Mark C. Paulk xxx 1998

Software Engineering Institute Carnegie Mellon University Pittsburgh, PA 15213-3890

Sponsored by the U.S. Department of Defense.

© 1997 by Carnegie Mellon University.

CMM is registered in the U.S. Trademark and Patent Office.

(2)

Software Engineering Institute

A Myth: The Problems Are All Technical

Examined real cases

• red teams

• assessment and evaluations

Projects generally fail for management reasons

• Defense Science Board Task Force on Military Software report, 1987

• "Bugs in the Program" report, 1989

The major problems in software development are managerial - not technical.

(3)

The Process Management Premise

The quality of a (software) system is largely

governed by the quality of the process used to develop and maintain it.

This premise implies focus on process as well as product.

The value of this premise is visible world-wide in the Total Quality Management movements in the manufacturing and service industries.

(4)

Software Engineering Institute

A Definition of Process

Procedures and methods defining the relationship

of tasks

Tools and equipment People

with skills, training, and

PROCESS

The means by which people, procedures,

methods, equipment, and tools are integrated to produce a desired end result.

A

B C

D

(5)

What Is the Software CMM?

A common-sense application of process

management and quality improvement concepts to software development and maintenance

A community-developed guide for evolving toward a culture of engineering excellence A model for organizational improvement The underlying structure for reliable and

consistent software process assessments and software capability evaluations

(6)

Software Engineering Institute

Total Quality Management

Total Quality Management (TQM) is the

application of quantitative methods and human resources to improve:

• the material and services supplied to an organization

• all the processes within an organization

• the degree to which the needs of the customer are met, now and in the future

Department of Defense, Total Quality Management Master Plan, August 1988.

(7)

Applying TQM to Software

Software

Organization

TQM

CMM

Project C Project A Project B

Project X System

Hardware

Process improvement fits in an overall business context – CMM applies to software.

(8)

Software Engineering Institute

Maturity Model Inspirations

Process management concepts – Crosby, Deming, Juran, ...

Experience

• 30 years of similar software problems

• commonly known software problems

• solutions exist

Application of common-sense engineering

(9)

Critical Process Maturity Concepts

PROCESS CAPABILITY — the range of expected results that can be achieved by following a

process, a predictor of future project outcomes PROCESS PERFORMANCE — a measure of the actual results achieved from following a process PROCESS MATURITY — the extent to which a specific process is explicitly defined, managed, measured, controlled, and effective

(10)

Software Engineering Institute

Maturity

Framework:

Five Levels

Optimizing (5)

Focus on process improvement

Managed (4)

Process measured and controlled

Defined (3)

Process characterized, fairly well understood

Repeatable (2)

Can repeat previously mastered tasks

Initial (1)

Unpredictable and poorly controlled

(11)

Evolution of Process Capability

Plans based on past performance are more realistic in Level 2 organizations

With well-defined processes, performance improves in Level 3 organizations Based on quantitative understanding of process and product, performance continues to improve in Level 4 organizations Performance continuously improves in Level 5 organizations

Initial Repeatable

Defined Managed Optimizing

Process is informal and ad hoc; performance is unpredictable

Project management system in place;

performance is repeatable Software engineering and management processes defined and integrated Product and process are quantitatively controlled Process improvement is institutionalized

Level Process Characteristics Predicted Performance

Probability

Time/$/...

Target N

Probability

Time/$/...

Target N+a

Probability

Time/$/...

Target N-y

Probability

Time/$/...

Target N-z

Probability

Time/$/...

Target N-x

(12)

Software Engineering Institute

Using Higher Level Practices

Processes at higher maturity levels may be

performed, although perhaps ineffectively, even by Level 1 organizations.

Peer reviews can help even a Level 1 project.

Building an organizational capability means institutionalizing good practices on a firm foundation.

(13)

Maturity Level Principles:

Organizational Capability

Process

Improvement

Process Control

Qualitative Quantitative 5 Optimizing

4 Managed 3 Defined

1 Initial

2 Repeatable

Just do it

Project management Organizational assets

Continuously improving organization

Quantitativ e“control”

...

....

....

....

....

....

....

....

....

....

(14)

Software Engineering Institute

The CMM Structure

Maturity Levels

Key Practices contain

contain Key Process Areas

Implementation or Institutionalization Goals

Process Capability

describe achieve

indicate

organized by

Common Features address

(15)

The Five Maturity Levels

Initial (1)

Repeatable (2)

Defined (3)

Managed (4)

Optimizing (5)

Disciplined process

Standard, consistent process

Predictable process

Continuously improving process

(16)

Software Engineering Institute

Key Process Areas

Identify a cluster of related activities that, when performed collectively, achieve a set of goals considered important for enhancing process capability

Defined to reside at a single maturity level

Identify the issues that must be addressed to achieve a maturity level

(17)

SW-CMM v1.1 Key Process Areas

Quality

Productivity

Risk Waste Competent people and heroics

Defect Prevention

Technology Change Management Process Change Management Continual

process improvement Product and process quality Engineering processes and organizational support

Project

management processes

Quantitative Process Management Software Quality Management Organization Process Focus Organization Process Definition Training Program

Integrated Software Management Software Product Engineering Intergroup Coordination

Peer Reviews

Requirements Management Software Project Planning

Software Project Tracking & Oversight Software Subcontract Management Software Quality Assurance

Software Configuration Management

Level Focus Key Process Areas

1 Initial

5 Optimizing

2 Repeatable

2

4 Quantitatively Managed

3 Defined

(18)

Software Engineering Institute

Scope of the CMM: Using "Key"

The CMM is not exhaustive.

There are software management and engineering processes and practices that are not described in the CMM.

KEY indicates a focus on the major leverage points.

(19)

Goals Criteria

All the CMM goals primarily address process end- states

Minimal use of subjective wording (e.g.,

"effective")

Each key practice maps to one or more goals Each goal and its associated practices can be considered as a "subprocess area"

Goals and subprocess areas support rating key process areas and maturity levels

(20)

Software Engineering Institute

Common Features

Attributes that indicate whether the

implementation and institutionalization of a key process area is effective, repeatable, and lasting Used to organize the key practices in each key process area

Common features are

• Commitment to Perform

• Ability to Perform

• Activities Performed

• Measurement and Analysis

(21)

Key Practices

The infrastructures and activities that contribute most to the effective implementation and

institutionalization of a key process area

(22)

Software Engineering Institute

What are the Benefits of

Model-Based Improvement?

Establish a common language

• forge a shared vision

Build on a set of processes and practices

developed with input from a broad section of the software community

Provide a framework for prioritizing actions

Provide a framework for performing reliable and consistent appraisals

(23)

Models are simplified views of the real world.

The Capability Maturity Model for Software

THE “REAL” WORLD

“M” is for Model

Process descriptions and

instantiations are below the level of detail of the CMM.

Maturity Levels Key Process Areas

Key Practices

Systems engineering

Marketing

Integrated product teams

Technology

Organizational culture

People issues

(24)

Software Engineering Institute

What are the Risks of

Model-Based Improvement?

Models are simplifications of the real world.

Models are not comprehensive.

Interpretation and tailoring must be aligned to business objectives.

Judgement is necessary to use models correctly and with insight.

(25)

Using the CMM in Context

The key practices in the CMM are expressed in terms of a large government contracting

organization.

When the business environment differs from that template, an appropriate interpretation of the

practices should be made.

The true CMM "requirements" are the goals for achieving the key process areas.

(26)

Software Engineering Institute

Process Improvement Is Continual Improvement

We can never reach perfection.

The CMM does not provide all the answers;

it, too, is evolving and improving.

Process management means constructive and continual improvement.

The focus is on always doing better.

Our reach should always exceed our grasp.

(27)

For Additional Information

Customer Relations

Software Engineering Institute Carnegie Mellon University

Pittsburgh, PA 15213-3890

Telephone +1 (412) 268-5800 Fax +1 (412) 268-5758

Internet [email protected] CMM Correspondence Group’s Web page

http://www.sei.cmu.edu/technology/cmm/

References

Related documents

نمزلما يوئرلا دادسنلإا ضربم ينباصلما روكذلا Objectives: To compare walking-based activity and sedentary behavior between males with chronic

Stepper Motor Controller using PIC16C84 Induction Heater with CKM005 Microcontroller The PIC Elmer 160 Project Board using PIC16F628 Countdown Timer using PIC16F84

• Method for categorizing the maturity and quality of a software process used by software development organizations.. Capability Maturity

As a consequence, driven out from the two propositions stated above, we argue that the market value of the company and the voting pattern observed in its corporate meetings can

environmental risk assessment is concerned with accidental release into the environment of viable grains during transportation and processing, and indirect exposure to microorganisms

The most widely-used textbook for the communication theory course, A First Look at Communication Theory analyzes the major communication theories at a level that is appropriate

It requires the United States to assess federal actions affecting Indian tribes and to consult with tribes about those

More specifically, the following information is required as input data: beam span; number, magnitudes and locations of concentrated loads; location of the specific point of