DevOpsレポートの現状

2019年5月29日

「State of DevOps Report(DevOpsレポートの現状)」は、ソフトウェアデリバリー組織の有効なプラクティスを決定するために、調査データの統計分析を使用する年次レポートです。主な著者は、Nicole Forsgren(ニコール・フォースグレン)氏、Jez Humble(ジェズ・ハンブル)氏、およびGene Kim(ジーン・キム)氏です。

このレポートは、数万人のプロのソフトウェア開発者を対象とした調査に基づいています。調査は、組織文化など、直接測定できないもの、つまり構成概念の要素を特定するように設計された質問で構成されています。この場合、構成概念は、プラクティス(継続的インテグレーション)や環境要因(チーム文化)など、ソフトウェアデリバリー組織[1]の能力を表します。各構成概念について、調査の質問はこれらを間接的に特定するように設計されているため、「継続的インテグレーションを行っていますか」とは尋ねません(これは非常に信頼性の低い回答が得られることがわかっています)。代わりに、CIの一部である具体的な事柄(例:「全員が毎日共有メインラインにプッシュしていますか」)を尋ねます。そして、さまざまな統計手法を使用して、質問が実際に基礎となる概念を測定しているかどうかをテストします。さらに分析を進めることで、これらの構成概念がどのように結びついているかについての仮説を検証できます。

この調査の最も顕著な結果の1つは、チームが4つのソフトウェアデリバリーパフォーマンス基準(エリート、高、中、低)に分類される方法です。エリートパフォーマーは1日に何度もデプロイを行い、開発者が完了した変更を本番環境に反映するのに1時間かかりません。対照的に、低パフォーマンスのチームは、変更を本番環境にデプロイするのに数か月かかります。この高いスループットは、システムの安定性を犠牲にするものではありません。エリートチームの変更失敗率は15%未満(低パフォーマンスチームの46〜60%と比較して)であり、障害からの復旧は数週間ではなく数分で可能です。

これについてさらに読むための最良の出発点は、無料で入手できる2019 State of DevOps Report(2019 DevOpsレポートの現状)です。結果とそれらを発見するために使用された手法の詳細については、彼らの著書Accelerate(アクセラレイト)強くお勧めします[2]

2019年レポートからの4つの主要メトリクス

エリート
デプロイ頻度オンデマンド(1日1回以上)1時間ごと〜1日ごと1週間ごと〜1か月ごと1〜6か月ごと
リードタイム1日未満1日〜1週間1週間〜1か月1〜6か月ごと
復旧時間1時間未満1日未満1日未満1週間〜1か月
変更失敗率0-15%0-15%0-15%46-60%

このレポートは、4つの主要メトリクスの類似性に基づいて、調査対象の組織をクラスター化しました。

  • デプロイ頻度:チームが本番環境にコードをデプロイする頻度
  • リードタイム:コードがコミットされてから本番環境で正常に実行されるまでの時間
  • 復旧時間:欠陥が発生した場合にサービスを復旧するまでの時間
  • 変更失敗率:変更のうち、修復が必要な問題が発生した割合

注記

1: ソフトウェアデリバリーとは、開発者がソフトウェアシステムの変更作業を完了してから、その変更が本番環境にデプロイされるまでのプロセスです。必要な変更内容を把握することや、開発チームが開発環境内で完了するまで変更作業を行う方法は含まれていません。

2: 元の創業者の関与はありませんが、DORAコミュニティは、この活動を継続しています。