Lean Software Development Is for Everyone

128
LEAN-agile © copyright 2010. Net Objectives, BECOMING Lean Software For Everyone Ken Pugh Fellow Consultant KP Aug 2014

Transcript of Lean Software Development Is for Everyone

Page 1: Lean Software Development Is for Everyone

LEAN-agile© copyright 2010. Net Objectives, Inc.

B E C O M I N G

Lean Software For EveryoneKen PughFellow Consultant

KP Aug 2014

Page 2: Lean Software Development Is for Everyone

• Introduction and Background

• Lean as Flow • Lean Software

Development• Lean-Agile • Transforming into Lean

Outline

Page 3: Lean Software Development Is for Everyone

Ken Pugh

[email protected]

PhotoSize: Height: 2.25Position: from top left corner Horizontal 0.75 Vertical 1.Picture Style: Simple Black Frame

No code goes in till the test goes on.A journey of two thousand miles begins with a single step.

Fellow Consultant SPC, Lean, Scrum, ATDD, TDD, OOA&D, Design

Patterns, Over 2/5 century of software development

experience Author of seven books, including:

– Prefactoring: Extreme Abstraction, Extreme

Separation, Extreme Readability (2006 Jolt Award)

– Interface Oriented Design

– Lean Agile Acceptance Test-Driven Development:

Better Software Through Collaboration

Page 4: Lean Software Development Is for Everyone

Lean Enterprise

Business

ManagementTeam

ASSESSMENTS

CONSULTING

TRAININGCOACHING

Lean for ExecutivesProduct Portfolio

ManagementBusiness Product Owner

Lean Management

Project Management

ILAFYTKanban / Scrum ATDD / TDD / Design Patterns

technical

process

Page 5: Lean Software Development Is for Everyone

Lean Thinking, Jim Womack and Daniel Jones Lean Software Development, Mary and Tom

Poppendieck The Principles of Product Development Flow:

Second Generation Lean Product Development, Donald Reinertsen

Alan Shalloway, http://www.netobjectives.com/blog

Resources

Page 6: Lean Software Development Is for Everyone

Overall Rule There are exceptions to every statement,

except this one

6

Page 7: Lean Software Development Is for Everyone

copyright © 2010 Net Objectives Inc.

Introduction and Background

Page 8: Lean Software Development Is for Everyone

Lean software engineering – Continuous delivery of high quality applications

In short

Page 9: Lean Software Development Is for Everyone

Toyota Production System– Lean Manufacturing

Lean Thinking – Use lean thinking on workflow– Software development is workflow

Lean Software Development Creating software is not the same as producing a car Principles derived from Lean

Lean Approaches

Page 10: Lean Software Development Is for Everyone

Taiichi Ohno, chief engineer Eiji Toyoda (and cousin Kiichiro Toyoda and his

father Sakichi Toyoda, (Toyoda Loom Works founder))

Design out overburden (muri) and inconsistency (mura), eliminate waste (muda).

Smooth process - design out inconsistency Flexible – without overburden which generates

waste Elimination of waste

Toyota Production System (TPS)

Page 11: Lean Software Development Is for Everyone

Continuous improvement– Kazien

Respect for people Long-term philosophy

– Not short term goals

Right process will produce right results– Stop to fix problems– Visual controls– Use reliable, tested technology

Add value to organization by developing your people and partners– Develop exceptional teams

Continuously solving root problems drives organizational learning– Decisions by consensus

TPS Principles

Page 12: Lean Software Development Is for Everyone

Value comes from end customer Value stream

– Eliminate steps not creating value

Make remaining steps flow in integrated sequence

Let customers pull from upstream activity Transparency

– Helps eliminate waste – Continuous improvement

Lean Thinking

Page 13: Lean Software Development Is for Everyone

Eliminate Waste Create Knowledge Build Quality In Defer Commitment Deliver Fast Respect People Improve the System

Lean Software Development Principle

Page 14: Lean Software Development Is for Everyone

Dilbert on AgileAgile

Page 15: Lean Software Development Is for Everyone

copyright © 2010 Net Objectives Inc.

Workflow

Page 16: Lean Software Development Is for Everyone

3key points

Page 17: Lean Software Development Is for Everyone

drive from

Business Value

Page 18: Lean Software Development Is for Everyone

SMALL INCREMENT

S

Page 19: Lean Software Development Is for Everyone

m a k e a l l w o r kvisible

