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