TL;DR
- DevOps は、ソフトウェア開発の考え方を、開発のライフサイクルに関わる他の役割にも適用する手法である。ツールではない。
- DevOps の基盤は、文化、自動化、メトリクス、共有の 4 つからなる CAMS である。
内容
DevOps とは
DevOps とは、ソフトウェア開発の考え方を、開発のライフサイクルに関わる他の役割に適用するソフトウェア開発手法である。他の役割には、運用、セキュリティ(DevSecOps)、QA、データベースの運用、ネットワークなどがある。従来は開発者が中心だった業務を他のチームも担い、開発チームも他のチームの業務を行う。これにより、職能の垣根が低くなる。
DevOps とは何でないか
DevOps が何であるかを説明するのは難しいが、何でないかを説明するのは簡単である。DevOps はツールではない。DevOps では、人、プロセス、ツールの順に考える。
ツールに注目し、そこから逆算して作業を進めるのはアンチパターンである。そうして導入されたツールには納得感が持てず、使うよう強制されていると感じてしまう。また、本来ツールを使うべきでない問題にまで、そのツールを使い始めてしまう。
DevOps の柱となる CAMS
次の 4 つの要素は CAMS と呼ばれ、DevOps の基盤になる。これらに注目することで、組織内の多くの課題を解決できる。
- Culture(文化): チームが活動するときの基準となるもの。
- Automation(自動化): 人を平凡な作業から解放するもの。
- Metrics(メトリクス): 物事がうまく機能しているかを判断するもの。
- Sharing(共有): 文化を強化するもの。
キーワード
- DevOps
- CAMS