Transcript Cursus CMMI
Capability Maturity Model Integration
(CMMI)
Universiteit van Amsterdam
Jan Jaap Cannegieter
Rini van Solingen
Objectives of this lecture
Basic knowledge of CMMI
Basic insight in Software Process Improvement
Understanding the value of CMMI
Share experiences
Have fun
SYSQA B.V.
Operational
Testing
Improvement
Benchmarking
Assessments /
quick scans
Tools
Support
Coördination
Execution
Tactical
Requirements
Quality
assurance
Strategic
Auditing
Edit quality
systems
Requirements
development
Requirements
management
Information
analysis
COTS selection
Edit
business case
SPI
Assessments /
quick scans
QA in projects
Controlling
outsourcing
Edit quality plan
Inspections /
reviews
Evaluations
Products
Projects
Processes
Suppliers
Mediation
Education and training
Implementing:
CMMI, ITIL,
ASL, BISL,
RUP, SDM,
DSDM, Agile,
PRINCE 2,
PROQA
LogicaCMG
Founded 1969 Founded 1964
Floated in 1983 Floated in 1995
30 December 2002
Merger between
Logica and CMG
Founded in 1968
Floated in 1988
19 September 2005
Announcement of
offer for Unilog
Founded 1969
Floated in 1985
21 August 2006
Announcement of offer
for WM-data
A large international company in ICT-services
with a leading position in Europe
About 40.000 employees
Active in 41 countries
Euro 4.5 billion revenue
Large porfolio for all application domains
Over 40 years of experience in ICT-services
Software
Boeing 747
• 8.000.000 lines of software
• Equals about 250.000 pages
• Equals 2.000 CMMI books
Every defect can be fatal!
•
•
•
•
•
•
Ariane-missile: 1 Billion Euro
Radar Guam: 255 Casualties
Altitude meters Boeing 757: 189 Casualties
Deutsche Telecom: 50 million Euro
Postbank - 55.000 Double withdrawals
.....
Software Characteristics
Intangible
Not physical (no weight, volume, .....)
Not measurable (difficult to test)
No production, only development
Flexible
Software often contains defects
Very young engineering discipline
Software ‘rules’ still unknown
Software Problems
Typical visible problems
– low productivity
– low predictability (budget and planning)
– low quality
– high maintenance costs (>70%)
Typical underlying problems
– little experience with used technology
– insufficient understanding of processes
– ineffective process monitoring
– ad-hoc management
Software Successes – Best in Class
85% of projects within budget and planning
1 Defect per 100.000 lines of code
50 times reduction failures after release
50% reduction of Time to Market with 90%
reuse
Many companies develop software according to
CMMI level 5
What is Quality?
“The extend in which something is capable
to be used for a dedicated purpose”
(Van Dale Dictionary)
Views on Quality
Value-view
Productview
Transced
ent-view
Quality
Processview
User-view
Bron: Garvin, D., Sloan Management Review, 1984
Therefore: Improve!
Software everywhere in society
Software in life critical systems
Users demand predictable and reliable software
development
Software development without problems is
possible
Continuous improvement and measurement is
a prerequisite
It’s time for software engineering!
Starting point CMMI
“All models are wrong, but
some of them are useful”
History of CMMI
Department of Defense
Software Engineering Institute
1987 – 1991: Capability Maturity Model for
Software
90’s: much more CMM’s
2000 – 2002: CMMI: integrated model for SW,
SE, IPPD en SS
2006: CMMI framework and CMMI DEV
2007: CMMI ACQ and CMMI SVC
Component 1: Process Area’s
Grouped activities
– Requirements management
– Project planning
– Risk Management
– Validation
Contains specific goals and practices
Example 1: Requirements Management
SG 1 Manage Requirements
SP 1.1 Obtain an Understanding of Requirements
SP 1.2 Obtain Commitment to Requirements
SP 1.3 Manage Requirements Changes
SP 1.4 Maintain Bidirectional Traceability of Requirements
SP 1.5 Identify Inconsistencies between Project Work and
Requirements
Example 2: Risk Management
SG 1 Prepare for Risk Management
SP 1.1 Determine Risk Sources and Categories
SP 1.2 Define Risk Parameters
SP 1.3 Establish a Risk Management Strategy
SG 2 Identify and Analyze Risks
SP 2.1 Identify Risks
SP 2.2 Evaluate, Categorize, and Prioritize Risks
SG 3 Mitigate Risks
SP 3.1 Develop Risk Mitigation Plans
SP 3.2 Implement Risk Mitigation Plans
Process Areas
Process Management
Organizational process focus
Organizational process definition
Organizational training
Organizational process performance
Organizational innovation and
development
Engineering
Requirements management
Requirements development
Technical solution
Product integration
Verification
Validation
Project Management
Project planning
Project monitoring and control
Supplier agreement management
Risk management
Integrated teaming
Quantitative project management
Support
Configuration management
Process and product quality assurance
Measurement and analysis
Decision analysis and resolution
Causal analysis and resolution
Organizational environment for integr.
Component 2: generic components
Level 2 Institutionalize a Managed Process
- Establish an Organizational Policy
- Plan the Process
- Provide Resources
- Assign responsibility
- Train People
- Management Configurations
- Monitor and Control the Process
- Objectively Evaluate Adherence
- Review Status with Higher Level Management
Component 2: generic components
Level 3 – Institutionalize a defined process
– Establish a Defined Process
– Collect Improvement Information
Level 4 – Institutionalize a quantitavely managed
process
– Establish Quatitative Objectives for the Process
– Stabilize Subprocess Performance
Level 5 – Institutionalize a Optimizing Process
– Ensure Continuous Process Improvement
– Correct Root Causes for Problems
CMMI – Staged Maturity levels
Optimizing
Organizational Innovation and Deployment
Causal Analysis and Resolution
Continuous
improvement
Quantitatively
managed
Predictable
process
Defined
Standard
process
Managed
Disciplined
process
Initial
Organizational Process Performance
Quantitative Project Management
Requirements development
Technical Solution
Product Integration
Verification
Validation
Org. Process Focus
Org. Process Definition
Organizational Training
Integrated Project Management
Risk Management
Integrated Teaming
Integrated Supplier Management
Decision Analysis and Resolution
Org. Environment for Integration
Requirements management
Measurement and Analysis
Project Planning
Process and Product Quality Assurance
Project Monitoring and Control
Supplier Agreement Management Configuration Management
CMMI: Continuous
5
4
3
2
1
0
RM
PP
PM&C SAM M&A QA
CM
…
CMMI Continuous
GD/GP
N5
GD/GP
N5
GD/GP
N5
GD/GP
N4
GD/GP
N4
GD/GP
N4
GD/GP
N3
GD/GP
N3
GD/GP
N3
GD/GP
N2
GD/GP
N2
GD/GP
N2
SD/SP
SD/SP
SD/SP
Procesgebied x
Procesgebied y
Procesgebied z
Staged versus continuous
Staged:
maturity levels
Process area 1
Process area 2
Specific
goals
Specific
practices
Process area n
Generic
goals
Continuous:
capability levels
Generic
practices
The difference shown in an other way
Process area
Measurement and analysis
You can’t control what you can’t
measure
Common questions:
1. What is the size of your system?
2. How long do you need to properly develop a feature
of a certain size?
3. How long will a change request take to be
implemented?
4. What is the chance that your product fails?
5. Where do you need to improve most?
6. Will your end-user be happy?
7. How many defects do you (probably) release to your
customer?
Measurement & Analysis – PA - SG
– SG 1 Align Measurement and Analysis Activities
•
•
•
•
SP 1.1 Establish Measurement Objectives
SP 1.2 Specify Measures
SP 1.3 Specify Data Collection and Storage Procedures
SP 1.4 Specify Analysis Procedures
– SG 2 Provide Measurement Results
•
•
•
•
SP 2.1 Collect Measurement Data
SP 2.2 Analyze Measurement Data
SP 2.3 Store Data and Results
SP 2.4 Communicate Results
Measurement & Analysis – PA - GG
– GG 2 Institutionalise a Managed Process
•
•
•
•
•
•
•
•
•
•
GP 2.1 Establish an Organizational Policy
GP 2.2 Plan the Process
GP 2.3 Provide Resources
GP 2.4 Assign Responsibility
GP 2.5 Train People
GP 2.6 Manage Configurations
GP 2.7 Identify & Involve Relevant Stakeholders
GP 2.8 Monitor and Control the Process
GP 2.9 Objectively Evaluate Adherence
GP 2.10 Review Status with Higher-Level Management
0
Sep-95
Aug-95
Jun-95
Jul-95
May-95
Apr-95
Mar-95
Feb-95
Jan-95
Dec-94
Nov-94
Oct-94
140
Sep-94
Aug-94
Jun-94
Jul-94
May-94
Apr-94
Mar-94
Feb-94
Quality: Example from Practice
Number of Defects detected per Month
120
100
80
60
40
20
Minimum data per project
Planned and spend time
Planned and spend throughput time
Planned and actual size
Defects, administered in moments of injection
and detection
Software Process Improvement
Need for change
Perform assessment
Set objectives
Develop plan
Make preparations
Implement
Changing attitude towards
quality
Assure and measure
Perform evaluation
Critical success factors SPI / CMMI
Management commitment
Involvement of all stakeholders
Need for improvement
Prioritization of actions
Planning and control of the CMMI-implementation
Clear goals
Use change management
Assurance of the new processes
Communication with all stakeholders
Sensitivity for organizational context
Availability of resources
What is the value of CMMI for companies?
Source of best practice
Standard in the IT-business
Proven technology
Saving money
Saving time extention
Higher quality
Satisfied customers
What is the value of CMMI for you?
Source of best practices
Secret guideline
Mature professional
Structuring your projects
Being ahead of technical oriented professional
Managing a business is improving it
CMMI: the facts
Best-practice maturity model for process
improvement
Category
Average
Low
High
Costs
20%
3%
87%
Time
37%
2%
90%
Productivity
62%
9%
255%
Quality
50%
7%
132%
Customer satisfaction
14%
-4%
55%
4.7 : 1
2:01
27.7 : 1
ROI
Investment: 2.500 per employee per year
Change of failure: 58%
More information
http://www.sei.cmu.edu (official cmmi pages)
http://cmmi.pagina.nl/
http://www.kleinecmmi.nl
De kleine CMMI voor ontwikkeling - 978012117739
Software Process Improvement – 90 440 0698 3
Kwaliteitszorg in ICT-projecten – 90 440 0369 0
CMMI Guidelines of process integration and product
improvement - 0321154967
CMMI® Distilled - 0201735008
Practical Insight into the CMMI - 1580536255
Software Process Improvement – 020117782x