ここ1カ月ほど,システム開発案件における「見積もり業務」について取材した。6月に創刊する若手ITエンジニア向けのスキルアップ情報誌である『日経ITプロフェッショナル』の創刊前特別号(3月27日発行)で,特集記事を書くためだ。

 その過程で,「会社として,特別な見積もり手法は持っていない」とするベンダー,あるいは「見積もりの算定根拠を厳密に求めようとしてもムリ」などと考えるベンダーが想像以上に多い現実を,改めて思い知らされた。

 これらのベンダーの主張は,おおむね共通している。いわく――,「現実の商談では必ず競合がある。いくらまじめに工数を見積もっても,ライバルの方が安ければ,それで終わり。見積もりに根拠を求めても意味はない」(ある大手コンピュータ・メーカーの役員)というものだ。

 「顧客企業の予算を聞き出せる優秀な営業担当者と,経験豊富なプロジェクト・マネージャさえいれば問題ない。予算に合わせてシステムを構築するのが,我々の腕の見せどころ」と,奇妙な自信を見せるベンダーもあった。

 確かに「システムの価格」は一筋縄ではいかない問題である。最近は,システムの価格は,システムの「価値(付加価値)」で決めるべきとする議論もある。いわゆる成果報酬を組み込んだ契約形態も登場してきている。

 だが,だからといって開発に必要な工数がどれほどになるかを,おおざっぱな算出で済ませて良いということにはならない。システムの価格が「価値」を含む総額だとしても,では,その価値部分がどれほどで,原価(工数など)はどれだけなのか,さらに,その内訳はどうかなどを,できるだけ正確な形で把握し,必要なら顧客に説明できるようにすべきだ。それができなければ,ユーザー企業の不信感は払拭できない。商談での敗退や値引き要求,そして赤字プロジェクトの発生などにつながってしまう。

 もちろん難しい問題だが,妥当な工数を把握するために,例えばファンクション・ポイント(FP)法[用語解説]やCOCOMOIIなどに代表される統計的な技法を利用する努力も必要だろう。

アカウンタビリティ(説明責任)が求められる

 工数などを客観的に把握することが必要な理由の第一は,顧客の納得性を高めるためだ。プロジェクトマネジメントの専門家である西建氏(プロシード・シニアパートナー)は,こう語る。

 「良いシステム開発とは安く,早く,必要な機能を盛り込んだもの。しかし,この3条件は互いにトレードオフの関係にあるので,発注者,受注者とも商談の段階で何らかの妥協が必要になる。その時,ベンダーには何にどれだけの工数がかかるのか,予算を減らした場合,どこに影響が出るのかといったことを受注時に明らかにする,“アカウンタビリティ(説明責任)”が要求される」

 例えば,統計的な見積もり技法を使って,サブシステムごとの工数を算出しておけば,唯々諾々として値引きに応じるのではなく,「値引きには応じるが,その場合,このサブシステムは第2フェーズに回すことになる」といった逆提案が可能になるだろう。

 理由の第2は,統計的な見積もり技法の利用が,システム開発における生産性の把握,そして向上につながる点である。

 「多くのITベンダーにとって生産性の向上は至上命題だが,現状は単なるお題目に終わっている。例えば,FP法を使って各プロジェクトの規模を把握し,プロジェクト終了後に判明した実際の工数と比較すれば,FP値当たりの生産性がどうだったのかが,わかる。FP法などを学ぶ意義としては,工数などを見積もることはもちろんだが,システム開発の生産性を客観的に把握できるようにする側面も大きい」(エクサ技術部の児玉公信・担当部長)。

 実際,海外では統計的な見積もり技法を使って,見積もり精度の向上を図るだけでなく,システム開発の生産性を客観的に計測する活動が盛んだ。

 例えばFP法については,国際的なユーザー団体であるIFPUG(International Function Point Users Group)が存在しているし,FP法に限らず,ソフトウエア・メトリックス全般について活動しているオーストラリアのASMA (Australian Software Metrics Association,アズマ),オランダのNESMA (Netherlands Software Metrics Users Association,ネズマ)なども活発に活動している。

 だが日本では,こうした取り組みはほとんど行われていない。国土交通省の外郭団体である経済調査会が,ソフトウエア開発費を細々と調査,収集している程度である。

FP法などの限界を見極める

 もちろんFP法やCOCOMOIIなどの技法は決して万能ではなく,様々な限界がある。
 顧客から概要見積もりを求められるようなプロジェクトの上流工程においては,これらの技法を使っても工数を正確に算出することは確かに難しい。

 だが,それでもFP法などを若手ITエンジニアが学ぶことの意義は大きいと言える。例えば,プロジェクト・リーダーに必要な工数を算出するFP法などの知識があれば,事例参照法やWBS法などに加えて,簡略化したFP法を併用すれば,見積もりの妥当性をより高められる。

 そもそも,そうした知識すらなければ,見積もり提案時に,開発に必要な工数を経験と勘だけで算出して済ませてしまう習慣からは,抜け出せるはずもない。幸か不幸か,これまではそれが通用してきた。しかし,ユーザー企業のシステム投資に対する目,そして見積もりに根拠を求める姿勢は,強まる一方だ。

 IT業界関係者は,こうした変化を真剣に受け止めて,それぞれができる限りの努力をすべきではないか。

(安倍 俊廣=日経ITプロフェッショナル編集)