lean software development - accelinnova · lean software development. agenda what is lean? what is...
TRANSCRIPT
Lean Software Development
Agenda
What is lean?
What is lean
software
development?
Tools that work
Simulation
Summary
Lean Agenda
What is Lean?
A journey, not a destination
Deliver continually
increasing customer
value
Expending continually
decreasing effort
Shortest possible
timeframe
Highest possible
quality
- Mary Poppendieck
Foundation Principles
Business Goals:
Create customer value!
How do we do that?
What does not directly create
value is “waste”
Eliminate the waste
We use lean tools to find and
reduce the waste. These tools
work!
Customer Value Rule of Thumb
Ask:
Would your
customers be
willing to pay for
it?
Anything else
might be waste.
Example: Customer Value
As a pizza customer, am I willing to pay for:
Sauce?
Toppings?
Time when delivery driver given incorrect
directions to my house?
Electricity for pizza oven?
Electricity for pizza oven
left on overnight?
Continuously Remove Waste
Continuously
optimize processes
to improve:
Effectiveness
Flexibility
Time-to-market
The Principles of Lean
Focus on customers
Eliminate waste
Learn first
Deliver fast
Build quality in
Keep getting better
Optimize the Whole
Focus on Customers
“If you organize around the consumer, the rest of it will follow.”
-Eric Schmidt
Do not focus on the products you are building,
focus on the problems customers are encountering.
It is not enough for customers to be satisfied, they should
love your products.
- Mary Poppendieck
Eliminate Waste
Eliminate Waste
The three biggest wastes in product
development are:
Building the Wrong Thing
Building the Thing Wrong
A Batch and Queue Mentality
- Mary Poppendieck
The 7 Deadly Forms of Waste
Rework/Correction: not “right the first time”
Overproduction: file and data retention,
duplication of effort
Motion: looking for information or supplies
Material: information not available or not
correct
Waiting: for approvals, decisions, etc.
Inventory: “just in case” activities
Over Processing: redundant approvals,
reports with too much information, decisions
made at the wrong levels
Applied to Software Development
Forms of Waste Mapped to IT
Rework Need I Say More?
Overproduction Building Features We Don’t Need
Motion Approval Cycles, Access to Decision-
makers. Queues
Material Poor communication. Unused Tools,
Equipment
Waiting Waiting
Inventory Over-planning. 40% of Licenses That
We Never Use.
Over-processing Gold-plating, Over-engineering
Which of these would customers pay for?
WaitingInternal
Paperwork
Defects Complexity
&
Extra
Features
Red Tape
Backlogs = Delays
Your Forms of Waste?
Rework
Not getting it right the
first time
Long time between
defect injection and
removal.
Have any examples?
Excess movement
= Handoffs between process steps
and departments
Handoffs
Lose key
information
Incomplete
information
Motion
Navigating
through
processes and
approvals.
Got any
examples?
Material and Inventory
Poor communication
Information not available
Duplicate tools and processes
Got any?
Waiting
Waiting for anything
– particularly
decisions.
What do you wait
for?
Over-Processing
Making things better than they have to be.
What examples do you have?
Leadership Role
Every line of code costs money to test
and more money to support.
It is better for developers to be surfing
than writing code that won't be needed.
- J. Sutherland
Extra Processes
Unnecessary Paperwork
Long & Complex status
reporting
Poor Communication
Endless Meeting
Paralysis
Management Activities
What is the
value to
customer?
Don’t add work
to the team
The Evils of Churn
Requirements churn: 30-50% waste
Features defined long before development
begins (they will change)
Test-and-fix churn: 50% of development
time
Testing long after development
Delayed integration
Architecture issues discovered late
Exercise: Reducing Churn
Percentage of requirements change after
they are documented?
Percentage of development time is spent in
“test and fix” or “hardening” activities at the
end of a development cycle?
What could you do to reduce these
percentages?
Lean Tools
Goal Tool Why It Works
Find the waste Would the customer pay for? Focus on value creation
Find the waste Value Stream Mapping Make the waste visible
Make everything
visual
Visual Controls Better to see than to
read. Push not Pull.
Reduce churn Real Options Defer decisions to
reduce churn
Reduce churn One-piece flow (aka iterative
development)
Shorten feedback loops
Adapt to change
Deliver faster (yes,
faster)
Optimize the whole System thinking enabled by
value stream mapping
Include all the inputs and
outputs
Find the
waste …
….and
remove it.
Value stream mapping
value stream mapping
Why Value Stream Maps
Makes the process visible so that we can see the waste
Focuses us on what generates customer value
Focuses us on process effectiveness
Helps us identify ways to take time out of processes and improve delivery speed
• Replaces process emotion with process data
Where do we waste time?
Cycle Time:
Average end-to-end process time
From problem detection
To problem solution
Begins and ends with customer.
Problem Solution
Cycle Time
Customer Request Customer Satisfied
Don’t get bogged down with detail
Most typical scenario
“Staple yourself” to the process
Map what happens
Focus on parts to improve
Add detail later (if needed)
Example: Customer Requests Fix
Where can we remove the waste?
Customer
requests fix
Support
triages
request
Dev team
triages
request
Dev fixes,
releases in
fix pack
Customer
deploys
fix pack
Work: 5 min 2 hrs 1 hr 2 wks 1 hr
Efficiency = Value added time
Total cycle time
10.5 days
38.5 days= = 27%
Wait: 5 min 3 days 1 wk 2 wks
Value Added Time = 10.5 days
Cycle time = Work + Wait = 38.5 days
1 Day Agreement
Achieved
2 Days7 Days
Select Delivery Content (no travel allowed!)
Need for
Scope Def.
2 Hours
Call & Email
With Cust
1 Hour
Call & Email
With Cust
1 Hour
X 6
Customer Request to Agreement
Working Time = 16 hours
Elapsed Time = 50 days
Wasted Time = 48 days
Efficiency = 4%
Note: Comparison assumes
• 1 day travel to customer site
• 1 day face to face work
• 1 day travel home is excluded since
customer is satisfied
Face to Face Meeting
Working Time = 8 hours
Elapsed Time = 2 days
Waiting Time = 1 days
Efficiency = 50%
As-Is Example
As a new customer, I want to enter my Information only once
in the Small Business Portal
SOW
Final Dev
(1 Day)
System Test
(5 Days)
Standards
Compliance
(1 Day)
Wireframe
Design
(2 Days)
Development
(5 Days)
1 Day
2 Wks2 Days
2 Wks2-4 Wks
Process Efficiency = Work / Time = 14 / 56 = 25%
To-Be Example
Requirements
Planning
(2 Days)
System Test
(5 Days)
Standards
(1 Day)
Wireframes
Design
(1 Day)
Development
(5 Days)
1 Day
Work = 14 days
Time = 11 days
Efficiency = 127%
As Is SAP Integration for New Product
Business Value
Justification
2 Hours
Authors
SAP
1 Hour
Requirements
2 Hours
B Analyst
2 Hours
1 Week
2 Days
2 Weeks2 Weeks1 Week1 WeekSolution
Document
2 Days
Quote
Time & $
1 Day
Bus Approval
for Funding
1 Day
Allocate
Developer
2 Hours
2 Weeks Read Solution
Document
1 Hour
1 Week Clarification
Meeting
4 Hours
1 Week
Implement
Change
15 Days
0 Days
UAT
Test
10 Days
0 Days Put In
Production
1 Hour
2 Days Bug
Found
1 Day
2 Weeks
Re-Implement
Change
1 Hour
1D
ay
1D
ay X3
In SAP
Ready to Use0 Days
Working time = 33 days + 18 hours = 35 business days
Wait Time = 13 weeks + 10 days = 75 business days
Elapsed time = 110 business Days
Efficiency = 35/110 = 32%
As Is SAP Integration for New Product
Value Stream – Parallel Development
4141
Create a Value Stream Map
Select a Process that is relevant to you
Create a Value Stream Map
Calculate Process Cycle Efficiency
Process Efficiency =
How can you change the process to reduce
the waste? (the To Be state)
Value Added Time
Total Cycle Time
VSM’s may give you short-term
whining rights but improving the
process will give you long-term
bragging rights.
- Pollyanna Pixton
Value Stream Mapping
Your
Questions?
Lean Tools
Goal Tool Why It Works
Find the waste Would the customer pay? Focus on value creation
Find the waste Value Stream Mapping Make the waste visible
Make everything
visual
Visual Controls Better to see than to
read. Push not Pull.
Reduce churn Real Options Defer decisions to
reduce churn
Reduce churn One-piece flow (aka iterative
development)
Shorten feedback loops
Adapt to change
Deliver faster (yes,
faster)
Optimize the whole System thinking enabled by
value stream mapping
Include all the inputs and
outputs
Visual Controls
It is better to see than to read.
Why?
June
Total Variable Costs as a % of Revenue 59.07%
Materials as a % of Revenue 32.70%
Direct Labor as a % of Revenue 6.00%
Variable Overhead as a % of Revenue 8.10%
Commissions as a % of Revenue 3.40%
At a glance, which is better?At a glance, which is better?
June
Total Variable Costs as a % of Revenue 59.07%
Materials as a % of Revenue 32.70%
Direct Labor as a % of Revenue 6.00%
Variable Overhead as a % of Revenue 8.10%
Commissions as a % of Revenue 3.40%
At a glance, which is better?Or, two data points?
April
Total Variable Costs as a % of Revenue 54.62%
Materials as a % of Revenue 30.32%
Direct Labor as a % of Revenue 7.16%
Variable Overhead as a % of Revenue 5.12%
Commissions as a % of Revenue 3.19%
Or?
0.00%
10.00%
20.00%
30.00%
40.00%
50.00%
60.00%
70.00%
Materials Percentage of Revenue
Direct Labor Percentage of Revenue
Variable Overhead Percentage ofRevenue
Commissions Percentage of Revenue
Total Variable Percentage of Revenue
Or, something we can see?
Visual Controls Acceptance Criteria
I can “tell the status by looking”
The information is current
The information is meaningful and helps me
do my work
The information is useful and helps me
make better decisions
Includes standards
In Your Lives
Lean Tools
Goal Tool Why It Works
Find the waste Would the customer pay? Focus on value creation
Find the waste Value Stream Mapping Make the waste visible
Make everything
visual
Visual Controls Better to see than to
read. Push not Pull.
Reduce churn Real Options Defer decisions to
reduce churn
Reduce churn One-piece flow (aka iterative
development)
Shorten feedback loops
Adapt to change
Deliver faster (yes,
faster)
Optimize the whole System thinking enabled by
value stream mapping
Include all the inputs and
outputs
Real Options
to Defer Commitments
55
Defer Commitments
Pilots are trained to make decisions in
challenging weather situations.
56
Maintain Options
You don’t know everything yet so….
Keep your options open
Business
Technical
Make decisions reversible where possible
Or make them
At The LAST Responsible Moment
Defer Commitments
Get most information before making
irreversible decisions
Tools:
Make decisions reversible, wherever
possible
Defer Commitments
Make irreversible decisions at last
responsible moment
Tools:
Real Options
Maintain options at points where change is
likely to occur
Real Options
- Chris Matts
Example
I can get to the airport in several ways: Walk (90 minutes)
Take light rail (45 minutes)
Ride a bike (40 minutes)
Drive myself (20 – 25 minutes)
Take a taxi (20 minutes)
If I take light rail, what options did I just
eliminate? What options did I leave open?
If I wait until 30 minutes before check-in,
what options are still open?
When do I need to decide?
Defer Commitment
Don’t solve problems until they arrive
Wait for something to happen
Respond quickly and correctly
Tools:
Eliminate deterministic control systems
Learn to wait
Defer Commitment
Your
Questions?
Lean Tools
Goal Tool Why It Works
Find the waste Would the customer pay? Focus on value creation
Find the waste Value Stream Mapping Make the waste visible
Make everything
visual
Visual Controls Better to see than to
read. Push not Pull.
Reduce churn Real Options Defer decisions to
reduce churn
Reduce churn One-piece flow (aka iterative
development)
Shorten feedback loops
Adapt to change
Deliver faster (yes,
faster)
Optimize the whole System thinking enabled by
value stream mapping
Include all the inputs and
outputs
One-Piece Flowaka Iterative Development
How do we delivery fast and
unleash dormant process
capacity?
Get as close to
possible to one-
piece flow
Deliver Fast
Continuous Stream of completed work
No Batching
No Waiting
No Backlog
Fast Immediate Action
Fast Flow
Deliver Fast
Companies that compete on time
L.L.Bean ships in 24 hours and put Sears
catalog out of business
FedEx: next day delivery
Southwest: fastest turnaround at gates
Deliver Fast
This is NOT hack and release
Must build quality in
Need engaged people you can trust to make
decisions and help each other
Repeatedly and reliably respond to
customer faster than competitors
One-Piece Flow
Your
Questions?
Lean Tools
Goal Tool Why It Works
Find the waste Would the customer pay? Focus on value creation
Find the waste Value Stream Mapping Make the waste visible
Make everything
visual
Visual Controls Better to see than to
read. Push not Pull.
Reduce churn Real Options Defer decisions to
reduce churn
Reduce churn One-piece flow (aka iterative
development)
Shorten feedback loops
Adapt to change
Deliver faster (yes,
faster)
Optimize the whole System thinking enabled by
value stream mapping
Include all the inputs and
outputs
System Thinking
Optimize the Whole
The synergy between the parts of a system is the key to the
overall success of the system.
Appreciate the Entire Value Stream
... from concept to cash. Optimizing any part will sub-optimize
the whole.
- Mary Poppendieck
Optimize the Whole
Vicious Circle (of course, this would never
happen at your company):
A customer wants some new features, “yesterday.”
Developers hear: Get it done fast, at all costs!
Result: Sloppy changes made to code base.
Result: Code base complexity increases.
Result: Number of defects in code base increases.
Result: Exponential increase in time to add features.
With Thanks to Mary & Tom Poppendieck
Example: “Not my size!”
Twice-weekly orders
Delivers globally 2 days
after order • On hangers, priced, ready to sell
• Shipping costs not optimized!
Manufactures in small
lots• Mostly at co-ops in Western Spain
at Western European labor rates
• Manufacturing costs not optimized!
Design-to-Store in 2
weeks
RESULTS Zara Industry
New Items
introduced / year11,000 3,000
Items sold at full
price85% 60-70%
Unsold Items <10% 17-20%
% sales spent on
advertising0.3% 3-4%
% sales spent on IT 0.5% 2%
Revenues vs GAP $23.1B $16.1B
Profit vs GAP $3.2B $1.3B
Customers visit the store 17 times a year vs
average store 4 times
Now the biggest fashion retailer in the world
Everyone understands "the model" of fast
supply chain
Owner Amancia Ortega is now the 3rd
richest man in the world
Zara Market Performance
System Thinking Tools
Focus end-to-end
Drive cost out of
each department• Easy
• Often interferes with overall
cost reduction
Split Responsibility• Dev Team has Technical
Success
• Product Manager has
Business / Profitability
Eliminate waste
between departments• Difficult
• May not result in the lowest
department costs
Team Responsibility• Whole Team Business + Dev are
responsible for Business Success
VS
VS
Average Cycle Time From Product Concept To First Release
OrFrom Capability Request To Capability Deployment
Or
From Defect To Patch
The Business CaseP&L or
ROI or
Time to Break Even
Systems Measurements
Customer Satisfaction
Net Promoter ScoreHighly correlated to market share and long term growth
How likely are you on a scale of 1 to 10 to
refer this product to a peer?
(# of 9’s and 10’s) – (# of 1’s through 6’s)
Total number of responses
System Thinking
Your
Questions?
Lean Software Development
Summary
Using Lean To Improve Processes
Identify what creates value for the customer
Document the value stream – the things we
do that generate value for the customer
Identify the waste in the process
Revise and standardize the process to
reduce the waste
Enforce quality at the source
Continuously improve processes
Lean in summary
Theme Takeaway Eliminate Waste Profit = revenue - cost
Defer Commitment Decide as late as possible
Deliver Fast Respond quickly to changes
See the whole The whole is bigger than the sum of
the parts
and Build Quality In Shorten the feedback loops
Focus on learning Lessons learned and applied
Lean Summary
Think big.
Act small.
Fail fast.
Learn rapidly.
- Mary Poppendieck
Lean References
“Beyond Toyota: How to Root Out Waste and
Pursue Perfection”, James Womack and Daniel
Jones, HBR Sept-Oct 1996
“Decoding the DNA of the Toyota Production
System”, Steven Spear and H. Kent Bowen, HBR,
Sep-Oct 1999.
Toyota Production System, Taiichi Ohno,
Productivity Press
Software by Numbers, Mark Denne & Jane
Cleland-Huang, Prentice Hall
Lean References
Lean Sources
Mary & Tom Poppendieck,
Lean Software Development
Implementing Lean Software Development
Leading Lean Software Development
Lean References
Applying Lean Tools
The Cup Game!
The Cup Game
Four Teams
9 volunteers for each team!
Warehouse Material handler
2 Star assembly persons
2 Half-circle preparation and assembly persons
2 Toothpick sorting and installation persons
2 QA Inspectors
Give yourselves a team name.
It is NOT a competition!
The Cup Game Rules
The goal is to produce as many acceptable
cups as possible in the shortest amount of
time.
All cups must be moved in batches of 3
cups.
All assemblies must match the pictures.
You must have fun.
For the observers, think about the tools.
The Cup Game
The cups can only be moved from station to
station in batches of three cups and can only be
moved by the Warehouse person.
There can be NO MORE than three cups at any
station.
Completed cups must be moved before next set of
cups arrive.
Remember, this is NOT a competition.
The Cup Game
The person at the star station must place two stars
opposite each other and so that two of the points
touch the top edge of the cup (see below).
The Cup Game
The person at the half-circle station must cut the
circles into half-circles and then place them exactly
below each star, straight, and near the bottom of the
cup.
The Cup Game
The person at the toothpick station simply puts
4 different color toothpicks into the cup.
Warehouse
Warehouse person to move
batches in lots of 3 cups.
Star Station
Operator to place 2 stars on each
cup, front and back.
Half-circle Station
Operator to place 2 half-circles on
each cup, front and back.
Toothpick Station
Operator to place 4 toothpicks in
each cup, one of each color.
QA Inspection
Inspector separates the good from
the bad cups.
Good Bad
X
Go!
The Cup Game … Agile Version
What?
Quality Cups
Delivered to the customer
How?
You are a self-organising team
There are No Rules about How
Before we start I suggest
Co-location
Make sure you have the resources
Ready?
Go!
What was different?
What Was Different?
Q&A
Feedback
What should we:
1. Keep Doing
2. Start Doing
3. Stop Doing
NPS: Net Promoter Score
“Would you recommend this classto a peer?”
10-9 Yes!
8-7 Neutral
0-6 No way!