Top Banner
Janelle Klein openmastery.org @janellekz Tour Speaker How to Build a Learning Organization (in 2016) How to Measure the PAIN in Software Development Janelle Klein
145

How to Build a Learning Organization

Jan 11, 2017

Download

Business

Janelle Klein
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: How to Build a Learning Organization

Janelle Kleinopenmastery.org @janellekz

Tour Speaker

How to Build a Learning Organization

(in 2016)

How to Measure the PAIN in Software Development

Janelle Klein

Page 2: How to Build a Learning Organization

Why isn’t EVERYONE Talking About This Book?

Page 3: How to Build a Learning Organization

Then I read this book!

Page 4: How to Build a Learning Organization

“The Art of the Scientist” Lean Startup Workshop, Ash Maurya

Ash: “The goal isn’t learning, the goal is traction.”

Page 5: How to Build a Learning Organization

How to Measure the PAIN in Software Development

Janelle Klein

==

2.0

Then I wrote my book…

Visibility

+

Lean Manufacturing

Page 6: How to Build a Learning Organization

==

2.0

Then I wrote my book…

+

Traction

Page 7: How to Build a Learning Organization

News Flash!For the first time in our industry,

we have all the tools necessary

to pull this off.

Page 8: How to Build a Learning Organization

, Developer & Consultant for 15+ yearsSpecialized in Statistical Process Control (SPC) and Supply Chain Optimization from Lean Manufacturing (I <3 cool data)

Continuous Delivery infrastructure, software design & test automation strategies

Janelle Klein

Who Am I?

How to Measure the PAIN in Software Development

Janelle Klein

leanpub.com/ideaflow

Data-Driven Software Mastery

Tour Speaker

I’m a hobbyist Cognitive Scientist

Page 9: How to Build a Learning Organization

CTO @

Founder @Industry Peer Mentorship Network

My Job

Page 10: How to Build a Learning Organization

Why Should You Care?

source: Domics - “What’s a Shrug?”

Page 11: How to Build a Learning Organization

Every few years we rewrite our software…

Start%Over%

Unmaintainable%So0ware%

Across the Industry

Page 12: How to Build a Learning Organization

We Start with the Best of Intentions

High Quality Code

Low Technical Debt

Easy to Maintain

Good Code Coverage

Page 13: How to Build a Learning Organization

Then This Happens!

Page 14: How to Build a Learning Organization

Constant Urgency

Compromise Safety for Speed

Page 15: How to Build a Learning Organization

Time%Pressure%

Compromise%Safety%for%

Speed%

Increase%Number%&%Severity%of%Hazards%

%

More%Pain%and%Higher%Task%Effort%

Constant'Urgency'

Cycle of Chaos High-Risk Decision Habits

Page 16: How to Build a Learning Organization

Time%Pressure%

Compromise%Safety%for%

Speed%

Increase%Number%&%Severity%of%Hazards%

%

More%Pain%and%Higher%Task%Effort%

Constant'Urgency'

Cycle of Chaos High-Risk Decision Habits

Page 17: How to Build a Learning Organization

Time%Pressure%

Compromise%Safety%for%

Speed%

Increase%Number%&%Severity%of%Hazards%

%

More%Pain%and%Higher%Task%Effort%

Constant'Urgency'

Cycle of Chaos High-Risk Decision Habits

Page 18: How to Build a Learning Organization

Time%Pressure%

Compromise%Safety%for%

Speed%

Increase%Number%&%Severity%of%Hazards%

%

More%Pain%and%Higher%Task%Effort%

Constant'Urgency'

Cycle of Chaos High-Risk Decision Habits

Page 19: How to Build a Learning Organization

Time%Pressure%

Compromise%Safety%for%

Speed%

Increase%Number%&%Severity%of%Hazards%

%

More%Pain%and%Higher%Task%Effort%

Constant'Urgency'

Cycle of Chaos High-Risk Decision Habits

Page 20: How to Build a Learning Organization

PAIN

The Classic Story of Project Failure

Problems get deferred

Builds start breaking

Releases get chaotic

Productivity slows to a crawl

Developers begging for time

It’s never enough

Project Meltdown

Page 21: How to Build a Learning Organization

