スラッシュドット    はてなブックマーク  Yahoo!ブックマークに登録  印刷


連載

オフショア開発時代の「開発コーディネータ」(2)

中国オフショア開発の成功と失敗の実態

幸地 司
アイコーチ有限会社
2004/10/13


中国でのオフショア開発を成功させるためには、「『何を』達成すべきかという事業目的を明確にすることだ」と前回述べた。今回は実際に中国で体験した失敗例や、事例を研究して得た教訓などを紹介する。(→記事要約<Page4>へ)


- なぜ日本は中国で失敗し続けるのか?
- PR -

 なぜ多くの日本企業は、中国オフショア開発で失敗し続けるのでしょうか?

 これまで日本企業はシステム開発に関して数ある選択肢の中から、中国オフショア開発を選択してきました。それが、今日のIT業界は私たちが好むと好まざるとにかかわらず、中国やインドなど海外IT企業との共存が必要不可欠になってきています。日本企業の担当者が中国渡航しなくても、彼らの方から日本に押し寄せて、日本語で立派なプレゼンテーションを披露する時代になりました。

- 事例から原因を研究する

不信感だらけのソースコードレビュー

 ある中国オフショア開発プロジェクトの検収結果が届きました。いくつかのバグが見つかったため、残念ながら一発では検収が通りませんでした。よく調べてみると、コーディング規約に従ってないソースコードの書き方も若干あります。ソースコードレビューは何回もしていたはずなのに……。

 日本企業の開発コーディネータ(以下、日本)は、バグの原因を探り、再発防止に努めなくてはいけません。開発コーディネータと中国ベンダの開発リーダー(以下、中国)は、以下のような会話をしています。

日本 「中国側のソースコードレビューはどうなっているのですか? 先日報告されたソースコードレビューの報告書を読みましたが、何をどのようにレビューしたのか、よく理解できませんでした」
中国 「ソースコードレビューで重点を置くのは、コーディング規約の確認です。ソースコードレビューは、別部署のリーダーである李さんに応援してもらい、既に3回も実施しました。李さんは、当社でも特に技術力に優れている人物です」

 ところが、中国側の報告内容には次のような不信な点があります。

  • ツールを使ってコーディング規約をチェックしているのに、なぜか規約違反がある
  • ソースコードレビュー会議で発言したのは、なぜか李さん1人しかいない

 日本人の開発コーディネータは、ソースコードレビューの形骸化を懸念しています。ソースコードを1行ずつ丹念にチェックする根気強さが、中国側には不足していると感じています。実際、検収は一発では通りませんでした。そこで、開発コーディネータは中国側リーダーに対して、ソースコードレビューを再度実施するように指示します。ところが、中国側の回答は意外な内容でした。

日本 「コーディング規約を準拠しているかを再度見直すとともに、机上でのデバッグをもう1度実施してください」
中国  「ご要望は分かりました。しかし、机上でのデバッグですが、その作業工数は非常に多いと思います。通常、当社では実施しません。紙の上でソースコードを追いながら要求仕様を確認する方法などは、コーディングやり直しと実質的に変わりません。要求仕様の確認は、PC画面上からのテストで検証するものです。本当に必要でしょうか?」

 さらにこう続けます。

中国  「検収で見つかったバグはもうすぐ修正されるので、プログラムは安定稼動します。したがって、わざわざ追加費用をかけてもう1度ソースコードレビューを実施しても、その効果には疑問があります。もし、机上のレビューだけですべてのバグは防止できるとなると、バグ摘出目標を上げる品質指標値の意味がないですね」

 その言い分は理解できますが、開発コーディネータはどうしても納得できません。日本側が反論する前に、中国ベンダのリーダーはさらに追い討ちをかけます。

中国  「当社の方針では、最も重要なのは納期を守ること、そして品質を確保することです。品質保証はプログラムの動作確認テストが効果的です。画面上から動作確認するテストが最も優れていると思います。

 テスト項目を増やし、何度も繰り返してテストするとバグ摘出率は高くなります。ソースコードの仕様チェックの概念はいいと思いますが、効率は良くないのではないでしょうか。例えば、あるプログラムを1時間かけてテストすると、効率よくバグが発見できるでしょう。

 ところが、机上でのデバッグとなると、レビュー者と担当プログラマが2人で一緒にソースコードレビューしなければなりません。2人で半日かけてレビューしても、バグの発見は難しいのではないでしょうか。

 また今回のプログラムには、複雑な計算アルゴリズムなどはありませんから、その観点での机上でのデバッグは必要ないと思います。

 従って、当社としては動作確認テストを優先し、もし時間に余裕があれば、後からソースコードの仕様チェックを行う。これでよろしいでしょうか?」

 以上が、中国オフショア開発の一例です。

第1回 1/4

index
オフショア開発時代の「開発コーディネータ」(2)
 中国オフショア開発の成功と失敗の実態
Page 1
なぜ日本は中国で失敗し続けるのか?
事例から原因を研究する
  Page 2
教訓「報告をうのみにした開発コーディネータ」
教訓「経験不足のうえに土俵が異なるようでは、成功はおぼつかない」
  Page 3
中国オフショア開発の失敗例
中国オフショア開発の成功例
  Page 4
お刺し身文化と麻婆豆腐文化


@IT情報マネジメント メールマガジン 情報マネージャのための情報源(無料)


情報マネージャのための「今日のひと言」 - 2010/3/19
『仕事の順序』 仕事の順序を決めるに当たっては「緊急性と重要性」が2大要素です。仕事ではつい目先の緊急課題が気になりますが、実は…… >>続きはクリック

この記事に対するご意見をお寄せください managemail@atmarkit.co.jp

スキルアップ/キャリアアップ(JOB@IT)

@IT 情報マネジメント Special -PR-

IFRSが経営、業務、ITに与える影響とは?
導入に必要な「4つのフェイズ」を紹介

New!

仮想化すればコストは削減できるか?
仮想化に必要な「3つの視点」を解説する


運用管理の課題を“2つの観点”から分析
ユーザー満足度の高い「仮想環境」とは?


その数、なんと400台以上! グループ内
サーバの「統合管理」によるメリットは?


@IT Specialヘ
キャリアアップ 〜JOB@IT

求人情報