Capability Maturity Model - PowerPoint PPT Presentation

View by Category
About This Presentation

Capability Maturity Model


Capability Maturity Model INTRODUCTION By ... (Capability Maturity Model) for software developed by SEI ... Document presentation format: – PowerPoint PPT presentation

Number of Views:1327
Avg rating:3.0/5.0
Date added: 27 July 2020
Slides: 81
Provided by: RobertW172
Learn more at:


Write a Comment
User Comments (0)
Transcript and Presenter's Notes

Title: Capability Maturity Model

Capability Maturity Model
  • By
  • Basker George

  • Software Organizations employs 7million engineers
    generate gt 600 billion revenue
  • Growing at an annual rate of gt 25
  • The software Industry is viewed as the promising
    Industry segments having tremendous future
  • Hence executing software projects efficiently is
    of paramount importance to the software Industry.

  • The processes used for executing software
    projects have major effect on the Quality
  • Hence we need to Evaluate Improve the processes
    used in organization
  • The CMM(Capability Maturity Model) for software
    developed by SEI(Software Engineering Institute)
    is a FRAMEWORK that can be used for improving
    Quality Productivity.

What is the Software Process?
  • A process is a systematic approach performed to
    achieve a specific purpose.
  • A software process is the set of activities,
    methods, practices, and transformations used to
    develop software and associated products that are
    released with it.
  • (e.g., project plans, design documents, code,
    test cases, and user manuals).
  • As an organization matures, the software process
    becomes better defined and more consistently
    implemented throughout the organization.

  • Capability Maturity Model (CMM)
  • Developed by Software Engineering Institute (SEI)
    of Carnegie-Mellon University, first introduced
    in 1987
  • Goal
  • To provide a means by which organizations can
    appraise their ability to perform their software
    process successfully, and to provide guidance to
    improve their process capability
  • Initially seen as a valuable approach, but
    questioned over ability to deliver business
    results. Now supported by body of published

Level of CMM
CMM Industry Feedback of Raytheon
  • Raytheon Company is a world leader in developing
    defense technologies and converting those
    technologies for use in commercial markets. ...
  • Raytheon began a CMM-based improvement effort in
    1988. In 1990, they estimated that they saved
    4.48M for an investment of 0.58M giving a
    return on investment of 7.7. Over a period of
    four and a half years, mid-1988 to the end of
    1992, the company estimated that they had
    eliminated 15.8M in re-work costs. Over a six
    year period, 1988 to 1994, they saw a 2.7 times
    increase in productivity and an improvement in
    budget accuracy (target/actual) from 40 overruns
    to /-3.

CMM Industry Feedback Motorola
  • Motorola is a global leader in providing
    integrated communications solutions andembedded
    electronic solutions.
  • Motorola estimate that an organization moving
    from CMM Level 2 to CMM Level 5 will see an
    eightfold reduction in defects, an eightfold
    improvement in cycle time and a threefold
    increase in productivity

CMM Industry Feedback of HP
  • Hewlett-Packards Software Engineering Systems
    Division achieved a reduction in cycle time of
    46, a 60 reduction in shipped defects and
    schedule estimation error reduced to zero over
    two years May 1994 to May 1996.

Hughes Aircraft
  • Hughes Aircraft
  • 1987 level 2, 1990 level 3
  • 45K Assessment cost, 400K improvement cost, 2M
    cost savings, 2 increased overhead
  • 5x improvement in estimation

CMM.More Feedback
  • In addition, a number of less tangible benefits
    are reported
  • Increased customer focus
  • Improved ability to react flexibly to change
  • Increased job satisfaction amongst engineers
  • Decrease in variability of schedule and cost

  • Global Software Group (GSG) China
  • GSG China is the first organization to implement
    SEI CMM in software engineering in Mainland
  • It achieved Level 5 in 2000, making China the 3rd
    country receiving CMM Level 5 after the US and
  • GSG China has set its goal to become the chosen
    software solution provider to customers and
    achieve total customer satisfaction.
  • Currently there are about 700 RD staff working
    in three software centers located in Beijing,
    Nanjing and Chengdu.

