シフト・レフトのさらに先へ:AIエージェントによる「シフト・エブリウェア」が、DevOpsプロセスを改善する方法。

コンピューティング・デバイスで作業をする2人の同僚

著者

Chrystal R. China

Staff Writer, Automation & ITOps

IBM Think

Michael Goodwin

Staff Editor, Automation & ITOps

IBM Think

ディナーパーティーの食事を注文したけれども、食べ物を運ぶ宅配ロボットが近所のでこぼこした歩道を通行できずに立ち往生してしまう状況を想像してみてください。あるいは、GPSシステムが近くの道路閉鎖の迂回路を見つける機能を備えていないためかもしれません。

さらに悪いことに、ロボットが到着したのに食べ物がないというケースもあります。サイバー犯罪者が宅配サービスの認証プロトコルをハッキングし、食べ物(と個人データ)を盗んだのです。

今日のソフトウェア環境とサイバーセキュリティーの脅威に対応する高度なテストとセキュリティー対策がなければ、DevOpsチームやその製品に依存するエンドユーザーは、このような問題に頻繁に遭遇しかねません。多くの顧客はイライラして別の宅配サービスに乗り換えるでしょう(突然お腹が空くのは誰も望んでいません)。そして、そのイライラが企業の収益に影響を及ぼすことになります。

エージェント型AIツールを活用すると、宅配サービスの開発チームがそのような問題を回避することができます。たとえば、チームはエージェントを使用して、宅配ロボットが最初の注文を受け取るずっと前のコーディング段階で欠陥やセキュリティー上の脆弱性を特定する包括的なテスト一式を作成できます。

実際、エージェント型AIツールは、マルチエージェント「チーム」を使用して、ロボットが遭遇しかねない現実世界の課題をシミュレートする忠実度の高いデジタルツインを作成できるため、開発者はコーディングを開始する前にコードの動作と依存関係の相互作用をテストできます。これは「シフトレフト」であり、テストと品質保証の実践をソフトウェア開発ライフサイクルの早い段階に移すことになります。

最新のソフトウェア・システムは複雑で、俊敏性と共同作業の向上が求められる中、早期検知への重点は、「シフト・エブリウェア(あらゆる段階でセキュリティー対策を組み込む)」という、より包括的なDevSecOpsの実践へと進化しました。シフトレフト・アプローチの目的は、「ソフトウェア開発ライフサイクルのあらゆる段階でセキュリティーとセキュリティー対策の統合を自動化する」ことです。

これは実用面でも文化面でも大きな課題であり、多くの企業が DevOpsの実践でAIの機能を活用する方法をより徹底的に検討するきっかけとなっています。これらのテクノロジーの中で最新のものの1つがエージェント型AIで、次のことが可能になります。

  • 複数ステップのタスクを実行する。AIエージェントは、高レベルの目標を小さなサブタスクに分割し、複数の段階を経てタスクを完了できます。
  • リアルタイムで適応する。AIエージェントは、新しい情報や変化する状況に基づいて行動や計画を調整できます。
  • タスクとワークフロー・オーケーストレーションについて協働する。エージェント型AIシステムは、共通の目標を達成するために他のAIエージェントと連携して通信できます。
  • 時間とともに自己改善しましょう。強化学習などの機能を活用することで、AIエージェントは経験から学習し、意思決定を改善し、戦略を時間とともに調整することができます。

エージェント型AIツールには意思決定機能も備わっており、企業はその可能性に期待を寄せています。

IBM Institute for Business Value(IBM IBV)によると、「2027年までに、AIエージェントがプロセスの自動化ワークフローの再構築をより効果的にすると、経営者の86%が回答しています」。約80%の上級経営者はすでに自社で何らかのエージェント型AIを導入しており、19%の企業はエージェント型AIを大規模に展開しています。

インテリジェントAIエージェントは、ソフトウェアの開発、展開、監視、アップグレードを調整できるようになりました。これらは、リリース前にソフトウェアを徹底的にテストしてセキュリティー保護する余裕が常にあるとは限らない、負担の大きい開発者にとって、シフトレフトやシフト・エブリウェアの実践が管理しやすくします。

The DX Leaders

AI活用のグローバル・トレンドや日本の市場動向を踏まえたDX、生成AIの最新情報を毎月お届けします。登録の際はIBMプライバシー・ステートメントをご覧ください。

