モブプロ・ペアプロ導入で変更のリードタイムを短縮した話
こちらの記事はツクリンクアドベントカレンダー2024の7日目の記事です🎉
是非他の記事も気になるものがあれば見てみてください!
ツクリンクでアソシエイトエンジニアリングマネージャーをしている八尾です。
今回は、私が見ている1チームで取り入れた、「モブプロ」と「ペアプロ」について書いていきます。
なぜ、モブプロ・ペアプロを取り入れたのか?
私たちのチームは5名の開発者で構成されており、各自が個別にタスクを実装するスタイルを取っていました。しかし、次第に以下の課題が浮き彫りになってきました。
- レビューや実装の繰り返しで発生するコンテキストスイッチが多く、実装に集中しづらい状況。
- 上記のコンテキストスイッチの影響で変更のリードタイム(変更をリリースするまでの時間)が長く、価値提供のスピードに影響を与えている。
この状況を改善するため、チームの分割も考えたのですが踏み切れる状況ではなかったので、「モブプロ」と「ペアプロ」を試してみることにしました。
図で表すと取り入れる前は下記のような状態の5人分になっている状況です…
どのように取り入れたのか?
モブプロやペアプロを導入する際には、まず「なぜこれを取り入れるのか」を明確にし、メンバー全員が納得できる状態を作ることを重視しました。具体的には以下のステップを踏みました。
-
データに基づく課題の可視化
コンテキストスイッチの影響やリードタイムの長さを定量的に示し、導入の仮説を構築しました。 -
チームへの説明
仮説と目的をチームに説明し、2週間の試験的なチャレンジを提案。結果を踏まえた継続判断が可能な状態を作りました。 -
導入の目的を明確化
-
弊社チームでの目的
- 変更のリードタイム短縮によるユーザー価値提供速度の向上
- コンテキストスイッチを減らし作業に集中できるプロセスの構築
- チームのスキルアップと知識共有による技術の平準化
-
-
継続していく目的を伝えるミーティングの実施
2週間のテスト期間を経て、明確化した導入目的をチームメンバーにしっかりと伝え、その意図を理解してもらうためのミーティングを設けました。この場でメンバーの疑問や不安を解消し、全員が納得した上で取り組みを開始できるようにしました。
実践した進行スタイル
-
進行方法
スプリント(1週間単位)ごとにタスクを割り当て、すべての開発をモブプロ・ペアプロで行う形式に変更しました。特別な進行スタイルは設けず、チームの自然な流れで進めています。 -
使用ツール
- コード編集: Visual Studio Code Live Share
- タイマー管理: Mobster(導入したチームもあり)
これらのツールを活用し、全員がリアルタイムで参加できる環境を構築しました。
また、弊社はフルリモート環境であるため、Slackのハドルを常に繋ぎながら進める形を採用しています。これにより、メンバー同士がリモートでもリアルタイムにコミュニケーションを取りやすい環境を構築しています。
取り入れた結果
導入後、以下の効果を実感しました。
-
コンテキストスイッチの削減
一つのタスクに集中できる時間が増え、開発者の負担が軽減されました。 -
リードタイムの短縮
タスク完了までの時間が短くなり、優先度の高い機能を迅速にユーザーに届けられるようになりました。 -
価値提供の速度向上
チケットの優先度に応じて、効率的に価値を提供できる体制が整いました。
弊社ではFindy Team+を導入しておりますので、実施前と実施後を可視化したキャプチャもお見せしたいと思います。
実施前
実施後
予想外の発見:ベロシティに変化はなかった
弊社では、スクラム開発を導入しており、モブプロ・ペアプロを導入する前、チーム全体では「1週間のスプリント単位で見れば、個人作業よりベロシティとしては下がるだろう」と予想していました。全員が同じタスクに取り組む時間が増える分、全体のベロシティには影響が出ると考えていたのです。
しかし、実際に結果を見てみるとベロシティとしてはほとんど変化はありませんでした。この結果には驚き、同時に「効率的に進めれば個人作業と遜色のない結果を出せる」という自信を得ることができました。
この予想外の発見は、懸念していた部分が払拭され、継続するモチベーションにもつながりました。
現時点で出ている課題
モブプロ・ペアプロを進める中で、以下の課題が浮上しました。
-
疲労感の増加
長時間の集中作業により、疲労が蓄積されやすくなりました。適切な休憩時間を設ける必要性を感じています。 -
メンバーの離脱時の対応
リモート環境特有の問題として、モブやペアの途中でメンバーが会議や他のタスクで離脱する場合があります。このような状況では、進行が一時的に停滞してしまうことが課題となっています。
また、この進行の停滞を懸念し、離脱する心理的ハードルが高くなっていることも確認されています。これがメンバーの負担感につながりかねないため、柔軟な進行ルールの設定を考える必要があります。 -
達成感の欠如
個人でタスクを完了させた時の「やり遂げた感覚」が薄れ、モチベーションに影響するケースが見られました。これに対しては、新しい形の達成感を提供する仕組みを模索しています。
これらの課題を解消するため、休憩を適切に取り入れる工夫や、新しい形の達成感を提供する仕組みを模索しています。
最後に
モブプロ・ペアプロは、単に効率を上げる手法ではなく、チーム全体のスキル向上や知識共有にもつながる重要なアプローチだと実感しています。ただし、導入時には目的を明確にし、メンバー全員が納得した上で取り入れることが大事だと考えております。
特に、短期間でも試してみることで、意外な気づきやチーム独自のベストプラクティスが得られるかもしれません。モブプロやペアプロに興味がある方は、まずチームで現在の課題を洗い出し、小規模なテスト導入から始めてみてください。
この記事が皆さんのチームにとって新しいアイデアや気づきのきっかけになれば幸いです!
Discussion