CMM at Infosys
  • Infosys is a highly successful software company
    assessed at Level 5 based at Bangalore India,
    with worldwide development center.
  • This course describes the processes used for
    project execution at Infosys one possible way
    of implementing CMM
  • This Course deals with CMM PROCESS that are
    used for project execution at Infosys.

Process Based Approach for Project Execution
  • Main characteristic of a PROJECT are
  • Cost, Schedule Quality
  • Project is initiated after ESTIMATION of the
  • Project is Successful if it meets or Exceeds
    above expectation
  • But Analysis of project data shows that
  • 1/3 rd of projects have cost schedule overrun
    of 125
  • Possible reasons for project failure are
  • Improper Estimation, Loose requirement
    Management, weak project management, improper
    risk management, poorly engineered

  • Other possible reason could be Unclear objective,
    Bad planning, No project Management methodology,
    insufficient staff..
  • That is, We can call it PROCESS FAILURE
  • Therefore for a project to be successful, the key
    parameter is the set of processes followed in the
  • Hence if suitable process model are chosen for
    the project, the chances of project success is
    extremely high.
  • Therefore High Q P should be the twin aim of
    any Projects
  • The Organization should also have predictable Q
  • Also Organization should desires continuous
    improvement in QP

Quality Productivity
  • Depends on Process, People Technology
  • This is known as Quality Triangle or Iron
  • Therefore to increase QP, we have to Improve
    Process used by the organization.
  • The CMM for software deals with Process used in
    an Organization .

Software Process
  • They Encapsulate the collective experience
    (Success Failure) of an organization.
  • Use this experience in future projects
  • Thus the process allows the experience gained to
    be conferred even to a newcomer
  • Therefore it is important for an Organization to
    take considerable effort to capture the
    experience of the process improve the process.
  • Learning Leveraging experience with process
    constitute an important aspect of CMM level 3.

  • If Quantitative information is available about
    the process capability, then QP can be
    determined unambiguously
  • Quantitatively managing the process is the focus
    of LEVEL 4 of CMM

SEIs Fundamental concepts
  • Software Process Capability is the range of
    expected results that are achievable by following
    the software process.
  • Software process performance is the actual result
    achieved in the development of software by
    following a software process.
  • Software Process Maturity is the extent to which
    a Software Process is defined, managed,
    controlled, measured and effective.

CMM for software
  • What are the desirable characteristic of an
    organization processes for executing software?
  • How can the organization improve the processes
    for improving the QP?
  • What are the desirable characteristic of the
    improved processes?
  • The answer to the above questions is PROCESS

  • CMM for software is a framework that focuses on
    processes for software development.
  • Framework provide guidance regarding the
    improvements needed to move from one maturity
    level to another.
  • CMM framework describes the key elements of
    software processes at different levels of
  • Specifies the characteristic that the process
    must have to qualify as a process of maturity.
  • The maturity of the process may be classified
    into different levels.
  • Many framework are available for software process
  • ISO 9001, CMM, Trillium, SPICE BOOTSTRAP

Why a CMM?
  • Silver Bullets failed
  • Process, not technology is the key
  • Projects grossly over schedule/budget
  • Early 1980s, US DoD misjudged software
    contractors and suffered.
  • How can we tell a good contractor from a bad one?

Whence CMM?
  • The CMM is based on knowledge acquired from
    software process assessments and extensive
    feedback from both industry and government
  • By Dept Of Defence and
  • SEI (Research Development center at Carnegie
    mellon University)
  • Mark Paulk (project lead for CMM)
  • Bill Curtis
  • Mary Beth Chrisis
  • Charles Weber

What is CMM?
  • Assessment / Evaluation
  • What to do not How to do
  • Determine maturity through 5 levels
  • Initial -1
  • Repeatable 2
  • Defined 3
  • Managed 4
  • Optimizing - 5

CMM Overview

SEIs VisionTo bring engineering discipline to
the development and maintenance of software
Desired ResultHigher quality -- better products
for a better pricePredictability --
function/quality, on time, within budget
Methodology to Achieve that Desired Result
2. Identify Desired StateUnderstand the
description of the next Level
1. Identify Current StateKnow your current
Capability Maturity Level
3. Reduce the GapPlan, implement, and
institutionalizethe key practices of the next
Level.Repeat until continuous optimization is
part of the culture.
The CMM Levels


