l e a n - LASER Foundation

40
1 l e a n software development www.poppendieck.com Mary Poppendieck [email protected] Lean Software Development Speed – Quality – Low Cost August 06 2 Copyright©2006 Poppendieck.LLC Sunday Overview History Principles Core Ideas Value Waste Lean Software Development Agenda Monday Process Quality Knowledge People Leadership Teams Visible Workspace Tuesday Speed The Synergy of Speed, Quality, & Low Cost Queuing Theory System Measurement The Journey

Transcript of l e a n - LASER Foundation

Page 1: l e a n - LASER Foundation

1

l e a nsoftware development

www.poppendieck.comMary [email protected]

Lean Software DevelopmentSpeed – Quality – Low Cost

August 062 Copyright©2006 Poppendieck.LLC

SundayOverview

HistoryPrinciples

Core IdeasValueWaste

Lean Software Development Agenda

MondayProcess

QualityKnowledge

PeopleLeadershipTeams Visible Workspace

TuesdaySpeed

The Synergy of Speed, Quality, & Low CostQueuing Theory

SystemMeasurementThe Journey

Page 2: l e a n - LASER Foundation

2

August 063 Copyright©2006 Poppendieck.LLC

The Toyota Production System

Taiichi Ohno (1912-1990)

Taiichi OhnoThe Toyota Production System, 1988 (1978)

Eliminate WasteJust-in-Time Flow

Expose Problems Stop-the-Line Culture

Shigeo ShingoStudy Of ‘Toyota’ Production System, 1981

Non-Stock ProductionSingle Digit Setup

Zero InspectionMistake-Proof Every Step

Shigeo Shingo (1909 – 1990)

August 064 Copyright©2006 Poppendieck.LLC

Don’t Batch & Queue

ListsListsHow long is your defect list?How far apart are your releases?

ChurnChurnIf you have requirements churn, you are specifying too early.If you have test-and-fix cycles, you are testing too late.

Page 3: l e a n - LASER Foundation

3

August 065 Copyright©2006 Poppendieck.LLC

Don’t Tolerate Defects

Two Kinds of Inspection (Shingo)Inspection to Find Defects

Waste!

Inspection to Prevent DefectsEssential.

Mistake-Proof Every StepDetect defects the moment they occur

Don’t track defects on a listFind them and fix them

August 066 Copyright©2006 Poppendieck.LLC

Respect People

“Only after American carmakers had exhausted every other explanation for Toyota’s success –an undervalued yen, a docile workforce, Japanese culture, superior automation –were they finally able to admit that Toyota’s real advantage was its ability to harness the intellect of ‘ordinary’ employees.”

“Management Innovation” by Gary Hamel, Harvard Business Review, February, 2006

Page 4: l e a n - LASER Foundation

4

August 067 Copyright©2006 Poppendieck.LLC

Principles of Lean Software Development

1. Eliminate Waste2. Build Quality In3. Create Knowledge4. Defer Commitment5. Deliver Fast6. Respect People7. Optimize the Whole

Speed

Quality Low Cost

August 068 Copyright©2006 Poppendieck.LLC

Principle 1: Eliminate Waste

Waste is anything that has been startedbut is not being used in production.

Extra features that are not needed now are waste.Waste is making the wrong thingor making the thing wrong.

Price = Cost + ProfitProfit = Price - Cost

Taiichi Ohno

Page 5: l e a n - LASER Foundation

5

August 069 Copyright©2006 Poppendieck.LLC

Myth 1: Early Specification Reduces Waste

Features and Functions Used in a Typical System

Standish Group Study Reported at XP2002 by Jim Johnson, Chairman

Always7%

Often13%

Sometimes16% Rarely

19%

Never45%

Rarely or NeverUsed: 64%

Often or AlwaysOften or AlwaysUsed: 20%Used: 20%

August 0610 Copyright©2006 Poppendieck.LLC

The Big BangBig Bang is ObsoleteNo Partial Credit

Sources of RiskUn-coded requirementsUn-tested codeUn-integrated codeCode that has not been used in production

The Best Risk Mitigation is SynchronizationEarly, automated testingContinuous, nested integration

Principle 2:Build Quality In

Page 6: l e a n - LASER Foundation

6

August 0611 Copyright©2006 Poppendieck.LLC

Myth 2: The Job of Testing is to Find Defects

The job of testing is to prevent defectsIf you are focused on finding defects

– you are not doing your job.

A quality process builds quality into the codeIf you routinely find defects during verification

– your process is defective.

Defects are not caused by developersDefects are caused by a system which allows defects.

– Defects are a management problem.

August 0612 Copyright©2006 Poppendieck.LLC

