PuppetがリリースしたState of DevOps Report 2020では、セルフサービスと効果的な変更管理手法のための内部プラットフォームが、組織にとってDevOpsの進化の階段を上る鍵であったことが明らかにされている。ソフトウェアデリバリパイプラインのセキュリティインテグレーションも重要な役割を果たしている。
レポート調査(現在、発行9年目)では、世界中のほぼ2400人の専門家にコンタクトを取った。回答者の数が最も多かったのはヨーロッパ(33%)で、米国とカナダがそれに続く(30%)。回答者のほとんど(33%)はテクノロジー企業の人であり、金融、サービス、産業、製造業がそれに続く。これらのパーセンテージは、前年のレポートのものである。今年のレポートの目的は、組織でDevOpsの俊敏性を実現するのに有益な「構造上の問題」を調査することであった。
画像提供: The State of DevOps Report 2020
2020年のレポートでは、内部プラットフォームチームがより普及しており、その存在は進化したDevOpsプラクティスと正の相関関係があると述べられている。「DevOpsの進化と内部プラットフォームの使用との間に強い関係があることがわかりました」とAlanna Brown氏は述べている。彼は、コミュニティのシニアディレクターであり、Puppetのおよびディベロッパーリレーションである。この意味での進化した組織は、CI/CD、開発環境、パブリッククラウドと内部インフラストラクチャ、監視/アラート、データベースプロビジョニング、監査証跡などのセルフサービス機能を開発者に提供する。レポートでは、5段階の「進化モデル」(以前のレポートで定式化)についても言及している。5が最も高く、5の場合には、セルフサービスリソースと自動化されたインシデント対応が導入されており、ビジネスニーズがアプリのアーキテクチャを定義し、セキュリティが設計とデプロイの重要な部分となる。最も一般的なセルフサービスインターフェイスは、DevOpsの進化のさまざまなレベルにある全ての組織にあるCI/CDである。
レポートの作成者は、内部プラットフォームを製品として扱うことが重要であり、したがって、リソース、時間、常設チームを割り当て、それを成功させるための管理責任を持つことが重要であると述べている。内部プラットフォームにより、アプリケーション開発者はコアコンピテンシーに集中でき、標準化されたツールセットにもアクセスできる。「内部プラットフォームチームは、インフラストラクチャ、環境、デプロイパイプラインを提供する責任があります」と著者は書いている。そして、「他にも、内部顧客(通常はアプリケーション開発チーム)がアプリケーションを構築、展開、実行できるようにするために内部サービスを提供する責任があります」と書いている。調査回答者の63%は、少なくとも1つの内部プラットフォームを持っており、2つから4つのプラットフォームが60%であった。これらの組織の31%は、開発の26~50%をプラットフォームを使用して行っていた。
CircleCIのプラットフォーム担当バイスプレジデントであるMike Stahnke氏は、引用されたケーススタディの1つで、可用性、コスト、セキュリティ、および開発者の生産性に関する内部プラットフォームの成功を測定していると述べている。レポートでは、また、そのような内部プラットフォームを提供するための最大の課題は、時間の不足、標準化の欠如、およびチームの技術的スキルの欠如であると述べられている。
レポートには、変更管理に対する4つの異なるアプローチも示されている。効果的な変更管理は、テスト、展開、リスク軽減、柔軟な承認プロセスの自動化に重点を置くことと相関している。コードの変更(Infrastructure as Codeのラインに沿った)、従業員が変更に影響を与えるようなより広範なスコープ、およびプロセスと文化も効率化に影響を与える。レポートによると、コードとして変更を加えることの利点は「変更がコードで利用可能な検証手法の対象となり得る」ことである。
運用上成熟した企業とは、最高レベルの自動化を備え、高レベルの「正統な」承認システムも備えている企業である。このように見えるパラドックスは、これらが通常は比較的大規模な中堅組織であるという事実によって説明される。それらの組織では、変更のロールアウトのための成熟したプロセスをすでに保有しており、「デジタル変換」の一環として自動化を採用しなければならなかった。エンジニアリング主導の企業は主にテクノロジー企業(回答者全体の33%)である。一方で、手動レビューに依っているガバナンスに焦点を当てた企業は通常、大規模な組織な組織であり、回答者の40%を占める5000人以上を雇用している組織である。最後のカテゴリ(アドホックなカテゴリ)は、自動化、承認、エンジニアリング作業のすべての面でスコアが低くなっている。自動変更管理の最大の課題は、不完全なテストカバレッジ、組織の考え方、および緊密に結合されたアプリケーションアーキテクチャである。
セキュリティをソフトウェアデリバリプロセスと統合することで、重大な脆弱性の処理が高速化される。このレポートでは、セキュリティ統合に伴う具体的な例については触れていないが、2019年のレポートでは触れている。レポートは、PuppetのWebサイトからダウンロードできる。