SlideShare uma empresa Scribd logo
1 de 158
Baixar para ler offline
Janelle Klein
openmastery.org @janellekz
Let’s Make the PAIN Visible!
Tour Speaker
What’s the Problem?
source: Domics - “What’s a Shrug?”
Every few years we rewrite our software…
Start%
Over%
Unmaintainable%
So0ware%
Across the Industry
We Start with the Best of Intentions
High Quality Code
Low Technical Debt
Easy to Maintain
Good Code Coverage
Then This Happens!
Stages of Escalating Project Risk
Product Owner: “We’ve got more important things to do.”
Deferring(
Problems(
Deferring(
Problems(
Painful(
Releases(
Manager: “Good job everyone! Keep up that great work ethic!”
Stages of Escalating Project Risk
Deferring(
Problems(
Painful(
Releases(
Thrashing)
Manager: “We need to go faster! Let’s hire more developers.”
Stages of Escalating Project Risk
Deferring(
Problems(
Painful(
Releases(
Thrashing)
Project(
Meltdown(
Developer: “I give up. I don’t care anymore if the project fails.”
Stages of Escalating Project Risk
RESET
“A description of the goal is not a strategy.”
-- Richard P. Rumelt
What’s wrong with our current strategy?
Our “Strategy” for Success
High Quality Code
Low Technical Debt
Easy to Maintain
Good Code Coverage
RESET
“A good strategy is a specific and coherent response to—
and approach for overcoming—the obstacles to progress.”
-- Richard P. Rumelt
The problem is we don’t have a strategy...
What are the biggest obstacles that
prevent us from breaking the cycle?
Start%
Over%
Unmaintainable%
So0ware%
Why Can’t We Break the Cycle?
Consulting with Failing Projects
Engineers: “We’re going to CRASH!”
Manager: “What do I do? We can’t miss these deadlines.”
Obstacle #1:
Managers and Developers might as well be
speaking different languages.
Obstacle #2:
We spend tons of time working on improvements that
don’t actually make much difference.
The ROOT CAUSE of
BOTH PROBLEMS:
Lack of Visibility
Let’s Make the PAIN Visible!
Great Team
Disciplined with Best Practices
Constantly Working on Improvements+
Project FAILURE
About 8 years ago…
Technical Debt Mistakes
I thought the main obstacle was
Technical Debt
?
Most of our mistakes were in the
most well-written parts of the code.
Mistakes
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...
Complex(
So*ware(
PAIN
This is what I knew...
What made development feel painful?
Unexpected
Behavior
Problem
Resolved
Measure Painful Interaction with the Code (Friction)
Troubleshooting
Progress
5 hours and 18 minutes of troubleshooting...
PAINFUL
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(
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?
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
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.
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
The Consequences of Problem-Breakdown
7:01
Iterative Validation with Unit Tests
7:010:00
14:230:00
Skipping Tests and Validating at the End
7:01
Iterative Validation with Unit Tests
7:010:00
14:230:00
Skipping Tests and Validating at the End
Urgency Leads to High-Risk Decisions
If I make no mistakes I save ~2 hours.
If I make several mistakes I lose ~8 hours.
The Consequences of Problem-Breakdown
Product(
Requirements( So1ware(Task(
Possible(Decision(Paths(
So1ware(
Software is a Reflection of our Decisions
Product(
Requirements( So1ware(Task(
High%Risk%
Decision%Habits%
So1ware(
(and(all(our(problems)(
(
RESET
Software is a Reflection of our Decisions
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
PAIN occurs during the process of
understanding and extending the software
Complex(
So*ware(
PAIN
Not the Code.
Optimize “Idea Flow”
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.
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.
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?”
measures the time spent on:
Idea Flow
x
Troubleshooting
x
Learning
x
Rework
Quality Risk Familiarity Risk Assumption Risk
Why Measure These Things?
x
Troubleshooting
x
Learning
x
Rework
measures the time spent on:
Idea Flow
The Rhythm of Software Development
Write a little code.
Work out the kinks.
Write a little code.
Work out the kinks.
Write a little code.
Work out the kinks.
The Rhythm of Software Development
ConflictConfirm
Rework'
Learn'
Validate(
Modify'
Progress Loop Conflict Loop
Troubleshoot'
The Rhythm of Software Development
ConflictConfirm
Rework'
Learn'
Validate(
Modify'
Progress Loop Conflict Loop
Troubleshoot'
Confirmed
Expectations
Our brain works like a giant prediction engine…
Violated
Expectations
Our brain works like a giant prediction engine…
ConflictConfirm
Rework'
Learn'
Validate(
Modify'
Progress Loop Conflict Loop
Troubleshoot'
The Rhythm of Idea Flow
Write a little code. Work out the kinks.
ConflictConfirm
Rework'
Learn'
Validate(
Modify'
Progress Loop Conflict Loop
Troubleshoot'
The Rhythm of Idea Flow
“Friction” in Idea Flow
ConflictConfirm
Rework'
Learn'
Validate(
Modify'
Progress Loop Conflict Loop
Troubleshoot'
Idea Flow Mapping Tools
(Open Source, Supported GA ~June 2016)
github.com/ideaflow/tools
Typical Idea Flow Maps
Single Problem
Multi-Problem
Reading Visual Indicators in Idea Flow Maps
Le#$Atrium$
Le#$Ventricle$
Right$Ventricle$
Right$Atrium$
What’s$causing$this$pa7ern?$
Similar to how an EKG helps doctors diagnose heart problems...
...Idea Flow Maps help developers diagnose software problems.
Problem-Solving
Machine
Reading Visual Indicators in Idea Flow Maps
= Solution Strategy
The “Heart” of Software Development
(the problem-solving machine)
= Solution Strategy
The “Heart” of Software Development
(the problem-solving machine)
Choose a general strategy
= Solution Strategy
The “Heart” of Software Development
(the problem-solving machine)
Understand the system
= Solution Strategy
The “Heart” of Software Development
(the problem-solving machine)
Code & work out the kinks
= Solution Strategy
The “Heart” of Software Development
(the problem-solving machine)
Back to the drawing board
The type of friction we experience depends on where the
disruptions are in the problem-solving process
Trial and Error
The Friction is Here
Troubleshooting
Progress
Learning
Rework
Struggling with Understanding the Code
The Friction is Here
Troubleshooting
Progress
Learning
Rework
Struggling with Feedback
The Friction is Here
Troubleshooting
Progress
Learning
Rework
Every task is a problem-solving task.
The Ten Pains of Software Development
Troubleshooting
Progress
Learning
Rework
The Ten Pains of Software Development
Design-Fit Pain - When the new feature doesn’t
fit well into the existing design.
The Ten Pains of Software Development
Requirements Pain - Bad assumptions about
what functionality to build
The Ten Pains of Software Development
Collaboration Pain - Challenges collaborating with
other developers on the team.
The Ten Pains of Software Development
Modeling Pain - When it’s difficult to build a
conceptual model of the existing software.
The Ten Pains of Software Development
Cognitive Pain - Challenges with complexity
and intense thinking
The Ten Pains of Software Development
Alarm Pain - Challenges with false alarms and
test maintenance
The Ten Pains of Software Development
Experiment Pain - Challenges with getting
feedback by running experiments
The Ten Pains of Software Development
Execution Pain - When changing the code is
highly mistake-prone
The Ten Pains of Software Development
An amplifying effect on other problems
100 hours
50 hours
Troubleshooting
Learning
Rework
Why categorize problems this way?
Focused Effort = Visible Improvement
The hard part isn’t solving the problems
it’s identifying the right problems to solve.
Visibility Changes Everything!!
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”
The Team’s Improvement Focus:
Increasing unit test coverage by 5%
Case Study: Huge Mess with Great Team
Tags: #problemtag
Tag the Examples by Type
“What seems to be our
biggest cause of pain?”
Add up the Friction by Tag
#ReportingEngine
#Hibernate
#MergeHell
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
“Experiment Pain”
16:10
What’s causing all the Experiment Pain?
Experiment
Time
Our Perception of Time was WAY OFF
Setup Experiment Analyze Results &
Decide Next Experiment
Execute
waiting - time goes slow
doing - time zooms by
Experiment*Pain*
!Numerous!Feedback!Loops!
Itera&ve(Narrowing(
Ambiguous(Clue(
Non6determinis&c(
Lots(of(Test(Cases(
Lots(of(Bugs(
Bad(Input(Assump&on(
Uncertainty(
Difficult(to(Interpret(
Experiment*Pain*
!Slow!Feedback!Loops!
Long%Execu+on%
Noisy%Output%
Limited%Output%
Complex%Behavior%
Non<determinis+c%Behavior%
Lots%of%Code%Changes%
Difficult%to%Interpret%
Test%Input%Genera+on%
Environment%Setup%
Environment%Cleanup%
Have%to%significantly%modify%a%test%
Debugger%
Breakdown the Causes of Pain into Patterns
“Experiment Pain”
16:10
Optimizing for Human Cycles instead of Execution
Distill Lessons Learned into
“Decision Principles”
Answers two questions
How do I evaluate my situation?
What should I optimize for?
Trade-off Decisions
The Code Sandwich Principle
The thickness of the
sandwich increases
troubleshooting
difficulty
Behavior Complexity
Observability
Ease of Manipulation
Optimize for low diagnostic difficulty.
“Alarm Pain”
Six hours of troubleshooting and repairing tests
when nothing is broken.
The Waxy Coating Principle
Optimize the signal to noise ratio.
Software
(before)
Software
(after)
Tests are like a waxy coating poured over the code.
Friction in the BRAND NEW microservices code…
27:15
“Why is there so much friction?”
This is Painful!
Application
Usability
Problems
3rd Party
Dependencies
Upstream
Components
Usability problems cascade through dependencies
90% 10%
This is Painful!
Application
Usability
Problems
3rd Party
Dependencies
Upstream
Components
The Complexity is in the Supply Chain
The Challenge of our Industry: Growing Complexity
Cost
&
Risk
Complexity
Cumulative Complexity in Software Development
Human
Limitations
Cost
&
Risk
Complexity
Human
Limitations
Cumulative Complexity in Shared SW Supply Chain
(i.e. shared dumping ground of crappy software)
Bad software has become the new environment pollution.
The Challenge of our Industry: Growing Complexity
Make the PAIN Visible!
What Can We Do About It?
“The Idea Flow Factory”
(supply chain model)
Optimize the Rate of Idea Flow
Across the Organization (or the Industry)
18 months after a Micro-Services/Continuous Delivery rewrite.
Troubleshooting
Progress
Learning
40-60% of dev capacity on “friction”
0:00 28:15
12:230:00
Case Study: From Monolith to Microservices
18 months after a Micro-Services/Continuous Delivery rewrite.
Troubleshooting
Progress
Learning
40-60% of dev capacity on “friction”
0:00 28:15
12:230:00
Case Study: From Monolith to Microservices
They had this problem:
Long-Term Pain
0%
100%
Release 1 Release 2 Release 3
Troubleshooting
Progress
Learning
Percentage Capacity spent on Troubleshooting (red) and Learning (blue)
(extrapolated from samples)
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
Long-Term Pain
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
Long-Term Pain
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
Long-Term Pain
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
Long-Term Pain
Developers tried to explain to management:
“Technical debt is building up in the code!”
Managers:
“We’re already behind schedule!!”
PAIN
Eventually the problems got so bad,
they couldn’t be ignored.
Long-Term Pain
Builds were breaking
Releases were painful
Productivity slowing to a crawl
Begging for time
The Team’s Focus: Reducing technical debt
in the micro-services code + test automation
The Biggest Problem: Integration problems across teams
leading to environment down time.
1000 hours/month!!
Cost:
Case Study: From Monolith to Microservices
The cost of bad architecture
in the microservices world
is EXTREMELY HIGH.
Visibility gives us a way to
manage long-term technical risk.
Risk is the Bridge Language
Between Managers and Developers
Quality Risk Familiarity Risk
0%
100%
Release 1 Release 2 Release 3
Percentage Capacity spent on Troubleshooting (red) and Learning (blue)
x
Troubleshooting
x
Learning
x
Rework
Quality Risk Familiarity Risk Assumption Risk
Visibility gives us a way to
manage long-term technical risk.
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)
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)
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)
How much work does it take to mop the floor?
How much work does it take to mop the floor?
How much work does it take to mop the floor?
How much work does it take to
complete a software task?
=
Side-Effects from
Ignoring the Risk
Trade-off Decisions
Writing Unit Tests Troubleshooting Mistakes
Direct Cost Indirect Costs
or
We make high-risk decisions because the indirect costs are hard to quantify.
Likeliness of Event
Potential Impact
x=
Risk
Troubleshooting Learning Rework
Side-Effects of High-Risk Decisions
Ignore Tango
(risk not obvious)
Escala&ng)
Risk)
Time)
Pressure)
Defer)
Problems)
Increase)
Risk)&)Impact)
of)Extra)
Work)
More)Frequent)
Bugs)and)
Higher)
Task)Effort)
Ignore
Risk
Cycle of Chaos
Tangos
Multiply
Escala&ng)
Risk)
Time)
Pressure)
Defer)
Problems)
Increase)
Risk)&)Impact)
of)Extra)
Work)
More)Frequent)
Bugs)and)
Higher)
Task)Effort)
Ignore
Risk
Cycle of Chaos
More Mopping
Work
Escala&ng)
Risk)
Time)
Pressure)
Defer)
Problems)
Increase)
Risk)&)Impact)
of)Extra)
Work)
More)Frequent)
Bugs)and)
Higher)
Task)Effort)
Ignore
Risk
Cycle of Chaos
Further Behind on
Deliverables
Escala&ng)
Risk)
Time)
Pressure)
Defer)
Problems)
Increase)
Risk)&)Impact)
of)Extra)
Work)
More)Frequent)
Bugs)and)
Higher)
Task)Effort)
Productivity plummets because of the overwhelming side-effects
Ignore
Risk
I can’t go
any faster!
Cycle of Chaos
Fewer%
Problems%to%
Fix%
Stop%%
and%
Think%
Mi8gate%
the%
Risk%
Increased%
Produc8vity%
Safety'Identify Risk
Cycle of Safety
Fewer%
Problems%to%
Fix%
Stop%%
and%
Think%
Mi8gate%
the%
Risk%
Increased%
Produc8vity%
Safety'Put Tango
on a Leash
Cycle of Safety
Fewer%
Problems%to%
Fix%
Stop%%
and%
Think%
Mi8gate%
the%
Risk%
Increased%
Produc8vity%
Safety'
Predictable
Completion
Cycle of Safety
Fewer%
Problems%to%
Fix%
Stop%%
and%
Think%
Mi8gate%
the%
Risk%
Increased%
Produc8vity%
Safety'
We improve productivity by improving control
not by trying to go faster
Slack Time
Cycle of Safety
Troubleshooting Learning Rework
Optimize Idea Flow by systematically mitigating risk.
Control = Risk Mitigation
Quality Risk Familiarity Risk
0%
100%
Release 1 Release 2 Release 3
Percentage Capacity spent on Troubleshooting (red) and Learning (blue)
“How do we control the risk?”
Risk is the Bridge Language
Between Managers and Developers
Process Control in Manufacturing
This is “Out of Control”
Lower Variability = Better Control
“Pain Control” in Software Development
Average Pain per Incident
This is Control
Target
Control Limit
This is “Out of Control”
16:10
This is “Control”
Idea Flow Learning Framework
Input:
Decision Constraints
Target: Optimize the Rate of Idea Flow
short-term looplong-term
loop
1.
Visibility
2.
Clarity
3.
Awareness
F ocus!
Output: “Friction” in Idea Flow
Improve Quality of Decisions
Input:
Decision Constraints
Target: Optimize the Rate of Idea Flow
short-term looplong-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
Idea Flow Learning Framework
Input:
Decision Constraints
Target: Optimize the Rate of Idea Flow
short-term looplong-term
loop
1.
Visibility
2.
Clarity
3.
Awareness
F ocus!
Output: “Friction” in Idea Flow
Input - The constraints that limit our short-term choices…
Idea Flow Learning Framework
Input:
Decision Constraints
Target: Optimize the Rate of Idea Flow
short-term looplong-term
loop
1.
Visibility
2.
Clarity
3.
Awareness
F ocus!
Output: “Friction” in Idea Flow
Output - The pain signal we’re trying to improve
Idea Flow Learning Framework
Input:
Decision Constraints
Target: Optimize the Rate of Idea Flow
short-term looplong-term
loop
1.
Visibility
2.
Clarity
3.
Awareness
F ocus!
Output: “Friction” in Idea Flow
Focus on the biggest pain…
F ocus!
Idea Flow Learning Framework
Input:
Decision Constraints
Target: Optimize the Rate of Idea Flow
short-term looplong-term
loop
1.
Visibility
2.
Clarity
3.
Awareness
F ocus!
Output: “Friction” in Idea Flow
1. Visibility - Identify the specific patterns.
1.
Visibility
Idea Flow Learning Framework
Input:
Decision Constraints
Target: Optimize the Rate of Idea Flow
short-term looplong-term
loop
1.
Visibility
2.
Clarity
3.
Awareness
F ocus!
Output: “Friction” in Idea Flow
2. Clarity - Understand cause and effect.
2.
Clarity
Idea Flow Learning Framework
Input:
Decision Constraints
Target: Optimize the Rate of Idea Flow
short-term looplong-term
loop
1.
Visibility
2.
Clarity
3.
Awareness
F ocus!
Output: “Friction” in Idea Flow
3.
Awareness
3. Awareness - Learn strategies to avoid the pain.
Idea Flow Learning Framework
Input:
Decision Constraints
Target: Optimize the Rate of Idea Flow
short-term looplong-term
loop
1.
Visibility
2.
Clarity
3.
Awareness
F ocus!
Output: “Friction” in Idea Flow
Improve Quality of Decisions
Idea Flow Learning Framework
“The Idea Flow Factory”
(supply chain model)
Optimize the Rate of Idea Flow
Across the Software Supply Chain
Brevity?
What should we be optimizing for?
Modularity?
Code Coverage?
What does “better” really mean?
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
Data-Driven Software Mastery
Input:
Decision Constraints
Target: Optimize the Rate of Idea Flow
short-term looplong-term
loop
1.
Visibility
2.
Clarity
3.
Awareness
F ocus!
Output: “Friction” in Idea Flow
Improve Quality of Decisions
measures the time spent on:
Idea Flow
x
Troubleshooting
x
Learning
x
Rework
Quality Risk Familiarity Risk Assumption Risk
Idea Flow gives us a
universal definition of effective practice.
x
Troubleshooting
x
Learning
x
Rework
Quality Risk Familiarity Risk Assumption Risk
Idea Flow gives us a
universal definition of effective practice.
Quality Risk Familiarity Risk Assumption Risk
What are the
consequences of our decisions?
Idea Flow gives us a
universal definition of effective practice.
Idea Flow gives us a
universal language for sharing our experiences.
Quality Risk Familiarity Risk Assumption Risk
What strategies tend to
minimize the friction in Idea Flow?
Idea Flow gives us a
universal language for sharing our experiences.
And in what contexts?
Idea Flow gives us the
capability to learn together as an industry.
Quality Risk Familiarity Risk Assumption Risk
We have an opportunity to learn together
like we’ve never had before.
Idea Flow gives us the
capability to learn together as an industry.
Why? Because this REALLY Sucks.
Seeing your creation get stomped on by organizational
dysfunction is an emotionally damaging experience.
Let’s
take responsibility,
learn how to get there,
then teach the industry
how to succeed.
Let’s
take responsibility,
learn how to get there,
then teach the industry
how to succeed.
Collaboration Platform
IFM Tools
Team Mastery Platform
Team
Joe
Sally
Mark
Eric
Industry Collaboration
Platform
Anonymized
Data
Integrated #HashTag
Glossary
Project
Tiger
Project
Bear
(REST)
Industry Collaborative Learning Network
Change Starts with Making
the PAIN Visible!
Janelle Klein
openmastery.org @janellekz
Janelle Klein
openmastery.org @janellekz
Check out openmastery.org for details.
Read my Book.
Think About It.
FREE with
Reading GroupBuy It
How to Measure the PAIN
in Software Development
Janelle Klein
Why read Idea Flow?
Because Rene and Matt said so!
“If you just want to read ONE book about software
engineering, this year, read this one: leanpub.com/
ideaflow #ideaflow”
Rene Gröschke, Gradle Inc.
“If you don't know about @janellekz's work on Idea
Flow Learning, you're missing out. leanpub.com/
ideaflow”
Matt Stine, NFJS Tour Speaker
@breskeby
@mstine
Check out openmastery.org for details.

