28
CMMI: A Overview A Capability Maturity play field in software industry Author- Gaurav Ahluwalia

CMMI an Overview

Embed Size (px)

Citation preview

CMMI: A OverviewA Capability Maturity play field in software industry

Author- Gaurav Ahluwalia

Contents

• Contents

• Just Being Curious

• Flavors of Capability Maturity Model

• CMMI Models/Representations

• Doing a correct choice- Talking historically

• Key Process Areas Overview

• LifeCycle Relationships

Just Being Curious

What is Capability Maturity-- A group’s capability to perform in their Discipline/Area of productivity with other key competitors or best practices in that Area.

Capability Maturity Model: A Model which can quantify capability maturity.

A reference model of mature practices in a specified discipline, used to assess a group’s capability to perform that discipline

CMMs differ by–Discipline (Software, Systems, Acquisition, etc.)–Structure (Staged Versus Continuous)–How Maturity is Defined (Process Improvement Path)–How Capability is Defined (Institutionalization)

“Capability Maturity Model®” and CMM® are used by the Software Engineering Institute (SEI) to denote a particular class of maturity models.

So what is CMM

CMM stands for Capability Maturity Model.

• The CMM helps to solve the maturity problem by defining a set of practices and providing a

general framework for improving them. CMM focus is on identifying key process areas and

the exemplary practices that may comprise a disciplined software process.

• Focuses on elements of essential practices and processes from various bodies of

knowledge.

§ Describes common sense, efficient, proven ways of doing business (which you should

already be doing) - not a radical new approach.

§ CMM is a method to evaluate and measure the maturity of the software development

process of an organization.

§ CMM measures the maturity of the software development process on a scale of 1 to 5.

§ CMM v1.0 was developed by the Software Engineering Institute (SEI) at Carnegie Mellon

University in Pittsburgh, USA.

• CMM was originally developed for Software Development and Maintenance but later it

was developed for :

§ Systems Engineering

§ Supplier Sourcing

§ Integrated Product and Process Development

§ People CMM

§ Software Acquisition

CMM Examples:

§ People CMM: Develop, motivate and retain project talent.

§ Software CMM: Enhance a software focused development and maintenance

capability.

So what is CMM contd..

Flavors of Capability Maturity Model

Doing a correct choice ..

• Historically: Depends on the discipline that you want to model.

–Software Engineering

–Systems Engineering

–Software Acquisition

–Systems Security

–etc.

Doing a correct choice contd..

Different structures,formats, terms, waysof measuring maturity•Causes confusion,especially when usingmore than one model•Hard to integratethem in a combinedimprovement program•Hard to use multiplemodels in supplierselection

Bridging the Divide

• Systems and software disciplines have

traditionally not been well integrated.

• The importance of software in systems has

increased dramatically

– Example: % of requirements allocated to

software: *

» B-2 -- 65%

» F-22 -- 80%

• The DoD has emphasized the need to make

the systems/software interface more

seamless

CMMI the Concrete Bridge

• Integrates systems and software disciplines into one process improvement framework.

• Provides a framework for introducing new disciplines as needs arise.

Taking about the history of CMMI

• DoD sponsored collaboration between industry, Government, academia.

• Over 100 people involved.

• Listed below are some of early think tanks which were involved in the R&D for CMMI

models.

Taking about the history of CMMI contd..

Air Force involved in development of CMMI from beginning. Steering Group Co-chair:

Phil Babel, Ajmel Dulai, Mike Nicol (ASC) Product Development Team (PDT) members

(4-6 PE 25% time CRSIP/STSC).

– John Kordik AFMC/ASC - (Engineering PAs, IPPD, Editor)

– Lt. Col Joe Jarzombek CRSIP (Test & Evaluation Team)

– Dan Bennett STSC (Assessment Method Integrated Team)

– Rushby Craig STSC (Test & Evaluation Team)

– Bruce Allgood CRSIP (Training Team, Implementation Strategy)

– Kevin Richins STSC (Editor Team)

CMMI Models/Representations

Combined System Engineering / Software Engineering model• Can be applied to:– Just the software engineering projects in an organization– Just the system engineering project in an organization– Both– IPPD can be used in either/both

Comparing Staged and Continuous Model

In CMMI models with a staged representation, there are five maturity levels designated by the numbers 1 through 5.1. Initial 2. Managed 3. Defined 4. Quantitatively Managed 5. Optimizing

Staged Vs Continuous Model for CMMIContinuous Staged

Provides maximum flexibility for focusing on specific process areas according to business goals and objectives

Provides a roadmap for implementing:–Groups of Process Areas–Sequencing of Implementation

Familiar structure for those transitioning from the systems engineering community.

Familiar structure for those transitioning from the SW-CMM.

Improvement is measured using capability levels. Capability levels: • Measure maturity of a particular

process across an organization. • Range from 0 through 5.

Improvement is measured using maturity levels. Maturity levels • Measure maturity of a set of processes

across an organization • Range from 1 through 5.

There are two types of specific practices: base and advanced. All specific practices appear in the continuous representation.

There is only one type of specific practice. The concepts of base and advanced practices are not used. All specific practices appear in the staged representation except when a related base-advanced pair of practices appears in the continuous representation, in which case only the advanced practice appears in the staged representation..

Staged Vs Continuous Model for CMMI contd..

