工数とは 〜 システムの規模を見積もる単位のお話
「工数」とは、ある作業を行うのに必要とされる「人数 × 時間」のことを指します。
「人日」(MD = man day)や「人月」(MM = man month)といった単位で表します。
たとえば、完成までに1人で5日間かかる作業の工数は「5人日」となります。
1人 × 5日間 = 5人日
また、5人が1日作業する場合も、先ほどと同じく「5人日」となります。
5人 × 1日間 = 5人日
工数は通常、1日を8時間、1カ月を20日間と仮定して算出することが多いです。
ですので、「1人月」は「20人日」と等しいということになります。
IT業界でよく言われる「人月工数」とは、この「1人月」を積み重ねた数値のことを指します。
また、「1人のエンジニアが1カ月働く場合にかかるコスト」、つまり「1人月あたりの費用」のことを「人月単価」と呼びます。
工数や人月単価については、「SEの人月単価を考える」というカテゴリで詳しく述べていますので、そちらもご覧ください。
プロジェクトの開発工数を見積もるには
システム開発プロジェクトの工数を見積もるためには「設計や開発にどれくらいかかるか」を測るための「ものさし」が必要となります。
たとえば、過去のシステム構築で「1000行のプログラムを書くのに1人で1日掛かった」という実績があったとします。そして、同じプログラム言語で10万行のプログラムを書かなければならない場合、その工数は以下のように見積もることができます。
10万行 ÷ 1000行(1人日あたり) = 100人日
この例では「1000行のプログラムを書くのに1日掛かった」という実績が「ものさし」となり、10万行の開発工数「100人日」が算出できました。
このように、実際の現場では過去のシステム構築で蓄積された「ものさし」を利用して工数の見積もりを行っていくと、見積もりの精度を上げることができます。
また、過去の実績を「ものさし」とする方法は「プログラムを書く工数」だけに限らず、「設計書を作成する工数」や「テストを実施する工数」を見積もる際にも同じように応用することができます。
しかし、全く新しいシステムを構築する場合や、過去に使ったことのない言語を使って開発を行う場合など、参考になる「ものさし」がないプロジェクトもあります。
そのようなケースでは、たとえば「ファンクションポイント法」と呼ばれるソフトウェアの規模を測る手法が用いられたりしますが、なにぶん不確定な要素も多いため、ベテランのエンジニアであっても、正確に工数を見積もることは非常に困難な作業になります。
■次の記事
工数を見積もるときの注意点
■おすすめの記事
プログラミングスクール28選 - 受講内容と料金まとめ(無料あり) ※ 就職・転職支援付き

工数とは 〜 システムの規模を見積もる単位のお話 関連ページ
- システムエンジニアとは
- システムエンジニアのやりがいとは
- システムエンジニアの仕事内容
- システムエンジニアに求められる能力
- システムエンジニアの資格
- 企業の形態と仕事内容
- 文系でもSEになれるのか
- SEの新人研修期間はどんなことをするのか
- SE35歳定年説とは
- 女性でもシステムエンジニアになれる?
- 女性システムエンジニアの経験談
- 工数を見積もるときの注意点
- 人月単価とは 〜 システムエンジニアの値段
- 技術力とは 〜 「平仄」という漢字が読めますか?
- お客さまにとって頼りになるエンジニアとは
- 請負契約と委任契約
- これだけは覚えておきたい 〜 仕事で使うアプリケーション
- たった1カ月で一生モノのスキルを身につける〜オンラインブートキャンプ
- TechAcademy(テックアカデミー)の評価と8個の質問と【辛口な】回答
- 【20〜29歳限定】未経験からプログラマへの完全無料カリキュラム
- 【初心者向け】安心して通えるプログラミングスクールのおすすめ3選【無料あり】
- 未経験から【無料】プログラミングスクールで正社員に!おすすめベスト3を発表!
PR