Mais conteúdo relacionado

Mais procurados

Managing the Consulting Engagement
Managing the Consulting EngagementManaging the Consulting Engagement
Managing the Consulting Engagement
Saumya Ganguly
 

Mais procurados (20)

Projects vs operations
Projects vs operationsProjects vs operations
Projects vs operations
 
Fundamentals of Project Management
Fundamentals of Project ManagementFundamentals of Project Management
Fundamentals of Project Management
 
Project Management Toolkit: Frameworks, Tools & Templates
Project Management Toolkit: Frameworks, Tools & TemplatesProject Management Toolkit: Frameworks, Tools & Templates
Project Management Toolkit: Frameworks, Tools & Templates
 
How to establish a network of change champions
How to establish a network of change championsHow to establish a network of change champions
How to establish a network of change champions
 
What is Program Management - An Overview
What is Program Management - An OverviewWhat is Program Management - An Overview
What is Program Management - An Overview
 
Project Risk Management PMBOK
Project Risk Management PMBOKProject Risk Management PMBOK
Project Risk Management PMBOK
 
IT Strategy I Best Practices I NuggetHub
IT Strategy I Best Practices I NuggetHubIT Strategy I Best Practices I NuggetHub
IT Strategy I Best Practices I NuggetHub
 
The Effective Program Management Office (PgMO) (c) 2010
The Effective Program Management Office (PgMO) (c) 2010The Effective Program Management Office (PgMO) (c) 2010
The Effective Program Management Office (PgMO) (c) 2010
 
