Synopses & Reviews
The Mikado Method is a book written by the creators of this process. It describes a pragmatic, straightforward, and empirical method to plan and perform non-trivial technical improvements on an existing software system. The method has simple rules, but the applicability is vast. As you read, you'll practice a step-by-step system for identifying the scope and nature of your technical debt, mapping the key dependencies, and determining the safest way to approach the "Mikado"—your goal.
About the Technology
The game "pick-up sticks" is a good metaphor for the Mikado Method. You eliminate "technical debt" —the legacy problems embedded in nearly every software system— by following a set of easy-to-implement rules. You carefully extract each intertwined dependency until you expose the central issue, without collapsing the project.
About the Book
The Mikado Method presents a pragmatic process to plan and perform nontrivial technical improvements on an existing software system. The book helps you practice a step-by-step system for identifying the scope and nature of your technical debt, mapping the key dependencies, and determining a safe way to approach the "Mikado"—your goal. A natural by-product of this process is the Mikado Graph, a roadmap that reflects deep understanding of how your system works. This book builds on agile processes such as refactoring, TDD, and rapid feedback. It requires no special hardware or software and can be practiced by both small and large teams.
Purchase of the print book includes a free eBook in PDF, Kindle, and ePub formats from Manning Publications.
- Understand your technical debt
- Surface the dependencies in legacy systems
- Isolate and resolve core concerns while creating minimal disruption
- Create a roadmap for your changes
About the Authors
Ola Ellnestam and Daniel Brolund are developers, coaches, and team leaders. They developed the Mikado Method in response to years of experience resolving technical debt in complex legacy systems.
Table of Contents
PART 1 THE BASICS OF THE MIKADO METHOD
- Meet the Mikado Method
- Hello, Mikado Method!
- Goals, graphs, and guidelines
- Organizing your work
PART 2 PRINCIPLES AND PATTERNS FOR IMPROVING SOFTWARE
- Breaking up a monolith
- Emergent design
- Common restructuring patterns
Technical debt is best understood as the work remaining before a job can be considered complete. It is one of the worst bottlenecks when it comes to creating value with software and the ability to deal with it is often the difference between a great business and closing the shop. The Mikado Method is a process which systematically eliminates technical debt. It gets its name from a simple game known as "pick-up sticks." Starting with a jumbled pile of sticks, the goal is to remove the Mikado, or Emperor, stick without disturbing the others. Players carefully remove sticks one at a time, leaving the rest of the heap intact, slowly exposing the Mikado. The game is a great metaphor for eliminating technical debt—carefully extracting each intertwined dependency until successfully resolving the central issue.
The Mikado Method describes a pragmatic and straightforward method to plan and perform non-trivial technical improvements on an existing software system. Step by step, readers will identify the scope and nature of technical debt, map the key dependencies, and determine the safest way to approach the "Mikado"—the goal. A natural byproduct of this process is the Mikado Graph, a minimalistic, relevant, just-in-time roadmap and information radiator that reflects deep understanding of how the system works.
Purchase of the print book comes with an offer of a free PDF, ePub, and Kindle eBook from Manning. Also available is all code from the book.
About the Author
is a coach and mentor for both business and technical teams. He loves to combine technology, people and business. He has developed complex computer systems within health care, defense, and on-line banking. He knows that software must be easy to use, extend, and deploy in order to be worth developing. More than anything else, he likes to share his discoveries and knowledge with others because he believes that this is how new knowledge and insight is created.
Daniel Brolund is a software developer that always sees things to improve—to the joy and grief of his fellow workers. He has successfully worked with global web sites deployed on hundreds of servers, desktop applications for just a few users, and on-line gaming applications, just to mention a few.