The Capability Maturity Model in Software Development by elfphabet3

VIEWS: 200 PAGES: 24

									The Capability Maturity Model
  in Software Development


          Paul X. Harder, JD
   Government Micro Resources, Inc.
         September 14, 2004
The Capability Maturity Model
What is the Capability Maturity Model
(CMM)?
   The application of process management and
    quality improvement concepts to software
    development and maintenance.
   A guide for evolving toward a culture of
    engineering excellence.
   A model for organizational improvement.
The Capability Maturity Model
Working with DoD, Carnegie-Mellon University (CMU)
created the Software Engineering Institute
In September 1987, the SEI released a brief description
of the process maturity framework Two methods,
software process assessment and software capability
evaluation and a maturity questionnaire were developed
to appraise software process maturity.
In 1991, SEI released the Capability Maturity Model for
Software version 1.0.
In 2001, SEI released the Capability Maturity Model –
Integrated, superseding the CMM for software.
        Capability Maturity Model

Focuses on practices that are under control of
the software group
Presents a minimum set of recommended
practices that have been shown to enhance a
software development and maintenance
capability
   It defines the expectation (the “what”)
   Without overly constraining the implementation (the
    “how”)
                  Process Maturity Increases
                       Project Success
                                                                                                             Performance continuously


                      Probability Probability Probability
                                                               Target N-z
                                                                                                             improves in Level 5 organizations
                  5
Maturity Levels




                                                                                    Time/$/ . . .            Based on quantitative
                                                                                                             understanding of process and
                                                            Target N-x Target N-y

                  4                                                                                          product, performance continues to
                                                                                                             improve in Level 4 organizations

                                                                                    Time/$/ . . .
                                                                                                             With well-defined processes,
                  3                                                                                          performance improves in Level 3
                                                                                                             organizations
                                                                                    Time/$/ . . .
                         Probability
                         Target N+a




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

                                                                                    Time/$/ . . .
                           Probability
                            Target N




                                                                                                             Schedule and cost targets are
                  1                                                                                          typically overrun by Level 1
                                                                                                             organizations
                                                                                             Time/$/ . . .
                     CMM-I                    CMMI


 Based on the CMM-SW model created in 1991
to assess the maturity of software development,
with integration into other models.
 Multiple models, based on disciplines
addressed
     CMMI - SW: Software Engineering
     CMMI - SE / SW: above plus Systems Engineering
     CMMI - SE / SW / IPPD: above plus Integrated Product &
     Process Development
     CMMI - SE / SW / IPPD / SS: above plus Supplier
     Sourcing
       Why We Chose CMM
CMM today serves as a “seal of approval” in software
development
CMM helped guide us towards standard, repeatable
processes – reduced learning time on how to get things
done
Standard practices mean time savings to our team -
everyone knows what to expect and what to deliver
Our quality activities became more aligned within the
project rather than thought of as a separate event
We rely on our processes and our people together, not
just one or the other
Ideas in CMM creates an environment of improvement –
if you don’t like things one way, make it better!
          Stages of Process Maturity
     Level         Focus                 Process Areas                           Quality
                Continuous        Organizational Innovation and Deployment
5 Optimizing                                                                     Productivity
                Process           Causal Analysis and Resolution
                Improvement
4 Quantitatively Quantitative     Organizational Process Performance
   Managed       Management       Quantitative Project Management

                                  Requirements Development
                                  Technical Solution
                                  Product Integration
                                  Verification
                                  Validation
3 Defined       Process           Organizational Process Focus
                Standardization   Organizational Process Definition
                                  Organizational Training
                                  Integrated Project Mgmt (with IPPD extras)
                                  Risk Management
                                  Decision Analysis and Resolution
                                  Integrated Teaming (IPPD only)
                                  Org. Environment for Integration (IPPD only)
                                  Integrated Supplier Management (SS only)
                                  Requirements Management
                Basic             Project Planning
                                  Project Monitoring and Control
2 Managed       Project           Supplier Agreement Management
                Management        Measurement and Analysis
                                  Process and Product Quality Assurance
                                  Configuration Management                         Risk
   1 Initial                                                                       Rework
    Level 1: the “Initial” Level
   Success depends on heroes
Good performance is possible - but
 Requirements often misunderstood, uncontrolled
 Schedules and budgets frequently missed
 Progress not measured
 Product content not tracked or controlled
 Engineering activities nonstandard, inconsistent
 Teams not coordinated, not trained
 Defects proliferate
            CMMI Level 2: “Managed”
                                               7 Process Areas
CLARIFY REQUIREMENTS
   Baseline the product requirements       – Requirements Management (REQM)
DOCUMENT PLANS
   Estimate project parameters,             Project Planning           (PP)
   Develop plans and processes
TRACK PROGRESS
   Measure actual progress to enable       – Project Monitoring
   timely corrective action                    and Control            (PMC)
   Measure for mgmt. info needs            – Measurement & Analysis   (M&A)
   Verify adherence of processes           – Process & Product
   and products to requirements              Quality Assurance        (PPQA)
CONTROL PRODUCTS
   Identify and control products,          – Configuration
   changes, problem reports                    Management              (CM)
   Select qualified suppliers / vendors;   – Supplier Agreement
   manage their activities                     Management             (SAM)
