(57)【要約】【課題】サーバが出力する画面データをクライアントに適合するようにカスタマイズする。【解決手段】アダプタ装置は、サーバからクライアントへの画面とその画面出力のためのクライアントからの入力データ項目の関係を定義したサーバシナリオ定義とクライアントの特性に応じて定義した画面設計定義とを用意する。サーバシナリオ定義に定義された、入力データ項目に対応する入力データが入力メモリに格納されているとき、入力データ項目に対応する入力データをサーバへ出力する。一方、出力データメモリに格納されているサーバからの出力データを、画面設計定義に定義された画面設計に従って、クライアントへ出力する。【選択図】図１
2010134512.tif 000002
【特許請求の範囲】
【請求項１】
クライアントとサーバとに接続し、
前記サーバが前記クライアントへの画面を出力するために要する前記クライアントからの入力データ項目を前記画面の遷移に応じて定義したサーバシナリオ定義と前記クライアントへ前記画面を表示するための画面設計を前記クライアントの特性に応じて定義した画面設計定義とを格納するメモリ、
前記クライアントからの前記入力データ項目に対応する入力データを格納する入力データメモリ、
前記サーバから前記クライアントへ前記画面を出力するための出力データを格納する出力データメモリ、
前記クライアントからの前記入力データを入力し、前記入力データメモリに格納する手段、
前記サーバシナリオ定義に定義された、前記入力データ項目に対応する前記入力データが前記入力メモリに格納されているとき、前記入力データ項目に対応する前記入力データを前記サーバへ出力する手段、
前記サーバから前記出力データを入力し、前記出力データメモリに格納する手段、及び
前記出力データメモリに格納されている前記出力データを、前記画面設計定義に定義された前記画面設計に従って、前記クライアントへ出力する手段を有することを特徴とするアダプタ装置。
【請求項２】
前記クライアントのユーザ特性を格納する個人特性ＤＢをさらに有し、前記画面設計定義を前記ユーザ特性に対応して設け、
前記クライアントへ出力する手段は、前記クライアントの前記ユーザ特性に対応した前記画面設計定義に定義された前記画面設計に従って前記出力データを出力することを特徴とする請求項１記載のアダプタ装置。
【請求項３】
前記メモリに、前記クライアントへの出力データの画面レイアウトを定義した画面合成定義をさらに有し、
前記クライアントへ出力する手段は、前記クライアントの前記ユーザ特性に対応した前記画面設計定義に定義された前記画面設計に従い、さらに前記画面レイアウトに従って前記出力データを出力することを特徴とする請求項２記載のアダプタ装置。
【請求項４】
前記クライアントからの入力データ項目に対応する入力データが、既に前記入力データメモリに格納されているとき、前記クライアントへ出力する手段は、前記入力データメモリに格納されている入力データを、入力データ項目の入力欄に出力することを特徴とする請求項３記載のアダプタ装置。
【請求項５】
前記クライアントからの入力データ項目に対応する入力データが、既に前記入力データメモリに格納されているとき、前記クライアントへ出力する手段は、前記入力データ項目及びその入力欄を出力しないことを特徴とする請求項３記載のアダプタ装置。
【請求項６】
クライアントとサーバとに接続し、
前記サーバが前記クライアントへの画面を出力するために要する前記クライアントからの入力データ項目を前記画面の遷移に応じて定義したサーバシナリオ定義と前記クライアントへ前記画面を表示するための画面設計を前記クライアントの特性に応じて定義した画面設計定義とを格納するメモリ、
前記クライアントからの前記入力データ項目に対応する入力データを格納する入力データメモリ、及び
前記サーバから前記クライアントへ前記画面を出力するための出力データを格納する出力データメモリを有するアダプタ装置によるカスタマイズ方法であって、
前記クライアントからの前記入力データを入力し、
入力した前記入力データを前記入力データメモリに格納し、
前記サーバシナリオ定義に定義された、前記入力データ項目に対応する前記入力データが前記入力メモリに格納されているとき、前記入力データ項目に対応する前記入力データを前記サーバへ出力し、
前記サーバから前記出力データを入力し、
入力した前記出力データを前記出力データメモリに格納し、
前記出力データメモリに格納されている前記出力データを、前記画面設計定義に定義された前記画面設計に従って、前記クライアントへ出力することを特徴とするカスタマイズ方法。
【請求項７】
前記アダプタ装置は前記クライアントのユーザ特性を格納する個人特性ＤＢをさらに有し、前記画面設計定義を前記ユーザ特性に対応して設け、
前記クライアントの前記ユーザ特性に対応した前記画面設計定義に定義された前記画面設計に従って前記出力データを出力することを特徴とする請求項６記載のカスタマイズ方法。
【請求項８】
前記メモリに、前記クライアントへの出力データの画面レイアウトを定義した画面合成定義をさらに有し、
前記クライアントの前記ユーザ特性に対応した前記画面設計定義に定義された前記画面設計に従い、さらに前記画面レイアウトに従って前記出力データを出力することを特徴とする請求項７記載のカスタマイズ方法。
【請求項９】
前記クライアントからの入力データ項目に対応する入力データが、既に前記入力データメモリに格納されているとき、前記入力データメモリに格納されている入力データを、入力データ項目の入力欄に出力することを特徴とする請求項８記載のカスタマイズ方法。
【請求項１０】
前記クライアントからの入力データ項目に対応する入力データが、既に前記入力データメモリに格納されているとき、前記入力データ項目及びその入力欄を出力しないことを特徴とする請求項８記載のカスタマイズ方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、クライアントサーバ型アプリケーションにけるクライアントに適合したアダプタ装置及びそれによるカスタマイズ方法に関する。
【背景技術】
【０００２】
ネットワークと、それに接続するサーバコンピュータ(以下、サーバ)と複数のクライアントコンピュータ(以下、クライアント)とで構成される分散システムにおいて、サーバにより実行される、業務サービスを提供するサーバプログラムと、クライアントにより実行されるサーバプログラムが提供する業務サービスを利用するクライアントプログラムとから構成されるクライアントサーバ型のアプリケーションが広く利用されている。
【０００３】
このようなクライアントサーバ型のアプリケーションには、例えば、銀行において、営業店のクライアント上で動作するクライアントプログラムと、クライアントプログラムからの要求に応じてコンピュータセンタで勘定業務を集中的に取り扱うサーバプログラムとによるアプリケーションがある。このようなアプリケーションでは、クライアントとしてPC(パーソナルコンピュータ)などの端末を用いることを前提にしていた業務サービスを拡張や変更するために、携帯電話やPDA等の小型の携帯端末もクライアントとして加えることがある。携帯端末をクライアントとして、そのプログラムからも、勘定業務を取り扱うサーバプログラムを利用できるようにする場合、PCのように大きなディスプレイを持つクライアント用に用意された画面を、携帯端末の小型ディスプレイにそのまま表示することはできないため、携帯端末用に新しい画面を用意する必要がある。この場合、同じ業務サービスに関してPCの画面とは別に携帯端末用の画面を出力するようにプログラムを変更しなければならない。PC用のプログラムを変更すると、変更箇所だけでなく、プログラム変更が影響する可能性のあるプログラム部分もテストする必要があり、プログラムの開発コストが余計にかかる。また、予期せぬバグによって、今まで正常に動作していたプログラムが動かなくなるリスクもある。
【０００４】
こういった問題に対して、既存のプログラムを変更せずに、アダプタと呼ばれるプログラムを用いてサーバプログラムとクライアントプログラム間の通信を中継し、アダプタプログラムがサーバプログラムの出力する画面情報(HTML)を受け取って、その画面情報の文字の大きさや画面部品の配置などのレイアウトやスタイルを変更してクライアントプログラムに渡すことにより、新しく追加するクライアント用の画面情報を生成する技術が、特許文献１に記載されている。
【０００５】
【特許文献１】特開2004-246747号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
既存のアプリケーションにおいて、携帯端末などのクライアントの追加の際に別途画面を表示する場合、特許文献１記載のアダプタプログラムを用いると、既存の画面を新しいクライアント用の画面として、サーバプログラムが出力する１画面情報のレイアウトやスタイルを変更できる。しかし、特許文献１記載のアダプタプログラムでは、従来少ない画面数で構成され１画面で多くの情報を表示・データ入力していた業務を、あまり多くの情報を表示できない小型のディスプレイをもつクライアントで実行させるために、複数画面に分けて、分けた各画面で表示・データ入力する情報を少なくするように変更することはできない。
【０００７】
さらに、クライアントサーバ型のアプリケーションによる業務サービスを受けるユーザの、クライアント画面操作の熟練度に応じた画面のカスタマイズの要請もある。このようなクライアント画面のサイズなどの特性やユーザの特性に応じるためには、画面遷移を考慮した複数の画面に渡る変更を実現する必要がある。
【０００８】
また、クライアントサーバ型のアプリケーションは、一般に複数の業務サービスを提供する。たとえば、銀行の営業店において、顧客の一度の訪問に対して、銀行員が「振込と出金」などの複数の業務サービスを実行する。複数の業務サービスの間では、同じデータ項目の重複入力が発生する。この重複入力は作業効率向上の妨げになる。
【０００９】
本発明の目的は、画面遷移も含めた複数の画面に渡る変更を可能にサーバが出力する画面データをクライアントに適合するようにカスタマイズするアダプタ装置及びそのカスタマイズ方法を提供することにある。ここでのカスタマイズとは、クライアントの画面のサイズなどの特性やユーザの特性に対応させてアプリケーションの画面表示内容を変更することである。
【００１０】
本発明の他の目的は、複数の業務サービス間で重複データ入力を無くしたアダプタ装置及びそれによるカスタマイズ方法を提供することにある。
【課題を解決するための手段】
【００１１】
本発明のアダプタ装置及びそれによるカスタマイズ方法は次のような態様である。アダプタ装置は、クライアントとサーバとに接続し、サーバがクライアントへの画面を出力するために要するクライアントからの入力データ項目を画面の遷移に応じて定義したサーバシナリオ定義とクライアントへ画面を表示するための画面設計をクライアントの特性に応じて定義した画面設計定義とを格納するメモリ、クライアントからの入力データ項目に対応する入力データを格納する入力データメモリ、及びサーバからクライアントへ画面を出力するための出力データを格納する出力データメモリを有する。このような構成のアダプタ装置は、クライアントからの入力データを入力し、入力データメモリに格納する。サーバシナリオ定義に定義された、入力データ項目に対応する入力データが入力メモリに格納されているとき、入力データ項目に対応する入力データをサーバへ出力する。サーバからの出力データを入力し、出力データメモリに格納する。出力データメモリに格納されている出力データを、画面設計定義に定義された画面設計に従って、クライアントへ出力する。
【００１２】
本発明の他の態様は、アダプタ装置はクライアントのユーザ特性を格納する個人特性ＤＢをさらに有し、画面設計定義をそのユーザ特性に対応して設ける。そして、クライアントのユーザ特性に対応した画面設計定義に定義された画面設計に従って出力データを出力する。
【００１３】
本発明のさらに他の態様は、メモリに、クライアントへの出力データの画面レイアウトを定義した画面合成定義をさらに有する。そして、クライアントのユーザ特性に対応した画面設計定義に定義された画面設計及び画面レイアウトに従って出力データを出力する。
【００１４】
本発明のさらに他の態様は、クライアントからの入力データ項目に対応する入力データが、既に入力データメモリに格納されているとき、入力データメモリに格納されている入力データを、入力データ項目の入力欄に出力する。
【００１５】
本発明のさらに他の態様は、クライアントからの入力データ項目に対応する入力データが、既に入力データメモリに格納されているとき、入力データ項目及びその入力欄を出力しない。
【発明の効果】
【００１６】
本発明によれば、アダプタ装置は、サーバが出力する画面データをクライアントに適合するようにカスタマイズできる。
【発明を実施するための最良の形態】
【００１７】
以下、本発明の実施の形態について図面を参照して説明する。
【００１８】
図１は、本実施形態のシステム構成を示すブロック図である。本システムは、クライアントサーバ型アプリケーションのクライアントプログラム５０１が動作するクライアント５００、クライアントサーバ型アプリケーションのサーバプログラム７０１が動作するサーバ７００及びそれらの間の通信を中継するアダプタ装置６００を有する。
【００１９】
アダプタ装置６００では、アダプタプログラム６１０が動作する。アダプタプログラム６１０には、クライアントと通信する画面制御機能６３０とサーバと通信するHTTP通信機能６２０がある。画面制御機能６３０に、入出力データ格納処理６３１、入出データ監視・取出処理６３２、画面合成処理６３３、重複データコピー処理６３４を設ける。図1に示す入力データメモリ６８１、出力データメモリ６８２、アダプタ装置６００内の図示を省略したメモリに格納した画面設計定義６６１、画面合成定義６６２、サーバシナリオ定義６６３、重複データ定義６６４の各定義及び個人特性ＤＢ６６５に関しては、アダプタプログラム６１０の動作と共に以下に説明する。
【００２０】
図２は、クライアントサーバ型アプリケーション（以下、アプリケーション）の動作概要を示すフローチャートである。クライアントプログラム５０１は、クライアント５００のローカルにある業務サービスを選択する初期画面を表示する（Ｓ１００１）。ローカルにあるとは、表示する初期画面のデータがクライアント５００にあるという意である。初期画面を表示したものの、クライアントの利用者が、業務サービスを受けない場合、または受けていた業務サービスの利用を終了する場合には、画面を閉じるか画面内の終了ボタンを押す（Ｓ１００２）。利用する業務サービスの選択に応答して、クライアントプログラム５０１は、選択された業務サービスのための画面をアダプタプログラム６１０に要求する（Ｓ１００３）。
【００２１】
クライアントプログラム５０１から渡された画面要求データはアダプタプログラム６１０内の画面制御機能６３０に渡され、画面制御機能６３０は入出力データ格納処理６３１を実行して、画面要求してきたクライアント５００とそのクライアント５００が表示している画面とを識別するために、画面要求のヘッダ情報（ブラウザからのHTTPリクエストヘッダ情報）を画面要求データに結び付けて、入力データメモリ６８１内に入力データとして格納する（Ｓ１１００）。ただし、最初の業務サービスの選択に対応した画面要求においては、アダプタプログラム６１０はその画面要求をスルーさせて、サーバプログラム７０１に向けて送出する。すなわち、サーバ７００とクライアント５００の間にアダプタ装置６００が存在しない、既存のシステム構成における業務サービスの選択に対応した画面要求と同様の処理である。このようにして初期の画面要求に応じて、サーバプログラム７０１からの入力画面または後述する分割又は簡略化された入力画面に従って、クライアント５００からデータが入力され、アダプタ装置６００は入力データメモリ６８１内に入力データとして格納する。
【００２２】
図３に、入力データメモリ６８１内のデータ格納状況の例を示す。図のように入力データメモリ６８１は表形式で構成され、各入力データはその表に対する１レコード（行）として登録される。入力データの項目には、少なくともデータ項目１０１、データ値１０２、データ型１０３、ＨＴＴPリクエストヘッダ情報１０４、送信フラグ１０５及び各入力データを識別するためのデータID１００がある。送信フラグ１０５は、データID１００で識別されるデータをサーバプログラム７０１へ送信済みかどうかを表し、これにより同一データのサーバプログラム７０１への二重送信を防ぐ。なお、送信フラグ１０５は、データを未送信のときにFalse、送信済みのときにTrueである。
【００２３】
入力データを格納した後、入出力データ監視・取出処理６３２を実行し、サーバプログラム７０１による画面遷移と遷移する各画面に表示する入出力データ項目が定義されたサーバシナリオ定義６６３を参照して、次の画面に遷移するために必要な入力データ項目をリストアップし、それらの項目が入力データメモリ６８１内のいまだ送信されていないデータ項目の中に存在するかどうかチェックし（Ｓ１１０１）、存在する場合にはそのデータを取り出して、HTTP通信機能６２０にデータを渡す（Ｓ１１０２）。データを取り出した場合、入力データメモリ６８１内の取り出したデータの送信フラグ１０５をTrueに変更する。次の画面に遷移するために必要な入力データ項目が存在しない場合には、次の画面を表示する処理に移る。
【００２４】
図４に、振込業務に係るサーバシナリオ定義６６３の例を示す。サーバシナリオ定義６６３は、サーバプログラム７０１が提供する業務毎に、サーバ７００から提供され、その業務実行のための画面遷移と遷移する各画面に表示する入出力データ項目が定義されている。言い換えると、サーバシナリオ定義は、サーバ７００がクライアント５００への次の画面を出力するために必要なクライアント５００からの入力データ項目を、現画面から次の画面への遷移に応じて定義している。図４の例は、「振込業務」に関する定義である。Screenタグは「振込業務」で提供される画面とその順序を表現しており、この例では「ログイン画面」、「振込情報入力画面」、「振込確認画面」、「振込結果画面」の順で画面遷移することを意味している。そして、画面内に表示されるデータ項目がScreenItemタグとして定義され、その属性としてtypeでデータの型（HTMLのフォームのtypeに相当）、controlで入力項目か出力項目かを指定する。この例では「ログイン画面」でtext型の「口座番号」とpassword型の「暗証番号」というデータ項目がどちらも「入力」データ項目として表示されることを意味している。
【００２５】
HTTP通信機能６２０は、画面制御機能６３０から取得した入力データを用いてサーバプログラム７０１に対して処理要求を出力し（Ｓ１２００）、サーバプログラム７０１はその処理要求に対して画面情報を返却し（Ｓ１３００）、その画面情報を受け取ったＨＴＴＰ通信機能６２０はその結果を画面制御機能６３０に渡す（Ｓ１２０１）。
【００２６】
画面情報を受け取った画面制御機能６３０は、入出力データ格納処理６３１に画面情報を渡し、入出力データ格納処理６３１は、サーバプログラム７０１の入出力データ項目が定義されたサーバシナリオ定義６６３を用いて、画面情報を定義されたデータ項目毎に分割し、出力データメモリ６８２内に格納する（Ｓ１１０３）。
【００２７】
図５に出力データメモリ６８２内のデータ格納状況の例を示す。入力データメモリ６８１同様に出力データメモリ６８２は表形式で構成され、画面情報を分割して得られた出力データはその表に対する１レコード（行）として登録される。出力データの項目には、少なくともデータ項目２０１、データ値２０２、データ型２０３、ＨＴＴPリクエストヘッダ情報２０４、送信フラグ２０５及び各出力データを識別するためのデータID２００がある。送信フラグ２０５は、データID２００で識別されるデータをクライアントプログラム５０１へ送信済みかどうかを表し、これにより同一データのクライアントプログラム５０１への二重送信を防ぐ。なお、送信フラグ２０５は、データを未送信のときにFalse、送信済みのときにTrueである。
【００２８】
データ格納後、入出力データ監視・取出処理６３２が、クライアントプログラム５０１の画面遷移と遷移する各画面に表示する入出力データ項目が定義された画面設計定義６６１を参照して、次にクライアントプログラム５０１が表示する画面に必要な出力データ項目をリストアップしてそれらの項目を出力データメモリ内から取り出し（Ｓ１１０４）、画面合成処理６３３が、画面設計定義６６１を参照して、次に表示する画面に必要な入力データ項目をリストアップして、そのデータ項目用の入力部品を生成し、出力データメモリ６８２から取り出した出力データ項目と合わせて画面合成定義６６２に定義されたレイアウトで１画面内に配置して画面情報を完成させる（Ｓ１１０５）。
【００２９】
図６に、画面設計定義６６１の例を示す。これは、図４のサーバシナリオ定義６６３で定義されたサーバプログラム７０１の画面遷移をクライアントプログラム５０１で表示するようにカスタマイズしたものである。ここでは、小型のディスプレイをもつクライアントでの利用を想定して、１画面内に表示する項目を少なくするように画面設計している。
【００３０】
画面設計定義６６１は、同じサーバシナリオ定義６６３に関して複数種類用意する。複数種類とは、個人特性ＤＢ６６５に格納されているクライアント５００のユーザ特性の種別数に応じた種類である。クライアント５００のユーザのクライアント画面操作の熟練度などに応じたユーザ特性が個人特性ＤＢ６６５に格納されている。ユーザ特性は各ユーザに関して、クライアント画面表示から、その画面への入力完了までの時間や入力誤り率などをアダプタ装置６００で観測し、ユーザ特性として個人特性ＤＢ６６５に格納しても良いが、簡単のために複数段階の熟練度などのレベルを設け、各ユーザをこれらのレベルのいずれかに対応付ける。レベルへの対応付けには、前述のようにアダプタ装置６００で観測した結果を用いても良いし、各ユーザに熟練度などのレベルを選択又は変更させるようにしてもよい。この熟練度などのレベルに応じて、画面設計定義６６１を用意する。たとえば、熟練度が低いユーザには、各入力項目に対する説明文を詳細にする、入力データ毎に確認を求めるボタンを表示するなどである。逆に、熟練度が高いユーザには、各入力項目に対する説明文を簡略化する又は項目表示にする、複数の入力データを纏めて確認を求めるボタンを表示するなどである。このために個人特性ＤＢ６６５に各ユーザと熟練度などのレベルとの対応表を設け、参照する。
【００３１】
図７に画面合成定義６６２の例を示す。画面合成定義６６２は、表示するデータ項目をどのように画面上に配置するか、すなわち画面レイアウトを定義するものである。この例ではVerticalLoopは、データ項目がある限り、この子要素を縦（下方向）に並べていくことを意味している。これによりデータ項目を画面上に縦に順に並べていくレイアウトを指定している。そして、重複データコピー処理６３４が、値が同じであるデータ項目の集合をグループ化した重複データ定義６６４を参照し、先ほど画面上に配置したデータ項目と同じグループに含まれるデータ項目が入力データメモリ６８１内に存在するかどうか確認し、存在する場合にはそのデータ項目の値をコピーし、画面情報内の入力部品にペーストする。ここで、重複する入力項目を表示させない場合には、データ項目を非表示にして編集できないようにしてもよい。データ項目を非表示にして、そのデータ項目を含む画面内に表示するデータがない場合には、その画面の表示をスキップし、次の画面の表示に切り替える。
【００３２】
図８に重複データ定義６６４の例を示す。この定義６６４では、各業務における複数のデータのうち、同じ値を持つデータ項目をGroupタグで１つのグループにまとめており、visible属性により表示または非表示を定めている。この例では、「振込業務」における「口座番号」データと「出金業務」における「口座番号」データが同じグループとして定義されており、重複データを「表示」するというように定義している。その後、画面情報をクライアントプログラム５０１に渡す（Ｓ１１０６）。
【００３３】
クライアントプログラム５０１は受け取った画面情報を画面に表示し、以後業務終了まで操作を続ける（Ｓ１００２）。
【００３４】
「振込業務」を提供するアプリケーションを例として説明する。図９に、図４のサーバシナリオ定義６６３に対応したカスタマイズ前の画面イメージを示す。図１０に、図６の画面設計定義６６１に対応したカスタマイズ後の画面イメージを示す。この例では、図９のように４画面で実行していた業務処理を、画面が小さく表示可能な項目数が限られている端末向けに図１０のように1画面内に表示する項目を２つ以下にし、かつ銀行員がデータ入力し、顧客がその入力結果を確認するために、１つの画面内に入力項目と出力項目とを同時に表示しないように画面を分けた定義を示している。
【００３５】
図１１に、「振込業務と出金業務」を実行する際に重複するデータ項目の値をコピーする例を示す。図１１では、「振込業務」において１度入力した「口座番号」と「暗証番号」が、「出金業務」においてコピーされていることを示している。ここで、「金額」も重複するデータ項目であるが、「振込業務」における「金額」は振込額であり、「出金業務」における「金額」は出金額であり、両金額が同じであるとは限らない。このような場合、値をコピーしない。クライアント５００の画面上は、以上のようにコピーされているようにするために、クライアント５００からの「口座番号」と「暗証番号」のような入力データ項目に対応する入力データが、既に入力データメモリ６８１に格納されているとき、入力データメモリに格納されている入力データを、「出金業務」の入力データ項目の入力欄に出力する
図１２に、重複するデータ項目を表示しない例を示す。図１２では、図１１において重複したデータ項目を、非表示にしていることを示している。ここで、非表示とするのは、データ項目の値が同じでありかつそのデータ項目を改めて表示することが冗長であると画面設計者が判断する場合である。今回の例では、同じ顧客で業務処理を行うため口座番号と暗証番号は同じであり、再度表示することが冗長であると判断したため非表示とした。なお、非表示に関して、入力データ項目に限らず出力データ項目に関しても開発者の判断で表示と非表示とを切り替える。これは、注意事項の説明文等のような、複数の業務で同じ内容の出力データ項目があり、かつ業務ごとに再度説明する必要がないと画面設計者が判断する場合に非表示にする。非表示とは、図示するように、入力データ項目及びその入力欄を出力しないことである。
【００３６】
アプリケーションをカスタマイズするために必要な定義は、サーバシナリオ定義６６３、画面設計定義６６１、画面合成定義６６２、重複データ定義６６４の４つである。サーバシナリオ定義６６３は、サーバプログラム７０１に渡す入力データ項目をリストアップする際と、サーバプログラム７０１から受け取った出力データをどのデータ項目に分割するかをリストアップする際に用いるため、サーバプログラム７０１の提供する各画面における入出力データ項目が定義されている。サービスを提供する業務単位でサーバシナリオ定義６６３を用意し、その業務内で提供される各画面を順番に列挙して、各画面の入出力データ項目を定義する。
【００３７】
画面設計定義６６１は、クライアントプログラム５０１で表示する画面に含めるデータ項目をリストアップする際に用いるため、クライアントプログラム５０１に表示する各画面に含めるデータ項目が定義されている。サービスを提供する業務単位で画面設計定義６６１を用意し、クライアントプログラム５０１に表示する画面を順番に列挙して、サーバシナリオ定義６６３で定義されたサーバプログラム７０１が提供するデータ項目を各画面内に定義する。サーバシナリオ定義６６３で定義された業務内のデータ項目のすべてを画面設計定義６６１の中に定義する。また、例えば入力Ａにより出力Ｂが得られるような場合、画面設計定義６６１の中で先に入力Ａを表示するように定義し、出力Ｂを後に表示するように定義する。
【００３８】
画面合成定義６６２では、画面設計定義６６１で定義されたデータ項目を画面内のどの場所に配置するかを決める際に用いるため、クライアントプログラム５０１で表示する各画面におけるデータ項目のレイアウトを定義する。画面合成定義６６２は、サービスを提供する業務と業務を利用するためのクライアント５００の組合せ毎に用意されるが、業務が提供する各画面で共通的に１つのレイアウトを指定するか、または各画面毎に１つずつレイアウトを指定し、画面内でのデータ項目のレイアウトを指定する。レイアウトの指定方法は、絶対位置で指定する方法と相対位置で指定する方法がある。絶対位置で指定する方法は、データ項目１つ１つに対して画面内の座標を指定する。相対位置で指定する方法は、１つ前に配置したデータ項目に対して次のデータ項目を配置する左右、上下等の相対的な方向及び間隔を指定する。例えば、横長のディスプレイを持つクライアント５００では、左右にデータ項目を配置するレイアウトを指定し、携帯電話のような縦長のディスプレイを持つクライアント５００では、上下にデータ項目を配置するレイアウトを指定することで、クライアント５００の画面特性に応じた表示が可能である。
【００３９】
重複データ定義６６４では、取り扱う複数の業務における複数のデータ項目のうち、同じデータ項目であるとみなすデータ項目を１グループとして定義する。このようなデータ項目は、たとえば銀行業務における、あるユーザの入金業務とこの入金業務に伴う振込業務の間での入金金額データと振込金額データである。ここでグループとして定義したデータ項目は、アプリケーション利用時に一度入力されると、重複データコピー処理６３４によって、再度同じデータを入力する手間を省く処理に使われる。
【００４０】
以上説明した実施形態によれば、アダプタ装置は、サーバが出力する画面データをクライアントに適合するようにカスタマイズできる。具体的には、クライアントサーバ型のアプリケーションにおいて、既存のプログラムを変更することなく、サーバプログラムが提供する各業務画面の表示内容や画面遷移を自由に変更できる。例えば、大きなディスプレイを持つクライアント用に１画面で多くの情報を表示し、なるべく少ない画面遷移で業務が遂行できるように開発されたアプリケーションを、小さなディスプレイを持つクライアント用に画面を分割して１画面内の情報を少なくして、画面スクロール等の作業の手間を省けるように画面を変更できる。
【００４１】
また、複数の業務処理を実行する際に、すでに入力したデータを再度入力するユーザの手間を無くすことができる。
【図面の簡単な説明】
【００４２】
【図１】本実施形態のシステム構成例を示すブロック図である。
【図２】アプリケーションの動作概要を示すフローチャートである。
【図３】入力データメモリ内のデータ格納状況の例である。
【図４】振込業務に係るサーバシナリオ定義の例である。
【図５】出力データメモリ内のデータ格納状況の例である。
【図６】画面設計定義の例である。
【図７】画面合成定義の例である。
【図８】重複データ定義の例である。
【図９】カスタマイズ前の画面イメージである。
【図１０】カスタマイズ後の画面イメージである。
【図１１】重複するデータ項目の値をコピーする例である。
【図１２】重複するデータ項目を表示しない例である。
【符号の説明】
【００４３】
５００：クライアント、５０１：クライアントプログラム、６００：アダプタ装置、６１０：アダプタプログラム、６３０：画面制御機能、６８１：入力データメモリ、６８２：出力データメモリ、６６１：画面設計定義、６６２：画面合成定義、６６３：サーバシナリオ定義、６６４：重複データ定義、６６５：個人特性ＤＢ。
【図１】
2010134512.tif 000003
【図２】
2010134512.tif 000004
【図３】
2010134512.tif 000005
【図４】
2010134512.tif 000006
【図５】
2010134512.tif 000007
【図６】
2010134512.tif 000008
【図７】
2010134512.tif 000009
【図８】
2010134512.tif 000010
【図９】
2010134512.tif 000011
【図１０】
2010134512.tif 000012
【図１１】
2010134512.tif 000013
【図１２】
2010134512.tif 000014