Enables you to deal with unavoidable complexities in manageable pieces.
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 this book
about the cover illustration
about the authors
Part 1 The basics of the Mikado Method
1. Meet the Mikado Method
1.1. What is the Mikado Method?
1.2. The Mikado Method recipe
2. Hello, Mikado Method!
2.1. Your first Mikado Graph
2.2. A slightly more complicated change
2.3. Making the code configurable
3. Goals, graphs, and guidelines
3.1. The Mikado Method guidelines
3.2. The Mikado Graph
3.3. Tips for using the Mikado Method
3.4. Relation to other thinking models
4. Organizing your work
4.1. The scope of a change
4.2. How to approach a change
Part 2 Principles and patterns for improving software
5. Breaking up a monolith
5.1. The code of an online loan institute
5.2. Beheading the beast
5.3. Getting to the true leaves of the graph
6. Emergent design
6.1. Designing classes
6.2. Designing packages
7. Common restructuring patterns
7.1. Graph patterns
7.2. Scattered-code patterns
7.3. Code tricks
Appendix A: Technical debt
Appendix B: Setting the stage for improvements
Appendix C: Dealing with dynamically typed languages
© 2014 Manning Publications Co.
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.
- 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
If you deal with legacy code and your technical debt is increasing, read this book.
An engaging and authoritative source of information and best practices that you need to succeed.
A great guide to safer refactoring.