Technical Information
生成AIの登場によって品質保証のテクノロジーはどう変わるのか?

生成AIの登場は、AI自体の性能を飛躍的に向上させるとともに、さまざまな業界や一般社会にも大きな影響を与えています。これは、私たちベリサーブにおいても例外ではありません。本講演では、品質保証業務におけるAI技術の変遷と、生成AIを活用した新たなテスト戦略の取り組みについて解説します。
※この記事は、『ベリサーブ アカデミック イニシアティブ 2023』の講演内容を基にした内容です。

株式会社ベリサーブ
研究企画開発部 技術戦略課
瀬在 恭介 
品質保証業務におけるこれまでのAI技術の活用
■AIの種類と用途
現在、AIには大きく3つの種類が存在しています。
・識別AI
音声や画像、動画、言語などのインプットデータに対して、識別をメインとしたタスクを実行します。画像認識や翻訳、顔認証システムなどが代表例です。
・予測AI
数値予測やマッチング、意図予測、ニーズ予測などを実行するもので、需要に応じて価格が変動するダイレクトプライシングや先物取引などの領域で主に活用されています。
・生成AI
表現の生成やデザイン、行動の最適化、作業の自動化など、現在のChatGPTに代表される汎用的なタスクが実行可能です。
生成AIは概念としては以前から存在していましたが、精度や難易度の点で実用化が遅れていた技術です。一方、識別AIや予測AIは従来の技術レベルでビジネスに使える精度を担保できていましたが、生成AIのような汎用的な用途ではなく、特定のデータやタスクに特化しているというのが特徴となっています。
■品質保証分野でのこれまでのAI活用
識別AIや予測AIのような特化型AIは品質保証業務にもすでに取り入れられていて、機械や設備の故障の予兆を検知するシステムや生産工程の傾向変化の検知、製造不具合の要因分析などがその例です。
当社の技術の中では、例えば、AIによる異常検知サービス「Indigo:J」や、ドキュメント検証を行う文章分類AIなどに利用しています。
図表1は、「Indigo:J」の仕組みを表したもので、まず大量のトレーニングデータを読み込み、通常状態である「いつも」を学習します。次に運用で発生する本番のターゲットデータを入力し、「いつも」との比較によって異常の有無を識別します。

図表1:大量のトレーニングデータから「いつも」を学習し、本番のターゲットデータと「いつも」との比較で異常有無を識別する
生成AIの登場と品質保証の改善に向けた活用
■生成AIの特性と価値
生成AIは汎用的な状況やパターンに応じて、人間が細かく指定しなくても自ら判断を下せます。また、大量の情報を事前に学習していることに加え、実行するタスク自体も同時に学習しているため、特定の状況に限定しない利用が可能です。さらに、特化型AIのように高いスキルを持つ専門家や高性能なPC、それを開発する技術者も不要です。
一度作ってしまえば、それを広く周知するだけで誰もが簡単に使える、これが生成AIの最大の意義であると考えています。
■生成AIの活用方法
ただし、生成AIはさまざまなタスクを高水準で行える一方、内部で正式なアルゴリズムや処理が発生しているわけではありません。大量に学習した情報から正解と思われる回答を生成するという仕組みであるため、どうしてもミスが起こり得ます。
そのため、生成AIを用いたサービスやシステムを設計する場合は、AIの回答をそのまま使用するようなアーキテクチャーでは予想外の不備が起きる可能性があります。AIの出力を人間が確認・補足し、それをさらにAIが処理するといった形で、人とAIが互いをチェックする仕組みが必要になります。そしてミスが起こることを前提に、それが許容できるのか、仮に間違っていたとしても少しでも人間の助けになるのかどうかが、現状の生成AIを活用する上での重要なポイントです。
生成AIの適切な用途としては、意思決定支援やアイデアの創造、資料やプログラムコードのひな型作成などが考えられます。これらは多少のミスは許容可能であり、かつ従来は人間が相当に苦労して考えてきた領域で、そこに対して一定の示唆を与えるような場合に生成AIは高い効果を発揮するはずです。
■品質保証分野での生成AI活用
品質保証における生成AIは、既存のAIが得意としていた「効率化」に加え、人間の考える作業を代替してアウトプットの質を向上させる「高品質化」への活用が可能だと考えています。具体的には、これまで人の知識や経験を基に行っていたテスト戦略や資料のチェック、検討などが該当します。
以下は、生成AIを利用した高品質化に向けた当社の取り組みの一例です。
・テスト戦略~設計の説明可能性の向上
テストを設計する際には、戦略として事前に考えるべき作業が複数ありますが、なぜそう考えたのか、またそれによってどうなるのかという「説明可能性」の向上に、生成AIが効果を発揮すると考えています。
・ドキュメント間の矛盾・妥当性チェック
システム開発のプロジェクトでは大量の設計書や仕様書が作成されますが、その中には必ず矛盾や妥当性に欠けるものが出てきます。複数のドキュメント間で矛盾したロジックが存在しないか、あるいは特定の仕様が正しい位置に書かれているかといった妥当性のチェックは、生成AIが活用できる領域です。
・自然言語によるテスト実行
図表2は、AIQVE ONE社の「Playable!」というゲームのテスト実行支援ソリューションです。例えば、あるアイテムを取得して指定の場所に行くという場合、従来のテストでは何をすればアイテムが取れるのか、どこを経由すればその場所に行けるのかを全て人間が設計し、考えて実行していました。
「Playable!」では、左側にあるチャット形式の画面に自然言語でアイテムの取得と行き先を指示すると、生成AIが取るべき行動と経路を判断し、必要なテストや結果を確認する際の注意点なども考慮しながらテストを支援してくれます。

