はじめに
ソフトウェア開発における見積方法には様々な方法があり、各ソフトウェア開発会社や開発するシステム、機能により見積方法は違いますが、大きくは「開発規模」をベースにした見積方法と、「開発要員」をベースにした見積方法の2種類があります。
今回は、ソフトウェア開発における「開発規模」をベースにしたソフトウェア開発における見積方法について述べたいと思います。
※「開発要員」をベースにした見積方法についてはこちらをご覧ください。
「開発規模」による見積り
ソフトウェア開発における「開発規模」をベースにした見積りは、開発するシステム機能を規模であるKs(キロステップ)などで見積る方法で、例えば、1ks=1人月のような生産性で見積りした開発規模を生産性で割ることにより、開発工数(人月、人日、時間)を算出する方法です。
もちろん、「開発規模」をベースにした見積りにおいては、開発言語や開発するシステム機能の難易度によっても1人月に対する生産性が変わってくるため、顧客やユーザー、プロジェクトにより見積る開発規模、生産性は異なります。
「開発規模」による見積りのメリット
ソフトウェア開発における「開発規模」による見積りのメリットは、あくまでも開発規模による見積りのため、大幅に見積った開発規模を超えない限り、生産性を上げることにより利益が出やすいというメリットがあります。
例えば、10ks=10人月で見積りおよび契約し、生産性を上げることにより8人月で開発した場合、単純に2人月の利益が出ることになります。
「開発規模」による見積りのデメリット
ソフトウェア開発における「開発規模」による見積りのデメリットは、見積った開発規模と開発実績はほぼ同じだが、何かしらの要因(開発要員のスキル不足など)で開発工数が見積りよりも超えるような場合、単純に損失となる可能性があります。
例えば、10ks=10人月で見積りおよび契約したが、開発実績として12人月かかった場合、単純に2人月の損失が出ることになります。
要件追加、開発機能追加などで開発規模に比例して開発工数も増えるような場合は、追加見積りや追加契約という手段がありますが、上記のような場合は単純に損失となってしまいます。