Principle 3: Create Knowledge

One Year Later….

Poor productivityPoor market acceptancePoor expert quality rating

Great market success

Alan MacCormackHarvard Business School

A Tale of Two Projects

Not ConsistentModify Hypothesis

ConsistentPublish Results

New Knowledge

Obser-vations

Predic-tionsTests

Hypothesis

Page 7: l e a n - LASER Foundation

7

August 0613 Copyright©2006 Poppendieck.LLC

Myth 3: Predictions Creates Predictability

The Predictability ParadoxDecreasing the amount of guessing involved in making decisions increases the predictability of the outcomes.

The longer we wait, the more we know and the less we guess.

The most predictable organizations reduce response time so they can respond to events as they unfold.

Minnesota Wedding August 10th

50% Chance of Rain65-95 ºF

Invitations must be sent in June

August 0614 Copyright©2006 Poppendieck.LLC

Principle 4: Defer Commitment

A Pilot from InnsbruckIn Pilot training, we were taught how to make decisions in challenging situations:

1. First decide when the decision will be made2. Don’t make the decision until that time:

That is when you have the most information

3. Don’t make the decision after that time:Or you may end up flying into a mountain.

Page 8: l e a n - LASER Foundation

8

August 0615 Copyright©2006 Poppendieck.LLC

Myth 4: Planning is Commitment

If one sticks to the idea that once set, a plan should not be changed, a business cannot exist for long.

--- Taiichi OhnoIn preparing for battle I have always found that plans are useless, but planning is indispensable.

--- Dwight D. Eisenhower

If plans are commitments, then you commit to operate on guesses rather than data. Measuring conformance to plan is measuring the wrong thing.

August 0616 Copyright©2006 Poppendieck.LLC

Principle 5: Deliver Fast

Competing on the basis of time providesSignificant competitive advantageLarge barrier to entry

Order Processing

Product Development

ShippingManufacturing

Supply Chain Software Development

Page 9: l e a n - LASER Foundation

9

August 0617 Copyright©2006 Poppendieck.LLC

Myth 5:Haste Makes Waste

Companies that compete on the basis of speed:Enjoy a significant cost advantage relative to peers

A 25-30% cost advantage is typical.Dell claims a 50% cost advantage.

Have extremely low defect ratesIt is impossible to go fast without superb quality.

Acquire a deep customer understandingFast companies can take an experimental approach to product development.

Have a sustainable competitive advantage.

August 0618 Copyright©2006 Poppendieck.LLC

Principle 6: Respect People

Crisis at our Video Cassette PlantCompetition selling cassettes for less than we could make them

Our ResponseJust-in-Time (Lean) Production

The Great Coffee Cup SimulationPlant Manager, Materials Control Manager, IT Manager (me)Add Production General Managers Add General SupervisorsAdd Shift SupervisorsAdd Shift Workers

The Result Entire plant switched to pull scheduling over one weekendPack-out went from 60% to 95% the first weekEmployees said this was the best thing that happened to the plant

Page 10: l e a n - LASER Foundation

10

August 0619 Copyright©2006 Poppendieck.LLC

Myth 6: There is One Best Way

Frederick Winslow TaylorGrandfather of the Process Police

Standardized WorkImposed ProcessesInterchangeable People

Scientific ManagementAffronts human dignity and discourages worker creativity

Toyota Production SystemBetter Thinking; Better Products

Standardized WorkBest Current PracticeConstantly Challenged

Scientific MethodWork teams design experimentsand implement their own ideas

August 0620 Copyright©2006 Poppendieck.LLC

Principle 7: Optimize the Whole

Vicious Cycle #2:Vicious Cycle #2:1. Testing is overloaded with work2. Result: Testing occurs long after coding3. Result: Developers don’t get immediate feedback4. Result: Developers create more defects5. Result: Testing has more work. Systems have more defects.6. Result: Feedback to developers if delayed further. Repeat cycle.

Vicious Cycle #1:Vicious Cycle #1:1. A customer wants some new features yesterday2. Developers hear: Get it done fast, at all costs!3. Result: Sloppy changes are made to the code base4. Result: Complexity of code base increases5. Result: Number of defects in code base increases6. Result: Exponential increase in time to add features

Page 11: l e a n - LASER Foundation

11

August 0621 Copyright©2006 Poppendieck.LLC

Myth 7: Optimize Through Decomposition

DecompositionYou get what you measureYou can’t measure everythingStuff falls between the cracksYou add more measurementsYou get local sub-optimization

ExampleMeasure Cost, Schedule, & Scope

Quality & Customer Satisfaction fall between the cracksMeasure these too!