Continuous StagedCapability levels are used to organize the generic practices.

Common features are used to organize generic practices.

All generic practices are included in each process area.

Only the level 2 and level 3 generic practices are included.

Equivalent staging allows determination of a maturity level from an organization's achievement profile.

There is no need for an equivalence mechanism back to the continuous representation because each organization can choose what to improve and how much to improve it using the staged representation.

Why do only two Representations Staged and Continuous model only

• Source Model Heritage–Software CMM--Staged–SECM--Continuous–IPD CMM—Hybrid

• A compromise was made to initially support two representations of the model with equivalent content.

• And there are always two representation for every form Analog and Digital.

Which Representation is better?

Because each representation has advantages over the other, some organizations

use both representations to address particular needs at various times in their

improvement programs.

Organizational maturity is the focus of the staged representation, whereas

process area capability is the focus of the continuous representation.

Organizational maturity and process area capability are similar concepts. The

difference between them is that organizational maturity pertains to a set of

process areas across an organization, while process area capability deals with a

set of processes relating to a single process area or specific practice.

Previous slide is the pictorial diagram depicting both the presentations, In this

diagram ML indicates Maturity Level and PA Indicates Process Area.

Which one is the Arabian horse and when?

Difference between Model and Model Integration

Difference between CMM and CMMI:

• CMM is a reference model of matured practices in a specified discipline like Systems

Engineering CMM, Software CMM, People CMM, Software Acquisition CMM etc. But

they were difficult to integrate as and when needed.

• CMMI is the successor of the CMM and evolved as a more matured set of guidelines

and was built combining the best components of individual disciplines of CMM

(Software CMM, People CMM etc.). It can be applied to product manufacturing,

People management, Software development etc.

• CMM describes about the software engineering alone whereas CMM Integrated

describes both software and system engineering. CMMI also incorporates the

Integrated Process and Product Development and the supplier sourcing.

Value to Business which CMMI gives.

Following are obvious objectives of CMMI:

• Produce quality products or services: The process-improvement concept in CMMI

models evolved out of the Deming, Juran, and Crosby quality paradigm: Quality products

are a result of quality processes. CMMI has a strong focus on quality-related activities

including requirements management, quality assurance, verification, and validation.

• Create value for the stockholders: Mature organizations are more likely to make better

cost and revenue estimates than those with less maturity, and then perform in line with

those estimates. CMMI supports quality products, predictable schedules, and effective

measurement to support management in making accurate and defensible forecasts. This

process maturity can guard against project performance problems that could weaken the

value of the organization in the eyes of investors.

• Enhance customer satisfaction: Meeting cost and schedule targets with high-quality

products that are validated against customer needs is a good formula for customer

satisfaction.

• Increase market share: Market share is a result of many factors, including quality

products and services, name identification, pricing, and image.

• Gain an industry-wide recognition for excellence: The best way to develop a

reputation for excellence is to consistently perform well on projects, delivering quality

products and services within cost and schedule parameters.

CMMI and Business Objectives Contd..

CMMI currently addresses three areas of interest:

• Product and service development — CMMI for Development (CMMI-DEV),

• Organizations must be able to manage and control this complex

development and maintenance process.

• CMMI® for Development (CMMI-DEV) provides an opportunity to avoid

or eliminate these stovepipes and barriers.

• CMMI for Development consists of best practices that address

development activities applied to products and services.

CMMI currently addresses three areas of interest contd..

Service establishment, management, — CMMI for Services (CMMI-SVC), The CMMI-SVC model provides guidance for applying CMMI best practices in a service provider organization. Best practices in the model focus on activities for providing quality services to customers and end users. CMMI-SVC integrates bodies of knowledge that are essential for a service provider.

Product and service acquisition — CMMI for Acquisition (CMMI-ACQ)..The CMMI-ACQ model provides guidance for applying CMMI best practices in an acquiring organization. Best practices in the model focus on activities for initiating and managing the acquisition of products and services to meet the needs of customers and end users. Although suppliers can provide artifacts useful to the processes addressed in CMMI-ACQ, the focus of the model is on the processes of the acquirer.

Capability Maturity Model Integration (CMMI) Core Process Areas

Abbreviation Name Area Maturity Level

CAR Causal Analysis and Resolution

Support 5

OPM Organizational Performance Management

Process Management 5

OPP Organizational Process Performance

Process Management 4

QPM Quantitative Project Management

Project Management 4

DAR Decision Analysis and Resolution

Support 3

IPM Integrated Project Management

Project Management 3

OPD Organizational Process Definition

Process Management 3

Capability Maturity Model Integration (CMMI) Core Process Areas contd..

Abbreviation Name Area Maturity Level

OPF Organizational Process Focus

Process Management 3

OT Organizational Training

Process Management 3

RSKM Risk Management Project Management 3

CM Configuration Management

Support 2

MA Measurement and Analysis

Support 2

PMC Project Monitoring and Control

Project Management 2

Capability Maturity Model Integration (CMMI) Core Process Areas contd..

Abbreviation Name Area Maturity Level

PP Project Planning Project Management 2

PPQA Process and Product Quality Assurance

Support 2

REQM Requirements Management

Project Management 2

SAM Supplier Agreement Management

Support 2

Life Cycle Relationships for CMMI KPAs

Thank You