What Happens During Level 2
Processes become easier to digest and
understand
Managers and team members spend less time
explaining how things are done and more time
doing
Projects are better estimated, better planned,
and more flexible
Quality is integrated into the project
Costs may go up initially, but do go down over
time
And yes, there may be more documentation and
paper
              CMMI Level 3: “Defined”
                                                  11 Process Areas*
ENGINEER THE PRODUCT
  Clarify customer requirements             – Requirements Definition   (RD)
  Solve design requirements; develop        – Technical Solution        (TS)
 implementation processes
  Assemble product components, deliver      –   Product Integration      (PI)
  Ensure products meet requirements         –   Verification            (Ver)
  Ensure products fulfill intended use      –   Validation              (Val)
  Analyze decisions systematically          –   Decision Analysis
                                                  & Resolution          (DAR)
MANAGE THE PROCESSES
  Follow integrated, defined processes      – Integrated Project Mgmt (IPM)
  Identify and control potential problems   – Risk Management         (RSKM)

PROVIDE ORG. INFRASTRUCTURE
  Establish org. responsibility for PI      – Org. Process Focus        (OPF)
  Define the org’s best practices           – Org. Process Definition   (OPD)
  Develop skills and knowledge              – Org. Training              (OT)
What Happens During Level 3
Process Improvement becomes the standard –
Cross-Functional teams look for ways to “short-
cut” the system
Solutions go from being “coded” to being
“engineered”
Quality gates appear throughout the project
effort with the entire team involved in the
process, reducing rework
Risks are managed and don’t take the team by
surprise
    CMMI Level 4: “Quantitatively
            Managed”
                                           2 Process Areas
MANAGE PROJECTS QUANTITATIVELY
  Statistically manage the project’s – Quantitative Project
  processes and sub-processes            Management           (QPM)

MANAGE THE ORGANIZATION
  QUANTITATIVELY
  Understand process performance;    – Organizational
  quantitatively manage                Process Performance (OPP)
  the organization’s projects
      CMMI Level 5: “Optimizing”
                                        2 Process Areas
OPTIMIZE PERFORMANCE
  Identify and eliminate               – Causal Analysis
  the cause of defects early             and Resolution       (CAR)

ADOPT IMPROVEMENTS
  Identify and deploy new tools and    – Organizational Innovation
  process improvements to meet needs     and Deployment        (OID)
  and business objectives
         The CMM Maturity Levels

Maturity Level 1

Maturity Level 2
                               ~
Maturity Level 3
                       ~       ~       ~
Maturity Level 4
                   ~   ~   ~       ~       ~       ~

Maturity Level 5
                   ~   ~   ~       ~   ~       ~
       Proving Maturity Levels
Five characteristics must be demonstrated in each
practice to be assessed in that maturity level practice
areas:
   Commitment to Perform – Policies, procedures, and resources to
    perform the work
   Ability to Perform – Personnel, tools, and templates in place
   Activities Performed – Documentation and interviews
    demonstrating that policies are implemented
   Measurement and Analysis – Metrics and other tools used to
    evaluate effectiveness of processes
   Verifying Implementation – Independent review and evaluation of
    the processes
Maturity levels are proven through documentation
(policies, procedures, templates) and interviews of staff
(to prove institutionalization).
  CMM Process Maturity Profile
   of Software Organizations
Maturity Level        1987-91        1997         1999        2001   December
                                                                       2002
1- Initial              80%           61%         48%         38%      32%
2- Repeatable           12%           23%         30%         34%      37%

3- Defined               7%           14%         16%         20%      21%
4- Managed               0%            2%          4%          5%      5%
5- Optimizing            1%            1%          2%          4%      5%

Organizations            130          795         1179        1641     1998
reporting to SEI



                 Source: http://www.sei.cmu.edu/sema/profile.html
   Pitfalls of
Implementation
     How Long Does it Take?
Implementing CMM does not occur
overnight.
Implementing CMM is not merely a “paper
drill”.
Typical times for implementation:
   3-6 months of preparation
   6-12 months of implementation
   3 months of assessment preparation
   12 months for each new level
        Is it Perfect?
No! Some implementations do more
harm than good.
   Complete re-vamp of processes to “get
    certified” instead of smartly adapting
    processes.
   Process focus used more as a stick
    than as a carrot.
   Focusing on compliance instead of
    improvement.
             Overall Benefits
Defect rates have dropped
Defect detection occurs earlier
User requirements are documented, controlled,
and managed
   Especially important when users change their minds!
Estimating improves and becomes more precise
Risk management is a practice
Development processes remain agile!
Implementation Best Practices
Be Realistic – Some processes will be
more ready than others.
Be Flexible – Allowing tailoring is key to
adoption.
Be Open – The key is to learn how to do
things better, not how to “comply”.
Be Patient – It does not happen overnight.
           For More Information

CMM Softcopy:
http://www.sei.cmu.edu/cmm/obtain.cmm.html
   Overview article: in SME Guidebook and at
    http://www.sei.cmu.edu/publications/documents/96.reports/
    96.ar.cmm.v1.1.html
CMMI Sources:
   CMMI Softcopy:
    http://www.sei.cmu.edu/cmmi/models/models.html
   Transitioning to CMMI – A Guide for Executives
    http://www.sei.cmu.edu/cmmi/publications/exec.pdf

								
To top