Top Banner
Economic Governance of Software Delivery Walker Royce Chief Software Economist
21

Economic Governance of Software Delivery - CEC 2010conferences.computer.org/stc/2013/papers/0001a073.pdf · Software Delivery is an Economic Discipline ... predictions Cost, schedule,

May 02, 2018

Download

Documents

dinh_dan
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Economic Governance of Software Delivery - CEC 2010conferences.computer.org/stc/2013/papers/0001a073.pdf · Software Delivery is an Economic Discipline ... predictions Cost, schedule,

Economic Governance of Software Delivery

Walker Royce

Chief Software Economist

Page 2: Economic Governance of Software Delivery - CEC 2010conferences.computer.org/stc/2013/papers/0001a073.pdf · Software Delivery is an Economic Discipline ... predictions Cost, schedule,

Software Delivery is an Economic Discipline

Engineering ����

Engineering ����

Engineering ����

Engineering ����

Religion

Philosophy

History

Economics

Biology

Chemistry

Physics

Mathematics

Software ����

Software ����

Software ����

Software ����

Level 5: Completely irreducible uncertainty

Level 4: Partially reducible uncertainty

Level 3: Fully reducible uncertainty

Level 2: Risk without uncertainty

Level 1: Complete certainty

Lo, Andrew, and Mark Mueller. MIT Sloan School of Management,

Moody’s/NYU 6th Annual Credit Risk Conference, New York, March 2010.

Page 3: Economic Governance of Software Delivery - CEC 2010conferences.computer.org/stc/2013/papers/0001a073.pdf · Software Delivery is an Economic Discipline ... predictions Cost, schedule,

IBM Software Group | Rational software

Engineering Governance

Transforming for Improved Predictability and Speed

Business value and outcome led

Measure progress/quality trends in change managed code and test base

Sequence of released capabilities with ever increasing value

No distinct boundary between development and maintenance

Continuously evolving systems

Economic Governance

Requirements/Technology led

Measure activities and artifacts

Requirements-design-code-test Sequence of activities

Distinct handoff to maintenance

Distinct development phase

Deterministic Engineering Discipline Probabilistic Economic Discipline

Page 4: Economic Governance of Software Delivery - CEC 2010conferences.computer.org/stc/2013/papers/0001a073.pdf · Software Delivery is an Economic Discipline ... predictions Cost, schedule,

IBM Software Group | Rational software

4

Deliver business critical software product release within 12 months

ESTIMATE11 Months

BUSINESSNEED

SCHEDULE

6 12 18

SCHEDULE

Page 5: Economic Governance of Software Delivery - CEC 2010conferences.computer.org/stc/2013/papers/0001a073.pdf · Software Delivery is an Economic Discipline ... predictions Cost, schedule,

IBM Software Group | Rational software

Late Scrap and Rework

ACTUAL DELIVERY

5

Ben’s probable outcome…REALITY

PLANNED TARGET

100%

0%

6 12 18

DESIGN REVIEW

PR

OG

RE

SS

SCHEDULE

Integration Begins

Page 6: Economic Governance of Software Delivery - CEC 2010conferences.computer.org/stc/2013/papers/0001a073.pdf · Software Delivery is an Economic Discipline ... predictions Cost, schedule,

IBM Software Group | Rational software

Program parameters are delivery predictions Cost, schedule, effort, quality, …

6

INSIGHTP

RO

BA

BIL

ITY

SCHEDULE

6 12 18

Mean estimate =

11MONTHSArea under curve =

Probability of delivering in

11 to 12 MONTHS

Page 7: Economic Governance of Software Delivery - CEC 2010conferences.computer.org/stc/2013/papers/0001a073.pdf · Software Delivery is an Economic Discipline ... predictions Cost, schedule,

IBM Software Group | Rational software

7

There is roughly a 50% chance of making the date

COIN FLIPP

RO

BA

BIL

ITY

SCHEDULE

