オフショアにおけるアジャイル開発のコミュニケーション改善

はじめに

こんにちは。テクノロジー本部の馮晨(フェンシン)です。
私はエムティーアイに入社以来、いろいろなプロジェクトに参加し、開発しておりました。担当していたプロジェクトでは、アジャイル方式を採用しており、日本開発チームの一員として、中国やベトナムの開発チームと共同開発していました。その際、異なる国とのチーム間コミュニケーションは極めて重要だと感じていました。

今年の3月から、私は社内のアジャイルトレーニングに参加しました。このトレーニングでは、私は再度アジャイルの基礎から勉強する機会を得て、アジャイル開発の正しいプロセスや、いろいろなアンチパターンなどについて改めて理解できました。トレーニングで学んだことがヒントになり、チームが抱えているコミュニケーション問題を改善していました。今回、チームの改善で実践したことをブログで共有させていただきたいと思います。

アジャイル開発において、なぜコミュニケーションが重要なのか?

「アジャイルソフトウェア開発宣言」では、アジャイルで重視すべき4つの価値があります。その中で、最初に挙げられたのはコミュニケーションです。

“プロセスやツールよりも個人と対話を価値とする”

これによって、アジャイル開発では、コミュニケーションは極めて重要ということがわかります。特にコロナ禍の環境で、テレワークが推進され続けています。対面でのコミュニケーションが取れにくくなった現状では、ズレのないコミュニケーションはより重要になっていると考えています。

逆にコミュニケーション不全が発生すると、いろいろな問題が発生し、プロジェクト進行を妨害し、大量なムダが発生する可能性があります。ムダとは、ユーザーにとって価値のないものです。開発中よく発生するムダは以下のようなことが考えられます。

  • バグや不具合の修正
  • 作業のやり直し
  • 機能の作り込み過ぎ
    など

皆さんは普段の開発では、下記のような問題を経験したことはありませんか?

  • リモート会議を実施すると、環境の問題で大量な時間ロスが発生してしまう
  • メールやチャットで連絡しても、なかなか相手に伝わらない
  • 異なる国のチームメンバーに伝えたいことが理解してもらえない、彼らの言うことが理解できない

今回は、挙げられたいくつかの問題に対する改善策を紹介したいと思います。

担当するチームが抱えている問題と改善の試み

私が担当していたチームで実際にあった問題と、それに対する施策を紹介します。

◆環境を整え、より対面に近い方法でやり取りを実施する

前に述べたとおり、2020年コロナ禍という環境下で拡大したテレワークは今後の主流になっていくと思われます。エムティーアイでは、2020年からテレワークを推奨し、現在ほとんどのプロジェクトはテレワークになっています。これによって、日々のコミュニケーションの環境は、より重要になってきたといえます。

よくある場面として、ビデオ通話でデイリースクラムを始めると、最初の数分間相手の声がよく聞こえない、雑音がひどくて声が拾えない、ネットワークの不調で頻繁に中断や接続できないなどの問題が発生し、時間ロスがしょっちゅう発生していました。この状況が長く続くと、ストレスもためやすくなり、チームの生産性が落ちてしまいます。これを改善するために、連絡用のPCやマイクを性能の良いものに変えることをお勧めします。特に海外拠点では、ネットワーク環境の差を埋めるために、専用VPNを用意することによって、快適なやり取りを実現できました。

また、「アジャイルソフトウェア12の原則」によると、

“情報を伝えるもっとも効率的な方法はフェイス・トゥ・フェイスで話すこと”

とあります。したがって、「メールよりチャット、チャットより音声、音声よりビデオ、ビデオより対面」というように対面に近い方法でコミュニケーションを取ったほうがいいですが、テレワークでは「フェイス・トゥ・フェイス」にもっとも近い「ビデオ通話」の方がオススメです。ビデオ通話は、相手の表情など反応をうかがえるため、まだリアルに近い形でのコミュニケーションを実現しているといえます。