Page 20: Lean Software Development Is for Everyone

1concentration

Page 21: Lean Software Development Is for Everyone

Idea Business decision

Implementation

Availability

FLOW

© Warp and Byte Designs, Inc..

Page 22: Lean Software Development Is for Everyone

1outcome

Page 23: Lean Software Development Is for Everyone
Page 24: Lean Software Development Is for Everyone

business value trumps flow

trumps Reducing Waste

© Warp and Byte Designs, Inc..

Page 25: Lean Software Development Is for Everyone

Flow From Concept to Consumption

Page 26: Lean Software Development Is for Everyone

Business Value – What Is It? (1) Need to measure business value Deliver best ROI for business value

"I can't define it, but I know it when I see it“

Question: What is it to you?

26

Page 27: Lean Software Development Is for Everyone

Business Value – What Is It? (2) Business Value can be:

– Increased revenue (sales, royalties, fees) ($$)– Decreased expenses ($$)

Less resources More efficient use of resources

– Customer satisfaction ($$ ??) Promoters / Satisfiers/ Detractors

– Staying in business ($$ ??)– Staying out of jail ($$ ??) – Avoiding risk ($$ ??) – Your suggestions?

27

Page 28: Lean Software Development Is for Everyone

Business Value

Projects

Next Project BV = 8

Current Project BV = 13

Previous Project BV= 20

Page 29: Lean Software Development Is for Everyone

Transparency – Trust

Page 30: Lean Software Development Is for Everyone

Transparency

To Do Working On Done

Next Project Current Project Previous Project

Page 31: Lean Software Development Is for Everyone

Deliver – Minimum Marketable Feature (MMF)– Minimum Business Increment (MBI) – Key = Independently Releasable Item (IRI)

Develop – Stories – Scenarios

Key = Separately Developable Items (SDI) Although may be sequenced dependent

Small bites

Page 32: Lean Software Development Is for Everyone

Small Pieces

To Do Working On Done

Current Project Current Part Previous part

Still Another Part

Another Part

Some Part

Page 33: Lean Software Development Is for Everyone

Flow

Page 34: Lean Software Development Is for Everyone

BusinessPriority

BUSINESS DISCOVERY BUSINESS DELIVERY

BusinessPlanning

Business Readiness

Ready to Pull

IncrementalDevelopment

IncrementalDeployment

Support & Feedback

DecisionIs it technically feasible?

DecisionIs it ready to release?

PORT

FOLI

O

DecisionIs there enough business value?

Flow

Page 35: Lean Software Development Is for Everyone

Cycle Time

Page 36: Lean Software Development Is for Everyone

Lean Principle

Idea to Delivery

Support & Feedback

ProjectApproval

ProjectStaffing

ProjectDevelopment

ProjectDeploy-ment

Visioning

Total cycle time

Page 37: Lean Software Development Is for Everyone

Lean Principle

Support & Feedback

ProjectApproval

ProjectStaffing

ProjectDevelopment

ProjectDeploy-ment

VisioningSupport & Feedback

ProjectDevelopment

ProjectDeployment

$$$ Cost

Page 38: Lean Software Development Is for Everyone

Support & Feedback

ProjectApproval

ProjectStaffing

ProjectDevelopment

ProjectDeploy-ment

VisioningSupport & Feedback

ProjectDevelopment

ProjectDeployment

ProjectApproval

ProjectStaffing

Visioning

Lean Principle

Opportunity Cost

Page 39: Lean Software Development Is for Everyone

Value Stream

Page 40: Lean Software Development Is for Everyone

Value Stream

1. Identify the actions taken in the value stream

Approve

Request Reqts Sign Off

Review Deploy

Analysis

Design Code Test

Page 41: Lean Software Development Is for Everyone

Value Stream0.5 hrs 160 hrs8 hrs 8 hrs

120 hrs 280 hrs 240 hrs

100 hrs

8 hrs2 hrs

Approve

Request Reqts Sign Off

Review Deploy

Analysis

Design Code Test

1. Identify the actions taken in the value stream2. What was the real time from start to finish of the action?

Page 42: Lean Software Development Is for Everyone

Value Stream0.5 hrs 160 hrs8 hrs 8hrs

120 hrs 280 hrs 240 hrs

100 hrs

8 hrs2 hrs

Approve.1 / 7.9 hrs

Request0.5 / 0.0 hr

Reqts60 / 100 hrs

