State of Michigan

20
1 State of Michigan Achieving Software Process Improvement with Capability Maturity Model (CMM)

description

State of Michigan. Achieving Software Process Improvement with Capability Maturity Model (CMM). What is CMM? What is a Maturity Level? Improved Process Workflow Quality versus CMM Level Process for CMM Assessment. Implementation Approach Prerequisites to Initiate Process Guidelines - PowerPoint PPT Presentation

Transcript of State of Michigan

Page 1: State of Michigan

1

State of Michigan

Achieving Software Process Improvement with

Capability Maturity Model (CMM)

Page 2: State of Michigan

2

Outline

• What is CMM? • What is a Maturity

Level?• Improved Process

Workflow• Quality versus CMM

Level• Process for CMM

Assessment

• Implementation Approach

• Prerequisites to Initiate Process

• Guidelines• Next Steps

Page 3: State of Michigan

3

What EXACTLY is Software CMM?

• The CMM is a framework that describes the key elements of an effective software process

• The CMM guides software organizations striving to gain control of their processes for developing and maintaining software, evolve toward a software engineering culture, and management excellence

• The CMM describes an evolutionary improvement path for software organizations from an ad-hoc, immature process to a mature, disciplined one

Page 4: State of Michigan

4

What is a Maturity Level?

• A well defined evolutionary plateau on the path toward achieving a mature software process.

• Indicates a level of process capability.

• The CMM has 5 maturity levels.

Page 5: State of Michigan

5

Maturity Level

Key Process Areas (KPA) No. of Goals per KPA

No. of Key Practices per KPA

5

4

3

2

Process change managementTechnology change managementDefect prevention

Software quality managementQuantitative process management

Peer reviewsIntergroup coordinationSoftware product engineeringIntegrated software managementTraining programOrganization process definitionOrganization process focus

Software configuration managementSoftware quality assuranceSoftware subcontract managementSoftware project tracking and oversightSoftware project planningRequirements management

TOTALS TOTALS

Subtotal

Subtotal

Subtotal

Subtotal

Subtotal

Subtotal

Subtotal

Subtotal333 9

33 6

2322323 17

444332 20

52

191918

1318

9172019161116

211722242512

56

31

108

121

316

The Challenge SW-CMM Size Characteristics

Page 6: State of Michigan

6

Example of Improved Process Workflow

• A common, integrated vision of improvement for all elements of an organization.

• Software estimates are documented for use in planning and tracking the software project.

• Software project activities and commitments are planned and documented.

• Affected groups and individuals agree to their commitments related to the software project.

Page 7: State of Michigan

7

Example of Improved Process Workflow (cont.)

• Changes to software commitments are agreed to by the affected groups and individuals.

• Adherence of software products and activities to requirements is verified objectively.

• The prime contractor and the software subcontractor agree to their commitments to each other.

Page 8: State of Michigan

8

Example of Improved Process Workflow (cont.)

• The prime contractor tracks the software subcontractor’s actual results and performance against the commitments.

• Changes to identified software work products are controlled.

• Affected groups and individuals are informed of the project status.

Page 9: State of Michigan

9

Quantifiable Benefits

• Cost of development goes down

• Better level of control on project changes

• Project metrics at enterprise level controls impact of change

• Process consistency across all agencies allows benchmarking and best practices to be shared at the enterprise level

• Reduced time to market has a positive impact on business and IT

Page 10: State of Michigan

10

Quantifiable Benefits (cont.)

• Better resource allocation

• Mitigates single point of failure

• Increases percentage of projects on-time and on-budget

• Better project forecasts based on historical project data

• Systems Development Lifecycle (SDLC) will lend itself to Level 3 compliance (Defined)

• A better product

Page 11: State of Michigan

11M. Diaz and J. Sligo, “How Software Process Improvement Helped Motorola,” IEEE Software,September/October 1997, p. 76.

0

100

200

300

400

500

600

700

800

900

1000

1 2 3 4 5

Software CMM Level

