未経験者歓迎!知識ゼロからシステムエンジニアを目指す

工数とは 〜 システムの規模を見積もる単位のお話

「工数」とは、ある作業を行うのに必要とされる「人数 × 時間」のことを指します。

 

「人日」(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選 - 受講内容と料金まとめ(無料あり) ※ 就職・転職支援付き

 

フリーランスエンジニア 案件サイト 24選 - 【最高単価/募集地域/公開案件数】まとめ

PR


 このエントリーをはてなブックマークに追加 

PR


HOME スマホアプリ開発ブログ SE入門講座 プログラミングスクール フリーSE案件サイト SEおすすめ書籍