COLUMN
コラム
2021年11月09日
#DevOps – 知ったかテックワード!君もIT博士
カテゴリー:知ったかテックワード
タグ:アジャイル開発, システム運用, システム開発, プロジェクト管理
DevOps(デブオプス)は、システム開発(Development)とシステム運用(Operations)を密接に連携させる体制および開発手法のこと。デベロプメントとオペレーションを連携させるので、デブオプスという。
従来の開発プロセスでは、システム開発とシステム運用のチームが完全に分離していた。まずシステム開発をおこない、正式にリリースしてある程度安定してシステムが動作するようになったら、システム運用チームに引き継ぐ。システム開発チームはシステムをリリースすることに注力する。そしてシステム運用チームは動いているシステムをできるだけ変更せず運用・保守をおこなう。
これはシステムの目的や用途・機能が最初から決まっている、途中で変化しない場合には有効だった。しかし、市場環境の変化やユーザーの要望に積極的に対応していく場合には、硬直化したシステムが足かせになってしまうんだ。
そこで、アジャイル開発という考え方が注目されるようになった。
アジャイルでは、小さな機能ができあがったらすぐにリリースをおこない、ユーザーに使ってもらう。そして、そのフィードバックを元に機能改善や機能追加・チューニングをおこなう。これを頻繁に繰り返していく。このような開発を行うには、システム開発チームとシステム運用チームが分離していると実現が難しくなる。だから、システム開発チームとシステム運用チームを一体にしてしまうのが「DevOps」なんだ。
DevOpsを実現するには、ソースコード管理やテスト・リリースの自動化が重要になる。頻繁にリリースしていると、思わぬバグを組み込んで品質が低下してしまうデグレードすることがあるからだ。手動でテストしたりリリース作業をしていると時間が取られてしまい非常に効率が悪い。だから、ソースコード管理やテスト・リリース作業を自動化することで、デグレードを素早く検知し、リリースにも手間をかけないで済む。
こうした体制を組んでおくと、頻繁な機能アップデートが可能になる。従来であれば、数か月に1度のリリースだったのが、1日に何度もリリースできるようになるんだ。問題が見つかれば、すぐにロールバックすればいいんだ。
関連ページ
おまけのコント
ウサギ:大変だ!洞窟にオプスが大量発生したって!
カエル:オプスって何?
ウサギ:2足歩行のモンスターだよ。
カエル:ほう。
ウサギ:イノシシとモグラを混ぜたみたいな顔で、得意技は体当たり。
カエル:それが洞窟に大量発生したと。
ウサギ:薄暗い洞窟の奥で、獲物が来るのをずっと待ってる。
カエル:なんか地味な性格だな。
ウサギ:成長するとデブ・オプスという最終形態に進化する。
カエル:そうすると、どうなるの?
ウサギ:待ち伏せと、トンネル拡張を連携して行うようになって、猛烈な勢いで継続的イテレーションを繰り返すヨ。ものすごいベロシティなんだ!
カエル:ちょっと、なに言ってるか分からない。
- カテゴリー
- タグ
- システム運用 (16)
- TypeScript (1)
- WebAssembly (2)
- ウォーターフォール開発 (2)
- 業務システム (28)
- CSS (2)
- GraphQL (1)
- プログラミング (31)
- スタートアップ (11)
- Nexaweb (1)
- BaaS (10)
- データベース (5)
- SPA (2)
- 基本用語 (26)
- Case study (5)
- Keyword (10)
- FaaS (1)
- システム開発 (69)
- スクラム (1)
- フロントエンド (38)
- AI (26)
- アジャイル開発 (18)
- Supabase (1)
- イノベーション (5)
- Database (2)
- 月額制 (1)
- PaaS (3)
- ACF (1)
- BookReview (3)
- サービス開発 (5)
- React (3)
- Firebase (1)
- クラウドサービス (12)
- low-code (2)
- バックエンド (8)
- ナレッジマネジメント (1)
- ChatGPT (1)
- Vue.js (2)
- Tailwind CSS (1)
- DBaas (2)
- プロジェクト管理 (13)
- セミナー (2)
- Web (21)
- 失敗事例 (2)
- Hexabase_health (1)
- 生成AI (7)
- 受託開発 (1)
- Kubernetes (3)
- WebComponents (1)
- 通知 (1)
- API (6)
- Next.js (1)
- フレームワーク (3)
- ローコード開発 (4)
- ノーコード開発 (1)
- JavaScript (2)
- Hexabase (12)
- LLM (3)
- 画像生成 (1)
- DX (34)