Sign Off1 / 7 hrs

Review 2 / 0 hrs

Deploy3 / 5 hrs

Analysis40 / 60 hrs

Design40 / 80 hrs

Code80 / 200 hrs

Test40 / 200 hrs

1. Identify the actions taken in the value stream2. What was the real time from start to finish of the action?3. What was the average time working on this vs working on other things?

Page 43: Lean Software Development Is for Everyone

Value Stream0.5 hrs 160 hrs8 hrs 8hrs

120 hrs 280 hrs 240 hrs

100 hrs

8 hrs2 hrs

320 hrs 80 hrs 320 hrs 80 hrs

80 hrs

160 hrs 80 hrs 80 hrs 80 hrs

1. Identify the actions taken in the value stream2. What was the real time from start to finish of the action?3. What was the average time working on this vs working on other things?4. Identify time between actions

Approve.1 / 7.9 hrs

Request0.5 / 0.0 hr

Reqts60 / 100 hrs

Sign Off1 / 7 hrs

Review 2 / 0 hrs

Deploy3 / 5 hrs

Analysis40 / 60 hrs

Design40 / 80 hrs

Code80 / 200 hrs

Test40 / 200 hrs

Page 44: Lean Software Development Is for Everyone

Value Stream

April 15, 2023

0.5 hrs 160 hrs8 hrs 8hrs

120 hrs 280 hrs 240 hrs

100 hrs

8 hrs2 hrs

320 hrs 80 hrs 320 hrs 80 hrs

160 hrs 80 hrs 80 hrs 80 hrs

1. Identify the actions taken in the value stream2. What was the real time from start to finish of the action?3. What was the average time working on this vs working on other things?4. Identify time between actions5. Identify any loop backs required

80 hrs

65% defectiveRepeat 3X

20% rejectedRepeat 1X

Approve.1 / 7.9 hrs

Request0.5 / 0.0 hr

Reqts60 / 100 hrs

Sign Off1 / 7 hrs

Review 2 / 0 hrs

Deploy3 / 5 hrs

Analysis40 / 60 hrs

Design40 / 80 hrs

Code80 / 200 hrs

Test40 / 200 hrs

Page 45: Lean Software Development Is for Everyone

1. Identify the actions taken in the value stream2. What was the real time from start to finish of the action?3. What was the average time working on this vs working on other things?4. Identify time between actions5. Identify any loop backs required6. Calculate Process Cycle Efficiency:

Value StreamApprove.1 / 7.9 hrs

Request0.5 / 0.0 hrs

Reqts60 / 100 hrs

Sign Off1 / 7 hrs

Review 2 / 0 hrs

Deploy3 / 5 hrs

Analysis40 / 60 hrs

Design40 / 80 hrs

Code80 / 200 hrs

Test40 / 200 hrs

0.5 hrs 160 hrs8 hrs 8hrs

120 hrs 280 hrs 240 hrs

100 hrs

8 hrs2 hrs

320 hrs 80 hrs 320 hrs 80 hrs

160 hrs 80 hrs 80 hrs 80 hrs

65% defectiveRepeat 3X

20% rejectedRepeat 1X

80 hrs

Approve.1 / 7.9 hrs

Request0.5 / 0.0 hrs

Reqts60 / 100 hrs

Sign Off1 / 7 hrs

Review 2 / 0 hrs

Deploy3 / 5 hrs

Analysis40 / 60 hrs

Design40 / 80 hrs

Code80 / 200 hrs

Test40 / 200 hrs

Avg Time Worked Total Cycle Time

0.5 hrs 160 hrs8 hrs 8 hrs

120 hrs 280 hrs 240 hrs

100 hrs

8 hrs2 hrs

320 hrs 80 hrs 320 hrs 80 hrs

160 hrs 80 hrs 80 hrs

65% defectiveRepeat 3X

20% rejectedRepeat 1X

80 hrs

80 hrs

PCE = = 14.9%509 hrs

3433 hrs

509 hrs

3433 hrs

Avg Time Worked Total Cycle Time

Page 46: Lean Software Development Is for Everyone

Value StreamApprove.1 / 7.9 hrs

Request0.5 / 0.0 hrs

Reqts60 / 100 hrs

Sign Off1 / 7 hrs

Review 2 / 0 hrs

Deploy3 / 5 hrs

Analysis40 / 60 hrs

Design40 / 80 hrs

Code80 / 200 hrs

