第15回 Xupper事例紹介セミナーレポート(Xupperと連携ツール)

事例カテゴリー

第15回Xupper事例紹介セミナーレポート

 2011年11月、ケン・システムコンサルティング主催の「Xupperユーザ事例紹介セミナー」が開催された。第15回目となる今回のセミナーでは、初の試みとして、通常の事例紹介の前にツール紹介のセッションを実施。

 Xupperの最新版である「Xupper Ver9.0」、アクセスのリバースエンジニアリングツール「REVERSE PLANET」、住友電工情報システムのWebシステム開発フレームワーク「楽々FrameworkⅡ」の3製品が、それぞれデモを交えつつ紹介された。

 続く事例紹介のセッションでは、エルテックスの山下行雄氏、日本電気の大場彰夫氏が登壇。いずれも「テスト」を主要テーマとした事例であり、システム開発の生産性および品質の両面において、テスト工程が重要な鍵となることを改めて認識させられた。

要件管理とテスト自動化機能拡充でより進化した上流分析・設計ツール

 Xupperは、わかりやすいビジネスフロー図やビジネスルールなどを用いて業務を可視化し、エンドユーザーと開発者のコミュニケーションを強力に支援する上流分析・設計ツールだ。

 すべての設計情報はリポジトリで一元管理され、下流工程までスムーズに連携可能。仕様変更が発生した場合も、クロスリファレンスで容易に影響分析を行える。2011 年にリリースされた最新版のXupper Ver 9.0 では、従来オプションであった「要件管理機能」を標準機能として搭載(図1)。

 ユーザー要求と、それをシステム化するための要件、その実装を、それぞれの関係をツリー構造やダイアグラムで可視化しながら管理できる。これにより、ユーザ要求がシステムのどの機能で実現できているのかをトレースでき、また、システム機能がどの要求によるものなのかの逆引きも可能だ。テスト工程の自動化を支援するオプション機能も強化されている。

 1 つは、ビジネスフロー図を分析してテストシナリオを自動生成する「TQCAssist オプション」。さらに、テストの自動実行まで行えるのが「自動テスト連携オプション」だ。

 これは、フロンテス社のSTAR-ATT(Auto Test Tool) およびHP 社のQTP(QuickTest Professional)との連携で実現する機能となる。Xupperで自動生成したテストシナリオをSTAR-ATT に送り、テストデータと検証ロジックを登録。テストスクリプトを自動生成し、最終的にQTP と連動してテストを自動実行することができる。

既存システムを解析して可視化。修正に伴う影響範囲も把握可能

 システムの現状と設計情報がかけ離れている、あるいは設計情報自体が存在しないために、既存システムの修正や保守作業が非常に困難になるケースも珍しくない。とはいえ、手作業で既存システムを把握するのは膨大な時間を要する。REVERSE PLANET は、このような課題に対応し、既存システムを可視化できるツールだ(図2)

 最新のリバースエンジニアリング技術を使い、既存システムを機械的に解析することによって、様々な角度からシステム構造の分析や修正に伴う影響範囲の調査をデータ項目レベルまで可能にする。

 REVERSE PLANET による可視化の基本的な仕組みとしては、まず可視化したい既存システムの稼働環境から差分データを抽出し、REVERSE PLANETサーバーに自動転送する。サーバー側では自動的に分析が行われ、分析処理されたデータは更新された設計情報としてすべてリポジトリに組み込まれる。

 REVERSE PLANET はサーバー環境で稼働するため、ホスト(既存システム)側に負担をかけたり、リスクを生じさせる心配もない。クライアント側からは、構造分析と影響分析という2 種類の分析が行える。構造分析機能では、分析した結果をあらゆる角度で参照・検索可能。

 また、影響分析機能により、修正による影響範囲を事前に把握し、システムダウンやトラブルを未然に防止することができる。なお、解析結果をXupperのリポジトリへインポートすることも可能だ。

DB定義情報からプロトタイプを自動生成する部品組立型フレームワーク

 楽々Framework Ⅱは、Web システム開発の生産性と品質向上を支援するJava ベースのフレームワークだ。「部品組立型開発」をコンセプトとして掲げており、再利用性を考慮した大小様々な粒度のプログラム部品を用意。

 部品にはログイン認証や権限チェックなどの共通処理部品、画面表示や画面遷移、DB 入出力処理を含んだプログラムを丸ごと部品化したパターン、データ項目に結び付く属性と処理を部品化した項目オブジェクトを用意。

 これらを組み合わせて、コーディング量を最小限に抑えながら効率的にシステムを開発できる。また、上流工程はDOA(データ中心アプローチ)を採用しており、DOA のモデリング手法で生成されたデータモデルとシームレスに連携できるのも特徴だ。もちろん、Xupper とも連携可能(図3)

 XupperからFD ファイルとして出力されたデータベース定義情報を取り込むだけで、実際に動くアプリケーション(プロトタイプ)が部品の自動組み立てで生成される。プロトタイプのカスタマイズも、ブラウザ上でドラッグ&ドロップによるレイアウト編集などノンプログラミングで行うことができ、そこまでの段階でアプリケーションは80%程度完成する。

 あとは、企業固有の業務ロジックなど、複雑な固有処理のみJavaのプラグインで追加すればよい。このような部品組立型開発やプロトタイプ自動生成の仕組みにより、楽々Framework ⅡはネイティブJava の5 ~ 10 倍という高い開発生産性を発揮。

 短期間で容易に品質の高いWeb システムを開発することが可能となる。また、保守の効率化も重視しており、その一例として、プログラムの設定内容から「プログラム仕様書」をワンクリックで自動生成することもできる。

jirei_download_2.png