古河建純 インターネットBlog: 西安の印象
わたしの勤務先(ソフトハウス)も上海とか韓国のソフトハウスに外注していますが,正直メリットあるのか?という印象を持っています.プログラムを作ってもらって,はい終わり,で手が切れるなら確かに単価も安くメリットがあります.偉い人はイニシャルコストだけを見てものを言いますからね.
でもね,日本側のSEは,詳細な仕様書を作って渡さなければならないんですよ.それも自分でプログラムを作るより長い時間をかけて丁寧に作ってやらないとちゃんと理解してもらえない.何しろ言われた事しかやらないから.いわゆる日本的な「行間を読め」という手抜き仕様書じゃあダメなんだ.で,物が上がってきたら検収(テスト)するわけだけど,これも一発でOKになることは無いわけだし(それは国内で作っても一緒だけど,海外相手だと一々日本語の分かる担当窓口→プログラマと展開に時間がかかるからね).
問題は,偉い人達がシステムを顧客に納品したら(売上金を回収して)終わりだと思ってしまうところなんだよね.顧客システムの稼動後にバグ対策や改修が必要になっても日本国内のSEがメンテしないといけない,ということを分かっていない.日本国内のSEが作ったプログラムなら「なあなあ」な馴れ合いで作った本人に「さくっと」直させることもできる.でも,これが海外に作らせたものとなると,国内のSEが(他人の作った)ソースを追っかける面倒なことになるわけで...しかも注釈が日本語じゃないしorz
そういう事例が2,3出てくると,現場のSEは学習しますから海外に発注しようとしなくなります.それじゃあ海外と渡りをつけた偉い人のメンツが潰れるので「半期で○○百万円は必ず海外に発注するように」とかいうお達しを出して強制的にでも売上げを立てようと躍起になってましたね.
私見ですが,システムのライフサイクル全体を見てコストを計算すると,(エンドユーザに近い)業務アプリケーション系の開発を海外に発注するのは,手戻りも多く赤字になるようです.だったら,逆にOSとかインフラに近い部分や,共通部品(ライブラリ)みたいな「エンドユーザが直接さわらないような部分の開発」なら海外に任せても安く上がるのかも(本当か?).
06/08/26追記
この問題の根っこは,プログラムを「工業製品」とみなすところにある.つまり,工場で量産された製品や部品を人件費の安いアジア諸国から輸入した,ということに置き換えてしまったことだ.しかし,プログラムは工業製品と違って「生き物」みたいなところがある.バグや改良などで手を入れなければならない.
工場の量産品なら品質が悪ければ交換され,時間とともに駆逐される.だけど,プログラムはそうはいかない.修正すれば使えるだろ?と言わるので使い続けなければならない.元が粗悪でも償却されるまでの数年間は誰かが面倒をみてやらないといけない.
ソフトウェア産業は未熟だ.出来てきた製品も未熟,国内産だろうが粗悪なのはザラ.安易な海外への依存でコストダウンを狙うのもありだけど,システムのライフサイクル,いや,その次システムも自社に任せてもらえるようにするためのコストと利益を考えることが経営層には必要で無いかい?(納品して終わりじゃないんだよ)
自社内の人間にノウハウが残らないソフトハウスなんて,すぐにダメになるよ.売上げの1割を中抜きして下請けに丸投げするだけなら商社にだってできる.
ま,偉い人は半期毎の利益しか見てませんから,来年やその先の話なんてできませんけどね.