【ここも】

COCOMO とは?

💡 コードの量と難しさから「何人月かかるか」を計算する見積もり公式
📌 このページのポイント
COCOMO 見積もりモデル 工数(人月)= a × (KLOC) ^ b 入力 コード規模 (KLOC = 千行単位) プロジェクト種別 Organic(小規模) Semi-detached(中規模) Embedded(組み込み) 出力 工数(人月) 開発期間(月) 中間COCOMOではさらにコスト調整係数を適用 チーム経験 / 要求信頼性 / ツール成熟度 / DB規模 etc.(15項目) → より現実的な見積もりに補正 コード規模 × 複雑さ係数 で工数を算出する
COCOMOのイメージ
ひよこ ひよこ

COCOMOって何を計算するものなの?

ペンギン先生 ペンギン先生

ソフトウェア開発で「何人月くらいかかるか」を数式で計算するモデルだよ。コードの規模(何千行くらい書くか)を入力すると、必要な工数や開発期間が出てくるんだ

ひよこ ひよこ

どうやって計算するの?

ペンギン先生 ペンギン先生

基本の式は「工数 = a × (KLOC)のb乗」という形だよ。KLOCは千行単位のコード行数で、a と b はプロジェクトの種類で変わる係数なんだ。たとえば10万行のプログラムなら KLOC=100 を代入して計算するよ

ひよこ ひよこ

プロジェクトの種類で係数が変わるってどういうこと?

ペンギン先生 ペンギン先生

COCOMOでは3つのモードがあるんだ。Organic(小規模で経験豊富なチーム)、Semi-detached(中規模)、Embedded(ハードウェア制約が厳しい組み込み系)。組み込み系は制約が多い分、同じコード量でも工数が大きくなるように係数が設定されているんだよ

ひよこ ひよこ

コードの行数だけで見積もるのは正確なの?

ペンギン先生 ペンギン先生

いい質問だね。基本COCOMOは行数だけだけど、中間COCOMOでは「チームの経験」「要求の信頼性」「ツールの成熟度」など15個のコスト調整係数を掛け合わせるんだ。これで現実に近い見積もりになるよ

ひよこ ひよこ

今でも使われているの?

ペンギン先生 ペンギン先生

元祖COCOMOは1981年のモデルだから古いけど、後継のCOCOMO IIが2000年に発表されて、オブジェクト指向開発やコード再利用率にも対応しているよ。情報処理試験でもよく出題されるし、見積もりの「根拠」として提案書に使う企業も多いんだ

ペンギン
まとめ:ざっくりこれだけ覚えればOK!
「COCOMO」って出てきたら「コードの規模から開発工数を計算する見積もりモデル」と思えればだいたいOK!
📖 おまけ:英語の意味
「COnstructive COst MOdel」 = 構成的コストモデル
💬 Constructive(構成的な)Cost(コスト)Model(モデル)の頭文字を取った略語。「建設的にコストを見積もろう」という意味が込められているんだよ
← 用語集にもどる