ご登録いただきありがとうございます。

ニュースレターは日本語で配信されます。すべてのニュースレターに登録解除リンクがあります。サブスクリプションの管理や解除はこちらから。詳しくはIBMプライバシー・ステートメントをご覧ください。

シフトレフトとは

「シフト・レフト」は、テスト、問題の特定・解決、セキュリティーなどのタスクを、ソフトウェア開発ライフサイクルのより早い段階に移す戦略的手法です。これにより、チームはデプロイではなく、理想的にはコーディング中に問題を発見できるようになります。この用語は、開発プロセスを左(コーディング)から右(デプロイ)に視覚化したことに由来し、重要な活動をコーディング段階に組み込むことは、ライフサイクルの左側にシフトさせることと同義です。

ただし、シフトレフトのアプローチでは、通常は専門家や対象分野の専門家によって遂行される余分な責務が開発者に移されるため、実装と維持が困難になる可能性があります。

このシフトレフトでは、開発者やその他のチームメンバーは、テスト、セキュリティー、問題管理、チーム間のコラボレーションをワークロードの通常の一部として取り入れる必要があります。ワークロードを削減せずにこのような責任を追加すると、開発者が高品質のコードの作成やプログラミング問題の解決に費やす時間が削減される可能性があります。

エージェント型AIはまだ新しいテクノロジーですが(独自の導入上の課題があります)、チームがシフトレフトの実装に関連する困難、特に開発者の生産性に影響を与える問題に対処するのに役立ちます。

さらに、エージェントは、「シフト・エブリウェア」アプローチに移行する企業にとって特に役立ちます。シフトレフトが開発ライフサイクルの早い段階でセキュリティーとテストの統合に重点を置くのに対し、シフト・エブリウェアは、コーディング、構築、導入、ランタイムを含むすべての段階にセキュリティー、モニタリング、テストを組み込むことを意味します。目標は、ライフサイクルを通じてすべてのアプリ、すべてのテクノロジー、すべての導入を保護することです。

IBMソフトウェアおよびDevOpsの開発者であるBilly O'Connell氏、「シフト・エクスペリエンスという概念は、現代のソフトウェアシステムの複雑さと、チームや段階を超えた責任分担の必要性に共鳴します」と語っています。「しかし、私たちが実際に目にしているのは、それぞれのアプローチから最良の要素を取り入れたハイブリッドモデルの出現です。つまり、適切な状況に対して適切なツールと考え方を使うことです」

エージェント型AI:簡単な解説

エージェント型AIは、限られた監視の下で特定の目標を達成できる人工知能システムです。AIエージェントは、大規模言語モデル(LLM)自然言語処理(NLP)機械学習(ML)を使用して、独自のワークフローを設計し、タスクを実行し、ユーザーや他のシステムに代わってプロセスを実行します。

エージェント型AIシステムでは、複数のAIエージェントが協力して複雑なタスクをオーケストレーションまたは実行し、単独のエージェントでは対応できない大きな目標に取り組みます。

AIエージェントは、事前定義されたスクリプトをはるかに超えた自動化を実現します。事前定義された制約内で動作し、人間の介入を必要とするチャットボットやその他の AI モデルとは異なり、AIエージェントとエージェント型AIは自律的で、コンテキストと目標に基づいて動作し、変化する状況に適応できます。作業を完了するだけでなく、過去から学び、現在に適応し、未来を予測します。

エージェント型AIを使用するには、ビジネス・リーダー、製品チーム、エンジニアが協力して高レベルの目標を設定し、パラメーターを設定する必要があるため、AIエージェントは人間の関与なしでは業務を遂行できません(本来はありません)。むしろ、AIエージェントがDevOpsエンジニアやチームと協力して、人間がより迅速に目標を達成できるよう支援する、人間参加型の開発手法が実現します。

本質的に、人間は目標を定義し、エージェントは、指定されたパラメーター内でそれらの目標を達成するために必要なアクションを計画および実行することでその方法を考え出します。

IBM DevOps

DevOpsとは