6 12 18

52%

Page 8: Economic Governance of Software Delivery - CEC 2010conferences.computer.org/stc/2013/papers/0001a073.pdf · Software Delivery is an Economic Discipline ... predictions Cost, schedule,

IBM Software Group | Rational software

PR

OB

AB

ILIT

Y

SCHEDULE

6 12 18

8

Move out the date to improve likelihood of shipping?

OPTION 1

95%

Page 9: Economic Governance of Software Delivery - CEC 2010conferences.computer.org/stc/2013/papers/0001a073.pdf · Software Delivery is an Economic Discipline ... predictions Cost, schedule,

IBM Software Group | Rational software

9

Decrease time estimate by Sacrificing quality or content?

OPTION 2P

RO

BA

BIL

ITY

SCHEDULE

6 12 18

95%

Page 10: Economic Governance of Software Delivery - CEC 2010conferences.computer.org/stc/2013/papers/0001a073.pdf · Software Delivery is an Economic Discipline ... predictions Cost, schedule,

IBM Software Group | Rational software

Reduce the variance to improve likelihood of shipping

10

OPTIMIZEP

RO

BA

BIL

ITY

SCHEDULE

6 12 18

90%

Page 11: Economic Governance of Software Delivery - CEC 2010conferences.computer.org/stc/2013/papers/0001a073.pdf · Software Delivery is an Economic Discipline ... predictions Cost, schedule,

IBM Software Group | Rational software

Uncertainty in stakeholder satisfaction

Uncertainty in Plans, Scope and Design

MINIMUMVIABLE PRODUCT

11

Measure validated learningReduce the variance

ORIGINAL PLAN

INITIAL TARGET

OPTIMIZE

Page 12: Economic Governance of Software Delivery - CEC 2010conferences.computer.org/stc/2013/papers/0001a073.pdf · Software Delivery is an Economic Discipline ... predictions Cost, schedule,

Best/Worst practices in agile measurement

Quality measures

Quantify cost-of-change

trends to demonstrate

true agility

Progress measures

Quantify progress trends

from the integrated code

and test base

Plans/management

Plan for integration

to precede

unit testing

Integrate Collaborate Optimize

Don’t attack the easy

things first

Don’t rely on subjective

and speculative measures

Avoid false precision in

plans and requirements

Page 13: Economic Governance of Software Delivery - CEC 2010conferences.computer.org/stc/2013/papers/0001a073.pdf · Software Delivery is an Economic Discipline ... predictions Cost, schedule,

Measured Improvement: Progress Measures

Conventional Engineering Governance

Modern Economic Governance

PlanningProgress

Early Releases Test ReleasesRequirements

Design

Coding

Test and Release

TechnicalProgressLate scrap

and reworkProgressions and digressions

EconomicProgress

Page 14: Economic Governance of Software Delivery - CEC 2010conferences.computer.org/stc/2013/papers/0001a073.pdf · Software Delivery is an Economic Discipline ... predictions Cost, schedule,

Measured Improvement: Quality Measures

Conventional Engineering Governance

Modern Economic Governance

MaturityDefectTrend

IntegrationUnit Test Operation

OperationsIntegration Unit Test

ModularityChange Volume

TrendIntegrationUnit Test Operation

OperationsIntegration Unit Test

AdaptabilityCost of Change

TrendIntegrationUnit Test Operation

Integration OperationsUnit Test

Page 15: Economic Governance of Software Delivery - CEC 2010conferences.computer.org/stc/2013/papers/0001a073.pdf · Software Delivery is an Economic Discipline ... predictions Cost, schedule,

15

Target

Date

Months0

Probability

3 6 9 12

Target

Date

Months0

Probability

3 6 9 12

Page 16: Economic Governance of Software Delivery - CEC 2010conferences.computer.org/stc/2013/papers/0001a073.pdf · Software Delivery is an Economic Discipline ... predictions Cost, schedule,

