PRESS RELEASE (技術)
2008-0070
2008年4月4日
株式会社富士通研究所
Fujitsu Laboratories of America, Inc.
~世界初!Javaで実装されたプログラムの業務仕様に対する検証を自動化~
株式会社富士通研究所(注1)とFujitsu Laboratories of America, Inc.(注2)は、このほど、Javaで実装された実用規模のWebアプリケーションが、処理すべき業務の規則(以下、業務仕様)通りに動作することを、動作確認の詳細な手順(以下、テストシナリオ)およびテストデータを人手で作成することなしに、自動的に検証するための基礎技術を世界で初めて開発しました。
新技術は、小規模な組み込みソフトウェアなどに適用されている従来の検証技術を発展させたもので、受注管理システムなどの実用規模のWebアプリケーションに対して、さまざまなユーザーの操作や入力を想定した網羅的なテストを行うことができ、高品質なシステムの構築に貢献します。
近年、インターネット技術の普及に伴い、受注管理システムや物品管理システムなどの企業内の基幹業務システムをWebアプリケーションとして構築する企業が急増しています。またビジネスの急速な変化に伴い、システムは大規模化・複雑化する一方で、開発の短期化が進んでいます。このような状況の中で、お客様に満足いただけるソフトウェアの品質を保証する技術が求められています。
Webアプリケーションの品質を保証するために、開発されたWebアプリケーションが業務仕様通りに動作することを確認するテスト作業を行います。従来、テスト作業においては、開発者が業務仕様を参照しながら、検証したい項目を抽出し、それらの項目を確認するためのテストシナリオと、テストデータを作成し、綿密なテストを行うという、人手の作業が必要でした。このようなテスト作業を行っても、一般的な稼動システムでは1,000ステップあたり0.122件の障害(注3)が残存すると言われています。これは、人手による作業では、想定しうるすべてのテストシナリオを漏れなく作成し、ミスなく実行することが困難であるためです。
上記の課題を解決するために、小規模な組み込みソフトウェアなどの検証に適用されてきた形式検証技術(注4)を発展させ、より規模の大きい実用規模のWebアプリケーションの業務仕様に対する検証を、網羅的かつ自動的に実現する新技術を開発しました。
新技術の特長は以下の通りです。
決まった形式に従って記述された業務仕様から、網羅的なテストシナリオやテストデータを想定し、それに沿って、プログラムを自動的に動作させ、業務仕様通りに動作しているか確認します。これにより、開発者がテストシナリオやテストデータを作成することが不要になります。
Webアプリケーションの機能を画面処理、業務処理、データベース処理の3つに分割し、業務処理の部分のみを抽出し検証します。これにより、検証する範囲を限定し、実用的なWebアプリケーションの検証が可能になります。
変数に対して、テストデータを用いずに変数のまま実行することで、すべての入力バリエーションを試したことに相当する網羅的な検証を行います。これにより従来のテストでは発見が困難だった障害の検出が可能になります。
上記の技術により、Javaで実装された実用規模のWebアプリケーションの業務仕様に対して、世界で初めて、形式検証技術を適用しました。今回は、NASA Ames Research Center(ナサ エイムズ リサーチ センター)(注5)が開発したオープンソースの検証ツールJava PathFinder(ジャバ パスファインダー)(注6)を採用し、NASA Ames Research Centerと協調して機能強化を行いながら技術開発を進めました。
|
本技術を適用した実験では、30個程度のテストシナリオを用いて人手で検証していたWebアプリケーションの1機能に対して1,000個以上のテストシナリオに相当する、網羅的な検証を行うことができました。同時に実験では、テスト工程の30%~50%を自動化することができることも確認しました。
さらに、本技術を適用することにより、人手によるテストシナリオの作成が不要となるため、品質が高水準で均一化されることも期待されます。
今後、実プロジェクトでの試行を行い、本格的な実用化に向けた技術の研究を行います。
以上
株式会社富士通研究所
ソフトウェア&ソリューション研究所 ソフトウェアイノベーション研究部
電話 : 044-754-2675 (直通)
E-mail : java-verification@ml.labs.fujitsu.com
プレスリリースに記載された製品の価格、仕様、サービス内容、お問い合わせ先などは、発表日現在のものです。その後予告なしに変更されることがあります。あらかじめご了承ください。