Test40 / 200 hrs

0.5 hrs 160 hrs8 hrs 8hrs

120 hrs 280 hrs 240 hrs

100 hrs

8 hrs2 hrs

320 hrs 80 hrs 320 hrs 80 hrs

160 hrs 80 hrs 80 hrs 80 hrs

65% defectiveRepeat 3X

20% rejectedRepeat 1X

80 hrs

320 hrs 80 hrs 320 hrs 80 hrs

160 hrs 80 hrs 80 hrs

65% defectiveRepeat 3X

20% rejectedRepeat 1X

80 hrs

80 hrs

3433 – 509 = 2924

Eliminating delays

between what you

do

Getting better at what you

do

Which gives a better return?

Page 47: Lean Software Development Is for Everyone

Cycle Time What’s the cycle time from input to output? How can it be shortened?

– Eliminate delays – Eliminate loop-backs– Manage WIP –

Page 48: Lean Software Development Is for Everyone

Waste and Delays

Page 49: Lean Software Development Is for Everyone

1. Partially Done Work2. Paperwork3. Extra Features4. Task Switching5. Handoffs6. Delays7. Defects

Waste Indicators

Page 50: Lean Software Development Is for Everyone

how much of what you do is

valuable?rework?

Page 51: Lean Software Development Is for Everyone

DELAY IS

hand-offs bottlenecks information delayuntested codeunread requirementstransaction related

setup/cleanupcoordination related

assign people

finding

redoing

reworking

waiting

Page 52: Lean Software Development Is for Everyone

Pull

Page 53: Lean Software Development Is for Everyone

PUSH

Page 54: Lean Software Development Is for Everyone

Work enters queue

When someone needs new work, they pull from queue

Work goes through stages When the work done in a stage, it flows to next.

Until work is done

Pull

Page 55: Lean Software Development Is for Everyone

PULL

Page 56: Lean Software Development Is for Everyone

BUT LIMIT QUEUES

Page 57: Lean Software Development Is for Everyone

Reduce WIP

Queuing theory

Focus on quality

Page 58: Lean Software Development Is for Everyone

Practice

Page 59: Lean Software Development Is for Everyone

EXERCISE

Part OneAGILE IS FUN

Page 60: Lean Software Development Is for Everyone

EXERCISE

Part Two AGILE IS FUN

Page 61: Lean Software Development Is for Everyone

Lean Software Development

Page 62: Lean Software Development Is for Everyone

Implement lean across entire value stream – To deliver business value – Not just improve development

Optimize the Whole / See the Whole

Page 63: Lean Software Development Is for Everyone

Focus on customer value Only start work that can be completed

Eliminate Waste

Page 64: Lean Software Development Is for Everyone

Move tests forward– Acceptance Test Driven Development

Automated testing Write change tolerant code

Build Quality In / Build Integrity In

Page 65: Lean Software Development Is for Everyone

Small batches Get feedback fast Emphasize cycle time, not utilization

Deliver Fast / As Possible

Page 66: Lean Software Development Is for Everyone

Use knowledge learned from creating application

Cross-functional teams to share knowledge Quick feedback

Create Knowledge / Amplify Learning

Page 67: Lean Software Development Is for Everyone

Create clear frameworks for decisions Decision making at lowest possible level

Empower People / The Team

Page 68: Lean Software Development Is for Everyone

Periodic reflections Perform root cause analysis

Continually Improve

Page 69: Lean Software Development Is for Everyone

Wait till last practical moment to make decision – More information available

Defer Commitment / Decide as Late as Possible

Page 70: Lean Software Development Is for Everyone

Points and Practices

Page 71: Lean Software Development Is for Everyone

Driving in Germany - picture of autobahn

policies© Warp and Byte Designs, Inc..

Page 72: Lean Software Development Is for Everyone

© Warp and Byte Designs, Inc..

Page 73: Lean Software Development Is for Everyone

Measurement

Page 74: Lean Software Development Is for Everyone

© Warp and Byte Designs, Inc..

Page 75: Lean Software Development Is for Everyone

Metrics

What is important?

Customer /user satisfaction

Production defects

Rate of delivery of business value

© Warp and Byte Designs, Inc..

Page 76: Lean Software Development Is for Everyone

copyright © 2010 Net Objectives Inc.

Lean – Agile

Page 77: Lean Software Development Is for Everyone

Apply lean principles/practices to agile processes

