http://martinfowler.com/bliki/ShuHaRi.html

「守破離」とは技術を学ぶ際の考え方である。 日本の武術(特に合気道)に由来する。 Alistair Cockburnがソフトウェア開発の技術・方法論を学ぶ際の考え方として紹介した。

これは、知識を習得するには3つの段階を経るという考えである。

  • :最初の段階では、学習者は師の教えを正確に模写する。理論についてあれこれ考えずに、その作法に集中する。作法が複数ある場合でも、師の教えをただ忠実に守る。

  • :この段階では、学習者は新しいことに手を出す。基本的な実践を身に着けたなら、技術の裏にある原則や理論を学んでいく。また、他の師からも学び、得たものを自身の実践に採り入れていく。

  • :この段階では、学習者は、自身の実践を通じて、他者から学んでいく。自身の手法を生み出し、学んだことを自身の環境に適応させていく。

ここでの基本的な考えは、 概念を教えるときには 学習者の理解や進捗に教え方を合わせなければいけないというものだ。 それには共通のパターンがある。 学習の初期段階では、模倣の具体的な手順に集中する。 それから、原則を理解することに移行する。 最終的には、自分でイノベーションを起こせるようになることに集中する。

こうした学習方式の表現は他にもある。 より細やかに決めてあるのがドレイファスモデルだ。 私はクラーク・テリーの「Imitate, Assimilate, Innovate(模倣、吸収,革新)」が好きだ。

あわせて読みたい

Alistairの(この記述よりもっといい)本『アジャイルソフトウェア開発』があるので参照されたい。

更新履歴

  • 22 Aug 2014:汎用的な説明と同様のモデルを追記
  • 30 Sep 2006:最初の投稿