アウターループ問題

AIコーディングエージェントがコードをリリースするスピードは、チームのテスト体制をはるかに上回っています。そのギャップは縮まるどころか、むしろ広がり続けています。

Slide 4_3 - 15

ソフトウェアデリバリーの2つの速度

Sソフトウェアデリバリーには、常に2つのループが存在しています。インナーループはコードが生まれる場所です。コミット、プルリクエスト、AIによる提案、ユニットテストなどが行われます。これは高速で、開発者が主導し、ますます自動化が進んでいます。

アウターループは、ソフトウェアがシステム全体として検証される場所であり、統合テスト、エンドツーエンドのユーザージャーニー、リグレッションテストのカバレッジなどが行われます。これは本質的に遅いため、最新の状態を維持するのが難しくなります。

長年にわたり、このギャップは当たり前のものとして受け入れられてきました。しかし、AIコーディングエージェントが登場すると、インナーループの処理速度は桁違いに高速化しました。一方、アウターループはそのペースについていけていません。

Group 2147222417

インナーループ

開発者とAIの連携

→ AIがコードの提案、記述、改良を実行

→ 数時間かかっていたプルリクエスト作成がわずか数分に

→ 活発なチームでは1日50件以上のコミット

→ CIでユニットテストを自動実行

アウターループ

依然として人間に依存 

→ 手動による統合テストの作成 

→ フレーキーな(結果が不安定な)テストによるパイプラインの

→ スプリントごとに増加するメンテナンスのバックログ 

→ 一貫性のないユーザージャーニー検証

Illustration_ AI Coding Agent Context Gap op2

AIコーディングエージェントはアウターループ向けに設計されていない

AIコーディングエージェントはインナーループにおいて優れた能力を発揮します。コードベースを読み取り、変更を提案し、個々の関数に対するユニットテストを作成することができます。問題は、それらが単一のプルリクエストのコードコンテキスト内でのみ機能する点にあります。

これらのエージェントは、アプリケーションがシステムとしてどのように動作するかという全体的な知識を持ち合わせていません。複数のチームの作業にまたがるユーザージャーニー、過去の障害パターン、そしてビジネスクリティカルなフローは、まさに手の届かないアウターループに存在しており、これは根本的に異なる問題なのです。

AIエージェントが変化のペースを加速させる一方で、そこで生じたバグを捕捉すべきテストカバレッジのメンテナンスは追いつかず、遅れて広がるばかりです。

アウターループに必要なもの

Playwrightのテストを増やしたり、QAエンジニアを増員したりすることは、問題の原因となっているアーキテクチャではなく、その症状に対処するに過ぎません。コード生成のペースは、人間によるテストのメンテナンスのペースを決定的に凌駕してしまったのです。

アウターループに必要なのは、アーキテクチャ的に異なる何か、つまり、時間の経過とともにアプリケーションに関する知識を蓄積し、ユーザージャーニーを十分に理解して継続的に検証を行い、アプリの変更に合わせて自動修復できるシステムです。

 

問題の核心

アウターループのカバレッジが機能しなくなると、バグが本番環境に到達してしまいます。これは偶発的な出来事ではなく、構造的な問題です。本番環境でのインシデントはもはや予期せぬ出来事ではなく、コードの検証が追いつかないほど速いペースでコードがリリースされるプロセスから必然的に生じる結果となります。

アウターループの問題はQAの問題ではありません。これはエンジニアリングインフラの問題であり、インフラレベルでの解決策が必要です。.

mablによる解決策

アクティブカバレッジが、アウターループのギャップを埋めます。チームのリリースペースに合わせて、継続的かつ自動的に。