AggregationYou get what you measureYou can’t measure everythingStuff falls between the cracksYou measure UP one levelYou get global optimization

ExampleMeasure Cost, Schedule, & Scope

Quality & Customer Satisfaction fall between the cracksMeasure Business Case Realization instead!

From to ! From to !

August 0622 Copyright©2006 Poppendieck.LLC

SundayOverview

HistoryPrinciples

Core IdeasValueWaste

Lean Software Development Agenda

MondayProcess

QualityKnowledge

PeopleLeadershipTeams Visible Workspace

TuesdaySpeed

The Synergy of Speed, Quality, & Low CostQueuing Theory

SystemMeasurementThe Journey

Page 12: l e a n - LASER Foundation

12

August 0623 Copyright©2006 Poppendieck.LLC

Software Plays a Supporting Role

Software is rather uselessall by itself

All software is embedded In hardwareIn a business processIn an activity (game, search)

The goal of software development is to support The goal of software development is to support the development of a complete product (process) the development of a complete product (process) that helps customers get a job done.that helps customers get a job done.

software

inside

August 0624 Copyright©2006 Poppendieck.LLC

Better Thinking → Better Products

Complete SolutionsSolve my problem completely.Don’t waste my time.Provide exactly what I want.Deliver value exactly where I want it.Supply value exactly when I want it.Reduce the number of decisions I must make to solve my problems.

Whole Team Complete solutions are developed by complete teams

Customers (or Proxy)ChampionProduct ManagerProduct Designers

From Lean Solutions, Womack & Jones, 2005

EngineersDevelopersTestersDBA’s

Technical WritersCustomer SupportOperationsMaintenance

Page 13: l e a n - LASER Foundation

13

August 0625 Copyright©2006 Poppendieck.LLC

Eliminate Waste

Put on Customer Glasses

August 0626 Copyright©2006 Poppendieck.LLC

The Seven WastesThe Seven Wastes of Manufacturing The Seven Wastes of Manufacturing

-- Shigeo ShingoShigeo Shingo

1. Inventory 2. Overproduction3. Extra Processing4. Motion5. Transportation6. Waiting7. Defects

Page 14: l e a n - LASER Foundation

14

August 0627 Copyright©2006 Poppendieck.LLC

The Seven Wastes

1. Partially Done Work2. Extra Features

The 7 Wastes of The 7 Wastes of Software DevelopmentSoftware Development

“Every line of code costs money to write and more money to support. It is better for the developers to be surfing than writing code that won't be needed. If they write code that ultimately is not used, I will be paying for that code for the life of the system, which is typically longer than my professional life. If they went surfing, they would have fun, and I would have a less expensive system and fewer headaches to maintain.”-- Jeff Sutherland, CTO PatientKeeper

The Seven Wastes of Manufacturing The Seven Wastes of Manufacturing -- Shigeo ShingoShigeo Shingo

1. Inventory 2. Overproduction3. Extra Processing4. Motion5. Transportation6. Waiting7. Defects

August 0628 Copyright©2006 Poppendieck.LLC

The Seven WastesThe Seven Wastes of Manufacturing The Seven Wastes of Manufacturing

-- Shigeo ShingoShigeo Shingo

1. Inventory 2. Overproduction3. Extra Processing4. Motion5. Transportation6. Waiting7. Defects

1. Partially Done Work2. Extra Features3. Relearning4. Task Switching

The 7 Wastes of The 7 Wastes of Software DevelopmentSoftware Development

Page 15: l e a n - LASER Foundation

15

August 0629 Copyright©2006 Poppendieck.LLC

The Seven Wastes

1. Partially Done Work2. Extra Features3. Relearning4. Task Switching5. Handoffs6. Delays7. Defects

The 7 Wastes of The 7 Wastes of Software DevelopmentSoftware Development

The Seven Wastes of Manufacturing The Seven Wastes of Manufacturing -- Shigeo ShingoShigeo Shingo

1. Inventory 2. Overproduction3. Extra Processing4. Motion5. Transportation6. Waiting7. Defects

August 0630 Copyright©2006 Poppendieck.LLC

The Value Stream

Cycle TimeAverage end-to-end process time

From problem detectionTo problem solution

Begins and ends with the customerBegins and ends with the customerSoftware Development Cycle Time

The speed at which a customer need is reliably and repeatedly translated into deployed software.

Problem Solution

Cycle Time

Customer Request Customer Satisfied

Page 16: l e a n - LASER Foundation

16

August 0631 Copyright©2006 Poppendieck.LLC

Value Stream Examples

Example 1

Example 2

August 0632 Copyright©2006 Poppendieck.LLC

Value Stream Examples

Example 3

