【仕事】IT業界の見積もり手法「人月」の妥当性【経験談から】

IT業界で見積もりをする場合「人月」という手法があるがどれくらい妥当性があるか?

この記事はこんな疑問にお答えします。

本記事の内容
・IT業界での見積もりである人月とは?
・人月の問題点
・発注の際に気を付けること

■IT業界での見積もりである人月とは?

「今度、システムを構築するのに、発注しようと思っているんだけど、どうやったらいいんだろう」
「見積もりを取らないといけないね」
「IT業界での見積もりってどうやってるの?」
「IT業界では昔から人月って単位で見積もりを出しているね」
「人月?それってどういうもの?」

IT業界で、何かを発注する際に用いられる昔からある手法として「人月」というものがあります。

どんなことでも作業をお願いする際には「見積もり」を取りますよね。


例えば、ドアの修理をお願いする場合は、「材料費」「交通費」「作業費」といった具合にそれぞれの金額があって、合計として「〇〇〇円」です、と提示されます。

IT業界においては、それが「人月」という単位で行われます。

作業が少ない場合は、「人日」という単位も使われます。

これはプログラマーが1日作業したら「〇〇〇円」かかります、というものです。一人日いくらという具合です。これが一ヶ月なら一人月です。

この単位を元に実際の現場では、例えばAシステムの改修をお願いすると、
システムエンジニア A 3人月 単価〇〇〇円/月 × 3ヶ月 = 〇〇〇円
プログラマー    B 5人月 単価〇〇〇円/月 × 5ヶ月 = 〇〇〇円
合計                              〇〇〇円
というように見積もりが提示されます。

■人月の問題点

さて、この「人月」という単位に妥当性があるのでしょうか。

ぶっちゃけて言うと、妥当性などわからない、というのが実際です。

よく考えてみればわかるのですが、
・人が一か月作業をした想定なので、それだけ時間がかかるのかわからない
・実際に作業をする人のスキルによって、かかる時間は雲泥の差があるはず
・作業をする人のスキルを判断する基準がないので判断できない
といったことになるからです。

上記のようなことがあるのですが、実際には発注するためになんらかの金額提示は必要になります。

「人月」の提示金額妥当性は判断できないとしても、なんらかの基準が欲しいですよね。

一つの考え方を提示します。

依頼する作業により、得られる効果から金額の妥当性を判断することです。

例えば、ランディングページ(LP)を発注する場合、出来上がったLPから上がる売上と利益の想定から判断するのです。

LPを作成してもらい、そこから50万円の売上が見込めて、20%までLP発注金額をかけてもよいとするなら、10万円までの見積もり提示であればOKと判断します。

または、1,000円の時給のアルバイトが行っている作業をIT化した場合に、20時間かかるものが、IT化で2時間で終わるようになるとすると、
20時間 × 1,000円/時給 = 20,000円
これが1ヶ月に10回行う作業であるとすると
20,000円 × 10回 = 200,000円
になります。
IT化により、200,000円がかからなくなる、もしくはアルバイトを他の仕事をさせることが可能になります。

IT化した場合、ランニングコストはそれほどかからないと思いますので、月に10,000円かかるとしましょう。

それが今後、何か月も続くのであれば、アルバイトにかかっている200,000円発注にかかっても1ヶ月ほどで回収できることになるので、200,000円までならばOKと判断します。

これらは一例ですが、「人月」そのものの妥当性を考えても答えは出てきませんので、得られる効果から金額の妥当性を判断するのです。

■発注の際に気を付けること

金額の妥当性の判断は得られる効果からある程度判断できるようになりますが、気を付けておいた方がよいことについても触れておきます。

・単価の安さばかりを追い過ぎないこと
安さの分だけクオリティは下がります。
資金がないなどの理由により発注できる金額に限界があると思いますが、得られる効果から妥当な金額を設定して、あまり安すぎる金額設定にはならないようにしましょう。

・優秀な人にお願いすること
これは見極めが難しいのですが、スキルが低い人に依頼すると、
バグがたくさんある
障害が発生し動かなくなる
障害発生の対応にリソースが取られる
といったことがよく起こりますので、要注意です。

優秀な人は単価が高いのですが、その分クオリティの高いものを作ってくれます。上記に挙げた後々の対応もあまり発生しませんので、トータルで見れば安い金額になります。

また、優秀は人は作業も早いので短縮できる時間分の金額が安くなります。

・大きなプロジェクトの場合超優秀な人を雇うこと
僕の経験から、以下のことが言えます。
普通の人100人集めるよりも超優秀な人1人雇った方が絶対に良い!
人が増えれば増えるほど、管理も大変になり、スキルもバラバラな人がいるので、全体としてのクオリティはスキルの低い人のものに近づきます。

1人月80万円の人、100人月必要です、といった場合
80万円 × 100人月 = 8,000万円 であったとしても
1人月2,000万円の人、1人を雇った方が良いというこです。

1人に2,000万円は高すぎだろ!と思うかもしれませんが、結果的には安いことなります。

こうした考え方が発注者にはないので(もしくは決裁権限を持った人にそういう考えがない)、8,000万円の方を選びますが、結果、プロジェクトが上手くいかなくなり、ズルズルと追加の費用が発生し、1億円払ってもバグやエラーの多発するシステムができあがるのです。

じゃあ、いったいそんな超優秀な人はどうやって見極めればいいいだよ?ってことですよね。

これは残念ながら絶対的な基準はありません。

言えるとすれば、「信頼できる人」です。

あとは、以下のような観点を持っている人でしょうか。
・見積もりを効果から判断して提示する人
・保守のしやすさを考えてくれる人
・専門用語を理解しやすく説明してくれる人
・スキルが高くても謙虚な人

最初は単価の低いものから発注し、その成果物や対応を見て判断するのも良いと思います。

参考になれば幸いです。

スポンサードサーチ

人月の神話【新装版】

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です