Our software problems

Create culture problems

Page 22: How to Build a Learning Organization

The Cultural Divide

Contempt

Hopelessness

Self-Deception

Fear Imagining the world we want to live in, instead of seeking truth

Feeling hurt by those who are preventing us from reducing our pain.

Undesirable Reality

Managers: Lack of Visibility

Developers: Lack of Control

Page 23: How to Build a Learning Organization

Fake Happiness

Culture #1: Everything is Awesome!

Page 24: How to Build a Learning Organization

Culture #2: ”Bitch-Bonding”

Validation of Hopelessness

Page 25: How to Build a Learning Organization

This is POINT A!

We fail to communicate, make decisions in ignorance, and don’t adapt when our strategy is obviously failing.

Page 26: How to Build a Learning Organization

Start%Over%

Unmaintainable%So0ware%

This is WHY It Matters:

Page 27: How to Build a Learning Organization

From the Outside:

This is the pattern of a broken feedback loop.

Page 28: How to Build a Learning Organization

Product(Requirements( So1ware(Task(

Possible(Decision(Paths(

So1ware(

Software is a Reflection of our Decisions

Page 29: How to Build a Learning Organization

Product(Requirements( So1ware(Task(

High%Risk%Decision%Habits%

So1ware((and(all(our(problems)(

(

RESET

Software is a Reflection of our Decisions

Page 30: How to Build a Learning Organization

Product(Requirements( So1ware(Task(

High%Risk%Decision%Habits%

So1ware((and(all(our(problems)(

(

Technical Debt is just a Symptom of the Problem

Software is a Reflection of our Decisions

Page 31: How to Build a Learning Organization

Learn & Adapt

Just because we repair the car… doesn’t mean we know how to drive.

Page 32: How to Build a Learning Organization

Learn & Adapt

How do we build a learning organization?

We want to drive our projects like THIS:

Page 33: How to Build a Learning Organization

Make the PAIN Visible (see waste)

Step ONE:

Page 34: How to Build a Learning Organization

Great Team Disciplined with Best Practices Constantly Working on Improvements+

Project FAILURE

About 8 years ago…

Page 35: How to Build a Learning Organization

Technical Debt Mistakes

I thought the main obstacle was Technical Debt

Page 36: How to Build a Learning Organization

?Most of our mistakes were in the

most well-written parts of the code.

Mistakes

Page 37: How to Build a Learning Organization

We made significantly more mistakes in code that we didn’t write ourselves.

Lower Familiarity

More Mistakes=

There had to be more to the story...

Page 38: How to Build a Learning Organization

Complex(So*ware(

PAIN

This is what I knew...

What made development feel painful?

Page 39: How to Build a Learning Organization

Unexpected Behavior

Problem Resolved

Measure Painful Interaction with the Code (Friction)

Troubleshooting

Progress

5 hours and 18 minutes of troubleshooting...

PAINFUL

Page 40: How to Build a Learning Organization

The amount of PAIN was caused by…

Likeliness(of((Unexpected(Behavior(

Cost(to(Troubleshoot(and(Repair(

High(Frequency(Low(Impact(

Low(Frequency(Low(Impact(

Low(Frequency(High(Impact(

PAIN(

Page 41: How to Build a Learning Organization

What Causes Unexpected Behavior (likeliness)?

What Makes Troubleshooting Time-Consuming (impact)?

Semantic Mistakes

Stale Memory Mistakes

Association Mistakes

Bad Input Assumption

Tedious Change Mistakes

Copy-Edit Mistakes

Transposition Mistakes

Failed Refactor Mistakes

False Alarm

Non-Deterministic Behavior

Ambiguous Clues

Lots of Code Changes

Noisy Output

Cryptic Output

Long Execution Time

Environment Cleanup

Test Data Creation

Using Debugger

Most of the pain was caused by human factors.

What causes PAIN?

Page 42: How to Build a Learning Organization

What Causes Unexpected Behavior (likeliness)?

What Makes Troubleshooting Time-Consuming (impact)?

Non-Deterministic Behavior

Ambiguous Clues

Lots of Code Changes

Noisy Output

Cryptic Output

Long Execution Time

Environment Cleanup

Test Data Creation

Using Debugger

What causes PAIN?

Most of the pain was caused by human factors.

Semantic Mistakes

Stale Memory Mistakes

Association Mistakes

Bad Input Assumption

Tedious Change Mistakes

Copy-Edit Mistakes

Transposition Mistakes

Failed Refactor Mistakes

False Alarm

Page 43: How to Build a Learning Organization

What Causes Unexpected Behavior (likeliness)?

What Makes Troubleshooting Time-Consuming (impact)?

Non-Deterministic Behavior

Ambiguous Clues

Lots of Code Changes

Noisy Output

Cryptic Output

Long Execution Time

Environment Cleanup

Test Data Creation

Using Debugger

What causes PAIN?

Semantic Mistakes

Stale Memory Mistakes

Association Mistakes

Bad Input Assumption

Tedious Change Mistakes

Copy-Edit Mistakes

Transposition Mistakes

Failed Refactor Mistakes

False Alarm

Most of the pain was caused by human factors.

Page 44: How to Build a Learning Organization

What Causes Unexpected Behavior (likeliness)?

What Makes Troubleshooting Time-Consuming (impact)?

Non-Deterministic Behavior

Ambiguous Clues

Lots of Code Changes

Noisy Output

Cryptic Output

Long Execution Time

Environment Cleanup

Test Data Creation

Using Debugger

What causes PAIN?

PAIN is a consequence of how we interact with the code.

Semantic Mistakes

Stale Memory Mistakes

Association Mistakes

Bad Input Assumption

Tedious Change Mistakes

Copy-Edit Mistakes

Transposition Mistakes

Failed Refactor Mistakes

False Alarm

Page 45: How to Build a Learning Organization

PAIN occurs during the process of understanding and extending the software

Complex(So*ware(

PAIN

Not the Code.

Optimize “Idea Flow”

Page 46: How to Build a Learning Organization

My team spent tons of time working on improvements that didn’t make much difference.

We had tons of automation, but the automation didn’t catch our bugs.

Page 47: How to Build a Learning Organization

My team spent tons of time working on improvements that didn’t make much difference.

We had well-modularized code,

but it was still extremely time-consuming to troubleshoot defects.

Page 48: How to Build a Learning Organization

The hard part isn’t solving the problems it’s identifying the right problems to solve.

“What are the specific problems that are causing the team’s pain?”

Page 49: How to Build a Learning Organization

measures the time spent on:

Idea Flow

x

Troubleshooting

x

Learning

x

Rework

Quality Risk Familiarity Risk Assumption Risk

Page 50: How to Build a Learning Organization

Quality Risk (Troubleshooting)

Likelihood)of))Unexpected)Behavior)

Cost)to)Troubleshoot)and)Repair)

High)Frequency)Low)Impact)

Low)Frequency)Low)Impact)

Low)Frequency)High)Impact)

PAIN)

Page 51: How to Build a Learning Organization

Familiarity Risk (Learning)

Likelihood)of))working)with)Unfamiliar)

Code)

Cost)to)Learn)

High)Frequency)Easy)to)Learn)

Low)Frequency)Easy)to)Learn)

Low)Frequency)Hard)to)Learn)

PAIN)

Page 52: How to Build a Learning Organization

Assumption Risk (Rework)

Likelihood)of))making)a))

