Implementing
Lean Software Development: From Concept to Cash
Interview Discussing BookPrefaceCHAPTER 1 – History
Interchangeable Parts
Interchangeable People
The Toyodas
The Toyota Production
System Taiichi Ohno
Just-in-Time Flow
Autonomation
Shigeo Shingo
Non-Stock Production
Zero Inspection
Just-In-Time
Lean
Lean Operations
Lean Supply Chain
Lean Product Development
Lean Software Development
Try This CHAPTER 2 – Principles
Principles and Practices Software Development
Software
Development
The Seven Principles of
Lean Software Development 1. Eliminate Waste
MYTH: Early Specification Reduces Waste
2. Build Quality In
MYTH: The Job of Testing is to Find Defects
3. Create Knowledge
MYTH: Predictions Create Predictability 4. Defer Commitment
MYTH: Planning Is Commitment
5. Deliver Fast
MYTH: Haste Makes Waste6. Respect People
MYTH: There is One Best Way
7. Optimize The Whole
MYTH: Optimize By Decomposition
Try This
CHAPTER 3 – Value
Lean SolutionsGoogle From Concept to CashConcept
Feasibility Pilot
Cash Delighted CustomersDeep Customer Understanding Focus on the Job
The Customer-Focused Organization
Leadership
Chief Engineer
Leadership Team
Shared Leadership
Who's Responsible?
Complete Teams Design for Operations
Custom Development
From Projects to
Products
IT-Business Collaboration
Accountability
Try This
CHAPTER 4 – WasteWrite Less Code
Zara
Complexity
Justify Every Feature
Minimum Useful Feature Sets
Don't Automate Complexity
The Seven Wastes 1. Partially Done Work
2. Extra Features
3. Lost Knowledge
4. Handoffs
5. Task Switching
6. Delays 7.
Defects
Mapping the Value Stream
Preparation
Choose a Value Stream
Choose to Start and Stop the Timeline
Identify the Value Stream Owner
Keep it Simple
Examples
Example 1
Example 2
Example 3
Example 4
Diagnosis
Future Value Stream Maps
Try This
CHAPTER 5 – Speed
Deliver Fast
PatientKeeper
Time: The Universal Currency
Queuing Theory
Utilization
Cycle Time
Lists & Queues
Reducing Cycle Time
Even Out the Arrival of Work
Minimize the Number of Things-in-Process Minimize the Size of
Things-in-Process
Establish a Regular Cadence
Limit Work to CapacityUse
Pull Scheduling
Summary
Try This
CHAPTER 6 – People
A System of Management
The Boeing 777
W. Edwards Deming
Why Good Programs Fail
Teams
What Makes a Team?
Expertise
Leadership
Responsibility-Based Planning & Control
Visible Workplace
Self-Directing Work
Kanban
Andon
Dashboard
Incentives
Performance
Evaluations
Ranking
Compensation
Guideline #1: Make Sure the Promotion System in Unassailable Guideline
# 2: De-emphasize Annual Raises
Guideline #3: Reward Based on Span of Influence, not Span of Control
Guideline #4: Find Better Motivators than Money
Try This
CHAPTER 7 – Knowledge
Creating Knowledge Rally
What, Exactly, Is Your Problem?
A Scientific Way of Thinking
Keeping Track of What You Know
The A3 Report
The Internet Age
Just-in-Time
CommitmentSet-Based Design
Example 1: Medical Device Interface
Example 2: Red Eye Reduction
Example 3: Pluggable Interfaces
Refactoring
Legacy Systems
Problem Solving A Disciplined Approach
1. Define the Problem
2. Analyze the Situation
3. Create a Hypothesis
4. Experiment
5. Follow up / Standardize
Kaizen Events Large
Group Improvement Events
Try This
CHAPTER 8 – QualityFeedback The
Polaris Program
Release Planning
Architecture
Iterations
Preparation
Iteration Planning
Implementation
Assessment
Example: User Interface
Discipline 5 S's
Standards
Code ReviewsPairing
Mistake-Proofing
Automation Test Driven Development
Unit Tests
Story Tests
Exploratory & Usability Testing
Property Testing Configuration Management Continuous Integration Nested Synchronization
Try This
CHAPTER 9 – Partners
Synergy
Emergency!
Open Source
Global Networks
OutsourcingInfrastructure
Transactions
DevelopmentContracts
The T5 Agreement PS 2000 Relationship Agreements
Try This
CHAPTER 10 – Journey
Where Do You Want To Go?Computer on Wheels
A Long Term Perspective
Centered on People
What Have We Learned?
Six Sigma
Process Leaders – Natural Work Team Leaders
Tools – Results
Theory of Constraints
Critical Chain
Accommodations Implementation Hypothesis
Training
Thinking
Measurement Cycle Time Financial Return
Customer Satisfaction
Roadmap
Try This:
A Twenty One Step Program
Optimize the Whole
Implement
lean across an entire value stream and the complete
product
Restructure the measurements
Reduce the Cost of
Crossing Boundaries
Respect People
Train team leaders /
supervisors
Move
responsibility and decision-making to the lowest
possible level
Foster pride in
workmanship
Deliver Fast
Work
in small batches at a steady cadence
Limit work to capacity
Focus on
cycle time, not utilization
Defer Commitment
Abolish the notion that it is a good practice to start
development with a complete specification