capacity planning and demand management

47
The Intelligence behind Successful Software Projects IT DEMAND MANAGEMENT AND CAPACITY PLANNING: WHY ESTIMATION IS VITAL TO BALANCING THE SCALE -1-

Upload: lawrence-putnam-jr

Post on 18-Aug-2015

78 views

Category:

Documents


2 download

TRANSCRIPT

The Intelligence behind Successful Software Projects

IT DEMAND MANAGEMENT AND CAPACITY PLANNING: WHY ESTIMATION IS VITAL TO BALANCING THE SCALE

-1-

The Intelligence behind Successful Software Projects

Quantitative Software Management

ExecutiveSummary

-2-

Agenda

Challenges associated with demand management & capacity planning:

• “Realistic” demand estimation• Effective resource optimization• Detailed resource planning to support

capacity utilization

The Intelligence behind Successful Software Projects

Quantitative Software Management

ExecutiveSummary

Why Is IT Development Capacity Planning so

Difficult?

-3-

The Intelligence behind Successful Software Projects

Quantitative Software Management

ExecutiveSummary

-4-

A Difficult Juggling Act in a Complex Environment

Production CapacityBusiness Demand Technology & Business Executive Management

The Intelligence behind Successful Software Projects

Quantitative Software Management

ExecutiveSummary

-5-

Computerworld – How to Develop an Effective Capacity Planning Process

Requirements/Estimates

Productivity baseline

Estimates Transformed into Resource Plans

Aggregate demand compared to actual capacity

Recommended Best Practice

AssessingResource Optimization

“How to develop an effective capacity planning process”, Rich Schiesser, Computerworld, Mar 31, 2010

Configure skills/roles

Top-Down Estimation

The Intelligence behind Successful Software Projects

Quantitative Software Management

ExecutiveSummary

-6-

Why is Matching Demand & Capacity so Difficult?

• Business stakeholder insatiable appetite for competitive capability

• Poor IT estimation & poor project stakeholder negotiation

• Ability to predict amount of resources /skills as required over the course of a project

• Dynamic nature of the total volume of projects in the development pipeline

The Intelligence behind Successful Software Projects

Quantitative Software Management

ExecutiveSummary

“Realistic” Demand Estimation

-7-

The Intelligence behind Successful Software Projects

Quantitative Software Management

ExecutiveSummary

-8-

“Realistic” Demand Estimation

• What we would like vs what is possible

• What facts can we bring to bear?

Scope of the work (size) Productivity to perform the work Availability skilled labor

• How important is accuracy?

• How do we negotiate some realistic demand solutions?

-9-

The Intelligence behind Successful Software Projects

Quantitative Software Management

ExecutiveSummary

Terminology

Targets, constraints, estimates, commitments, and plans are not the same thing:

• Target - A goal, what we would like to do or achieve

• Constraint - Some internal or external limitation on what we are able to do

• Estimate - A technical calculation of what we might be able to do at some level of scope, cost, schedule, staff, and probability

• Commitment - A business decision made to select one estimate scenario and assign company resources to meet a target within some constraints

• Plan - A set of project tasks and activities that (we calculate) will give us some probability of meeting a commitment at a defined level of scope, budget, schedule, and staff

Organizations sometimes confuse these terms and the business practices they represent.

The Intelligence behind Successful Software Projects

Quantitative Software Management

ExecutiveSummary

-10-

Identifying Unrealistic Stakeholder Expectations

• QSM research has found that the 2 most common reasons projects fail is:

Unrealistic cost & schedule expectations Unmanaged requirements growth

• Need an effective mechanism to quantify stakeholder requirements - scope

• Need and effective method to translate requirements into time and effort

• Need to provide practical alternatives when expectations don’t meet reality

If we can’t get this right we will never have a effective

capacity planning solution!

The Intelligence behind Successful Software Projects

Quantitative Software Management

ExecutiveSummary

-11-

How? Top-Down Scope-Based Estimation

Particularly good at identifying unrealistic expectations:

• Doesn’t require a lot of detailed information

• Relatively quick

• Few hidden assumptions

• Explicitly calibrated from history (local or industry)

