今日からはじめる DevOps 改善 ~ DORA Accelerate State of DevOps Report 2021 ~

Ryo Nakamaru
google-cloud-jp
Published in
7 min readNov 30, 2021

Google Cloud Japan Advent Calendar 1 日目です!今年はカスタマーエンジニアだけでなく、各部門から選りすぐりの投稿があります。ぜひご注目ください :)

https://www.devops-research.com/research.html

今日のテーマは “DevOps の改善” です。今年 9 月 Google Cloud の DevOps 研究チーム DORA から、2021 年の研究成果が発表されました。概要は以下ブログにまとまっています。

今日は

  1. もう少し深く、そのレポートを振り返り
  2. DevOps を改善するためのおおまかな流れ
  3. 改善にご利用いただける Google Cloud からの情報

をご紹介します!

研究の背景

DORA の研究目的は

  • 組織で高い IT パフォーマンスを実現する方法
  • ソフトウェアを開発・提供する効果的かつ効率的な方法

の変化を捉え、その改善の指針を得ることです。この 7 年間、IT パフォーマンス向上という観点で、DevOps の果たす役割を研究し続けています。研究では計測すべき重要な指標として、以下 5 つ(前回までは 4 つ)を定義しています。

  1. 環境に変更が反映されるまでのリードタイム
  2. デプロイの頻度
  3. 変更後のエラー発生率
  4. 障害時のサービス復元時間
  5. 信頼性目標を達成する能力 (New)

余談ですが、ここでおもしろい視点があります。DevOps という言葉には一般に合意された定義はありませんが、関連 Podcast では「DevOps?この 5 つの指標を思い出せばいいよね(意訳)」と言っています。彼らのような本格的な研究でなくとも、上記指標は社内で DevOps を議論するときのヒントになるのではないでしょうか。議論のベースラインをそろえる意味でも定量的評価の導入は有意義ですよね。

2021 年度の DORA 研究結果

DORA では例年大規模な調査・研究を行っていますが、今年は各業界 32,000 人を対象に実施し、組織・チームを実際の DevOps パフォーマンスに応じて 4 つに分類しています。そして今年はパフォーマンスが最も高いチームは、低いチームに比べ

  • 環境に変更が反映されるまでのリードタイムは 6,570 倍短い
  • デプロイの頻度は 973 倍高い
  • 変更後のエラー発生率は 3 倍以上低い
  • 障害時のサービス復元時間は 6,570 倍以上短い

という結果がでました。組織間での DevOps 実装の差は年々広がっているようです。

さらに注目いただきたいのは、今年から

  • (可用性に限らない)“信頼性” と SRE
  • ソフトウェア サプライチェーンへのセキュリティ実装
  • 高品質な内部ドキュメント
  • クラウドを最大限活用すること

の関係性、結果として組織の IT パフォーマンスに与える影響も分析されている点です!概要は以下画像にまとめますが、詳細はぜひレポートをご覧ください。

いかがですか?興味深いですよね。ドキュメントに関する評価は Podcast でも補足されていますので、お時間あればぜひそちらも 😉

本研究そのものは大規模かつ精緻なものですが、簡易的な評価でよければ、ご自身のチームのパフォーマンスについてもすぐに結果が得られます。気になった方は、以下の URL からお試しください!

https://www.devops-research.com/quickcheck.html

DevOps の改善方法(DORA の主張)

では、どうすれば優れた DevOps を実装し、高い IT パフォーマンスがだせるのでしょうか?どうすればそれを継続的に改善できるのでしょうか?

実は Google Cloud としてこの改善を支援するメニューがあったりするのですが・・ Advent Calendar 特典ということで、その改善提案冒頭にある、DORA オススメの流れをご紹介しちゃいます!

  1. 先述の重要指標を可視化
  2. 併せて DevOps の能力(後述)の各項目を評価
  3. 重要指標への影響が大きく、かつ現時点で苦手な能力から改善
  4. 半年ごとに再評価、改善ポイントを見直し

1 は例えば OSS として実装例が公開されているのですが、2 や 3 の評価はあまり簡単ではない気もしますよね・・。ですが、大丈夫です!公式ドキュメントにはその手順もばっちり記載してあります!!

“DevOps の能力” の活用

Google Cloud / DORA では、組織の IT パフォーマンスに影響する要素を DevOps の能力として定め、4 つの分類 27 種類にまとめました。

4 つの分類とは

  • 技術に関する能力
  • プロセスに関する能力
  • 計測に関する能力
  • 文化に関する能力

です。さらに 27 の能力には、DevOps らしく「継続的デリバリー」や「セキュリティのシフトレフト」といったものもありつつ、クラウドと一見関係なさそうな「テストデータ管理」や「仕事の満足度」といった能力まで定義されています。実はこのまとめ、Google Cloud というより Google の知見や DORA の研究がたくさん盛り込まれているものなのです。

例えば「コードの保守性」の「Google におけるコードの保守性の実装」というセクションには Google 社内のコード管理やツールセットが “何のために” 構築されているかといった記述もあります。読むだけも楽しいです。

(Google の推奨する “心理的安全性” も「Westrum の組織類型」として DevOps 改善対象に)

少し話が逸れました。

組織の IT パフォーマンスを改善するために、DevOps の能力を実装し、計測し、改善する話でした。具体的なその方法ですが・・27 の能力ほとんど全てにわたり、各ページに

  • 実装方法
  • 注意点
  • 改善方法
  • 測定方法

がまとめられています。実装も改善も測定もやはり楽ではないですが、この先、どのように DevOps と向き合い改善していくか、そのヒントにあふれていることと思います。ぜひご参照ください 💪

まとめ

  1. DORA から 2021 年版のレポートがでました
  2. DevOps のエリート組はどんどん先へ進んでいます
  3. DevOps の継続的改善には、重要指標の計測と定期的な見直しが必須
  4. Google Cloud では DevOps の能力 としてその方法をまとめています

最後に、私はもっと事業や企業経営といった視点で DevOps を定量評価したいんだ!という方、DORA の研究がベースになったホワイトペーパー「DevOps 変革の ROI」をご覧ください。自社の DevOps を評価するときには一つの材料になるかもしれません。

ホワイトペーパー「DevOps 変革の ROI」| Google Cloud

長文、最後まで読んでいただきありがとうございます。明日以降も続く、Google Cloud Japan Advent Calendar をぜひお楽しみください ♫

--

--

Ryo Nakamaru
google-cloud-jp

Application modernization specialist, Customer Engineer at @GoogleCloud. Opinions are my own, NOT the views of my employer.