1.3 Schwalbe Ch3(1).ppt
1.3 Schwalbe Ch3(1).ppt1.3 Schwalbe Ch3(1).ppt
1.3 Schwalbe Ch3(1).ppt
 
PMBOK® Guide Processes Flow – 6th Edition
PMBOK® Guide Processes Flow – 6th EditionPMBOK® Guide Processes Flow – 6th Edition
PMBOK® Guide Processes Flow – 6th Edition
 
Program management skills
Program management skillsProgram management skills
Program management skills
 
IT Project Governance Overview
IT Project Governance OverviewIT Project Governance Overview
IT Project Governance Overview
 
041006-Program Management PMI NB - PMI Logo
041006-Program Management PMI NB - PMI Logo041006-Program Management PMI NB - PMI Logo
041006-Program Management PMI NB - PMI Logo
 
Managing the Consulting Engagement
Managing the Consulting EngagementManaging the Consulting Engagement
Managing the Consulting Engagement
 
PMI-ACP Lesson 9 Agile Risk Management
PMI-ACP Lesson 9 Agile Risk ManagementPMI-ACP Lesson 9 Agile Risk Management
PMI-ACP Lesson 9 Agile Risk Management
 
Project communication management
Project communication managementProject communication management
Project communication management
 
IT Portfolio Management using Enterprise Architecture and ITIL Service Strategy
IT Portfolio Management using Enterprise Architecture and ITIL Service StrategyIT Portfolio Management using Enterprise Architecture and ITIL Service Strategy
IT Portfolio Management using Enterprise Architecture and ITIL Service Strategy
 
