tuneの日記

アジャイル開発、組織変革、マネージメント、ファシリテーションについて学んだことの記録

リモートでアジャイル開発に取り組んでの変化

f:id:tune:20200517085050j:plain
Photo by Anna Auza on Unsplash

コロナウイルスの影響で自社でもリモート推奨・原則リモートで開発するようになり、3ヶ月が経ちます。 「どうリモートワークをしているか」の記事はよくみますが、「リモートでアジャイル開発をどう行っているか」に限定した記事はあまり見かけないので自分の記録も兼ねて残しておきます。

スプリントレビュー

元々Google Meetで中継していましたが、徐々にMeet参加者が増え、原則リモートになってからは全員Meetで参加する形となりました。 5チームの大規模スクラム(LeSS)でやっていますが、各チームの代表者が持ち回りで発表する形式をとっていたので、Meetになっても画面共有を回す形をとっています。 最初のうちは画面共有にてこずったり、音声がうまく入らないといった課題が起きたため、スプリントレビューの直前にリハーサルの予定を入れ、画面共有ができるか・音声がきちんと聞こえるか・発表内容が整理できているかといった事項を確認する時間をとるようにしました。

デモ中の反応が少なく寂しいという課題にはMeetのチャットを使うようにし、普段以上にリアクションすることを意識してもらっています。以前は質疑応答をSlackチャンネルに投げてもらっていましたが、一つのツールで完結する方が皆の集中力が削がれず良さそうです。

またスケジュールが合わずスプリントレビューにどうしても参加できないメンバーがいたため、レビューを録画して共有するようにしました。Meetの録画は非常に簡単で、動画・チャット内容がGoogle Driveに自動で保存されます。子供をみながらのリモートワークだと急遽出れなくなるメンバーもいるため、録画は非常によい打ち手だったと感じています。

リファインメント

複数チームをまたいだメンバーで毎日バックログリファインメントを行っています。

出社していた頃は時間になると近くのメンバーに声をかけメンバーを集めていましたが、リモートになるとリファインメントの希望があるか申告制になりました。当初はSlackでメッセージを送るだけでした流れてしまうため、今ではGoogleフォームに記入してもらい、その結果をスプレッドシートに記入し、当日にSlackワークフローで予定を通知する仕組みを設けています。

使用するツールは当初Meetを使っていましたが、リファインメントの対象件数が多いとメンバーを分割する必要があるため、ブレイクアウトルーム機能を持つZoomに移行しました。しかしZoomの無償版だと40分でミーティングが終了してしまい、ブレイクアウトルームの管理もミーティングの主催者しかできず、MeetとZoomを混在して使うことに混乱するメンバーもいたため、使用をやめました。

現在はDiscordのボイスチャンネルに集まって行っています。チーム分けも簡単にできて良いのですが、サーバー負荷からか画面共有ができない/不安定になることがあるのんが課題です。

スプリントバックログ(カンバン)

元々物理ふせん を使ってやっていましたが、Spreadsheet / Confluence /Github Projectを経てMiroになりました。 カンバンを物理で運用する期間が長かったため、ツールの都合に自分たちを合わせず、要求を満足するものにたどり着けたのだと思います。 Miroになるかなとは昨年の時点から予想していましたが、一気に移行が進んだのは強制リモートワークによるところが大きかったなと思います。

振り返りやワーキングアグリーメントも同じボード上で残しており、物理の使い勝手のよさが残っているように感じています。

進捗共有

チーム内・チーム外への進捗共有が徐々に洗練されていきました。

チーム内のやりとりは専用Slackチャンネルを活用し、これまでよりも密にやりとりしています。またテキストコミュニケーションだけにとどまらず、DiscordやMeetもうまく活用しているようです。ちょっとした質問・雑談はDiscordで、30分を超えそうな相談はMeetでやるように住み分けができています。ペアプロ・モブプロもこれらのツールを活用する形で自然に運用されています。

チーム外への進捗報告も毎日デイリースクラム後にスクラム開発に携わる全員が入ったSlackチャンネルで行われています。代表者がまとめて報告する形・メンバーが個別に報告する形が混在していますが、報告の粒度は欲しい情報を互いにフィードバックし合うことで徐々に揃うようになってきました。

タスクの進め方

以前は1人1ストーリーを担当してスプリント内に完了させるスタイルが多かったように感じたのですが、タスクを小さく分解し、細かく協力・分担しあって進めるやり方が増えてきたように感じています。

下記要因の複合ではないかと考えています。

  • コロナ影響で全社的な開発優先順位が変わり、これまで開発の核になっていたメンバーが別プロダクト開発に携わるようになった。結果的にチームの開発力が以前より落ちた。
  • 4月になり新卒がチームに配属された。
  • 在宅で子供の世話をしながら仕事をするメンバーが増え、詰まったとき・手が離せなくなったときに誰かに協力を仰がないとデリバリーできない。

全体的に

「リモートワークだからこういうツールを使えば良いよね」と決めつけから入るのではなく、都度発生した課題を少しずつ実験しながら解決することでいい感じにカイゼンが進んでいると感じています。