ウォーターフォールの適切な開発期間を見積る
ウォターフォール開発には工数に見合った適切な開発期間というものがあります。100人月の作業が100人いたら1ヶ月で終わるかといったらそんなことはありません。100人月かかる作業にはそれに合わせた開発期間が必要です。ではどうやって開発期間を求めれば良いでしょうか。
開発期間を見積るにはCOCOMOの指標が役に立ちます。COCOMOとはソフトウェア開発の工数・期間の見積もり手法です。COCOMOではシステム開発にかかる期間を工数をxとした場合
小規模
2.5*x^0.38
中規模
2.5*x^0.35
大規模
2.5*x^0.32
と定義されています。この指標は古いものですが統計情報を元に算出されているためなかなか優秀でJUASが2007年に調査した値でも近い値となっています。
しかしこの値には、
- 小規模、中規模、大規模の境目が難しい
- 計算式が覚えにくい
- 1人月で計算すると2.5ヶ月かかるという計算になってしまう
- 主観的に見て少し長めの期間になってしまう
といった問題を抱えています。このような問題を回避するために私は平方根を使用して見積りを行っています。
x^0.5
例えば100人月の作業だと10人で10ヶ月。9人月の作業だと3人で3ヶ月となります。主観的には少し短めの開発期間になりますが期間短縮が求められる近年ではそこそこ妥当な値になることと、覚えやすく、要員動員数の平均人数が期間と同数になるためわかりやすというメリットがあります。また、覚えやすいためお客さんにも覚えてもらうことが可能です。
ちなみにこの工数期間の見積りには大きな落とし穴があって、そもそもの工数が間違っていると元も子もありません。COCOMOではステップ数を利用して工数を求めようとしますが、ステップ数と工数には相関関係はほとんどなく、その点がCOCOMO2でも見直されているくらいなのでステップ数による工数見積りは利用しない方が良いでしょう。
Next >> 開発期間とデスマーチの関係