In-P

roc

es

s D

efe

cts

/MA

EL

OC

*MAELOC = million assembly-equivalent lines of code

Defect rate halved per maturity level

• A defect is a bug or error that escapes the phase in which it was introduced

• SLOC = software lines of code

Consider 500K SLOCLevel 2 450 defects, rework

equals 16 hrs/defectestimated at $100/hr$1,600 x 450 = $720K rework

Level 3 $360K rework

Level 4 $180K rework

Level 5 $90K rework

Quality vs. CMM Level

Page 12: State of Michigan

12

Level 1 & 2(Without historical data)

Level 3(With historical data)

-145%

0%

20%

Ove

r/u

nd

er

pe

rce

nta

ge Software Estimates

0

5

10

15

Level 1 Level 2 Level 3

Ave

rag

e n

um

be

r o

f d

efe

cts/

1K

slo

c

Post Release Defects

0255075

100

Level 1 Level 2 Level 3

Staffing Requirements

-12%-26%

-38%

-62%

Pe

rce

nt

of

sta

ff s

up

po

rt

pe

r sy

ste

m

Productivity

Based on data from 120 projects in Boeing Information Systems, when an organization maturity increased from SW-CMM Level 1 to 3 Source: SEPG 2000 Keynote Briefing by Scott Griffen

• Accuracy of project estimates improved 87%• Software quality improved 130%• Cycle time reduced 36%• Productivity improved 62%• Employee satisfaction increased 22%

Improvements in Cost, Quality, and

Productivity

Page 13: State of Michigan

13

Process for CMM Assessment

• Create a Process Improvement Team which has been trained in CMM.

• A Mini-Assessment is completed via a maturity questionnaire for all agencies or IT

organizational units. • The responses are tallied,

evaluated and a list of findings are produced.

• The results become a basis for recommendation for process improvement.

• Develop a project plan to address needed improvements

• Plan on-going monitoring

Page 14: State of Michigan

14

Implementation Approach

Average time to achieve Level 2 certification 24-36 months

ID

1

2

3

4

5

Task Name

Establish a P rocess Im provem ent Team

Conduct a M ini-Assessm ent of Agencies

Collect M ini-Assessm ent, sum m arize results,evaluate results, prepare findings

Present findings & recom m endations to IMPACT

Determ ine next steps

Start Date

8/1/01

9/10/01

12/3/01

3/18/02

3/18/02

End Date

8/17/01

11/30/01

2/28/02

3/18/02

4/18/02

13d

60d

64d

1d

24d

Q3 Q4 Q1 Q2 Q3 Q4

2001 2002Duration

Page 15: State of Michigan

15

Prerequisites to Initiate Process

• Commitment of staff resources and availability

• Orientation to CMM process

• Change in organizational culture– Allowing time to follow process– Process improvement

• Management Support

Page 16: State of Michigan

16

Prerequisites to Achieve Process

• Systems Development Lifecycle be in place and being followed.

• Software Configuration Management• Software Quality Assurance Program• Software Subcontract Management• Project Tracking and Oversight• Project Planning• Requirements Management

Page 17: State of Michigan

17

0

1

2

3

Guidelines(States of Transition)

PRODUCTIVITY

CurrentState

DesiredState

TransitionState

Page 18: State of Michigan

18

CMM Level 2 Next Steps

• Establish an Process Improvement Team to standardize a process for internal CMM certification prior to official CMM certification.

• Create a center of excellence• Commitment of resources• Policy decision • Introduce Mini-Assessment to IT community• Agency continues to operate toward level 2 or higher

• Identify IT organizational units that we could use as a pilot.

Page 19: State of Michigan

19

Agency

IT

Development TechnicalSupport

Client/Server

Main-frame

Web

Pilot Project?

Page 20: State of Michigan

20

Conclusion

• It is clear, that software process improvement can pay off. The rough calculations of business value ratios indicate that the returns can be very substantial.

• However, We need to learn how, when, why, and for whom process improvement pays off.