(57)【特許請求の範囲】
【請求項１】
ネットワークを介して接続される複数のクライアントへアプリケーションを提供し、前記クライアントが表示する画面を制御するプレゼンテーション部と前記クライアントに要求されたアプリケーションの処理を実行するビジネス部とからなるアプリケーション提供システムであって、
前記プレゼンテーション部は、
アプリケーションの処理の種別を示すイベントＩＤに対応し、前記ビジネス部においてアプリケーションの処理の種別を示すシナリオＩＤと、アプリケーションの処理結果のステータス及び出力パラメータに対応した画面遷移情報とを記憶する第１のデータベースと、
前記クライアントからイベントＩＤ及び入力パラメータを受信してアプリケーションの処理の要求を受け付け、該イベントＩＤに対応するシナリオＩＤを前記第１のデータベースから読み出し、該シナリオＩＤ及び該入力パラメータを所定のリクエストフォーマットを用いて前記ビジネス部に出力してアプリケーションの処理を要求するとともに、前記ビジネス部から所定のレスポンスフォーマットを用いてアプリケーションの処理結果のステータス及び出力パラメータを受け、前記第１のデータベース内の画面遷移情報を基に該アプリケーションの処理結果を表示する画面情報を生成して前記クライアントへ返送するビューフローコントローラとを備え、
前記ビジネス部は、
シナリオＩＤに対応し、アプリケーションを実行するビジネスシナリオの識別符号を記憶する第２のデータベースと、
シナリオＩＤを受け、前記第２のデータベースを基に該シナリオＩＤに対応するビジネスシナリオの識別符号を読み出し、該ビジネスシナリオを実行するデリゲートの識別符号を出力するビジネスマッピングと、
入力パラメータを受信して、該入力パラメータを用いて要求されたアプリケーションの処理を実行し、該アプリケーションの処理結果のステータス及び出力パラメータを出力するビジネスシナリオとを備え、
前記ビジネス部は、さらに、
入力パラメータを受信してアプリケーションの処理の要求を受け、該入力パラメータから出力先の前記ビジネスシナリオに必要なパラメータを選択し、出力先の該ビジネスシナリオに応じたデータフォーマットにより出力してアプリケーションの処理を要求するとともに、アプリケーションの処理結果のステータス及び出力パラメータを前記ビジネスシナリオから受け、該ステータス及び出力パラメータを所定の前記レスポンスフォーマットを用いて出力するデリゲートと、
前記プレゼンテーション部から出力されたシナリオＩＤを前記ビジネスマッピングに通知してデリゲートを問合せ、該問合せに対応して受信したデリゲートの識別符号により示される前記デリゲートへ前記プレゼンテーション部から出力された入力パラメータを通知してアプリケーションの処理を要求するとともに、アプリケーションの処理結果のステータス及び出力パラメータを前記デリゲートから受け、前記プレゼンテーション部へ出力するファサードとを備える、
ことを特徴とするアプリケーション提供システム。
【請求項２】
前記プレゼンテーション部は、さらに、前記ビューフローコントローラからシナリオＩＤ及び入力パラメータを受け、前記ビジネス部に出力してアプリケーションの処理を要求するとともに、前記ビジネス部から受信したアプリケーションの処理結果のステータス及び出力パラメータを前記ビューフローコントローラへ出力するプロキシを備え、
前記ビューフローコントローラは、前記プロキシを介して、前記シナリオＩＤ及び入力パラメータを前記ビジネス部へ出力し、前記アプリケーション処理結果のステータス及び出力パラメータを、前記プロキシを介して前記ビジネス部から受信する、
ことを特徴とする請求項１に記載のアプリケーション提供システム。
【請求項３】
ネットワークを介して接続される複数のクライアントへアプリケーションを提供し、アプリケーション処理を実行するビジネスシナリオ、前記ビジネスシナリオとのデータの送受信を行うデリゲート、アプリケーション処理の要求を受け付けるファサード及び前記ビジネスシナリオを選択するビジネスマッピングを備えるビジネス部と、前記クライアントが表示する画面を制御するビューフローコントローラを備えるプレゼンテーション部とからなるアプリケーション提供システムに用いられるアプリケーション提供方法であって、
アプリケーションの処理の種別を示すイベントＩＤに対応し、前記ビジネス部においてアプリケーションの処理の種別を示すシナリオＩＤと、アプリケーションの処理結果のステータス及び出力パラメータに対応した画面遷移情報とを記憶する第１のデータベースと、シナリオＩＤに対応し、アプリケーションを実行するビジネスシナリオの識別符号を記憶する第２のデータベースとを用意し、
前記ビューフローコントローラは、前記クライアントからイベントＩＤ及び入力パラメータを受信してアプリケーションの処理の要求を受け付け、該イベントＩＤに対応するシナリオＩＤを前記第１のデータベースから読み出し、該シナリオＩＤ及び該入力パラメータを所定のリクエストフォーマットを用いて出力してアプリケーションの処理を要求し、
前記ファサードは、前記プレゼンテーション部から出力されたシナリオＩＤを前記ビジネスマッピングに通知してデリゲートを問合せ、
前記ビジネスマッピングは、前記ファサードからシナリオＩＤを受け、前記第２のデータベースを基に該シナリオＩＤに対応するビジネスシナリオの識別符号を読み出し、該ビジネスシナリオを実行するデリゲートの識別符号を前記ファサードへ出力し、
前記ファサードは、前記問合せに対応して前記ビジネスマッピングから受信したデリゲートの識別符号により示される前記デリゲートへ、前記プレゼンテーション部から出力された入力パラメータを通知してアプリケーションの処理を要求し、
前記デリゲートは、入力パラメータを受信してアプリケーションの処理の要求を受け、該入力パラメータから出力先の前記ビジネスシナリオに必要なパラメータを選択し、出力先の該ビジネスシナリオに応じたデータフォーマットにより出力してアプリケーションの処理を要求し、
前記ビジネスシナリオは、前記デリゲートから入力パラメータを受信して、該入力パラメータを用いて要求されたアプリケーションの処理を実行し、該アプリケーションの処理結果のステータス及び出力パラメータを前記デリゲートへ出力し、
前記デリゲートは、アプリケーションの処理結果のステータス及び出力パラメータを前記ビジネスシナリオから受け、該ステータス及び出力パラメータを所定のレスポンスフォーマットを用いて出力し、
前記ファサードは、アプリケーションの処理結果のステータス及び出力パラメータを前記デリゲートから受け、前記プレゼンテーション部へ出力し、
前記ビューフローコントローラは、前記ビジネスシナリオが出力したアプリケーションの処理結果のステータス及び出力パラメータを所定の前記レスポンスフォーマットを用いて受け、前記第１のデータベース内の画面遷移情報を基に該アプリケーションの処理結果を表示する画面情報を生成して前記クライアントへ返送する、
ことを特徴とするアプリケーション提供方法。
【請求項４】
ネットワークを介して接続される複数のクライアントへアプリケーションを提供し、アプリケーション処理を実行するビジネスシナリオ、前記ビジネスシナリオとのデータの送受信を行うデリゲート、アプリケーション処理の要求を受け付けるファサード及び前記ビジネスシナリオを選択するビジネスマッピングを備えるビジネス部と、前記クライアントが表示する画面を制御するビューフローコントローラを備えるプレゼンテーション部とからなるアプリケーション提供システムに用いられるコンピュータプログラムであって、
前記ビューフローコントローラが、前記クライアントからイベントＩＤ及び入力パラメータを受信してアプリケーションの処理の要求を受け付け、アプリケーションの処理の種別を示すイベントＩＤに対応し、前記ビジネス部においてアプリケーションの処理の種別を示すシナリオＩＤと、アプリケーションの処理結果のステータス及び出力パラメータに対応した画面遷移情報とを記憶する第１のデータベースから該イベントＩＤに対応するシナリオＩＤを読み出し、該シナリオＩＤ及び該入力パラメータを所定のリクエストフォーマットを用いて前記ビジネス部に出力してアプリケーションの処理を要求するステップと、
前記ファサードが、前記プレゼンテーション部から出力されたシナリオＩＤを前記ビジネスマッピングに通知してデリゲートを問合せるステップと、
前記ビジネスマッピングが、前記ファサードからシナリオＩＤを受け、シナリオＩＤに対応し、アプリケーションを実行するビジネスシナリオの識別符号を記憶する第２のデータベースを基に該シナリオＩＤに対応するビジネスシナリオの識別符号を読み出し、該ビジネスシナリオを実行するデリゲートの識別符号を前記ファサードへ出力するステップと、
前記ファサードが、前記問合せに対応して前記ビジネスマッピングから受信したデリゲートの識別符号により示される前記デリゲートへ、前記プレゼンテーション部から出力された入力パラメータを通知してアプリケーションの処理を要求するステップと、
前記デリゲートが、入力パラメータを受信してアプリケーションの処理の要求を受け、該入力パラメータから出力先の前記ビジネスシナリオに必要なパラメータを選択し、出力先の該ビジネスシナリオに応じたデータフォーマットにより出力してアプリケーションの処理を要求するステップと、
前記ビジネスシナリオが、前記デリゲートから入力パラメータを受信して、該入力パラメータを用いて要求されたアプリケーションの処理を実行し、該アプリケーションの処理結果のステータス及び出力パラメータを前記デリゲートへ出力するステップと、
前記デリゲートが、アプリケーションの処理結果のステータス及び出力パラメータを前記ビジネスシナリオから受け、該ステータス及び出力パラメータを所定のレスポンスフォーマットを用いて出力するステップと、
前記ファサードが、アプリケーションの処理結果のステータス及び出力パラメータを前記デリゲートから受け、前記プレゼンテーション部へ出力するステップと、
前記ビューフローコントローラが、前記ビジネスシナリオが出力したアプリケーションの処理結果のステータス及び出力パラメータを所定の前記レスポンスフォーマットを用いて受け、前記第１のデータベース内の画面遷移情報を基に該アプリケーションの処理結果を表示する画面情報を生成して前記クライアントへ返送するステップと、
をコンピュータに実行させるためのアプリケーション提供システムのコンピュータプログラム。
【請求項５】
ネットワークを介して接続される複数のクライアントへアプリケーションを提供し、アプリケーション処理を実行するビジネスシナリオ、前記ビジネスシナリオとのデータの送受信を行うデリゲート、アプリケーション処理の要求を受け付けるファサード及び前記ビジネスシナリオを選択するビジネスマッピングを備えるビジネス部と、前記クライアントが表示する画面を制御するビューフローコントローラを備えるプレゼンテーション部とからなるアプリケーション提供システムに用いられるコンピュータプログラムであって、
前記ビューフローコントローラが、前記クライアントからイベントＩＤ及び入力パラメータを受信してアプリケーションの処理の要求を受け付け、アプリケーションの処理の種別を示すイベントＩＤに対応し、前記ビジネス部においてアプリケーションの処理の種別を示すシナリオＩＤと、アプリケーションの処理結果のステータス及び出力パラメータに対応した画面遷移情報とを記憶する第１のデータベースから該イベントＩＤに対応するシナリオＩＤを読み出し、該シナリオＩＤ及び該入力パラメータを所定のリクエストフォーマットを用いて前記ビジネス部に出力してアプリケーションの処理を要求するステップと、
前記ファサードが、前記プレゼンテーション部から出力されたシナリオＩＤを前記ビジネスマッピングに通知してデリゲートを問合せるステップと、
前記ビジネスマッピングが、前記ファサードからシナリオＩＤを受け、シナリオＩＤに対応し、アプリケーションを実行するビジネスシナリオの識別符号を記憶する第２のデータベースを基に該シナリオＩＤに対応するビジネスシナリオの識別符号を読み出し、該ビジネスシナリオを実行するデリゲートの識別符号を前記ファサードへ出力するステップと、
前記ファサードが、前記問合せに対応して前記ビジネスマッピングから受信したデリゲートの識別符号により示される前記デリゲートへ、前記プレゼンテーション部から出力された入力パラメータを通知してアプリケーションの処理を要求するステップと、
前記デリゲートが、入力パラメータを受信してアプリケーションの処理の要求を受け、該入力パラメータから出力先の前記ビジネスシナリオに必要なパラメータを選択し、出力先の該ビジネスシナリオに応じたデータフォーマットにより出力してアプリケーションの処理を要求するステップと、
前記ビジネスシナリオが、前記デリゲートから入力パラメータを受信して、該入力パラメータを用いて要求されたアプリケーションの処理を実行し、該アプリケーションの処理結果のステータス及び出力パラメータを前記デリゲートへ出力するステップと、
前記デリゲートが、アプリケーションの処理結果のステータス及び出力パラメータを前記ビジネスシナリオから受け、該ステータス及び出力パラメータを所定のレスポンスフォーマットを用いて出力するステップと、
前記ファサードが、アプリケーションの処理結果のステータス及び出力パラメータを前記デリゲートから受け、前記プレゼンテーション部へ出力するステップと、
前記ビューフローコントローラが、前記ビジネスシナリオが出力したアプリケーションの処理結果のステータス及び出力パラメータを所定の前記レスポンスフォーマットを用いて受け、前記第１のデータベース内の画面遷移情報を基に該アプリケーションの処理結果を表示する画面情報を生成して前記クライアントへ返送するステップと、
の各処理をコンピュータに実行させるアプリケーション提供システム上のプログラムを記録する記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、ネットワークを介して接続されるクライアントへアプリケーションを提供するためのアプリケーション提供システム及びアプリケーション提供方法に関する。
【０００２】
【従来の技術】
近年、ユーザがパーソナルコンピュータからウェブを利用してインターネットやイントラネット上のアプリケーション提供システムにアクセスし、アプリケーション提供システムはクライアントサーバ方式によりクライアントへアプリケーションを提供するアプリケーション実行アーキテクチャが実現されている。すなわち、ユーザのパーソナルコンピュータ（クライアント）は、ブラウザなど、画面の表示やデータの入出力の機能のみを実行する。アプリケーション提供システム（サーバ）は画面生成処理、及び、アプリケーション処理の機能を備え、ネットワークを介してクライアントからリクエストを受信してアプリケーション処理を実行し、処理の結果を表示する画面を生成して再びネットワークを介してクライアントへ返送する。しかし、このようなアプリケーションにおいては、画面表示のために必要なファイルの中にアプリケーションの処理の一部が混在しているなど、画面生成処理とアプリケーション処理とが複雑に関連し合っている。
【０００３】
そこで、データベース処理（アプリケーション処理）定義を設計する作業と、クライアント画面を設計する作業を分離し、ウェブアプリケーションを作成するアプリケーション開発支援方法及び開発支援システムが特許文献１に開示されている。特許文献１においては、データベース処理設計装置がデータベース処理定義ファイルを、クライアント画面設計装置がクライアント画面定義ファイルを生成し、ウェブアプリケーション生成装置がこれらデータベース処理定義ファイルとクライアント画面定義ファイルを基にウェブアプリケーションを生成している。
【０００４】
また、特許文献２では、ウェブアプリケーション提供システムの開発において、サーブレット、サーバにおいて動的なビューを生成するためのＪＳＰ（Java（登録商標）Server Pages）、及び、部品化されたプログラムであるＢｅａｎの各コンポーネントを１対１の関係で定義し、各コンポーネントの対応を明確にすることにより、設計開発作業の負担を軽減させ、かつ設計開発のスピードアップを図るウェブアプリケーション開発方法及び開発支援システムが開示されている。すなわち、画面のデザインから各コンポーネントの定義を対応表として生成し、その対応表と設計ドキュメントの情報を利用して、サーブレット、ＪＳＰ、および、Ｂｅａｎのコードを自動生成する。
【０００５】
【特許文献１】
特開２００２−１５５７１４号公報（段落０００５−段落００４０、第１図−第９図）
【特許文献２】
特開２００１−３４４１０５号公報（段落００３１−段落０１０３、第１図−第３３図）
【０００６】
【発明が解決しようとする課題】
上記に示したように、アプリケーション提供システムにより提供されるアプリケーションは、画面生成処理とアプリケーション処理とが複雑に関連し合っている。従って、上述の特許文献１及び特許文献２においては、画面生成処理とアプリケーション処理を独立して開発し、コードを生成することはできるが、画面生成処理またはアプリケーション処理のどちらかに変更があった場合は、再び両者のコードを作成しなおす必要があった。これは、アプリケーション変更に伴う既存処理への影響の把握や、コード生成、既存システムへのインプリメントなどに人的リソース及びコストがかかるとともに、開発工期が長くなるという問題があった。
【０００７】
この発明は、このような事情を考慮してなされたもので、その目的は、画面生成処理とアプリケーション処理を独立して開発することができ、さらに、画面生成処理とアプリケーション処理の再利用が可能なアプリケーション提供システム及びアプリケーション提供方法を提供することにある。
【０００８】
【課題を解決するための手段】
この発明は、上記の課題を解決すべくなされたもので、請求項１に記載の発明は、ネットワークを介して接続される複数のクライアントへアプリケーションを提供し、前記クライアントが表示する画面を制御するプレゼンテーション部と前記クライアントに要求されたアプリケーションの処理を実行するビジネス部とからなるアプリケーション提供システムであって、前記プレゼンテーション部は、アプリケーションの処理の種別を示すイベントＩＤに対応し、前記ビジネス部においてアプリケーションの処理の種別を示すシナリオＩＤと、アプリケーションの処理結果のステータス及び出力パラメータに対応した画面遷移情報とを記憶する第１のデータベースと、前記クライアントからイベントＩＤ及び入力パラメータを受信してアプリケーションの処理の要求を受け付け、該イベントＩＤに対応するシナリオＩＤを前記第１のデータベースから読み出し、該シナリオＩＤ及び該入力パラメータを所定のリクエストフォーマットを用いて前記ビジネス部に出力してアプリケーションの処理を要求するとともに、前記ビジネス部から所定のレスポンスフォーマットを用いてアプリケーションの処理結果のステータス及び出力パラメータを受け、前記第１のデータベース内の画面遷移情報を基に該アプリケーションの処理結果を表示する画面情報を生成して前記クライアントへ返送するビューフローコントローラとを備え、前記ビジネス部は、シナリオＩＤに対応し、アプリケーションを実行するビジネスシナリオの識別符号を記憶する第２のデータベースと、シナリオＩＤを受け、前記第２のデータベースを基に該シナリオＩＤに対応するビジネスシナリオの識別符号を読み出し、該ビジネスシナリオを実行するデリゲートの識別符号を出力するビジネスマッピングと、入力パラメータを受信して、該入力パラメータを用いて要求されたアプリケーションの処理を実行し、該アプリケーションの処理結果のステータス及び出力パラメータを出力するビジネスシナリオとを備え、前記ビジネス部は、さらに、入力パラメータを受信してアプリケーションの処理の要求を受け、該入力パラメータから出力先の前記ビジネスシナリオに必要なパラメータを選択し、出力先の該ビジネスシナリオに応じたデータフォーマットにより出力してアプリケーションの処理を要求するとともに、アプリケーションの処理結果のステータス及び出力パラメータを前記ビジネスシナリオから受け、該ステータス及び出力パラメータを所定の前記レスポンスフォーマットを用いて出力するデリゲートと、前記プレゼンテーション部から出力されたシナリオＩＤを前記ビジネスマッピングに通知してデリゲートを問合せ、該問合せに対応して受信したデリゲートの識別符号により示される前記デリゲートへ前記プレゼンテーション部から出力された入力パラメータを通知してアプリケーションの処理を要求するとともに、アプリケーションの処理結果のステータス及び出力パラメータを前記デリゲートから受け、前記プレゼンテーション部へ出力するファサードとを備える、ことを特徴とするアプリケーション提供システムである。
【００１０】
請求項２に記載の発明は、請求項１に記載のアプリケーション提供システムであって、前記プレゼンテーション部は、さらに、前記ビューフローコントローラからシナリオＩＤ及び入力パラメータを受け、前記ビジネス部に出力してアプリケーションの処理を要求するとともに、前記ビジネス部から受信したアプリケーションの処理結果のステータス及び出力パラメータを前記ビューフローコントローラへ出力するプロキシを備え、前記ビューフローコントローラは、前記プロキシを介して、前記シナリオＩＤ及び入力パラメータを前記ビジネス部へ出力し、前記アプリケーション処理結果のステータス及び出力パラメータを、前記プロキシを介して前記ビジネス部から受信する、ことを特徴とする。
【００１２】
請求項３に記載の発明は、ネットワークを介して接続される複数のクライアントへアプリケーションを提供し、アプリケーション処理を実行するビジネスシナリオ、前記ビジネスシナリオとのデータの送受信を行うデリゲート、アプリケーション処理の要求を受け付けるファサード及び前記ビジネスシナリオを選択するビジネスマッピングを備えるビジネス部と、前記クライアントが表示する画面を制御するビューフローコントローラを備えるプレゼンテーション部とからなるアプリケーション提供システムに用いられるアプリケーション提供方法であって、アプリケーションの処理の種別を示すイベントＩＤに対応し、前記ビジネス部においてアプリケーションの処理の種別を示すシナリオＩＤと、アプリケーションの処理結果のステータス及び出力パラメータに対応した画面遷移情報とを記憶する第１のデータベースと、シナリオＩＤに対応し、アプリケーションを実行するビジネスシナリオの識別符号を記憶する第２のデータベースとを用意し、前記ビューフローコントローラは、前記クライアントからイベントＩＤ及び入力パラメータを受信してアプリケーションの処理の要求を受け付け、該イベントＩＤに対応するシナリオＩＤを前記第１のデータベースから読み出し、該シナリオＩＤ及び該入力パラメータを所定のリクエストフォーマットを用いて出力してアプリケーションの処理を要求し、前記ファサードは、前記プレゼンテーション部から出力されたシナリオＩＤを前記ビジネスマッピングに通知してデリゲートを問合せ、前記ビジネスマッピングは、前記ファサードからシナリオＩＤを受け、前記第２のデータベースを基に該シナリオＩＤに対応するビジネスシナリオの識別符号を読み出し、該ビジネスシナリオを実行するデリゲートの識別符号を前記ファサードへ出力し、前記ファサードは、前記問合せに対応して前記ビジネスマッピングから受信したデリゲートの識別符号により示される前記デリゲートへ、前記プレゼンテーション部から出力された入力パラメータを通知してアプリケーションの処理を要求し、前記デリゲートは、入力パラメータを受信してアプリケーションの処理の要求を受け、該入力パラメータから出力先の前記ビジネスシナリオに必要なパラメータを選択し、出力先の該ビジネスシナリオに応じたデータフォーマットにより出力してアプリケーションの処理を要求し、前記ビジネスシナリオは、前記デリゲートから入力パラメータを受信して、該入力パラメータを用いて要求されたアプリケーションの処理を実行し、該アプリケーションの処理結果のステータス及び出力パラメータを前記デリゲートへ出力し、前記デリゲートは、アプリケーションの処理結果のステータス及び出力パラメータを前記ビジネスシナリオから受け、該ステータス及び出力パラメータを所定のレスポンスフォーマットを用いて出力し、前記ファサードは、アプリケーションの処理結果のステータス及び出力パラメータを前記デリゲートから受け、前記プレゼンテーション部へ出力し、前記ビューフローコントローラは、前記ビジネスシナリオが出力したアプリケーションの処理結果のステータス及び出力パラメータを所定の前記レスポンスフォーマットを用いて受け、前記第１のデータベース内の画面遷移情報を基に該アプリケーションの処理結果を表示する画面情報を生成して前記クライアントへ返送する、ことを特徴とするアプリケーション提供方法である。
【００１３】
請求項４に記載の発明は、ネットワークを介して接続される複数のクライアントへアプリケーションを提供し、アプリケーション処理を実行するビジネスシナリオ、前記ビジネスシナリオとのデータの送受信を行うデリゲート、アプリケーション処理の要求を受け付けるファサード及び前記ビジネスシナリオを選択するビジネスマッピングを備えるビジネス部と、前記クライアントが表示する画面を制御するビューフローコントローラを備えるプレゼンテーション部とからなるアプリケーション提供システムに用いられるコンピュータプログラムであって、前記ビューフローコントローラが、前記クライアントからイベントＩＤ及び入力パラメータを受信してアプリケーションの処理の要求を受け付け、アプリケーションの処理の種別を示すイベントＩＤに対応し、前記ビジネス部においてアプリケーションの処理の種別を示すシナリオＩＤと、アプリケーションの処理結果のステータス及び出力パラメータに対応した画面遷移情報とを記憶する第１のデータベースから該イベントＩＤに対応するシナリオＩＤを読み出し、該シナリオＩＤ及び該入力パラメータを所定のリクエストフォーマットを用いて前記ビジネス部に出力してアプリケーションの処理を要求するステップと、前記ファサードが、前記プレゼンテーション部から出力されたシナリオＩＤを前記ビジネスマッピングに通知してデリゲートを問合せるステップと、前記ビジネスマッピングが、前記ファサードからシナリオＩＤを受け、シナリオＩＤに対応し、アプリケーションを実行するビジネスシナリオの識別符号を記憶する第２のデータベースを基に該シナリオＩＤに対応するビジネスシナリオの識別符号を読み出し、該ビジネスシナリオを実行するデリゲートの識別符号を前記ファサードへ出力するステップと、前記ファサードが、前記問合せに対応して前記ビジネスマッピングから受信したデリゲートの識別符号により示される前記デリゲートへ、前記プレゼンテーション部から出力された入力パラメータを通知してアプリケーションの処理を要求するステップと、前記デリゲートが、入力パラメータを受信してアプリケーションの処理の要求を受け、該入力パラメータから出力先の前記ビジネスシナリオに必要なパラメータを選択し、出力先の該ビジネスシナリオに応じたデータフォーマットにより出力してアプリケーションの処理を要求するステップと、前記ビジネスシナリオが、前記デリゲートから入力パラメータを受信して、該入力パラメータを用いて要求されたアプリケーションの処理を実行し、該アプリケーションの処理結果のステータス及び出力パラメータを前記デリゲートへ出力するステップと、前記デリゲートが、アプリケーションの処理結果のステータス及び出力パラメータを前記ビジネスシナリオから受け、該ステータス及び出力パラメータを所定のレスポンスフォーマットを用いて出力するステップと、前記ファサードが、アプリケーションの処理結果のステータス及び出力パラメータを前記デリゲートから受け、前記プレゼンテーション部へ出力するステップと、前記ビューフローコントローラが、前記ビジネスシナリオが出力したアプリケーションの処理結果のステータス及び出力パラメータを所定の前記レスポンスフォーマットを用いて受け、前記第１のデータベース内の画面遷移情報を基に該アプリケーションの処理結果を表示する画面情報を生成して前記クライアントへ返送するステップと、をコンピュータに実行させるためのアプリケーション提供システムのコンピュータプログラムである。
【００１４】
請求項５に記載の発明は、ネットワークを介して接続される複数のクライアントへアプリケーションを提供し、アプリケーション処理を実行するビジネスシナリオ、前記ビジネスシナリオとのデータの送受信を行うデリゲート、アプリケーション処理の要求を受け付けるファサード及び前記ビジネスシナリオを選択するビジネスマッピングを備えるビジネス部と、前記クライアントが表示する画面を制御するビューフローコントローラを備えるプレゼンテーション部とからなるアプリケーション提供システムに用いられるコンピュータプログラムであって、前記ビューフローコントローラが、前記クライアントからイベントＩＤ及び入力パラメータを受信してアプリケーションの処理の要求を受け付け、アプリケーションの処理の種別を示すイベントＩＤに対応し、前記ビジネス部においてアプリケーションの処理の種別を示すシナリオＩＤと、アプリケーションの処理結果のステータス及び出力パラメータに対応した画面遷移情報とを記憶する第１のデータベースから該イベントＩＤに対応するシナリオＩＤを読み出し、該シナリオＩＤ及び該入力パラメータを所定のリクエストフォーマットを用いて前記ビジネス部に出力してアプリケーションの処理を要求するステップと、前記ファサードが、前記プレゼンテーション部から出力されたシナリオＩＤを前記ビジネスマッピングに通知してデリゲートを問合せるステップと、前記ビジネスマッピングが、前記ファサードからシナリオＩＤを受け、シナリオＩＤに対応し、アプリケーションを実行するビジネスシナリオの識別符号を記憶する第２のデータベースを基に該シナリオＩＤに対応するビジネスシナリオの識別符号を読み出し、該ビジネスシナリオを実行するデリゲートの識別符号を前記ファサードへ出力するステップと、前記ファサードが、前記問合せに対応して前記ビジネスマッピングから受信したデリゲートの識別符号により示される前記デリゲートへ、前記プレゼンテーション部から出力された入力パラメータを通知してアプリケーションの処理を要求するステップと、前記デリゲートが、入力パラメータを受信してアプリケーションの処理の要求を受け、該入力パラメータから出力先の前記ビジネスシナリオに必要なパラメータを選択し、出力先の該ビジネスシナリオに応じたデータフォーマットにより出力してアプリケーションの処理を要求するステップと、前記ビジネスシナリオが、前記デリゲートから入力パラメータを受信して、該入力パラメータを用いて要求されたアプリケーションの処理を実行し、該アプリケーションの処理結果のステータス及び出力パラメータを前記デリゲートへ出力するステップと、前記デリゲートが、アプリケーションの処理結果のステータス及び出力パラメータを前記ビジネスシナリオから受け、該ステータス及び出力パラメータを所定のレスポンスフォーマットを用いて出力するステップと、前記ファサードが、アプリケーションの処理結果のステータス及び出力パラメータを前記デリゲートから受け、前記プレゼンテーション部へ出力するステップと、前記ビューフローコントローラが、前記ビジネスシナリオが出力したアプリケーションの処理結果のステータス及び出力パラメータを所定の前記レスポンスフォーマットを用いて受け、前記第１のデータベース内の画面遷移情報を基に該アプリケーションの処理結果を表示する画面情報を生成して前記クライアントへ返送するステップと、の各処理をコンピュータに実行させるアプリケーション提供システム上のプログラムを記録する記録媒体である。
【００１５】
【発明の実施の形態】
以下、図面を参照し、この発明の実施の形態について説明する。図１は、この発明の一実施の形態によるアプリケーション提供システム６０の構成を示すブロック図である。
本実施の形態によるアプリケーション提供システム６０に用いられるアプリケーション実行アーキテクチャは、企業の業務システムや電子商取引などに使われるサーバ側アプリケーション構築のフレームワークであるＪ２ＥＥ（Java（登録商標） 2 Enterprise Edition）に従い、クライアント層、プレゼンテーション層、ビジネス層、インテグレーション層、及び、リソース層の５層に分割される。そして、アプリケーション提供システム６０は、プレゼンテーション層、ビジネス層、インテグレーション層、及び、リソース層を備えた１つ又は複数のサーバからなり、インターネット網やイントラネット網などのネットワークＮを介して接続されるクライアント層のウェブクライアント１１またはクライアントシステム１４へアプリケーションを提供する。ただし、リソース層の外部システム５３は、アプリケーション提供システム６０を相互動作するシステムであり、アプリケーション提供システム６０には含まれない。
なお、本実施の形態において、クライアント層からのリクエストに対して、レスポンスを返すまでの一連の処理を「業務」、「業務」の集合体を「アプリケーション」とする。例えば、「アプリケーション」が「オンラインバンキング」であった場合、「業務」は「銀行口座の照会」などである。
【００１６】
アプリケーション提供システム６０内の階層間のデータの交換は、データオブジェクトを利用したインタフェースにより行われる。プレゼンテーション層からビジネス層へは、リクエストオブジェクトを用い、リクエストオブジェクト内のリクエストデータにより入力データを引き渡し、ビジネス層からプレゼンテーション層へはレスポンスオブジェクトを用い、レスポンスオブジェクト内のレスポンスデータにより業務処理の結果のデータを引き渡す。また、ビジネス層−インテグレーション層間では、ビジネスオブジェクトを用いてデータの交換を行う。これにより、ビジネス層は、プレゼンテーション層に対してビジネス層内の動作及びインテグレーション層への接続を隠蔽し、インテグレーション層は、ビジネス層に対してンテグレーション層内の動作及びリソース層への接続を隠蔽する。なお、クライアント層のクライアントシステム１４内のプロキシ１６とプレゼンテーション層のファサード３１間は、プレゼンテーション層−ビジネス層間と同様のインタフェースを使用する。
【００１７】
以下に、各階層の機能及び構成を示す。
（１）クライアント層
クライアント層は、ネットワークＮを介してアプリケーション提供システム６０にアクセスし、アプリケーションの業務処理のリクエストの送信、及び、要求した業務処理のレスポンスの表示を行う。クライアント層は、ウェブクライアント１１及びクライアントシステム１４を有する。
【００１８】
ウェブクライアント１１は、ブラウザ１２を備えたパーソナルコンピュータであり、ＴＣＰ／ＩＰ（Transmission Control Protocol／Internet Protocol）を実装し、ネットワークＮを介してプレゼンテーション層のビューフローコントローラ２１と通信する機能を有する。ネットワークＮとは、ネットワークＮがイントラネット網の場合は１０Ｂａｓｅ−Ｔ／１００Ｂａｓｅ−Ｔ、無線ＬＡＮ（Local Area Network）などにより、インターネット網の場合はダイヤルアップ、ブロードバンド回線などにより接続される。ブラウザ１２は、キーボードなどによるユーザの入力に従って、ＨＴＴＰ（Hypertext Transfer Protocol）によりビューフローコントローラ２１へ業務処理のリクエスト（ＨＴＴＰリクエスト）を送信する機能と、ＨＴＴＰにより業務処理の結果を示す画面、すなわち、ビューフローコントローラ２１から受信したレスポンス（ＨＴＴＰレスポンス）に含まれるビュー２３−１〜２３−ｎ（以下、ビュー２３）を表示する機能を有する。ビュー２３は、例えば、ＨＴＭＬ（Hypertext Markup Language）により記述される。なお、ＨＴＴＰリクエストには、要求した業務処理を識別するイベントＩＤ及び業務処理に必要なパラメータが含まれる。
【００１９】
クライアントシステム１４は、プロキシ１６及び端末からなる。
端末は、Ｊａｖａ（登録商標）アプリケーションを備えたパーソナルコンピュータや携帯端末（携帯電話含む）などであり、ビュー１７（画面表示部分）から受けた入力データをリクエストオブジェクトによりプロキシ１６へ受け渡す機能と、プロキシ１６から受信したレスポンスオブジェクトによりビュー１７を生成する機能とを有する。
プロキシ１６は、ＴＣＰ／ＩＰを備え、ＲＭＩ（Remote Method Invocation）ｏｖｅｒ  ＩＩＯＰ（Internet Inter-ORB Protocol）などのプロトコルによりネットワークＮを介してファサード３１と接続され、イントラネット網によりクライアントシステム１４内の端末装置と接続される。そして、端末のＪａｖａ（登録商標）アプリケーションが生成したリクエストオブジェクトをファサード３１に受け渡す機能と、ファサード３１から受けたレスポンスオブジェクトを端末のＪａｖａ（登録商標）アプリケーションへ受け渡す機能を有する。
【００２０】
（２）プレゼンテーション層
プレゼンテーション層は、アプリケーション提供システム６０にアクセスしているウェブクライアント１１のセッション管理及び画面制御を行う。プレゼンテーション層は、ビューフローコントローラ２１、データベース２２及びプロキシ２５を有する。
【００２１】
データベース２２は、イベントＩＤと、イベントＩＤにより識別される業務処理を実行するビジネス層のビジネスシナリオ３７−１〜３７−ｎ（以下、ビジネスシナリオ３７）を選択するためシナリオＩＤとのマッピング情報を記憶する。また、イベントＩＤと業務処理の結果のステータスから、次にどの画面を表示するかの画面遷移情報と、ウェブクライアント１１から受信したＨＴＴＰリクエスト内の入力パラメータの型や桁数、許容範囲、必須パラメータか否かをチェックするための入力チェック情報を記憶している。データベース２２内の情報は、例えば、ＸＭＬ（extensible markup language）により記述される。
【００２２】
ビューフローコントローラ２１は、サーバにおいて動的な画面を生成するためのＪＳＰ（Java（登録商標）Server Pages）を実行するＪＳＰコンテナ、及び、サーブレットを実行するサーブレットコンテナを備える。そして、ウェブクライアント１１のブラウザ１２からイベントＩＤ及び入力パラメータを含むＨＴＴＰリクエストを受け、データベース２２内のマッピング情報を基にイベントＩＤをシナリオＩＤに変換し、得られたシナリオＩＤと入力パラメータとを内部インタフェースのリクエストオブジェクトにより、プロキシ２５へ受け渡す機能を有する。また、プロキシ２５を介して、業務処理の結果のステータス及び出力パラメータが設定されたレスポンスオブジェクトを受け、データベース２２内の画面遷移情報を基に、ブラウザ１２へ表示させるビュー２３を生成して、ＨＴＴＰレスポンスにより送信する機能を有する。
【００２３】
プロキシ２５は、ビジネス層におけるビジネスシナリオ３７の参照の取得、メソッドの実行、リクエストオブジェクト・レスポンスオブジェクトのやりとりをプレゼンテーションに隠蔽しながら、プレゼンテーション層からビジネス層のビジネスシナリオ３７へのアクセスを行う機能を有する。すなわち、ビューフローコントローラ２１から受けたリクエストオブジェクトをファサード３１に受け渡す機能と、ファサード３１から受けたレスポンスオブジェクトをビューフローコントローラ２１へ受け渡す機能を有する。
【００２４】
（３）ビジネス層
ビジネス層は、クライアント層から要求されたアプリケーションの業務処理を実行する。ビジネス層は、ファサード３１、ビジネスマッピング３３、データベース３４、デリゲート３５−１〜３５−ｎ（以下、デリゲート３５）及びビジネスシナリオ３７を有する。
【００２５】
データベース３４は、シナリオＩＤに対応したビジネスシナリオ３７の識別符号を記憶している。データベース３４内の情報は、例えば、ＸＭＬにより記述される。
【００２６】
ファサード３１は、ＥＪＢ（Enterprise Java（登録商標）Beans）を実行するＥＪＢコンテナを備える。ＥＪＢとは、ネットワークを介して接続される他のサーバ上で動作するアプリケーションのオブジェクトをあたかも自身の備えるアプリケーション上に存在するオブジェクトと同じように扱うことのできる機構を提供するアプリケーションモデルである。そして、プレゼンテーション層のプロキシ２５、あるいは、クライアント層内のクライアントシステム１４のプロキシ１６が生成したリクエストオブジェクトをビジネスマッピング３３へ通知し、ビジネスマッピング３３が選択したデリゲート３５を起動して、入力データを引き渡す。また、デリゲート３５が生成したレスポンスオブジェクトを、クライアントシステム１４のプロキシ１６へ、あるいは、プロキシ２５を介してビューフローコントローラ２１へ受け渡す機能を有する。
【００２７】
ビジネスマッピング３３は、データベース３４内の情報を基に、ファサード３１から受け取ったシナリオＩＤによりアプリケーションを実行するビジネスシナリオ３７を選択するとともに、選択したビジネスシナリオ３７を実行するデリゲート３５のインスタンスを生成し、ファサード３１へ通知する機能を有する。
【００２８】
デリゲート３５は、ファサード３１から受け取ったリクエストオブジェクトを、ビジネスシナリオ３７へ入力するためのインタフェース、すなわち、ビジネスオブジェクトに変換して業務処理を指示する機能を有する。また、ビジネスシナリオ３７から受信した業務処理の結果のビジネスオブジェクトを受け、レスポンスオブジェクトに変換してファサード３１へ受け渡す機能を有する。なお、デリゲート３５−１〜３５−ｎはそれぞれ、ビジネスシナリオ３７−１〜３７−ｎに対応している。
【００２９】
ビジネスシナリオ３７は、ＥＪＢであり、業務処理を実施する機能と、業務処理の結果を、デリゲート３５を介してプロキシ２５へ返送する機能を有する。また、ビジネスシナリオ３７は、インテグレーション層のＤＡＯ（Data Access Object）４１やＳＡＯ（System Access Object）４３にビジネスオブジェクトを受け渡し、インテグレーション層を介してリソース層のＤＢＭＳ（Database Management System）５１にアクセスしたり、外部システム５３との連携を行う機能を有する。
【００３０】
（４）インテグレーション層
インテグレーション層は、ＤＡＯ４１及びＳＡＯ４３を備え、データベースへのアクセスや、外部システムとの連携を行う。ビジネス層のビジネスシナリオ３７から受けたビジネスオブジェクト内の情報に基づき、アクセスオブジェクトであるＤＡＯ４１及びＳＡＯ４３が外部システム、リソースとの接続をする。インテグレーション層は、ビジネスシナリオ３７の指示により、データベースを管理する一般のソフトウェアであるＤＢＭＳ５１へのアクセスを実行し、データを操作するＤＡＯ４１、及び、外部システムへのアクセスを実行し、外部システム５３との相互動作を行うＳＡＯ４３を含む。
【００３１】
（５）リソース層
リソース層は、インテグレーション層よりアクセスされるデータベースや外部システムであり、データを記憶し、データの管理を行うＤＢＭＳ５１及びアプリケーション提供システム６０が提供するアプリケーションと相互動作する他のアプリケーションを提供する外部システム５３を備える。
【００３２】
次に、アプリケーション提供システム６０の動作を説明する。図２は、アプリケーション提供システム６０の動作フローを示す。
ウェブクライアント１１は、ブラウザ１２から、アプリケーションの実行を要求する。すなわち、ブラウザ１２は、ネットワークＮを介してビューフローコントローラ２１へＨＴＴＰリクエストを送信する。ＨＴＴＰリクエストの宛先であるＵＲＩ（Universal Resource Identifier）は、ビューフローコントローラ２１へのアクセスアドレス及び要求したアプリケーションの業務処理の種別を示すイベントＩＤからなる。例えば、ＵＲＩが「http://hostname:port/eventId」であった場合、ビューフローコントローラ２１のホスト名は「http://hostname」であり、イベントＩＤは続く「eventId」に示される値である。また、ＨＴＴＰリクエストには、アプリケーションの業務処理に必要な入力パラメータが含まれる。例えば、「業務」が「オンラインバンキング」アプリケーションの「銀行口座の照会」であった場合、入力パラメータは、「口座番号」である。
【００３３】
ビューフローコントローラ２１は、ブラウザ１２からのＨＴＴＰリクエストを受信すると、ＵＲＩを解析し、アプリケーションの業務処理が要求されていることを認識する（ステップＳ１００）。すると、データベース２２に記憶されているマッピング情報、画面遷移情報及び入力チェック情報を取得し、ブラウザ１２とのセッションを開始する。次に、読み出した入力チェック情報に基づき、受信したＨＴＴＰリクエストに含まれる入力パラメータの型や桁数、許容範囲内の値であるかなどをチェックし、さらに、必須パラメータが全て設定されているか否かをチェックする（ステップＳ１１０）。入力パラメータのチェックがＯＫであった場合、読み出したマッピング情報により、イベントＩＤに対応したシナリオＩＤを取得する。そして、取得したシナリオＩＤ及び受信した入力パラメータを設定したリクエストオブジェクトを生成し、プロキシ２５へ受け渡す（ステップＳ１２０）。なお、入力パラメータのチェックがＮＧであった場合には、エラーを表示するためのビュー２３をウェブクライアント１１のブラウザ１２へ返送する。
プロキシ２５は、ファサード３１へアクセスし、ビューフローコントローラ２１から受信したリクエストオブジェクトを受け渡す。これにより、プレゼンテーション層において、ビジネス層内のＥＪＢの参照の取得、メソッドの実行、リクエストオブジェクト・レスポンスオブジェクトのやりとりが隠蔽される。
【００３４】
ファサード３１は、プロキシ２５からリクエストオブジェクトを受けると、ビジネスマッピング３３へどのビジネスシナリオ３７を実行すべきかを問い合わせる。すると、ビジネスマッピング３３は、受け取ったリクエストオブジェクト内のシナリオＩＤから、業務処理を行うビジネスシナリオ３７を選択すると、ビジネスシナリオ３７をハンドリングするデリゲート３５を生成し、ファサード３１へ受け渡す。ここでは、ビジネスシナリオ３７−１が選択され、デリゲート３５−１が生成されてファサード３１へ通知されたとする。ファサード３１は、生成されたデリゲート３５−１へリクエストオブジェクトを受け渡す。デリゲート３５−１は、受け取ったリクエストオブジェクトからビジネスシナリオ３７−１が業務処理に必要なデータを取り出して、ビジネスシナリオ３７−１が使用するビジネスオブジェクト内に設定し、ビジネスシナリオ３７−１へ受け渡して業務処理を要求する（ステップＳ１３０）。ビジネスシナリオ３７−１は、デリゲート３５−１から受けたビジネスオブジェクトに従って業務処理を行う。ビジネスシナリオ３７−１は、必要に応じて、ビジネスオブジェクトをインテグレーション層のＤＡＯ４１あるいはＳＡＯ４３に受け渡し、ＤＡＯ４１を介してＤＢＭＳ５１によりデータの操作を行ったり、ＳＡＯ４３を介して外部システム５３と相互動作する。これにより、インテグレーション層は、ビジネス層に対してリソース層への接続を隠蔽し、ビジネスオブジェクトにより処理結果を受け渡す。
【００３５】
ビジネスシナリオ３７−１は、業務処理を終えると、ビジネスオブジェクトによりデリゲート３５−１へ業務の処理結果を受け渡す（ステップＳ１４０）。ビジネスオブジェクト内の処理結果には、処理の状態を示すステータスと、出力パラメータが含まれる。ステータスは、例えば、「全てＯＫ」、「一部ＯＫ」、「データなし」などである。デリゲート３５−１は、ビジネスシナリオ３７−１から受け取ったビジネスオブジェクトをレスポンスオブジェクトに変換してファサード３１へ受け渡し、ファサード３１は、さらに、受け取ったレスポンスオブジェクトをプロキシ２５へ返送する。プロキシ２５は、受け取ったレスポンスオブジェクトをビューフローコントローラ２１へ受け渡す。
【００３６】
ビューフローコントローラ２１は、レスポンスオブジェクトを受けると、レスポンスオブジェクト内のステータスを読み出し（ステップＳ１５０）、ステップＳ１１０においてデータベース２２から読み出した画面遷移情報から次に表示する画面を選択し、レスポンスオブジェクト内の出力パラメータを基にビュー２３を生成する（ステップＳ１６０）。すなわち、Ｊａｖａ（登録商標）プログラムのコンポーネントであるＪａｖａ（登録商標）Ｂｅａｎｓを利用したＪＳＰにより、ビュー２３を作成する。なお、このとき、同一セッション内に保持しているデータを使用してもよい。ビューフローコントローラ２１は、ネットワークＮを介して、生成したビュー２３を表示するＨＴＴＰレスポンスをウェブクライアント１１のブラウザ１２へ送信する（ステップＳ１７０）。クライアントのブラウザ１２が受信したビューを表示することにより、ユーザは業務の処理結果を確認する。
【００３７】
なお、クライアントシステム１４のプロキシ１６からファサード３１へアクセスする場合には、プロキシ２５−ファサード３１間と同様のリクエストオブジェクト及びレスポンスオブジェクトを使用する。
また、プレゼンテーション層、ビジネス層、インテグレーション層及びリソース層の各機能は同じサーバに実装されてもよいし、複数のサーバへ分散して実装してもよい。
また、データベース２２にアプリケーションの業務処理に依存しない画面である静的コンテンツを記憶しておき、ステップＳ１００においてＵＲＩを解析した結果、静的コンテンツが要求されていると判断した場合に、データベース２２から要求された静的コンテンツを読み出してウェブクライアント１１のブラウザ１２へ返送してもよい。
【００３８】
この発明によれば、アプリケーションの構築に必要なＪ２ＥＥの設定パターンに関する知識がアプリケーションシステム６０のアーキテクチャ自体に組み込まれている。よって、アプリケーションシステム６０を使用することにより、システム設計者に求められる知識量が軽減される。また、Ｊ２ＥＥにおいては各階層における機能配置や階層間にどのようにアクセスを持つかは規定されていなかったが、アプリケーションシステム６０を適用することにより、システム設計者に対して機能配置などの設計についての負担を軽減しながら、Ｊ２ＥＥを適用したアーキテクチャを構築することが可能となる。
【００３９】
なお、上述のアプリケーション提供システム６０を構成するサーバは、内部にコンピュータシステムを有している。そして、上述した動作の過程は、プログラムの形式でコンピュータ読み取り可能な記録媒体に記憶されており、このプログラムをコンピュータシステムが読み出して実行することによって、上記処理が行われる。ここでいうコンピュータシステムとは、ＯＳや周辺機器等のハードウェアを含むものである。
【００４０】
また、「コンピュータ読み取り可能な記録媒体」とは、ＲＯＭの他に、磁気ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムが送信された場合のシステムやクライアントとなるコンピュータシステム内部の揮発性メモリ（ＲＡＭ）のように、一定時間プログラムを保持しているものも含むものとする。
【００４１】
また、上記プログラムは、このプログラムを記憶装置等に格納したコンピュータシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピュータシステムに伝送されてもよい。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク（通信網）や電話回線等の通信回線（通信線）のように情報を伝送する機能を有する媒体のことをいう。
また、上記プログラムは、前述した機能の一部を実現するためのものであっても良い。さらに、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル（差分プログラム）であっても良い。
【００４２】
【発明の効果】
この発明によれば、プレゼンテーション層とビジネス層の変更が双方に影響を及ぼさないため、システム拡張を柔軟に行うことができる。すなわち、イベントＩＤとシナリオＩＤのマッピング、あるいは、シナリオＩＤとビジネスシナリオのマッピングを変更することにより、ビジネスシナリオに変更を及ぼすことなく、画面デザインのみの変更をすることが可能となり、同様に、画面生成処理に変更を及ぼすことなく、ビジネスシナリオの変更を行うことが可能となる。よって、ビジネスシナリオ及び画面生成処理の再利用を図ることができる。
また、プロキシを介してビジネス層にアクセスすることにより、クライアント層における端末の種類に依存せず、同じビジネスシナリオにより、アプリケーションを提供することができる。
【図面の簡単な説明】
【図１】  この発明の一実施の形態によるアプリケーション提供システム６０の構成を示すブロック図である。
【図２】  同実施の形態によるアプリケーション提供システム６０の動作フローを示す図である。
【符号の説明】
１１…ウェブクライアント
１２…ブラウザ
１４…クライアントシステム
１６、２５…プロキシ
１７−１、１７−２、１７−ｎ、２３−１、２３−２、２３−ｎ…ビュー
２１…ビューフローコントローラ
２２，３４…データベース
３１…ファサード
３３…ビジネスマッピング
３５−１、３５−２、３５−ｎ…デリゲート
３７−１、３７−２、３７−ｎ…ビジネスシナリオ
４１…ＤＡＯ
４３…ＳＡＯ
５１…ＤＢＭＳ
５３…外部システム
６０…アプリケーション提供システム
【図１】
0003670261.tif 000002
【図２】
0003670261.tif 000003