Bad)Assump4on)

Cost)to)Correct)Decisions)

High)Uncertainty)Low)Delay)

Low)Uncertainty)Low)Delay)

Low)Uncertainty)High)Delay)

PAIN)

Page 53: How to Build a Learning Organization

Idea Flow Mapping Tools

(Open Source, Supported GA ~June 2016)github.com/ideaflow/tools

Page 54: How to Build a Learning Organization

Troubleshooting

Progress

Learning

7:070:00

0:00 19:52

12 year old project after all original developers left.

Case Study: Huge Mess with Great Team

70-90% of dev capacity on “friction”

Page 55: How to Build a Learning Organization

The Team’s Improvement Focus: Increasing unit test coverage by 5%

Case Study: Huge Mess with Great Team

1. Test Data Generation

2. Merging Problems

3. Repairing False Alarms

1000 hours/month

The Biggest Problem: ~700 hours/month generating test data

Page 56: How to Build a Learning Organization

18 months after a Micro-Services/Continuous Delivery rewrite.

Troubleshooting

Progress

Learning40-60% of dev capacity on “friction”

0:00 28:15

12:230:00

Case Study: From Monolith to Microservices

Page 57: How to Build a Learning Organization

18 months after a Micro-Services/Continuous Delivery rewrite.

Troubleshooting