TOGAF ADM cycle
TOGAF ADM cycleTOGAF ADM cycle
TOGAF ADM cycle
 
SFA2018 Project to Product - Carmen DeArdo
SFA2018 Project to Product - Carmen DeArdoSFA2018 Project to Product - Carmen DeArdo
SFA2018 Project to Product - Carmen DeArdo
 
Strategy Execution
Strategy ExecutionStrategy Execution
Strategy Execution
 

Destaque

A Programmer's Guide to Humans
A Programmer's Guide to HumansA Programmer's Guide to Humans
A Programmer's Guide to Humans
Arty Starr
 
Laboratory supervisor performance appraisal
Laboratory supervisor performance appraisalLaboratory supervisor performance appraisal
Laboratory supervisor performance appraisal
EmileHeskey345
 
Legal nurse consultant performance appraisal
Legal nurse consultant performance appraisalLegal nurse consultant performance appraisal
Legal nurse consultant performance appraisal
EmileHeskey345
 

Destaque (17)

A Programmer's Guide to Humans
A Programmer's Guide to HumansA Programmer's Guide to Humans
A Programmer's Guide to Humans
 
キーボードアプリとSketchのススメ
キーボードアプリとSketchのススメキーボードアプリとSketchのススメ
キーボードアプリとSketchのススメ
 
