Mikado method

1,503 views
1,294 views

Published on

This talk explains what it's and how Mikado Method works.

Published in: Technology, Business

Mikado method

  1. 1. Mikado Method
  2. 2. A tool for large-scale refactorings
  3. 3. REFACTOR ?
  4. 4. PRODUCT OWNER
  5. 5. DEVELOPERS
  6. 6. GARDENING
  7. 7. APP
  8. 8. REFACTOR
  9. 9. Refactoring the old way is like removing an old stump… you will also leave some roots…
  10. 10. REFACTOR WITH BRANCHES
  11. 11. Refactoring using branches is like grafting fruit trees… you never know that what you can get.
  12. 12. MIKADO METHOD
  13. 13. Refactoring using the Mikado Method is like pruning ornamental trees… • You can work in an incremental process. • You can always change the shape. • You always see what you get.
  14. 14. REFACTORING THE OLD WAY
  15. 15. RIGOROUS ANALYSIS
  16. 16. GUESS
  17. 17. PROBLEMS
  18. 18. APP My change
  19. 19. APP My change
  20. 20. APP My change
  21. 21. APP My change
  22. 22. APP My change
  23. 23. APP My change
  24. 24. REVERT
  25. 25. REFACTORING USING BRANCHES
  26. 26. WHEN THE BRANCH IS CREATED
  27. 27. MERGING BRANCHES
  28. 28. AFTER MERGING BRANCHES
  29. 29. PROBLEMS
  30. 30. REFACTORING MIKADO METHOD
  31. 31. Do you know how to play mikado game?
  32. 32. INCREMENTAL
  33. 33. LIGHTWEIGHT
  34. 34. VISIBILITY
  35. 35. STABILITY
  36. 36. CONTINUOS DEPLOYMENT
  37. 37. COMMUNICATION
  38. 38. LEARNING
  39. 39. WORK DONE
  40. 40. COLLABORATION
  41. 41. WORKLOAD
  42. 42. EASY
  43. 43. HOW IT WORKS ?
  44. 44. COMPILED & INTERPRETED
  45. 45. STEP 1 Naive implementation
  46. 46. STEP 1.1 Is something new failing ? YES - STEP 2 NO - STEP 8
  47. 47. STEP 2 What is failing?
  48. 48. STEP 3 Document the pre-requisites to fix that is failing
  49. 49. STEP 4 Document the graph
  50. 50. STEP 5 Revert your changes.
  51. 51. STEP 5.1 There are more pre-requisites in this level? YES - STEP 6 NO - STEP 7
  52. 52. STEP 6 Get the next pre-requisite GOTO STEP 1 repeat the process
  53. 53. STEP 7 Down one level GOTO STEP 5.1
  54. 54. STEP 8 Pre-requisite has been FIXED
  55. 55. STEP 9 Document the graph
  56. 56. APP A change STEP 1
  57. 57. APP A change STEP 2
  58. 58. STEP 3-4 APP Pre-req Pre-req A change Pre-req
  59. 59. STEP 5 APP Pre-req Pre-req A change Pre-req
  60. 60. STEP 5 APP Pre-req Pre-req A change Pre-req
  61. 61. STEP 6-1 APP Pre-req Pre-req A change Pre-req
  62. 62. STEP 2 APP Pre-req Pre-req A change Pre-req
  63. 63. Pre-req STEP 3-4 APP Pre-req Pre-req Pre-req A change Pre-req
  64. 64. Pre-req STEP 5 APP Pre-req Pre-req Pre-req A change Pre-req
  65. 65. Pre-req STEP 1 APP Pre-req Pre-req Pre-req A change Pre-req
  66. 66. Pre-req STEP 1 APP Pre-req Pre-req Pre-req A change Pre-req
  67. 67. Pre-req STEP 1 APP Pre-req Pre-req Pre-req A change Pre-req
  68. 68. Pre-req STEP 1 APP Pre-req Pre-req Pre-req A change Pre-req
  69. 69. Pre-req STEP 1 APP Pre-req Pre-req Pre-req A change Pre-req
  70. 70. Pre-req STEP 1 APP Pre-req Pre-req Pre-req A change Pre-req
  71. 71. WRITE DOWN YOUR GOAL SEEK THINGS TO TRY BACK OUT BROKEN CODE FIX THE PRE-REQUISITES RECURSIVELY
  72. 72. ALWAYS DELIVERABLE FROM THE MAIN BRANCH No more broken environments No more merging issues
  73. 73. GOAL FOCUS Do only the necessary
  74. 74. VISUALIZATION OF GRAPH Best documentation Improve communication Improve cooperation
  75. 75. HAPPY TEAM

×