Progress

Learning40-60% of dev capacity on “friction”

0:00 28:15

12:230:00

Case Study: From Monolith to Microservices

Page 58: How to Build a Learning Organization

The Cost of Chaos

0%

100%

Release 1 Release 2 Release 3

Troubleshooting

Progress

Learning

Percentage Capacity spent on Troubleshooting (red) and Learning (blue)

(extrapolated from samples)

Page 59: How to Build a Learning Organization

0%

100%

Release 1 Release 2 Release 3

Percentage Capacity spent on Troubleshooting (red) and Learning (blue)

Figure out what to do Learning is front-loaded

Troubleshooting

Progress

Learning

The Cost of Chaos

Page 60: How to Build a Learning Organization

0%

100%

Release 1 Release 2 Release 3

Percentage Capacity spent on Troubleshooting (red) and Learning (blue)

Rush Before the Deadline Validation is Deferred

Troubleshooting

Progress

Learning

The Cost of Chaos

Page 61: How to Build a Learning Organization

0%

100%

Release 1 Release 2 Release 3

Percentage Capacity spent on Troubleshooting (red) and Learning (blue)

Pain Builds Baseline friction keeps rising

Troubleshooting

Progress

Learning

The Cost of Chaos

Page 62: How to Build a Learning Organization

0%

100%

Release 1 Release 2 Release 3

Percentage Capacity spent on Troubleshooting (red) and Learning (blue)

Chaos Reigns Unpredictable work stops

fitting in the timebox

Troubleshooting

Progress

Learning

The Cost of Chaos

Page 63: How to Build a Learning Organization

Step TWO:

Focus on the Biggest Pain (eliminate waste)

Page 64: How to Build a Learning Organization

“What caused the pain in this case?”

Categorize the Problems with #HashTags

#ReportingEngine

#Hibernate

#MergeHell

Page 65: How to Build a Learning Organization

1. Test Data Generation

2. Merging Problems

3. Repairing False Alarms

1000 hours/month

Add up the Pain by Category

Page 66: How to Build a Learning Organization

Friction % by Area of Code

What’s the biggest problem to solve?

Page 67: How to Build a Learning Organization

Friction % versus Upcoming Demand

What’s the biggest problem to solve?

Page 68: How to Build a Learning Organization

What’s the biggest problem to solve?

Friction % Grouped by Familiar vs Unfamiliar

Page 69: How to Build a Learning Organization

Added Complexity: Human Relationships

Page 70: How to Build a Learning Organization

14:230:00

George’s Painful Experience

Added Complexity: Human Relationships

What made troubleshooting take so long?

This is scary as hell.

Page 71: How to Build a Learning Organization

Step up and lead, and those you lead will

reflect your feelings toward them.

The Reflection Principle

Ideas from:

Page 72: How to Build a Learning Organization

Culture is an Emergent Property of a Complex Adaptive System

Page 73: How to Build a Learning Organization

Culture is an Emergent Property of a Complex Adaptive System

There is only “I” who chooses.

The only thing we actually control:

Personal Mindset

Page 74: How to Build a Learning Organization

Lead with a C.L.E.A.R. MindsetA mindset is a principle of continuous choice.

Courage.

Leadership.

Empathy.Authenticity.

Respect.

Page 75: How to Build a Learning Organization

14:230:00

George’s Painful Experience

When it’s scary,

You do it anyway.

Lead with a C.L.E.A.R. Mindset

Page 76: How to Build a Learning Organization

14:230:00

George’s Painful Experience

When you see pain,

You teach.

Lead with a C.L.E.A.R. Mindset

Page 77: How to Build a Learning Organization

14:230:00

George’s Painful Experience

When you have an idea,

You share it.

