昨日の話題と関連して、今度はシステム開発について。
 
ここ数年、「オフショア開発」なるものが流行りつつある。
発端は、ITバブル期に人件費が高騰したアメリカが、インドにソフトウェア開発をどんどん流していったことから、モノづくりだけじゃなくソフトウェア開発も海外に出すようになったことである。
 
日本でも結構やられていて、最近は日本語が堪能な人々の多い中国の大連なんかが話題としてホットだ。
しかし、アメリカとはかなり事情が異なる。
 
がんばっているベンダーには申し訳ないが、基本的にうまく行っていないし、ユーザにもお勧めしたくない。
うまくいくとすれば、「制御系」、あるいはそれに類するのシステムだけだろう。
 
情報システムには大きく分けて、「業務手続系」と「制御系」がある。
業務手続は、たとえば経理人事や、顧客管理、業績管理など。
制御系は、運行システムや情報システムそのものの制御、あるいはファイル管理など。
 
後者は、割と数学的に考えられるし、表示は多少変な日本語でも構わない。場合によっては英語のままでもOKだ。
 
しかし、前者は商慣行、法律、思想が反映されないと機能しない。
これは、どれだけ堪能でも、日本語が第二外国語では真の理解は難しい。
だって、日本に生まれ育った私でも、お付き合いする会社によって同じ言葉が異なる意味を持つことをよく経験する。
輸入物の業務系システムが使えないのと同様、カスタムメイドシステムの開発も、かなり困難。というか、はっきり言って無理。
 
 
もうひとつ理由を挙げれば、関係者の多層化によるコミュニケーションロス。
オフショア開発やると、5層構造になる。
仝楜劬元受ベンダ→3姐颯戰鵐世瞭本担当者→こ姐颯戰鵐世離廛蹈献Дトマネジャー→コ姐颯戰鵐世SE。
 
伝言ゲームの例のとおり、いろんな情報が抜け落ちる。
ベンダーは、「すべて紙に書いてないのが悪い」というが、そんなことしたらかえってコストがかかるし、第一そんなことは不可能だ。
うまくいくプロジェクトは、最後は阿吽の呼吸。
 
もし、オフショア開発やるなら、制御系システムにとどめておいたほうがいいと思う。
人件費も物件費も、絶対に余分にかかる。
 
(反論いっぱいありそうだなー)
 
知識工房 山崎