Andrea Crawfordが、DevOpsとは何か、DevOpsの価値、そしてDevOpsのプラクティスとツールがアイデア考案から本番環境までのソフトウェア・デリバリー・パイプライン全体でアプリケーションを動かすのにどのように役立つかについて説明します。IBMのエキスパートが指導するこのカリキュラムは、ビジネス・リーダーが成長を促進するAI投資の優先順位付けに必要な知識を得られるように設計されています。

DevOpsにおける企業のエージェント型AIの活用方法

企業は、DevOpsプロセスを管理、簡素化、加速し、継続的統合/継続的デリバリー(CI/CD)パイプラインを改善するために、エージェント型AIシステムを導入する傾向が高まっています。

たとえば、エージェントは、変更がコードベースに統合される前に、コード変更の構文エラーを検証したり、リファクタリングを提案したり、修正を確認したりすることができます。また、イノベーションを加速することもできます。「[エージェント]により、長い間実現したいと思っていたアイデアを迅速にプロトタイプ化できます。個人の生産性であれ、チームの効率性であれ、エージェント型AIはコンセプトを使いやすいツールに変え、日常的なタスクの負担を軽減してくれます」とO’Connell氏は語ります。

エージェント型AIさまざまなユースケースに役立ちますが、4つの主要なプロセスについてさらに詳しく説明します。

データ分析と異常検知

エージェント型AIツールは、オブザーバビリティー・データ(メトリクス、ログ、トレースなど)やその他のデータ・ストリーム(ユーザーのフィードバックなど)をリアルタイムで継続的にスキャンします。

このプロセスには、データベース、プロセス・ログ、履歴データ、オープンソース依存関係のクエリー、およびデータ・ギャップを特定して埋めるためのアプリケーション・プログラミング・インターフェース(API)への接続が含まれます。外部データがパラメーター内にあると仮定すると、エージェントは、仮説を立てたり、ITチームに通知を送信したりする前に、市場データや業種・業務データを組み込み、認識を強化します。

ML機能を使用することで、エージェントはデータ・パターンとリンク構造を特定し、正常なシステム動作の構成要素を学習し、時間の経過とともに動的に自身を調整し、確立されたベースラインからの逸脱を追跡します。

エージェント型AIツールは、個々の不規則なデータ点、異常なデータのクラスター、コンテキスト異常(たとえば、ブラックフライデーの電子商取引サイトのトラフィックの急激な減少)など、いくつかのタイプの異常を検知する機能を備えています。また、状況の変化に応じてベースラインを自律的に調整し、さらなる調査が必要となる可能性のある隠れた多次元関係を特定することもできます。

従来型の静的AIモデルで同じプロセスを実行する場合、基準が変わるたびに開発者が手動でAIツールを再学習させる必要があり、誤検知や見逃しが発生する可能性が高まります。

実際、静的モデルでは、より多くの人のインプットと機能全体の調整が必要になる傾向があります。

これらは、変数間の複雑な関係を不明瞭にする可能性のある、事前に決められたルールとより単純な統計チェックに依存しています。この曖昧さのため、開発者はデータを手作業で関連付け、関係を定義しなければなりません。また、静的AIモデルにはエージェント型AIモデルのようなコンテキストの感度が欠けていることが多いため、すべての異常を同等に扱う傾向があり、開発者は問題を優先順位付けする必要があります。

ソフトウェア・テスト

エージェント型AIテスト・ツールは、より賢明でカスタマイズされたテストケースを生成し、環境全体のテスト・カバレッジを拡大します。

エージェント型AIは、アプリケーションのソースコード、ユーザーインターフェース(UI)構造、ソフトウェア要件、ユーザーフロー、APIレスポンス、欠陥履歴、既存のテスト関連資料(テスト計画書、テストケース、テストスクリプトなど)を分析し、実行すべきテストを判断します。開発者は、例えば「顧客が商品をカートに追加して購入する」といったシナリオを作成し、AIエージェントに実行可能なテストスクリプトに変換させることで、特定のアクションの実行中に発生する可能性のある問題を特定できます。

エージェント型AIツールは、ソフトウェア・テストをリアルタイムで継続的に適応させ、過去のテストから学習し、過去の結果と目的の重要度に基づいてテスト・プロトコルを実施します。これらの機能により、テストがタイムリーに行われ、対象範囲が確実に的をしぼった(ただし包括的な)ものになります。