Lead with a C.L.E.A.R. Mindset

Page 78: How to Build a Learning Organization

14:230:00

George’s Painful Experience

When you hear an idea,

You try to understand it.

Lead with a C.L.E.A.R. Mindset

Page 79: How to Build a Learning Organization

14:230:00

George’s Painful Experience

When you see a problem with no owner,

You take responsibility.

Lead with a C.L.E.A.R. Mindset

Page 80: How to Build a Learning Organization

14:230:00

George’s Painful Experience

If you see a struggling leader,

You help them to be a better leader.

Lead with a C.L.E.A.R. Mindset

Page 81: How to Build a Learning Organization

14:230:00

George’s Painful Experience

“I am human.” “I am human.”

Lead with a C.L.E.A.R. Mindset

Page 82: How to Build a Learning Organization

14:230:00

George’s Painful Experience

“I am valuable.” “I am valuable.”

Lead with a C.L.E.A.R. Mindset

Page 83: How to Build a Learning Organization

14:230:00

George’s Painful Experience

“You are human.” “You are human.”

Lead with a C.L.E.A.R. Mindset

Page 84: How to Build a Learning Organization

14:230:00

George’s Painful Experience

“You are valuable.” “You are valuable.”

(Respect)

Lead with a C.L.E.A.R. Mindset

Page 85: How to Build a Learning Organization

Lead with a C.L.E.A.R. MindsetA mindset is a principle of continuous choice.

Courage.

Leadership.

Empathy.Authenticity.

Respect.

Page 86: How to Build a Learning Organization

These Energies Repel Each Other

Contempt

Hopelessness

Self-Deception

Fear

Page 87: How to Build a Learning Organization

Contempt

Hopelessness

Self-Deception

FearC.L.E.A.R.

C.L.E.A.R.

Seeking Truth

Page 88: How to Build a Learning Organization

Repair the Broken Feedback Loop

Step THREE:

(systems thinking)

Page 89: How to Build a Learning Organization

Learn & Adapt

The Challenge: Decision-Making is Distributed

We want to drive our projects like THIS:

Page 90: How to Build a Learning Organization

What if our organization was a robot?

Fire x1

Dev Team

Management

Nothing’s happening…

Pain Sensor

Page 91: How to Build a Learning Organization

What if our organization was a robot?

Fire x1

Dev Team

Management

Fire x10

Pain Sensor

Page 92: How to Build a Learning Organization

Management

Dev Team

Fire x10

What if our organization was a robot?

If communication breaks down, we can’t adapt.

Pain Sensor

Page 93: How to Build a Learning Organization

Learn & Adapt

Role

