② 網羅的なテスト自動生成技術の評価
意図的に埋め込んだ6件※10のバグを対象に評価した結果、4件(67%)を検出しました。さらに、あらかじめ埋め込んだバグとは別に、既存の潜在バグを3件検出しました。これらの潜在バグは、入力検証やエラーメッセージに関するテストが十分に網羅されていなかった箇所で確認されました。一方、仕様書等から生成AIで直接テストを生成した場合には、これらのバグはいずれも検出できませんでした。
この結果は、生成AIにテスト生成を一任するのではなく、ISO品質特性に基づいてテスト観点を体系化し、それぞれの観点に適したテスト技法を適用することで、網羅性の高いテストを生成したことによるものと考えられます。これにより、テスト観点の抜けを抑えながら、幅広い観点から検証することができました。
4.今後の展開
今後は、さまざまな規模・特性の既存システムへの適用評価を進め、対象とする成果物やプログラミング言語、暗黙知の抽出・補完、品質観点・テスト技法を拡充します。さらに、実際のソフトウェア開発・保守案件に本技術を適用し、システム理解から影響範囲の特定、改修、テスト生成・実行までを生成AIと連携して一気通貫で実行する有効性を検証します。これらを通じて、既存システムを継続的に「AIが理解し、活用できる状態」に維持し、ソフトウェア開発・保守全体のAI-Native化に貢献していきます。
【用語解説】
※1 AI-Native開発:AI を開発の主体に据え、AI が最大限の能力を発揮できるよう開発環境そのものを最適化するアプローチ。
※2 NTT R&D FORUM 2026
https://www.rd.ntt/forum/2026/
※3 追加開発の割合:出典は『ソフトウェア開発分析データ集2022』。本文の「約6割」は同データ集に基づく数値。
※4 AI-Ready:既存のソフトウェア資産を整理し、AIが既存システムを理解・活用できるようにした状態。
※5 トレーサビリティ:要件・設計・実装・テストの対応関係を明確にし,それらの一貫性や網羅性を確認したり,変更による影響を追跡したりできる状態にすること。
※6 テスト技法:テストする観点や条件を整理し、どのようなテストケースを作るかを体系的に導き出すための方法。
※7 Macchinetta Framework/ATRS:(
https://github.com/Macchinetta/atrs )
※8 RAG:生成AIが回答を作る前に、外部のデータベースや社内ドキュメントから関連する情報を探し出し、その情報に基づいて正確な回答を生成する技術。
※9 What We Have Learned About Fighting Defects, Proceedings of the 8th IEEE International Symposium on Software Metrics (METRICS 2002)
※10 対象アプリケーションのコード規模(約32 KSLOC)を踏まえ、ソフトウェア開発プロジェクトにおける不具合発生実績を参考に設定。