たとえば、開発者がコード・ロジックを変更したり、ユーザー・インターフェースを更新したりすると、エージェントはテスト実行中に変更を検出し、関連するテストを自動的に更新できます。コードの一部にセキュリティー上の脆弱性がある場合や、通常とは異なるコード・パターンや言語構成が使用されている場合、エージェント型AIツールはそのコードをローカル・テストまたはユニット・テストに推奨し、コードを分離してさらにテストして問題を特定します。

実際、AIエージェントがアプリケーションが何をすべきかを理解すると、開発者がコードを作成する前にテスト・スクリプトとケースを生成できるため、開発チームはコードの品質に集中できるようになります。

アラートの相関関係

エージェント型AI支援の相関機能により、ユーザー、環境、APIエンドポイント間で関連するアラートを結び付け、不要な信号から意味のあるアラートを抽出することで、アラートの量や開発・運用チームのアラート疲労を軽減できます。

アラート相関におけるシフトレフトの重要な要素は、インテリジェンスをソースに組み込むこと、つまり、データ到着時にエージェントを使用して未加工データを分析することです。このアプローチにより、リアルタイムの相関が可能になり、チームは事後対応的な立場から先見的な相関および修復戦略に移行できます。

エージェント型AIシステムは、高度なMLアルゴリズムを使用して、履歴データとリアルタイムのアラート・データを分析し、タイミング、ソース、イベント・タイプ、影響を受けるシステム、行動パターンなどの属性に基づいてデータ点を関連付けます。

エージェントは、各アラートの周囲にIPアドレス、ユーザーID、デバイス・ステータスなどのコンテキストを動的に収集します。強化されたデータを使用して、エージェントはインシデントをマッピングし、共通点を特定できます。たとえば、エージェントが通常とは異なる時間帯のログイン試行の失敗や、同じアカウントからの不規則なファイルアクセスに気付いた場合、データ点を相関付けて、潜在的な侵害の試みを示すことができます。

一連のアラートがグループ化されると、エージェントはそれらを 1つのユニットとして表示します。2 つの異なるアラート(1つはログイン試行用、もう 1つはファイルアクセス用)が生成されたイベントでは、(違反に関する)アラートが1つだけ作成されて開発者に送信されます。また、ITチームは、個々のイベントからの包括的な通知を処理してトリアージするのではなく、シグナル・グループ全体に対してアクションと修復ワークフローをトリガーできます。

さらに、AIエージェントはインシデント・ストーリー全体を構築できます。機能がクラッシュした場合、エージェントは根本原因と機能のパフォーマンスを長期にわたって追跡し、ITスタッフが問題に対処するために使用できる包括的なレポートを作成できます。また、エージェントはクラッシュの詳細を「記憶」することができるため、開発者は将来のテスト・ラウンドの状況をシミュレートし、新しいイテレーションやアプリケーションでコードの欠陥を発見できます。

セキュリティーと脅威の検知

エージェント型AIシステムは、コーディング・プロセス中の脆弱性検知、悪用可能性テスト、根本原因分析、脅威対応を自動化するため、開発者は手動によるコード・レビューを過度に心配する必要がなくなります。

AIエージェントはセキュリティー・アラートを待ちません。むしろ、セキュリティー・ログ、ネットワーク・トラフィック、ソースコード、脅威インテリジェンス・フィードをリアルタイムで分析することで、疑わしい動作を継続的に追跡します。その後、潜在的な脅威に関する仮説を生成し、その仮説をログに対してテストし、信頼できる脅威のみをエスカレーションして、時間の経過とともに理解を深めることができます。

事前に設定したルールのみに基づいて問題にフラグを立てる静的なAIモデルとは異なり、AIエージェントは、コンテキスト(資産価値、ネットワークの露出、既知の攻撃パターン、攻撃ベクトルの可能性など、その他のメトリクス)を考慮することで、セキュリティー上の脆弱性の重大度と悪用の可能性を評価します。

脆弱性が発見されると、エージェントはランタイム、ビジネスへの影響、コンプライアンスの状況に基づいて自動的に優先順位を付け、問題を修正するためのプレイブックを自律的に開始できます。

エージェント型AIツールは、予測分析教師あり学習を使用して、サンドボックス環境で攻撃をシミュレートし、脆弱性が悪用可能かどうかをテストすることもできます。