Decision(Type(

Required(Knowledge(

Visibility and Decisions Coupled

Visibility and Decisions De-coupled

Role A

Required(Knowledge(

Role B

Decision(Type(

Broken Feedback Loop is Baked into the Design

Page 94: How to Build a Learning Organization

Manager

Alloca&on(Decisions(

Knowledge(of(Risks(

Risk(Mgmt(Decisions(

Developer

Communication Breakdown

Broken Feedback Loop (Manager Role)

Page 95: How to Build a Learning Organization

Developer Product Owner

Actual'Risks'

interacts''with'

Actual'Customers'

interacts''with'

Knowledge'of'Customers'

Trade9off'Decisions'

depend'on'depend'on'Knowledge'of'Risks'

Communication Breakdown

Broken Feedback Loop (Product Owner Role)

Page 96: How to Build a Learning Organization

Risk Translator

Engineering(Execution)

Management(Coordination)

Risk is the bridge language.

We have to Repair the Broken Feedback Loop

Page 97: How to Build a Learning Organization

Manager

Alloca&on(Decisions(

Knowledge(of(Risks(

Risk(Mgmt(Decisions(

Developer

RiskTranslator

Risk(Summary(

Refactor Step 1: Risk Translator

Page 98: How to Build a Learning Organization

Manager

Alloca&on(Decisions(

Knowledge(of(Risks(

Risk(Mgmt(Decisions(

Developer

RiskTranslator

Risk(Summary(

Refactor Step 1: Risk Translator

The Risk Translator provides monthly

“Project Visibility Updates”

In the language of:

Quality Risk

Familiarity Risk

Assumption Risk

Page 99: How to Build a Learning Organization

So#ware(Task(

Mi.gate(the(Risks(

Product(Development(

Product(Work(Queue(

Risk(Mgmt(Work(Queue(

Product(Owner(

Product(Decisions(

Knowledge(of(Customers(

Dev$Team$Capacity$

Alloca.on(Decisions(

Manager2Translator$Partnership$

Risk(Mgmt(Decisions(

Knowledge(of(Risks(

Refactor Step 2: Partnership

Page 100: How to Build a Learning Organization

Dedicated resources (1 or 2 developers)

Translator partners with manager to identify and prioritize highest leverage improvement opportunities

Continue to share Project Visibility Updates each month

3-Month Improvement Trial

Page 101: How to Build a Learning Organization

Now we can steer!!

So#ware(Task(

Mi.gate(the(Risks(

Product(Development(

Product(Work(Queue(

Risk(Mgmt(Work(Queue(

Product(Owner(

Product(Decisions(

Knowledge(of(Customers(

Technical(Risk(Manager(

Risk(Mgmt(Decisions(

Knowledge(of(Risks(

Dev$Team$Capacity$

Manager

Alloca.on(Decisions(

Refactor Step 3: Technical Risk Manager

Page 102: How to Build a Learning Organization

Optimize for Safety

Step FOUR:

(continuous improvement)

Page 103: How to Build a Learning Organization

Quality Target

Lower Control Limit

Upper Control Limit

X"

This is “Out of Control”

Lower Variability = Better Control

Steering Wheel = Process Control

Page 104: How to Build a Learning Organization

“Pain Control” in Software Development

Optimal Friction

Upper Control Limit X"

“Out of Control”

20min

0m

Average Pain per Incident

This is Better

Target

Control Limit

Categorize the Pain Type

Page 105: How to Build a Learning Organization

Time%Pressure%

Compromise%Safety%for%

Speed%

Increase%Number%&%Severity%of%Hazards%

%

More%Pain%and%Higher%Task%Effort%

Constant'Urgency'

Cycle of Chaos High-Risk Decision Habits

Page 106: How to Build a Learning Organization

0%

100%

Release 1 Release 2 Release 3

Percentage Capacity spent on Troubleshooting (red) and Learning (blue)

Chaos Reigns Unpredictable work stops

fitting in the timebox

Troubleshooting

Progress

Learning

Gambling Habit —> Gradual Loss of CONTROL

Page 107: How to Build a Learning Organization

Fewer%Problems%to%

Fix%

Stop%%and%Think%

Mi8gate%the%Risk%

Increased%Produc8vity%

and%Innova8on%

Safety'

Cycle of Safety Low-Risk Decision Habits

Page 108: How to Build a Learning Organization

Fewer%Problems%to%

Fix%

Stop%%and%Think%

Mi8gate%the%Risk%

Increased%Produc8vity%

and%Innova8on%

Safety'

Cycle of Safety Low-Risk Decision Habits

Page 109: How to Build a Learning Organization

Fewer%Problems%to%

Fix%

Stop%%and%Think%

Mi8gate%the%Risk%

Increased%Produc8vity%

and%Innova8on%

Safety'

Cycle of Safety Low-Risk Decision Habits

Page 110: How to Build a Learning Organization

Fewer%Problems%to%

Fix%

Stop%%and%Think%

Mi8gate%the%Risk%

Increased%Produc8vity%

and%Innova8on%

Safety'

Cycle of Safety Low-Risk Decision Habits

Page 111: How to Build a Learning Organization

Input: Decision Constraints

Target: Optimize the Rate of Idea Flow

short-term loop long-term loop

1. Visibility

2. Clarity

3. Awareness

F ocus!

Output: “Friction” in Idea Flow

Improve Quality of Decisions

Steering Wheel = Pain Control System

Page 112: How to Build a Learning Organization

Input: Decision Constraints

Target: Optimize the Rate of Idea Flow

short-term loop long-term loop

1. Visibility

2. Clarity

3. Awareness

F ocus!

Output: “Friction” in Idea Flow

Target - The direction of “better”

Target: Optimize the Rate of Idea Flow

Steering Wheel = Pain Control System

Page 113: How to Build a Learning Organization

Input: Decision Constraints

Target: Optimize the Rate of Idea Flow

short-term loop long-term loop

1. Visibility

2. Clarity

3. Awareness

F ocus!

Output: “Friction” in Idea Flow

Input - The constraints that limit our short-term choices…

Steering Wheel = Pain Control System

Page 114: How to Build a Learning Organization

Input: Decision Constraints

Target: Optimize the Rate of Idea Flow

short-term loop long-term loop

1. Visibility

2. Clarity

3. Awareness

F ocus!

Output: “Friction” in Idea Flow

Output - The pain signal we’re trying to improve

Steering Wheel = Pain Control System

Page 115: How to Build a Learning Organization

Input: Decision Constraints

Target: Optimize the Rate of Idea Flow

short-term loop long-term loop

1. Visibility

2. Clarity

3. Awareness

F ocus!

Output: “Friction” in Idea Flow

Focus on the biggest pain…

F ocus!

Steering Wheel = Pain Control System

Page 116: How to Build a Learning Organization

Input: Decision Constraints

Target: Optimize the Rate of Idea Flow

short-term loop long-term loop

1. Visibility

2. Clarity

3. Awareness

F ocus!

Output: “Friction” in Idea Flow

1. Visibility - Identify the specific patterns

1. Visibility

Steering Wheel = Pain Control System

Page 117: How to Build a Learning Organization

Input: Decision Constraints

Target: Optimize the Rate of Idea Flow

short-term loop long-term loop

1. Visibility

2. Clarity

3. Awareness

F ocus!

Output: “Friction” in Idea Flow

2. Clarity - Understand cause and effect

2. Clarity

Steering Wheel = Pain Control System

Page 118: How to Build a Learning Organization

Input: Decision Constraints

Target: Optimize the Rate of Idea Flow

short-term loop long-term loop

1. Visibility

2. Clarity

3. Awareness

F ocus!

Output: “Friction” in Idea Flow

3. Awareness

3. Awareness - Stop and think to adjust habits

Steering Wheel = Pain Control System

Page 119: How to Build a Learning Organization

Input: Decision Constraints

Target: Optimize the Rate of Idea Flow

short-term loop long-term loop

1. Visibility

2. Clarity

3. Awareness

F ocus!

Output: “Friction” in Idea Flow

Run Experiments to Learn What Works

Steering Wheel = Pain Control System

Page 120: How to Build a Learning Organization

Input: Decision Constraints

Target: Optimize the Rate of Idea Flow

short-term loop long-term loop

1. Visibility

2. Clarity

3. Awareness

F ocus!

Output: “Friction” in Idea Flow

Systematically Improve the Quality of Decisions

Steering Wheel = Pain Control System

Page 121: How to Build a Learning Organization

What’s a Decision Principle?

Big Pain

Little Pain

Trade-off Decision

Answers two questions:

How do I evaluate my situation?

What should I optimize for?

Explicit “Know How”

Page 122: How to Build a Learning Organization

The Haystack Principle

Lots of unvalidated changes

Easier to find the needle.

Example: The Haystack Principle (batch size)

Optimize for small manageable haystacks.

Page 123: How to Build a Learning Organization

Optimal Friction

Upper Control Limit X"

“Out of Control”

20min

0m

Average Friction per Incident

Target Rate

Control Limit

Decision Principles give us the capability to do this:

High Friction

Min Friction

Process Control is the Discipline of the Feedback Loop(six-sigma)

Page 124: How to Build a Learning Organization

Optimal Friction

Upper Control Limit X"

“Out of Control”

20min

0m

Average Pain per Incident

This is Mastery

Target Rate

Control Limit

This is the Process of Mastery

Categorize the Pain TypeHigh Pain

Min Pain

Page 125: How to Build a Learning Organization

Optimal Friction

Upper Control Limit X"

“Out of Control”

20min

0m

Average Friction per Customer

This is Traction

This is the Process of Lean Startup

High Friction

Min Friction

“No” Threshold

Customer Happiness

Categorize the “No” Type

Page 126: How to Build a Learning Organization

Optimize Traction Along Three Dimensions Three Dimensions of Organizational Knowledge

Discovery (Expansion)

Peer Mentorship (Diffusion)

Optimize the Whole (Acceleration)

“Decision Principles” (models)

Page 127: How to Build a Learning Organization

Decisions are managed by a distributed Network of Open Mastery Circles

Page 128: How to Build a Learning Organization

The Open Mastery Circle

Circle Leader

Circle Member

Focus: What’s the problem to solve?

Observe: Ask questions about the facts

Conclude: What’s causing the pain?

Optimize: How do we reduce pain?

Learn: What questions does this raise?

Observation Questions

Make a F.O.C.O.L Point!

Summarize ideas in a #HashTagged Blog.

(problem-solving focus meetings)

Page 129: How to Build a Learning Organization

Discovery (Expansion)

Peer Mentorship (Diffusion)

Optimize the Whole (Acceleration)

Priority 1

Priority 2

Priority 3

Priority 1

Priority 2

Priority 3

Priority 1

Priority 2

Priority 3

Risk Management Becomes an Investment Decision

Biggest Pains

$$Biggest Skill Gaps

$Limiting Constraints

$$$$

Page 130: How to Build a Learning Organization

4. Optimize the Whole

2. Design the Strategy

1. Identify Obstacles (Focus)

3. Learn What Works (Traction)

Steering Wheel

Create a Steering Wheel to Drive the Organization!

$$ $$

Page 131: How to Build a Learning Organization

4. Optimize the Whole

2. Design the Strategy

1. Identify Obstacles (Focus)

3. Learn What Works (Traction)

Steering Wheel

$$ $$“know how”

Create a Steering Wheel to Drive the Organization!

Page 132: How to Build a Learning Organization

Focus: Quality of Improvement Decisions

Focus Traction

$$$ $$

Focus: Quality of Investment Decisions

Risk Translator

(interface)

Management(Coordination)

Engineering(Execution)

Open Mastery Learning Framework

Idea Flow Pain Sensor

Page 133: How to Build a Learning Organization

How to Measure the PAIN in Software Development

Janelle Klein

These are the Blueprints!

++

Page 134: How to Build a Learning Organization

We have the opportunity to take our organizations to a whole new level of effectiveness

If we choose to do it.

I Came Here to Say:

Page 135: How to Build a Learning Organization

Why? Because this REALLY Sucks.

The problem: Our blueprints are broken!

93% of problems are caused by the system - Deming

Page 136: How to Build a Learning Organization

LEARN YOUR WAY TO AWESOME.

Here’s Your Personal Invite:

Page 137: How to Build a Learning Organization

The Conversation is on Slack

We’re debating the patterns and principles of Idea Flow in Wikipedia

It’s a Developer Party!

We’re sharing our ideas over Blogs

(and managers are invited)

Page 138: How to Build a Learning Organization

Industry Peer Mentorship Network

Companies

Community Groups

“Pay it Forward”

HQ in AustinOpen Mastery

Austin (meetup.com)

Page 139: How to Build a Learning Organization

Let’s Make the PAIN Visible!

How to Measure the PAIN in Software Development

Janelle Klein

+

Page 140: How to Build a Learning Organization

Running Lean Ash Maurya

Scaling Lean Ash Maurya

The Lean Startup Eric Reis

…then Learn our Way to AWESOME!

Page 141: How to Build a Learning Organization

…and have a conversation about THIS:

Personal Mastery

Mental Models

Shared Vision

Team Learning

Systems Thinking

As an industry.

Page 142: How to Build a Learning Organization

Join the Conversation

LEARN YOUR WAY TO AWESOME.

THIS PRINCIPLE

if you BELIEVE IN

Page 143: How to Build a Learning Organization

Open Mastery is a roadmap that takes us from where we are to where we want to be

Point A Point AWESOME.

AS AN INDUSTRY.

(Why? Because Open Mastery is a Learning Organization!)

Page 144: How to Build a Learning Organization

You’re invited to the party! openmastery.org

LEARN YOUR WAY TO AWESOME.

Page 145: How to Build a Learning Organization

openmastery.org

@janellekz