Lesson 2.1 (My expansion & Partially in Chapter 12 of Text)

advertisement
Process Management
• Process Management in software started in late
1960’s (but informally and inconsistently)
• Software Engineering Institute (SEI) is the center
• Watts Humphrey (retired IBMer who joined SEI)
was a key proponent of:
(in sequential order)
– CMM (capability maturity model)
• Process maturity of organization
– PSP (personal software process)
• Process maturity of individual
– CMMI (capability maturity model integrated)
• Follow-on to CMM
A Quick Overview of CMM
(How You May Want to “Manage”
Change & Certification)
Software Engineering Institute (SEI)
 Federally Funded Research &
Development Center (FFRDC) at
Carnegie Mellon University
 Mission is to foster improvement
of software processes
 Developed Capability Maturity
Model and Assessment
Methodology
 Educate “Authorized Lead
Assessors” and organizations
 Many Assessors have been
leading process improvement
efforts since 1987
Process Management Premise
• An undefined
process cannot be
start
controlled
(or measured)
Improve
Control
• An uncontrolled
process cannot be
improved
• Attempting to
improve an
unstable process
yields further
instability
Define
Measure
Execute
Process
Adapted from SEI
A 5 Step Approach to
Software Process Improvement (SPI)
Learning
Propose
Future
Actions
Analyze
and
Validate
Implement
Solution
Refine
Solution
Stimulus for Change
Set
Context
Build
Sponsorship
Charter
Infrastructure
Acting
IDEALSM
Initiating
Pilot/Test
Solution
Characterize
Current &
Desired States
Create
Solution
Diagnosing
Develop
Recommendations
Set
Priorities
Plan
Actions
Develop
Approach
Establishing
Meeting Your Business (SPI) Goals
With (some)Assessor’s Products and Services
Initiating
-Executive Briefing
-Pre-Assessment Consulting
-Strategic &Tactical Planning
Diagnosing
(Assessing)
-CMM Training
-CMM Profiles(Pre-Assessments)
-CBA -IPI (CMM based- internal
process improvement assessment)
Establishing
Acting
Learning
-Process Definition
-Process Templates
-Action Planning Workshop
-SEPG Development & Guidance
-KPA/Process Improvement Training
-Process Implementation Plan
-Post-Assessment Consulting
-Pilot Projects
-Measurement Programs
Improvement Framework
Productivity and Quality Optimizing - Level 5
Total Organization Involvement
Continuous
Improvement
Managed - Level 4
Quantifiable Predictability
Quantitative
Understanding
Defined - Level 3
Engineering
Process
Consistency
Repeatable - Level 2
Disciplined
Focus
Management
Process
Initial - Level 1
Chaos
Behavioral
Characteristics
Capability Maturity ModelSM Version 1.1
RISK
Improvement Framework
Optimizing - Level 5
Defect Prevention
Technology Change Mgmt
Process Change Mgmt.
Productivity
and
Quality
Managed - Level 4
Quantitative Process Management
Software Quality Management
Defined - Level 3
Organization Process Focus
Training Program
Software Product Engineering
Peer Reviews
Organization Process Definition
Integrated Software Management
Intergroup Coordination
RISK
Repeatable - Level 2
Requirements Management
Software Project Tracking & Oversight
Software Quality Assurance
Software Project Planning
Subcontract Management
Software Configuration
Management
Initial - Level 1: (no process!)
Capability Maturity ModelSM Version 1.1
Why Use The CMM?
• Provides a framework for: benchmarking the process and the
organization
• CMM is not prescriptive; it does not tell an organization how
to improve
– Provides good “common sense” engineering and management practices
– The key practices do not
• Limit the choice of life cycle
• Require or preclude specific software technologies or language (e.g., prototyping,
design method, coding or testing practices)
• Require that documentation conform to any particular set of standards
• The key practices are the result of “national consensus”
– Use of standardized language and goals
Early Reported Benefits
Results of Software Process Improvement in 13 Organizations
Category
Range
Median
Productivity gain per year
Early error detection gain per year
(defects discovered pre-test)
9% - 67%
6% - 25%
35%
22%
Yearly reduction in time to market
Yearly reduction in post-release
defect reports
Value returned on each dollar invested
15% - 23%
10% - 94%
19%
39%
4.0 - 8.8
5.0
Source: Software Engineering Institute, 1994 ----- 17 years ago
Process Maturity
“Spanning the Years”
1%
1%
7%
12%
3%
Level 3
Level 1
15%
129 Organizations
1987 - 1991
Legend
Level 1
Level 2
Level 3
Level 4
Level 5
1987 - 1991
1998
92%
81%
7%
15%
2%
4%
1%
Level 1
80%
There was a 737% increase
in the number of
organizations assessed
from 1987 through 1998
26%
951 Organizations
1998
55%
Trends in Process Maturity*
600
Organizations
Assessed
1987-1998
Number of Assessments
523 (55%)
500
400
300
247 (26%)
200
143 (15%)
100
28 (3%)
10 (1%)
0
Initial
Repeatable
Defined
* Extracted from SEI’s Process Maturity Profile of the Software Community
Assessments through December 1998
Managed
Optimizing
Year
1987 - 1991
Org.
129
1992
219
1993
317
1994
414
1995
506
1996
632
1997
782
1998
951
Maturity Profile by Organization
Type
100%
90%
80%
70%
60%
50%
40%
30%
20%
10%
0%
Initial
Com mercial
Re peatable
Defined
DOD/Fede ral Contractor
* Extracted from SEI’s Process Maturity Profile of the Software Community
Assessments through December 1998
Managed
Mi litary/Fede ral
Optimizing
Othe r/Unknow n
Assessment Overview
• CMM Profile:
–
–
–
–
–
–
Informal quantitative evaluation
Excellent mechanism as a interim or pre-assessment
Non-intrusive to organization
Guidance on recommended process improvements
Results not forwarded to SEI
Typically a 3-5 day activity
• CBA IPI (CMM Based Assessment Internal Process Improvements):
–
–
–
–
–
–
Formal Assessment
Automated approach saving your organization up to 40% time/effort
Collaborative
Guidance on recommended process improvements
Results forwarded to SEI
Typically a 10 day activity
CMMSM Profile
Projects
Collect
Documents
Process
Data
Fill Out
Questionnaire
Select
Projects
Identify
Scope
Kick-Off
Meeting
-Organizational
-Project
-Implementation
Review
Documents
Interviews
-Project Leaders
-Middle Managers
-Practitioners
-SEPG
Findings
Presentation
Legend
= Activities completed
prior to on-site visit
-Findings
-Next Steps
CBA IPI Process Flow
Pre Assessment Period
Training
Day 1
Introduction
CMM Training*
Organizational
Overview
Assessment
Activities
Walkthrough
Day 2
Assessment
Activities
Walkthrough
Day 1
Kick-Off Meeting
SEI Questionnaire
Response
Project Selection
Finalize
Assessment
Planning and
Logistics
* Additional CMM training as
Required
SEI Questionnaire
Trend Analysis
Document Review
Day 2
Document
Review
Day 3
Document
Review
Scripting
Assessment
Questions
On-Site
Notebook
Development
CBA IPI Process Flow
On-site Period
Day 1
Day 2
Project Leader
Interviews
Functional Area Rep
Interviews
Functional Area
Rep Interviews
Consolidate Data
Day 3
Consolidate Data
Follow-on
Interviews (As
required)
Day 4
Day 5
Present Draft
Findings( Pls)
Present Final
Findings
Present Draft
Findings (FARs)
Executive Session
Appraisal Wrap-up
Prepare Draft
Findings
Rate Organization
Next Steps
Develop Final
Finding Presentation
Assessment of any Key Process Area(KPA)
This is where the assessors earns his/her “money” !!!
• 5 Components of Assessment of any Process:
–
–
–
–
–
Commitment : organizational/management commitment
Ability
: availability of qualified/skilled resources
Activity
: specific functions performed
Measurement : what and how status is recorded & gauged
Verification : what and how are the activities verified
More Recent (2002) Data
• CBA IPIs and SPAs conducted since 1987 through Dec.
2001 and returned to SEI by Jan. 2002
– 2164 assessments
• 1676 CBA IPIs (CMM-Based Assessment- Internal Process
Improvement)
• 488 SPAs (Software Process Assessment)
– 1638 organizations
• 8925 projects
• 456 participating companies
• 427 reassessed organizations
• Assessments conducted from 1997 through Dec. 2001
– 1158 organizations (38% of which is offshore)
• 5624 projects
• 365 participating companies
Note: CMM was developed mostly from 1987 to 1997.
Types of Organizations by SIC (Standard
Industry Classification) code
• 27.9% - Service Industry (business,
engineering,health, etc.)
• 16.4 % - Manufacturing
(electronic,printing,instruments,metal,
chemical,etc.)
• 6.1% - Public Administration
• 5.9% - Finance, Insurance, etc.
• 4.5% - Transportation, Utility, etc.
• 38.0% - off shore (non-SIC coded)
• 1.2% - others
Note
Based on 1104 organizations who reported size
(employees in software development & maintenance)
201 to 2000+
30.3%
101 to 200
23.8%
1 to 100
45.9 %
Personal Software Process
(championed by W. Humphrey)
• Understanding the person’s individual
– Productivity
– Skills
– Methodology
• Keeping track of the person’s individual
– Efforts (e.g. requirements, design, coding, testing, etc.)
– Quality (errors and fixes)
• Allows improvements in
– Estimation
– Task performance
CMMI (CMM Integrated)
•
CMMI model is a fairly recent extension/modification of CMM
(developed around 2002 and still growing & changing)
We are interested in CMMI for Software Engineering. (there
are others such as CMMI for Systems Engineering, Supplier
Sourcing, and Integrated Product and Process Development)
There are 2 models : i) Staged and ii) Continuous
•
•
–
Different levels
•
•
–
25 major processes grouped into 4 categories:
•
•
•
•
–
5 levels for Staged
6 levels for Continuous
Organizational
Project management
Engineering
Support Category
There are Goals and Practices for Each Process – to be satisfied for both
models
Levels for Continuous versus Staged Models
– A. Continuous model has 6 capability levels where each process moves
through these 6 different levels of capability:
• Level (0) Incomplete – not performed or partially performed
•
(1) Performed - perform the basic practice
•
(2) Managed - institutionalized process (performed according to policy)
•
(3) Defined
- tailored & institutionalized specifically to the organization
•
(4) Quantitatively Managed – process is quantitatively managed
•
(5) Optimizing – process is continuously improved and adapted
– B. Staged model has 5 maturity levels (like traditional CMM) each of
which contains different processes that must be mastered:
• Level (1) Initial
•
(2) Managed
•
(3) Defined
•
(4) Quantified
•
(5) Optimizing
Level 5
Optimizing
Optimizing
Level 4
Quantitatively Managed Quantitatively Managed
Level 3
Defined
Defined
Level 2
Managed
Managed
Level 1
Performed
Initial
Level 0
Incomplete
------
Continuous
Staged
(Capability Levels)
(Maturity Levels)
Levels for Continuous versus Staged models in CMM I
4 CMMI Process Areas
• Process Management (5 processes)
–
–
–
–
–
Organizational Process Focus
Organizational Process Definition
Organizational Training
Organizational Process Performance
Organizational Innovation and Deployment
• Project Management (8 processes)
–
–
–
–
–
–
–
–
Project planning
Project Monitoring and Control
Supplier Agreement Management
Integrated Project Management
Risk Management
Quantitative Project Management
Integrated Supplier Management
Quantitative Project Management
4 CMMI Process Areas (cont.)
• Engineering: (6 processes)
–
–
–
–
–
–
Requirements Management
Requirements Development
Technical Solution
Product Integration
Verification
Validation
• Support: (6 processes)
–
–
–
–
–
–
Configuration Management
Process and Product Quality Assurance
Measurement and Analysis
Organizational Environment for Integration
Decision Analysis and Resolution
Causal Analysis and Resolution
Capability Level by Process Areas for
Continuous Representation
5
4
3
Capability
Levels
2
1
0
- - - - Process Process Process
Area 1 Area 2 Area 3
Process
Area 25
For Continuous Model, each Process Area is Assessed at
its own Level.
So, we can compare process by process within an organization.
Generic
Practice 1
Generic
- - - - Practice n
Generic
Goal 1
Process
Area 1
----
Specific
- - - Practice w
Generic
Practice p
Generic
Goal 5
Process
Area 25
- - - - - - - - - - - - - - - - -
Specific
Specific
Goal 1
Goal x
Specific
Practice 1
- - - -
Generic
Practice 1
Specific
Goal 1
----
Specific
Practice 1
Relationships of Goals and Practices
Specific
Goal z
Specific
- - - Practice k
CL5
Optimizing
+ (Generic Goal 5)
CL4
Quantitatively Managed
+ (Generic Goal 4)
CL3
CL2
Defined
+ (Generic Goal 3)
Managed
+ (Generic Goal 2)
CL1
Performed
+ (Specific Goals) +(Generic Goal 1)
CL0
Incomplete
Achieving the “Capability Levels” by each Process Area in
the Continuous Representation Model
Staged Model and Maturity Levels (MLs)
ML5:Optimizing
1.
Organizational Innovation & Deploy
2. Causal Analysis & Resolution
ML4:Quantitatively Managed
1.
2.
Organizational Process Performance,
Quantitative Proj. Mgmt
ML3:Defined
ML2:Managed
1. Req. Development, 2. Technical solutions, 3. Product
Integration, 4. Verification, 5. Validation, 6.
Organizational Process Focus, 7. Organiz. Process
Definition, 8. Organiz. Training, 9. Integrated Proj.
Mgmt, 10. Risk Mgmt, 11.Integrated Teaming, 12.
Integrated Supplier Mgmt, 13. Decision Analysis and
Resloution, 14. Organiz. Environment for Integration
1. Requirements Mgmt, 2. Project Planning, 3. Configuration Mgmt,
4.Supplier Agreement Mgmt, 5. Project Monitoring & Cntrl,
6. Measurement & Analysis, 7. Process & Product QA
ML1:Initial
No Process
May Use CMMI for 3 Separate Areas of Interest
1. Product and Service Development (CMMI for
Development model)
2.
Service Establishment, Management, and
Delivery (CMMI for Services model)
3.
Product and Service Acquisition (CMMI for
Acquisition model)
Download