システム開発の見積りで必ず登場する「工数(人月)」。「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人月」の作業を異なる体制でこなす場合
▲ 計算上はすべて同じ「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人月=○人日」と明示されることが多いため、まず問題文の前提条件を確認するのが鉄則です。