Page 17: l e a n - LASER Foundation

17

August 0633 Copyright©2006 Poppendieck.LLC

Value Stream ExamplesExample 4

Question: What is really value added? What is the % efficiency?

August 0634 Copyright©2006 Poppendieck.LLC

Value Stream Maps

1. Select a process for creating a Value Stream Map. Decide when the clock starts (eg. customer has a need) and when it stops (need is filled).

2. Current Value Stream MapList / diagram the key stepsList the average time of each step

Does the step add value full time?Is the step ever repeated?

List the average time between steps

3. Calculate Process Cycle Efficiency*

Add up time of each step plus time between steps = Total Cycle TimeAdd up Value Added Time in each step

4. Discuss.

Value Added Time

Total Cycle Time

* See Michael George: Conquering Complexity in Your Business

Page 18: l e a n - LASER Foundation

18

August 0635 Copyright©2006 Poppendieck.LLC

SundayOverview

HistoryPrinciples

Core IdeasValueWaste

Lean Software Development Agenda

MondayProcess

QualityKnowledge

PeopleLeadershipTeams Visible Workspace

TuesdaySpeed

The Synergy of Speed, Quality, & Low CostQueuing Theory

SystemMeasurementThe Journey

August 0636 Copyright©2006 Poppendieck.LLC

Build Quality In

1. Organized Workspace5 S’s

2. Standardized InfrastructureArchitectureConventionsTools

Standards Exist to be Changed!

3. Test-Driven DevelopmentAcceptance (Story) TestsUnit Tests

4. Frequent DeploymentSmall Batches

5. SynchronizationConfiguration ManagementOne Click BuildContinuous IntegrationAutomated test harnessesSTOPSTOP if the tests don’t passNested SynchronizationAutomated DeploymentAutomated Installation

6. Continuous ImprovementChallenge the standardsImprove the processRefactor the code base

Building Block DisciplinesBuilding Block Disciplines

Page 19: l e a n - LASER Foundation

19

August 0637 Copyright©2006 Poppendieck.LLC

Organized WorkspaceThe Five S’s

Sort (Seiri) Get rid of everything that is not needed.

Systematize (Seiton) Have a place for everything and put everything in its place.

Shine (Seiso) Clean up – both physical and digital workspaces.

Standardize (Seiketsu) Create standards to keep things organized.

Sustain (Shitsuke)Make it a habit.

August 0638 Copyright©2006 Poppendieck.LLC

Types of Testing

Acceptance Acceptance TestsTests

Business Intent(Design of the Product)

UsabilityUsabilityTesting Testing

ExploratoryExploratoryTestingTesting

Unit Unit TestsTests

Developer Intent(Design of the Code)

PropertyPropertyTestingTestingResponse,SecurityScaling,…

From

Bri

an M

aric

k

Technology Facing

Business Facing

Supp

ort P

rogr

amm

ing

Cri

tique

Pro

duct

Automated Manual

Automated Tool-Based

Page 20: l e a n - LASER Foundation

20

August 0639 Copyright©2006 Poppendieck.LLC

Test Driven Development

Doesn’t cost, it pays!Is a design technique

Cleaner DesignStory Test Driven Design

Matches the design to the structure of the domain

Unit Test Driven DesignSimpler, More Understandable Code

Self-verifyingProtects from unintended consequences

For the life of the code

August 0640 Copyright©2006 Poppendieck.LLC

Nested Synchronization

Synchronized: Integrated, tested, ready to release.STOPSTOP if the tests don’t pass

Every few minutesCheck in code, build and run unit tests

Every dayRun acceptance tests

Every weekRun more complete test suites

Every iterationDeployment-ready code

Every ReleaseDeploy and run in production

Page 21: l e a n - LASER Foundation

21

August 0641 Copyright©2006 Poppendieck.LLC

The Scientific Method

1. Observe phenomenon.2. Formulate a hypothesis to

explain the phenomenon.3. Use the hypothesis to make

a prediction – the existence of other phenomenon or the results of new observations.

4. Perform experiments to see if prediction holds up.

5. If so, the hypothesis may be regarded as a theory.

6. If not, the hypothesis must be rejected or modified.

Not ConsistentModify Hypothesis

ConsistentPublish Results

New Knowledge

Obser-vations

Predic-tionsTests

Hypothesis

August 0642 Copyright©2006 Poppendieck.LLC

1. Frame the problem2. Look for the root cause3. Propose a countermeasure4. Specify expected results5. Perform many rapid experiments6. Capture results in an A3 report7. Implement the best countermeasure8. Verify results9. Change the standard

Using the Scientific Method to Solve Problems