Process Performance
Process Capability
Process Maturity
Level 1 Initial
  • Chaotic(not organized)
  • May still deliver quality software
  • Dependent on HERO
  • Processes are ad hoc(not planned)
  • Just get it done mentality
  • Minimal data collected or evaluated

Level 2 Repeatable
  • Policies for planning and management established
  • Basic management controls established
  • Process is stable, results can be repeated
  • Identified inputs, outputs, constraints
  • Management needs to be in control first, then

Level 3 Defined
  • Activities with definitions, entry and exit
    conditions for software and management processes
    in organization
  • SEPG group established to oversee process in
  • Organization process tailored for specific
  • Software quality is tracked
  • Activities include peer reviews, CASE tool usage,
    testing standards, and full lifecycle
    configuration management

Level 4 Measured
  • Organization sets quantitative quality goals
  • Productivity and quality are measured
  • Organization-wide database maintained for
    planning and evaluation of projects
  • Processes measure control and variation
  • Processes predict trends in quality and schedule
  • Detailed time, cost, and other metrics are
    collected and used to quantitatively manage
    software development.
  • The organization has a quality focus, with tools
    and training to support development.

Level 5 Optimizing
  • Entire organization focused on improvement of
  • Organization has mechanisms to identify and
    correct weaknesses.
  • Statistical data used to prevent defects
  • Process improvements may be incremental or
  • Continuous process improvement is achieved
    through quantitative management.
  • Processes such as software inspection, code
    walkthroughs, automatic metrics collection, and
    technology review are part of the standard
    development methodology.

(No Transcript)
(No Transcript)
  • KPA- Key Process or Performance Area
  • KPA Cluster of related activities that when
    met,achieve a set of goals for a level.
  • Goals signify the scope, boundary and intent of
    a KPA
  • Key Practices satisfy goals of the KPA

KPAs at different levels
  • The KPAs can be considered as the requirement
    for achieving that maturity
  • Every KPAs specifies a group of activities,
    called key practices, which satisfy the goal of
    that KPA.
  • Key practices are organized into various groups
  • Commitment to perform
  • Ability to perform
  • Activities performed
  • Measurement analysis
  • Verifying implementation

(No Transcript)
The Key Process Areas for Level 2 Repeatable
  • Requirements Management(RM)
  • The purpose of Requirements Management is to
    establish a common understanding between the
    customer and the customer's requirements that
    will be addressed by the software project.
  • The customer may be interpreted as System
    Engineering group,Marketing Group or External
  • Goal 1 System requirements allocated to software
    are controlled to establish a baseline for
    software engineering and management use.
  • Goal 2 Software plans, products, and activities
    are kept consistent with the system requirements
    allocated to software.

Level 2 KPA Software project planning(SPP)
  • The purpose of Software Project Planning is to
    establish reasonable plans for performing the
    software engineering and for managing the
    software project.
  • Software Project Planning involves developing
    estimates for the work to be performed,
    establishing the necessary commitments, and
    defining the plan to perform the work.

SPP cont
  • The software planning begins with a statement of
    the work to be performed and other constraints
    and goals that define and bound the software
    project (those established by the practices of
    the Requirements Management key process area).
  • The software planning process includes steps to
    estimate the size of the software work products
    and the resources needed, produce a schedule,
    identify and assess software risks, and negotiate

SPP Cont
  • Iterating through these steps may be necessary to
    establish the plan for the software project
    (i.e., the software development plan).
  • This plan provides the basis for performing and
    managing the software project's activities and
    addresses the commitments to the software
    project's customer according to the resources,
    constraints, and capabilities of the software

SPP Goals
  • Goal 1 Software estimates are documented for use
    in planning and tracking the software project.
  • Goal 2 Software project activities and
    commitments are planned and documented.
  • Goal 3 Affected groups and individuals agree to
    their commitments related to the software project.