マルチエージェント・システムは、脆弱性の説明と対応するソースコードを分析して、実際のエクスプロイテーション・リスクを示す概念実証攻撃を生成できます。問題のあるコード・フラグメントを見つけると、エージェントは脆弱性をトリガーする攻撃を作成できるため、開発者は問題が発生した場所、発生した理由、ソフトウェアのパフォーマンスにどのように影響するかを正確に把握できます。

食品宅配ロボットの例を考えてみましょう。エージェント型AIを活用したアプローチにより、開発者はコーディング中またはコーディング前にサイバー攻撃をシミュレートし、特定のコード・フラグメントが中間者認証攻撃に対して脆弱であることを発見し、ロボットが実際の環境にリリースされる前にコードを修正できます。

しかし、エージェント型AIにリスクがないわけではありません

エージェント型AIは、多くの企業やDevOpsチームにとって変革をもたらすツールになりつつありますが、依然として新しいテクノロジーであり、新たな課題や進化する課題が伴います。多くのビジネス・リーダーは楽観的な見方を保っていますが、Gartner社は、コストの上昇、不十分なリスク管理、不明確なROIにより、2027年までに企業がすべてのエージェント型AIプロジェクトの40%以上をキャンセルすると予測しています。

懸念の多くは、セキュリティーの問題とエージェントの信頼に関するものです。エージェント型AIがソフトウェアとネットワークのセキュリティーを簡素化して向上できることは事実ですが、重大なセキュリティー・リスクも伴います。

エージェント型AIにより、開発者はシステムやプロセス全体で独立して動作する自律型カスタム・エージェントを構築し、導入できます。これらのエージェントの多くは、IT、セキュリティー、ガバナンスの正式な可視性がなくても作成および実行されています。この野放しの分散型エージェントの増殖により、組織および DevSecOpsパイプライン内に「 シャドーAI」が発生する可能性があります。

エージェントが自律的に動作する場合、企業は人間が関与する制御を維持するのに苦労することもあります。AIエージェントが明確な説明責任なしに動作できるようになると、特に環境が拡大するにつれて、AIエージェントの意図を評価し、アクションを検証し、セキュリティー・ポリシーを効果的に適用することが非常に困難になるおそれがあります。結局のところ、自律ツールがミスを犯したりパラメーターに違反したりした場合、誰が責任を負うのでしょうか?

トレーニング・データの質の悪さ、テストの不足、安全対策の欠如については、作成者と、作成者に権限を与えている組織に責任があると主張する人もいます。しかし現実的には、状況はもっと曖昧になる可能性があります。

エージェント型AIツールも、データへのアクセス、ワークフロー展開、外部サービスとの接続にAPIを多用しており、API連携のすべてが攻撃者の潜在的な侵入口となっています。エージェントは必ずしも予測可能なAPI使用パターンに従うわけではないため(結局のところ、エージェントは自律的であるため)、正当な操作を通じて機密データや独自データを誤って公開して(たとえば、ログ・ファイル内の個人情報を含む)、攻撃対象領域が大幅に拡大しかねません。

侵害された、または誤って構成された1つのAPIエンドポイントによって、複数のバックエンド・システムや機密データセットへのアクセスが許可され、サイバー犯罪者がアーキテクチャー内を横方向に移動して権限を昇格できるようになります。

さらに、ほとんどのAIエージェントは LLM 上で実行されるため、基盤となるモデルから脆弱性を引き継ぐ可能性があります。攻撃者が悪意のある命令をプロンプトや信頼できるデータソース(設定ファイル、ドキュメンテーション、サポート・チケットなど)に埋め込んだ場合、プロンプトを処理する際に、知らないうちに有害なアクションを実行してしまいかねません。

企業は、セキュリティーとは関係のないエージェント型AIの課題も検討したいと思うかもしれません。たとえば、自律型エージェントは時として、構築手順や設定の詳細を幻視し(ハルシネーション)、偶発的あるいは悪意のあるアクションを引き起こすパラメータを作り出すことがあります。

