この記事をお読みになる方は、現在、オフショア開発を検討中などで、海外の品質に疑問をお持ちではないでしょうか。
オフショア開発をまだ依頼されたことの無い方は、実際に品質がどうなのか気になる方も多いかと思います。
もちろん各社、開発をご依頼いただいた以上、品質を保とうと様々な努力しています。
弊社もベトナムでのオフショア開発を行っており、これまでの様々なプロジェクトに関わらせていただきました。
この経験を通して、本記事では、開発を請け負う立場からにはなりますが、品質管理の課題と対策についてお話します。
オフショア開発の品質について懸念点が少しでも払拭できれば幸いです。
目次
1.オフショア開発の品質には3つの問題点があります
正直ベースでお話しすると、海外拠点を活用して行う開発において「品質」の壁はオフショア開発を行う上で必ず通る道です。
お察しのとおり、「品質」問題は起こりえます。
特に問題となりがちな3つのポイントについてご紹介します。
①成果物が期待値に達しない
②バグが多い
③納期の遅延
品質を懸念している方は、上記3つの問題に対して、「やはり、そうですよね。」と思われた方もいらっしゃるかもしれません。
オフショア開発拠点を立ち上げたばかりで、日本人スタッフ側にも経験値が少ない場合に起こりやすい代表的な3つの課題です。
そもそも「開発」は日本国内で進めても失敗やミスが発生します。
そして海外の人材を活用するオフショア開発には言葉の違いによりコミュニケーションロスも重なり、より失敗やミスのリスクが高く、特にこれら3つの問題が発生します。
2.オフショア開発企業が努力している品質管理10項目
前項で解説した3つの問題に対し、オフショア開発企業が品質に対する解決策として対応している10項目をご紹介します。
下記の一覧をご確認ください。
解決策 | 対象課題 | ||
---|---|---|---|
①成果物が期待値に達しない | ②バグが多い | ③納期の遅延 | |
1.ブリッジSEの活用 | 〇 | 〇 | 〇 |
2.アジャイル開発の採用 | 〇 | 〇 | 〇 |
3.具体的な指示 | 〇 | 〇 |
|
4.開発目的の伝達 | 〇 |
|
|
5.開発体制の明確化 |
| 〇 |
|
6.担当箇所の可視化 |
| 〇 |
|
7.ダブルチェック | 〇 | 〇 |
|
8.チェックシートの活用 |
| 〇 |
|
9.進捗管理ツールでの管理 |
|
| 〇 |
10.管理者によるフォローアップ |
|
| 〇 |
1.ブリッジSEの活用
品質に最も大きくかかわっているのは「ブリッジSE」の存在です。ブリッジSEは、言語や文化による認識の差を埋める大きな存在です。
拠点の国の文化を知り、コミュニケーションを取って、認識の差を埋めることを通じて品質管理に大きく貢献しています。
また、ただのコミュニケーターではなく、開発に関する知識の多さも重要です。
なぜこのソースコードなのか、仕上がった完成品のレビューができるレベルであると、品質の課題は発生しづらくなります。
そのためには、SE経験をしている日本人がブリッジSEとして参画することをお勧めします。
日本人であれば依頼者との言語の壁もなくなり、そして知識もあることから、開発を成功させていく上で大きなメリットになります。
2.アジャイル開発の採用
開発手法の一つであるアジャイル開発の大きな特徴は、「計画→設計→実装→テスト」といった小さな開発のサイクルを何度も繰り返すことです。
小さく区切り、機能ごとに繰り返し開発していくため、ミスや進捗遅延も発見しやすくなります。
3.具体的な指示
日本人特有のあいまいな表現はミスを引き起こす原因です。
要件定義は詳細に落とし込み、具体的に指示を出すことで、成果物を期待値に引き上げx、バグも防ぎます。
4.開発目的の伝達
受注背景も含めて開発の目的を伝えることは、プロジェクト全体概要と自分の役割の理解につながり、成果物の質が向上します。
5.開発体制の明確化
開発体制の明確化は、管理者側からみると品質管理体制の明確化につながります。
誰がどの担当で、どの部分が弱いかを把握していればサポートすることもできます。
6.担当箇所の可視化
開発工程を細かなタスク単位で可視化することにより、誰がどのコード部分を担当したのかといった部分まで明確化。
些細なミスの早期発見、ひいては大きなトラブルの回避につなげます。
7.ダブルチェック
担当エンジニアだけでなく、ブリッジSEやその他スタッフの目からもダブルでチェックすることにより、小さなミスも見逃さないようにします。
8.チェックシートの活用
プロジェクトによりますが、あらかじめチェックシートを作成し、チェック項目を明確化することで漏れなくバグを改修します。
チェックシートがあることによって、ダブルだけでなく複数人のチェックも行うことが可能になります。
9.進捗管理ツールでの管理
進捗管理ツールでスタッフごとに進捗を可視化することで、開発遅延を防ぎます。
10.管理者によるフォローアップ
管理者による進捗状況の把握や、成果物のチェック、チームミーティングの実施等で、開発過程でのコミュニケーションロスによるミスを防ぎます。
3.自社に合った良いオフショア開発企業を見極める3つのポイント
品質面に問題が起こり得るオフショア開発ですが、各企業では対策を講じています。
成果物を納品する以上は、開発企業側は品質問題をクリアして納品しますので、その点はご安心ください。
その中から最適な開発企業を見極めるため、3つのポイントを解説していきます。
3-1. 依頼する内容と類似する開発実績の確認
どのような言語を使った開発実績が多いのか、得意言語やアーキテクチャを含めて確認しましょう。今回依頼する予定の類似実績を解像度高く確認することで、よりマッチするか推し量ることができます。
例えば、ベトナムのITエンジニアは、Javascript、Java、PHP、Pythonなど、いわゆるWebシステム開発の言語に精通しているエンジニアが多いです。とはいえ、もちろん会社によって得意領域は異なります。中にはインフラやAI・ブロックチェーンに強い会社もあります。
会社の規模が大きいからといって、実績を詳細まで確認せずに進めた結果失敗するケースは良く聞くところです。
3-2.日本人ブリッジSEの参画有無
ブリッジSEは開発を進めるうえで最重要人物になります。ブリッジSEの力量によって、そのプロジェクトの運命が決まると言っても過言ではないでしょう。
その力量を事前に推し量る必要がありますが、様々な視点で評価するようにしましょう。
大前提として、ブリッジSEは必ず日本人が立ってくれる会社を選ぶのが重要です。
ブリッジSEを見極めるポイントです。
- 日本人である(ブリッジSE以外のエンジニアは現地の人でOK)
- エンジニア出身で、開発ノウハウを持っている
- 今回依頼する開発内容の類似実績がある
- 実際に話してみて性格が合う
3-3.品質管理体制の確認
開発した成果物のレビューを行う体制が取れているか確認しましょう。
特にこのレビューはSEとして経験が豊富な日本人が担当することが望ましいです。
経験年数としては5年以上が目安であり、それ以下は再度検討し直すことをおすすめします。
また、仮にバグが発生した場合などの対応についても確認しておきましょう。
事前に取り決めを行うことなど、もし万が一に備えておくのも有効です。
4.まとめ
ここまで、オフショア開発の品質における課題や、オフショア開発企業が努力している10項目について、ご紹介しましたがいかがでしょうか。
本記事が、オフショア開発企業を探されている方の参考になれば幸いです。
私たちICDもオフショア開発の相談を承っております。
「開発前に品質の実際について、直接スタッフに質問したい」というご要望にもお応えします。
主要メンバーとのミーティングも実施可能です。もちろん、その他の疑問に思ったことについて直接スタッフにご質問いただけますので、ぜひご相談ください。お待ちしています!