ユーザーに「見積りの根拠がわからない」と言われたり、ベンダーが持ってきた見積りをうまく上司に説明できなかったりして困ったことはありませんか? システム開発の見積りは、プロジェクトの成否を左右する重要な作業であるにもかかわらず、ユーザー側もベンダー側も多くの悩みを抱えているのが現状です。本連載ではそんな見積りに関する問題を解決するためのヒントを提供します。第1回目は、「ナゼ、見積りが難しいのか」という根本の原因について考えてみます。
見積り手法の整備だけでは不十分
見積りがプロジェクトの成否を左右するのはなぜでしょうか? プロジェクトの失敗の多くは、過少見積りによる貧弱な体制で作業に着手してしまうことに起因しています。十分なリソースを確保せずにスタートし、工程の中盤になってリソースを投入すれども時すでに遅し……どんどん火種が広がり破綻したプロジェクトは皆さんもこれまでにいくつも目にしてきたのではないでしょうか。妥当な見積りを行い、適正なリソースを確保することがプロジェクトを成功に導く第一歩です(図1)。
見積りミス(=誤り)の原因は様々です。ユーザー側に起因する要因としては、
- システムに対する曖昧な要求の提示
- 無理な価格低減要求
などが挙げられます。一方、ベンダー側の要因としては、
- 提案内容の検討不足
- 新技術適用に対する楽観的期待
- 不適切な見積り手法の採択
などがあります。
ここでおわかりいただきたいのは、見積りミスは根本的な要因なのではなく、システム開発に関するユーザーとベンダーの様々な齟齬から生じた結果であるということです。
「このプロジェクトは見積りミスで失敗した」という反省を現場でよく耳にしますが、反省だけではなく、ユーザー、ベンダーの双方が見積りに至るまでのプロセスを検討しなければなりません。決してユーザー、ベンダーのどちらかが見積り手法を整備すればいいという問題ではありません。
ソフトウェアは見えにくい
システム開発の見積りを難しくしている根本的な要因として、ソフトウェアは建築物のように物理的な大きさや構造を実感できないということが挙げられます。これにより、ユーザー側はどこまで要求を明確化すべきか実感できず、システムに対する要求は曖昧になります。一方、ベンダー側もユーザーの要求を満たすことがどの程度難しいことなのかをユーザーにうまく伝えられず、見積りの納得感を得ることができません。
例えば、建築物の施工後に配管を変えたい……ということが手遅れなのは、我々素人でも容易に想像がつきますが、「モノ」が見えないソフトウェアの話になると、この「手遅れ」という意識をユーザーとベンダーの双方で共有することが難しく、結果としてシステムが完成間近になったところで「エレベータが欲しい」といった困難な要求が生じることになるわけです。
執筆者プロフィール
藤貫美佐(Misa Fujinuki)
株式会社NTTデータ SIコンピテンシー本部 SEPG 設計積算推進担当 課長。IFPUG Certified Function Point Specialist。日本ファンクションポイントユーザー会の事務局長を務める。
『出典:システム開発ジャーナル Vol.1(2007年11月発刊)』
本稿は原稿執筆時点での内容に基づいているため、現在の状況とは異なる場合があります。ご了承ください。