[[📒Productivityを上げるために大切な100のこと]] No29. 🥉
----
何かを調査するとき、仮説を立てることは効率性を上げる上で大切なことだ。仮説や期待値を考えず闇雲に事実だけを見ても本当に欲しい情報へと辿り着くのは困難だろう。
一方で、**==仮説を仮説のままにして==話を進めるとゴールのない迷路へ迷いこむリスク**がある。そのために必要な作業が[[仮説検証]]である。
## [[仮説検証]]とは
[[仮説検証]]とは **仮説を立てた上で、それが事実であるかを検証する** 方法だ。たとえば以下の場合、**==『問題が起こるのは赤い丸であること』==が事実かどうかを検証すること**だ。
![[効果的に仮説検証する1.png]]
## [[仮説検証]]は常に行うべきか
では必ず[[仮説検証]]を行えばいいのかと問われると、少なくとも私はそうは思わない。[[仮説検証]]にかかる工数や、仮説が正しい確率、1つ1つの調査にかかる工数、間違えた場合のペナルティによって判断が変わるからだ。
先ほどの例でも、[[仮説検証]]にかかる工数が赤丸3つを調べる工数を上回るならば、[[仮説検証]]をスキップした方が速いだろう。そうでなければ、[[仮説検証]]をして確率を高めてから調べたほうが速いかもしれない。
効率面を考えるなら以下の優先度で[[仮説検証]]するのがいいだろう。
| 優先度 | 仮説検証工数 | 調査対象 |
| ------ | ------------ | -------------- |
| 高 | 小 | かなり絞れる |
| 中 | 小 | あまり絞れない |
| 中 | 大 | あまり絞れない |
| 小 | 大 | かなり絞れる |
仮説検証工数がかからないものの優先度が高いのは直感的だと思う。仮説検証工数がかかるもので、対象を絞れる方の優先度が低いのは、**調査対象が少ないため、直接調査したほうが仮説検証より時間がかからないことが多い**からだ。
## 調査のアンチパターン
アンチパターンと感じる方法は以下3つだ。あくまで個人の経験から感じたことにすぎないが。
- 仮説を立てない
- [[仮説検証]]をしないまま、仮説を==事実として==扱う
- [[仮説検証]]が正しく行われたと盲信する
仮説を立てないのは地図のない航海をするようなものだ。偶然陸地にたどり着けることに期待するほど我々には時間がないはずである。冒頭でも述べたとおり仮説は必要だ。
ところで、仮説を立てる人がハマリやすいポイントがある。**仮説や[[仮説検証]]の結果を信じてやまないこと**[^1]だ。[[生存バイアス]]にとらわれた人のように、==永遠に出口へたどり着けない迷路にハマることになる==。
## [[モブプログラミング]]で[[仮説検証]]の精度を上げる
それらを解消するいい方法がある。[[モブプログラミング]]だ。
もし、調査の最中に[[仮説検証]]をせず迷路に迷い込んでいる人がいたら、周りの人が教えてあげよう。本人も悪気があって[[仮説検証]]をサボっているわけではないはず。仮説を盲目的に信じてしまっているだけなのだ。**『(仮説に対して) なんでそう言えるのですか?』**と聞いてあげよう。
また、人間はどんなに気を付けても必ずミスや見過ごしをする。そのため、100%の確率で正しい[[仮説検証]]を行うことは不可能だ。だから、周りの人が**『([[仮説検証]]のプロセスを) もう一度見せてくれませんか?』**と聞いてあげよう。
2人以上の人が真剣に問題と向かい合ったとき、全員が見落とす確率は大きく落ちるだろう。目先の(効率悪そうな)イメージに囚われず是非チャレンジしてほしい。1人でやる調査より何倍も楽しいはずだから。
[^1]: 仮説が仮説であると認識しているのなら、[[仮説検証]]なしに仮説を扱っても問題ない