俺の報告

RoomClipを運営するエンジニアの日報(多分)です。

意思決定フレームワークでいいのない? - 日報 #129

どんなレイヤーでも意思決定はありますよね。
戦略決定フェーズはもちろん、 実装フェーズでも意思決定の連続なわけです。
そして「よりよい」意思決定のためには、情報が必要です。
この意思決定に必要な情報の「適度な」量と質がイマイチ分かりません。

例えば、掲示板機能を実装しようとした時を考えます。
調べたら例えばこんな選択肢があることが分りました。

  1. 掲示板サービスをレンタルする
  2. 掲示板スクリプトを自分のサーバに設置する
  3. 掲示板スクリプトフルスクラッチで作って設置する

とにかく今掲示板機能が欲しければ1番で済むかもしれません。
多少コストを割いてもいいなら2番を選択したほうが、後からカスタマイズが出来るかもしれません。
ふんだんにコストを割いて、とにかく改変しまくれる3を選択したほうが、最終的な開発コストは一番安上がりかもしれません。

または1番でとりあえず開始して、
その様子を見ながら2番で軽くモックを作りはじめ、
ガッツリ準備が整ったら3番みたいな段階的な採用もあるかもしれません。

もちろんその時の目的で選択肢は変化すると思います。
例えば、どんな目的なら1番は最も適当になるでしょうか。
一見して「すぐ掲示板が欲しい!」という目的に対して最適な気もしますが、
コストをかけていいなら2番でも3番でも高速に手に入る可能性はあります。
どちらかというと、「今月だけ掲示板機能が欲しい」という目的に対して1番は沿っているように見えます。 ですが、「とりあえず今月だけ掲示板機能が絶対欲しいが、うまくいくようならずっと続けてもいいし、今月やる中でも色々改変したい」
みたいな欲求になったら2番が良さそうにみえてきたりもします。
なんだかよくわかりません。
かけられるコストと、得られる見込みのあるメリットのバランスで、、、などと考えたところで、
結局そのコストとメリットの「実体」を具体的に記述しろと言われると困るのが僕です。

開き直って、目的に優先度を付与して、それぞれの目的達成のためのコストとメリットを各選択肢ごとに数値化、
そしてその行列を眺めて最もROIが良い物を選択する!みたいなことをしみてもいいですが、
その優先度を付ける意思決定の情報がまた必要になります。
「どっかでは決めの問題や!」と威勢よくしてみてもいいですが、
それならその決めの問題の人が最終判断をすれば良いと思うので、コストだとメリットだのは参考程度というわけです。

僕は多数ある情報から重要な情報をフィルタリングすることが本当に苦手です。
逆に言うと要らない情報を捨て去ることがとても不得意です。
だから過不足なく表現できるシンプルな状態がとても落ち着きます。
意思決定においても、過不足なく表現できるシンプルな状態に持ち込むことさえできればいいのになぁという思いになります。
なんかそういう意思決定フレームワークみたいなもの、ないかなぁ。。。
面倒だからもう書くの辞めようなぁ。。。