ハルシネーションは、言語モデル(多くの場合、生成AI AIチャットボットまたはコンピューター・ビジョン・ツール)が、もっともらしい誤った情報、または完全に捏造された情報を生成するときに発生します。Google のBardチャットボットの発表中に、Bardはジェイムズ・ウェッブ宇宙望遠鏡が太陽系外惑星の最初の写真を撮影したと主張しました。これは事実としては不正確であり、最初の系外惑星の写真は数年前に別の望遠鏡で撮影されています。これは比較的無害な例です。

ただし、エージェントがDevOpsワークフローで誤った情報(ハルシネーション)を使用すると、コードベースや自動化パイプラインに静かにエラーを伝播させ、連鎖的な障害を引き起こす可能性があります。

エージェント型AIツールは、コード開発に関してもパフォーマンスが低くなります。ある調査によると、開発者がAIを使用すると、コードの問題を解決するのにほぼ 20%長い時間がかかります。また、2025年のソフトウェア配信の現状レポートでは、開発者がAIツールによって生成されたコードのデバッグに費やす時間が67%長くなることが判明しました。多くの開発チームはAIが生成したコード上の欠陥の規模に対応できず、AIエージェントは解消するよりも多くの技術的負債を生み出すことがあります。

AIゲートウェイが役に立ちます

エージェント型AIツールの使用に伴う課題は相当に大きいものですが、AIゲートウェイはリスクの一部を軽減するのに役立ちます。

AIゲートウェイは、エージェント型AIアプリケーションとそれらが使用するモデル、API、ツール間の統合された軽量層として機能します。ゲートウェイは、エコシステム内のすべてのAIエージェントとDevOpsツールにわたってガバナンスとコンプライアンス・ポリシーを一貫して適用するため、断片化され一貫性のないパラメーターの適用を排除できます。

一元化により、複雑で分散した展開先全体でセキュリティー・プロトコル、データ・プライバシー制限、規制遵守を実装するプロセスが簡素化されます。また、エージェントがAPIアクセス、認証、承認プロセスをより適切に制御するのに役立ちます。

さらに、ゲートウェイはエージェントのアクティビティーの可視性を高めることで、エージェントが脅威やコードの問題を早期に発見できるように支援します。エージェントの動作をライフサイクル全体にわたって追跡できるように、一貫性のある監視、監査、異常検知、トレーサビリティーの仕組みを提供します。AIゲートウェイはエージェント型AIをより観測しやすくするため、企業がエージェント型AIの導入によって生じるシャドーAIの問題や実行可能なコストを阻止するのにも役立ちます。

 

では、エージェント型AIとDevOpsの評価はどうでしょうか?

エージェント型AIを使用するメリットがリスクを上回るかどうかを尋ねると、O'Connell氏は次のように答えています。「100%です。企業がエージェント型AIを統合し始めると、技術的なものだけでなく、文化的、倫理的なガードレールも不可欠になります。しかし、私たちはまだ可能性の入り口に立ったばかりです」

ガバナンス、信頼、統合に関する課題は残っていますが、その軌跡は明らかです。AIエージェントはDevOpsやCI/CDパイプラインの単なるアドオンではなく、未来を形作っているのです。その結果、よりスマートな意思決定が可能になっただけでなく、より効率的で適応性の高いソフトウェア配信への文化的なシフトがもたらされました。

関連ソリューション
IBM DevOps アクセラレート

オンプレミス、クラウド、またはメインフレームのあらゆるアプリケーションのソフトウェア配信を自動化します。

DevOps Accelerateの詳細はこちら
DevOpsソリューション

DevOpsソフトウェアとツールを使用して、複数のデバイスや環境でクラウドネイティブ・アプリケーションを構築、デプロイ、管理します。

DevOpsソリューションの詳細はこちら
クラウド・コンサルティング・サービス 

IBMのクラウド・コンサルティング・サービスで新しい機能にアクセスし、ビジネスの俊敏性を高めましょう。ハイブリッドクラウド戦略や専門家とのパートナーシップを通じて、ソリューションを共創し、デジタル・トランスフォーメーションを加速させ、パフォーマンスを最適化する方法をご覧ください。

クラウド・サービス
次のステップ

継続的な統合とデリバリーにより、DevOpsの可能性を解き放ち、安全なクラウドネイティブ・アプリケーションを構築、テスト、デプロイします。

DevOps ソリューションの詳細はこちら DevOpsの実際の動作を確認する