• Very flexible for scope, staffing, duration, etc., changes

• Considered industry “best practice”

-12-

The Intelligence behind Successful Software Projects

Quantitative Software Management

ExecutiveSummary

orem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.

orem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.

Two Sizing Approaches

Analogy Sizing

Comparing this system to the known sizes of similar system(s).

Adjustments can be made by percentage or by including/excluding functions.

Artifact Sizing

Counting and measuring system artifacts and work products and scaling to the size of the final system.

Different artifacts have different knowledge “densities” adjusted by their gearing factors.

Copyright © 2014 QSM Inc

Historical System of known size

System being

estimated

% difference. Functions included or excluded

System being

estimated

Table A

Screen1

Screen2

Model X

GearingFactors

Requirements,Use Cases

Screens

Tables,DatabasesModels,

workflows

System Work Products and

Artifacts

The Intelligence behind Successful Software Projects

Quantitative Software Management

ExecutiveSummary

-13-

Gearing Factor

As long as we work in a single unit for history, calibration, and estimation, we do not need a Gearing Factor

If we want to compare or sum sizing in different units or to use industry databases, we have to normalize to a common unit

The Gearing Factor is the normalizing base

We can calculate the Gearing Factor from history

Copyright © 2014 by QSM, Inc.

The Intelligence behind Successful Software Projects

14 ®

Gearing Factor

As long as we work in a single unit for history, calibration, and estimation, we do not need a Gearing Factor

If we want to compare or sum sizing in different units or to use industry databases, we have to normalize to a common unit

The Gearing Factor is the normalizing base

We can calculate the Gearing Factor from history

The Intelligence behind Successful Software Projects

Quantitative Software Management

ExecutiveSummary

-15-

Top-Down Estimation Particularly Effective Early in the Project Lifecycle

Est

imat

ion

Unc

erta

inty

Concept Reqts Design Construction Dev Testing Qualification Testing

Functional Measures: Business RequirementsFunction PointsAgile Epics/StoriesUse Cases

Component Measures:ModulesScreens/report/forms/ETLsRICE ObjectsPackage Business Process ConfigurationsStory Points

7X 5X 3X .75X .25X .05X

The Intelligence behind Successful Software Projects

Quantitative Software Management

ExecutiveSummary

-16-

Top-Down Estimation Particularly Effective Early in the Project Lifecycle

Est

imat

ion

Unc

erta

inty

Concept Reqts Design Construction Dev Testing Qualification Testing

Functional Measures: Business RequirementsFunction PointsAgile Epics/StoriesUse Cases

Component Measures:ModulesScreens/report/forms/ETLsRICE ObjectsPackage Business Process ConfigurationsStory Points

7X 5X 3X .75X .25X .05X

The Intelligence behind Successful Software Projects

Quantitative Software Management

ExecutiveSummary

-17-

Top-Down Estimation Particularly Effective Early in the Project Lifecycle

Est

imat

ion

Unc

erta

inty

Concept Reqts Design Construction Dev Testing Qualification Testing

7X 5X 3X .75X .25X .05X

Historic sizing & performance data

is the key to reducing

uncertainty early in the lifecycle!

The Intelligence behind Successful Software Projects

Quantitative Software Management

ExecutiveSummary

-18-

Estimates are Uncertain By Their Nature

Estimates are always uncertain

The job of the estimation process is not to remove the uncertainty, it is to measure it

SLIM-Estimate simply translates uncertainty into risk

We accept and deal with uncertainty in many aspects of our lives

“Forecasts of the future are inherently uncertain.”

Larry Putnam Sr.Measures for Excellence

Yourdon Press 1992 p.207

“The key issue… is documenting the estimate’s uncertainty…”

Steve McConnell.Software Estimation

Microsoft Press 2006 p.251

“Prediction is difficult, especially if it involves the future.”

Niels Bohr.Physicist and

Nobel Laureate

The Intelligence behind Successful Software Projects

Quantitative Software Management

ExecutiveSummary

-19-

Accuracy and Early Feasibility Estimates

• Early estimates have more uncertainty.

Driven by what we know and what we don’t know.– It’s good to know what you don’t know

