Process Improvement
It is not necessary to change. Survival is notmandatory.
»W. Edwards Deming
Models
Models provide a common set of processrequirements that capture the best practicesand knowledge in a format that can be usedto guide priorities.
»CMMI Distilled, Ahern, Clouse, Turner, p5.
Basic Model of Improvement
Emphasis
high-quality software
finite amount of resources
cost-effective manner
Two Observables
Cost:
Quality:
correctness
reliability
robustness
user friendliness
verifiability
maintainability
safety
Why is Process Improvement Difficult?
Software development is:
Software is variable:
We lack models:
Needed to to reason about the process and the product
5 Stages of CMM for Software
Level 1: Initial
Level 2: Repeatable
Level 3: Defined
Level 4: Managed
Level 5: Optimizing
Initial
Repeatable
Defined
Managed
Optimizing
Initial
 Ad hoc
 No process in place
Repeatable
Achieved a stable process with a repeatablelevel of statistical control
Defined
Achieved foundation for major andcontinuing progress
Managed
 Substantial quality improvements
 Comprehensive measurements
Optimizing
Major improvements
in quality and quantity
Basic
management
control
Process
definition
Process
management
Process
control
SEICapability Maturity Model
Level
Focus
Initial
Repeatable
Defined
Managed
Optimizing
CMM Maturity Level 1: Initial
Characteristics
No sound SE managementprinciples in place
Ad hoc practices
May be successful because ofcompetent manager and team
To get to next level
Initiate projectmanagement
Elements of Basic ProjectManagement
Software Configuration Management
Software Quality Assurance
Software Acquisition Management
Software Project Control
Software Project Planning
Software Requirements Management
CMM Maturity Level 2: Repeatable
Characteristics
Basic SE managementpractices in place
Planning and management arebased on experience withsimilar products (repeatable)
To get to next level
Standardize Processes
Process Standardization
Peer Reviews
Project Interface Coordination
Software Product Engineering
methods and technologies
software development process architecture
Integrated Software Management
Organization-level Awareness
Organization Training Program
Organization Process Definition
Organization Process Focus
CMM Maturity Level 3: Defined
Characteristics
Process for developmentfully documented
Reviews used to achievesoftware quality
Introduce CASE Tools
To get to next level
Quantitative Management
Quantitative Management
Statistical process management
quantify quality and cost parameters
Process database to maintain process data
Assess relative quality of each product
CMM Maturity Level 4: Managed
Characteristics
Organization sets qualityand productivity goals foreach project
To get to next level
Support automaticgathering of process data
Use data to analyze andmodify the process
Defect Prevention
CMM Maturity Level 5: Optimizing
Characteristics
Statistical quality andprocess control techniquesare used and guide theorganization
Process has positivefeedback loop
To maintain level
Continue improvementand optimization of theprocess
Other Improvement Process Models-1
Plan-Do-Check-Act (Deming)
(Improving single process within an organization)
Plan. Develop plan for effective improvement
Do. The development organization carries out theplan
Check. After process termination, observe theeffects of the change or test
Act. Study the results and document the lessonslearned. Emphasis on
CMMI: CMM Integrated
Reduce Cost:
eliminate inconsistencies between processes
Reduce duplication
Provide common terminology and style
Increase clarity
CMMI Principles
Maintain executive support
Pick your targets carefully
Leverage best practices
Align process improvement with yourbusiness objectives
The Model
Required: Statement of Goals
a desirable end state; succinct
Expected: Statement of a Practice
the expected means of achieving a goal
every practice maps to exactly one goal
Informative: 10 types of information componentsidentified (e.g. purpose, reference, typical workproducts)
Goals of the capability levels
Level
Goal
CL 0
No goal
CL 1
The process supports achievement of specific goals ofthe process area by transforming identifiable inputs toidentifiable outputs
CL 2
The process is institutionalized as a managed process
CL 3
The process is institutionalized as a defined process
CL 4
The process is institutionalized as a quantitativelymanaged process
CL 5
The process is institutionalized as an optimizingprocess
Level 3
Defined: For each process area considered,each project in the organization will have amanaged process (created under Level 2)that is tailored using standard guidelines.
4 process categories
Process Management
Project Management
Engineering
Support
Summary: Process improvement
May not be necessary for a given project
May be neglected by some companies
May be necessary for survival of
companies
employees