システム開発の見積りで必ず登場する「工数(人月)」。「3人月」「20人日」と言われても、現場経験がないとピンと来ません。本記事では、工数の意味・計算方法・相場感を、IPA試験対策の観点から整理します。

対象試験と出題頻度

工数(人月)は、ITパスポート・基本情報技術者・応用情報技術者すべてで出題される頻出テーマです。

特にプロジェクトマネジメントや見積り技法(FP法・COCOMO法など)と絡めて、「総工数の計算」「要員配置の妥当性」を問う計算問題として定番化しています。

詳細をクリックして確認
対象試験:
ITパスポート
基本情報技術者
応用情報技術者
出題頻度:
★★★★☆
ランクA(重要)必ず覚えておくべき

用語の定義

情報処理試験を勉強していると、「3人月って3人で1か月?それとも1人で3か月?」と混乱しがちです。

工数(人月/Man-Month)とは、一言で言うと

 「作業に必要な労働量を「人数 × 期間」で表した単位

のことです。

イメージとしては、引っ越し作業の見積りです。

引っ越し業者は「2人で1日かかります」と見積もります。これは「2人日」という労働量です。同じ仕事を1人でやれば2日、4人でやれば半日(理論上)。

この「人数×日数」の考え方をシステム開発に持ち込んだものが工数です。

1人が1か月かければ終わる作業量を「1人月」、1人が1日かければ終わる作業量を「1人日」と呼びます。

📊 工数(人月)の基本情報

項目 内容
英語名 Man-Month(MM)/Person-Month(PM)
計算式 工数 = 投入人数 × 作業期間
主な単位 人時、人日、人月、人年
用途 開発規模の見積り、要員計画、コスト算出

解説

システム開発のコストの大部分は人件費です。そのため、開発規模を「お金」で見積もる前に、まず「どれだけの労働量が必要か」を測る必要があります。

この労働量を共通の物差しで表すために、工数という概念が使われます。

工数の単位と換算

工数には粒度の異なる4つの単位があります。換算の基本前提は「1人月=20人日(営業日)、1人日=8人時」です。

単位 英語 意味
人時 Man-Hour 1人が1時間で行う作業量。細かい保守作業に使う
人日 Man-Day 1人が1日(8時間)で行う作業量。短期タスクで使う
人月 Man-Month 1人が1か月(約20営業日)で行う作業量。最も一般的
人年 Man-Year 1人が1年で行う作業量。大規模プロジェクトで使う

図解:工数の計算イメージ

「6人月」の作業を異なる体制でこなす場合

1人 × 6か月
▮▮▮▮▮▮ 6か月
= 6人月
2人 × 3か月
▮▮▮ 3か月
= 6人月
3人 × 2か月
▮▮ 2か月
= 6人月
6人 × 1か月
▮ 1か月
= 6人月

▲ 計算上はすべて同じ「6人月」だが、実際は人数を増やしても期間は単純に短くならない(後述)

人月の罠(ブルックスの法則)

ここで重要な事実があります。「6人月」の作業を6人で1か月では終わりません。

人数が増えるほど、コミュニケーションコスト(情報共有・調整・教育)が増加し、作業効率は低下します。

フレデリック・ブルックスはこの現象を「遅れているソフトウェアプロジェクトへの要員追加は、さらに遅らせるだけである」と表現しました(ブルックスの法則)。

📈 コミュニケーションパスの数

n人のチームで発生する意思疎通の経路数は n × (n-1) ÷ 2 本。人数が増えるほど指数的に増加します。

人数 2人 3人 5人 10人 20人
経路数 1本 3本 10本 45本 190本

人月単価の相場感

受託開発の現場では、工数を金額に変換する際に「人月単価」を使います。

日本のSI業界では、職種・スキルレベルにより以下のような相場が一般的です。

💰 人月単価の目安(日本国内)

職種・レベル 人月単価 人日換算(÷20)
初級プログラマ(PG) 50〜70万円 2.5〜3.5万円/人日
中級SE/PG 70〜100万円 3.5〜5.0万円/人日
上級SE/リーダー 100〜130万円 5.0〜6.5万円/人日
PM/コンサルタント 130〜200万円 6.5〜10万円/人日

※ 元請け/二次請け/フリーランスなど契約形態によって変動。試験では具体的な単価は問われないが、「人月単価×工数=開発費」の構造は押さえておくこと。

計算例:プロジェクト総工数

【例題】

設計に2人で3か月、製造に4人で2か月、テストに3人で1か月かかるプロジェクトの総工数は?

─────────────────────

設計 :2人 × 3か月 = 6人月
製造 :4人 × 2か月 = 8人月
テスト:3人 × 1か月 = 3人月
合計 :6 + 8 + 3 = 17人月

では、この用語が試験でどのように出題されるか見ていきましょう。

💡 工数(人月)の核心を3行で

・「人数 × 期間」で開発規模を表す労働量の単位
・1人月 ≒ 20人日 ≒ 160人時(営業日ベース)
・人数を増やしても期間は単純に短縮できない(ブルックスの法則)