• Good place to focus our attention to reduce uncertainty

• Some contend that without high accuracy estimates are of no use and provide little value.

Estimates don’t need to be 10 decimal places accurate to identify cost and schedule proposals that are patently unreasonable.

“It is better to be roughly right than precisely wrong.” - John Maynard Keynes

• At this stage of the project lifecycle estimates should be judged on their ability to help make better business decisions.

The Accurate Useful Estimate

The Intelligence behind Successful Software Projects

Quantitative Software Management

ExecutiveSummary

-20-

Trapping High Risk Proposals

• Most projects start off as proposals that need to be prioritized and justified.

Priorities are usually aligned with the organizations strategic goals.

Justification may be based on benefits to the organization.– New revenue to be realized

– Savings or cost efficiencies

Many times the benefit is expressed in terms of ROI , IRR or payback period.

• Most proposals have some high level description of capabilities that relate to the size & scope to be developed and implemented.

• Most proposals have a target or desired schedule and cost.

• This is enough information to generate a useful feasibility estimate.

The Intelligence behind Successful Software Projects

Quantitative Software Management

ExecutiveSummary

-21-

Typical Project Proposal

Initially these calculations are based on what the business would like to happen. We need to re-evaluate them based on the feasibility estimate of what is likely to happen.

The Intelligence behind Successful Software Projects

Quantitative Software Management

ExecutiveSummary

-22-

Identify High Risk Projects as They Enter the Budgeting & Approval Process

The Intelligence behind Successful Software Projects

Quantitative Software Management

ExecutiveSummary

-17-

Compare Proposed Expectations to Historical Performance

Desired Cost & Schedule

Historical data and benchmark trends

Impossible Zone

Impossible Zone

The Intelligence behind Successful Software Projects

Quantitative Software Management

ExecutiveSummary

-17-

Compare Proposed Expectations to Historical Performance

Desired Cost & Schedule

Even though there is variability in the estimate it is useful in identifying when desired costs and schedules are not reasonable for a given amount of scope

Impossible Zone

Impossible Zone

The Intelligence behind Successful Software Projects

Quantitative Software Management

ExecutiveSummary

-25-

Evaluating Alternative Plans

To get alignment between what we would like and what is likely?

• There are a finite number of options to explore:

1. Reduce scope to meet schedule and cost goals

2. Increase staffing to meet schedule– Decreases probability of meeting cost and lowers reliability

3. Negotiate for more schedule and budget– Historic data can help backup your case

4. Increase productivity– Usually not able to influence much in the short term

– Should be backed up by data

5. Combination of the above

The Intelligence behind Successful Software Projects

Quantitative Software Management

ExecutiveSummary

Effective Resource Optimization

-26-

The Intelligence behind Successful Software Projects

Quantitative Software Management

ExecutiveSummary

-27-

Effective Resource Optimization• How do we make sure we are using our scarce resources so as to optimize the amount of work that can get done?

• What facts can we bring to bear?

Scope of the work (size) Historic staffing data (internal & industry)

• Trading-off cost & schedule

Recognize what we can influence though staffing/resources

Unanticipated benefits of effective trade-offs– Lower cost– Higher throughput– Higher reliability

The Intelligence behind Successful Software Projects

Quantitative Software Management

ExecutiveSummary

-28-

Using Benchmarking to Assess Resource Utilization – Internal Trends

Internal Baseline

Schedule Performance

1 10 100

Effective IU (thousands)

0.1

1

10

100

Duration (Months)

Effort Performance

1 10 100

Effective IU (thousands)

0.01

0.1

1

10

100

1,000

Effort (PHR) (thousands)

Productivity Performance

1 10 100

Effective IU (thousands)

0

5

10

15

20

25

30

35

Productivity (Index)

Staffing Performance

1 10 100

Effective IU (thousands)

1

10

100

1,000

Peak Staffing

Company Sample Projects Avg. Line Style 1 Sigma Line Style 2 Sigma Line Style 3 Sigma Line Style

With a modest amount of historic data, we can understand key performance trends and variability.

The Intelligence behind Successful Software Projects

Quantitative Software Management

