Top Banner
CHAPTER 3 SEI CMM
27
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Cmm

CHAPTER 3

SEI CMM

Page 2: Cmm

Introduction

Definition

It is a reference model for inducting the software process maturity Into different levels.

It can be used to predict the most likely outcome to be expected from the next project that the organization undertakes.

Actually the capability of organizations associated with software development is evaluated by this model. That’s why model is called

Software Engineering Institute Capability maturity model

Page 3: Cmm

Background

•First proposed by Software Engineering Institute , Carnegie Mellon University , USA.

•Patterned after the pioneering work of Philip Crosby published in the book Quality is Free , the maturity grid for five evolutionary stages for adopting quality practices in an organization.

Now a days it is called

Capability maturity model integration

Page 4: Cmm

SEI CMM : Two Ways Of Use

CMM

Capability EvaluationCapability Evaluation

Software Process

Assessment

Software Process

Assessment

Page 5: Cmm

Capability Assessment

•This is a way to assess the software process capability of an organization.

•The results of Capability Assessment indicate the likely contractor performance If it is awarded a project .So the results of Capability Assessment can be used

to Select a contractor for completing a project

Page 6: Cmm

Software Process Assessment

•Software Process Assessment is the assessment of any organization’s software process capability.

• It is used by the organization with the objective to improve its process capabilityHence , Software Process Assessment

Is for purely internal use of the organization.

Page 7: Cmm

The need for software processes prior to CMM

Organizations began to adopt computerized information

systems, and the demand for software development

grew significantly.

The processes for software development were in their

infancy, with few standard or "best practice"

approaches defined.

As a result, the growth was accompanied by growing

pains: project failure was common and the ambitions

for project scale and complexity exceeded the market

capability to deliver.

Page 8: Cmm

Individuals such as Edward Yourdon, Larry Constantine,

Gerald Weinberg, Tom DeMarco, and David Parnas began to

publish articles and books with research results in an attempt

to professionalize the software development process.

In the 1980s, several US military projects involving software

subcontractors ran over-budget and were completed much

later than planned, if they were completed at all.

In an effort to determine why this was occurring, the United

States Air Force funded a study at the SEI.

Page 9: Cmm

Precursor to CMM

The Quality Management Maturity Grid was

developed by Philip Crosby in his book "Quality Is

Free“.

Note that the first application of a staged maturity

model to IT was not by CMM/SEI, but rather by

Richard L. Nolan, who, in 1973 published the

Stages of growth model for IT organizations.

Watts Humphrey began developing his process

maturity concepts during the later stages of his 27

year career at IBM.

Page 10: Cmm

Watts Humphrey's Capability Maturity Model (CMM) was published

in 1988 and as a book in 1989, in Managing the Software Process.

Organizations were originally assessed using a process maturity

questionnaire and a Software Capability Evaluation method

devised by Humphrey and his colleagues at the Software

Engineering Institute (SEI).

The full representation of the CMM as a collection of defined

process areas and practices at each of the five maturity levels

was initiated in 1991, with Version 1.1 being completed in January

1993. The CMM was published as a book in 1995 by its primary

authors, Mark C. Paulk, Charles V. Weber, Bill Curtis, and Mary

Beth Chrissis.

Page 11: Cmm

Maturity model

A maturity model can be viewed as a set of structured levels that describe how well the behaviors, practices and processes of an organization can reliably and sustainably produce required outcomes.

A maturity model may provide, for example : a place to start the benefit of a community’s prior experiences a common language and a shared vision a framework for prioritizing actions. a way to define what improvement means for your organization.

A maturity model can be used as a benchmark for comparison and as an aid to understanding - for example, for comparative assessment of different organizations where there is something in common that can be used as a basis for comparison. In the case of the CMM, for example, the basis for comparison would be the organizations' software development processes.

Page 12: Cmm

Capability Maturity Model structure

Maturity Levels: a 5-Level process maturity continuum - where the uppermost (5th) level is a notional ideal state where processes would be systematically managed by a combination of process optimization and continuous process improvement.

Key Process Areas: a Key Process Area (KPA) identifies a cluster of related activities that, when performed collectively, achieve a set of goals considered important.

Goals: the goals of a key process area summarize the states that must exist for that key process area to have been implemented in an effective and lasting way. The extent to which the goals have been accomplished is an indicator of how much capability the organization has established at that maturity level. The goals signify the scope, boundaries, and intent of each key process area.

