The Mikado Method is a simple straight forward methodology for large scale refactoring. We’ve all been there; tasked with a change, which as optimistic developers we say won’t take us long, weeks later we’re still fighting the system. Enter the Mikado Method, a way to peel the layers of complexity away from any system. Systematically attack refactoring, in the knowledge that every change you make will be for the better of the system, rather than hoping it will be.
When it comes to refactoring legacy systems, sometimes it faster just to get in there and naively attempt to make the change required rather than speed weeks analyzing the affects. Naively making the change will always have knock on affects to other parts of the system. It is these knock on affects that cause what we believe to be quick changes to become large, long drawn out changes. With the Mikado Method, your system will always be runnable while you refactor, say goodbye to the feature branches of refactoring, and hello to a runnable testable system all the time. Fix one issue at a time, and keep your system deliverable at all times. The method also works when it comes to implementing new features or fixing bugs in a system, there are always side effects when we need to change code. The Mikado Method will help in all these situations. In a nut shell, it’s Red, Green, Refactor on a large scale. A way to safely start paying back your technical debt.
Video source and slides: http://www.leanagilescotland.com/videos/bigmadkev
Further reading: What is the Mikado Method?