Microsoft Teams と Azure DevOps でリモート スクラム開発を実現する
今回の記事は Microsoft MVP ブログ企画 の記事として投稿しています。その他の記事は こちら からご覧いただけます。
このブログにもスクラムの資格を掲載していますが、会社ではアジャイルコーチのロールを担当しています。今回は、この COVID-19 の状況下で実際にスクラム開発をした経験を踏まえて、どのようにリモートでスクラム開発を実現したかについてご紹介します。
2020 年 1 月からアジャイル コーチとして参画しているプロジェクトでは、中国でのオフショア開発をすることになっており、リモートが前提でした。とはいえ、対面のコミュニケーションがないと難しいことは過去のオフショア開発の経験から理解していたため、日本のメンバーが中国に 1 週間ほど滞在して対面でコミュニケーションを取る想定でした。しかし、COVID-19 の影響で会社として海外への渡航は禁止となり、中国のメンバーも自宅勤務を強いられることとなりました。その後ほどなくして日本でも自宅勤務となりました。中国と日本でロケーションが別になることは想定していましたが、日本のメンバー同士、中国のメンバー同士が直接コミュニケーションを取れないという事態は想定していませんでした。
そこで活躍したのが Microsoft Teams です。Microsoft Teams が提供する多彩な機能については詳細は述べません。チャネルでの情報共有や一対一のチャット、ビデオ会議など、複数のコミュニケーション方法が 1 つのアプリで完結するのは非常に便利でした。
スクラムの重要なタイムボックスのイベントとして、デイリー スクラムがあります。開発チームはそれぞれ 3 つの事柄 (昨日やったこと、今日やること、困っていること) を共有しますが、あらかじめ OneNote に 3 つの事柄を書いておいてもらい、みんなで見ながら進めるとスムーズに進行できました。対面であればホワイトボードに書いていけばよいですが、リモートではこうした工夫も必要です。
スクラムではドキュメントは最低限にするという考え方がありますが、リモートでコミュニケーションが十分に取れない場合は、ドキュメントをある程度作成し、画面共有で説明しながら情報を共有したほうがよいです。その場合も、あとで参照できるようにファイルの場所をチャネルに投稿しておけば簡単です。
チーム内でのやりとりにメールを使う機会はほとんどありませんでした。
スクラムのプロセス自体を支援するツールとしては Azure DevOps があります。Azure DevOps にはいくつかのプロセステンプレートがありますが、一般的なアジャイルだけでなく、スクラムに最適化されたテンプレートが用意されているのが魅力です。
ちなみに会社ではこのスクラム テンプレートをさらに改良した独自のテンプレートがあったため、それを採用しました。
また Azure DevOps にはスクラムを支援するためのいくつかの拡張機能があります。
- プロダクト バックログ アイテムの見積もり方法であるプランニングポーカーを行うための Estimate
- レトロスペクティブを実施するための Retrospectives [1]
Azure DevOps の Boards は慣れていない人には使いづらく、Excel で管理したいというメンバーがいたのも事実です。ただ、やはりそこは慣れの問題なので、多少の不満があったとしても使い続けてもらうことが大事です。全般的なコミュニケーションは Teams で行っているため、Boards 内の Discussion で会話をすると情報が分散してしまう煩わしさがあります。しかし、それも慣れで解決する問題です。
また、Test Plans で画面ショットが簡単に取得できる Chrome 拡張がありますが、中国のメンバーからは利用できないということがわかりました。これは中国特有の事情かどうかは不明ですが、利用できていればもっと生産性が上がったと感じています。
今回のプロジェクトではアジャイル コーチとして関わっており、プロジェクトを外から見ていた立場でした。実際に進めていたメンバーは異なる感想を抱いていた可能性は否定できません。ただ、スクラムチームの習熟度の課題などはまだ残っていますが、リモートワークが強制される状況の中で、スクラムを進めていくことはうまくできたと考えています。
-
Retrospectives は一時期なくなる話がありましたが、継続して開発されるそうです。 ↩︎
Discussion