ブログ

ryuzeeによるブログ記事。不定期更新

継続的デリバリー vs 継続的デプロイ

みなさんこんにちは。@ryuzeeです。

Jez Humble氏のContinuous Delivery vs Continuous Deploymentが分かりやすいので抜粋・意訳にてご紹介します。 (翻訳部分はCC-BY−SAとします)

ティモシー・フィッツの継続的デプロイに関するブログは、デイブと私が継続的デリバリーについての本を出版する1年以上も前に、すでに書かれていた。そんな中でなぜ私たちは異なる名前を選んだのだろうか。実際に違いはあるのだろうか?それとも単に我々が不親切なだけなのだろうか?

我々はいくつかの理由で本の名前を「継続的デリバリー」とすることにした。まず第一に、デプロイがリリースを意味しないというちょっと学者ぶった事実。我々が本の中で言っているように、継続的に顧客受け入れ環境にデプロイすることはできるだろう。それ自体はたいしたことはない。継続的デプロイを特別なものにするのは、自動テスト(加えて非常に短いQAゲート)を通った全ての変更を本番環境にデプロイすることなのだ。継続的デプロイは全ての正しいビルドを利用者に向けてリリースすることなのだ。より正確な名前は継続的リリースかもしれない。

継続的デプロイは継続的デリバリーを意味しているが、逆は真ではない。継続的デリバリーは、リリーススケジュールをIT部門の手の内ではなくビジネスの手に委ねることに関係している。継続的デリバリーを実現することは、ソフトウェアがライフサイクル全体を通して常に本番環境へ配置する準備ができていることを確かなものにすることを意味する。全てのビルドは完全に自動化されたプロセスを起動するボタンをクリックするだけで秒とか分のうちに利用者に向けてリリースすることが潜在的には可能だ。

次に継続的デリバリーは、ビルド、テストおよびデプロイプロセスの全体的な自動化、およびデリバリーに関与する人たち(開発者、テスター、DBA、システム管理者、ユーザー、そしてビジネスサイド)の間の優れた共同作業に依存している。

継続的デリバリーの世界では、開発者はコードをテスターに渡したり、QAによる試験に通ったからといって、その機能が完了になるわけではない。本番環境で動作して初めて完了になるのだ。このことは、スクラムを使っている場合、スプリントの中でさえもテストやデプロイメントのフェーズはないことを意味する。カンバンを使っていて継続的デリバリーすることを望んでいる場合には、とりかかったストーリーが利用者にリリースされるまでは新たなストーリーに着手することはできない。

しかしながら、全ての成功したビルドを利用者にリリースするとは限らない。特に、ソフトウェアの変更とハードウェアの変更が密接に関わっているような組み込み型の製品の場合は、これは通常不可能だ。特定の期間内にリリースされたソフトウェアのバージョンを数個以上持ちたくないというマーケッティングやサポート上の理由がある。(Eclipseがリリース版でも早期プレビュー版にもアクセスできるのとは対照的だ)。恐らくそうしているのには他の合理的な理由がある–重要なポイントは、それらがビジネス的な理由であるに違いないということだ。

そうすると、継続的デリバリーを行っていると言えるのはどういうときなのだろうか?顧客に価値を届けるのに最良の方法であると決めた際に、スイッチを押して継続的デプロイができる状況だ、と言って良いだろう。全ての成功したビルドを顧客に届けることができない場合、ストーリーの完了とは何を意味しているのだろうか?思うに、少なくとも下記に挙げた条件が適用されなければならない。

  • ストーリーを含んだビルドに対して完全なテストスイートを流すこと。これによってストーリーが期待されているビジネス価値を届けられることを確認できるし、開発の中でデグレが起こっていないことも確認できる。効率面を考え、ユニットテストやコンポーネントテストや受け入れテストが包括的に自動化されていることを意味する
  • ストーリーは本番擬似環境で顧客にデモされる。本番擬似環境は本番環境と等しい。たとえ大規模のクラスタに対してデプロイする際でも、ブルー・グリーン・デプロイメントのような技術を使って、利用者に影響を与えることなく、本番環境上で異なるバージョンのアプリケーションを並行して稼働できるようにすることができる
  • 本番環境へデプロイへの障壁はない。言いかえれば、デプロイを決定すれば、ボタンクリック1つで完全に自動化されたプロセスを通してビルドを利用者に届けることができる。これはさらにはキャパシティーや可用性やセキュリティに関する試験についても実施されていることを意味する。SOAを利用していたり、他のアプリケーションとの依存性がある場合には、結合の問題がないことを保証するということも意味する

それでは。

アジャイルコーチングやトレーニングを提供しています

株式会社アトラクタでは、アジャイル開発に取り組むチーム向けのコーチングや、認定スクラムマスター研修などの各種トレーニングを提供しています。ぜひお気軽にご相談ください。

