Close

DevOps とアジャイルの比較

アジャイルと DevOps の相違点と類似点

Tom Hall の顔写真
Tom Hall

DevOps アドボケート & 実践者


2000 年代初頭にアジャイル手法が広く導入されると、ソフトウェアやその他の製品の開発方法が大きく変わりました。しかし、業界標準になってから数年のうちに、重大な見落としが明らかになりました。つまり、ソフトウェア製品をデプロイして管理する運用チームのプロセスと要件がこの変革から取り残されていました。

これによって、開発チームと運用チームを連携させるアプローチである DevOps が考え出されました。では、DevOps はアジャイルに取って代わったのでしょうか? それとも互いに補完し合うものなのでしょうか? 両者の間には相違点と類似点がそれぞれあることがわかりました。アジャイルと DevOps は排他的でも包括的でもあり、両方が同じ組織内に存在できます。

アジャイルについて


アジャイルは、コラボレーション、顧客からのフィードバック、迅速なリリースに重点を置いたプロジェクト管理とソフトウェア開発のための反復型アプローチです。2000 年代初頭にソフトウェア開発業界から発生した手法で、これによって開発チームは変化する市場状況や顧客の要求に対応しやすくなります。

アジャイル アプローチでは、一部の計画と設計が前もって行われますが、開発は小さなバッチ単位で進行して、関係者との緊密なコラボレーションを伴います。変更は継続的に組み込まれるため、ウォーターフォール手法で開発した製品と比較して、多くの場合、製品の使用可能なバージョンがより早くリリースされます。これには多くのメリットがあります。おそらく最も重要なメリットは、ソフトウェアが顧客のニーズや期待を満たさない場合は、リアルタイムで修正できる点です。

アジャイルはさまざまな手法の集まりであり、単一の開発アプローチではありません。スクラムやエクストリーム プログラミング (XP) のほか、開発者が数年前に使用していたその他の実践システムを集めたもので、これらのアプローチを単一の原則セットにまとめようとそれぞれの実践者が意見を合わせた結果です。この統一に向けた取り組みの結果がアジャイル マニフェストであり、4 つのコア バリューに基づいた 12 の原則で構成されています。

集中ノードのアイコン
関連資料

CALMS フレームワークについて

頭の構造のアイコン
関連資料

DevOps の歴史について

アジャイル マニフェストの 4 つのコア バリュー

ソフトウェア開発ワークフローを見ている人形

プロセスとツールよりも
個人とインタラクション

開いているフォルダと完了したチケット

総合的な文書よりも
実用的なソフトウェア

プラットフォーム上で作業している人形

契約交渉よりも
顧客とのコラボレーション

水晶玉

計画に従うよりも
変化への対応

DevOps を開始


DevOps はソフトウェア開発のアプローチであり、自動化の強化、開発チームと運用チーム間のコラボレーションの改善など、アジャイルの原則とプラクティスを組み込むことにより、チームがよりすばやく信頼できる方法でソフトウェアを構築、テスト、リリースできるようにします。開発、テスト、デプロイは、アジャイルと DevOps の両方で進められます。従来のアジャイルは運用までは入らないため、この点で DevOps が不可欠になります。

DevOps の目標は、アプリケーション ソフトウェアを記述する開発者と、そのソフトウェアを本番環境で実行する運用チームを結び付けることです。また、ソフトウェアを実行するインフラストラクチャを構築して保守することも目標です。DevOps はアプリケーションを記述する開発チームが、アプリケーションの開発経緯をほとんど知らない運用チームにアプリケーションのデプロイと管理を丸投げする従来のアプローチに代わるものです。DevOps 環境では、アプリケーションの開発、デプロイ、管理のプロセス全体を通して、開発者チームと運用チームが協力して作業します。

DevOps を理解するための基本的なフレームワークには、「Three Ways (3 つの方法)」と「CALMS」の 2 つがあります。CALMS は、Culture (文化)、Automation (自動化)、Lean (リーン)、Measurement (測定)、Sharing (共有) を表します。文化とは、開発と運用がより結合するための文化的なシフトを指します。自動化とは、ベロシティを高めてより高い品質を保証します。リーンとは、継続的な改善と失敗の受け入れを原則とした実験的な考え方の基盤です。測定とは、プロセスを改善するために結果を測定することを指します。共有とは、グループの取り組みやベスト プラクティスの採用など DevOps の重要性を強調するものです。

