デプロイ頻度・変更のリードタイム・変更失敗率・復旧時間(Four Keys)で、チームの状態を見る。
開発の生産性を「書いたコードの行数」や「コミット数」で測るのは誤りです。よく使われるのは、DORA(DevOps Research and Assessment)の調査から生まれた Four Keys です。速さ(2つ)と安定性(2つ)を組にして見るのが特徴で、片方だけを上げる無理な改善に気づけます。
| 指標 | 意味 | 測り方の例 |
|---|---|---|
| デプロイ頻度 | どれだけの頻度で本番に出しているか | CI/CD の本番デプロイの記録を数える |
| 変更のリードタイム | コミットから本番に出るまでの時間 | コミット時刻とデプロイ時刻の差(中央値) |
| 変更失敗率 | デプロイのうち障害・切り戻し・緊急修正になった割合 | 切り戻しやホットフィックスを障害チケットと結びつける |
| 復旧時間(以前は MTTR と呼ばれた) | デプロイが原因で起きた障害から直るまでの時間 | インシデントの開始と解消の時刻の差 |
小さな変更をこまめに出すチームほど、速さと安定性の両方がよい傾向がある、というのが DORA の調査の大きな結論です。大きな変更をまとめて出すと、1回の失敗の影響も原因の切り分けも大きくなるからです。
なお DORA は指標の定義を調査のたびに見直しています。近年は5つ目の指標としてデプロイのやり直し率(本番の障害に対応するための、予定外のデプロイの割合)を加え、「スループット(速さ)」と「不安定さ」の2つのまとまりで整理しています。まずは Four Keys の4つを測れるようにし、慣れてきたら追加を考えるとよいでしょう。
面接ではこう答える
Four Keys は DORA の調査から生まれた4つの指標で、デプロイ頻度と変更のリードタイムが速さ、変更失敗率と復旧時間が安定性を表します。速さと安定性を組にして見るので、片方だけを無理に上げる改善に気づけます。調査の大きな結論は、小さな変更をこまめに出すチームほど両方がよい傾向にあるということです。近年は定義が見直され、デプロイのやり直し率を加えた5つで整理されていますが、まずは4つを測れるようにするところから始めます。
EMとの関わりチームの開発の流れの健康診断として使い、改善の前後を比べる数字や、事業側への説明の材料にします。