Fujitsu Laboratories of Americaと富士通研究所は1月12日、Javaプログラムのデータに対し、プログラムの動作が仕様に合っているかを自動的に検証する技術を開発し、Webアプリケーション数万行を検証することに成功した。

同技術は、NASA(National Aeronautics and Space Administration)が開発したJavaプログラム向け検証ツール「Java PathFinder」を、シンボリック実行モードで文字列を扱う技術の開発により数値型の入力データに加えて文字列型の入力データを効率良く扱えるように拡張したもの。開発した技術の一部はNASAに採用される。

業務アプリケーションの処理対象の多くは文字列型データであるにもかかわらず、Java PathFinderは数値型のデータしか扱うことができなかったため、同技術の開発が行われた。

同技術は、ビジネスアプリケーションで多用される文字列に関連する条件を自動的に抽出し、コンパクトな表現形式でモデル化することで、シンボリック実行を効率良く行うことを可能にする。

また両研究所は、文字列のシンボリック実行機能を拡張するための共通インタフェースを開発し、これによりユーザーはモデル化方式などの変更や独自の拡張を容易に行うことができる。この共通インタフェースはオープンソースとして公開される。

シンボリック実行の仕組み

両研究所は今後、大規模で複雑なJavaアプリケーションに対して検証を進め、本格的な実用化を目指す。