Level 2 Software Project Tracking and
  • The purpose of Software Project Tracking and
    Oversight is to provide adequate visibility into
    actual progress, so that management can take
    effective actions when the software project's
    performance deviates significantly from the SPP.
  • Software Project Tracking and Oversight involves
    tracking and reviewing the software
    accomplishments and results against documented
    estimates, commitments, and plans, and adjusting
    these plans based on the actual accomplishments
    and results.

  • A documented plan for the software project (SPP)
    is used as the basis for tracking the software
    activities, communicating status, and revising
    plans. Software activities are monitored by the
  • Progress is primarily determined by comparing the
    actual software size, effort, cost, and schedule
    with the SPP when selected software work products
    are completed or a milestone is reached.

  • When it is determined that the software project's
    plans goals are not being met
  • corrective actions are taken.
  • These actions may include
  • revising the SPP to reflect the actual
  • re-planning the remaining work
  • or taking actions to improve the performance

SPTO Goals
  • Goal 1 Actual results and performances are
    tracked against the software plans.
  • Goal 2 Corrective actions are taken and managed
    to closure when actual results and performance
    deviate significantly from the software plans.
  • Goal 3 Changes to software commitments are agreed
    to by the affected groups and individuals.

Level 2 Software Subcontract Management(SSM)
  • The purpose of Software Subcontract Management is
    to select qualified software subcontractors and
    manage them effectively.
  • Software Subcontract Management involves
    selecting a software subcontractor, establishing
    commitments with the subcontractor, and tracking
    and reviewing the subcontractor's performance and
  • These practices cover the management of a
    software (only) subcontract, as well as the
    management of the software component of a
    subcontract that includes software, hardware, and
    possibly other system components.

SSM Cont
  • The subcontractor is selected based on its
    ability to perform the work.
  • Many factors contribute to the decision to
    subcontract a portion of the prime contractor's
  • Subcontractors may be selected based on strategic
    business alliances, as well as technical
  • The practices of this KPA address the traditional
    acquisition process associated with
    subcontracting a defined portion of the work to
    another organization.

SSM Cont
  • When subcontracting, a documented agreement
    covering the technical and nontechnical (e.g.,
    delivery dates) requirements is established and
    is used as the basis for managing the
  • The work to be done by the subcontractor and the
    plans for the work are documented.
  • The standards that are to be followed by the
    subcontractor should be compatible with the prime
    contractor's standards.

SSM Cont
  • The software planning, tracking, and oversight
    activities for the subcontracted work are
    performed by the subcontractor.
  • The prime contractor ensures that these planning,
    tracking, and oversight activities are performed
    appropriately and that the software products
    delivered by the subcontractor satisfy their
    acceptance criteria.
  • The prime contractor works with the subcontractor
    to manage their product and process interfaces.

SSM Goals
  • Goal 1 The prime contractor selects qualified
    software subcontractors.
  • Goal 2 The prime contractor and the software
    subcontractor agree to their commitments to each
  • Goal 3 The prime contractor and the software
    subcontractor maintain ongoing communications.
  • Goal 4 The prime contractor tracks the software
    subcontractor's actual results and performance
    against its commitments

Level 2 KPA Software Quality Assurance(SQA)
  • The purpose of SQA is to provide management with
    appropriate visibility into the process being
    used by the software project and products being
  • SQA involves reviewing and auditing the software
    products and activities to verify that they
    comply with the applicable procedures and
  • and providing the software project and other
    appropriate managers with the results of these
    reviews and audits.

SQA Cont
  • The software quality assurance group works with
    the software project during its early stages to
    establish plans, standards, and procedures that
    will add value to the software project and
    satisfy the constraints of the project and the
    organization's policies.
  • By participating in establishing the plans,
    standards, and procedures, the software quality
    assurance group helps ensure they fit the
    project's needs and verifies that they will be
    usable for performing reviews and audits
    throughout the software life cycle.

SQA Cont
  • The software quality assurance group reviews
    project activities and audits software work
    products throughout the life cycle and provides
    management with visibility as to whether the
    software project is adhering to its established
    plans, standards, and procedures.
  • Compliance issues are first addressed within the
    software project and resolved there if possible.
  • For issues not resolvable within the software
    project, the software quality assurance group
    escalates the issue to an appropriate level of
    management for resolution.

SQA Cont
  • This key process area covers the practices for
    the group performing the software quality
    assurance function.
  • The practices identifying the specific activities
    and work products that the software quality
    assurance group reviews and/or audits are
    generally contained in the Verifying
    Implementation common feature of the other key
    process areas.

