組織の成長とともに開発のスピードや品質をどう向上させていくか。多くのエンジニアリングマネージャーが直面するこの課題に対し、1つの有力な指標として「Four Keys」が広く活用されています。
今回は、このFour Keysの基本的な概念から実際の活用方法まで、具体的に解説していきます。
Four Keysとは
Four Keysは、DORA(DevOps Research and Assessment)が提唱する開発組織のパフォーマンスを測る4つの指標です。それぞれの指標が組織の異なる側面を評価します。
- デプロイ頻度
- 本番環境に変更をどのくらいの頻度でデプロイしているかを表します。
- 変更リードタイム
- コードの変更を始めてから、本番環境にデプロイされるまでにかかる時間を測ります。
- 変更失敗率
- デプロイした変更のうち、どのくらいの割合で修正が必要になったかを示します。
- サービス復旧時間
- 問題が発生した際に、サービスを復旧させるまでにかかる時間です。
これらの指標は、DORAが3万以上の開発組織を調査し、導き出したものです。特に優れた成果を出している組織では、1日に複数回のデプロイを行い、変更リードタイムは1日未満、変更失敗率は5%以下、問題が起きても1時間以内に復旧できています。
| パフォーマンスレベル | 変更リードタイム | デプロイ頻度 | 変更失敗率 | デプロイ失敗時の復旧までの時間 |
|---|---|---|---|---|
| Elite | 1日未満 | 必要に応じて (1日に複数回のデプロイ) | 5% | 1時間未満 |
| High | 1日以上1週間未満 | 1日1回以上1週間1回未満 | 20% | 1日未満 |
| Middle | 1週間以上1か月未満 | 1週間に1回以上1か月に1回未満 | 10% | 1週間未満 |
| Low | 1か月以上6か月未満 | 1か月に1回以上6か月に1回未満 | 40% | 1週間以上 |
参考:Highlights from the 10th DORA report
関連記事:デプロイ頻度とは?リリース頻度の測定と改善について解説
なぜFour Keysが注目されているのか
Four Keysが広く受け入れられている大きな理由は、DORAの調査で「開発のスピードと品質・安定性は両立可能」なことが示された点にあります。
従来は「スピードを追求すると品質が犠牲になる」と考えられていましたが、DORAの調査はこの考えを覆し、スピードと品質の両立が可能であることを示しました。
特筆すべきは、これらの指標が業種や企業規模によらず有効だという点です。DORAの調査では、金融、小売、製造など、業種の違いがパフォーマンスレベルに大きな影響を及ぼさないことが明らかになっています。つまり、どのような組織でも、適切な改善活動を通じて高いパフォーマンスを実現できる可能性があるということです。Four Keysはその進捗を確認するための道標となります。
経営層との対話も変わります。「開発体制の強化が必要です」という抽象的な提案ではなく、Four Keysの数値とともに課題や改善策を説明することで、より具体的な議論が可能になります。
Four Keysの可視化・改善のためのポイント
Four Keysを導入する際に注意したいポイントがいくつかあります。
Four Keysは、コミットから本番環境へのデプロイまでの範囲に焦点を当てた指標です。
そのため、プロダクトの価値や顧客満足度、ビジネス成果といった要素は含まれていません。これらの指標と組み合わせることで、より包括的な評価と改善が可能になります。
また、4つの指標は互いに関連し合っており、1つの指標だけを追いかけると、他の指標に悪影響を及ぼす可能性があります。
例えば、デプロイ頻度だけに注目して数値を上げようとすると、変更失敗率が上がってしまうかもしれません。逆に、変更失敗率を過度に気にしすぎると、デプロイ頻度が下がってしまう可能性もあります。4つの指標をバランスよく見ることで、組織の健全性を総合的に評価できます。
DORAは「ケイパビリティモデル」も提唱しています。
これは、Four Keysの改善を支える能力を体系化したモデルです。技術面だけでなく、プロセスや組織文化の観点も含まれており、Four Keysの改善に取り組む際の道しるべとなります。
Four Keysの数値改善自体を目的化してしまうことは避けなければなりません。例えば「デプロイ頻度を上げなければ」と焦るあまり、品質を犠牲にしてしまっては本末転倒です。数値はあくまでも改善のためのヒントであり、目的ではありません。
Four Keysの計測・可視化方法
Four Keysを計測する方法は大きく2つのアプローチがあります。各組織の状況に応じて適切な方法を選択することが重要です。
1つ目は自前での計測です。GitHubやGitLab等のAPIを活用してデプロイやプルリクエストの情報を収集し、独自の計測環境を構築する方法です。
例えば、今週何回のデプロイが行われたかについては、SlackやGitHub Actionsから取得することができます。また、バグについては、チケット管理システムやバグ管理表(Notion、Confluenceなどツールにて管理)から取得するといった方法もあります。
初めて計測を始める場合、まずは簡易的な方法から始めることも有効です。
例えばデプロイ頻度であれば「月に何回」「1日に何回」といった単位で実績を記録したり、変更リードタイムについてはプルリクエストの情報から計測したりすることができます。
理想的には、これらの指標を毎日自動で集計し、スクラムのセレモニーなどで定期的に共有していく形が望ましいでしょう。
自前での計測の最大の利点は、組織独自の定義や粒度での計測が可能で、既存の開発プロセスに合わせた柔軟な運用ができることです。
一方で、開発・保守の工数確保が必要なことや、指標の定義や計算方法の設計に時間を要すること、さらに新しい計測ニーズが出てきた際の対応に開発工数が必要になることが課題となります。
2つ目は専用SaaSの活用です。導入後すぐに計測を開始でき、業界標準の定義に準拠した指標を利用できます。
既存の開発フローを大きく変えることなく導入可能で、継続的な機能改善や新しい分析機能の追加も期待できます。
SaaS活用のメリットは、計測環境の構築・保守の負担が少なく、すぐに他社比較可能な形で計測を始められることです。
また、分析や可視化の機能が充実しているため、データの活用がしやすいという特徴があります。ただし、コストが発生することや、組織独自の定義での計測が難しい場合があることは考慮が必要です。
どちらの方法を選択する場合も、まずは「なぜ計測するのか」という目的を明確にし、その目的達成のために必要な計測方法を選ぶことが重要です。
特に組織の規模やチームの状況に応じて、段階的な導入を検討することをお勧めします。
Four Keysの活用事例
開発組織が成長期を迎えると、多くの場合「組織の人数は増えているものの、開発スピードが向上している実感がない」という課題に直面します。
Sansan株式会社でも「プロダクトの成長とエンジニア組織の成長は右肩上がりで進んでいたが、開発生産性については定量的に把握できていなかったため、成長に再現性があるかどうか分からない」状態であったことから、開発生産性の可視化に取り組むことになりました。
当初は有志で内製ツールを開発し、生産性の可視化を試みました。しかし、機能アップデートに十分なリソースを割けず、利用者からのフィードバックも反映しきれない状況が続きました。GoogleやDORAのライブラリの活用も検討しましたが、コストパフォーマンスの面で見合わないと判断。そこでFour Keysをはじめとした開発生産性の可視化ができるSaaS「Findy Team+」の導入に踏み切りました。
Findy Team+の導入により、「なぜうまくいったのか」「なぜ今ベロシティが落ちているのか」など、チームのパフォーマンスを定量的に言語化できるようになりました。
これによりマネージャーがフォーカスすべき課題も特定しやすくなり、ネクストアクションにつなげやすくなっています。
導入の効果は数字にも表れています。
導入前後で比較すると、マージ済みPR数は約1.3倍に増加し、リードタイムは約1/3にまで短縮。チームの裁量を保ちながら、具体的な改善を進められるようになりました。これにより、プロダクトの成長と組織の成長をより効率的に進める基盤を構築できたのです。
参考:チーム裁量権を保ちながらリードタイムを約1/3に短縮。Sansan株式会社が実践した開発生産性の可視化とは?
まとめ:Four Keysで開発組織はどう変わるのか
Four Keysの導入によって、開発組織は3つの大きな価値を得ることができます。
1つ目は、組織の健康状態を可視化できる点です。Four Keysの数値を継続的に追うことで、開発プロセスの問題を早期に発見できるようになります。
2つ目は改善活動の効果を客観的に測定できる点です。「なんとなく良くなった気がする」ではなく、具体的な数値として改善の成果を示せるようになります。これは、チームの自信にもつながります。
3つ目は経営層との対話が促進される点です。定量的なデータに基づいて組織の状態や課題を説明できるようになり、必要な投資の判断材料として活用できます。
ただし、Four Keysはあくまでも改善のためのツールです。数値の改善自体が目的化してしまわないよう、常に「なぜ計測するのか」という本質的な目的を見失わないことが重要です。
開発生産性の向上は、どの組織にとっても継続的な課題です。Four Keysという客観的な指標を活用することで、より効果的な改善活動が可能になるでしょう。
Four Keysについて関心のある方にオススメの記事はこちら
デプロイ頻度とは?リリース頻度の測定と改善について解説
本記事では、デプロイ頻度の基本的な概念から、測定方法、具体的な改善アプローチまで、実践的に解説していきます。
変更リードタイムとは?開発速度の測定と改善について解説
本記事では、変更リードタイムが長くなる背景を構造的な課題として捉え直し、再現性のある計測と改善の視点を整理します。
変更失敗率とは?本番環境の品質管理における重要指標について解説
本記事では、変更失敗率の基本的な概念から、計測方法、効果的な改善アプローチまで、実践的に解説していきます。
平均修復時間とは?インシデント対応力を数値で可視化
本記事では、平均修復時間の基本的な概念から、計測方法、効果的な改善アプローチまで、実践的に解説します。
FAQ
Four Keysとは何ですか?
Four Keysは、DORA(DevOps Research and Assessment)が提唱する、開発組織のパフォーマンスを測る4つの指標です。デプロイ頻度・変更リードタイム・変更失敗率・サービス復旧時間の4つで構成されており、業種や企業規模を問わず有効な指標として、広く活用されています。
Four Keysの4つの指標はそれぞれ何を測りますか?
「デプロイ頻度」は本番環境に変更をどのくらいの頻度でデプロイしているか、「変更リードタイム」はコードの変更を始めてから本番環境にデプロイされるまでにかかる時間、「変更失敗率」はデプロイした変更のうち修正が必要になった割合、「サービス復旧時間」は問題発生から復旧までにかかる時間です。
なぜFour Keysが注目されているのですか?
DORAの調査で「開発のスピードと品質・安定性は両立できる」ことが示されたためです。また、業種・企業規模がパフォーマンスレベルに大きな影響を及ぼさないことも示されており、どのような組織でも適切な改善活動を行うことで高いパフォーマンスを実現できる可能性があります。その中でFour Keysはその進捗を確認するための道標となります。
Four Keysの計測はどのように始めればよいですか?
Four Keysの計測方法として「自前での計測」と「専用SaaSの活用」の2つがあります。自前で計測する場合は、GitHubやGitLab等のAPIを使って計測環境を構築します。柔軟な運用が可能な反面、開発や保守の工数が必要です。一方、Findy Team+のような専用SaaSを活用する場合は、計測環境の構築・保守の負担が少なく、導入後すぐに業界標準の定義で計測を始められます。分析や可視化の機能が充実しているため、データの活用がしやすいのも特徴です。どちらの場合も「なぜ計測するのか」という目的を先に明確にしてから方法を選ぶことが重要です。
Four Keysを導入するとどのような効果がありますか?
開発組織は3つの大きな価値を得ることができます。開発プロセスの問題を早期に発見できる「組織の健康状態の可視化」、改善活動の成果を具体的な数値で示せる「客観的な効果測定」、そして定量データに基づいて組織の状態や課題を経営層に説明できる「対話の促進」です。Findy Team+を導入したある開発組織では、マージ済みPR数が約1.3倍に増加し、リードタイムが約1/3に短縮した事例もあります。