分散型オフショアアジャイルを成功させる秘訣: コミュニケーション課題とその対策(後編)

前回では、オフショア開発において最も代表的なコミュニケーション課題「言葉の障壁」を乗り越える方法を紹介しました。今回は続いて、リモート開発においては避けられない課題「遠距離の支障」について、その解決策を解説します。また、分散型オフショアアジャイルの成功事例も紹介したいと思います。
執筆者:鄧 彬(株式会社シーエーシー)
1.コミュニケーションの2つの課題
課題2:遠距離の支障
アジャイル開発では緊密なコミュニケーションが非常に重要であることは周知されていますが、開発拠点が地理的に分散した場合は直接会話が困難になり、仕様やソースコード、計画項目に問題が発生した時に、どのように即時コミュニケーションを取り、即時アクションを実現するのか、しばしば課題として挙げられます。また、対面でない為、意見や考え方の食い違いが増えますと、無意識のうちに信頼感が薄くなり、消極的な気持ちが増殖しやすくなります。こうした支障を回避・解消するためには、下記の対策を講じる必要があります。
・対策1:チームビルディングの期間を設ける
コミュニケーションの土台――信頼関係を築くため、プロジェクトの初期段階、開発着手前から、チームメンバー(開発メンバー、PO、ステークホルダーなど)を集め、共同準備作業や研修などを通じて、メンバー同士の相互理解を促進することが極めて重要です。目標に向けて意見を話し合うことでお互いの価値観や考え方への理解が深まり、チームも一体感形成しやすくなります。可能であれば、キーメンバーをリアルの場で集めるのが望ましいですが、どうしても難しい場合は、頻繁にオンラインミーティングを開催するなど工夫が必要です。
また、日本側の開発メンバーに必要なスキルが足りない場合、オフショア先の経験者より技術トレーニングを実施してもらうことも一つの良い方法です。トレーニングを通じて、自然に緊密なコミュニケーションを取るようになり、メンバー間の信頼感が高まり、日本技術者のスキルアップも図れて、一石三鳥です。
・効果:
チームビルディングの期間を通じて、プロジェクトの利害関係者の間で良好な信頼関係を築くことで、その後の分散型アジャイルプロジェクトの基盤を整えることができます。
・対策2:オンラインツールの活用
分散環境における効率的なコミュニケーションを実現するには、オンラインツールのフル活用が不可欠です。対面で会話ができない為、情報伝達や意思疎通時に誤解や認識齟齬が発生しやすいため、ツールを利用してコミュニケーションを補完します。ご参考として一部利用例を下記にご紹介します。
・PBI、タスク、バグの管理:Jira
・仕様書、議事録などのドキュメント管理:Confluence
・ペアプログラミング:Visual Studio Live Share
・テストケース管理:TestRail
・チームメンバー間の日常会話:Slack
・デイリーミーティングやスプリントレビューなどスクリーン画面の共有が必要な場合:Teams、Zoom
現在市場に様々なツールが提供されており、国や企業によって使い慣れているツールも異なるかもしれませんが、プロジェクト状況に合わせて適切なツールを選択することが重要です。
・効果:
上記のように目的に応じてツールを使い分けることで、開発作業、進捗・品質管理におけるタスク、問題点を明確化・可視化し、オープンなコミュニケーションルートを作ることができます。こうした環境の中では、全員がプロジェクトの状況を把握でき、問題が発生した場合はすぐに共有し話し合えるため、分散環境であってもチームが一丸となってプロジェクトを推進し、ゴールに向かうことができるようになります。
2.まとめ
ここまで述べたように、完全分散型オフショアアジャイル開発は、通常の開発よりはコミュニケーションに工夫が必要になることは事実ですが、しっかりと解決策を講じれば、国内開発と同じようなコミュニケーション環境を築け、高生産性のプロジェクトが実現可能になります。
3.CACの事例紹介
当社の開発プロジェクトにおいても、まさに上記のような課題に直面しました。
日本側のステークホルダーは英語がほとんどできない、POは英語の読み取りと聞き取りがある程度できる一方、オフショア先のインドネシア企業Mitraisの開発メンバーとスクラムマスターはアジャイル経験豊富ですが日本語が分かりません。
こうした課題を解決するため、日本側で英語堪能なPOサポートを設置し、最初の二ヶ月間でインドネシアの開発メンバー全員を日本に集めてチームビルディングと初期の開発業務を行いました。
図1.共同アジャイル研修
図2.関係者全員が集まるスプリントレビュー
チームビルディング期間が終了後、Mitraisのメンバーはインドネシア拠点に戻り、またコロナの影響もあったため、国内外のチームメンバー全員が在宅からリモート作業を行う、完全な分散型環境に切り替えました。効率的なコミュニケーションを維持する為、上記で紹介したオンラインツールをフル活用しました。何よりも初期のチームビルディングをしっかり行ったため、各関係者は受注発注の関係ではなく、誰でも遠慮なく綿密に質問や意見交換ができ、共にゴールを目指すチームを作り上げました。
結果として、リアルの対面コミュニケーションに近い効果が維持でき、懸念された生産性の減少は見られず、チームの開発ノウハウ・ナレッジも順調に蓄積できました。
もちろん、プロジェクトを成功させるには、コミュニケーション以外に、マインドセット、スキルセット、開発体制、プロジェクト管理、品質管理など様々なプロセスを考慮・整備しなければなりません。ですが、アジャイルは対面でなければ成功しないということはなく、分散型オフショアアジャイルは可能であり、少しの工夫で期待する効果を得られると我々は考えています。
最後になりますが、より詳しく分散型オフショアアジャイル開発をお知りになりたい方はこちらからお問い合わせください。