02-process improvement.ppt
TRANSCRIPT
Process Improvement
It is not necessary to change. Survival is not mandatory.
» W. Edwards Deming
Both change and stability are fundamental to process improvement.
» Dennis Ahern
Models
• Models provide a common set of process requirements that capture the best practices and knowledge in a format that can be used to guide priorities.
» CMMI Distilled, Ahern, Clouse, Turner, p5.
Basic Model of Improvement• Observe some difficulty • Collect some data• Identify the root causes (hypothesis)• Develop reasonable solutions (test)• Plan and implement the changes
Process Improvement Doesn’t Just Happen
• many models and buzzwords – SEI– ISO 9000– CQI– test process improvement– PSP– CMM– Plan-Do-Check-Act – QIP– …
Emphasis
• high-quality software• finite amount of resources• cost-effective manner
Two Observables
• Cost: – Main cost in software is time. (Why?)
• Quality: – correctness– reliability– robustness– user friendliness– verifiability– maintainability– safety
Why is Process Improvement Difficult?
• Software development is:– Evolutionary and experimental– Not production– Human based
• Software is variable:– Processes– Goals– Content
• We lack models:– Needed to to reason about the process and the product
Capability Maturity Model (CMM) for Software
Capability Maturity Model (CMM) for Software
• Process Capability– ability of a process to produce planned results
• Software Engineering Institute (SEI)– Carnegie Mellon
• 5 Levels• Certification based on audits
5 Stages of CMM for Software
• Level 1: Initial• Level 2: Repeatable• Level 3: Defined• Level 4: Managed• Level 5: Optimizing
Initial
RepeatableDefined
ManagedOptimizing
Initial• Ad hoc• No process in place
RepeatableAchieved a stable process with a repeatable level of statistical control
DefinedAchieved foundation for major and continuing progress
Managed Substantial quality improvements• Comprehensive measurements
OptimizingMajor improvementsin quality and quantity
Basic
management
control
Process
definition
Process
management
Process
controlSEI
Capability Maturity Model
Level Focus
Initial Heroics
Repeatable Basic project management
Defined Process standardization
Managed Quantitative management
Optimizing Continuous process Improvement
CMM Maturity Level 1: Initial
Characteristics• No sound SE management
principles in place• Ad hoc practices• May be successful because of
competent manager and team• Activities are not preplanned,
but response to crisis• Unpredictable process• Cannot predict time and cost
of development
To get to next level• Initiate project
management
Elements of Basic Project Management
• 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 management
practices in place• Planning and management are
based on experience with similar products (repeatable)
• Track costs and schedules• Identify problems as arise and
take immediate corrective action
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 development
fully documented• Reviews used to achieve
software 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 quality
and productivity goals for each project
• Continually measure• Statistical quality control
in place
To get to next level• Support automatic
gathering of process data• Use data to analyze and
modify the process• Defect Prevention
CMM Maturity Level 5: Optimizing
Characteristics• Statistical quality and
process control techniques are used and guide the organization
• Process has positive feedback loop
To maintain level• Continue improvement
and optimization of the process
Other Improvement Process Models-1Plan-Do-Check-Act (Deming) (Improving single process within an organization)
• Plan. Develop plan for effective improvement• Do. The development organization carries out the plan• Check. After process termination, observe the effects
of the change or test• Act. Study the results and document the lessons
learned. Emphasis on– understanding the principles of the process, – predicting product’s quality– suggest further improvement
Other Improvement Process Models-2
Quality Improvement Paradigm (NASA Goddard) (Systematic software development and SE technology validation )• Characterize project using models and baselines • Set quantifiable improvement goals on basis of relevance to
organizing successful project and organization performance improvement
• Execute the plan to develop products and provide feedback• Analyze the collected data and information gathered and evaluate
the current practices, determine problems, record findings, and make recommendations for improvement
• Package the experience in the form of new, updated or refined models. Store them in an experience base so it is available for future projects.
Process Improvement Framework Quagmire
CMMI: CMM Integrated
Reduce Cost:– eliminate inconsistencies between processes– Reduce duplication– Provide common terminology and style– Increase clarity
CMMI Principles• Maintain executive support
– Strong consistent support is crucial• Pick your targets carefully
– Don’t underestimate effort• Leverage best practices– “Steal with pride”
• Align process improvement with your business objectives– Improve your business
The Model• Required: Statement of Goals
– a desirable end state; succinct– Example: Requirements are managed and inconsistencies with
plans and products are identified• Expected: Statement of a Practice
– the expected means of achieving a goal– every practice maps to exactly one goal– Example: Develop an understanding with the requirements
providers on the meaning of the requirements• Informative: 10 types of information components
identified (e.g. purpose, reference, typical work products)
Goals of the capability levelsLevel Goal
CL 0 No goal
CL 1 The process supports achievement of specific goals of the process area by transforming identifiable inputs to identifiable 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 quantitatively managed process
CL 5 The process is institutionalized as an optimizing process
Level 3
• Defined: For each process area considered, each project in the organization will have a managed process (created under Level 2) that is tailored using standard guidelines.
4 process categories
• Process Management• Project Management• Engineering• Support
4 process areas
• Process Management– Process Definition– Training
• Project Management• Engineering• Support
4 process areas
• Process Management• Project Management
– Project Planning– Monitoring and Control– Risk Management
• Engineering• Support
4 process areas
• Process Management• Project Management• Engineering
– Requirements Development and Management– V&V– Product Integration
• Support
4 process areas
• Process Management• Project Management• Engineering• Support
– Configuration Management– Measurement and Analysis– Decision Analysis and Resolution
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