ペアレビューとモブレビュー
ストーリー
「ここまでは非同期のPRレビューを学んできたな。 でも、同期的にレビューする方法もある」
松本先輩がチームメンバーを集めて言った。
「ペアレビューやモブレビューは、複雑な変更や 重要な設計判断を伴うPRに特に有効だ。 非同期レビューとの使い分けを覚えておこう」
レビュー手法の比較
| 手法 | 参加人数 | 形式 | 最適な場面 |
|---|---|---|---|
| 非同期PRレビュー | 1-2人 | 非同期(GitHub上) | 通常の変更、小〜中規模PR |
| ペアレビュー | 2人 | 同期(画面共有) | 複雑な変更、新技術の導入 |
| モブレビュー | 3人以上 | 同期(全員で) | 設計判断、知識共有、新人教育 |
ペアレビュー
ペアレビューとは
2人の開発者がリアルタイムでコードを一緒に確認する手法です。ペアプログラミングの「レビュー版」と考えると分かりやすいでしょう。
進め方
ペアレビューの流れ(30-60分)
1. 準備(5分)
- PRの概要を共有
- レビューの目的を確認
2. ウォークスルー(15-30分)
- 作者がコードを順番に説明
- レビュアーが随時質問・指摘
- 画面を共有しながら進める
3. ディスカッション(10-15分)
- 設計の選択肢について議論
- 改善案を一緒に考える
4. 合意形成(5分)
- 修正すべき点を確認
- 次のアクションを決める
ペアレビューが有効な場面
✅ 有効な場面:
├── アーキテクチャに影響する変更
├── 新しいライブラリやフレームワークの導入
├── 複雑なアルゴリズムの実装
├── セキュリティに関わる変更
└── 新人メンバーのPR(教育目的)
❌ 不向きな場面:
├── 単純なバグ修正
├── フォーマット変更のみ
├── 小さな機能追加
└── ドキュメントの更新
ペアレビューのコツ
レビュアーとして:
├── 作者の説明をまず聞く(遮らない)
├── 理解できない部分は素直に質問する
├── 「こうしたらどうか」と対話的に提案する
└── メモを取りながら進める
作者として:
├── 変更の背景・意図を最初に説明する
├── 自信のない部分を正直に伝える
├── レビュアーの視点を尊重する
└── 防御的にならない
モブレビュー
モブレビューとは
チーム全員(または3人以上)でコードを一緒に確認する手法です。
進め方
モブレビューの流れ(60-90分)
役割:
├── ファシリテータ ー: 進行を管理
├── 作者: コードを説明
└── レビュアー(複数): 質問・指摘
1. アジェンダの共有(5分)
- 対象PRと目的を説明
2. コードウォークスルー(30-45分)
- 作者がコードを説明
- 全員が自由に質問・コメント
- ファシリテーターが議論を整理
3. 設計ディスカッション(15-20分)
- 代替案の検討
- チームとしての合意形成
4. アクションアイテムの整理(5-10分)
- 修正点のリスト化
- 担当者と期限の設定
モブレビューが有効な場面
✅ 最適な場面:
├── 新しいモジュールやサービスの設計レビュー
├── コーディング規約の策定・変更
├── 重大なインシデント後の再発防止レビュー
├── チーム内の知識格差を解消したい時
└── 新人メンバーのオンボーディング
モブレビューの実践例
シナリオ: 認証モジュールのリニューアル
ファシリテーター: 「今回は認証モジュールの
リニューアルPRをチーム全員でレビューします」
作者: 「JWT からセッションベースに変更しました。
理由は......」
メンバーA: 「セッションストアは Redis を使っていますが、
Redis が落ちた場合のフォールバックはありますか?」
メンバーB: 「私はこのパターンを前のプロジェクトで
使いましたが、セッション固定攻撃の対策として
ログイン後にセッションIDを再生成した方が良いです」
メンバーC: 「テストでモックしている箇所が多いですが、
インテグレーションテストも追加した方が安心です」
→ 多角的な視点でレビューが行われる
非同期レビューとの使い分け
PR が来たとき:
変更規模は?
├── 小さい(〜200行)
│ └── 非同期PRレビューで十分
├── 中程度(200〜500行)
│ ├── 通常の変更 → 非同期PRレビュー
│ └── 複雑な変更 → ペアレビュー
└── 大きい(500行〜)
├── PRの分割を依頼
└── 分割困難なら → モブレビュー
重要度は?
├── 通常 → 非同期PRレビュー
├── 高(設計変更・セキュリティ) → ペアレビュー
└── 最高(アーキテクチャ変更) → モブレビュー
まとめ
| 手法 | メリット | デメリット | 最適な場面 |
|---|---|---|---|
| 非同期PRレビ ュー | 各自のペースで実施可能 | 文脈の伝達が難しい | 通常の変更 |
| ペアレビュー | 深い議論が可能 | 2人の時間を拘束 | 複雑な変更 |
| モブレビュー | 多角的な視点 | 全員の時間を拘束 | 設計判断・教育 |
チェックリスト
- 3つのレビュー手法の違いを説明できる
- ペアレビューの進め方を理解した
- モブレビューの進め方を理解した
- 場面に応じたレビュー手法の使い分けができる
次のステップへ
レビューの手法を学んだら、いよいよ実践演習です。5つのPRをレビューして、ここまで学んだスキルを総合的に使ってみましょう。
推定読了時間: 30分