What lean principles/practices do you see in– Scrum– Kanban

Lean Agility

Page 78: Lean Software Development Is for Everyone

l e a n

a g i l e

WHAT is the most important thingWHEN is it most neededHOW we break down that workHOW we FLOW that work

Page 79: Lean Software Development Is for Everyone

Delivering

l e a n

a g i l e

Breaking work downCreating the best environment to deliver that workIncremental and Iterative development

Page 80: Lean Software Development Is for Everyone

Business Value

Delivering

l e a n

a g i l e

Page 81: Lean Software Development Is for Everyone

copyright © 2010 Net Objectives Inc.

Beginning the Transformation

Page 82: Lean Software Development Is for Everyone

Getting Started Agree to goals

– Why change?

Map the value stream Determine what process to use

– Scrum, Kanban, Scrumban, etc.

Agree to transparency– Up and down the line

Agree to policies– Done-ness definitions, etc.

Agree to operational review– Team and organization

Educate the team(s) Start doing it

David Anderson. XTC, London 2009, October

Getting started with kanban

Page 83: Lean Software Development Is for Everyone

Old Status Quo New Status Quo

Chaos Transforming Idea

Change Model From Virginia Satir

Page 84: Lean Software Development Is for Everyone

copyright © 2010 Net Objectives Inc.

This is Not an Ending,

But a Beginning

Page 85: Lean Software Development Is for Everyone

Shorten time to realize values Pay attention to delays Actively manage queues Emphasize cycle time, not utilization

Summary - Focus on Flow

Page 86: Lean Software Development Is for Everyone

copyright © 2010 Net Objectives Inc.

Supplementary

Page 87: Lean Software Development Is for Everyone

Roles

Purpose

Page 88: Lean Software Development Is for Everyone

MAKE• INCREMENTAL

DELIVERY• CREATIVELY SOLVING

THEIR PROBLEMS• QUALITY BUILT IN

technical

Page 89: Lean Software Development Is for Everyone

technical

VALUE• PRIORITIZATION• BUSINESS

ITERATIONS• RELEASE

PLANNING

Page 90: Lean Software Development Is for Everyone

FLOW• VALUE STREAM

VISUALIZATION• IMPEDIMENT IMPACT• WORKFLOW AS PROCESS

technical

WITH

ACCOUNTABILITY• MANAGE (LIMIT)

QUEUES• VISUAL CONTROLS• MANAGE FLOW

(PROCESS)

Page 91: Lean Software Development Is for Everyone

WHOLE team engaged to Understand and deliver VALUE

Page 92: Lean Software Development Is for Everyone

Business Value

Page 93: Lean Software Development Is for Everyone

Question What percentage of features are never used?

Page 94: Lean Software Development Is for Everyone

Waste and the Delay of Value

Always7%

Often13%

Sometimes16%

Rarely19%

Never Used45%

Source: Standish GroupStudy of 2000 projects at 1000 companies

Usage of Features and Functions in Typical System

_g

Page 95: Lean Software Development Is for Everyone

Teams

Page 96: Lean Software Development Is for Everyone

© U.S. Army

Page 97: Lean Software Development Is for Everyone

© Warp and Byte Designs, Inc..

Successful teamsCollaborate Shared accountability Shared approach to doing work Shared history

Page 98: Lean Software Development Is for Everyone

© Warp and Byte Designs, Inc..

Page 99: Lean Software Development Is for Everyone

Feedback

Page 100: Lean Software Development Is for Everyone

Agile Feedback – Small Increments

100

No feedback

Desired Delivered

With feedback

Desired

Delivered

Page 101: Lean Software Development Is for Everyone

Frequency of feedback

Page 102: Lean Software Development Is for Everyone

Deliver Quickly

Page 103: Lean Software Development Is for Everyone

Focus on known, valuable features

gives greater certainty

produces greater value

lowers risk of mis-building and over-building

Deliver in Stages when possible

Page 104: Lean Software Development Is for Everyone

do the most important half first

standard development sequence

More important

Less important

Page 105: Lean Software Development Is for Everyone

do the most important 25% first

standard development sequence

More important

Less important

Page 106: Lean Software Development Is for Everyone

Time to

Market Lower riskHigher satisfactionHigher ROI

Profit!

Market Share

Product Life

Page 107: Lean Software Development Is for Everyone

First Release

InvestmentPeriod

PaybackPeriod

ProfitPeriod

Breakeven

Cash