Page 22: l e a n - LASER Foundation

22

August 0643 Copyright©2006 Poppendieck.LLC

The A3 Report

Ground RulesEverything fits on one side of an A3 sheet (two 8.5x11’s). If it doesn’t fit, condense it to an A4 sheet (one 8.5x11)!Use as few words as possible. Use pictures & graphs instead. A3’s are dynamic documents. Obtain feedback & update.

A Problem Solving A3:Summary of the ProblemRoot Cause AnalysisSuggested CountermeasurePlanned ExperimentsMeasurements and Feedback

A Minimum Useful Feature Set A3:Description of customer jobEconomic valueWhat customers will be able to doDiagram of what is and is not includedSystem interaction diagram.Desired timeline

A Knowledge Sharing A3:Identification of specific problem (example: database lockup)List of suspected triggersScatter plot showing instances plotted against suspected triggersTradeoff curve of nested calls plotted against time-spent-in-nest, with a line showing where lockups do/don’t occurDiscussion of additional suspected causes of the problem

August 0644 Copyright©2006 Poppendieck.LLC

Iterative Development

Review Meeting

featuresdesirable

list ofPrioritized

Backlog:

Deployment

Stories

Planning Meeting

Daily

One Iteration Ahead Every 2-4

Weeks

Iteration Execution

Iteration Planning

Deployment- Ready

Software

Page 23: l e a n - LASER Foundation

23

August 0645 Copyright©2006 Poppendieck.LLC

Change Tolerant Software

60-80% of all software is developed after first release to production.

A development process that anticipates change will result in software that tolerates change.

Make decisions reversible reversible whenever possible.

Make irreversibleirreversible decisions as late as possible. When do you really need the user interface designed?

August 0646 Copyright©2006 Poppendieck.LLC

Set-Based Design

Point Based DesignSet up a meeting using the point-based model.

Set Based DesignNow set up the meeting by communicating about sets.

A: Uh, already booked. Can you meet at 3:00?

A: I can meet 10:00 - 1:00 or 3:00 - 5:00. Can you make

any of these times?

B: Let’s meet 12:00 -1:00.

based on dissertation by Durward K. Sobek, II, 1997

A: My best time is 10:00. Can you make it?

B: No, I can’t. How about 2:00?

B: No, 3:00 is bad. 9:00?

?

You already understand this!

Page 24: l e a n - LASER Foundation

24

August 0647 Copyright©2006 Poppendieck.LLC

Set-Based Engineering

Irreversible decisions are scheduled to be made at the last responsible moment.Multiple options are prepared for the decision.There is always an option that will work.The Paradox: This is not waste!

Set-Based

Engineering Resp

onsib

ility

Base

d Con

trol

Design

Leaders

hipExpert

Workforce

Technical CapabilitiesBusiness Logic

Approaches

GUI Alternatives

Acceptable

Analyze & Critique

Modify

ArchitectArchitect

DevelopersDevelopers

TestersTesters

UI UI DesignersDesigners

Product ManagerProduct Manager

DesignSolution

PointPoint--Based Based

SetSet--Based Based

August 0648 Copyright©2006 Poppendieck.LLC

SundayOverview

HistoryPrinciples

Core IdeasValueWaste

Lean Software Development Agenda

MondayProcess

QualityKnowledge

PeopleLeadershipTeams Visible Workspace

TuesdaySpeed

The Synergy of Speed, Quality, & Low CostQueuing Theory

SystemMeasurementThe Journey

Page 25: l e a n - LASER Foundation

25

August 0649 Copyright©2006 Poppendieck.LLC

Brilliant Products

Embody a Deep Understanding of:The job that customersneed done

The right technologyto do that job

UnderstandsThe Business

UnderstandsThe Technology

Mind Meld

August 0650 Copyright©2006 Poppendieck.LLC

Product Champion

Behind every great product is a person with:Great empathy for the customer Insight into what is technically possibleThe ability to see what is essential and what is incidental

Skills:Possesses a deep understanding of the customer and the development teams’ capabilities. Operates from a strong basis of knowledge and confidence. Focuses on delivering superior value to the marketplace.

Martin Cagan, Silicon Valley Product Group; see www.svproduct.com

Page 26: l e a n - LASER Foundation

26

August 0651 Copyright©2006 Poppendieck.LLC

Leadership Roles(How Many People?)

Process LeaderProcess LeaderBuild Block DisciplinesIterative DevelopmentVisible Workspace

Project LeaderProject LeaderFunding(Scheduling)Tracking

Functional LeaderFunctional LeaderStaffingTeachingStandards

Marketing LeaderMarketing LeaderBusiness ResponsibilityCustomer UnderstandingRelease Planning

