レビュー負荷削減手段の効果測定
第4章 タスクの分割基準は、レビュー負荷を削減する手段のうち、削減効果を測った一次資料が確認できるものだけを上限の緩和根拠として認めています。2026-08-07 時点で、可視化・仕様レベルレビューへの前倒し・実行可能な保証の3つは、この条件を満たしていません。
外部に測定がないのであれば、自組織で測ります。本ページはその測定設計です。
この測定が答える問い
Section titled “この測定が答える問い”同じ規模・同じ分散度の変更どうしを比べたとき、手段を適用した側のレビュー負荷は低いか。
規模を揃えずに比較すると、手段を適用しやすい変更(小さく単純なもの)の性質を、手段の効果として読み違えます。
被説明変数(レビュー負荷)
Section titled “被説明変数(レビュー負荷)”レビュー依頼から判定完了までの時間を、2つに分けて記録します。
graph LR A["レビュー依頼"] -->|待機時間| B["初回応答"] B -->|審査時間| C["判定完了"]
| 区間 | 何を反映するか | 扱い |
|---|---|---|
| 待機時間(依頼→初回応答) | レビュアの稼働状況・優先順位 | 主指標にしない。手段の効果と独立に動く |
| 審査時間(初回応答→判定完了) | 読解と確認に要した労力 | 主指標とする |
分けずに合計だけを見ると、レビュアが多忙な期間の変化を手段の効果として読み違えます。
副次の指標を次のとおり置きます。
| 指標 | 定義 | 役割 |
|---|---|---|
| 差し戻し回数 | 変更要求として差し戻された回数 | 審査時間が短い理由が「読んでいない」でないことの確認 |
| 判定後に残った欠陥 | 当該変更に起因する取り消し・障害 | 負荷が下がって見えるだけの状態を検出する |
| 主観負荷 | 5段階の申告 | 補助。成果指標にしない |
審査時間の短縮だけを成果としません。差し戻し回数と残存欠陥を併せて見ない限り、手段の効果と確認の省略を区別できません。
| 区分 | 変数 |
|---|---|
| 規模 | 追加行数と削除行数の合計 |
| 分散度 | ファイル数、ディレクトリ数、変更エントロピー |
| レビュアの馴染み | 過去90日における当該ファイルへのコミット数とレビュー数 |
| 手段 | 適用した負荷削減手段の有無(手段ごとに個別の項目とする) |
| 交絡の候補 | 対象モジュールの総行数、対象モジュールの過去の欠陥件数、変更者の当該領域での経験 |
交絡の候補を併せて記録する理由は第4章に示すとおりです。行数は、モジュールの大きさ・欠陥の履歴・変更者の属性の代理として働いている可能性があります。これらを記録しない測定では、手段の効果を分離できません。
| 取得元 | 取得する項目 |
|---|---|
| Git | 行数、ファイル数、ディレクトリ数、変更エントロピー、モジュールの総行数、変更者の過去のコミット |
| ホスティングのレビューイベント | 依頼時刻、初回応答時刻、判定完了時刻、変更要求の回数、レビュアの識別子 |
| 障害・取り消しの記録 | 当該変更に起因する取り消しと障害 |
| 手段の適用状況 | 手段ごとの機械的な痕跡(影響範囲解析の出力の添付、変異テストのジョブの実行、契約検査の実行) |
手段の適用を自己申告のラベルで記録しません。申告に依存させると、効果が出た案件だけにラベルが残り、測定そのものが結論を先取りします。機械的な痕跡を残せない手段は、測定の対象から外します。
取得しないもの
Section titled “取得しないもの”| 項目 | なぜ取得しないか | 代替 |
|---|---|---|
| 実際に読んだ範囲 | 画面や操作の計測を要する | コメントが付いたファイルの割合を代理として記録する |
| 中断を除いた実作業時間 | 時刻の記録からは分離できない | 審査時間で代替し、24時間を超える事例を分布の集計から除く |
| 個人ごとの処理速度 | 測定の目的に含まれない | 取得しない |
取れない指標を取るために監視を導入しません。画面や入力の計測は、負荷の測定によって得られるものより先に、測定への信頼を壊します。
目標は、手段の有無で審査時間の中央値に2倍程度の差があるかを判別できることです。
これを超える精度を求めない理由は2つあります。
- 判断に使うのは「緩和根拠として認めるかどうか」という二値である。効果量の精密な推定を必要としない
- レビューの所要時間には個人差と割り込みによる大きなばらつきがある。取得の精度を上げても、この分散が支配する
母数の下限を次のとおり置きます。
| 条件 | 値 |
|---|---|
| 手段ごとの適用群・非適用群 | それぞれ30件以上 |
| 期間 | 2四半期以上 |
この値は検出力の計算に基づくものではありません。四半期の運用で現実に集まる件数から置いた初期値です。実測の分散が判明した時点で見直します。
無作為割付を前提にしない
Section titled “無作為割付を前提にしない”レビュー手段の適用がチーム単位で決まるため、変更ごとの無作為割付を現実には行えません。したがって既定の比較を同一チーム内での前後比較とします。
チーム間の比較を主にしません。チームによって対象領域の複雑さとレビューの慣行が異なり、差の大半をそれらが説明します。
前後比較の脅威への対処
Section titled “前後比較の脅威への対処”| 脅威 | 対処 |
|---|---|
| 期間中に他の要因も変化する | 同一期間内の「手段を適用していない変更」を対照として併記する |
| 手段が単純な変更へ偏って適用される(選択効果) | 規模と分散度で層に分け、層ごとに比較する |
| 導入直後の意識の変化が効果に見える | 導入から最初の1か月を集計から除く |
層を揃えられない手段については、判断を保留します。差が出ていても、その手段の効果とは言えません。第4章で外部の一次事例について指摘した限界(無作為に割り付けていない比較には、対象を選んだ効果が含まれる)は、自組織の測定でも同じように働きます。
判断に使える条件
Section titled “判断に使える条件”次をすべて満たしたとき、区分の更新を検討します。
- 適用群・非適用群がそれぞれ30件以上、2四半期以上そろっている
- 規模と分散度で層別した後も、差の向きが層をまたいで一致している
- 差し戻し回数と判定後の残存欠陥が悪化していない
第4章への反映
Section titled “第4章への反映”区分を更新する手続
Section titled “区分を更新する手続”| # | 手続 |
|---|---|
| 1 | 測定結果と、上記の判断条件の充足状況を整理する |
| 2 | 区分の変更を ADR として起票する。第4章の本文を直接書き換えない |
| 3 | ADR の採択後に、第4章の表と ADR 番号の参照を更新する |
外部から測定が公表された場合も、同じ手続によります。
較正の4ステップとの関係
Section titled “較正の4ステップとの関係”第4章の「上限を自組織の実測で較正する」は、手段によらず L0 の既定値そのものを更新する手続です。本ページは、手段ごとの効果を分離して区分を更新する手続です。
| 手続 | 更新する対象 |
|---|---|
| 第4章の較正4ステップ | L0 の既定値(行数・ファイル数) |
| 本ページの測定 | 上限を緩和できる手段の区分(L1・L2 を名乗る条件) |
記録する項目は共通です。1つの記録から両方を導きます。測定の系を2つ作りません。
測定を始める前の歯止め
Section titled “測定を始める前の歯止め”- 個人単位の集計を公開しない。レビュア個人の審査時間を評価に用いると、審査時間は短くなり、レビューの質は下がる(第3章 3.10.11の応答率と同じ構造)
- 測定のために手段の適用を強制しない。強制した期間のデータは通常の運用を代表しない
- 測定の目的と取得する項目の一覧を、測定の開始前に対象チームへ公開する
関連するページ
Section titled “関連するページ”- 第4章 ゲートと判定基準 — 分割基準と、緩和根拠の区分
- レビューパッケージ — 判定資料の構成
- 事前レビューの自動化 — 機械的な確認の実装
- フェーズ6 指標 — 定常運用における指標の取得