flow

Time

economics of responsiveness

Mark Denne and Jane Cleland-Huang, Software by Numbers.

Page 108: Lean Software Development Is for Everyone

Staged Releases

First Release

Invest-mentPeriod

ProfitPeriod

Pay-back

Period

Cash

flow

Time

Release 1 Net Return

Page 109: Lean Software Development Is for Everyone

Staged Releases

ProfitPeriod

Second Release

Invest-mentPeriod

Pay-back

Period

Release 2 Net Return

Cash

flow

Time

Release 1 Net Return

Page 110: Lean Software Development Is for Everyone

ProfitPeriod

Investment

Invest-mentPeriod

Pay-back

Period

BreakevenPoint

Total Return

Cash

flow

Time

staged releases

Page 111: Lean Software Development Is for Everyone

Cash

flow

BreakevenSingleRelease

First Release

Time

Staged Releases

10

increased profit

Page 112: Lean Software Development Is for Everyone

Cash

flow

Breakeven

Single Release

First Release

Time

Staged Releases

10

When competition is intense

Page 113: Lean Software Development Is for Everyone

Multi-Tasking

Page 114: Lean Software Development Is for Everyone

Request 1/Team 1

Month 1

Month 2Month 3

Request 2/Team 2

Request 3/Team 3

A Harder ProblemSCENARIO B

another way to think of it

Page 115: Lean Software Development Is for Everyone

Request 1

Month 1

Month 2Month 3

Request 2

Request 3

A Harder ProblemSCENARIO B

try this: quicker feedback

Page 116: Lean Software Development Is for Everyone

Project 1

Project 2

Project 3

Month 3Month 2Month 1 Month 4

Three ways to do three projects

Do one at a time – may not be politically feasible.

Do them all at once, switching between them when delayed waiting for answers

Do them guided by Minimal Marketable Features

Product Development for the Lean Enterprise by Michael Kennedy. Oaklea Press. 2003

Task-Switching and Schedules

Page 117: Lean Software Development Is for Everyone

Capacity Utilization

Page 118: Lean Software Development Is for Everyone

Busy Doesn’t Mean Productive

Page 119: Lean Software Development Is for Everyone

Eff iciency How do you measure i t ?

Keep ing peop le busyOr

Produc ing bus iness va lue

Page 120: Lean Software Development Is for Everyone

utilizationthroughput

@ throughput vs. utilization

Here’s a spot!

And another!

Page 121: Lean Software Development Is for Everyone

Miscellaneous

Page 122: Lean Software Development Is for Everyone

Technical Versus Business Technical Inside – Components –Architect Business – Outside

Page 123: Lean Software Development Is for Everyone

Risks – what are there?

© Warp and Byte Designs, Inc..

Page 124: Lean Software Development Is for Everyone

Observation

Anticipation of long delivery cycles encourages piling on of poorly prioritized requirements

Page 125: Lean Software Development Is for Everyone

Large batches create delay and waste

whileSmall batches create incremental value

FlowOptimiz

ethe

Whole!

Focus on

TIME

Page 126: Lean Software Development Is for Everyone

Getting Requirement

s

Testing

Programming

Design

Integration

Planning

Collaboration

Re-doing requirement

s

Working from old

requirements

“Fixing” bugs

“Integration” errors

Faster methods

Automation

Remove

Delays

Remove

Delays

Remove

Delays

Remove

DelaysDeploymen

t

Building unneede

d features

Overbuilding frameworks

Lack of feedback

Lack of Tech knowledge

What Work Do You Do?

TrainingDocumentatio

n

Essentially duplicating components

Lack of Tech knowledge/delay

Page 127: Lean Software Development Is for Everyone

Lean-Agile: Evolving Agility

Continually evolvingSustaining, not improvingDeclining

Initiation &

Rollout

Maturation

Lea

n-A

gil

ity

Year 1 Year 2 Year 3

Iterative Flow Highest Business Value

Low

Page 128: Lean Software Development Is for Everyone

Project-based Business Value-based

Defined• Scope• Budget• Schedule

Require-ments

• Defined without priority

Limited evolution

• Scope• Budget and

schedule fixed

Big bang deploym

ent

• Build & deploy at end

Discovery

• Highest value• Allocate

budget

Require-ments

• Prioritized on Business Value

• Sequenced on ROI

Constant evolution

• Based on discovery

• Budget follows

Increments

• Build & deploy increments