DevOps
概要
DevOpsとは、ソフトウェアの開発担当と導入・運用担当が密接に協力する体制を構築し、ソフトウェアの導入や更新を迅速に進めること。“Development”(開発)と“Operations”(運用)の略語を組み合わせた造語。ソフトウェアの開発者と運用者はそれぞれ異なる目標を持ち、組織や所属も分断されていることが多く、しばしば考え方や利害が対立する。両者の壁を乗り越え、コミュニケーションや情報共有を改善し、開発と運用のサイクルを統合することでソフトウェアの迅速な開発・導入、頻繁な改善・更新を可能にする方法論をDevOpsと呼ぶ。
DevOpsを構成する具体的な手法には様々なものが提唱されているが、代表的な手法としてはBTS(Bug Tracking System)やコラボレーションツールなどによる深い情報共有や密なコミュニケーション、継続的インテグレーション(CI:Continuous Integration)ツールなどによる導入・展開(デプロイ)の自動化、設定自動化ツールなどによる環境設定の自動化やコード化(IaC:Infrastructure as Code)などがある。
DevOpsの導入にはソフトウェアの頻繁な更新が必要となるため、ウォーターフォール型などの従来型の開発手法ではなく、いわゆるアジャイル方式の反復型の開発手法が採用される。アジャイル方式では最初から大規模なソフトウェアの完成は目指さず、シンプルな、あるいは小規模なソフトウェアをリリースしてこれを頻繁に改善、更新することで次第に完成度を高めたり状況の変化に対応させる。システムの稼働後も運用側からのフィードバックに迅速に対応できるようになる。
(2020.7.11更新)