Imagine a world where product owners, Development, QA, IT Operations, and Infosec work together, not only to help each other, but also to ensure that the overall organization succeeds. By working toward a common goal, they enable the fast flow of planned work into production, while achieving world-class stability, reliability, availability, and security. [1]
—The DevOps Handbook
DevOps
注: これは、3部構成のSAFe DevOpsシリーズのホームページです。この記事は、基本的なDevOpsの概念を紹介するシリーズの最初のものです。次のリンクからシリーズの後続記事にアクセスできます (DevOpsに対するCALMRアプローチおよびSAFeのDevOpsプラクティス分野)。
トレーニングを始めますか?
検索ツールを使用して現在の提供内容を探索するか、特定のコースについて詳しく学びましょう。
定義:DevOpsは、ソリューションを効率的に開発して運用するために必要な統合、自動化、コラボレーションをサポートするマインドセット、文化、一連の技術的プラクティスです。
DevOpsは、アジャイルプロダクトデリバリーコンピテンシーの一部であり、開発 (Development) と運用 (Operations) の2つの言葉を組み合わせたものです。DevOpsがなければ、ソリューションを構築する人々とそれをサポートし維持する人々の間にはしばしば大きな緊張が生じます。DevOpsは組織のサイロを解体し、継続的デリバリーパイプライン (CDP)、すなわち市場をリードするソリューションをビジネスが求める速度で提供する能力を持つ高パフォーマンスのイノベーションエンジンを開発するのに役立ちます。
DevOpsの目標はシンプルで、ビジネスのニーズに応じてバリューを迅速に提供することです。実際、DevOpsを成功裏に採用したチームは、低パフォーマンスのチームと比較して、平均でデプロイの頻度が208倍かつ速度が106倍、失敗が7分の1、インシデントからの復旧速度が2,604倍に向上しています。[2]
DevSecOps
「DevSecOps」は、継続的デリバリーを追求する上で、適切な情報「セキュリティ」プラクティスの重要性を強調する用語です。DevOpsの起源は、開発や運用の場合とは異なり、セキュリティを最優先の懸念事項として明示的に含んでいなかったため、セキュリティが後付けになるリスクを避けるための一般的な用語としてDevSecOpsが登場しました。
セキュリティコミュニティは、開発と運用のルーツを超えてDevOpsの考え方を進化させてきました。State of DevOps Report (世界で最も長い歴史を持ち、最も広く引用されているDevOpsの研究プロジェクト) が明らかにしたとおり、組織のセキュリティはバリューストリームに完全に統合されることで改善します。[3] インターネット上で最も読まれているDevSecOpsの記事の一つで、RedHatは「時代遅れのセキュリティプラクティスは、最も効率的なDevOpsイニシアティブでさえも台無しにする可能性がある」と注意を促しています。[4]
オープンWebアプリケーションセキュリティプロジェクト (OWASP) 財団によるソフトウェア脆弱性のトップ10リストは、開発チーム、運用チーム、およびセキュリティチーム間のコラボレーションを促進するための最も信頼されるツールの一つとなっています。[5]
米国空軍はDevSecOpsプラットフォーム (DSOP) イニシアティブの先駆者であり、先進的なDevOpsとセキュリティプラクティスを組み合わせることで、世界で最も規制が厳しい組織に対しても「プラグアンドプレイ」のソフトウェア工場と劇的に効率化されたデリバリープロセスを提供できることを実証しました。
これらの貢献のおかげで、セキュリティはDevOps文化に深く浸透しています。その結果、「DevOps」と「DevSecOps」は、すべての実用的な目的において同じ概念を意味するようになりました。それぞれの用語は、開発、運用、セキュリティ、インフラストラクチャ、アーキテクチャなど、バリューストリーム全体にわたる多数の分野から融合されて、コラボレーション、スピード、品質、安全性を実現するために連携して機能する、一連のプラクティスを示します。
SAFeはこの考えを引き継ぎ、セキュリティを主要な懸念事項として扱います。SAFeでは、「DevOps」とは「DevSecOps」を意味します。DevOpsにおいて、顧客、従業員、市民、兵士、家族、そしてビジネスを保護することは、選択肢ではなく必須の要件です。セキュリティは、私たちのDNAに組み込まれているのです。その結果、ビッグピクチャー、Frameworkのガイダンス、コースウェア、評価、SAFe詳細ガイダンスの記事など、SAFeの多くの領域で、先進的なセキュリティプラクティスが輝きを放っています。
これらは、DevSecOpsのムーブメントがどのようにDevOpsを新たな卓越性の水準に引き上げたかを示すほんの数例に過ぎません。
アジャイルリリーストレイン (ART) は、SAFeにおける主要なバリューのデリバリー構造です。各ARTは、「セキュリティ」、コンプライアンス、品質保証 (QA)、テスト、V&V (検証と妥当性確認) など、ソリューションを構築しリリースするために必要なすべてのスキルを備えています。ARTが構築する各インクリメントでは、現在のソリューションの実行可能性と、セキュリティ、品質、コンプライアンスに向けた進捗状況がアセスされ、システムの最終的な使用適合性についての早期フィードバックが提供されます。また仕様が早期に作成され、小さなバッチで進化することで、意思決定に対するフィードバックが早く提供され、継続的なレビューとアセスメントの機会が得られます。ARTはセキュリティを、「検査を通じてではなく、各イテレーションの間にソリューションに組み込む」必要があります。「セキュリティ」テストは、脆弱性を防ぐためにシフトレフトしなければならず、コンプライアンスの速度と精度を向上させるために自動化されるべきです。
詳細
DevOpsは継続的デリバリーを可能にします。実際のところ、顧客やステークホルダーに対して継続的にバリューを提供することを望む企業は、DevOpsの「マインドセット」と技術的なプラクティスをマスターすべきです。これらのスキルは、絶え間ないデジタルディスラプションとイノベーションの時代において不可欠です。しかしながら、大規模に継続的デリバリーを達成することは容易ではありません。DevOpsに対するSAFeのアプローチは、企業がこのような複雑な問題を解決するのを助けます。
パラダイムシフト
世界中のIT組織は、根本的かつ慢性的な対立に悩まされています。すなわちテクノロジーのデリバリープロセスは、「一見相反する」目標とインセンティブを持つ複数のチームに依存しています。[1] アジャイルチームは、ビジネスのニーズに合わせて素早く変更を提供します。運用チームは、ビジネスを運営するのに必要なソリューションの安定性を維持するために、変更のフローを規制します。セキュリティチームは、データ侵害の原因となる脆弱性が変更によってもたらされるのを防ぐためのポリシーを制定します。
ペースを保つためには、新しいデリバリーシステム、つまり「ソフトウェア工場」が必要です。これはチームを連携させ、デリバリーの速度を上げながら、同時にソリューションの品質、セキュリティ、そして安定性を向上させます。そうすることで初めて、顧客とチームのニーズを予測して効果的に満たすことができます。
注: 「ソフトウェア工場」は、この新しいデリバリーシステムを表す、一般的になりつつある用語です。SAFeのコミュニティ貢献の記事で、Micro Focusのディスティングイッシュトテクノロジストであるピーター フォルマー氏は、ソフトウェア工場について、「(バリューストリーム) をサポートおよび強化する標準化されたツールとエンジニアリングサービス」と説明しています。[6]
これらのソフトウェア工場は、ツール、サービス、データ、プロセスの統合セットであり、計画、構築、テスト、リリースのサイクルに沿って、プロダクトを進行させるのに役立ちます。[7] 米国防総省 (DoD) は、共通のDevSecOpsプラットフォーム (DSOP) を活用して、特化されたデジタルプロダクトとサービスを迅速に提供するための、成長を続けるソフトウェア工場のエコシステムを維持しています。[8] システムを説明するために使用される用語に関係なく、多くの企業がDevOpsを活用することで、バリューストリームにおけるこのレベルの洗練度を達成しています。
残念ながら、ほとんどのIT組織は、この種のシステムをネイティブにはサポートしていません。多くの組織のプロセスとポリシーは、本番システムの頻繁な変更を可能にするためではなく、防ぐために最適化されています。したがって、パラダイムシフトが必要です。アジャイルが「仕事をする方法」におけるパラダイムシフトを表しているように、DevOpsは「構築する方法」における同様のシフトを表しています。DevOpsを通じて、デジタルを活用したソリューションを構築する新しい方法を導入することは、時代遅れの開発ライフサイクルをCDPに変換するための鍵です。
継続的な学習と実験
CDPは、DevOpsを効果的にバリューストリームに適用した結果です。そして、バリューストリームは古いモデルの場合とは異なる動作をする必要があります。なぜなら、今日のテクノロジーデリバリーのオブジェクティブは異なるからです。
企業は、市場のニーズに後れを取らないために、これまで以上に迅速にフィーチャーをリリースしなければなりません。しかし、競争相手を上回るデプロイは目標ではありません。競争相手を上回る学習が目標です。そして、その学習は市場における新機能のバリューを理解することから得られます。フィーチャーのバリューはリリースされて初めて生まれるため、企業は継続的な構築、測定、学習を通じて、デジタルソリューションを進化させて、顧客を素早く惹きつけ維持する必要があります。図3は、SAFeの継続的デリバリーパイプラインが、顧客のニーズ、習慣、好みについての継続的な学習と、迅速でリスクの低い実験を促進する閉ループシステムとして機能することを示しています。
この絶え間ない学習と実験のエンジンは、従来のデリバリープロセスとはまったく異なります。それを有効にするには、バリューストリーム全体にわたって、従来とは異なるマインドセット、スキル、ツールが必要です。大量のバッチ、サイロ化されたチーム、引き継ぎ、モノリシックなアーキテクチャ、変更審査委員会、政治力学、そして英雄的行為はここには存在しません。その代わりに、この新しいシステムは共有された価値観、機能横断的なコラボレーション、客観的な測定、自動化、そして最新の技術的プラクティスによって導かれる必要があります。
そこで重要になるのがDevOpsです。
図4は、DevOpsが継続的デリバリーパイプラインをどのように可能にするかを示しています。DevOpsは、各ステップでの迅速なデリバリーと学習を促進するために必要な「マインドセット」、「プラクティス」、および「ツール」を提供することでこれを実現します。
その本質的な部分で、DevOpsはバリューストリーム全体を通じて動作と意思決定を導くマインドセットです。DevOpsに対するSAFeのCALMRアプローチは、このマインドセットを具現化するもので、上記の図の中心に位置し、継続的デリバリーパイプラインのすべての側面に浸透しています。DevOpsの技術スキル、プラクティス、およびツールは、ソリューションを直接進化させ、維持します。SAFeでは、「プラクティス分野」が、図4に示されるCDPモデルの内側のリング内でこの知識を表します。
DevOps成熟度の測定と管理
DevOpsのパフォーマンスを測定し、インクリメンタルな進捗状況を追跡することは、繁栄するDevOps文化を構築するために不可欠です。
SAFe DevOpsヘルスレーダー (図5) は、ARTとソリューショントレインがバリューストリームのパフォーマンスを最適化するのを助けるツールです。このツールは、CDPの4つの側面と16の活動の成熟度をアセスすることにより、包括的なDevOpsの健康状態を確認します。ヘルスレーダーは、DevOpsトランスフォーメーションの任意の時点でのベースラインの成熟度を測定でき、迅速でインクリメンタルな進捗を導くのに役立ちます。
DevOpsヘルスレーダー
無料のDevOpsヘルスレーダーアセスメントをここからダウンロードしてください。
SAFe Studioメンバーへの注記: SAFe Studioメンバーは、すべてのSAFeアセスメント (DevOpsヘルスレーダーを含む) を、当社のパートナーであるComparative Agilityを通じてオンラインで利用できます。これにより、パフォーマンスの向上に役立つ追加のデータ収集、分析、比較、および傾向分析のケイパビリティが提供されます。これらにはSAFe Studioの「メジャー&グロー」ページからアクセスしてください。
DevOpsシリーズの詳細
記事1: DevOpsホームページ (このページ)
記事2: DevOpsに対するCALMRアプローチ
記事3: SAFeのDevOpsプラクティス分野
詳しく学ぶ
[1] Kim, Gene, Jez Humble, Patrick Debois, and John Willis. The DevOps Handbook: How to Create World-Class Agility, Reliability, and Security in Technology Organizations. IT Revolution Press, 2016.
[2] Accelerate – State of DevOps 2019. https://services.google.com/fh/files/misc/state-of-devops-2019.pdf
[3] 2019 State of DevOps Report. https://puppet.com/resources/report/2019-state-of-devops-report
[4] What is DevSecOps? https://www.redhat.com/en/topics/devops/what-is-devsecops
[5] OWASP Top 10 Application Security Risks. https://owasp.org/www-project-top-ten/
[6] Accelerating Flow with DevSecOps and the Software Factory. https://www.scaledagileframework.com/accelerating-flow-with-devsecops-and-the-software-factory/
[7] Why a Software Factory Is Key to Your DevOps Success. https://techbeacon.com/devops/why-software-factory-key-your-enterprise-devops-success
[8] U.S. Air Force Software Factories. https://software.af.mil/
最終更新: 2023年3月14日