Managing machine learning
Managing machine learningManaging machine learning
Managing machine learning
 
Lessons learned
Lessons learnedLessons learned
Lessons learned
 
BAHSICアルゴリズムによる非線形データからの特徴選択
BAHSICアルゴリズムによる非線形データからの特徴選択BAHSICアルゴリズムによる非線形データからの特徴選択
BAHSICアルゴリズムによる非線形データからの特徴選択
 
Machine Learning : The high interest credit card of technical debt
Machine Learning : The high interest credit card of technical debt Machine Learning : The high interest credit card of technical debt
Machine Learning : The high interest credit card of technical debt
 
C/C++プログラマのための開発ツール
C/C++プログラマのための開発ツールC/C++プログラマのための開発ツール
C/C++プログラマのための開発ツール
 
汎用性と高速性を目指したペアリング暗号ライブラリ mcl
汎用性と高速性を目指したペアリング暗号ライブラリ mcl汎用性と高速性を目指したペアリング暗号ライブラリ mcl
汎用性と高速性を目指したペアリング暗号ライブラリ mcl
 
「機械学習:技術的負債の高利子クレジットカード」のまとめ
「機械学習:技術的負債の高利子クレジットカード」のまとめ「機械学習:技術的負債の高利子クレジットカード」のまとめ
「機械学習:技術的負債の高利子クレジットカード」のまとめ
 