詳細はこちら
  • スクラム実践者が知るべき97のこと
  • 著者/訳者:Gunther Verheyen / 吉羽龍太郎 原田騎郎 永瀬美穂
  • 出版社:オライリージャパン(2021-03-23)
  • 定価:¥ 2,640
  • スクラムはアジャイル開発のフレームワークですが、その実装は組織やチームのレベルに応じてさまざまです。本書はスクラムの実践において、さまざまな課題に対処してきた実践者が自らの経験や考え方を語るエッセイ集です。日本語書き下ろしコラムを追加で10本収録
  • プロダクトマネジメント ―ビルドトラップを避け顧客に価値を届ける
  • 著者/訳者:Melissa Perri / 吉羽龍太郎
  • 出版社:オライリージャパン(2020-10-26)
  • 定価:¥ 2,640
  • プロダクト開発を作った機能の数やベロシティなどのアウトプットで計測すると、ビルドトラップと呼ばれる失敗に繋がります。本書ではいかにしてビルドトラップを避けて顧客に価値を届けるかを解説しています。
  • SCRUM BOOT CAMP THE BOOK 【増補改訂版】
  • 著者/訳者:西村直人 永瀬美穂 吉羽龍太郎
  • 出版社:翔泳社(2020-05-20)
  • 定価:¥ 2,640
  • スクラム初心者に向けて基本的な考え方の解説から始まり、プロジェクトでの実際の進め方やよく起こる問題への対応法まで幅広く解説。マンガと文章のセットでスクラムを短期間で理解できます。スクラムの概要を正しく理解したい人、もう一度おさらいしたい人にオススメ。
  • みんなでアジャイル ―変化に対応できる顧客中心組織のつくりかた
  • 著者/訳者:Matt LeMay / 吉羽龍太郎、永瀬美穂、原田騎郎、有野雅士
  • 出版社:オライリージャパン(2020-3-19)
  • 定価:¥ 2,640
  • アジャイルで本当の意味での成果を出すには、開発チームだけでアジャイルに取り組むのではなく、組織全体がアジャイルになる必要があります。本書にはどうやってそれを実現するかのヒントが満載です
  • レガシーコードからの脱却 ―ソフトウェアの寿命を延ばし価値を高める9つのプラクティス
  • 著者/訳者:David Scott Bernstein / 吉羽龍太郎、永瀬美穂、原田騎郎、有野雅士
  • 出版社:オライリージャパン( 2019-9-18 )
  • 定価:¥ 3,132
  • レガシーコードになってから慌てるのではなく、日々レガシーコードを作らないようにするにはどうするか。その観点で、主にエクストリームプログラミングに由来する9つのプラクティスとその背後にある原則をわかりやすく説明しています。
  • Effective DevOps ―4本柱による持続可能な組織文化の育て方
  • 著者/訳者:Jennifer Davis、Ryn Daniels / 吉羽 龍太郎、長尾高弘
  • 出版社:オライリージャパン( 2018-3-24 )
  • 定価:¥ 3,888
  • 主にDevOpsの文化的な事柄に着目し、異なるゴールを持つチームが親和性を高め、矛盾する目標のバランスを取りながら最大限の力を発揮する方法を解説します
  • ジョイ・インク 役職も部署もない全員主役のマネジメント
  • 著者/訳者:リチャード・シェリダン / 原田騎郎, 安井力, 吉羽龍太郎, 永瀬美穂, 川口恭伸
  • 出版社:翔泳社( 2016-12-20 )
  • 定価:¥ 1,944
  • 米国で何度も働きやすい職場として表彰を受けているメンローの創業者かつCEOであるリチャード・シェリダン氏が、職場に喜びをもたらす知恵や経営手法、より良い製品の作り方などを惜しみなく紹介しています
  • アジャイルコーチの道具箱 – 見える化の実例集
  • 著者/訳者:Jimmy Janlén / 原田騎郎, 吉羽龍太郎, 川口恭伸, 高江洲睦, 佐藤竜也
  • 出版社:Leanpub( 2016-04-12 )
  • 定価:$14.99
  • この本は、チームの協調とコミュニケーションを改善したり、行動を変えるための見える化の実例を集めたものです。96個(+2)の見える化の方法をそれぞれ1ページでイラストとともに解説しています。アジャイル開発かどうかに関係なくすぐに使えるカタログ集です
  • カンバン仕事術 ―チームではじめる見える化と改善
  • 著者/訳者:原田騎郎 安井力 吉羽龍太郎 角征典 高木正弘
  • 出版社:オライリージャパン( 2016-03-25 )
  • 定価:¥ 2,138
  • チームの仕事や課題を見える化する手法「カンバン」について、その導入から実践までを図とともにわかりやすく解説した書籍。カンバンの原則などの入門的な事柄から、サービスクラス、プロセスの改善など、一歩進んだ応用的な話題までを網羅的に解説します。
  • Software in 30 Days スクラムによるアジャイルな組織変革“成功"ガイド
  • 著者/訳者:Ken Schwaber、Jeff Sutherland著、角征典、吉羽龍太郎、原田騎郎、川口恭伸訳
  • 出版社:アスキー・メディアワークス( 2013-03-08 )
  • 定価:¥ 1,680
  • スクラムの父であるジェフ・サザーランドとケン・シュエイバーによる著者の日本語版。ビジネス層、マネジメント層向けにソフトウェア開発プロセス変革の必要性やアジャイル型開発プロセスの優位性について説明
  • How to Change the World 〜チェンジ・マネジメント3.0〜
  • 著者/訳者:Jurgen Appelo, 前川哲次(翻訳), 川口恭伸(翻訳), 吉羽龍太郎(翻訳)
  • 出版社:達人出版会
  • 定価:500円
  • どうすれば自分たちの組織を変えられるだろう?それには、組織に変革を起こすチェンジ・マネジメントを学習することだ。アジャイルな組織でのマネージャーの役割を説いた『Management 3.0』の著者がコンパクトにまとめた変化のためのガイドブック