ソフト開発を海外に発注できないのはなぜか?

某会社社長が、技術責任者に「なぜ高い日本のソフト会社を使う、中国・インドに頼んで、もっとコストダウンしろ!!!」。社長からこう怒られたという話をしばしば聞く。しかしソフト開発を海外企業に委託するのはそう簡単ではない。

 ソフトの業界では、海外のソフト会社に開発業務を委託することを「オフショア」と言う。これまではインドのソフト会社がオフショア先として有名であった。次に中国が名乗りを上げた。

 残念ながら、現状のソフト開発は極めて労働集約的な産業である。「人件費の安いインド・中国へ発注すればコストが下がるに違いない。新聞にもオフショア開発の記事がよく出ているではないか」。社長がこう考えるのは当然ではある。

 だが、いくつかのハードルがある。最も大きな問題は、ソフト開発を頼む顧客側が、発注内容をきちんと整理できないことだ。いわゆる「ソフトの仕様」「ソフトの要件」を固められないのである。ソフト開発の仕様決めに関してきちんと意思の疎通を図ることは、日本の企業同士であっても難しい。そこが曖昧なまま、海外の会社に頼んでしまうと、顧客の希望とは全く別物のソフトが出来上がってしまう。

 顧客がきっちり要件をまとめて発注したつもりでも、請け負ったソフト会社が作れないという事態も起こり得る。数年前、こんな話を聞いた。ある企業がインドの会社に受発注・在庫管理システムの開発を頼み、仕様書を送付した。するとインド側から、「この仕様書には論理エラーがあるので開発できない」という連絡が入った。

 論理エラーの内容を顧客が問いただすと、「受注処理が終わっていないのに、出庫できる仕様になっている。これはおかしい」という返事であった。日本の商慣習では、顧客と営業担当者があうんの呼吸でものを出荷してしまうことがある。システムもこうしたやり方に合わせて作られる。インドのソフト開発者にすれば、それは理屈にあわない。

 さらに問題なのは、製品を納入した後に価格が決まる取引の場合だ。いったん決めた価格が後々の調整で変更されることすらある。きめが細かいとも言えるし、非論理的な世界とも言える。こうした日本の商慣習を仕様書だけで海外企業に理解させることはまず不可能である。

訪日や出張の費用をかければ安くならない

 そこで現実には、仕様を固める段階から、インド・中国ソフト会社の人に参画してもらうことが多い。顔を突き合わせて、なぜこういう仕様にするかを説明していくわけだ。しかしこれでは日本に来てもらうための旅費や宿泊費がかさみ、開発費用はあまり安くならない。

 逆に、仕様書を取りまとめた日本側のスタッフがインドや中国に飛び、開発をする現地のスタッフたちに仕様を説明することもある。日本とアジア諸国の両方の仕事の進め方を熟知しているコンサルタントを雇う手もある。いずれにしても、これまた相当な手間とコストがかかる。

 こうした難問があるため、一般の企業が自社の業務処理用ソフトを海外で開発してうまくいった例はまだそう多くはない。コンピューターメーカーが自社製品のソフト開発に海外企業を使う例はかなりある。これは仕様を自分ではっきり決めやすいからだ。それでも時々、開発に失敗したという話は聞こえてくる。

 難しいとはいえ、アジアのソフト会社と協業していくことは日本にとって避けては通れない道だろう。インド・中国のソフト技術者は大学でシステムエンジニアリングの基本をしっかり学び、中には米国で修業した人もいる。実際、優秀な人が多い。最先端の技術を持っている隣人の力を借りるというのは、間違いではない。インド・中国のソフト開発パワーを借りるには、日本側の体制整備がまず必要と言える。