GoogleのSHA-1のはなし
GoogleのSHA-1のはなしGoogleのSHA-1のはなし
GoogleのSHA-1のはなし
 
17. Полацкае княства ў ІХ-ХІ стст.
17. Полацкае княства ў ІХ-ХІ стст.17. Полацкае княства ў ІХ-ХІ стст.
17. Полацкае княства ў ІХ-ХІ стст.
 
Laboratory supervisor performance appraisal
Laboratory supervisor performance appraisalLaboratory supervisor performance appraisal
Laboratory supervisor performance appraisal
 
ثانية شبكات 2015
ثانية شبكات 2015ثانية شبكات 2015
ثانية شبكات 2015
 
M2M_eng_mailing
M2M_eng_mailingM2M_eng_mailing
M2M_eng_mailing
 
Doc2
Doc2Doc2
Doc2
 
Legal nurse consultant performance appraisal
Legal nurse consultant performance appraisalLegal nurse consultant performance appraisal
Legal nurse consultant performance appraisal
 
11. Знешняя небяспека ў 1-ай палове ХІІІ. Гаспадарка ў ІХ-ХІІІ ст.
11. Знешняя небяспека ў 1-ай палове ХІІІ. Гаспадарка ў ІХ-ХІІІ ст.11. Знешняя небяспека ў 1-ай палове ХІІІ. Гаспадарка ў ІХ-ХІІІ ст.
11. Знешняя небяспека ў 1-ай палове ХІІІ. Гаспадарка ў ІХ-ХІІІ ст.
 

