DevOpsを構成する3つの原則

はじめに

この記事では、「DevOpsを構成する3つの原則」について書いています。

現在、DevOpsを勉強するために「The DevOpsハンドブック」(詳細情報は以下)を読んでおり、その中の内容の一部を読書記録的にまとめたものがこの記事になります。

書籍情報

ジーン・キム (著), ジェズ・ハンブル (著), パトリック・ボア (著), ジョン・ウィリス (著), 榊原 彰 (監修), 長尾 高弘 (翻訳) The DevOps ハンドブック 理論・原則・実践のすべて 株式会社日経BP, 2017, 487p

自分に向けた備忘録でもありますが、「DevOpsが何かを知りたい」な人の一助になれば嬉しいです。

本題

DevOpsの全ての行動やパターンは3つの原則(The Phoenix Project では「3つの道」と呼んでいる)を基礎としている(= 3つの原則を元にDevOpsの行動やパターンが導き出されている)

  1. ワークフローを高速化する
    • 実現により得られること
      • 納品に必要なリードタイムが短くなりスループットが向上する
      • (高速化のための施策により)作業品質も向上する
      • 素早く実験する能力が向上する
    • 実現のために行うべきこと
      • 仕事を可視化する
      • バッチサイズと作業の待ち時間を削減する
      • 品質を組込み、下流に不良品を流さないようにする
    • 具体的なプラクティス
      • CI/CD(継続的インテグレーション、継続的デリバリ)
      • オンデマンドによる環境の作成
      • 仕掛かりの削減
      • 変更に強いシステムや組織の構築
  2. 高速で継続的なフィードバックフローを確立する
    • 実現により得られること
      • 上流で品質を確保できる
      • 致命的な事故が起こる前に問題点を見つけて修正できる
    • 実現のために行うべきこと
      • フィードバックがいかに大切かを協調すること
      • 発生したら、対策が打てるまで一丸となって問題と向き合う
  3. 絶えず学習を行う組織文化を作ること

所感

  • DevOpsというのは範囲が広大で曖昧模糊としているイメージでしたが、3つの原則としてまとめられていたのでDevOpsの全体像がクリアになった気がしました。
  • 実践する上でのこの3つの関係は、同時並行で進めていくべきなのか、1から順番に達成していくべきなのかが少し分かりませんでした(読み進めていけば分かるのかもしれませんが)
  • ワークフローの高速化は項目が具体的なので取り組みやすく感じました。

おわりに

「DevOpsを構成する3つの原則」について解説しました。

DevOpsの知恵を自分のソフト開発にも取り入れ、更に良いソフトウェア開発が出来るようになりたいです