見積のKKD法 | フリーエンジニアを辞めました

見積のKKD法

受託開発のソフトウェア、つまりオーダーメイドのソフトウェアの価格は、そのソフトウェアを作るのに必要な労働力によって決定されます。


ソフトウェアを作るのに必要な工数x単価で価格が決まります。工数は人月で数えます。1人に人間が1カ月労働すると1人月。10人が10ヶ月労働すると100人月です。誰が作業するとか、そのソフトウェアを使って得られる価値などは関係ありません。


人月x単価の商売を是正して、創出した価値を評価してくれという要望は昔からソフトウェア業界にあります。しかしながら、今のところは、人月x単価でソフトウェアの価格が決まります。


従って、見積額の根拠として、見積書に工数と単価を必ず書きます。単価は技術者の労務費+会社の経費+会社の利益で決まりますが、工数はどうやって見積もるのでしょうか。


一部のシステム・インテグレータではファンクション・ポイント(FP法)と呼ばれる手法を導入しています。ソフトウェアの持つ機能の数をもとに、そのソフトウェアの規模を測定する手法。1979年にIBM社の.J.Albrecht氏が考案した方式です。


FPは機能の規模や難易度を定量化するもので、難易度と係数など一部に人に依存する要素もありますが、科学的っぽいことが受けて、ソフトウェア業界で広く知られています。


しかし、業界で最も信頼されているのはKKD法です。KKDとは勘と経験と度胸のことです。


工数を機械的に算出しても何となく不安が残るのですが、KKDで出した工数だと妙に納得できるようです。機械的に算出した工数を見ても、「ホンマにこんなにかかるんかいな。」とか「ホンマにこんな工数で出来るんかいな。」と不安になります。でも、KKD法で算出した工数を聞くと「ああ、やっぱりそれぐらいかかるんや。」と納得できたりします。


ソフトウェアの開発はいろいろなノウハウが属人的です。工数の見積も例外ではないってことです。