Trust、生成AIで古いシステムの「設計図」を自動作成する新技術を発表

生成AI(Generative AI)

Trust株式会社とテンソル・コンサルティング株式会社の共同研究チームは、生成AIを使って、長年使われてきた大規模なプログラムの構造を自動的に解析し、人が理解しやすい形にまとめる「コールグラフ要約技術」の開発に成功しました。

Trust X TENSOR CONSULTING

古いシステム(レガシーシステム)が抱える課題

長年の改修によって複雑になった古いシステムを、新しい技術に合わせて改善すること(モダナイゼーション)は、多くの企業にとって重要な課題です。しかし、プログラムの中身を理解している人が少なかったり、システムが複雑になりすぎて全体像を把握するのが難しくなったりしています。このような「ブラックボックス化」したシステムは、解析に膨大な時間と手間がかかることが問題でした。

近年では、完成したソフトウェアの構造を分析して仕組みを明らかにする「リバースエンジニアリング」に生成AIを活用することで、効率的にシステムの詳細を可視化しようとする動きが注目されています。

生成AIによる要約の「ゆらぎ」という問題

プログラムの部品同士のつながりを示す「コールグラフ」は、大規模なシステムになると1万行を超えることもあり、そのままでは情報が多すぎて理解しにくいという課題がありました。さらに、生成AIを使ってコールグラフを要約しようとすると、実行するたびに結果が少しずつ変わってしまい、安定した分かりやすい図が出力されないという問題がありました。

独自の工夫で要約の精度と安定性を向上

Trustとテンソル・コンサルティングの共同研究チームは、この課題を解決するために2つのアプローチを取りました。

  1. 独自の評価基準の策定
    コールグラフの要約結果が、システムの構造を正しく反映しているかを客観的に評価する基準を独自に作りました。これにより、AIが出力した要約の質を数字で測れるようになり、独自の基準を適用する前後で5%から13%のスコア改善が見られました。

  2. ソースコード由来の用語分類体系(タクソノミー)の活用
    分析するソースコードから自動で抽出した「用語の分類ルール」(タクソノミー)をAIの推論に組み込みました。これにより、専門的な用語の文脈を保ちつつ、毎回同じような一貫性のある要約結果を出力できるようになりました。タクソノミーを適用することで、用語のばらつきが統一され、用語数が5%から11%削減されました。

CBTRN03C.cblコールグラフ要約前後の比較

この研究で利用されたサンプルコードは、AWS Mainframe Modernization – Card Demo, CBTRN03C.cbl(https://github.com/aws-samples/aws-mainframe-modernization-carddemo)です。ライセンスはApache 2.0(http://www.apache.org/licenses/LICENSE-2.0)で、Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.となっています。

今後の展望:様々なソフトウェア図解への応用

今回確立された「グラフ要約技術」は、コールグラフだけでなく、処理の流れを示すフローチャートやデータの流れを示すデータフロー図、システム内のデータの関係を示すデータモデル、プログラムの部品の構成を示すクラス図など、様々な種類のドキュメント作成に応用できる可能性があります。

両社は今後、この技術をさらに進化させ、実用化を進めることで、多くの企業の古いシステムの運用や保守、新しいシステムへの移行計画の策定を効率化し、モダナイゼーションの成功に貢献していくとのことです。

会社概要

Trust株式会社

  • 代表者:代表取締役社長 友田恭輔、湯山敬太(共同代表)

  • 本社住所:東京都中央区日本橋茅場町 1-8-1 茅場町一丁目平和ビル 5F(FinGATE KAYABA)

  • 設立:2023年10月

  • URL:https://trust-partner.co.jp/

  • 事業内容:生成AIプロダクトの開発、システム開発のコンサルティング等

テンソル・コンサルティング株式会社

  • 代表者:代表取締役会長 藤本浩司、代表取締役社長 田代勇一

  • 本社住所:東京都千代田区五番町2番地24

  • 設立:2006年12月

  • URL:https://www.tensor.co.jp/

  • 事業内容:数理モデルに基づく経営コンサルティング業

タイトルとURLをコピーしました