Success Story


機能テストツール「TestPartner」で、ソフトウエアの品質向上と工数削減に成功

株式会社NEC情報システムズはNECの研究成果の製品への取り込みを行うソリューションベンダーだ。同社では今回、JPEG2000を使った大容量画像の高速配信システム製品の新バージョン開発における検査工程に、コンピュウェアの機能テストツール「TestPartner」を導入、検査工程を自動化した。その結果、組み合わせ検査の工数削減と品質リスクの低減、検査工程の平準化、および早い時期におけるデグレード発生の検出を実現。これによって、より高い品質のソフトウエア開発を行うことができた。




  
見出しアンカー

JPEG2000を使った大容量画像の高速配信システムを製品化

NEC情報システムズはNECグループの情報システムの開発を行う部門と、中央研究所を中心にした研究開発用およびそこで培った技術の商品化のためのソフトウエア開発を担う部門から構成されるソリューションベンダーだ。最近の商品化の例としては、Web会議システムやJPEG2000を使った大容量画像の高速配信システムなどがある。インターネットでの画像配信は一般にJPEGやGIFで行われているが、それらはファイルがひとつの塊でないと配信できないため、全てのデータをダウンロードしないと、PC上では見ることができない。それに対して、2001年に規格化されたJPEG2000ではデータを細切れにし、粒度を粗くして、小さなファイルで送ることができる。そして、細かい部分を見たい場合には、差分データだけを送ることによって詳細なデータを見ることができる。

組み合わせ検査の効率化が大きな課題に

今までインターネットで新聞のような大きなページを見ようとすると、数百MBレベルのデータになり、そのままダウンロードすることは難しかった。
ところが、JPEG2000の活用により、サムネイルのような形で全体画像を送っておき、特に細かく見たい部分については差分データだけ取り出して表示させることができる。この方法を利用すれば、日常新聞を読むようなスタイルをモニター上でも可能にできる。今回開発したのは、そのためのデータ作成から配信までをパッケージにした製品の新バージョンだ。
同製品はサーバーOSがWindows 2000 Server、Windows Server 2003、Linux等4種類、クライアントOSが3種類、DBMS、DBサーバーOSが各4種類と組み合わせが多く、検査実施には同一の検査項目を、環境を変えて何度も繰り返さなければならず、人手では多くの工数がかかってしまう。また、ソフトウエア開発は設計、開発、検査の工程を経る中でバグが収束していくが、最終段階でバグが見つかることがある。そうしたリリース直前の障害の顕在化は修正後の再検査が大変になり、工数も膨らんでしまうことになる。さらに、新しく機能拡張した部分が既存部分へ悪影響を及ぼすことや、品質の劣化(デグレード)をなくしてソフトウエアの品質を維持することも大きな課題になっていた。

コンピュウェアの「TestPartner」を導入、検査工程自動化を目指す

こうした問題の解決には、ツールを使った機能テストの自動化が有効だ。例えば、リリース直前であっても、自動テストツールによって、昼夜を問わずテストを実施すれば、リリースに間に合わせることができる。
NEC情報システムズでは2000年頃にある自動テストツールを試行的に利用したが、そのツールでは再生時間がかかり過ぎるなどの問題があり、本格導入には至らなかった。しかしその後、製品化プロジェクトが増えた2003年からはテストツールの本格導入の必要性が高まり本腰を入れた調査に着手した。
そうした中で、コンピュウェアの機能テストツール「TestPartner」の評価版を試したところ、多数のスクリプトを作成しても、短時間での再生、検査ができることが分かった。そこで、今回発売される製品から本格導入に踏み切った。
TestPartnerはアプリケーションの機能テストや回帰テストを効率よく実施する機能テストツールで、Microsoft .NET、JAVA及びSAPで開発されたアプリケーションに標準で対応している。同製品はGUI操作をテストスクリプトとして記録し、それを再生することで、複雑な環境や繰り返し実施されるテスト作業とコントロールや画像データなどの検証を自動化する。また、テスト資産の一元管理とチーム内での共有ができるようになっている。

組み合わせ検査の大幅な工数削減を実現