SQA Goals
  • Goal 1 SQA activities are planned.
  • Goal 2 Adherence of software products and
    activities to the applicable standards,
    procedures, and requirements is verified
  • Goal 3 Affected groups and individuals are
    informed of SQA activities and results.
  • Goal 4 Noncompliance issues that cannot be
    resolved within the software project are
    addressed by senior management.

Level 2 KPA Software Configuration
  • The purpose of Software Configuration Management
    is to establish and maintain the integrity of the
    products of the software project throughout the
    project's software life cycle.
  • SCM involves identifying the configuration of the
    software work products at given points in time
  • systematically controlling changes to the
    configuration, and maintaining the integrity and
    traceability of the configuration throughout the
    software life cycle.

SCM Cont
  • The work products placed under SCM include the
    software products that are delivered to the
    customer and the items that are identified with
    these software products.
  • A software baseline library is established
    containing the software baselines as they are
  • Changes to baselines and the release of software
  • products built from the software baseline library
    are systematically controlled via the change
    control and configuration auditing functions of

SCM Cont
  • This KPA covers the practices for performing the
    SCM function.
  • The practices identifying specific configuration
    items/units are contained in the KPA that
    describe the development and maintenance of each
    configuration item/unit.

SCM Goals
  • Goal 1 SCM activities are planned.
  • Goal 2 Selected software work products are
    identified, controlled and made available.
  • Goal 3 Changes to identified software work
    products are controlled.
  • Goal 4 Affected groups and individuals are
    informed of the status and content of software

Level 3 KPA Organization Process Focus(OPF)
  • The purpose of Organization Process Focus is to
    establish the organizational responsibility for
    software process activities that improve the
    organization's overall software process
  • Organization Process Focus involves developing
    and maintaining an understanding of the
    organization's and projects' software processes
    and coordinating the activities to assess,
    develop, maintain, and improve these processes.