ExecutiveSummary

-29-

Using Benchmarking to Assess Resource Utilization – External Comparison

External Benchmark

Schedule Performance

1 10 100

Effective IU (thousands)

0.1

1

10

100

C&T Duration (Months)

Effort Performance

1 10 100

Effective IU (thousands)

0.01

0.1

1

10

100

1,000

C&T Effort (PHR) (thousands)

Productivity Performance

1 10 100

Effective IU (thousands)

0

5

10

15

20

25

30

35

PI

Staffing Performance

1 10 100

Effective IU (thousands)

0.1

1

10

100

1,000

C&T Peak Staff (People)

Company Sample Projects QSM Business Avg. Line Style 1 Sigma Line Style 2 Sigma Line Style 3 Sigma Line Style

External comparison to industry benchmarks can highlight opportunities for improvements and optimization.

Close to average

Close to average Higher than average

Higher than average

The Intelligence behind Successful Software Projects

Quantitative Software Management

ExecutiveSummary

Opportunity to Optimize Staffing Levels

Staffing Comparison

Peak Staffing

1 10 100

Effective IU (thousands)

1

10

100Peak Staff (People)

Comparison of Company Sample Projects to QSM BusinessC&T Peak Staff (People) vs. Effective IU

C&T Peak Staff (People) Values

Benchmark Reference Group: QSM BusinessComparison Data Set: Company Sample ProjectsDifference From Benchmark

at MinEffective IU:

1200

4.33

5.921.59

at 25% QuartileEffective IU:

4920

6.62

12.225.60

at MedianEffective IU:

8840

7.90

16.518.61

at 75% QuartileEffective IU:

11100

8.46

18.5510.10

at MaxEffective IU:

33420

11.78

32.6820.90

Comparison breakpoints based on min, max, median and quartile values for the data set: Company Sample Projects

Company Sample Projects QSM Business Avg. Line Style

How industry staffs

How this organization staffs

Opportunity to take on more work

The Intelligence behind Successful Software Projects

Quantitative Software Management

ExecutiveSummary

Opportunity to Lower CostEffort Comparison

Effort (PHR)

1 10 100

Effective IU (thousands)

0.1

1

10

100 C&T Effort (PHR

) (thousands)

Comparison of Company Sample Projects to QSM BusinessC&T Effort (PHR) vs. Effective IU

C&T Effort (PHR) Values

Benchmark Reference Group: QSM BusinessComparison Data Set: Company Sample ProjectsDifference From Benchmark

at MinEffective IU:

1200

599.37

2301.021701.65

at 25% QuartileEffective IU:

4920

1591.89

5917.574325.68

at MedianEffective IU:

8840

2388.30

8760.076371.77

at 75% QuartileEffective IU:

11100

2795.98

10202.247406.26

at MaxEffective IU:

33420

5996.75

21337.6015340.85

Comparison breakpoints based on min, max, median and quartile values for the data set: Company Sample Projects

Company Sample Projects QSM Business Avg. Line Style

Industry effort cost

This organization’s effort cost

Potential savings forredeployment on additional demand or if we outsource to an external vendor this represents potential savings to the organization

The Intelligence behind Successful Software Projects

Quantitative Software Management

ExecutiveSummary

-32-

For Almost No Schedule Penalty

Schedule Comparison

Schedule

1 10 100

Effective IU (thousands)

1

10C

&T Duration (M

onths)

Comparison of Company Sample Projects to QSM BusinessC&T Duration (Months) vs. Effective IU

C&T Duration (Months) Values

Benchmark Reference Group: QSM BusinessComparison Data Set: Company Sample ProjectsDifference From Benchmark

at MinEffective IU:

1200

2.71

2.61-0.10

at 25% QuartileEffective IU:

4920

3.83

3.62-0.21

at MedianEffective IU:

8840

4.42

4.15-0.27

at 75% QuartileEffective IU:

11100

4.68

4.38-0.30

at MaxEffective IU:

33420

6.13

5.66-0.47

Comparison breakpoints based on min, max, median and quartile values for the data set: Company Sample Projects

Company Sample Projects QSM Business Avg. Line Style