試験ではこう出る!

工数(人月)は、IP・FE・APの午前問題で「総工数の計算」「要員追加時の所要期間」「見積技法との関連」として出題されます。

📊 過去問での出題実績

試験回 出題内容 問われたポイント
FE R元秋
午前 問52
作業途中で残工数の見積りを再計算し、追加要員数を求める問題。 残作業量÷残期間で必要人数を算出する基本パターン
AP H29春
午前 問52
FP法で算出した規模から開発工数(人月)を計算する問題。 FP値×生産性係数=工数の流れを理解しているか
IP R4
問37
「人月」の意味として正しい記述を選ぶ問題。 「1人が1か月で行う作業量」が正解。日数や時間との混同に注意
AP H26秋
午前 問52
遅延プロジェクトに要員を追加した場合の効果を問う問題。 ブルックスの法則。「単純に期間が短縮される」は誤り

📝 IPA試験での出題パターン

パターン1:総工数の単純計算
「設計○人月、製造○人月、テスト○人月の合計を求めよ」または「○人で○か月」を人月に変換する形式。式は工数=人数×期間。単位の換算(1人月=20人日)が混ざる問題もあるため、20倍/÷20の関係を即答できるようにしておく。

 

パターン2:途中追加要員の算出
「予定の○%が完了した時点で残作業が増えたため、残期間内に終わらせるには何人追加が必要か」という形式。残工数÷残期間=必要人数の式で解く。FE・APの定番。

 

パターン3:ブルックスの法則
「遅延プロジェクトに要員を追加した場合の効果」を選ばせる形式。「コミュニケーションコストの増加で逆に遅れる」が正解。「単純に期間が半分になる」「品質が向上する」はひっかけ。

 

試験ではここまででOKです。COCOMOの係数値そのものは問われないため、深追いは不要です。


【確認テスト】理解度チェック

ここまでの内容を理解できたか、簡単なクイズで確認してみましょう。


Q. 「工数(人月)」の説明として、最も適切なものはどれでしょうか?

  • A. 作業に必要な労働量を「投入人数 × 作業期間」で表す単位であり、1人月は1人が1か月かけて行う作業量を示す。
  • B. プロジェクトの完了予定日から逆算して、各工程の開始日と終了日をガントチャート上に配置する手法。
  • C. ソフトウェアの機能を入出力やファイル数などから定量化し、開発規模をポイントで表す見積り技法。

正解と解説を見る

正解:A

解説:
工数(人月)は「人数×期間」で労働量を表す単位で、1人月は1人が1か月(営業日換算で約20人日)で行える作業量を意味します。見積り・要員計画・コスト算出の基礎となる概念です。

選択肢Bはスケジューリング(ガントチャートやアローダイアグラム)の説明であり、労働量ではなく時間軸上の配置を扱います。選択肢Cはファンクションポイント法(FP法)の説明です。FP法は規模をポイントで定量化する技法で、工数そのものではなく「規模から工数を導く」ための入力情報を提供する手法です。


よくある質問(FAQ)

Q. 「人月」と「工数」は同じ意味ですか?

厳密には階層が異なります。「工数」は労働量という概念そのものを指し、「人月」はその工数を測る単位の1つです。同じ工数でも、粒度に応じて人時・人日・人月・人年と呼び分けます。会話の中で「工数=人月」のように同義で使われることもありますが、正式には「単位を含めた工数の表現が人月」と理解しておくと混乱しません。

Q. なぜ日本のSI業界は人月で見積もるのですか?海外ではどうですか?

人月見積りは「労働時間に対して報酬を払う」という発想で、受託開発・SES契約と相性が良いため日本で定着しました。一方で「成果物の品質と工数が連動しない」「優秀な人ほど工数が少なくて損」という構造的な問題(人月商売の限界)があり、欧米では成果ベース契約やアジャイルのストーリーポイント見積りへのシフトが進んでいます。試験範囲外ですが、業界知識として知っておくと役立ちます。

Q. COCOMO法やFP法と工数の関係は?

FP法は「機能の数や複雑さからシステム規模をポイント化」する手法、COCOMO法は「ソースコードの行数(KLOC)から労働量を推定」する手法です。どちらも最終出力は「人月(または人時)」になります。つまりFP・COCOMOは規模を測る入口、人月はその出口に当たる共通単位です。試験ではこの「規模 → 工数」の流れを理解しているかがAP H29春問52のように問われます。

Q. 1人月の営業日はなぜ20日で計算するのですか?

月によって営業日数は18〜23日と幅がありますが、年間の平均稼働日(約240日)÷12か月 ≒ 20日となるため、見積りでは20人日/月が標準的に使われます。会社や契約によっては18日・21日換算を採用する場合もあります。試験で換算が必要な場合は問題文に「1人月=○人日」と明示されることが多いため、まず問題文の前提条件を確認するのが鉄則です。