今や、多くの企業にとって必要不可欠となったITシステムだが、システム構築やソフトウェア開発を行う場合、たいていは開発を専門に請け負う企業にアウトソーシングする。
しかし、そこには様々な問題が発生しているという。無茶な仕様、無理な納期を発注側が望んできたり、一方で納品されたシステムに期待していた機能がなく、追加をお願いしたところ高額の開発費を請求されたりと、発注側、開発側、双方が疲弊する環境があるのだ。
どうしてそのような事態が起きてしまうのか?
『「納品」をなくせばうまくいく ソフトウェア業界の“常識”を変えるビジネスモデル』(倉貫義人/著、日本実業出版社/刊)は、IT業界の中でもソフトウェア開発の業界にはびこる問題とその原因を探り、解決法を提示する一冊だ。
ここでは本書の冒頭から、「ソフトウェアが高額になる理由」をご紹介しよう。
■どうして、ソフトウェアはあんなに高いの?
かなりの予算投資をしてソフトウェアを開発したはいいが、実際に使い始めていると、修正したい箇所が出てきた。そして、その改修を運用会社に依頼すると、想像以上の金額の見積もりが出てきた…というのは“あるある話”だ。文字の表示を一部分直すだけなのに十数万円の見積もりが出てきたというエピソードもあるという。
こうなると、発注側としては、なるべく改修の作業が発生しなくてすむように、最初の構築時に確実に作っておこうと考えてしまうのが道理だろう。しかし、著者の倉貫さんは、この方向性の行き着く先が「現在のソフトウェア開発の商習慣である大掛かりな要件定義と一括請負」だと指摘し、そこにシステムの価格を異常に高額にしている原因があるという。
■エンジニアが“バッファ”をなるべく長く取ろうとする理由
倉貫さんは、高価格になる最大の要因として「見積もり時の過大なバッファ」をあげる。バッファとは日程上の遅れにそなえる予備日や、それに伴うコスト(の上乗せ)のことだ。
開発の現場を知らない発注側は「バッファは本当に必要なのか?」と思うこともあるかもしれないが、そもそもソフトウェアは何が正解か分からない、目に見えないものだ。その完成責任を負わされるプロジェクトマネジャーが、リスクへの対処としてバッファを積んでしまうのは仕方がないことである。
さらに、「納期は絶対である」という以上、現場のエンジニアやエンジニア達のチームリーダーも、念のために多めの日数で見積もりをはかるのは当然のこと。この「絶対」という言葉がエンジニアたちを不安にさせている。倉貫さんはこのことに対して「完成リスクを丸投げしようとするユーザー企業にも問題がある」と述べている。