(57)【要約】【課題】アプリケーション提供システムがネットワークを介して接続されるクライアントへ提供するアプリケーションの画面遷移をシミュレーションするとともに、画面生成処理とアプリケーション処理を連携させることができるアプリケーション開発支援システム、アプリケーション開発支援方法を提供する。【解決手段】アプリケーション開発システム８０の画面遷移定義部８２は、仕様策定者が指示した基本画面ファイルを読み込み、遷移元及び遷移先の基本画面ファイルの識別情報と遷移条件とからなる画面遷移定義をユーザから受ける。ファイル生成部８３は、画面遷移定義部８２が受けた画面遷移定義を基に、画面生成に関するファイルと画面遷移を定義したファイルを自動生成する。画面遷移シミュレーション部８４は、ファイル生成部８３が生成したファイルに従い、画面遷移をシミュレーションする。【選択図】　　　図１
2004110362.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークを介して接続されるクライアントへアプリケーションを提供するアプリケーション提供システムの開発に用いられるアプリケーション開発支援システムであって、
予め作成された前記クライアントへ表示する画面の基本デザインとなる画面ファイルを記憶する記憶手段と、
開発者が入力した指示により、前記記憶手段から前記画面ファイルを読み込むとともに、遷移元及び遷移先の該画面ファイルの識別情報と遷移条件とからなる画面遷移定義の入力を開発者から受ける画面遷移定義部と、
前記画面遷移定義部が受けた画面遷移定義を基に、画面生成に関するファイルと画面遷移を定義したファイルとを生成するファイル生成部と、
前記ファイル生成部が生成した画面生成に関するファイルと画面遷移を定義したファイルとを基に、画面遷移をシミュレーションする画面遷移シミュレーション部と、
を備えることを特徴とするアプリケーション開発支援システム。
【請求項２】
前記遷移条件は、アプリケーション処理を実行するシナリオの識別情報及び該シナリオの出力するステータスの識別情報からなることを特徴とする請求項１に記載のアプリケーション開発支援システム。
【請求項３】
ネットワークを介して接続されるクライアントへアプリケーションを提供するアプリケーション提供システムの開発に用いられるアプリケーション開発支援システムであって、
前記クライアントへ表示する遷移元及び遷移先の画面ファイルの識別情報と、アプリケーション処理を実行するシナリオの識別情報及び該シナリオの出力するステータスの識別情報からなる遷移条件との入力を開発者から受ける画面遷移定義部と、
前記画面遷移定義部が受けた画面ファイルの識別情報及び遷移条件を基に、前記アプリケーション提供システムが画面生成処理とシナリオとを連携するための画面遷移を定義したファイルと、シナリオの識別情報及び該シナリオの出力するステータスの識別情報の一覧であるビューフローシナリオ一覧ファイルとを生成する第１のファイル生成部と、
前記アプリケーション提供システムが実装するシナリオの識別情報及び該シナリオの出力するステータスの識別情報を開発者から受ける入力部と、
前記入力部が受けたシナリオの識別情報及び該シナリオの出力するステータスの識別情報の一覧であるビジネスシナリオステータス一覧ファイルを生成する第２のファイル生成部と、
前記ビューフローシナリオ一覧ファイル及び前記ビジネスシナリオステータス一覧ファイルの間のシナリオまたはステータスのマッピングの入力を開発者から受け、該ビューフローシナリオ一覧ファイル内及び前記画面遷移を定義するファイル内のシナリオの識別情報またはステータスの識別情報を書き換えるビジネスシナリオ連携部と、
を備えることを特徴とするアプリケーション開発支援システム。
【請求項４】
ネットワークを介して接続されるクライアントへアプリケーションを提供するアプリケーション提供システムの開発に用いられるアプリケーション開発支援方法であって、
予め作成された前記クライアントへ表示する画面の基本デザインとなる画面ファイルを記憶する記憶手段を用意し、
開発者が入力した指示により、前記記憶手段から前記画面ファイルを読み込み、
遷移元及び遷移先の前記画面ファイルの識別情報と遷移条件とからなる画面遷移定義の入力を開発者から受け、
開発者から受けた前記画面遷移定義を基に、画面生成に関するファイルと画面遷移を定義したファイルとを生成し、
生成した画面生成に関する前記ファイルと画面遷移を定義した前記ファイルとを基に、画面遷移をシミュレーションする、
ことを特徴とするアプリケーション開発支援方法。
【請求項５】
ネットワークを介して接続されるクライアントへアプリケーションを提供するアプリケーション提供システムの開発に用いられるアプリケーション開発支援方法であって、
前記クライアントへ表示する遷移元及び遷移先の画面ファイルの識別情報と、アプリケーション処理を実行するシナリオの識別情報及び該シナリオの出力するステータスの識別情報からなる遷移条件との入力を開発者から受け、前記アプリケーション提供システムが画面生成処理とシナリオとを連携するための画面遷移を定義したファイルと、該シナリオの識別情報及び該シナリオの出力するステータスの識別情報の一覧であるビューフローシナリオ一覧ファイルとを生成し、
前記アプリケーション提供システムが実装するシナリオの識別情報及び該シナリオの出力するステータスの識別情報を開発者から受け、該シナリオの識別情報及び該シナリオの出力するステータスの識別情報の一覧であるビジネスシナリオステータス一覧ファイルを生成し、
前記ビューフローシナリオ一覧ファイル及び前記ビジネスシナリオステータス一覧ファイルの間のシナリオまたはステータスのマッピングの入力を開発者から受け、該ビューフローシナリオ一覧ファイル内及び前記画面遷移を定義するファイル内のシナリオの識別情報またはステータスの識別情報を書き換える、
ことを特徴とするアプリケーション開発支援方法。
【請求項６】
ネットワークを介して接続されるクライアントへアプリケーションを提供するアプリケーション提供システムの開発に用いられるアプリケーション開発支援システム上で実行されるコンピュータプログラムであって、
開発者が入力した指示により、予め作成された前記クライアントへ表示する画面の基本デザインとなる画面ファイルを記憶する記憶手段から、前記画面ファイルを読み込むステップと、
遷移元及び遷移先の前記画面ファイルの識別情報と遷移条件とからなる画面遷移定義の入力を開発者から受けるステップと、
開発者から受けた前記画面遷移定義を基に、画面生成に関するファイルと画面遷移を定義したファイルとを生成するステップと、
生成した画面生成に関する前記ファイルと画面遷移を定義した前記ファイルとを基に、画面遷移をシミュレーションするステップと、
をコンピュータに実行させるためのアプリケーション開発支援システムのコンピュータプログラム。
【請求項７】
ネットワークを介して接続されるクライアントへアプリケーションを提供するアプリケーション提供システムの開発に用いられるアプリケーション開発支援システム上で実行されるコンピュータプログラムであって、
前記クライアントへ表示する遷移元及び遷移先の画面ファイルの識別情報と、アプリケーション処理を実行するシナリオの識別情報及び該シナリオの出力するステータスの識別情報からなる遷移条件との入力を開発者から受け、前記アプリケーション提供システムが画面生成処理とシナリオとを連携するための画面遷移を定義したファイルと、該シナリオの識別情報及び該シナリオの出力するステータスの識別情報の一覧であるビューフローシナリオ一覧ファイルとを生成するステップと、
前記アプリケーション提供システムが実装するシナリオの識別情報及び該シナリオの出力するステータスの識別情報を開発者から受け、該シナリオの識別情報及び該シナリオの出力するステータスの識別情報の一覧であるビジネスシナリオステータス一覧ファイルを生成するステップと、
前記ビューフローシナリオ一覧ファイル及び前記ビジネスシナリオステータス一覧ファイルの間のシナリオまたはステータスのマッピングの入力を開発者から受け、該ビューフローシナリオ一覧ファイル内及び前記画面遷移を定義するファイル内のシナリオの識別情報またはステータスの識別情報を書き換えるステップと、
をコンピュータに実行させるためのアプリケーション開発支援システムのコンピュータプログラム。
【請求項８】
ネットワークを介して接続されるクライアントへアプリケーションを提供するアプリケーション提供システムの開発に用いられるアプリケーション開発支援システム上で実行されるコンピュータプログラムを記緑したコンピュータ読み取り可能な記録媒体であって、
開発者が入力した指示により、予め作成された前記クライアントへ表示する画面の基本デザインとなる画面ファイルを記憶する記憶手段から、前記画面ファイルを読み込むステップと、
遷移元及び遷移先の前記画面ファイルの識別情報と遷移条件とからなる画面遷移定義の入力を開発者から受けるステップと、
開発者から受けた前記画面遷移定義を基に、画面生成に関するファイルと画面遷移を定義したファイルとを生成するステップと、
生成した画面生成に関する前記ファイルと画面遷移を定義した前記ファイルとを基に、画面遷移をシミュレーションするステップと、
の各処理をコンピュータに実行させるアプリケーション開発支援システムのプログラムを記録する記録媒体。
【請求項９】
ネットワークを介して接続されるクライアントへアプリケーションを提供するアプリケーション提供システムの開発に用いられるアプリケーション開発支援システム上で実行されるコンピュータプログラムを記緑したコンピュータ読み取り可能な記録媒体であって、
前記クライアントへ表示する遷移元及び遷移先の画面ファイルの識別情報と、アプリケーション処理を実行するシナリオの識別情報及び該シナリオの出力するステータスの識別情報からなる遷移条件との入力を開発者から受け、前記アプリケーション提供システムが画面生成処理とシナリオとを連携するための画面遷移を定義したファイルと、該シナリオの識別情報及び該シナリオの出力するステータスの識別情報の一覧であるビューフローシナリオ一覧ファイルとを生成するステップと、
前記アプリケーション提供システムが実装するシナリオの識別情報及び該シナリオの出力するステータスの識別情報を開発者から受け、該シナリオの識別情報及び該シナリオの出力するステータスの識別情報の一覧であるビジネスシナリオステータス一覧ファイルを生成するステップと、
前記ビューフローシナリオ一覧ファイル及び前記ビジネスシナリオステータス一覧ファイルの間のシナリオまたはステータスのマッピングの入力を開発者から受け、該ビューフローシナリオ一覧ファイル内及び前記画面遷移を定義するファイル内のシナリオの識別情報またはステータスの識別情報を書き換えるステップと、
の各処理をコンピュータに実行させるアプリケーション開発支援システムのプログラムを記録する記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、ネットワークを介して接続されるクライアントへアプリケーションを提供するアプリケーション提供システムの開発に用いられるアプリケーション開発支援システム及びアプリケーション開発支援方法に関する。
【０００２】
【従来の技術】
近年、ユーザがパーソナルコンピュータからウェブを利用してインターネットやイントラネット上のアプリケーション提供システムにアクセスし、アプリケーション提供システムはクライアントサーバ方式によりクライアントへアプリケーションを提供するアプリケーション実行アーキテクチャが実現されている。すなわち、ユーザのパーソナルコンピュータ（クライアント）は、ブラウザなど、画面の表示やデータの入出力の機能のみを実行する。アプリケーション提供システム（サーバ）は画面生成処理、及び、アプリケーション処理の機能を備え、ネットワークを介してクライアントからリクエストを受信してアプリケーション処理を実行し、処理の結果を表示する画面を生成して再びネットワークを介してクライアントへ返送する。しかし、このようなアプリケーションにおいては、画面表示のために必要なファイルの中にアプリケーションの処理の一部が混在しているなど、画面生成処理とアプリケーション処理とが複雑に関連し合っている。
【０００３】
そこで、データベース処理（アプリケーション処理）定義を設計する作業と、クライアント画面を設計する作業を分離し、ウェブアプリケーションを作成するアプリケーション開発支援方法及び開発支援システムが特許文献１に開示されている。特許文献１においては、データベース処理設計装置がデータベース処理定義ファイルを、クライアント画面設計装置がクライアント画面定義ファイルを生成し、ウェブアプリケーション生成装置がこれらデータベース処理定義ファイルとクライアント画面定義ファイルを基にウェブアプリケーションを生成している。
【０００４】
また、特許文献２では、ウェブアプリケーション提供システムの開発において、サーブレット、サーバにおいて動的なビューを生成するためのＪＳＰ（Ｊａｖａ（登録商標）Ｓｅｒｖｅｒ　Ｐａｇｅｓ）、及び、部品化されたプログラムであるＢｅａｎの各コンポーネントを１対１の関係で定義し、各コンポーネントの対応を明確にすることにより、設計開発作業の負担を軽減させ、かつ設計開発のスピードアップを図るウェブアプリケーション開発方法及び開発支援システムが開示されている。すなわち、画面のデザインから各コンポーネントの定義を対応表として生成し、その対応表と設計ドキュメントの情報を利用して、サーブレット、ＪＳＰ、および、Ｂｅａｎのコードを自動生成する。
【０００５】
【特許文献１】
特開２００２−１５５７１４号公報（段落０００５−段落００４０、第１図−第９図）
【特許文献２】
特開２００１−３４４１０５号公報（段落００３１−段落０１０３、第１図−第３３図）
【０００６】
【発明が解決しようとする課題】
アプリケーション提供システムが提供するアプリケーションの開発においては、まず、クライアントに表示する画面デザインと、表示された画面からどのようなリクエストがアプリケーション提供システムへ送信され、アプリケーション処理の結果どの画面を生成してクライアントに送信するかの画面遷移定義とを行うことが必要となる。
しかし、アプリケーションと関連した画面のデザインを決定する場合、クライアントからのリクエストやアプリケーション処理の結果によって画面の表示は動的に変化するため、画面に入力／出力されるデータ双方に関するシステムの仕様の理解が必要であった。従って、画面のデザインの仕様策定に時間を要していた。また、画面生成処理の開発においては、画面の表示を動的に生成するためのサーブレットやコーディング技術に関する高度な知識が要求され、加えて、これらの技術は密接にかかわっていた。これは、画面生成処理の開発において、分業や並行開発を困難にしており、画面生成処理の開発に時間を要していた。
さらに、画面生成処理が作成されていても、業務処理プログラム、あるいは、業務処理プログラムに相当する試験用プログラムが接続されていなければ画面遷移をシミュレーションして確認することはできなかった。よって、紙に画面のデザインを印刷して画面遷移定義を確認しており、潜在的する仕様のミスを見つけることは困難であった。
上述の特許文献１及び特許文献２においては、画面生成処理とアプリケーション処理を独立して開発し、コードを生成することはできるが、上記の問題を解決するものではなかった。
【０００７】
この発明は、このような事情を考慮してなされたもので、その目的は、アプリケーション提供システムがネットワークを介して接続されるクライアントへ提供するアプリケーションの画面遷移をシミュレーションするとともに、画面生成処理とアプリケーション処理を連携させることができるアプリケーション開発支援システム、アプリケーション開発支援方法を提供することにある。
【０００８】
【課題を解決するための手段】
この発明は、上記の課題を解決すべくなされたもので、請求項１に記載の発明は、ネットワークを介して接続されるクライアントへアプリケーションを提供するアプリケーション提供システムの開発に用いられるアプリケーション開発支援システムであって、予め作成された前記クライアントへ表示する画面の基本デザインとなる画面ファイルを記憶する記憶手段と、開発者が入力した指示により、前記記憶手段から前記画面ファイルを読み込むとともに、遷移元及び遷移先の該画面ファイルの識別情報と遷移条件とからなる画面遷移定義の入力を開発者から受ける画面遷移定義部と、前記画面遷移定義部が受けた画面遷移定義を基に、画面生成に関するファイルと画面遷移を定義したファイルとを生成するファイル生成部と、前記ファイル生成部が生成した画面生成に関するファイルと画面遷移を定義したファイルとを基に、画面遷移をシミュレーションする画面遷移シミュレーション部と、を備えることを特徴とするアプリケーション開発支援システムである。
【０００９】
請求項２に記載の発明は、請求項１に記載のアプリケーション開発支援システムであって、前記遷移条件は、アプリケーション処理を実行するシナリオの識別情報及び該シナリオの出力するステータスの識別情報からなることを特徴とする。
【００１０】
請求項３に記載の発明は、ネットワークを介して接続されるクライアントへアプリケーションを提供するアプリケーション提供システムの開発に用いられるアプリケーション開発支援システムであって、前記クライアントへ表示する遷移元及び遷移先の画面ファイルの識別情報と、アプリケーション処理を実行するシナリオの識別情報及び該シナリオの出力するステータスの識別情報からなる遷移条件との入力を開発者から受ける画面遷移定義部と、前記画面遷移定義部が受けた画面ファイルの識別情報及び遷移条件を基に、前記アプリケーション提供システムが画面生成処理とシナリオとを連携するための画面遷移を定義したファイルと、シナリオの識別情報及び該シナリオの出力するステータスの識別情報の一覧であるビューフローシナリオ一覧ファイルとを生成する第１のファイル生成部と、前記アプリケーション提供システムが実装するシナリオの識別情報及び該シナリオの出力するステータスの識別情報を開発者から受ける入力部と、前記入力部が受けたシナリオの識別情報及び該シナリオの出力するステータスの識別情報の一覧であるビジネスシナリオステータス一覧ファイルを生成する第２のファイル生成部と、前記ビューフローシナリオ一覧ファイル及び前記ビジネスシナリオステータス一覧ファイルの間のシナリオまたはステータスのマッピングの入力を開発者から受け、該ビューフローシナリオ一覧ファイル内及び前記画面遷移を定義するファイル内のシナリオの識別情報またはステータスの識別情報を書き換えるビジネスシナリオ連携部と、を備えることを特徴とするアプリケーション開発支援システムである。
【００１１】
請求項４に記載の発明は、ネットワークを介して接続されるクライアントへアプリケーションを提供するアプリケーション提供システムの開発に用いられるアプリケーション開発支援方法であって、予め作成された前記クライアントへ表示する画面の基本デザインとなる画面ファイルを記憶する記憶手段を用意し、開発者が入力した指示により、前記記憶手段から前記画面ファイルを読み込み、遷移元及び遷移先の前記画面ファイルの識別情報と遷移条件とからなる画面遷移定義の入力を開発者から受け、開発者から受けた前記画面遷移定義を基に、画面生成に関するファイルと画面遷移を定義したファイルとを生成し、生成した画面生成に関する前記ファイルと画面遷移を定義した前記ファイルとを基に、画面遷移をシミュレーションする、ことを特徴とするアプリケーション開発支援方法である。
【００１２】
請求項５に記載の発明は、ネットワークを介して接続されるクライアントへアプリケーションを提供するアプリケーション提供システムの開発に用いられるアプリケーション開発支援方法であって、前記クライアントへ表示する遷移元及び遷移先の画面ファイルの識別情報と、アプリケーション処理を実行するシナリオの識別情報及び該シナリオの出力するステータスの識別情報からなる遷移条件との入力を開発者から受け、前記アプリケーション提供システムが画面生成処理とシナリオとを連携するための画面遷移を定義したファイルと、該シナリオの識別情報及び該シナリオの出力するステータスの識別情報の一覧であるビューフローシナリオ一覧ファイルとを生成し、前記アプリケーション提供システムが実装するシナリオの識別情報及び該シナリオの出力するステータスの識別情報を開発者から受け、該シナリオの識別情報及び該シナリオの出力するステータスの識別情報の一覧であるビジネスシナリオステータス一覧ファイルを生成し、前記ビューフローシナリオ一覧ファイル及び前記ビジネスシナリオステータス一覧ファイルの間のシナリオまたはステータスのマッピングの入力を開発者から受け、該ビューフローシナリオ一覧ファイル内及び前記画面遷移を定義するファイル内のシナリオの識別情報またはステータスの識別情報を書き換える、ことを特徴とするアプリケーション開発支援方法である。
【００１３】
請求項６に記載の発明は、ネットワークを介して接続されるクライアントへアプリケーションを提供するアプリケーション提供システムの開発に用いられるアプリケーション開発支援システム上で実行されるコンピュータプログラムであって、開発者が入力した指示により、予め作成された前記クライアントへ表示する画面の基本デザインとなる画面ファイルを記憶する記憶手段から、前記画面ファイルを読み込むステップと、遷移元及び遷移先の前記画面ファイルの識別情報と遷移条件とからなる画面遷移定義の入力を開発者から受けるステップと、開発者から受けた前記画面遷移定義を基に、画面生成に関するファイルと画面遷移を定義したファイルとを生成するステップと、生成した画面生成に関する前記ファイルと画面遷移を定義した前記ファイルとを基に、画面遷移をシミュレーションするステップと、をコンピュータに実行させるためのアプリケーション開発支援システムのコンピュータプログラムである。
【００１４】
請求項７に記載の発明は、ネットワークを介して接続されるクライアントへアプリケーションを提供するアプリケーション提供システムの開発に用いられるアプリケーション開発支援システム上で実行されるコンピュータプログラムであって、前記クライアントへ表示する遷移元及び遷移先の画面ファイルの識別情報と、アプリケーション処理を実行するシナリオの識別情報及び該シナリオの出力するステータスの識別情報からなる遷移条件との入力を開発者から受け、前記アプリケーション提供システムが画面生成処理とシナリオとを連携するための画面遷移を定義したファイルと、該シナリオの識別情報及び該シナリオの出力するステータスの識別情報の一覧であるビューフローシナリオ一覧ファイルとを生成するステップと、前記アプリケーション提供システムが実装するシナリオの識別情報及び該シナリオの出力するステータスの識別情報を開発者から受け、該シナリオの識別情報及び該シナリオの出力するステータスの識別情報の一覧であるビジネスシナリオステータス一覧ファイルを生成するステップと、前記ビューフローシナリオ一覧ファイル及び前記ビジネスシナリオステータス一覧ファイルの間のシナリオまたはステータスのマッピングの入力を開発者から受け、該ビューフローシナリオ一覧ファイル内及び前記画面遷移を定義するファイル内のシナリオの識別情報またはステータスの識別情報を書き換えるステップと、をコンピュータに実行させるためのアプリケーション開発支援システムのコンピュータプログラムである。
【００１５】
請求項８に記載の発明は、ネットワークを介して接続されるクライアントへアプリケーションを提供するアプリケーション提供システムの開発に用いられるアプリケーション開発支援システム上で実行されるコンピュータプログラムを記緑したコンピュータ読み取り可能な記録媒体であって、開発者が入力した指示により、予め作成された前記クライアントへ表示する画面の基本デザインとなる画面ファイルを記憶する記憶手段から、前記画面ファイルを読み込むステップと、遷移元及び遷移先の前記画面ファイルの識別情報と遷移条件とからなる画面遷移定義の入力を開発者から受けるステップと、開発者から受けた前記画面遷移定義を基に、画面生成に関するファイルと画面遷移を定義したファイルとを生成するステップと、生成した画面生成に関する前記ファイルと画面遷移を定義した前記ファイルとを基に、画面遷移をシミュレーションするステップと、の各処理をコンピュータに実行させるアプリケーション開発支援システムのプログラムを記録する記録媒体である。
【００１６】
請求項９に記載の発明は、ネットワークを介して接続されるクライアントへアプリケーションを提供するアプリケーション提供システムの開発に用いられるアプリケーション開発支援システム上で実行されるコンピュータプログラムを記緑したコンピュータ読み取り可能な記録媒体であって、前記クライアントへ表示する遷移元及び遷移先の画面ファイルの識別情報と、アプリケーション処理を実行するシナリオの識別情報及び該シナリオの出力するステータスの識別情報からなる遷移条件との入力を開発者から受け、前記アプリケーション提供システムが画面生成処理とシナリオとを連携するための画面遷移を定義したファイルと、該シナリオの識別情報及び該シナリオの出力するステータスの識別情報の一覧であるビューフローシナリオ一覧ファイルとを生成するステップと、前記アプリケーション提供システムが実装するシナリオの識別情報及び該シナリオの出力するステータスの識別情報を開発者から受け、該シナリオの識別情報及び該シナリオの出力するステータスの識別情報の一覧であるビジネスシナリオステータス一覧ファイルを生成するステップと、前記ビューフローシナリオ一覧ファイル及び前記ビジネスシナリオステータス一覧ファイルの間のシナリオまたはステータスのマッピングの入力を開発者から受け、該ビューフローシナリオ一覧ファイル内及び前記画面遷移を定義するファイル内のシナリオの識別情報またはステータスの識別情報を書き換えるステップと、の各処理をコンピュータに実行させるアプリケーション開発支援システムのプログラムを記録する記録媒体である。
【００１７】
【発明の実施の形態】
以下、図面を参照し、この発明の実施の形態について説明する。
１．アプリケーション提供システム
図１２は、この発明の一実施の形態によるアプリケーション開発支援システムがアプリケーション開発の支援対象とするアプリケーション提供システム６０の構成を示すブロック図である。
アプリケーション提供システム６０に用いられるアプリケーション実行アーキテクチャは、企業の業務システムや電子商取引などに使われるサーバ側アプリケーション構築のフレームワークであるＪ２ＥＥ（Ｊａｖａ（登録商標）　２　Ｅｎｔｅｒｐｒｉｓｅ　Ｅｄｉｔｉｏｎ）に従い、クライアント層、プレゼンテーション層、ビジネス層、インテグレーション層、及び、リソース層の５層に分割される。そして、アプリケーション提供システム６０は、プレゼンテーション層、ビジネス層、インテグレーション層、及び、リソース層を備えた１つ又は複数のサーバからなり、インターネット網やイントラネット網などのネットワークＮを介して接続されるクライアント層へアプリケーションを提供する。ただし、リソース層の外部システム５３は、アプリケーション提供システム６０を相互動作するシステムであり、アプリケーション提供システム６０には含まれない。
なお、本実施の形態において、クライアント層からのリクエストに対して、レスポンスを返すまでの一連の処理を「業務」、「業務」の集合体を「アプリケーション」とする。例えば、「アプリケーション」が「オンラインバンキング」であった場合、「業務」は「銀行口座の照会」などである。
【００１８】
アプリケーション提供システム６０内の階層間のデータの交換は、データオブジェクトを利用したインタフェースにより行われる。プレゼンテーション層からビジネス層へは、リクエストオブジェクトを用い、リクエストオブジェクト内のリクエストデータにより入力データを引き渡し、ビジネス層からプレゼンテーション層へはレスポンスオブジェクトを用い、レスポンスオブジェクト内のレスポンスデータにより業務処理の結果のデータを引き渡す。また、ビジネス層−インテグレーション層間では、ビジネスオブジェクトを用いてデータの交換を行う。これにより、ビジネス層は、プレゼンテーション層に対してビジネス層内の動作及びインテグレーション層への接続を隠蔽し、インテグレーション層は、ビジネス層に対してンテグレーション層内の動作及びリソース層への接続を隠蔽する。
【００１９】
以下に、各階層の機能及び構成を示す。
（１）クライアント層
クライアント層は、ネットワークＮを介してアプリケーション提供システム６０にアクセスし、アプリケーションの業務処理のリクエストの送信、及び、要求した業務処理のレスポンスの表示を行う。クライアント層は、ウェブクライアント１１を有する。
【００２０】
ウェブクライアント１１は、ブラウザ１２を備えたパーソナルコンピュータであり、ＴＣＰ／ＩＰ（Ｔｒａｎｓｍｉｓｓｉｏｎ　Ｃｏｎｔｒｏｌ　Ｐｒｏｔｏｃｏｌ／Ｉｎｔｅｒｎｅｔ　Ｐｒｏｔｏｃｏｌ）を実装し、ネットワークＮを介してプレゼンテーション層のビューフローコントローラ２１と通信する機能を有する。ネットワークＮとは、ネットワークＮがイントラネット網の場合は１０Ｂａｓｅ−Ｔ／１００Ｂａｓｅ−Ｔ、無線ＬＡＮ（Ｌｏｃａｌ　Ａｒｅａ　Ｎｅｔｗｏｒｋ）などにより、インターネット網の場合はダイヤルアップ、ブロードバンド回線などにより接続される。ブラウザ１２は、キーボードなどによるユーザの入力に従って、ＨＴＴＰ（Ｈｙｐｅｒｔｅｘｔ　Ｔｒａｎｓｆｅｒ　Ｐｒｏｔｏｃｏｌ）によりビューフローコントローラ２１へ業務処理のリクエスト（ＨＴＴＰリクエスト）を送信する機能と、ＨＴＴＰにより業務処理の結果を示す画面、すなわち、ビューフローコントローラ２１から受信したレスポンス（ＨＴＴＰレスポンス）に含まれるビュー２３−１〜２３−ｎ（以下、ビュー２３）を表示する機能を有する。ビュー２３は、例えば、ＨＴＭＬ（Ｈｙｐｅｒｔｅｘｔ　Ｍａｒｋｕｐ　Ｌａｎｇｕａｇｅ）により記述される。なお、ＨＴＴＰリクエストには、要求した業務処理を識別するイベントＩＤ及び業務処理に必要なパラメータが含まれる。
【００２１】
（２）プレゼンテーション層
プレゼンテーション層は、アプリケーション提供システム６０にアクセスしているウェブクライアント１１のセッション管理及び画面制御を行う。プレゼンテーション層は、ビューフローコントローラ２１、データベース２２及びプロキシ２５を有する。
【００２２】
データベース２２は、イベントＩＤと、イベントＩＤにより識別される業務処理を実行するビジネス層のビジネスシナリオ３７−１〜３７−ｎ（以下、ビジネスシナリオ３７）を選択するためシナリオＩＤとのマッピング情報を記憶する。また、イベントＩＤと業務処理の結果のステータスから、次にどの画面を表示するかの画面遷移情報と、ウェブクライアント１１から受信したＨＴＴＰリクエスト内の入力パラメータの型や桁数、許容範囲、必須パラメータか否かをチェックするための入力チェック情報を記憶している。データベース２２内の情報は、例えば、ＸＭＬ（ｅｘｔｅｎｓｉｂｌｅ　ｍａｒｋｕｐ　ｌａｎｇｕａｇｅ）により記述される。
【００２３】
ビューフローコントローラ２１は、サーバにおいて動的な画面を生成するためのＪＳＰ（Ｊａｖａ（登録商標）Ｓｅｒｖｅｒ　Ｐａｇｅｓ）を実行するＪＳＰコンテナ、及び、サーブレットを実行するサーブレットコンテナを備える。そして、ウェブクライアント１１のブラウザ１２からイベントＩＤ及び入力パラメータを含むＨＴＴＰリクエストを受け、データベース２２内のマッピング情報を基にイベントＩＤをシナリオＩＤに変換し、得られたシナリオＩＤと入力パラメータとを内部インタフェースのリクエストオブジェクトにより、プロキシ２５へ受け渡す機能を有する。また、プロキシ２５を介して、業務処理の結果のステータス及び出力パラメータが設定されたレスポンスオブジェクトを受け、データベース２２内の画面遷移情報を基に、ブラウザ１２へ表示させるビュー２３を生成して、ＨＴＴＰレスポンスにより送信する機能を有する。
【００２４】
プロキシ２５は、ビジネス層におけるビジネスシナリオ３７の参照の取得、メソッドの実行、リクエストオブジェクト・レスポンスオブジェクトのやりとりをプレゼンテーションに隠蔽しながら、プレゼンテーション層からビジネス層のビジネスシナリオ３７へのアクセスを行う機能を有する。すなわち、ビューフローコントローラ２１から受けたリクエストオブジェクトをファサード３１に受け渡す機能と、ファサード３１から受けたレスポンスオブジェクトをビューフローコントローラ２１へ受け渡す機能を有する。
【００２５】
（３）ビジネス層
ビジネス層は、クライアント層から要求されたアプリケーションの業務処理を実行する。ビジネス層は、ファサード３１、ビジネスマッピング３３、データベース３４、デリゲート３５−１〜３５−ｎ（以下、デリゲート３５）及びビジネスシナリオ３７を有する。
【００２６】
データベース３４は、シナリオＩＤに対応したビジネスシナリオ３７の識別符号を記憶している。データベース３４内の情報は、例えば、ＸＭＬにより記述される。
【００２７】
ファサード３１は、ＥＪＢ（Ｅｎｔｅｒｐｒｉｓｅ　Ｊａｖａ（登録商標）Ｂｅａｎｓ）を実行するＥＪＢコンテナを備える。ＥＪＢとは、ネットワークを介して接続される他のサーバ上で動作するアプリケーションのオブジェクトをあたかも自身の備えるアプリケーション上に存在するオブジェクトと同じように扱うことのできる機構を提供するアプリケーションモデルである。そして、プレゼンテーション層のプロキシ２５が生成したリクエストオブジェクトをビジネスマッピング３３へ通知し、ビジネスマッピング３３が選択したデリゲート３５を起動して、入力データを引き渡す。また、デリゲート３５が生成したレスポンスオブジェクトを、プロキシ２５を介してビューフローコントローラ２１へ受け渡す機能を有する。
【００２８】
ビジネスマッピング３３は、データベース３４内の情報を基に、ファサード３１から受け取ったシナリオＩＤによりアプリケーションを実行するビジネスシナリオ３７を選択するとともに、選択したビジネスシナリオ３７を実行するデリゲート３５のインスタンスを生成し、ファサード３１へ通知する機能を有する。
【００２９】
デリゲート３５は、ファサード３１から受け取ったリクエストオブジェクトを、ビジネスシナリオ３７へ入力するためのインタフェース、すなわち、ビジネスオブジェクトに変換して業務処理を指示する機能を有する。また、ビジネスシナリオ３７から受信した業務処理の結果のビジネスオブジェクトを受け、レスポンスオブジェクトに変換してファサード３１へ受け渡す機能を有する。なお、デリゲート３５−１〜３５−ｎはそれぞれ、ビジネスシナリオ３７−１〜３７−ｎに対応している。
【００３０】
ビジネスシナリオ３７は、ＥＪＢであり、業務処理を実施する機能と、業務処理の結果を、デリゲート３５を介してプロキシ２５へ返送する機能を有する。また、ビジネスシナリオ３７は、インテグレーション層のＤＡＯ（Ｄａｔａ　Ａｃｃｅｓｓ　Ｏｂｊｅｃｔ）４１やＳＡＯ（Ｓｙｓｔｅｍ　Ａｃｃｅｓｓ　Ｏｂｊｅｃｔ）４３にビジネスオブジェクトを受け渡し、インテグレーション層を介してリソース層のＤＢＭＳ（Ｄａｔａｂａｓｅ　Ｍａｎａｇｅｍｅｎｔ　Ｓｙｓｔｅｍ）５１にアクセスしたり、外部システム５３との連携を行う機能を有する。
【００３１】
（４）インテグレーション層
インテグレーション層は、ＤＡＯ４１及びＳＡＯ４３を備え、データベースへのアクセスや、外部システムとの連携を行う。ビジネス層のビジネスシナリオ３７から受けたビジネスオブジェクト内の情報に基づき、アクセスオブジェクトであるＤＡＯ４１及びＳＡＯ４３が外部システム、リソースとの接続をする。インテグレーション層は、ビジネスシナリオ３７の指示により、データベースを管理する一般のソフトウェアであるＤＢＭＳ５１へのアクセスを実行し、データを操作するＤＡＯ４１、及び、外部システムへのアクセスを実行し、外部システム５３との相互動作を行うＳＡＯ４３を含む。
【００３２】
（５）リソース層
リソース層は、インテグレーション層よりアクセスされるデータベースや外部システムであり、データを記憶し、データの管理を行うＤＢＭＳ５１及びアプリケーション提供システム６０が提供するアプリケーションと相互動作する他のアプリケーションを提供する外部システム５３を備える。
【００３３】
次に、アプリケーション提供システム６０の動作を説明する。図１３は、アプリケーション提供システム６０の動作フローを示す。
ウェブクライアント１１は、ブラウザ１２から、アプリケーションの実行を要求する。すなわち、ブラウザ１２は、ネットワークＮを介してビューフローコントローラ２１へＨＴＴＰリクエストを送信する。ＨＴＴＰリクエストの宛先であるＵＲＩ（Ｕｎｉｖｅｒｓａｌ　Ｒｅｓｏｕｒｃｅ　Ｉｄｅｎｔｉｆｉｅｒ）は、ビューフローコントローラ２１へのアクセスアドレス及び要求したアプリケーションの業務処理の種別を示すイベントＩＤからなる。例えば、ＵＲＩが「ｈｔｔｐ：／／ｈｏｓｔｎａｍｅ：ｐｏｒｔ／ｅｖｅｎｔＩｄ」であった場合、ビューフローコントローラ２１のホスト名は「ｈｔｔｐ：／／ｈｏｓｔｎａｍｅ」であり、イベントＩＤは続く「ｅｖｅｎｔＩｄ」に示される値である。また、ＨＴＴＰリクエストには、アプリケーションの業務処理に必要な入力パラメータが含まれる。例えば、「業務」が「オンラインバンキング」アプリケーションの「銀行口座の照会」であった場合、入力パラメータは、「口座番号」である。
【００３４】
ビューフローコントローラ２１は、ブラウザ１２からのＨＴＴＰリクエストを受信すると、ＵＲＩを解析し、アプリケーションの業務処理が要求されていることを認識する（ステップＳ１００）。すると、データベース２２に記憶されているマッピング情報、画面遷移情報及び入力チェック情報を取得し、ブラウザ１２とのセッションを開始する。次に、読み出した入力チェック情報に基づき、受信したＨＴＴＰリクエストに含まれる入力パラメータの型や桁数、許容範囲内の値であるかなどをチェックし、さらに、必須パラメータが全て設定されているか否かをチェックする（ステップＳ１１０）。入力パラメータのチェックがＯＫであった場合、読み出したマッピング情報により、イベントＩＤに対応したシナリオＩＤを取得する。そして、取得したシナリオＩＤ及び受信した入力パラメータを設定したリクエストオブジェクトを生成し、プロキシ２５へ受け渡す（ステップＳ１２０）。なお、入力パラメータのチェックがＮＧであった場合には、エラーを表示するためのビュー２３をウェブクライアント１１のブラウザ１２へ返送する。
プロキシ２５は、ファサード３１へアクセスし、ビューフローコントローラ２１から受信したリクエストオブジェクトを受け渡す。これにより、プレゼンテーション層において、ビジネス層内のＥＪＢの参照の取得、メソッドの実行、リクエストオブジェクト・レスポンスオブジェクトのやりとりが隠蔽される。
【００３５】
ファサード３１は、プロキシ２５からリクエストオブジェクトを受けると、ビジネスマッピング３３へどのビジネスシナリオ３７を実行すべきかを問い合わせる。すると、ビジネスマッピング３３は、受け取ったリクエストオブジェクト内のシナリオＩＤから、業務処理を行うビジネスシナリオ３７を選択すると、ビジネスシナリオ３７をハンドリングするデリゲート３５を生成し、ファサード３１へ受け渡す。ここでは、ビジネスシナリオ３７−１が選択され、デリゲート３５−１が生成されてファサード３１へ通知されたとする。ファサード３１は、生成されたデリゲート３５−１へリクエストオブジェクトを受け渡す。デリゲート３５−１は、受け取ったリクエストオブジェクトからビジネスシナリオ３７−１が業務処理に必要なデータを取り出して、ビジネスシナリオ３７−１が使用するビジネスオブジェクト内に設定し、ビジネスシナリオ３７−１へ受け渡して業務処理を要求する（ステップＳ１３０）。ビジネスシナリオ３７−１は、デリゲート３５−１から受けたビジネスオブジェクトに従って業務処理を行う。ビジネスシナリオ３７−１は、必要に応じて、ビジネスオブジェクトをインテグレーション層のＤＡＯ４１あるいはＳＡＯ４３に受け渡し、ＤＡＯ４１を介してＤＢＭＳ５１によりデータの操作を行ったり、ＳＡＯ４３を介して外部システム５３と相互動作する。これにより、インテグレーション層は、ビジネス層に対してリソース層への接続を隠蔽し、ビジネスオブジェクトにより処理結果を受け渡す。
【００３６】
ビジネスシナリオ３７−１は、業務処理を終えると、ビジネスオブジェクトによりデリゲート３５−１へ業務の処理結果を受け渡す（ステップＳ１４０）。ビジネスオブジェクト内の処理結果には、処理の状態を示すステータスと、出力パラメータが含まれる。ステータスは、例えば、「全てＯＫ」，「ＮＧ」，「データなし」などである。デリゲート３５−１は、ビジネスシナリオ３７−１から受け取ったビジネスオブジェクトをレスポンスオブジェクトに変換してファサード３１へ受け渡し、ファサード３１は、さらに、受け取ったレスポンスオブジェクトをプロキシ２５へ返送する。プロキシ２５は、受け取ったレスポンスオブジェクトをビューフローコントローラ２１へ受け渡す。
【００３７】
ビューフローコントローラ２１は、レスポンスオブジェクトを受けると、レスポンスオブジェクト内のステータスを読み出し（ステップＳ１５０）、ステップＳ１１０においてデータベース２２から読み出した画面遷移情報から次に表示する画面を選択し、レスポンスオブジェクト内の出力パラメータを基にビュー２３を生成する（ステップＳ１６０）。すなわち、Ｊａｖａ（登録商標）プログラムのコンポーネントであるＪａｖａ（登録商標）Ｂｅａｎｓ（Ｂｅａｎ）を利用したＪＳＰにより、ビュー２３を作成する。なお、このとき、同一セッション内に保持しているデータを使用してもよい。ビューフローコントローラ２１は、ネットワークＮを介して、生成したビュー２３を表示するＨＴＴＰレスポンスをウェブクライアント１１のブラウザ１２へ送信する（ステップＳ１７０）。クライアントのブラウザ１２が受信したビューを表示することにより、ユーザは業務の処理結果を確認する。
【００３８】
２．アプリケーション開発支援システム
２．１　構成
次に、本実施の形態によるアプリケーション開発支援システムの構成について説明する。図１は、一実施の形態によるアプリケーション開発支援システムの構成を示すブロック図である。
アプリケーション開発支援システム８０は、例えば、パーソナルコンピュータであり、ビューフローツール部８１及びビジネスシナリオツール部８５から構成される。
【００３９】
ビューフローツール部８１は、アプリケーション提供システム６０が提供するアプリケーションに従い、ウェブクライアント１１のブラウザ１２へ表示する画面の遷移、すなわち、アプリケーション提供システム６０のプレゼンテーション層が生成するビュー２３の遷移を定義し、シミュレーションする機能と、アプリケーション提供システム６０におけるアプリケーション開発に有用なファイルを生成する機能とを有する。ビューフローツール部８１は、画面遷移定義部８２、ファイル生成部８３、画面遷移シミュレーション部８４及びビジネスシナリオ連携部８８からなる。
【００４０】
画面遷移定義部８２は、キーボードやマウスなどの入力手段からのユーザの入力に従い、ウェブクライアント１１のブラウザ１２へ表示する画面の基本デザインである基本画面ファイル及び業務処理を擬似するオブジェクト間の遷移、及び、遷移の条件などからなる画面遷移定義の情報を取得し、記録媒体に記憶する機能を有する。
【００４１】
ファイル生成部８３は、画面遷移定義部８２が取得した画面遷移定義の情報を基に、画面遷移シミュレーション部８４が実行するシミュレーション及びアプリケーション提供システム６０上のアプリケーションの開発に有用なファイルを自動生成する機能を有する。なお、生成されるファイルについては、後述する。
【００４２】
画面遷移シミュレーション部８４は、画面制御サーブレット９１及び擬似プロキシ９２を備え、ファイル生成部８３が生成したファイルを読み込み、画面の遷移をシミュレーションする機能を有する。
擬似プロキシ９２は、アプリケーションシステム６０のプロキシ２５の動作を擬似し、画面制御サーブレット９１から入力情報を受け、業務処理を擬似するオブジェクトから処理結果を取得し、画面制御サーブレット９１に返送する機能を有する。
画面制御サーブレット９１は、ＪＳＰコンテナ及びサーブレットコンテナを備え、アプリケーション開発支援システム８０が備える一般的なブラウザから受けた入力情報を擬似プロキシ９２に受け渡す機能と、擬似プロキシ９２から処理結果を取得し、画面情報を生成してブラウザへ返却する機能を有する。
【００４３】
ビジネスシナリオ連携部８８は、画面遷移定義部８２により定義され、プレゼンテーション層の画面遷移を示すビューフローシナリオ一覧と、ビジネスシナリオツール部８５により生成され、アプリケーション提供システム６０に実装されるビジネスシナリオ３７のシナリオＩＤ及び処理結果のステータスからなるビジネスシナリオステータス一覧ファイルとをマッピングする機能を有する。なお、ビューフローシナリオ一覧ファイルとビジネスシナリオステータス一覧ファイルの詳細については、後述する。
【００４４】
ビジネスシナリオツール部８５は、ビジネスシナリオ定義入力部８６及びファイル生成部８７からなる。
ビジネスシナリオ定義入力部８６は、ビジネス層構築担当者がキーボードやマウスなどの入力手段から、アプリケーション提供システム６０に実装されるビジネスシナリオ３７のシナリオＩＤや処理結果のステータスなどを取得する機能を有する。
ファイル生成部８７は、ビジネスシナリオ定義入力部８６が取得したシナリオＩＤや処理結果のステータスから、ビジネスシナリオステータス一覧ファイルを生成する機能を有する。
【００４５】
続いて、ビューフローツール部８１のファイル生成部８３が生成するファイルについて説明する。
＜画面デザインファイル＞
画面のデザインを示すＨＴＭＬファイルであり、ビューフローツール部８１の画面遷移定義部８２に読み込まれた基本画面ファイルを基に生成されるが、画面遷移定義に従って、ＨＴＭＬタグである＜ｆｏｒｍ＞のａｃｔｉｏｎや、リンク先、変動データにより表示が変動する表示変動箇所などが設定される。なお、＜ｆｏｒｍ＞のａｃｔｉｏｎは、遷移元の画面からデータを引き渡すために使用される。また、変動データとは、アプリケーション提供システム６０において、ビジネスシナリオ３７の業務処理の結果や、ウェブクライアント１１から受信したＣｏｏｋｉｅなどにより、値や内容が変動するデータである。表示変動箇所には、使用する変動データのｉｄと、変動データのＨＴＭＬタグが含まれる。
なお、シミュレーションする画面デザインに修正がある場合には、本画面デザインファイルのみを修正するだけでよく、以下の画面生成ファイルや変動データ表示生成ファイルを修正する必要はない。
【００４６】
＜画面生成ファイル＞
画面デザインファイルを生成するためのＪＳＰのコードであり、画面デザインファイルに設定された変動データのｉｄと変動データのＨＴＭＬタグとを基に生成される。変動箇所は、変動データ表示生成ファイルを基に生成されるクラスから取得して生成される。
＜変動データ表示生成ファイル＞
画面生成ファイルは、ＪＳＰにより使用されるＪａｖａ（登録商標）プログラムのコンポーネントであるＪａｖａ（登録商標）Ｂｅａｎｓ（Ｂｅａｎ）のコードである。変動データ表示生成ファイルから生成されるクラスであるＢｅａｎは、ＪＳＰが表示する変動データを隠蔽する。
【００４７】
＜画面遷移定義ファイル＞
画面遷移を定義するファイルであり、イベントＩＤ、イベント名、シナリオＩＤ、シナリオ名、リクエストハンドラー、プリミティブチェック情報、プリミティブチェックエラー時の画面、ステータス、ステータス毎の次画面、レスポンスハンドラーなどの情報からなる。このファイルはアプリケーション提供システム６０のデータベース２２内に登録することにより、マッピング情報、画面遷移情報及び入力チェック情報として使用される。なお、入力チェック情報は、プリミティブチェック情報に相当する。
【００４８】
＜リクエストハンドラーファイル＞
アプリケーション提供システム６０内のインタフェースであるリクエストオブジェクトをプレゼンテーション層からビジネス層へ受け渡すためのクラスのコードであり、リクエストオブジェクトで使用するリクエストデータを設定する。また、画面遷移シミュレーション部８４の画面制御サーブレット９１から擬似プロキシ９２への入力情報を受け渡すためにも使用される。
＜レスポンスハンドラーファイル＞
アプリケーション提供システム６０内のインタフェースであるレスポンスオブジェクトをビジネス層から受けたプレゼンテーション層が、レスポンスオブジェクト内のレスポンスデータから出力データを取得し、ＪＳＰが使用するＢｅａｎへ業務処理結果を渡すためのクラスのコードである。また、画面遷移シミュレーション部８４の擬似プロキシ９２から画面制御サーブレット９１へ処理結果を受け渡すためにも使用される。
【００４９】
＜シミュレーション用ステータス設定ファイル＞
シミュレーション時に使用されるファイルであり、シナリオＩＤと、シナリオＩＤに対して返されるステータスが含まれる。
＜ビューフローシナリオ一覧ファイル＞
プロジェクト（アプリケーション）で定義された全てのシナリオに対するシナリオＩＤ、シナリオ名、シナリオ概要、及び、それぞれのシナリオが持っている全てのステータスとその概要が設定される。ビジネス層のビジネスシナリオ３７の開発時に、プレゼンテーション層でどのような定義を行ったかを確認するために使用さる。
＜ドキュメントファイル＞
画面遷移定義部８２において定義した画面遷移に関する情報全てを含むファイルである。
【００５０】
また、ビジネスシナリオツール部８５のファイル生成部８７が生成するファイルを以下に示す。
＜ビジネスシナリオステータス定義ファイル＞
ビューフローシナリオ一覧ファイルと同様の情報を保有し、アプリケーション提供システム６０のビジネス層において実装された全てのビジネスシナリオ３７に対するシナリオＩＤ、シナリオ名、シナリオ概要、及び、それぞれのシナリオが持っている全てのステータスとその概要が設定される。
【００５１】
アプリケーション開発支援システム８０及び生成されるファイルは、以下のように使用される。
・アプリケーションシステム６０のアプリケーションの仕様策定者は、ウェブクライアント１１のブラウザ１２へ表示する画面の基本デザインである基本画面ファイルを基に、画面遷移定義部８２により画面遷移を定義する。そして、画面遷移シミュレーション部８４により、画面遷移定義部８２で定義したアプリケーションの画面遷移をシミュレーションし、アプリケーションの開発依頼元の企業や部署と仕様を確認する。仕様に変更がある場合、対象箇所の基本画面ファイル生成や画面遷移の定義をし直し、シミュレーションによる確認を繰り返してアプリケーションの仕様を策定する。あるいは、アプリケーションを開発している企業が、アプリケーションの開発中に、画面遷移イメージを顧客にプレゼンテーションして販売促進を行うことも想定できる。
・アプリケーション提供システム６０のプレゼンテーション層構築担当者は、仕様策定者が定義した画面遷移を基に生成された画面デザインファイル、リクエストハンドラーファイル、レスポンスハンドラーファイルを利用してプレゼンテーション層を構築する。
・アプリケーション提供システム６０のビジネス層構築担当者は、ビューフローシナリオ一覧ファイルを参照して、ビジネス層のビジネスシナリオ３７や、ビジネスマッピング３３が使用するデータベース３４内のデータを生成する。ビューフローシナリオ一覧ファイルには、プレゼンテーション層において定義した画面情報、リクエスト、シナリオ名及びシナリオＩＤが漏れなくリストアップされているため、ビジネス層の構築において、実装の漏れを防ぐことが可能となる。
・アプリケーションシステム６０のビジネス層・プレゼンテーション層連結者は、ビューフローツール部８１の画面遷移定義部８２で定義したビューフローシナリオ一覧及びファイル生成部８７が生成したビジネスシナリオステータス一覧ファイルとを、ビューフローツール部８１のビジネスシナリオ連携部８８を使用してマッピングし、画面遷移定義ファイルを生成する。プレゼンテーション層構築担当者は、生成された画面遷移定義ファイルをアプリケーション提供システム６０のデータベース２２に投入することにより、ビューフローコントローラ２１が生成するビュー２３と、ビジネスシナリオ３７とをコーディングなしで連結することができる。
【００５２】
２．２　アプリケーション開発支援システム８０の動作
次に、アプリケーション開発支援システム８０の動作について説明する。
２．２．１　画面遷移定義
まず、画面遷移定義の手順について説明する。図２は、画面遷移定義の手順を示す図である。
仕様策定者は、アプリケーション開発支援システム８０を使用する前に、アプリケーション開発の依頼元の企業や部署などの要望をもとに、一般的なエディタを用いてＨＴＭＬにより基本画面ファイルを作成し、アプリケーション開発支援システム８０内のメモリ、フレキシブルディスク、あるいは、ネットワークを介してアプリケーション開発支援システム８０と通信可能なコンピュータなどに保存しておく。なお、ウェブクライアント１１がＨＴＴＰリクエストを送信する画面に相当する基本画面ファイルには、例えば、＜ｆｏｒｍ　ｎａｍｅ＝”ｆ１”ａｃｔｉｏｎ＝””、あるいは、＜ａ　ｎａｍｅ＝”ａ１”　ｈｒｅｆ＝””＞のように、リクエストを発生させる部分のＨＴＭＬタグに予め”ｎａｍｅ”属性値を記述しておく。また、処理結果などを表示するための変動データの箇所には、ｉｄ属性値を設定しておく。
【００５３】
仕様策定者は、アプリケーション開発支援システム８０のビューフローツール部８１を起動し、操作画面を表示させる。そして、アプリケーション開発支援システム８０内にインストールされている一般的なファイル操作ソフト上からビューフローツール部８１の操作画面に基本画面ファイルのアイコンをドラッグするなどして、事前に作成しておいた基本画面ファイルをビューフローツール部８１の画面遷移定義部８２内に読み込む操作を行う（ステップＳ２００）。すると、画面遷移定義部８２は、操作画面上に、基本画面ファイルを示す画面オブジェクトを表示し、基本画面ファイルからファイル名、画面からのリクエスト発生に関するタグ情報を読み出し、メモリ上に保持する（ステップＳ２０５）。
【００５４】
次に、仕様策定者は、アプリケーション提供システム６０のビジネスシナリオ３７の業務処理、あるいは、ビューフローコントローラ２１内の処理を具象化したシナリオオブジェクトを操作画面上に配置する操作を行う（ステップＳ２１０）。画面遷移定義部８２は、操作画面上に、シナリオオブジェクトを表示する（ステップＳ２１５）。
【００５５】
続いて、仕様策定者は、ＨＴＴＰリクエストを送信するときにウェブクライアント１１のブラウザ１２に表示されている画面、すなわち、遷移元となる画面に対応する画面オブジェクトから、業務処理を行うビジネスシナリオ３７に対応するシナリオオブジェクトへ遷移することを示す遷移線を引く（ステップＳ２２０）。すると、画面遷移定義部８２は、遷移元の画面のどこからＨＴＴＰリクエストを発生させるかを選択するための「イベント発生元選択画面」を表示する（ステップＳ２２５）。仕様策定者は、「イベント発生元選択画面」から＜ｆｏｒｍ＞タグ、あるいは、＜ａ　ｈｒｅｆ＞タグをイベント発生元として選択する（ステップＳ２３０）。画面遷移定義部８２は、画面オブジェクトのイベント発生元と、遷移先のシナリオを対応付けて記憶する（ステップＳ２３５）。
【００５６】
次に、仕様策定者が、操作画面上の画面オブジェクトを右クリックすると（ステップＳ２４０）、画面遷移定義部８２は、「画面オブジェクト設定画面」を表示する（ステップＳ２４５）。仕様策定者は、「画面オブジェクト設定画面」に従い、画面ファイル名及び画面名の設定、データ変動箇所や遷移先情報の一覧の確認、及び、イベントの設定と確認を行う（ステップＳ２５０）。データ変動箇所は、予め基本画面ファイルに設定されている変動データを読み出して表示される。イベントの設定においては、イベントＩＤ、イベント概要、致命的エラー発生時に表示すべき画面ファイル（エラー画面）、プリミティブチェック情報を入力する。プリミティブチェック情報の設定では、チェック対象のデータのＨＴＭＬのタグ名、文字列／半角数字などの型、最大値・最小値または最大桁・最小桁、必須／オプションなどの情報、及び、プリミティブチェックエラー時に表示すべきエラー画面を入力する。また、イベントの確認においては、ステップＳ２３５において設定したイベントの発生元、遷移線の接続により遷移先として指定された遷移先の画面の情報などを確認する。そして、仕様策定者が設定の了解のボタンを押下すると、画面遷移定義部８２は、当該画面オブジェクトから発生するイベントと、画面オブジェクトの遷移先を対応付け、「画面オブジェクト設定画面」に入力された情報を記憶する（ステップＳ２５５）。
なお、仕様策定者がステップＳ２５０において設定した致命的エラー発生時のエラー画面を操作画面上に配置すると、画面遷移定義部８２は、画面オブジェクトの遷移先のシナリオオブジェクトから、配置されたエラー画面へ致命的エラーの遷移線を引く。同様に、仕様策定者がステップＳ２５０において設定したプリミティブエラー発生時のエラー画面を操作画面上に配置すると、画面遷移定義部８２は、画面オブジェクトの遷移先のシナリオオブジェクトから、配置されたエラー画面へ致命的エラーの遷移線を引く。
【００５７】
次に、仕様策定者が、操作画面上のシナリオオブジェクトを右クリックすると（ステップＳ２６０）、画面遷移定義部８２は、「シナリオオブジェクト設定画面」を表示する（ステップＳ２６５）。仕様策定者は、「シナリオオブジェクト設定画面」に、シナリオオブジェクトのシナリオ名、シナリオＩＤ、シナリオ概要、処理結果として発生するステータスのステータス名及びステータス概要を設定する（ステップＳ２７０）。なお、シナリオＩＤはユニークでなければならず、画面遷移定義部８２は、使用されているシナリオＩＤを内部に記憶している。そして、「シナリオオブジェクト設定画面」を開いたときに、これまでに使用されている最も大きい値のシナリオＩＤに１加算したシナリオＩＤをデフォルトで表示する。ただし、シナリオＩＤを変更することは可能である。画面遷移定義部８２は、ステップＳ２７０において仕様策定者が設定した情報を記憶する（ステップＳ２７５）。
【００５８】
次に、仕様策定者は、操作画面上のシナリオオブジェクトから遷移先の画面オブジェクトへ遷移線を引くと（ステップＳ３００）、画面遷移定義部８２は、「ステータス選択画面」を表示する（ステップＳ３０５）。仕様策定者は、「ステータス選択画面」に表示されるステータスの一覧から、シナリオオブジェクトが出力する処理結果のステータスを選択する（ステップＳ３１０）。「ステータス選択画面」に表示されるステータスの一覧は、ステップＳ２７５において、画面遷移定義部８２が記憶したシナリオオブジェクトのステータスである。画面遷移定義部８２は、ビジネスシナリオ３７が出力する処理結果のステータスと遷移先画面オブジェクトを対応付けて記憶する（ステップＳ３１５）。そして、画面オブジェクトに対応した画面ファイルには、シナリオ名、ステータス名、遷移先画面名が設定される。
【００５９】
次に、最初の画面表示に戻るなど、単なるリンクによる画面遷移があれば、遷移元の画面オブジェクトから遷移先の画面オブジェクトに遷移線を引く（ステップＳ３２０）。画面遷移定義部８２は、画面オブジェクト間のリンクによる遷移を対応づけて一時的に記憶する（ステップＳ３２５）。例えば、リンク元の画面オブジェクトのタグ＜ａ　ｎａｍｅ＝”ａ１”　ｈｒｅｆ＝””＞であり、リンク先の画面オブジェクトが「ｊｕｍｐ．ｈｔｍｌ」であった場合、リンク元の画面オブジェクトのタグは、＜ａ　ｎａｍｅ＝”ａ１”　ｈｒｅｆ＝”ｊｕｍｐ．ｈｔｍｌ”＞に変化する。
【００６０】
仕様策定者及び画面遷移定義部８２は、上記のステップＳ２００〜Ｓ３２５を繰り返すことにより、画面遷移を定義する（ステップＳ３３０）。
そして、画面遷移定義を終了すると、仕様策定者は、定義した画面遷移をシミュレーションするときに、シナリオオブジェクトからどのステータスを返送するかのシミュレーション用の処理結果を選択する（ステップＳ３４０）。すなわち、仕様策定者は、シナリオオブジェクトを右クリックし、シミュレーション用ステータス設定のメニューを選択すると、画面遷移定義部８２は、「シミュレーション用ステータス設定画面」を開き、ステップＳ２７５において、画面遷移定義部８２が記憶したシナリオオブジェクトのステータスの一覧を表示する。仕様策定者は、シミュレーション時に発生させるステータスを１つ選択する。画面遷移定義部８２は、仕様策定者が選択したシミュレーション用のステータスを記憶する（ステップＳ３４５）。
【００６１】
最後に、仕様策定者は、保存のための操作を行うと（ステップＳ３５０）、画面遷移定義部８２は、内部に記憶していた情報を読み出し、画面遷移及びシミュレーションに必要な情報を記述したファイルを生成し、記録媒体に保存する（ステップＳ３５５）。なお、生成するファイルは、ＸＭＬ形式により記述される。
【００６２】
ここで、画面遷移定義を行う操作画面について説明する。図３は、画面遷移定義を行うビューフローツール部８１の操作画面を示す図である。
操作画面は、ツリーウィンドウ及びパレットからなる。
パレットは、画面遷移を定義する画面である。パレットには、画面オブジェクト及びシナリオオブジェクトが配置されている。そして、画面オブジェクトとシナリオオブジェクト間、あるいは、画面オブジェクト間をつなぐ線は、遷移線であり、矢印の方向へ遷移する、あるいは、参照関係があることを示している。図においては、画面オブジェクト「ｒｅｆｅｒ．ｈｔｍｌ（参照）」からシナリオオブジェクト「参照処理」へ遷移し、次に、画面オブジェクト「ｒｅｓｕｌｔ．ｈｔｍｌ（参照結果）」に遷移することを示している。また、画面オブジェクト「ｒｅｓｕｌｔ．ｈｔｍｌ（参照結果）」は、画面オブジェクト「ｒｅｆｅｒ．ｈｔｍｌ（参照）」を参照することを示している。
ツリーウィンドウに表示されるツリーには、存在する複数のパレットが並び、その下にシナリオフォルダ及び画面フォルダが１つづつ存在する。シナリオフォルダの配下には、シナリオオブジェクトが、画面フォルダの配下には画面オブジェクトが存在する。これらは、オブジェクトの実体であり、インスタンスと呼ばれる。図においては、プロジェクト名「プロジェクトＸ」の配下にパレット１、２が存在し、シナリオオブジェクトには、「参照処理」が存在し、画面オブジェクトには、「ｒｅｆｅｒ．ｈｔｍｌ」、「ｒｅｓｕｌｔ．ｈｔｍｌ」及び「ｎｏｄａｔａ．ｈｔｍｌ」が存在することを示している。
また、画面オブジェクト「ｒｅｆｅｒ．ｈｔｍｌ（参照）」からシナリオオブジェクト「参照処理」遷移線の上には、ステップＳ２１０〜Ｓ２３５において設定したイベント発生元が「ｆ１」に、イベントＩＤ名が「ｅｖｅｎｔ１」に表示される。また、シナリオオブジェクト「参照処理」から画面オブジェクト「ｒｅｓｕｌｔ．ｈｔｍｌ（参照結果）」への遷移線の上には、ステップＳ３００〜Ｓ３１５において設定したステータス名である「Ａｌｌ」が表示されている。そして、画面オブジェクト「ｒｅｓｕｌｔ．ｈｔｍｌ（参照結果）」から画面オブジェクト「ｒｅｆｅｒ．ｈｔｍｌ（参照）」への遷移線には、ステップＳ３２０〜Ｓ３２５の手順により、リンクが設定されたことを示す「ｌｉｎｋ」が表示されている。
【００６３】
また、図４は、ステップＳ２４０〜Ｓ２５５において設定したエラー画面の配置に伴う遷移線の描画を示す図である。
例えば、ステップＳ２４０〜Ｓ２５５において、画面オブジェクト「ｒｅｆｅｒ．ｈｔｍｌ（参照）」のプリミティブチェックエラー時に表示すべきエラー画面として「Ｐ−Ｅｒｒ．ｈｔｍｌ」を入力する。この場合、（１）ツリーウィンドウから画面オブジェクト「Ｐ−Ｅｒｒ．ｈｔｍｌ」を選択し、ドラッグしてパレット上に配置すると、（２）遷移先のシナリオオブジェクト「参照処理」から自動的に画面オブジェクト「Ｐ−Ｅｒｒ．ｈｔｍｌ」へ遷移線が引かれることを示している。また、遷移線の上には、プリミティブチェックエラー時に遷移することを示す「ＰｒｉｍｉｔｉｖｅＮＧ」が表示される。なお、致命的エラー発生時のエラー画面についても同様であるが、遷移線の上には「致命的エラー」が表示される。
【００６４】
２．２．２　ファイル生成
次にファイル生成の手順について説明する。図５は、ファイル生成の手順を示す図である。
仕様策定者は、ビューフローツール部８１の操作画面のメニューからファイル生成のためのメニューである「一括生成」を選択する（ステップＳ４００）。すると、ファイル生成部８３は、図２のステップＳ３５５において画面遷移定義部８２が保存していたファイルを読み出し、画面デザインファイル、画面生成ファイル、変動データ表示生成ファイル、画面遷移定義ファイル、リクエストハンドラーファイル、レスポンスハンドラーファイル、シミュレーション用ステータス設定ファイル、ビューフローシナリオ一覧ファイル及びドキュメントファイルを生成し、記録媒体に記憶する（ステップＳ４０５）。
【００６５】
生成された画面デザインファイルは、画面遷移定義において自動で埋め込まれた情報がある以外は、最初に画面遷移定義のステップＳ２００で読み込んだ内容と同じである。プレゼンテーション構築担当者は、生成された画面デザインファイルを元に、画面デザインを変更、改良してアプリケーションシステム６０に実装することができる。また、変更された画面デザインファイルを再びアプリケーション開発支援システム８０内に上書きすることにより、シミュレーションに使用することが可能となる。
【００６６】
画面生成ファイル及び変動データ表示生成ファイルは、画面遷移定義に埋め込まれた変動データの属性情報をもとに生成される。
図６は、変動データ表示生成ファイルの生成を示す図である。図は、基本画面ファイル「ｅｘａｍｐｌｅ．ｈｔｍｌ」から、画面デザインファイル「ｅｘａｍｐｌｅ．ｈｔｍｌ」、及び、変動データ表示生成ファイル「ｅｘａｍｐｌｅ．ｊｓｐ」が生成される例を示している。画面デザインファイル「ｅｘａｍｐｌｅ．ｈｔｍｌ」のＨＴＭＬタグに、変動データの属性情報が記述されている箇所
＜ａ　ｉｄ＝”ａ１”　ｎａｍｅ＝”ａ１”　ｈｒｅｆ＝”ｊｕｍｐ．ｈｔｍｌ”＞
に対応する箇所は、変動データ表示生成ファイル「ｅｘａｍｐｌｅ．ｊｓｐ」においては、
＜％＝ｏｂｊ．ｔｏＳｔｒｉｎｇＡ１（）　％＞
となる。これは、ＪＳＰが使用するＢｅａｎのインスタンスである「ｏｂｊ」により、メソッド「ｔｏＳｔｉｒｎｇ＋設定したｉｄ属性値」がコールされるようなＪＳＰが生成されることを示している。
【００６７】
また、図７は、図６の変動データ表示生成ファイルに対応して生成されるＢｅａｎを示す図である。Ｂｅａｎのメソッドを以下に示す。なお、以下に示すＸＸは、変動データのｉｄ属性値に対応する。
ＥｘａｍｐｌｅＢｅａｎ（）：コンストラクタであり、変動データのｉｄ属性が定義されたＴａｇＥｌｅｍｅｎｔを生成し、デフォルト値を設定する。
ＴａｇＥｌｅｍｅｎｔ　ｇｅｔＥｌｅｍｅｎｔＸＸ（）：変動データのｉｄに対応するＴａｇＥｌｅｍｅｎｔのインスタンスを取得するためのメソッドである。取得したＴａｇＥｌｅｍｅｎｔに対して、各種設定をすることにより、動的な画面を生成する。
ｖｏｉｄ　ｓｅｔＴｅｘｔＸＸ（Ｓｔｒｉｎｇ　ｔｅｘｔ）：指定されたテキストを持つＴｅｘｔＥｌｅｍｅｎｔを生成して、子ＴａｇＥｌｅｍｅｎｔとして設定するカバーメソッドを提供する。これにより、動的なテキストの設定がより簡略化される。
ｖｏｉｄ　ｓｅｔＨｒｅｆＸＸ（Ｓｔｒｉｎｇ　ｈｒｅｆ）：指定されたｈｒｅｆ属性値を設定するカバーメソッドを提供する。これにより、動的なハイパーリンクの設定がより簡略化される。
ｖｏｉｄ　ｓｅｔＳｒｃＸＸ（Ｓｔｒｉｎｇ　ｔｅｘｔ）：指定されたｓｒｃ属性値を設定するカバーメソッドを提供する。これにより、動的な画像の設定がより簡略化される。
ｖｏｉｄ　ｓｅｔＡｌｔＸＸ（Ｓｔｒｉｎｇ　ｔｅｘｔ）：指定されたａｌｔ属性値を設定するカバーメソッドを提供する。これにより、動的な画像の設定がより簡略化される。
ｔｏＳｔｒｉｎｇＸＸ（）：変動データのｉｄに対応するＴａｇＥｌｅｍｅｎｔに対して出力を行うメソッドである。ＪＳＰ内では、これだけを使用する。
また、レスポンスハンドラーファイルは、アプリケーション提供システム６０のビジネス層からプレゼンテーション層へ返送されるレスポンスオブジェクトのレスポンスデータから出力データを取得し、ＪＳＰが使用するＢｅａｎが使用するｓｅｔＴｅｘｔＸＸ、ｓｅｔＨｒｅｆＸＸ、ｓｅｔＳｒｃＸＸ、ｓｅｔＡｌｔＸＸ等に設定して業務処理結果を渡すためのクラスのコードを含んでいる。
【００６８】
２．２．３　シミュレーション
次に、シミュレーションの手順について説明する。図８は、シミュレーションの手順を示す図である。
仕様策定者は、ビューフローツール部８１を起動することによって表示された操作画面のメニューから「シミュレーション準備」を選択する（ステップＳ５００）。すると、画面遷移シミュレーション部８４は、図３のステップＳ４０５において、ファイル生成部８３が生成したファイルをコンパイルし、ＪＳＰ及びＢｅａｎを含む実行環境を起動する（ステップＳ５０５）。続いて、画面制御サーブレット９１及擬似プロキシ９２を起動する（ステップＳ５１５）。
一方、仕様策定者は、アプリケーション開発支援システム８０が備える一般的なブラウザから、シミュレーションしたい遷移元画面に相当する画面デザインファイルを読み込む（ステップＳ５２０）。そして、ブラウザに表示された遷移元画面内のサブミットボタンなどをクリックし、イベントを発生させる（ステップＳ５３０）。すると、ステップＳ５１５で起動した画面遷移シミュレーション部８４内の画面制御サーブレット９１がブラウザからの入力を受け付け、リクエストハンドラーファイルから生成されたクラスを使用して、擬似プロキシ９２をコールして受信したイベントＩＤを受け渡す。擬似プロキシ９２は、シミュレーション用ステータス設定ファイルを読み出し、受け取ったイベントＩＤに対するステータスを取得すると、レスポンスハンドラーファイルから生成されたクラスを使用して画面制御サーブレット９１に受け渡す。このステータスは、ビジネス層の処理結果に相当する。画面制御サーブレット９１は、受信したステータスを基に画面遷移定義ファイルを検索して遷移先画面を読み出し、ＪＳＰへ受け渡すことによって処理結果を表示する画面情報ファイルを生成し、ブラウザへ返送する（ステップＳ５３５）。すると、ブラウザ上には遷移先画面が表示される（ステップＳ５４０）。
【００６９】
２．２．４　ビジネスシナリオとの連携
次に、プレゼンテーション層におけるビジネスシナリオとの連携の手順について図９に示す。
ビジネス層構築担当者は、パーソナルコンピュータなどを用いて、２．２．２節のファイル生成において生成されたビューフローシナリオ一覧ファイル内の業務処理名や処理結果を参照しながら（ステップＳ６００）、アプリケーション提供システム６０のビジネスシナリオ３７、すなわち、アプリケーションの業務処理のプログラムであるシナリオを新規に作成するか、あるいは、既存プログラムを再利用するなどして作成して、もれなく全てのビジネスシナリオ３７を準備する（ステップＳ６０５）。作成したビジネスシナリオ３７は、アプリケーション開発支援システム８０内のメモリ、フレキシブルディスク、あるいは、ネットワークを介してアプリケーション開発支援システム８０と通信可能なコンピュータなどに保存しておく。
【００７０】
ビジネス層構築担当者は、アプリケーション開発支援システム８０のビジネスシナリオツール部８５を起動することにより表示される操作画面上で、それぞれのビジネスシナリオ３７のシナリオ名をツール上で参照するための操作を行う（ステップＳ６２０）。すると、ビジネスシナリオツール部８５のビジネスシナリオ定義入力部８６は、指定されたビジネスシナリオ３７のシナリオ名を読み込み、操作画面上に表示する。そして、さらにビジネス層構築担当者が、各ビジネスシナリオ３７の処理結果のステータス名を入力すると、ビジネスシナリオ定義入力部８６は内部に記憶する。
続いて、ビジネス層構築担当者は、アプリケーションに合わせてシナリオを組み合わせ、例えば、「口座開設業務」というような、入力／出力のある一連の業務処理を構築する（ステップＳ６２５）。ビジネスシナリオ定義入力部８６は、構築された一連の業務を記憶する。
【００７１】
ビジネス層構築担当者は、一連の業務処理の構築を終了すると、操作画面のメニューより、「ビジネスシナリオファイル生成」を選択する（ステップＳ６３０）。すると、ビジネスシナリオツール部８５のファイル生成部８７は、ビジネスシナリオ定義入力部８６が記憶していた情報を読み出し、シナリオ名に対してシナリオＩＤを、ステータス名にステータスＩＤを付与する。そして、シナリオ名、シナリオＩＤ，ステータス名、ステータスＩＤの対応一覧である、ビジネスシナリオステータス定義ファイルを生成する（ステップＳ６５０）。なお、ビジネスシナリオステータス定義ファイルファイルは、ＸＭＬにより記述される。
【００７２】
続いて、ビジネス層・プレゼンテーション層連結者は、ビューフローツール部８１を起動し、操作画面のメニューから、「シナリオマッピング」を選択し、ステップＳ６５０で生成されたビジネスシナリオステータス定義ファイルの読込みを指定する（ステップＳ６７０）。すると、ビューフローツール部８１のビジネスシナリオ連携部８８は、指定されたビジネスシナリオステータス定義ファイル及び画面遷移定義部８２で定義したビューフローシナリオ一覧を読み込み、操作画面上に並べて表示する（ステップＳ６７５）。
ビジネス層・プレゼンテーション層連結者は、操作画面上で、ビジネスシナリオステータス定義ファイルのシナリオ名やステータス名をマウスで選択し、対応させるビューフローシナリオ一覧のシナリオ名やステータス名へドラッグすることによってマッピングを指定し（ステップＳ６８０）、マッピングの作業が終了すると、「了解」ボタンを押下する（ステップＳ６８５）。すると、ビジネスシナリオ連携部８８は、プレゼンテーション層とビジネス層のシナリオとステータスを一致させたドキュメントファイルを生成し、元のドキュメントファイルに上書きして保存する（ステップＳ６９０）。さらに、ドキュメントファイルに従い、ファイル生成部８３が生成した各種ファイルの情報が更新される。これにより、画面遷移とシナリオ、すなわち、アプリケーション提供システム６０のプレゼンテーション層とビジネス層がリンクされる。
【００７３】
図１０は、ステップＳ６７０〜Ｓ６８０におけるビューフローシナリオ一覧ファイルとビジネスシナリオステータス一覧ファイルのマッピングを行うビューフローツール部８１の操作画面を示す図である。
操作画面には、左側にビューフローシナリオ一覧ファイル内のシナリオ名及びステータス名が、右側にビジネスシナリオステータス一覧ファイル内のシナリオ名及びステータス名が表示されている。図において、ビューフローシナリオ及びビジネスシナリオの一段配下はシナリオ名を示し、シナリオ名の一段配下はステータス名を示している。
そして、操作画面上で、ビジネスシナリオ配下のシナリオ「ＰｅｒｓｏｎａｌＤａｔａＥｎｔｒｙ」を選択し、ビューフローシナリオ配下のシナリオ「ｅｎｔｒｙ」にドラッグすることで、両シナリオがマッピングされる。ビューフローシナリオ一覧ファイル内のシナリオ名の後ろには、マッピングされたビジネスシナリオステータス一覧ファイル内のシナリオ名が括弧書きで表示される。
また、ビジネスシナリオのシナリオ「ＰｅｒｓｏｎａｌＤａｔａＥｎｔｒｙ」配下のステータス「ＲｅｇｉｓｔｅｒＯＫ」を選択し、ビューフローシナリオのシナリオ「ｅｎｔｒｙ」配下のステータス「ｏｋ」にドラッグすることで、両ステータスがマッピングされる。ビューフローシナリオ一覧ファイル内のステータス名の配下には、マッピングされたビジネスシナリオステータス一覧ファイル内のステータス名が表示される。
【００７４】
また、図１１は、マッピングの結果、ステップＳ６９０において生成される画面遷移定義ファイルの内容を示す図である。
（ａ）は、マッピングを行う前の画面遷移定義ファイルを、（ｂ）は、マッピングするビジネスシナリオステータス一覧ファイルの内容を示している。ビジネスシナリオステータス一覧ファイル内のシナリオ「ＰｅｒｓｏｎａｌＤａｔａＥｎｔｒｙ」と配下のステータス「ＲｅｇｉｓｔｅｒＯＫ」が、ビューフローシナリオ一覧ファイル内のシナリオ「ｅｎｔｒｙ」と配下のステータス「ｏｋ」とマッピングされることにより、（ｃ）に示すように、画面遷移定義ファイルの対応する箇所が書き換わる。すなわち、画面遷移定義ファイル内のシナリオ名（ｓｃｅｎａｒｉｏ−ｉｄタグの箇所）が「ｅｎｔｒｙ」から、「ＰｅｒｓｏｎａｌＤａｔａＥｎｔｒｙ」に、シナリオに対応するシナリオ概要（ｓｃｅｎａｒｉｏ−ｄｅｓｃｒｉｐｔｉｏｎタグの箇所）が「登録」から「個人情報に関する登録を行う」に、ステータス（ｓｔａｔｕｓタグの箇所）が「ｏｋ」から「ＲｅｇｉｓｔｅｒＯＫ」に書き換わる。
【００７５】
３．その他
なお、アプリケーション開発支援システム８０のシミュレーション機能は、アプリケーション提供システム６０以外のアプリケーション提供システムが提供するアプリケーションの画面遷移のシミュレーションにも使用可能である。
【００７６】
なお、上述のアプリケーション開発支援システム８０、及び、アプリケーション提供システム６０は、内部にコンピュータシステムを有している。そして、上述した動作の過程は、プログラムの形式でコンピュータ読み取り可能な記録媒体に記憶されており、このプログラムをコンピュータシステムが読み出して実行することによって、上記処理が行われる。ここでいうコンピュータシステムとは、ＯＳや周辺機器等のハードウェアを含むものである。
【００７７】
また、「コンピュータ読み取り可能な記録媒体」とは、ＲＯＭの他に、磁気ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムが送信された場合のシステムやクライアントとなるコンピュータシステム内部の揮発性メモリ（ＲＡＭ）のように、一定時間プログラムを保持しているものも含むものとする。
【００７８】
また、上記プログラムは、このプログラムを記憶装置等に格納したコンピュータシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピュータシステムに伝送されてもよい。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク（通信網）や電話回線等の通信回線（通信線）のように情報を伝送する機能を有する媒体のことをいう。
また、上記プログラムは、前述した機能の一部を実現するためのものであっても良い。さらに、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル（差分プログラム）であっても良い。
【００７９】
【発明の効果】
この発明によれば、アプリケーション提供システムがクライアントのブラウザへ表示する画面の基本デザインとなる画面ファイルを利用して、アプリケーションの画面遷移を簡易に定義し、シミュレーションすることができるアプリケーション開発支援システムを提供することが可能となる。従って、高度な画面生成処理のコーティング知識を必要とせずに、簡易な画面デザインのための知識のみでアプリケーションの画面遷移を容易に定義し、シミュレーションすることが可能となり、アプリケーションに必要な画面のデザイン及び動作の仕様を確定するまでの時間を短縮することができる。
また、アプリケーション開発支援システムにおいて定義した画面遷移から、アプリケーション提供システムの画面生成処理に有用なファイルを生成することができるため、画面生成処理の開発期間を短縮することが可能となる。さらに、画面遷移定義において想定したアプリケーション処理とその処理結果の一覧を生成することができる。よって、アプリケーション処理の実装時に生成された一覧を参照することにより、アプリケーション処理の実装漏れなどのミスを防ぐことが可能となる。
また、アプリケーション提供システムに実装された実際のアプリケーション処理とその処理結果との一覧を生成し、画面遷移定義から生成したアプリケーション処理とその処理結果の一覧とマッピングさせることにより、アプリケーション提供システムが使用され、画面生成処理とアプリケーション処理とを連携するための画面遷移定義ファイルを高度なプログラミング技術なしに生成することが可能となる。
また、アプリケーション提供システムがクライアントのブラウザへ表示する画面のデザイン作業と、画面生成処理の実装とを並行して行うことができるため、開発期間の大幅な短縮が可能である。さらに、画面生成処理の実装と、アプリケーション処理の実装とを分離し、並行して行うことができるため、開発期間の大幅な短縮が可能である。
【図面の簡単な説明】
【図１】この発明の一実施の形態によるアプリケーション開発支援システムの構成を示すブロック図である。
【図２】同実施の形態による画面遷移定義の手順を示す図である。
【図３】同実施の形態による画面遷移定義を行うビューフローツール部８１の操作画面を示す図である。
【図４】同実施の形態によるエラー画面の配置に伴う遷移線の描画を示す図である。
【図５】同実施の形態によるファイル生成の手順を示す図である。
【図６】同実施の形態による変動データ表示生成ファイルの生成を示す図である。
【図７】図６の変動データ表示生成ファイルに対応して生成されるＢｅａｎを示す図である。
【図８】同実施の形態によるシミュレーションの手順を示す図である。
【図９】同実施の形態によるプレゼンテーション層におけるビジネスシナリオとの連携の手順について示す。
【図１０】同実施の形態によるビューフローシナリオ一覧ファイルとビジネスシナリオステータス一覧ファイルのマッピングを行うビューフローツール部８１の操作画面を示す図である。
【図１１】マッピングの結果生成される画面遷移定義ファイルの内容を示す図である。
【図１２】同実施の形態によるアプリケーション開発支援システムと連携するアプリケーション提供システム６０の構成を示すブロック図である。
【図１３】図１２に示すアプリケーション提供システム６０の動作フローを示す図である。
【符号の説明】
１１…ウェブクライアント
１２…ブラウザ
２５…プロキシ
２３−１、２３−２、２３−ｎ…ビュー
２１…ビューフローコントローラ
２２，３４…データベース
３１…ファサード
３３…ビジネスマッピング
３５−１、３５−２、３５−ｎ…デリゲート
３７−１、３７−２、３７−ｎ…ビジネスシナリオ
４１…ＤＡＯ
４３…ＳＡＯ
５１…ＤＢＭＳ
５３…外部システム
６０…アプリケーション提供システム
８０…アプリケーション開発支援システム
８１…ビューフローツール部
８２…画面遷移定義部
８３…ファイル生成部
８４…画面遷移シミュレーション部
８５…ビジネスシナリオツール部
８６…ビジネスシナリオ定義入力部
８７…ファイル生成部
８８…ビジネスシナリオ連携部
９１…画面制御サーブレット
９２…擬似プロキシ
【図１】
2004110362.tif 000003
【図２】
2004110362.tif 000004
【図３】
2004110362.tif 000005
【図４】
2004110362.tif 000006
【図５】
2004110362.tif 000007
【図６】
2004110362.tif 000008
【図７】
2004110362.tif 000009
【図８】
2004110362.tif 000010
【図９】
2004110362.tif 000011
【図１０】
2004110362.tif 000012
【図１１】
2004110362.tif 000013
【図１２】
2004110362.tif 000014
【図１３】
2004110362.tif 000015