Industry durations

This organization’s durations

Very little difference!

The Intelligence behind Successful Software Projects

Quantitative Software Management

ExecutiveSummary

-33-

Resource Optimization Takeaways

• Use historical data to assess current resource utilization.

• Compare current resource utilization to outside industry benchmarks.

• Identify opportunities for optimization (don’t over staff!).

Make the time-effort tradeoff relationship work for us.– You pay almost no schedule penalty.

– Cost goes down and reliability goes up.

For more information on this - http://www.qsm.com/research Document the results and benefits of making better business

decisions.

The Intelligence behind Successful Software Projects

Quantitative Software Management

ExecutiveSummary

Translating Estimates into Resource Demands

-34-

The Intelligence behind Successful Software Projects

Quantitative Software Management

ExecutiveSummary

Common Practice vs Best Practice Labor Hour EstimatesMost Common Industry Practice Today Best Practice Estimates Breakdown

Effort by Skill by Month

This approach doesn’t help the organization determine when these resources are need as the project progresses.

This approach identifies what skills are needed when and can easily feed a PPM system where specific people can be allocated to the project.

The Intelligence behind Successful Software Projects

Quantitative Software Management

ExecutiveSummary

-36-

How Skills Flow on-off a Project Release

• Need to understand for any given development methodology how the skilled manpower builds up and rolls off a project.

Agile Waterfall Package

Implementation Etc.

• Need to be able to estimate the skill demands and pass to PPM system.

-37-

The Intelligence behind Successful Software Projects

Quantitative Software Management

ExecutiveSummary

Product Development Lifecycles & Skills

• All software development lifecycles include four primary activities

What, How, Do & Deploy/Fix Some SDLCs are more sequential and others include more

concurrency in theses activities

• Types of labor needed changes as we transition across activities

Methodology What How Do Deploy/Fix

Waterfall Concept Rqmts. & Design

Construct & Test

Deploy

RUP Initiation Elaboration Construction Transition

Agile Initiation Iteration Planning

Iteration Development

Production

SAP ASAP Project Preparation

Business Blueprint

Realization & Final Prep

Go Live

Knowledge Acquisition Implementation Usage

Types of labor needed

The Intelligence behind Successful Software Projects

Quantitative Software Management

ExecutiveSummary

-38-

Top Down Estimate Skills/Role Configuration

• You specify the skills/roles defined in your organization and the rates charged for those labor categories.

• Then you allocate the skills across the lifecycle appropriate to your organization and development methodology(s).

These allocations can be determined by mining data from corporate

PPM/resource planning tools.

Import from PPM

The Intelligence behind Successful Software Projects

Quantitative Software Management

ExecutiveSummary

-39-

The QSM PPM Integration Framework Works with Any Enterprise PPM/Resource Planning Solution

QSM Webinar: From Proposal to Project: Getting Resource Demand Early

The Intelligence behind Successful Software Projects

Quantitative Software Management

ExecutiveSummary

-40-

The QSM PPM Integration Framework Works with Any Enterprise PPM/Resource Planning Solution

The Intelligence behind Successful Software Projects

Quantitative Software Management

ExecutiveSummary

Determining Aggregate Demand and Matching Demand to Capacity

-41-

The Intelligence behind Successful Software Projects

Quantitative Software Management

ExecutiveSummary

Schedule Staffing Effort & Cost

Monthly Avg Staff (L0)< Ireland, India & US >

3 6 9 12 15 18 21 24 27Oct'13

Jan'14

Apr Jul Oct Jan'15

Apr Jul Oct Jan'16

0

50

100

150

200

250

300

350

people

Monthly Avg Staff (L1)< Ireland, India & US >

3 6 9 12 15 18 21 24 27Oct'13

Jan'14

Apr Jul Oct Jan'15

Apr Jul Oct Jan'16

0

25

50

75

100

125

150

175

people

Monthly Avg Staff (L2)< Ireland, India & US >

3 6 9 12 15 18 21 24 27Oct'13

Jan'14

Apr Jul Oct Jan'15

Apr Jul Oct Jan'16

0

20

40

60

80

people