Technical LeaderTechnical LeaderSystem Architecture

At a high levelWork daily with those developing the details

Technical GuidanceIntegrationTradeoffs

August 0652 Copyright©2006 Poppendieck.LLC

What is a Team?

A team is a group of people who have committed to each other to work together to achieve a common purpose.

A group of people who sum up their individual efforts to meet a goal may be a work group, but they aren’t a team.

Page 27: l e a n - LASER Foundation

27

August 0653 Copyright©2006 Poppendieck.LLC

Case Study: Boeing 777 Working Together

1990 – 1995 Aggressive Deadline – Bet-the-company programThe first Boeing airline with computer controlsAlan Mulally – Chief Engineer

200+ Design-Build TeamsShare Early, Share Often

A schedule of tests to passExpose Conflicts, Fail Fast

Delight CustomersAirlines and Passengers 21st Century Jet: The Building of the 777

1995 Documentary for KCTS/Seattle

August 0654 Copyright©2006 Poppendieck.LLC

Expert Workforce

TPS – Thinking People SystemTraining, management, processes, and IT are designed to support the decisions of workers, not to make decisions for workers.Workers design and improve their own processesFunctional managers act as teachersCompensation system does not force good engineers to move into management80% of an engineer’s time is spent “doing engineering” Set-Based

Engineering Resp

onsib

ility

Base

d Con

trol

Design

Leaders

hipExpert

Workforce

Page 28: l e a n - LASER Foundation

28

August 0655 Copyright©2006 Poppendieck.LLC

Responsibility-Based Planning & Control

Chief Engineer publishes scheduleEngineers decide how to meet the schedule

Are responsible to make dependent tasks happen‘Pull’ knowledge as needed

The schedule is ALWAYS met

Consider Your Daily NewspaperComes together every night no matter whatPage Editors decide how to meet the schedule

Are responsible to fill their pages‘Pull’ stories as needed

Set-Based

Engineering Resp

onsib

ility

Base

d Con

trol

Design

Leaders

hipExpert

Workforce

August 0656 Copyright©2006 Poppendieck.LLC

Make Work Self-Directing

Dispatched

Self-Directing

Dispatched

Self-DirectingStory YY

Login New UserGet PasswordAfal;jdsa;fuwe

Story XXLogin New UserAfal;jdsa;fuwe

Story XXLogin New UserAfal;jdsa;fuwe

Story XXLogin New UserAfal;jdsa;fuwe Story XX

Login New UserAfal;jdsa;fuwe

Story XXLogin New UserAfal;jdsa;fuwe

Story YYLogin New UserGet PasswordAfal;jdsa;fuwe

Story YYLogin New UserGet PasswordAfal;jdsa;fuwe

Story YYLogin New UserGet PasswordAfal;jdsa;fuwe

Story YYLogin New UserGet PasswordAfal;jdsa;fuwe

Story YYLogin New UserGet PasswordAfal;jdsa;fuwe

Story XXLogin New UserAfal;jdsa;fuwe

Tests PassedChecked Out To Do

Page 29: l e a n - LASER Foundation

29

August 0657 Copyright©2006 Poppendieck.LLC

Small team Clear missionShort timeframeNecessary skillsBasic disciplinesProper leadershipResponsibilityRespect

Commitment of all members to team goal

Self-Directing Teams

August 0658 Copyright©2006 Poppendieck.LLC

The Visual Workplace

Kanban What to do next?

Status LightsStop the Line!

Big Visible ChartsHow are we doing?

Story YYLogin New UserGet PasswordAfal;jdsa;fuwe

Story XXLogin New UserAfal;jdsa;fuwe

Story XXLogin New UserAfal;jdsa;fuwe

Story XXLogin New UserAfal;jdsa;fuwe Story XX

Login New UserAfal;jdsa;fuwe

Story XXLogin New UserAfal;jdsa;fuwe

Story YYLogin New UserGet PasswordAfal;jdsa;fuwe

Story YYLogin New UserGet PasswordAfal;jdsa;fuwe

Story YYLogin New UserGet PasswordAfal;jdsa;fuwe

Story YYLogin New UserGet PasswordAfal;jdsa;fuwe

Story YYLogin New UserGet PasswordAfal;jdsa;fuwe

Story XXLogin New UserAfal;jdsa;fuwe

Tests PassedChecked Out To Do

Time to Complete (in staff-days)

0

100

200

300

400

500

600

700

jan feb mar apr may jun jul aug sep oct nov dec

Page 30: l e a n - LASER Foundation

30

August 0659 Copyright©2006 Poppendieck.LLC

SundayOverview

HistoryPrinciples

