LECTURE – 21
(PART 2)
SOFTWARE ENGINEERING
SOFTWARE QUALITY MANAGEMENT
(CAPABILITY MATURITY MODEL/ SIX SIGMA)
1
SEI CAPABILITY MATURITY MODEL (CMM)
Developed by Software Engineering Institute
(SEI) of the Carnegie Mellon University, USA:
To assist the U.S. Department of Defense (DoD)
in software acquisition.
The rationale was to include:
Likely contractor performance as a factor in
contract awards.
2
SEI CAPABILITY MATURITY MODEL
Major DoD contractors began CMM-based process improvement
initiatives:
As they vied for DoD contracts.
SEI CMM helped organizations:
Helped Improve quality of software they developed
Realized adoption of SEI CMM model had significant business
benefits.
Other organizations adopted CMM.
3
SEI CAPABILITY MATURITY MODEL
In simple words:
CMM is a model for apprising the software
process maturity of a contractor into
different levels.
Can be used to predict the most likely
outcome to be expected:
from the next project that the organization
undertakes.
4
SEI CAPABILITY MATURITY MODEL
Can be used in two ways:
Capability evaluation
Software process assessment.
5
CAPABILITY EVALUATION
Provides a way to assess the software process capability of an
organization:
Helps in selecting a contractor
Indicates the likely contractor performance.
6
SOFTWARE PROCESS ASSESSMENT
Used by an organization to assess its current process:
Suggests ways to improve the process capability.
This type of assessment is for purely internal use.
The SEI CMM classifies software development industries
into:
Five maturity levels.
Stages are ordered so that improvements at one stage
provide foundations for the next.
Based on the pioneering work of Philip Crosby
7
SEI CAPABILITY MATURITY MODEL
Optimizing (5)
Managed (4)
Defined (3)
Repeatable (2)
Initial (1)
8
LEVEL 1: (INITIAL)
Organization operates
Without any formalized process or project plans
An organization at this level is characterized by
Ad hoc and often chaotic activities.
9
LEVEL 1: (INITIAL)
Software production processes are not defined,
Different engineers follow their own process
Development efforts become chaotic.
The success of projects depend on individual efforts
and heroics.
10
LEVEL 2: (REPEATABLE)
Basic project management practices
Tracking cost, schedule, and functionality are
followed.
Size and cost estimation techniques:
Function point analysis, COCOMO, etc. used.
Production process is ad hoc:
Not formally defined
Also not documented.
11
LEVEL 2: (REPEATABLE)
Process used for different projects might vary between
projects:
Earlier success on projects with similar applications can
be repeated.
Opportunity to repeat process exist when a company
produces a family of products.
12
LEVEL 3: (DEFINED)
Management and development activities:
Defined and documented.
Common organization-wide understanding of
activities, roles, and responsibilities.
13
LEVEL 3: (DEFINED)
The process though defined:
Process and product qualities are not measured.
ISO 9001 aims at achieving this level.
14
LEVEL 4: (MANAGED)
Quantitative quality goals for products are set.
Software process and product quality are measured:
The measured values are used to control the product
quality.
Results of measurement used to evaluate project
performance:
Rather than improve process.
Organization sets quantitative quality goals.
World-wide about 100 organizations assessed at this
level.
15
LEVEL 5: (OPTIMIZING)
Statistics collected from process and
product measurements are analyzed:
Continuous process improvement based on
the measurements.
Known types of defects are prevented from
recurring by tuning the process
Lessons learned from specific projects
incorporated into the process
16
LEVEL 5: (OPTIMIZING)
Identify best software engineering
practices and innovations:
Tools, methods, or process are identified.
Transferred throughout the organization.
World-wide about 500 organizations have been assessed at this level.
17
KEY PROCESS AREAS
Each level is associated with a key process
area (KPA) identifies:
Where an organization at the previous
level must focus to reach this level.
18
LEVEL 2 KPAS
Software project planning:
Size, cost, schedule.
Project monitoring
Configuration management
Subcontract management
19
LEVEL 3 KPAS
Process definition and documentation.
Reviews
Training program
20
LEVEL 4 KPAS
Quantitative measurements.
Process management .
21
LEVEL 5 KPAS
Defect prevention.
Technology change management.
Process change management.
22
COMPARISON BETWEEN ISO 9001 AND SEI CMM
ISO 9001 awarded by an international
standards body:
Can be quoted in official documents and
communications.
SEI CMM assessment is purely for internal
use.
23
COMPARISON BETWEEN ISO 9001
AND SEI CMM
SEI CMM was developed specifically for software
industry:
Addresses many issues specific to software industry.
SEI goes beyond quality assurance
Aims for TQM.
ISO 9001 correspond to SEI level 3.
24
COMPARISON BETWEEN ISO 9001 AND SEI CMM
SEI CMM provides a list of key areas:
On which to focus to take an organization from one level to the other
Provides a way for gradual quality improvements over several stages.
e.g trying to implement a defined process before a repeatable
process:
Counterproductive as managers are overwhelmed by schedule and
budget pressure.
25
CMMI (CMM INTEGRATION)
CMMI is the successor of the CMM.
The CMM was developed from 1987 until 1997.
In 2002, CMMI Version 1.1 was released.
Version 1.2 followed in August 2006.
The goal of the CMMI to integrate many different models into
one framework.
It was created by members of industry, government and the
SEI.
26
REMARKS ON QUALITY MODEL USAGE
Highly systematic and measured approach to software
development process suits certain circumstances
Negotiated software, safety-critical software, etc.
What about small organizations?
Typically handle applications such as internet, e-
comm.
Without an established product range,
Without revenue base, experience on past projects,
etc.
CMM may be incompatible
27
SMALL ORGANIZATIONS
Small organizations tend to believe:
We are all competent people hired to do a job, we can’t
afford training.
We all communicate with one another.
Osmosis works because we are so close.
We are all heroes:
We do what needs to be done.
Therefore rules do not apply to us.
28
SMALL ORGANIZATIONS
Often have problems:
Undocumented requirements
Undocumented
Inexperienced managers
Documenting the product
Resource allocation
Training
Peer reviews
29
SMALL ORGANIZATIONS
A two week CMM-based appraisal is
probably excessive:
Small organizations need to operate more
efficiently at lower levels of maturity
Must first fluorish if eventually they are to
mature
30
SIX SIGMA
Six sigma is a quantitative approach to
eliminate defects:
Applicable to all types of industry - from
manufacturing, product development, to
service.
The statistical representation of Six Sigma
quantitatively describes :
How a process is performing.
31
SIX SIGMA
To achieve six sigma:
A process must not produce more than 3.4 defects per million
opportunities.
5 Sigma -> 230 defects per million.
4 Sigma -> 6210 defects per million.
Six sigma methodologies:
DMAIC (Define, Measure, Analyze, Improve, Control).
DMADV: (Define, Measure, Analyze, Design, Verify).
32
SIX SIGMA METHODOLOGIES
The methodologies are implemented by Green belt and Black belt workers:
Supervised by Master black belt worker.
Pareto Chart:
Simple bar chart to represent defect data
Identify the problems that occurs with greatest frequency
or incur the highest cost
33
SUMMARY
Evolution of quality system:
Product inspection
Quality control
Quality assurance
Total quality management (TQM)
Quality paradigm change:
From product to process
34
SUMMARY
ISO 9000:
Basic premise:
If a good process is followed
Good products are bound to follow.
Provides guidelines for
establishing a quality system.
35
SUMMARY
ISO 9000:
Series of three standards
9001, 9002, and 9003
9001 is applicable to software
industry.
36
SUMMARY
SEI CMM
Developed specially for software industry.
Classifies software organizations into five
categories.
According to the maturity of their development
process.
CMMI: Integrates existing quality
techniques.
37
CURRENT TRENDS
Many organizations have already tuned
their process for:
Budget,
Schedule, and
Quality product.
Competition is challenging them to:
Reduce time for delivery
Adopt Six-Sigma methodology
38
39