オフショア開発のトラブル解決方法

こんにちは、今回は「オフショア開発でよく起こるトラブル解決方法」についてご紹介します。
外部へ開発業務を委託する場合、「トラブル発生」→「お互いの関係悪化」→「開発効率低下」→「さらに関係悪化」する・・・という負のスパイラルに陥ることがあります。
さらに、ベトナムに限らず、オフショア開発の活用を行った場合には、システムの業務利用背景、言語習慣の違いから新たな問題も発生してきます。
このようなことが起こると、どんな開発もうまく行かなくなってしまいます。
この負のスパイラルに陥らないためには、どうすれば良いのでしょうか?
これまでの当社の経験から、オフショア側と日本でトラブルが起こる原因は大きく3つあると考えます。
1)現地のエンジニアからの報告を検証もせずに、それに基づいて計画を立ててしまう
2)オフショア側に仕様の読み取りや、設計方針を全て任せてしまう
3)問題や課題を率直に話さない
以下に、それぞれの背景と解決方法について紹介させて頂きます。
1)現地のエンジニアからの報告を検証もせずに、それに基づいて計画を立ててしまう
オフショア側の状況確認のために、毎日朝会やミーティングを行っていても、進捗を正しく確認できないまま進めてしまっているケースがよくあります。
進捗を確認した時に、オフショア側から「順調です」「進捗は80%です」といった報告をそのまま受け取ってしまうと、納期直前に「想定と違うものができていた」「指定したコーディングルールに沿っていなかった」というトラブルが発覚し、リリース日を後ろ倒しにせざるを得ない・・・ということが起こりやすくなります。
解決方法:言葉での報告ではなく、実際のアウトプットをこまめに確認する
毎日コミットされたソースコードを少しでも確認する。いくつかの操作に対するアウトプットを答えてもらうなど、言葉ではなくアウトプットをチェックすることをおすすめします。
オフショア開発だから特別なのではなく、日本人同士でも起こりうるトラブルですね。
2)オフショア側に仕様の読み取りや、設計方針を全て任せてしまう
オフショア側に仕様を渡しておけば、あとは意図や背景を汲み取って、プロジェクトが進んでいくと思っていたら、リリース直前になって「全然ちがうものができていた」といったトラブルが起こることがよくあります。
これはエンジニアのスキルが低いからではなく、「このシステムがどのように使われるか」「どのような業務の流れになっているか」を完璧に想像することが難しいということが原因です。
オフショア側からの問い合わせだけに頼って、全ての品質や仕様を担保しようとするのはとても危険です。
解決方法:システム仕様だけでなく、システム背景の説明をしっかり行う
エンジニアに開発内容を伝えるときは、まず以下のポイントを元に概要を伝えるようにしましょう。
・このシステムを作る背景
・このシステムの使用者は誰か
・このシステムで解決したい課題は何か
・このシステムに期待されていることは何か(コスト削減、業務効率化など)
・このシステムをいつから使いたいか
これらを伝えた上で、システムの仕様説明を行うと、その仕様になっている理由が伝わりやすく、開発精度や改善提案の精度にも大きく影響します。
3)問題や課題を率直に話さない
ベトナムのオフショア開発では「モチベーションが下がるので、ベトナム人を人前で怒らない方がいい」「悪いところを注意するのではなく、いいところを褒めて伸ばさないといけない」ということをよく言われます。
そういった背景もあり、エンジニアが仕事で問題を起こした時でも、それを本人に伝えず日本側で解決してしまうことがあります。
しかし、問題を本人に伝えないまま業務を続けると、それが大きなトラブルの元になりかねません。
文化や考え方の違いはあるにせよ、問題が起こったときは本人にフィードバックすることが大切です。
解決方法:まずは当社にご相談ください
当社はラボ型オフショア開発の進化系である、「ハイブリッド開発」を提供しています。
当社の提案体制は、3つあります。(こちらのブログも参照ください)
①ベトナム側にベトナム人BSEを窓口
②日本側にベトナム人BSEを窓口
③日本側に日本人PMを窓口
其々、メリットデメリットありますが、お客様のご要望にあわせての提案バリエーションがとれます。
当社は、オフショア開発事業を10年以上行い、日系資本では最大規模を誇る規模に至るまでに過程で、たくさんのナレッジを保有しております。
他にも「こんな問題をかかえている」などのご相談がございましたら、お気軽にお問い合わせください。
ハイブリッドテクノロジーズの提供サービス
ハイブリッドテクノロジーズでは、ビジネスデザイン、UIUXデザイン、設計、実装、テスト、リリース、運用、保守まで一気通貫してサービスを提供しております。500名以上の経験豊富なエンジニアにより、迅速かつ高品質なシステム開発が可能です。 アジャイル開発、ウォーターウォール開発、ハイブリッド開発と言った様々な開発手法に対応しており、契約形態に関しましてもラボ型契約と受託型契約の2つから選択いただけます。お客様の状況や開発内容に応じて、開発手法と契約形態を柔軟にご指定いただけますが、それぞれの開発手法、契約形態の特徴の親和性から、アジャイル開発ではラボ型契約が、ウォーターウォール開発とハイブリッド開発では受託型契約を選択されるクライアント様が多数を占めます。
ラボ型開発について: ラボ型開発 サービス
受託型開発について: 受託開発 サービス