DevOps の 3 つの方法

パズルのピースをつなげる

システム思考
ソフトウェア アプリケーションは複雑なシステムであることを理解する

プレイ付きのブラウザーポインター

フィードバック ループの増幅
チームメイト間の双方向コミュニケーションを改善する

ソフトウェア開発ワークフローを見ている人形

文化の変化
継続的な実験と学習の文化

アジャイルと DevOps が連携するタイミング


DevOps は、アジャイル プラクティスが発展したもの、またはアジャイルで不足している部分と考えられます。これは、アジャイル アプローチの革新的な部分を運用プロセスに適用する取り組みです。同時に、アジャイルの欠けている部分でもあります。というのも、アジャイルの一定の原則は、DevOps プラクティスが採用されている場合にしか最も完全な形で実現されないからです。たとえば、アジャイル ドキュメントにはソフトウェアの継続的なデリバリーに関する複数の言及がありますが、デリバリー パイプラインは運用上の懸念事項を含むため、通常、継続的なデリバリーは DevOps プラクティスとみなされます。フィードバック ループを増幅するには、チーム全体そしてチーム間のコミュニケーションを改善する必要があります。アジャイル、特にスクラムは、毎日のスタンドアップ、計画会議、ふりかえりなどのさまざまなセレモニーを通じて、このコミュニケーションを促進できます。

アジャイルと DevOps の類似点と相違点


  • アジャイルは開発者と製品管理のコラボレーションを重視 — DevOps は運用チームを含む
  • アジャイルはアイデア化からコードの完成までのソフトウェアのフローが中心 — DevOps はデリバリーと保守にまで広げて重点を置く
  • アジャイルは反復的な開発と小規模なバッチを重視 — DevOps はテストとデリバリーの自動化を重視
  • アジャイルは開発者の計画作業に構造を追加する — DevOps は運用チームに共通の計画外の作業を組み込む

アジャイル マニフェストでは、個人とインタラクション、ソフトウェアの作業、顧客コラボレーション、変化への対応が明示的に優先されています。これらは DevOps の優先事項とまったく同じですが、開発プロセスだけでなく、システムや実行中のアプリケーションの管理にまで拡張されています。

さらに、アジャイル ソフトウェアの 12 原則には、DevOps の原則への言及が含まれています。たとえば、継続的インテグレーション/デリバリー、頻繁なリリースを伴う小さなバッチでの作業、自動化の使用に重点を置くことは、すべてアジャイル ソフトウェアの 12 原則で言及されています。

つまり、アジャイルと DevOps を組み合わせること


究極的には、アジャイルと DevOps の目標は同じです。つまり、ソフトウェア開発のスピードと品質を向上させることです。どちらか片方だけではほとんど意味がありません。多くのチームがアジャイル手法を使ってみてその効果がわかっていますが、一方でアジャイル アプローチで見込まれるメリットの実現に苦労しているチームもあります。これには、チームがアジャイル プラクティスを完全に理解していない、または正しく実施していないなど、さまざまな理由が考えられます。また、DevOps アプローチを組み込むことで、アジャイルに苦戦している組織のギャップが埋まり、期待していた成功を収めるのに役立つかもしれません。

アトラシアンはアトラシアンの製品とサードパーティ ツールをまとめるオープン ツールチェーンによって、開発IT オペレーションアジャイル チームをつなぎます。Atlassian DevOps は、チームがソフトウェアの開発と運用に必要なものをすべて提供します。今すぐ試してみましょう。

Tom Hall
Tom Hall

Tom Hall は DevOps アドボケートかつ実践者であり、熱心な読書家、そしてアマチュア ピアニストでもあります。
過去 20 年間にわたる実績には、Novell、EMC、VMware、AWS の認定が含まれます。2016 年にアトランタで DevOpsDays の企画をサポートして以降、テキサス州オースティンの開催を何年もサポートしてきました。


この記事を共有する
次のトピック

おすすめコンテンツ

次のリソースをブックマークして、DevOps チームのタイプに関する詳細や、アトラシアンの DevOps についての継続的な更新をご覧ください。

DevOps のイラスト

DevOps コミュニティ

DevOps のイラスト

DevOps ラーニング パス

マップのイラスト

無料で始める

DevOps ニュースレター購読

Thank you for signing up