同社が開発に着手したのが2005年4月。今回は前バージョンの機能拡張であり、デグレードをなくすため、4月後半からは新規機能部分の調査・設計作業と並行して既存機能に関する検査スクリプトの開発を進めた。そして、7月後半からは組み合わせ検査向けに新規機能の検査スクリプトの開発に移行した。
また製品本体の開発の半分は中国で行っているため、TestPartner用のスクリプトの作成も中国の開発チームの隣で専属メンバーを配置して行った。そして、作成されたスクリプトは定期的に日本に送られて、スクリプトが正しいかどうかの検査が行われ、5月からはデグレード検査が始まった。
こうして、製品がリリースされる直前の9月上旬まで、手動では困難な様々なパターンの検査が、きめ細かく繰り返し行われた。そこでの総検査項目数は7,200にのぼり、作成したスクリプト数はデグレード検査向けが1,500、新規・改善機能向けが1,000であった。そして8通り、3万項目に及ぶ組み合わせ検査を6人月で行い、10件のバグを検出した。手動検査をした場合では15人月程度が必要と見積もられたことから、大幅な工数の削減と品質リスクの低減を実現したことになる。もし手動検査で行った場合、現実的な組み合わせ数や検査項目の絞り込みでの対応が必要となり、品質に影響を及ぼしたと考えられる。

早い時期にデグレードを発見、品質劣化を防止

また、製造工程と並行してスクリプトを開発し、検査を行ったため、手作業と比べて、ピーク時で30-50%程度の工数を削減し、リリース直前に集中する検査工数の平準化に成功した。これによって、チームメンバーの負担を大幅に軽減することができた(図)。

さらに機能拡張の結果、既存部分に発生したデグレードを早い時期に2件検出した。これは機能拡張の影響はないはずだった部分であり、そのまま顕在化しなければ、リリース後の品質問題につながる可能性があった。

複数プロジェクトにおける共有利用を拡大、検査工程の一層の効率化を目指す

今回、同社ではTestPartnerを利用することによって、組み合わせ検査のような同じ検査を繰り返す場合の工数削減とデグレード検査の網羅度を上げることによって、早期にデグレードを発見、品質を落とさないようにして、製品を発売することができた。
TestPartnerは検査工程用のツールであり、利用範囲は限定される。
そのため、同社では複数のプロジェクトでの共有を前提に考えており、すでに全く別の大規模業務システムの開発プロジェクトで利用を開始した。そこでは、数万件に及ぶ検査データをTestPartnerを利用して作成している。NEC情報システムズではこのような形で適用プロジェクトを広げていく方針であり今後も、TestPartnerの活躍の場は益々拡大していくことは確実だ。

※文中に記載された名称は、各社の商標または登録商標です。

全文をPDFでダウンロードする


キーファクト

株式会社 NEC情報システムズ

  • 設立:1984年4月9日
  • 資本金:2億円(NEC全額出資)
  • 従業員数:1,410名(2005年4月1日現在)
  • 事業概要: ITの企画に関わるコンサルティングサービスから、システムの構築・運用に至るトータルなシステムサービスを提供している。長年にわたるNECグループへのサービス提供の中で培われた経験とノウハウをベースに、グループ外にも高品質なサービスを提供している。

URL:

http://www.nis.co.jp/

インダストリー:

ソフトウエア開発業

チャレンジ:

自動検査ツールの導入により、組み合わせ検査の効率化を目指した。中でも、(1)リリース直前に障害が顕在化すると、修正後の再検査に大変な工数がかかるため、リリース直前の検査工数を平準化させようとした。(2)機能拡張による既存機能への影響を回避するため、デグレードを早期に発見することで、品質の劣化を防ごうとした。

コンピュウェアからの解答:

TestPartnerを導入して活用することで、当初想定通りの工数削減と品質リスクの低減が可能となった。また、リリース直前ピーク時の検査工数を約30-50%削減に成功し、チームメンバーの負担を軽減した。さらに、2件のデグレード発生を検出、両方とも機能拡張の影響はないはずの部分であり、顕在化しなければ、リリース後の品質問題に繋がる可能性があった。

コンピュウエア ソリューション:

 

「ユーザーの声を受けて、ソフトウエアをアップグレードしていく過程では、様々な変更や機能追加が必要になり、そこに必ずデグレードの危険性が生まれます。今回、デグレードを早い段階で見つけ、修正や再検査を行うことができましたが、これは品質を落とさず、顧客満足度を向上させる意味から、大変重要です。早い段階で見つけられれば、プロジェクトマネージャーとして対策を講じることができますが、発売直前までわからないと、最悪の場合、リースを延期しての修正など極めて困難な対応を迫られるのです」
IT基盤事業部
ユビキタスソリューショングループ
マネージャー 齊藤 裕之 氏


今回の開発プロジェクトに携わった日本側メンバー