Semelhante a Let's Make the PAIN Visible!

Stop Getting Crushed By Business Pressure
Stop Getting Crushed By Business PressureStop Getting Crushed By Business Pressure
Stop Getting Crushed By Business Pressure
Arty Starr
 
The Art of Better
The Art of BetterThe Art of Better
The Art of Better
Arty Starr
 
Bringing Science to Software Development
Bringing Science to Software DevelopmentBringing Science to Software Development
Bringing Science to Software Development
Arty Starr
 
GDG Cloud Southlake #24: Arty Starr: Enabling Powerful Software Insights by V...
GDG Cloud Southlake #24: Arty Starr: Enabling Powerful Software Insights by V...GDG Cloud Southlake #24: Arty Starr: Enabling Powerful Software Insights by V...
GDG Cloud Southlake #24: Arty Starr: Enabling Powerful Software Insights by V...
James Anderson
 
How To Do Kick-Ass Software Development, by Sven Peters
How To Do Kick-Ass Software Development, by Sven PetersHow To Do Kick-Ass Software Development, by Sven Peters
How To Do Kick-Ass Software Development, by Sven Peters
ZeroTurnaround
 
Showing How Security Has (And Hasn't) Improved, After Ten Years Of Trying
Showing How Security Has (And Hasn't) Improved, After Ten Years Of TryingShowing How Security Has (And Hasn't) Improved, After Ten Years Of Trying
Showing How Security Has (And Hasn't) Improved, After Ten Years Of Trying
Dan Kaminsky
 

Semelhante a Let's Make the PAIN Visible! (20)

Why #OpenDX?
Why #OpenDX?Why #OpenDX?
Why #OpenDX?
 
Let's Make the PAIN Visible!
Let's Make the PAIN Visible!Let's Make the PAIN Visible!
Let's Make the PAIN Visible!
 
Top 5 Reasons Why Improvement Efforts Fail
Top 5 Reasons Why Improvement Efforts FailTop 5 Reasons Why Improvement Efforts Fail
Top 5 Reasons Why Improvement Efforts Fail
 
The Ultimate Metric
The Ultimate MetricThe Ultimate Metric
The Ultimate Metric
 
Data-Driven Software Mastery @Open Mastery Austin
Data-Driven Software Mastery @Open Mastery AustinData-Driven Software Mastery @Open Mastery Austin
Data-Driven Software Mastery @Open Mastery Austin
 
Identify Development Pains and Resolve Them with Idea Flow
Identify Development Pains and Resolve Them with Idea FlowIdentify Development Pains and Resolve Them with Idea Flow
Identify Development Pains and Resolve Them with Idea Flow
 
Learn Your Way to AWESOME.
Learn Your Way to AWESOME.Learn Your Way to AWESOME.
Learn Your Way to AWESOME.
 
Stop Getting Crushed By Business Pressure
Stop Getting Crushed By Business PressureStop Getting Crushed By Business Pressure
Stop Getting Crushed By Business Pressure
 
The Art of Better
The Art of BetterThe Art of Better
The Art of Better
 
Bringing Science to Software Development
Bringing Science to Software DevelopmentBringing Science to Software Development
Bringing Science to Software Development
 
The Ultimate Metric
The Ultimate MetricThe Ultimate Metric
The Ultimate Metric
 
GDG Cloud Southlake #24: Arty Starr: Enabling Powerful Software Insights by V...
GDG Cloud Southlake #24: Arty Starr: Enabling Powerful Software Insights by V...GDG Cloud Southlake #24: Arty Starr: Enabling Powerful Software Insights by V...
GDG Cloud Southlake #24: Arty Starr: Enabling Powerful Software Insights by V...
 
Risk management
Risk managementRisk management
Risk management
 
Designing with capabilities (DDD-EU 2017)
Designing with capabilities (DDD-EU 2017)Designing with capabilities (DDD-EU 2017)
Designing with capabilities (DDD-EU 2017)
 
How To Do Kick-Ass Software Development, by Sven Peters
How To Do Kick-Ass Software Development, by Sven PetersHow To Do Kick-Ass Software Development, by Sven Peters
How To Do Kick-Ass Software Development, by Sven Peters
 
SAD15 - Maintenance
SAD15 - MaintenanceSAD15 - Maintenance
SAD15 - Maintenance
 
Showing How Security Has (And Hasn't) Improved, After Ten Years Of Trying
Showing How Security Has (And Hasn't) Improved, After Ten Years Of TryingShowing How Security Has (And Hasn't) Improved, After Ten Years Of Trying
Showing How Security Has (And Hasn't) Improved, After Ten Years Of Trying
 
The limits of unit testing by Craig Stuntz
The limits of unit testing by Craig StuntzThe limits of unit testing by Craig Stuntz
The limits of unit testing by Craig Stuntz
 
The Limits of Unit Testing by Craig Stuntz
The Limits of Unit Testing by Craig StuntzThe Limits of Unit Testing by Craig Stuntz
The Limits of Unit Testing by Craig Stuntz
 
Application compatibility final
Application compatibility finalApplication compatibility final
Application compatibility final
 

Último

%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
masabamasaba
 
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
VictoriaMetrics
 
The title is not connected to what is inside
The title is not connected to what is insideThe title is not connected to what is inside
The title is not connected to what is inside
shinachiaurasa2
 
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
Medical / Health Care (+971588192166) Mifepristone and Misoprostol tablets 200mg
 
Abortion Pills In Pretoria ](+27832195400*)[ 🏥 Women's Abortion Clinic In Pre...
Abortion Pills In Pretoria ](+27832195400*)[ 🏥 Women's Abortion Clinic In Pre...Abortion Pills In Pretoria ](+27832195400*)[ 🏥 Women's Abortion Clinic In Pre...
Abortion Pills In Pretoria ](+27832195400*)[ 🏥 Women's Abortion Clinic In Pre...
Medical / Health Care (+971588192166) Mifepristone and Misoprostol tablets 200mg
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
Health
 

Último (20)

%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
 
What Goes Wrong with Language Definitions and How to Improve the Situation
What Goes Wrong with Language Definitions and How to Improve the SituationWhat Goes Wrong with Language Definitions and How to Improve the Situation
What Goes Wrong with Language Definitions and How to Improve the Situation
 
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
 
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park %in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
 
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
 
%in Harare+277-882-255-28 abortion pills for sale in Harare
%in Harare+277-882-255-28 abortion pills for sale in Harare%in Harare+277-882-255-28 abortion pills for sale in Harare
%in Harare+277-882-255-28 abortion pills for sale in Harare
 
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
 
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
 
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
Direct Style Effect Systems -The Print[A] Example- A Comprehension AidDirect Style Effect Systems -The Print[A] Example- A Comprehension Aid
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
 
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital TransformationWSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
 
%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg
%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg
%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg
 
The title is not connected to what is inside
The title is not connected to what is insideThe title is not connected to what is inside
The title is not connected to what is inside
 
%in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park %in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park
 
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
 
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
 
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
 
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
 
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
 
Abortion Pills In Pretoria ](+27832195400*)[ 🏥 Women's Abortion Clinic In Pre...
Abortion Pills In Pretoria ](+27832195400*)[ 🏥 Women's Abortion Clinic In Pre...Abortion Pills In Pretoria ](+27832195400*)[ 🏥 Women's Abortion Clinic In Pre...
Abortion Pills In Pretoria ](+27832195400*)[ 🏥 Women's Abortion Clinic In Pre...
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
 

Let's Make the PAIN Visible!