Core IdeasValueWaste

Lean Software Development Agenda

MondayProcess

QualityKnowledge

PeopleLeadershipTeams Visible Workspace

TuesdaySpeed

The Synergy of Speed, Quality, & Low CostQueuing Theory

SystemMeasurementThe Journey

August 0660 Copyright©2006 Poppendieck.LLC

Stamping Dies

JapanMistakes very expensiveNever-ending changesFocus: Reduce TimeEarly Design – Early CutDesigner makes changes

Faster, Better, Cheaper

USMistakes very expensiveNever-ending changesFocus: Reduce WasteWait to Design – Wait to CutSlow change approval system

Twice the time, twice the cost

Page 31: l e a n - LASER Foundation

31

August 0661 Copyright©2006 Poppendieck.LLC

Slow Processes are Expensive

Slow processes Are error proneAre less productiveCan’t adapt to change

In slow processes:Most of the time is spent waitingMost steps do not add customer valueMost of the effort goes to managing complexity

August 0662 Copyright©2006 Poppendieck.LLC

Time: The Universal Currency

Process problems add time delaysDefectsComplexityLow ProductivityChange IntoleranceBuilding the Wrong ThingToo many Things-in-Process

Focusing on time Pinpoints non-value-adding activitiesExposes development problems earlier

Page 32: l e a n - LASER Foundation

32

August 0663 Copyright©2006 Poppendieck.LLC

Case Study - PatientKeeperSpeed to market

45 cycles while competition does oneMaintenance releases once or twice a weekNew feature releases every monthNew applications released every quarter

Predictable DeliveryNever a late releaseProblems are seen long before the release dateThe company self-organizes around the problems

Pull from DemandPriorities reorganized on a weekly basis by CEO, sales, and account managementCustomer impact and schedule impacts are dealt with at the time of the decision

No Abnormalities because rapid cycle time:Eliminates buggy software because you die if you don't fix this Fixes the install process because you have to install 45 releases a yearImproves the upgrade process because of a constant flow of mandatory upgrades It forces standardization of software via new features rather than customization

Jeff SutherlandCTO PatientKeeper

August 0664 Copyright©2006 Poppendieck.LLC

Cycle Time

Cycle TimeAverage end-to-end process time

From problem detectionTo problem solution

Begins and ends with the customerBegins and ends with the customerSoftware Development Cycle Time

The speed at which a customer need is reliably and repeatedly translated into deployed software.

Problem Solution

Cycle Time

Customer Request Customer Satisfied

Page 33: l e a n - LASER Foundation

33

August 0665 Copyright©2006 Poppendieck.LLC

Little’s Law

Total Cycle Time =Number of Things in Process

Average Completion Rate

August 0666 Copyright©2006 Poppendieck.LLC

The Utilization Paradox

Queuing Theory 101

Cycle Time as a Function of Utilization and Batch Size*

0

5

10

15

20

25

30

35

40

45

10% 20% 30% 40% 50% 60% 70% 80% 90% 100%

Cyc

le T

ime

(hou

rs)

Small Batches Medium BatchesLarge Batches

*This assumes batch size is proportional to variability.

Page 34: l e a n - LASER Foundation

34

August 0667 Copyright©2006 Poppendieck.LLC

Reducing Software Development Cycle Time

1. Even out the Arrival of Work2. Minimize the Number

of Things In Process3. Minimize the Size

of Things In Process4. Establish a Regular Cadence5. Limit Work to Capacity6. Use Pull Scheduling

Queuing Theory

August 0668 Copyright©2006 Poppendieck.LLC

Case Study:Use Pull Scheduling

Large Financial InstitutionFull day every 2 weeks ‘discussing’priorities

Recommendation:

Manage the QueuesPull from Queues to limit work to capacityKeep Queues small to decrease cycle time

.

.

.

Pull

Pull

Pull

Impl

emen

tatio

n Ba

cklo

g

Desir

able

Capa

bilitie

s

Good

RO

I

Page 35: l e a n - LASER Foundation

35

August 0669 Copyright©2006 Poppendieck.LLC

Release Planning

Timebox CapabilitiesNever miss a deadlineDevelop highest priority firstAdjust scope at the beginning of every iteration

August 0670 Copyright©2006 Poppendieck.LLC

SundayOverview

HistoryPrinciples

Core IdeasValueWaste

Lean Software Development Agenda

MondayProcess

QualityKnowledge

PeopleLeadershipTeams Visible Workspace

TuesdaySpeed

The Synergy of Speed, Quality, & Low CostQueuing Theory

SystemMeasurementThe Journey

Page 36: l e a n - LASER Foundation

36

