Gunosy Tech Blog

Gunosy Tech Blogは株式会社Gunosyのエンジニアが知見を共有する技術ブログです。

Regional Scrum Gathering Tokyo 2021に参加してモブプロとフラクタルスプリントを導入した話

f:id:imagawa_yakata:20210117001623p:plain

広告技術部の石田です。

今年もRegional Scrum Gathering Tokyo 2021が開催され、参加してきました。

そこで色々な学びがあったのですが、この記事では講演を聴いて自分たちのスクラムを大幅に変えたという話をしたいと思います。

なぜかというと、毎年RSGTに参加するとパッションが高まるというか、胸が熱くなって帰ってくるわけですが、今回はかつてないほどに「こういうことやりたい!」という気持ちになったからです。

3つの「やりたいこと」

やりたいことを挙げるとそれは3つありまして、

「やりたいことをやりたい」(やりたくないことに耐えるのではなく)

「それを成果につなげたい」(ただ勝手なことをやって自己満足ではなく)

「同僚と気持ちよく働きたい」(単なる同調や馴れ合い所帯ではなく)

これらをすべて同時に叶えたいと思いました。

「体験の共有」が鍵になる

そして、RSGT2021のある講演で「体験の共有」が重要であるという話を聞いていたときに、この「体験の共有」こそが3つの望みを叶えるための鍵だとひらめきました。

以下がわたしの心の中のひらめき内容でして、まあこんなことを思いついてお茶の水の会場で一人で興奮していたわけであります。

「開発チームが体験を共有するためにはモブプロをやるのが最適だろう。 VSCode Live Shareを使ってみようという提案が年末にあったので、やるなら今だ。

そして、モブプロをやるなら一日の業務時間を原則すべてモブプロで行わなければならない。 真に体験の共有を実現するにはたまにモブプロするようでは全然足りないはずだ。

しかし、モブプロはやってみたいけど、ただ単に形だけなぞって自己満足で終わるわけにはいかない。 チームとしての生産性が上がって成果につなげなければ意味がない。

生産性を上げるなら時間管理を徹底して、だらだら過さずゴールの達成に全員が集中することが必要だ。 そのためには30分のフラクタルスプリントを導入してみたらどうか。

もしかしたら、このモブプロ&フラクタルスプリントが勝ちパターンを生むかもしれないぞ」

心理的安全性の4つの因子

さらに、最近『心理的安全性のつくりかた』という本で読んだ心理的安全性を高める4つの因子というものを30分フラクタルのスプリントセレモニーに盛り込むことで、より一層効果は高まると考えました。

心理的安全性を高める4つの因子とは

  1. 話しやすさ
  2. 助け合い
  3. 挑戦
  4. 新奇歓迎

これらが該当します。

これらを高めることによって心理的安全性は高まると本書は説きます。

それぞれの詳しい説明はここでは割愛しますが、非常によくまとまっている良い本なので、ぜひ購入して読んでみてください。

モブプロ&フラクタルスプリント

以上を踏まえてフラクタルスプリントをどのように設計したかと申しますと、

  • チームは30分のスプリントを12回行って一日を過ごす
  • 一日の最初のスプリントはデイリープランニングの時間とし、その日のゴールを話し合う
  • デイリープランニングはMiroのホワイトボード上で「ありたい姿」という方法で行う
  • 30分スプリントもれっきとしたスプリントなので、プランニング・開発・レビュー・ふりかえりを行う
  • 30分スプリントのふりかえりは「Good & New」という方法で行う
  • 30分スプリントを2回やったら(=つまり60分ごとに)10分の休憩時間を設ける
  • スプリントは最低2名集まれば開催できる(=全員集まるまで待たなくて良い・不在者が多少いても勝手に進めて良い)

このようにしました。

実際やってみてどうだったか

ここまで紹介した内容をRSGTが終わった翌週からチームの合意を取って実施しました。

今まではタスクは分担するのが当たり前で、スプリント期間も一週間だったのでチームがこんな激変を受け入れてくれるか心配でしたが、特に反対意見もなく「やってみよう」と決まりました。

(これを受け入れてくれたマネージャーと二人のチームメンバーに感謝します)

次は実際にモブプロ&フラクタルスプリントを一週間やって今この記事の原稿を書くまでにどんな結果になったか紹介します。

チームの生産性は上がった

まず、チームの生産性は明らかに上がりました。

プログラムや設定ファイルの修正をドライバーがミスしても他の人が気づいて直してくれる(=Live Shareでソースコードを共同編集できるため)のでミスに気づかないままモノが動かないといった事態が減りました。

また、動かないときにドライバーが思考停止してしまうことも減りました。

これは人間はひとりだと「なぜ?」という気持ちに邪魔されて行動に移れないときに、他の人が代わりに考えたり調べてくれることで停止状態から素早く回復できるからだと思います。

