情報畑でつかまえてロゴ
本サイトは NTTテクノクロスが旬の IT をキーワードに
IT 部門が今知っておきたい最新テクノロジーに関する情報をお届けするサイトです

AI駆動開発の「次のボトルネック」とは――「速く書く」から「速く決める」へシフトするソフトウェア品質

コード生成やテスト自動化が進んでも、リリース判断はなぜ速くならないのでしょうか。AI時代の開発現場で増大する判断負荷に着目し、品質とスピードを両立する「絞るAI」の考え方をひも解きます。

261020_01.jpg

AIによるコーディングが日常のものとなり、開発現場では実装やテストの進め方が大きく変わりつつあります。しかし、新たな壁も見え始めています。「実装は速くなったのに、リリースまでの期間は思ったほど短くならない」「むしろ後半の工程でメンバーが疲弊している」という現象です。AIが生み出す成果物や検出結果が増える一方、それらの妥当性を確認し、最終的な判断を下す工程は人に残されているためです。

本記事では、AI駆動開発における次のボトルネックを整理し、これからの開発・QA(Quality Assurance:品質保証)組織に求められる「速く書く」から「速く決める」への転換について考察します。

実装の高速化が生む「レビューループ」

エディタ統合型のAIツールの普及により、コードのドラフト作成や複雑なロジックの整理、単体テストコードの作成にかかる時間は大幅に短縮されました。さらに近年では、プロジェクト固有のコーディング規約に基づくAIレビューを取り入れる動きも見られます。しかし、ここで生じやすいのが「コードを速く書けること」と「安全にマージできること」の間にあるギャップです。AIが瞬時にコードを生成し、指摘を返す環境が整った結果、現場では以下のような課題が発生しています。

  • ● レビューのコメントループ
     AIの指摘に従って修正するたびに新たなコメントが返され、修正と再レビューが繰り返される
    ● 指摘の多重化・長期化
     複数の観点から大量の指摘が返されることで、確認と修正の負荷が高まり、レビューが長期化する
    ● 局所修正による機能退行
     指摘への対応として行った局所的な修正が別の機能に影響し、思わぬデグレードを引き起こす

コード生成がどれほど高速化しても、修正による影響範囲を見極め、マージの可否を最終的に判断する作業は省略できません。実装のスピードが上がった分だけレビュー待ちのタスクが積み上がり、開発メンバーの負担が増すケースも少なくありません。

261020_02.jpg

全体検証に立ちはだかる壁と「全部見る」運用の限界

この「生成の加速と確認の滞留」という現象は、実装フェーズだけでなく、その後のテスト・検証フェーズにも広がっています。現在、AIの活用領域は、単体テストから、システム全体を横断する結合テストや総合テスト、E2E(End-to-End)テストへと拡大しています。画面変更に追従する自己修復技術や視覚言語モデル(VLM)、エージェント型の自律探索などが登場し、自動で検証できる範囲は劇的に広がりました。

しかし、システム全体を検証する領域では、単一モジュールの検証に比べて難易度が跳ね上がります。業務シナリオの複雑さ、テストデータの膨大さ、外部連携の不確実性、さらにはUI/UXの妥当性評価など、機械的な合否判定だけでは割り切れない要素が多いためです。

その結果、AIの探索能力が向上し、網羅的なテストが可能になるほど、AIが検出する「不具合候補」や「画面差分の通知」も雪だるま式に増加します。誤検知の仕分けや、差分が意図したものかどうかの確認に追われ、自動化を進めたはずが、かえってリリース判断を遅らせる要因にもなっています。

増大する「人の判断負荷」と求められる絞り込み

実装におけるコードレビューから、システム全体のテスト検証に至るまで、システムの品質やビジネスへの影響に責任を持つ以上、最終的な意思決定は人に委ねられます。例えば、以下のような判断は依然として人が行う必要があります。

  • ● プルリクエスト*の最終承認
    ● 業務要件や外部仕様との突き合わせ
    ● アーキテクチャ設計とインタフェース定義の整合性確認
    ● テスト結果が「成功」となっている理由の確認