August 0671 Copyright©2006 Poppendieck.LLC

Case Study: Dysfunctional Measurements

Case 1: Fujitsu took over help desk of BMI (airline) in 2001Analyzed calls

Found the problems behind the callsTracked the time to fix the problemsMeasured impact on business of the problem

26% of calls were for printersCould not print boarding passes / luggage tags

Fujitsu convinced management to get better printersPrinter calls were down 80% in 18 monthsTotal calls were down 40% in 18 monthsMajor savings in flight operations

What’s Wrong With This Picture?Most call centers are paid for each call handledFujitsu is paid for each potential caller

From “Lean Consumption”By James P. Womack & Daniel T. JonesHarvard Business Review, March 2005

August 0672 Copyright©2006 Poppendieck.LLC

A Financial Model

Software by Number by Mark Denne and Jane Cleland-HuangSelf-Funding

Breakeven

Inve

stm

ent

Payb

ack

Pro

fit

Time

Cos

t

Page 37: l e a n - LASER Foundation

37

August 0673 Copyright©2006 Poppendieck.LLC

Staged Releases

Time

Cos

tRelease 1 ProfitRelease 2 Profit

Total Profit

August 0674 Copyright©2006 Poppendieck.LLC

Increased Profit

Time

Cos

t

Profit

Investment

Bre

akev

en

Single Release

Self-

Fund

ing

Bre

akev

en

Software by Number by Mark Denne and Jane Cleland-Huang

StagedReleases

Page 38: l e a n - LASER Foundation

38

August 0675 Copyright©2006 Poppendieck.LLC

Case StudyThe Business Case

Used car holding companyNeeded re-write of used car management software

Consultants proposed ScrumSaid that customer could end contract at end of any month if the weren’t satisfiedConsulting firm management was not pleased

Consultants looked for ways to delight customerDiscovered that reducing car holding time was worth many £’sFocused development on this goal

Result: Very happy customer More work for consulting firmConsulting firm management very pleased

August 0676 Copyright©2006 Poppendieck.LLC

Every product development team has an accountantFull team develops P&L as part of its daily work

Team trade-off decisions are based on P&L impact

P&L drives management approval decisions at gatesAre the margins adequateAre they believable?Has the team done its homework?

P&L’s are usually used for investment decisionsThe best use may be as a financial model for development teams to make trade-off decisions

Case Study3M Product Development

Page 39: l e a n - LASER Foundation

39

August 0677 Copyright©2006 Poppendieck.LLC

2.2. The Business CaseThe Business CaseP&L ROIGoal of Investment

3.3. Customer SatisfactionCustomer SatisfactionNet Promoter Score

Would you recommend our product to a friend?NPS = %Yes – %No Correlated to market share and long term growth

Measure UP

1.1. Average Cycle TimeAverage Cycle TimeFrom Product ConceptTo First Release

or

From Feature RequestTo Feature Deployment

or

From DefectTo Patch

Three Holistic Measurements

oror

Fred Reichheld, The Ultimate Question

August 0678 Copyright©2006 Poppendieck.LLC

The Journey 1. Begin where you are

How do you create value and make a profit?2. Find your biggest constraint

What is the biggest problem limiting your ability to create value and make a profit?3. Envision your biggest threat

What is the biggest threat to your ability to continue creating value and making a profit over the long-term?4. Evaluate your culture

Establish and reinforce a culture of deep respect for front-line workers and for partners. Remove barriers that get in the way of pride in workmanship.

5. TrainTrain team leads, supervisors and managers how to lead, how to teach, and how to help workers use a disciplined approach to improving work processes.

6. Solve the Biggest ProblemTurn the biggest constraint over to work teams. Expect many quick experiments that will eventually uncover a path to a solution.

7. Remove accommodationsUncover the rules that made it possible to live with the constraint. Decide what the new rules should be.

8. MeasureSee if end-to-end cycle time, true profitability, and real customer satisfaction have improved.

9. ImplementAdopt changes supported by results.

10. Repeat the cycleWith the biggest problem addressed, something else will become your biggest problem. Find it and repeat the cycle.

Page 40: l e a n - LASER Foundation

40

August 0679 Copyright©2006 Poppendieck.LLC

A Short List of Books

1. Taiichi Ohno – Toyota Production System2. Mary & Tom Poppendieck – Lean Software Development3. Michael Kennedy – Product Development in the Lean Enterprise4. Mike Cohn – Agile Estimating and Planning5. Mugridge & Cunningham – Fit for Developing Software6. Poppendieck – Implementing Lean Software Development

l e a nsoftware development

www.poppendieck.comMary [email protected]

Thank You!More Information: www.poppendieck.com