Page 13: Cmm

Common Features: common features include practices that implement and institutionalize a key process area. There are five types of common features: commitment to Perform, Ability to Perform, Activities Performed, Measurement and Analysis, and Verifying Implementation.

Key Practices: The key practices describe the elements of infrastructure and practice that contribute most effectively to the implementation and institutionalization of the KPAs.

Page 14: Cmm

The Maturity Levels

SEI CMM classifies software development organizations into FIVE Maturity Levels.

•LEVEL 1 : Initial

•LEVEL2 : Repeatable

•LEVEL 3 : Defined

•LEVEL 4 : Managed

• LEVEL 5 : Optimizing

Page 15: Cmm

CMM Model

PerformedProcess

PerformedProcess

Level 2 ManagedProcess

ManagedProcess

Level 3 DefinedProcess

DefinedProcess

Level 4 QuantitativelyManagedProcess

QuantitativelyManagedProcess

Level 5 OptimizingProcess

OptimizingProcess

Capability

Level 1

Page 16: Cmm

Level 1 : Initial

• The organization is characterized by ad hoc activities.

• Either very few or no process is defined in this level.

• Engineers follow their own processes for development.

• The development becomes chaotic , sometimes the level is called CHAOTIC level.

• The success of project depends on own efforts .

• As soon as the development team leaves the successors fall into great difficulty to understand the process that has been followed.

• As a result the developed product is of low quality .

Page 17: Cmm

Level 2 : Repeatable

• Basic project management practices like tracking cost and schedule are established.

• Size and Cost estimation techniques like Function Point Analysis and COCOMO are used.

• The necessary process disciplines are in place to repeat the earlier successes on projects with similar applications .

• We have to remind that repeat of process only exists when the organization has developed a group of products.

Page 18: Cmm

Level 3 : Defined

• Here the processes for both the management and development activities are defined and documented.

• There is a common organization wide understanding of activities , roles and responsibilities.

• Although the processes are defined the process and product quality are not measured.

• ISO 9000 aims at achieving this level.

Page 19: Cmm

Level 4 : Managed

•Primary focus concentrated on software metrics ,

the metrics are Product metrics and Process metrics.

•Product metrics deals with size, reliability , time

complexity , understandability of the product deals

with product quality .

• Process metrics deals with effectiveness of the

process that is being used such as average number

of defects found per hour of inspection , average

number of failures detected during testing per LOC.

• Various tools are used – Pareto Charts , Fishbone

Diagram.

•Result of process measurements is used to evaluate

the project rather to improve the process .

Page 20: Cmm

Level 5 : Optimizing

• Process and Product metrics are collected first.

• Process and Product measurement data are

analyzed to improve the process

that is being followed.

• Continuous Process Improvement is achieved

through following steps

-Analyzing the quantitative feedback from

process measurements

-Invoking innovative methods and

technologies.

Page 21: Cmm

The Framework At A Glance

Page 22: Cmm

Key Process Areas

CMM LEVEL FOCUS KPA

Initial Competent people

Repeatable Project management

Software project planningSoftware configuration management

Defined Definition of process

Process definition Training program

Managed Product and process quality

Quantitative process managementSoftware quality management

Optimizing Continuous process improvement

Defect preventionProcess change managementTechnology change management

Page 23: Cmm

Software process framework for SEI's Capability Maturity Model

TYPESD DESCRIPTION

PolicyDescribes the policy contents and KPA goals recommended by the CMM.

StandardDescribes the recommended content of select work products described in the CMM.

Page 24: Cmm

Process

•Describes the process information content recommended by the CMM. The process checklists are further refined into checklists for: roles•entry criteria•inputs•activities•outputs•exit criteria•reviews and audits•work products managed and controlled•measurements•documented procedures•training•tools

Page 25: Cmm

Level overview

•Provides an overview of an entire maturity level. The level overview checklists are further refined into checklists for: KPA purposes (Key Process Areas)•KPA Goals•policies•standards•process descriptions•procedures•training•tools•reviews and audits•work products managed and controlled•measurements

Procedure Describes the recommended content of documented procedures described in the CMM.

Page 26: Cmm

Don’t Mix Up with ISO 9000

ISO 9000 is an external document, where as CMM is purely internal document.

CMM only for software industry.

CMM shows a way for achiving gradual quality improvement

Page 27: Cmm

THANK YOU