*プルリクエスト:コードを変更した際に、ほかのメンバーへレビューを依頼し、問題がなければメインのコードベースに統合するための仕組み。

確認する担当者の認知能力や、1件あたりの判断スピードが急激に向上するわけではないため、確認待ちのタスクが滞留し、デリバリー全体を遅らせる要因になり得ます。こうした状況から、開発のボトルネックは「コードを書く時間」から「確認し、意思決定を下すまでの時間」へ移りつつあります。

「作るAI」に加えて必要な「絞るAI」

このボトルネックを解消するには、AIの役割を「作る」ことにとどめず、確認対象の「絞り込み」にも活用する必要があります。これまで、コードやテストを作成し、不具合候補を探すAI活用が広がってきました。
しかし、確認負荷が高まりつつある今、求められているのは、人が確認すべき対象を分析・分類し、判断しやすい形に整理する「絞るAI」です。

【AIが絞り、人が決める役割分担】

プロセス AIの処理の役割 人の役割
1. 優先順位付け 変化量・再現性・過去の履歴から、確認対象の優先度を付与 AIが優先度を付けた確認対象について、変更を受け入れてよいかを判断
2. 差分の解析・分類 差分の原因を解析し、確認しやすい単位に分類 分類ごとに差分の許容可否と修正の要否を判断
3. 原因の整理・要約 ログやスクリーンショットなどを基に、テスト失敗の原因候補を整理 整理された情報を基に、業務上の合否とリリース可否を判断

例えば、100件の通知を1件ずつ目視で確認する場合と、AIによって通知がパターン別に分類され、優先度順に並んだ状態で確認する場合とでは、判断にかかる認知負荷と時間が大きく異なります。判断材料の整理をAIが担うことで、確認する担当者は意思決定に集中できます。

261020_03.jpg

AIが差分を分析し、人が意味を判断する

この「絞るAI」の価値が分かりやすく表れる領域の一つが、「ビジュアルリグレッションテスト(VRT)」です。このVRTは、Webサイトやアプリの変更前後の画面を比較し、意図しない見た目の変化やレイアウト崩れが起きていないかを確認するテスト手法を指します。

従来の目視確認では、対象画面を開き、変更前後を見比べ、差分を記録する作業に時間がかかっていました。AIによる自動比較で差分検出を効率化しても、検出結果が大量に並ぶだけでは、今度は確認作業が新たな負荷になりがちです。重要なのは、単に差分を自動抽出することだけでなく、「意図した変更か、修正すべき不具合か」までを整理し、担当者が次の対応を判断しやすい状態にすることです。

「速く書く」から「速く決める」へ

AI駆動開発の進展によって、ソフトウェア開発の速度は大きく変わりました。これからのAI活用で重要なのは、生成量を増やすことだけではありません。増え続けるコードやテスト結果、差分情報の中から、意思決定に必要な情報を整理し、人が本来注力すべき判断に集中できる環境を整えることです。

開発のボトルネックが「コードを書く時間」から「確認し、意思決定を下すまでの時間」へ移りつつある今、求められるのは、AIによって確認作業の負荷を軽減しながら、品質とスピードを両立する仕組みです。「速く書く」だけでなく「速く決める」仕組みをつくることは、品質を保ちながらリリース判断を迅速化するうえで、重要な視点になるでしょう。

■次世代テスト自動化ツール「AIspector」について

NTTテクノクロスの「AIspector(アイスペクター)」は、Webアプリケーションの画面を比較して差分を検出し、確認すべき箇所を"AIが絞り込む"テスト自動化ツールです。当社が実施したWebアプリケーション開発の試験工程では、「AIspector」の活用により、画面比較作業の工数を70%以上削減する効果が得られました。
「AIspector」の詳しい機能については、以下の製品ページをご覧ください。

261020_04.jpg

■関連ブログ

ビジュアルリグレッションテスト(VRT)とは? AI活用で見た目の品質を自動で守る最新技術を解説

* 「AIspector」はNTTテクノクロス株式会社の登録商標です。

連載シリーズ
著者プロフィール
広報部門
広報部門

NTTテクノクロス広報担当です。 当社の取り組みや社員の活動など、さまざまな内容をみなさんにお知らせしていきます。