仕事を「やらされてる感」を意外にも感じなかった

次に、意外にも仕事を「やらされてる感」がありませんでした。

ドライバーは交代しながらモブプロしていましたが、誰がドライバーをやっても他人から常に見られるプレッシャーで頭が働かない様子は見られませんでした。

30分間常に他人と一緒に作業し続けて一日中過ごすのだから普通なら一人の時間が欲しいだろうと思いますが、特にそういう気分にもならず「まあこのまま次のスプリントをやるか」という感じで淡々と一日が過ぎていきました。

その他の気づき

最後に、上記以外の気づきを簡単に紹介したいと思います。

  • モブプロは共同作業によって「助け合い」の向上が見込める
  • モブプロは体験の共有を生むので、知識を後から引継ぎしたりドキュメントを書いて共有する必要が減る
  • 30分フラクタルは短い時間内で本当になすべきことを協力して手早く判断する必要に迫られるので「助け合い」の向上につながる
  • デイリープランニングは一日の目標を明確にするだけでなく、「話しやすさ」の向上につながる
  • 10分の休憩時間に雑談したり前スプリントの感想を話し合うので「話しやすさ」の向上になる
  • ありたい姿はチームメンバーそれぞれがやりたいことを挙げる機会になる。そして、成果やゴールだけでなく、各々がやりたいこともチームの目標に入れるので「挑戦」と「新奇歓迎」の向上につながる
  • Good & Newは良かったことの共有や相互理解、発見や学びの共有の場を設ける。これはモブプロによって体験を共有しているから、良さや学びをわざわざ説得しなくても共感しやすくなっている。

まとめ

モブプロだけで一日を通すことは、作業分担するのが当たり前の職場にとっては非常に抵抗感があるでしょう。

とりわけ「全員でひとつのタスクをやっていたら、手が空く人がいて無駄じゃないか」という疑問を抱く人は多いように思います。

しかし、体験の共有をすることでチームが得られるメリットは絶大なものがあります。

大事なことはモブプロで失うものの不安に真剣に対策することだと思います。

そのためにモブプロだけでなく心理的安全性の向上や時間管理など、複数の観点や方法を採り入れることが重要だと思います。

ぜひ「やりたいことをやれる職場」、「成果を出せるチーム」、「同僚と気持ちよく働ける職場」を作っていってください。

補足: 使ったツール・参考文書

最後に、モブプロとフラクタルスプリントを行う上で使ったツールを紹介しておきます。

Visual Studio Code の Live Share

visualstudio.microsoft.com

まずモブプロするためにVSCode Live Share拡張プラグインを使いました。

これがあると同じIDEの画面を共有して共同編集できたり、他人のカーソルにジャンプできます。

ターミナルの共有もできるので書いたコードを動かして結果を一緒に見たりもできます。

特に、他人のカーソルにジャンプできる機能が何気にありがたいです。

前にペアプロやモブプロをやったときは大きなディスプレイにエディタを映して横並びに座ってやっていたのですが、「これ」・「それ」・「あれ」といった指示語が何を指すのか伝わらなくて頻繁に会話が混乱するので「指し棒」を使って該当箇所を指して伝えていました。

Live Shareのカーソルジャンプ機能があるとわざわざ指し棒で指したり、指し棒を参加者同士で持ち替える手間が省けるので非常に楽です。

インターバルタイマー

play.google.com

30分スプリントをプランニング・開発・レビュー・ふりかえりに分けて時間管理するのに便利なアプリです。

(iOS版が提供されていないので、iPhoneユーザーは別のアプリを探してください)

Miro

デイリープランニングで「ありたい姿」をやるときにMiroのホワイトボードでやっています。

f:id:imagawa_yakata:20210117003454p:plain
Miroに作った「ありたい姿」のボード

毎日同じホワイトボードを見て、それを更新し続けていくことが大事です。

SlackのCall&画面共有

slack.com

職場はSlackを使っているので音声会話と画面共有はSlackで行っています。

また、画面共有は積極的に使うことが大事です。

Live Shareだけでなく、Slackの画面共有も使って同じ資料を一緒に見ながら会話をしてください。

モブプロしていると結構「これ」・「それ」・「あれ」が何を指すのか分からず混乱します。

誰かがAPIドキュメントを見ながら会話しているときは、なるべく全員でその体験を共有してください。

森さんのQiita

30分スプリントの設計は森さんのQiitaを参考にしました。

qiita.com

「ありたい姿」や「Good & New」といったふりかえり手法をたくさん紹介してくれたのも森さんでした。

(大変参考になりました。ありがとうございました)

Regional Scrum Gathering Tokyo 2021 - ふりかえり手法のおもちゃばこ | ConfEngine - Conference Platform

長くなりましたが以上です。

最後までお読みくださりありがとうございました。