Computer Weekly製品ガイド
CI/CDによる高速化で品質も向上――ただし条件付き
継続的インテグレーション(CI)と継続的デリバリー(CD)はソフトウェア開発の高速化を約束する。だが採用に当たってはまず、成果を引き出すための基本事項を押さえておく必要がある。
理論上、スピードアップは危険を伴う。近道の誘惑に駆られ、間違いが増えるリスクもある。だがソフトウェア開発に関する限り、必ずしもそうはならない。
特注ソフトウェア開発とITアウトソーシングを手掛けるCiklumのDevOps担当責任者、ウラジスラフ・グラム氏は言う。「直感には反するかもしれないが、品質がスピードに由来することもある。開発とデプロイを高速化するほど品質は高まる。比較的小さなまとまりのコードでデプロイできるため、テストが容易になるからだ。一方で、開発者は本番環境からのフィードバックをすぐに得ることができる」
高速展開
グラム氏が継続的インテグレーション/継続的デリバリー(CI/CD)に取り組み始めたのは2016年だった。DevOpsの理念の一要素として、CI/CDはコードをできるだけ早く本番環境に持ち込むことに重点を置く。大きなまとまりのコードを長期間かけて開発し、テストには時間がかかるが確実性は低下するウオーターフォール方式を含む、それまでのソフトウェア開発のアプローチとは対照的だ。
「もしもテスターのための大規模なレグレッション計画があるとして、相互に依存する100万もの機能がある場合、それがどのコンポーネントに依存するかを予測するのは難しい。だが小さな機能を1つだけデプロイするのであれば、テストを行って依存関係を簡単に予測できる」とグラム氏は話す。
そのメリットは非常に大きい。Ciklumは欧州の小売業者Metroと組んで電子商取引プラットフォームを構築した。このプロジェクトでは、本番環境の変更にかかるデプロイリリーススケジュールを、標準的な3カ月から1時間に短縮した。
「その違いは絶大だ。ただし3カ月間でリリースするのと同じ量の変更を1時間ごとにデプロイしているわけではない。開発者は3カ月のリリーススケジュールよりもずっと早く、ユーザーと本番環境からのフィードバックを得ることができる」(グラム氏)
機能デリバリーの高速化
カリフォルニア大学バークリー校講師でDevOps Research and Assessment(DORA)共同創業者のジェズ・ハンブル氏は、2010年にCI/CDに関する著書を執筆した。同氏はCI/CDを次のように定義する。「新機能、設定の変更、バグ修正、実験を含むあらゆる種類の変更を、安全かつスピーディーに持続的な形で本番環境あるいはユーザーの手に届けられること」
ソフトウェアのテストを手掛けるMablが500人を対象に実施した調査によると、回答者の53%がCIを使っていて、25%は導入を計画していた。一方、CDを使っているという回答は38%、導入の計画があるという回答は30%だった。
DORAが開発者3000人を対象に実施した調査結果報告書「2019 Accelerate State of DevOps」によると、エリートグループと実績の悪いグループを比較した結果、前者がコードをデプロイする頻度は208倍、コードの受注からデプロイまでのリードタイムは106倍、インシデントからの復旧スピードは2604倍だった。
クラウドへの競争
DevOpsとCI/CDは関係しているものの、この両者を混同してはならないとKPMG Internationalの筆頭DevOpsエンジニア、アリアン・ガッド氏は言う。「DevOpsはどちらかというと、企業文化や思考、働き方に関係している。CI/CDはツールと自動化が主導するオーケストレーションのアプローチだ。組織はCI/CDを使ってDevOps的なやり方で技術プロジェクトを遂行する。CI/CDなしでDevOpsはできない」
CI/CD導入の落とし穴
CI/CDの導入には問題もある。
例えば451 Researchが北米と欧州で350社のIT意思決定者を対象として2018年5月に実施した調査によると、半数の組織は一切のセキュリティテストの要素なしにCI/CDを導入していた。
ガッド氏によると、問題は開発チームがデリバリーのスピードを準備不足と混同する際に起こり得る。「多くの人が、迅速な開発と高速デリバリーが全てだと考える過ちを犯す。だがそうした人は、適切な記録を忘れているので、自分たちが実際に何をしたのかが誰にも分からない」
ガッド氏は、事前のインフラ最適化と適切なスクリプトの開発に時間をかけるよう勧告する。そうでなければ、チームが後戻りして変更を行う必要が生じ、メリットが失われて、自分たちが推進しようとしているアプローチの評判に傷がつく。
「最初のうちは、自動化とスクリプトの作成に時間がかかる。だがそれがうまくできれば、それを何度でも好きなだけ繰り返すことができる」(ガッド氏)
スピード調整
Cytoraは、保険会社による保険契約引き受けの正確化を支援する技術プラットフォームを開発している。エンジニアリング担当ディレクター、ダン・トラン氏は約1年前にCI/CDの導入に着手した。
最大の教訓は、スピードが全てではなかったことだと同氏は話す。「最初は超高速化してスピードを解き放つことが全てだと思っていた。だが実際には、現時点でできる限り速くすることの方が、それ以上速くすることよりもはるかに大切だった」
開発チームが使うインフラやツールはさまざまで、DevOpsのどの段階にあるかもそれぞれ異なる。もしもチームのサイクルが2週間から1週間に短縮されたのであれば、それを前進と見なすべきだとトラン氏は言う。「それがその時点で最大限のスピードなら、それで構わない。それを繰り返して次のレベルに上がることができる。準備が整う前に速く行き過ぎたチームは、物事を壊すのも早く、それを修正することができない。大切なのは、できるだけ速くすることであって、それ以上速くすることではない。それが私の学んだ最大の教訓だった」
適切なツール
CI/CDに対するチームの理解の向上に伴い、ツールも向上する。そうしたツールは「Slack」のような汎用(はんよう)コラボレーションソフトウェアから、開発チームによるモジュール式コンポーネントのワークフロー設計を支援する「Pivotal Concourse」のような技術ツールまで多岐にわたる。
CI/CDの人気が上昇しているといっても、ソフトウェア開発手法の事実上の標準となるまでの道のりはまだ長い。「ソフトウェア開発者はCDに由来する多くの事柄を融合させて使っている。だがエンタープライズITは包括的で極めて大きく、このコンセプトはまだ非常に新しい。これは初期の段階にある」とトラン氏は話す。
CI/CDは、従来型の手法よりもソフトウェア開発を飛躍的に加速する。だがこのアプローチを検討しているチームがその恩恵を受けるためには、開発者を教育し、ITチームの企業文化を変えさせ、ツールとインフラに投資する必要がある。
Copyright © ITmedia, Inc. All Rights Reserved.
Computer Weekly日本語版
この記事の著者
関連記事
新着ホワイトペーパー PR
-
事例
[日本オラクル株式会社] ピンチをチャンスに変えたEPR製品は? 先行企業の導入事例3選 -
技術文書・技術解説
[日本オラクル株式会社] 無自覚なリスク 秘伝Excelファイルが監査の壁、不正・ミスの温床となる理由 -
製品資料
[日本オラクル株式会社] 戦略的経理の第一歩 失敗のない「脱Excel」を実現する秘訣とは? -
技術文書・技術解説
[日本オラクル株式会社] いまさら聞けないオンプレERPとクラウドERPの違い 最適な製品をどう見極める? -
事例
[株式会社ビザスク] 連結売上高が約2倍に成長、富士フイルムが実践した新規事業創出の戦略とは?
こんなメディアも見られています
TechTargetジャパンに関連する情報をお探しであれば、こちらのメディアもお役に立てるかもしれません。
ベンダーコンテンツ PR
From Informa TechTarget
SpecialPR
アクセスランキング
-
1
損保ジャパンはなぜ「COBOL」を捨てなかったのか? 脱メインフレームの真相
-
2
なぜ「全社配布Copilot」は使われないのか? 失敗に学ぶAI定着
-
3
「0.3秒のスピード顔認証」の入退室管理が社員に好評 事例に学ぶオフィス改革
-
4
「ノートPC派」は損をしている? Dellと考える“自作PC”のメリット
-
5
エンジニアの生産性はどう測る? マネジメントに不可欠な可視化の実現方法とは
-
6
慶應義塾が「Notion」を選んだ理由 AI導入の盲点になる“情報のサイロ化”
-
7
LINEヤフーはなぜ「社内の管理者」すら信用しないインフラを作ったのか
-
8
1200万円のSaaS導入を回避 スギ薬局「運用費10万円」のAIエージェント構築術
-
9
「また同じ説明か」 消費者の半数が離脱するAIチャットbotの“記憶喪失”
-
10
「Copilot」はなぜ放置される? “議事録要約止まり”を脱する処方箋
ホワイトペーパーランキング PR
-
1
不審メールの経路や見せ方に変化? 2026年夏の3事例から見えた動向と対処方法
-
2
DX/AI投資の壁を突破、現代の最高財務責任者が直面する課題と克服のヒント
-
3
「オンプレミス回帰」せざるを得ない“合理的な理由”
-
4
LLMが兵器化? 元FBI高官が鳴らす警鐘とセキュリティツール統合のポイント
-
5
システムの保守がモダン化を阻む? 「変えない判断」から脱却する方法とは
-
6
生成AIを開発に導入しても効果が見えない? 実証実験で分かった成果と課題
-
7
経産省DX指針から読み解く、受発注業務デジタル化ロードマップ
-
8
“あのファイル転送”で暗躍するノーウェアランサム
-
9
Microsoft 365を安全に運用 うっかりミスやサイバー攻撃に備えるデータ保護術
-
10
HDDを使わない「SSDオンリー」が無謀なのはなぜ?
TechTargetジャパン SNS
インフォメーション
注目情報をチェック
TechTargetジャパンをフォロー