Bayesian Reasoning For Better Predictions in the Face of Uncertainty

� Mathematical foundations– Probability and statistics– Common distributions– Computer simulation of large number

of possible outcomes

� Understanding sources of uncertainty in extremely complex systems

� Making better decisions

P(A) = d(e)deA∫

Probability DensityProbability DensityProbability DensityProbability Density

P(B | A) =

P(A | B)P(B)

P(A)

Bayes TheoremBayes TheoremBayes TheoremBayes Theorem

PriorsPriorsPriorsPriors(Well reasoned

Predictions)

EvidenceEvidenceEvidenceEvidence(New facts)

PosteriorsPosteriorsPosteriorsPosteriors(More ReliablePredictions)

++++ ����

Bayesian ReasoningBayesian ReasoningBayesian ReasoningBayesian Reasoning

Monte Carlo Monte Carlo Monte Carlo Monte Carlo SimulationsSimulationsSimulationsSimulations

Page 17: Economic Governance of Software Delivery - CEC 2010conferences.computer.org/stc/2013/papers/0001a073.pdf · Software Delivery is an Economic Discipline ... predictions Cost, schedule,

Monte Carlo simulation of project scope items

17

DeveloperDuration Estimates

Actual distribution of work item

completion times

2w 4w 6w

Monte Carlo

Simulation of

remaining work

CodeWork ItemsUser storiesPlan Item(s) Release

2w 4w 6w

++++

=>=>=>=>

Page 18: Economic Governance of Software Delivery - CEC 2010conferences.computer.org/stc/2013/papers/0001a073.pdf · Software Delivery is an Economic Discipline ... predictions Cost, schedule,

IBM Research Prototype

Likelihood measure

Risk Trend

Burndown status and forecast

History Slider

Page 19: Economic Governance of Software Delivery - CEC 2010conferences.computer.org/stc/2013/papers/0001a073.pdf · Software Delivery is an Economic Discipline ... predictions Cost, schedule,

• Achieve predictable outcomes

• Manage risk

• Ensure compliance

• Improve software economics

• Visibility and transparency

Accelerated delivery demands a quid pro quo

EngineeringPractitioners

Embrace Measurement

GovernanceStakeholders

Enable Agility

• Design, create, test

• Reuse knowledge,

best practices

• Address uncertain things first

• Be adaptive to change

The Speed Of Trust

Page 20: Economic Governance of Software Delivery - CEC 2010conferences.computer.org/stc/2013/papers/0001a073.pdf · Software Delivery is an Economic Discipline ... predictions Cost, schedule,

The Moral of This Story

Better software economics is a result of:

1. Measured improvement for improved predictability

• The foundation of economic governance

• Measurement helps you manage uncertainty

2. Agility for improved operational efficiency

• Best measured by cost of change trends

• Best achieved by accelerating integration testing

3. Automated Bayesian analytics for improved predictability

• Painless governance and less overhead perceived by practitioners

• Quantum leaps in trust among stakeholders

If you play better defenseyou can play more offense!

Page 21: Economic Governance of Software Delivery - CEC 2010conferences.computer.org/stc/2013/papers/0001a073.pdf · Software Delivery is an Economic Discipline ... predictions Cost, schedule,

References

1. S. Ambler, A. Brown, W. Royce, “Agility at Scale: Economic Governance, Measured Improvement, and Disciplined Delivery,” Proceedings of ICSE 2013. May, 2013.

2. Cantor, Murray, “Estimation Variance and Governance,” The Rational Edge, March 2006.3. Murray Cantor, “Filling in the Blanks, The Math behind Nate Silver’s The Signal and the

Noise,” IBM Developer Works, 2013.4. W. Royce, “Measuring agility and architectural integrity,” International Journal of Software

Informatica, vol. 5, no. 3, 2011, ISCAS.5. M. Cantor and W. Royce, “Economic Governance,” To be published.