◆異なる文化による認識ずれを解消する

私が担当するプロジェクトは日本側チームと中国側チームで構成され、異なる文化を持つチーム間のコミュニケーションは重要になります。ここで、異文化コミュニケーションに関連する二つの指標を紹介します。

1.カルチャーマップ(The Culture Map)
カルチャーマップはコミュニケーションにおける文化の違いを可視化するものです。各国の文化特徴を理解し、一緒に仕事をする相手がどのようなビジネス文化を持ち、自分とどのように異なるスタイルを持つかを予測し、自分の力を効果的に発揮したり、トラブルを回避したりする手助けになります。カルチャーマップを用いて文化的差異を理解することで、組織運営を円滑化し、多様性を強みに変えることができます。

下図では、カルチャーマップの8つの指標と日本、中国、アメリカの各指標での傾向を表しています。

f:id:mti-techblog-writer:20210803144928j:plain
出典:『異文化理解力』をもとに作成


今回、上図で示した日本文化と中国文化で最も差がある指標の一つ「決断」について紹介したいです。この指標により、意思決定する際、日本側はよりグループ内での全会一致で行うことに対し、中国側は個人(あるいはチームリーダー)で行う傾向があります。これによって、両チームが会議を実施するとき、中国側のリーダーが述べた意見は中国側チーム全体ではなく、リーダーのみの考えである可能性を考慮すべきです。後々両チームの認識ズレの原因になり、意思決定のやり直しに繋がることもあります。

私のチームでは、まず仕様検討や問題調査などの会議で、チーム全員が参加するように心がけていました。また、会議ではメンバー全員が発言しやすい環境も作ります。もちろん、チームメンバーの語学力、開発経験、能力の差により、チームリーダーが多く発言することがありますが、最終結論を出す前に「他の皆さんはいかがでしょうか?どう思いますか?」といった声がけを意識しました。結果、チームリーダーへの偏りが改善され、より良い意見を拾えるようになりました。

2.ホフステッド指数(Hofstede’s Cultural Dimensions)
ホフステッド指数は、人類共通の6つの課題をベースに、各国の社会性や国民性を6つの軸として定義されたものです。

ホフステッド指数は下図のように6つの軸があります。

f:id:mti-techblog-writer:20210803144923p:plain
出典:異文化エキスパート養成講座資料


今回「不確実性の回避(UAI: Uncertainty Avoidance)」を紹介したいです。この指標は不確実で未知な状況をどれほど脅威だと感じているのを表しています。統計上、日本側は不確実性を脅威だと考えていることに対し、中国側はルールや形式にこだわらない傾向があります。不確実で曖昧なまま進めてしまうと、最初に要求したことと異なるものが出来上がる可能性があります。

上記のような状況を回避するために、私のチームでは中国側への仕様共有や意思決定を実施する際、決定事項やルールを明文化することを入念に行っています。また、チームの開発プロセスや各過程の成果物を定義し、開発用のWikiにまとめることによって、認識ズレを最小限に低減することができました。

最後に

アジャイル開発において、コミュニケーションの重要性、特にコロナ禍の環境におけるコミュニケーション方法について紹介しました。また、環境面や異文化コミュニケーションに関連する2つの指標を紹介しました。

コミュニケーションの改善は一朝一夕にできることではありません。コミュニケーションを取る手段は皆共通なものでもないです。相手のことを理解し、お互い信頼関係を築き、自分のチームにあった環境や手段を探り、継続的に改善に取り組む必要があると考えています。

また、長くアジャイル開発していた中、無意識に色々なアンチパターンで運用することもあると思います。勉強会やトレーニングに参加し、勉強し直すことによって、アジャイル開発を正しく理解することができ、運用方法を正すことができます。そして、アジャイルソフトウェア開発は日々進化しています。再度勉強することによって、世の流れを把握し、チームに対してより良いやり方を見つけ、改善することも可能だと考えています。