Last updated on 2016-04-30
About the Book
Whether it's Agile or Waterfall, RUP or XP, the software story hasn't really changed. We start out with the best of intentions, trying not to repeat the mistakes of the past. We make a commitment to do things "the right way" this time.
Fast-forward to several years later, and we're sitting around a conference table discussing what went wrong. How did we accumulate so much technical debt? Should we rewrite the component? Scrap the entire system and start over? Or just deal with the problems and try to keep on going?
Despite our best efforts with Agile best practices, we get stuck in the software rewrite cycle. With such a clear vision of the practices for success, why do we still end up with an unmaintainable mess?
Our software problems are a reflection of our decision-making habits. We try to improve, but focus on the symptoms in the code, and never fix the decisions that are creating the mess in the first place. We try to explain the problems to leadership, but the business pressure never lets up -- we start over, but keep repeating the same mistakes.
So how do we turn our projects around?
We can't see the problems, but we experience their effects. Disruptions, test maintenance, confusing code, unfamiliar code, and collaboration problems -- they all have a direct impact on developer experience. What if we could make those problems visible?
Idea Flow Mapping is a technique for visualizing the flow of ideas between the developer and the software. Similar to how an EKG helps doctors diagnose heart problems, Idea Flow Maps help developers diagnose software problems.
Once we make the pain visible, improvement becomes a systematic data-driven process. We can:
1. Identify the biggest problems on our software projects
2. Make the case to management for improvement
3. Create a data-driven feedback loop to learn what works
4. Conquer even the hardest challenges on our software projects
With objective feedback on the consequences of our decisions, we can learn how to get better, faster.
1. Losing Faith in Best Practices
- 1.1 The Crisis
- 1.2 The Rewrite Cycle
- 1.3 The Origin of a Learning Framework
- 1. Losing Faith in Best Practices
2. Technical Debt is Not the Problem
- 2.1 More Questions Than Answers
- 2.2 An Alternative to Technical Debt
- 2.3 Idea Flow is a Conversation
- 2.4 Optimizing Developer Experience
3. Visibility Changes Everything
- 3.1 An EKG for Software Development
- 3.2 A Modern Diagnostic Tool
4. There’s No Shortcuts
- 4.1 The Perils of Test Automation
- 4.2 Understanding the Problems
- 4.3 The Deadline Effect
- 4.4 STOP Making Generalizations
5. Identify the Biggest Pains
- 5.1 Categorize the Friction
- 5.2 The Limits of our Brains
- 5.3 Analyzing the Data
- 5.4 Breaking Down the Pain
6. Start the Conversation
- 6.1 Getting a Feel for Conflicts
- 6.2 Handling Special Circumstances
- 6.3 Explain What’s Causing Friction
- 2. Technical Debt is Not the Problem
7. The Business Machine
- 7.1 The Path to Project Meltdown
- 7.2 The Lack of Control
8. The Power of Safety
- 8.1 Overcoming the Great Divide
- 8.2 Repairing the Broken Feedback Loops
- 8.3 Fixing the Machine
- 8.4 The Cycle of Safety
9. Refactor Your Organization
- 9.1 Refactor from the Point of Visibility
- 9.2 Be a Torchbearer
- 9.3 Make the Case for Partnership
10. The Idea Flow Factory
- 10.1 The Learning Organization
- 10.2 Remapping the Manufacturing Metaphor
- 10.3 Process Control
- 10.4 Supply Chain Optimization
11. The Problem to Solve
- 11.1 Why It Matters
- 11.2 The Strategy
- 11.3 Open Mastery
- 7. The Business Machine
The Leanpub 45-day 100% Happiness Guarantee
Within 45 days of purchase you can get a 100% refund on any Leanpub purchase, in two clicks.
See full terms...