図表2:チャットで行き先を指示すると生成AIが取るべき行動と経路を判断してテストを支援する
生成AIを用いたテスト戦略~設計の効率化・高品質化プロダクトのご紹介
現在当社では、従来の技術や知識に生成AIを組み合わせることで、テスト戦略や設計の効率化と高品質化を実現するプロダクトの開発を進めています(図表3)。
AIの出力に対して人の知識を使って確認し、さらに人の知識を入力することでAIや他の技術がまた新しい価値を提供するという形で、人とシステムがステップ・バイ・ステップで対話しながら適切なテストウェアを自動作成するという、新たな体験を提供するプロダクトです。

図表3:AIの出力に対して人の知識を入力し、人とシステムがステップ・バイ・ステップで対話してテストウェアを自動生成する
■プロダクトの詳細
図表4は、「MBT」を利用した従来のテスト作成の概略です。MBTはModel-Based Testingの略で、仕様書の内容を状態遷移図やアクティビティ図のようなモデリング形式に変換してテスト設計の自動化を促進する手法で、変換後の状態を「MBTモデル」と呼びます。
また、当社では「MBTパターン」という、独自のテストケース作成パターンを作成しています。これは、例えば、状態遷移図では遷移を網羅するテストを行う必要がある、あるいは不遷移を確認するテストを実施すべきといった形で、人の知識をベースに作成したテストケースの設計パターンです。
このMBTモデルとMBTパターンがそろうことで、初めてテストケースの自動生成が可能になります。また、これらを「テスト設計の知恵」として蓄積し、随時拡張していくことで、次のテストへの再利用も可能にしています。

図表4: MBTモデルとMBTパターンがそろうことでテストケースの自動生成が可能になる
ただし、MBTには2つの大きな課題があります。まず、MBTモデルは専門家が仕様書を綿密に読み込みながら手作業で作成するのが基本で、一般の方では相当な時間をかけないと作るのは困難です。
次に、当社では多数のMBTパターンを保持していますが、そのうちどれを適用すべきかという戦略は都度考える必要があります。さらに、なぜそのパターンを選ぶのか、それによってどんなメリットがあるのかという説明性は担保されません。
現在私たちが開発しているプロダクトでは、このMBTモデルの自動生成やMBTパターンの選択を生成AIで支援することを目指しています。
図表5は、テスト戦略策定・テスト分析の一部のプロセス支援の概略図です。生成AIを活用して、仕様書のフィーチャー解析からMBTモデルの自動生成を行うためのステップを表しています。

図表5:フィーチャーごとに仕様書を分解する作業を生成AIで実現し、システム化を可能にしている
・仕様書のフィーチャー解析
「フィーチャー」とは仕様書が含むテストすべき観点のまとまりを指し、例えば、機能単位あるいは領域単位などがその例です。このフィーチャーごとに仕様書を分解する作業を生成AIで実現しています。解析したフィーチャーを人間が確認し、問題がなければ次のステップに移ります。
・フィーチャーごとのリスク量とMBTパターンごとのリスク低減量の可視化
解析したフィーチャーに対し、生成AIを使ってリスクが発生する確率と影響度をグラフ上にプロットします。次に別のグラフで、用意したMBTパターンを適用した場合のリスク量の減少度合いと、必要な工数をプロットします。
この2つを見ることで、仕様書に含まれるリスクの質と量、さらにどのMBTパターンを選ぶとリスクをどの程度下げられるのかが把握できます。これらは人間による分析に大変手間がかかる一方で、テストの観点では非常に重要だった作業で、これをシステム化することを可能にしています。
・フィーチャーごとのMBTモデル自動作成
最適なMBTパターンを選択したら、フューチャーごとのMBTモデルを自動作成します。
この技術を使うことで、説明可能なテスト戦略の立案や、設計漏れや誤りを回避するテストケースの自動生成が可能になります。また、MBTパターンの蓄積を促進して、このテスト設計自体を再利用できるようになり、今後の効率化につなげられると考えています。
おわりに
ベリサーブでは、生成AIと人の知見や既存の技術を組み合わせることで、さらなる品質保証の向上を目指していきたいと考えています。ここで紹介した生成AIを用いた高品質化プロダクトはトライアルも開始していますので、興味がある方は、ぜひご連絡ください。
この記事をシェアする