迷ったら狩野さん!...狩野分析法による優先度付け

追記

id:discypusさんから、狩野分析法の出典に関するコメントをいただきました。

狩野法って、
狩野 紀昭 氏 http://www.sangakuplaza.jp/page/134499
http://www.yahoo-vi.co.jp/method/b10.html の手法かと
思うのですが、合ってますでしょうか?

まさにこれですね。http://www.yahoo-vi.co.jp/method/b10.html にある日本語のほうがすっきりしてます。

お詫び

分析用配列に誤りがありました。修正してあります。

要旨

先日受講したScrum Product Owner Trainingで印象に残った分析法を紹介。
Agile開発では「優先度順に要件(フィーチャ)を開発していく」のが基本だが、いざ優先度をつけようにも話は簡単ではない。発注側に強力な指導者がいてその人が独裁的に優先度を決めてくれるというのは理想的ではあるが、その指導者の能力がイマイチな場合にはリスクが増大する。

大抵は利害関係者間の調整で物事が決められることになるが、これも時間がかかる話でありAgile的ではない。変に決着をつけると、後々人間関係で尾を引くという問題もある。

かといって、「必要なものに○をつけてください」などとアンケートをとっても、全部に○がつくのがオチであろう。

狩野分析法は、優先順位がうまく付けられないときに有効な手法である。客観的なので、利害関係者も納得いきやすい。

二つの質問

まず対象となるフィーチャが実現された場合と、実現されなかった場合について5者択一の質問をする。こんな感じ。

  • ホテルの部屋に無料のミネラルウォーターがあったらどう思いますか?
    1. ◎とても嬉しい
    2. それって普通でしょ
    3. 特になんとも思わない
    4. 別にそれでも構わない
    5. それは困る
  • ホテルの部屋に無料のミネラルウォーターがなかったらどう思いますか?
    1. とても嬉しい
    2. ◎それって普通でしょ
    3. 特になんとも思わない
    4. 別にそれでも構わない
    5. それは困る

回答の分類

得られた回答から、そのフィーチャの属性を決める。具体的には下記行列に、回答をあてはめる。

  非実現時1 非実現時2 非実現時3 非実現時4 非実現時5
実現時1 Q E E E L
実現時2 R I I I M
実現時3 R I I I M
実現時4 R I I I M
実現時5 R R R R Q

ミネラルウォーターの例では、実現時=「1」、非実現時=「2」なので、分類は「E」となる。

その分類って何よ

こういうこと。

  • M...Mandatory(基本)
    • なくてはならないもの。外せないもの。
  • L...Linear(性能)
    • なくてもよいが、あればあるほど良い。
  • E...Exciter(魅力)
    • いわゆる差別化ポイント。
  • Q...Questionable(不明)
    • 回答がおかしい。
  • R...Reverse(逆行)
    • あっては困る。つまり作ってはいかん。
  • I...Indifferent(不問)
    • どうでもよい。作ってもいいが作らなくても良い。

例えば携帯電話で考えるとこうなる。

  • かつてはカメラ機能は「魅力」だった。
  • 今は画素数を競う「性能」もしくは、なくてはならない「基本」のどちらか。

分類したら集計する

この調査を利害関係者を相手に実施し、結果をまとめる。結果から、自ずと開発優先度は見えてくる。

  • M(基本)は、点数が高いものから順次開発していく
  • L(性能)は、点数が高いものから順にイタレーションに一フィーチャ」を目安に-取り込んでいくと良い
  • E(魅力)は、点数が高いものから順に「3イタレーションに一フィーチャ」を目安に取り込んでいくと良い
  • R(逆行)は、作ってはいけない。
  • I(不問)は、作る必要はない。

手間はかかるけど

狩野法は手間はかかるけど、関係者の主観や思惑抜きで要件(フィーチャ)の優先度が決まっていく所が合理的だと思った。

アジャイルな見積りと計画づくり ~価値あるソフトウェアを育てる概念と技法~

アジャイルな見積りと計画づくり ~価値あるソフトウェアを育てる概念と技法~