Staffing - Demand verses Capacity

IT Demand Staffing plans for individual projects across 3 development centers (35 projects approved and in the pipeline)

Demand at 3 Dev centers• India• US• Ireland

Aggregate IT resources required = 305 FTE staff

Capacity Limit 250 People

When the demand exceeds capacity 1. Eliminate projects2. Slip start dates3. Selective headcount reductions

Demand exceeds Capacity for 9 months

The Intelligence behind Successful Software Projects

Quantitative Software Management

ExecutiveSummary

-43-

Adjust Start Dates on the Future Projects in Order to Match Demand to Capacity

Staffing & Schedule

Monthly Gantt Chart (L3)< Start dates adjusted to not exceed 250 Max capacity >

3 6 9 12 15 18 21 24 27Oct'13

Jan'14

Apr Jul Oct Jan'15

Apr Jul Oct Jan'16

IRELAND DEVELOPMENT... Ireland Project 001 Ireland Project 002 Ireland Project 003 Ireland Project 004 Ireland Project 005 Ireland Project 006 Ireland Project 007 Ireland Project 008 Ireland Project 009 Ireland Project 010 Ireland Project 011 Ireland Project 012 Ireland Project 013 Ireland Project 014 Ireland Project 015INDIA DEVELOPMENT CEN... India DC Project 001 India DC Project 002

Monthly Avg Staff (L2)< Start dates adjusted to not exceed 250 Max capacity >

3 6 9 12 15 18 21 24 27Oct'13

Jan'14

Apr Jul Oct Jan'15

Apr Jul Oct Jan'16

0

20

40

60

80

people

Projects start dates are moved out in time in order to drop the total aggregate staffing under 250 which is the maximum capacity.

The Intelligence behind Successful Software Projects

Quantitative Software Management

ExecutiveSummary

-44-

Delaying Start Dates on 8 Projects Matches the Demand to the Capacity

Schedule Staffing Effort & Cost

Monthly Avg Staff (L0)< Start dates adjusted to not exceed 250 Max capacity >

3 6 9 12 15 18 21 24 27Oct'13

Jan'14

Apr Jul Oct Jan'15

Apr Jul Oct Jan'16

0

50

100

150

200

250

300

people

Monthly Avg Staff (L1)< Start dates adjusted to not exceed 250 Max capacity >

3 6 9 12 15 18 21 24 27Oct'13

Jan'14

Apr Jul Oct Jan'15

Apr Jul Oct Jan'16

0

20

40

60

80

100

120

140

people

Monthly Avg Staff (L2)< Start dates adjusted to not exceed 250 Max capacity >

3 6 9 12 15 18 21 24 27Oct'13

Jan'14

Apr Jul Oct Jan'15

Apr Jul Oct Jan'16

0

20

40

60

80

people

8 projects needed to be delayed to make demand match capacity.

The start date delays averaged 5 months but ranged from 2 to 8 months in duration.

The Intelligence behind Successful Software Projects

Quantitative Software Management

ExecutiveSummary

What Is the Demand for Skills Across the portfolio?

-45-

The Intelligence behind Successful Software Projects

Quantitative Software Management

ExecutiveSummary

-46-

What Are the Skill Requirements across the Portfolio?

Oct 2

013

Dec 2

013

Feb

2014

Apr 2

014

Jun

2014

Aug 2

014

Oct 2

014

Dec 2

014

Feb

2015

Apr 2

015

Jun

2015

Aug 2

015

Oct 2

015

Dec 2

015

Feb

2016

0.00

50.00

100.00

150.00

200.00

250.00

300.00

ArchitectDatabase AdministratorQuality AssuranceDevelopmentData ArchitectBusiness AnalystProject Manager/Lead

The Intelligence behind Successful Software Projects

Quantitative Software Management

ExecutiveSummary

-47-

Summary

• Capacity Planning and Demand Management go hand in hand. It requires:

Sound estimation capability early in the lifecycle

Effective stakeholder negotiations of time/effort/capability

Ability to forecast effort by skill level by month and feed a PPM system

Ability to perform what-if analysis on the portfolio quickly when IT Demand exceed Capacity