OPF Cont
  • The organization provides the long-term
    commitments and resources to coordinate the
    development and maintenance of the software
    processes across current and future software
    projects via a group such as a SEPG
  • This group is responsible for the organization's
    software process activities.
  • It is specifically responsible for the
    development and maintenance of the organization's
    standard software process and related process
    assets (as described in the Organization Process
    Definition KPA
  • it coordinates the process activities with the
    software projects

OPF Goals
  • Goal 1 Software process development and
    improvement activities are coordinated across the
  • Goal 2 The strengths and weaknesses of the
    software processes used are identified relative
    to a process standard.
  • Goal 3 Organization-level process development and
    improvement activities are planned.

Level 3 KPA Organization Process Definition(OPD)
  • The purpose of Organization Process Definition is
    to develop and maintain a usable set of software
    process assets that improve process performance
    across the projects and provide a basis for
    cumulative, long-term benefits to the
  • Organization Process Definition involves
    developing and maintaining the organization's
    standard software process, along with related
    process assets, such as descriptions of software
    life cycles, process tailoring guidelines and
    criteria, the organization's software process
    database, and a library of software
    process-related documentation.

OPD Cont
  • These assets may be collected in many ways,
    depending on the organization's implementation of
    Organization Process Definition.
  • For example, the descriptions of the software
    life cycles may be an integral part of the
    organization's standard software process or parts
    of the library of software process-related
    documentation may be stored in the organization's
    software process database.
  • The organization's software process assets are
    available for use in developing, implementing,
    and maintaining the projects' defined software
  • The practices related to the development and
    maintenance of the project's defined software
    process are described in the Integrated Software
    Management KPA

OPD Goals
  • Goal 1 A standard software process for the
    organization is developed and maintained.
  • Goal 2 Information related to the use of the
    organization's standard software process by the
    software projects is collected, reviewed, and
    made available.

Level 3 KPA Training Program(TP)
  • The purpose of the Training Program KPA is to
    develop the skills and knowledge of individuals
    so that they can perform their roles effectively
    and efficiently.
  • Training Program involves first identifying the
    training needed of the
  • Organization
  • projects
  • and individuals
  • then developing or procuring training to address
    the identified needs.

TP Cont
  • Each software project evaluates its current and
    future skill needs and determines how these
    skills will be obtained.
  • Some skills are effectively and efficiently
    imparted through informal vehicles (e.g.,
    on-the-job training and informal mentoring)
  • whereas other skills need more formal training
    vehicles (e.g., classroom training and guided
    self-study) to be effectively and efficiently
    imparted. The appropriate vehicles are selected
    and used.

TP Goals
  • Goal 1 Training activities are planned.
  • Goal 2 Training for developing the skills and
    knowledge needed to perform software management
    and technical roles is provided.
  • Goal 3 Individuals in the SEPG and
    software-related groups receive the training
    necessary to perform their roles.

  • Integrated Software Management(ISM)
  • Goal 1 The project's defined software process is
    a tailored version of the organization's standard
    software process.
  • Goal 2 The project is planned and managed
    according to the project's defined software
  • Software Product Engineering(SPE)
  • Goal 1 The software engineering tasks are
    defined, integrated, and consistently performed
    to produce the software.
  • Goal 2 Software work products are kept consistent
    with each other.

KPA Level 3
  • Intergroup Coordination(IC)
  • Goal 1 The customer's requirements are agreed to
    by all affected groups.
  • Goal 2 The commitments between the engineering
    groups are agreed to by the affected groups.
  • Goal 3 The engineering groups identify, track,
    and resolve intergroup issues.
  • Peer Reviews(PR)
  • Goal 1 Peer review activities are planned.
  • Goal 2 Defects in the software work products are
    identified and removed

The Key Process Areas for Level 4 Managed
  • Quantitative Process Management(QPM)
  • Goal 1 The quantitative process management
    activities are planned.
  • Goal 2 The process performance of the project's
    defined software process is controlled
  • Goal 3 The process capability of the
    organization's standard software process is known
    in quantitative terms.

KPA Level 4
  • Software Quality Management(SQM)
  • Goal 1 The project's software quality management
    activities are planned.
  • Goal 2 Measurable goals for software product
    quality and their priorities are defined.
  • Goal 3 Actual progress toward achieving the
    quality goals for the software products is
    quantified and managed.

The Key Process Areas for Level 5 Optimizing
  • Defect Prevention(DP)
  • Goal 1 Defect prevention activities are planned.
  • Goal 2 Common causes of defects are sought out
    and identified.
  • Goal 3 Common causes of defects are prioritized
    and systematically eliminated

KPA Level 5
  • Technology Change Management(TCM)
  • Goal 1 Incorporation of technology changes are
  • Goal 2 New technologies are evaluated to
    determine their effect on quality and
  • Goal 3 Appropriate new technologies are
    transferred into normal practice across the

KPA Level 5
  • Process Change Management(PCM)
  • Goal 1 Continuous process improvement is planned.
  • Goal 2 Participation in the organization's
    software process improvement activities is done
    organization wide.
  • Goal 3 The organization's standard software
    process and the projects' defined software
    processes are improved continuously.

CMM Assessment Method
  • The approach used by Organization for their
    process assessment improvement is called
    CMM-based appraisal for internal process
  • The CBA-IPI is intended to improve its process
  • The Organization is assessed by Assessment Team
  • SEI authorized lead assessor
  • Team 6-10 experienced members from organization
  • Looks at part or complete organization
  • Occurs over 3-5 days
  • Maturity Questionnaires (yes,no,dont know, does
    not apply)
  • Documentation Interviews with FAR (functional
    area Rep)
  • Project Examination

  • FAR( Functional Area Representative)
  • Project leaders
  • Middle Manager ( to whom PLs reports)
  • Configuration Controller
  • SEPG members
  • Training Personnel
  • Developers
  • Testers
  • Analysts
  • Hence an Organization is considered to reach a
    LEVEL, if it satisfies all KPAs for that Level
    all KPAs below it.

CMM Problems
  • Wiggle room (interpretation)
  • Emphasis on contractor evaluation
  • No emphasis on customer focus
  • Management oriented
  • Emphasis on big, mission-critical projects
  • All or nothing rating

CMM, Whats coming
  • SW-CMM (Traditional)
  • P-CMM (People)
  • SA-CMM (Acquisition)
  • SE-CMM (Systems Engineering)
  • IPD-CMM (Integrated Product Development)
  • CMM(I)
  • Merges the above with ISO 15504

How do we know what level?