(57)【要約】【課題】情報処理能力が十分でない端末装置において複雑な情報処理が行えなかった。【解決手段】端末装置とサーバ装置を具備する情報システムにおけるサーバ装置であって、端末要求を構成する情報とシナリオ元情報との対応を示す１以上の対応情報を格納し得る対応情報格納部と、端末装置から端末要求を受信する受信部と、端末要求を解釈し、端末要求に対応するシナリオ元情報を取得し、かつ端末要求に対応する処理を行う端末要求処理部と、端末要求処理部が取得したシナリオ元情報と端末要求処理部２０６の処理結果とを用いて、シナリオを生成するシナリオ生成部と、シナリオ生成部が生成したシナリオを端末装置に送信する送信部とを具備する情報システムにより、ドライバにより駆動される１以上のハードウェアを具備し、かつ情報処理能力が十分でない端末装置において、１以上のハードウェアを有効に利用しつつ、複雑な情報処理が行える。【選択図】図１
2014092810.tif 000002
【特許請求の範囲】
【請求項１】
１または２以上の端末装置とサーバ装置とを具備する情報システムであって、
前記端末装置は、
ドライバにより駆動される１以上の端末機能部と、
前記１以上の端末機能部のドライバを識別する１以上のドライバ識別子を格納し得る端末ドライバ管理部と、
ユーザからの１以上の指示を受け付ける端末受付部と、
前記１以上の指示に対応する要求である端末要求を構成する端末要求構成部と、
前記端末要求を前記サーバ装置に送信する端末送信部と、
前記端末要求の送信に対応して、前記サーバ装置からコマンドとデータとを有するシナリオを受信する端末受信部と、
前記シナリオを解釈し、前記１以上のドライバ識別子、および当該１以上のドライバ識別子で識別される１以上の機能部に渡すデータであり、前記シナリオが有するデータを取得する端末パーサ部と、
前記端末パーサ部が取得した前記１以上のドライバ識別子で識別される１以上の端末機能部に、前記端末パーサ部が取得したデータを渡し、前記１以上の端末機能部を呼び出す端末機能呼出部とを具備し、
前記サーバ装置は、
端末要求を構成する情報とシナリオを構成する元になる情報であるシナリオ元情報との対応を示す１以上の対応情報を格納し得る対応情報格納部と、
前記端末装置から端末要求を受信する受信部と、
前記受信部が受信した端末要求を解釈し、当該端末要求に対応するシナリオ元情報を、前記対応情報格納部から取得し、かつ、前記受信部が受信した端末要求に対応する処理を行う端末要求処理部と、
前記端末要求処理部が取得したシナリオ元情報と、前記端末要求処理部が処理を行って得た処理結果とを用いて、シナリオを生成するシナリオ生成部と、
前記シナリオ生成部が生成したシナリオを端末装置に送信する送信部とを具備する情報システム。
【請求項２】
前記端末装置は、
１以上のオブジェクトを格納し得る端末オブジェクト格納部と、
前記１以上のオブジェクトを出力する端末オブジェクト出力部とをさらに具備し、
前記シナリオは、
オブジェクトの動作を示すコマンドである動作コマンドを有し、
前記端末パーサ部は、
前記シナリオを解釈し、当該シナリオから動作コマンドを取得し、
前記端末オブジェクト出力部は、
前記動作コマンドに従って、当該動作コマンドに対応するオブジェクトを動作させる請求項１記載の情報システム。
【請求項３】
前記サーバ装置は、
端末要求の一部または全部である要求履歴を格納し得る履歴格納部と、
前記受信部が受信した端末要求の一部または全部である要求履歴を前記履歴格納部に蓄積する履歴蓄積部とをさらに具備し、
前記シナリオ生成部は、
前記受信部が受信した端末要求、および前記履歴格納部に格納されている要求履歴を用いてシナリオを生成する請求項１または請求項２記載の情報システム。
【請求項４】
前記サーバ装置は、
前記端末装置が具備している端末機能部のドライバを識別する１以上のドライバ識別子を格納し得るサーバドライバ管理部をさらに具備し、
前記シナリオ生成部は、
前記サーバドライバ管理部に格納されている１以上のドライバ識別子に応じて、生成するシナリオが異なる請求項１から請求項３いずれか一項に記載の情報システム。
【請求項５】
前記サーバ装置は、
前記要求履歴を統計処理し、統計処理結果を取得する統計処理結果取得部と、
前記統計処理結果を出力する統計処理結果出力部とをさらに具備する請求項３または請求項４記載の情報システム。
【請求項６】
前記シナリオ生成部が生成するシナリオは、
前記端末装置以外の端末装置である他端末装置に対するコマンドを含み、
前記送信部は、
前記他端末装置に、前記コマンドを送信する請求項１から請求項５いずれか一項に記載の情報システム。
【請求項７】
前記サーバ装置は、
２以上の端末装置のグループを特定する情報であり、２以上の各端末装置を識別する２以上の端末識別子を有するグループ情報を格納し得るグループ情報格納部をさらに具備し、
前記送信部は、
前記グループ情報が有する２以上のいずれかの端末識別子にも対応しない端末装置にはコマンドを送信しない請求項６記載の情報システム。
【請求項８】
請求項１から請求項７いずれか記載の情報システムを構成する端末装置。
【請求項９】
請求項１から請求項７いずれか記載の情報システムを構成するサーバ装置。
【請求項１０】
記憶媒体に、
前記１以上の端末機能部のドライバを識別する１以上のドライバ識別子を格納しており、
ドライバにより駆動される１以上の端末機能部、端末受付部、端末要求構成部、端末送信部、端末受信部、端末パーサ部、端末機能呼出部により実現される情報処理方法であって、
前記端末受付部が、ユーザからの１以上の指示を受け付ける端末受付ステップと、
前記端末要求構成部が、前記１以上の指示に対応する要求である端末要求を構成する端末要求構成ステップと、
前記端末送信部が、前記端末要求をサーバ装置に送信する端末送信ステップと、
前記端末受信部が、前記端末要求の送信に対応して、前記サーバ装置からコマンドとデータとを有するシナリオを受信する端末受信ステップと、
前記端末パーサ部が、前記シナリオを解釈し、前記１以上のドライバ識別子、および当該１以上のドライバ識別子で識別される１以上の機能部に渡すデータであり、前記シナリオが有するデータを取得する端末パーサステップと、
前記端末機能呼出部が、前記端末パーサ部が取得した前記１以上のドライバ識別子で識別される１以上の端末機能部に、前記端末パーサ部が取得したデータを渡し、前記１以上の端末機能部を呼び出す端末機能呼出ステップとを具備する情報処理方法。
【請求項１１】
記憶媒体に、
端末要求を構成する情報とシナリオを構成する元になる情報であるシナリオ元情報との対応を示す１以上の対応情報を格納しており、
受信部、端末要求処理部、シナリオ生成部、送信部により実現される情報処理方法であって、
前記受信部が、端末装置から端末要求を受信する受信ステップと、
前記端末要求処理部が、前記受信ステップで受信された端末要求を解釈し、当該端末要求に対応するシナリオ元情報を、前記記憶媒体から取得し、かつ、前記受信ステップで受信された端末要求に対応する処理を行う端末要求処理ステップと、
前記シナリオ生成部が、前記端末要求処理ステップで取得されたシナリオ元情報と、前記端末要求処理ステップで処理を行って得た処理結果とを用いて、シナリオを生成するシナリオ生成ステップと、
前記送信部が、前記シナリオ生成ステップで生成されたシナリオを端末装置に送信する送信ステップとを具備する情報処理方法。
【請求項１２】
記憶媒体に、
前記１以上の端末機能部のドライバを識別する１以上のドライバ識別子を格納しており、
コンピュータを、
ユーザからの１以上の指示を受け付ける端末受付部と、
前記１以上の指示に対応する要求である端末要求を構成する端末要求構成部と、
前記端末要求を前記サーバ装置に送信する端末送信部と、
前記端末要求の送信に対応して、前記サーバ装置からコマンドとデータとを有するシナリオを受信する端末受信部と、
前記シナリオを解釈し、前記１以上のドライバ識別子、および当該１以上のドライバ識別子で識別される１以上の機能部に渡すデータであり、前記シナリオが有するデータを取得する端末パーサ部と、
前記端末パーサ部が取得した前記１以上のドライバ識別子で識別される１以上の端末機能部に、前記端末パーサ部が取得したデータを渡し、前記１以上の端末機能部を呼び出す端末機能呼出部として機能させるためのプログラム。
【請求項１３】
記憶媒体に、
端末要求を構成する情報とシナリオを構成する元になる情報であるシナリオ元情報との対応を示す１以上の対応情報を格納し得る対応情報格納部と、
コンピュータを、
端末装置から端末要求を受信する受信部と、
前記受信部が受信した端末要求を解釈し、当該端末要求に対応するシナリオ元情報を、前記記憶媒体から取得し、かつ、前記受信部が受信した端末要求に対応する処理を行う端末要求処理部と、
前記端末要求処理部が取得したシナリオ元情報と、前記端末要求処理部が処理を行って得た処理結果とを用いて、シナリオを生成するシナリオ生成部と、
前記シナリオ生成部が生成したシナリオを端末装置に送信する送信部として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、端末装置の操作に応じて、サーバから端末装置に端末側ドライバ動作のためのコマンドを送信する情報システム等に関するものである。
【背景技術】
【０００２】
従来、クライアント側におけるＷｅｂブラウザの機能を有効に活用することによってサーバ側の負担を軽減しつつ、ダイナミックな画面展開を図ることができるクライアント・サーバシステムがあった（特許文献１参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００３−１８６７９２号公報（第１頁、第１図等）
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、従来のシステムにおいては、ドライバにより駆動される１以上のハードウェアを具備し、かつ情報処理能力が十分でない端末装置において、１以上のハードウェアを有効に利用しつつ、複雑な情報処理が行えなかった。
【課題を解決するための手段】
【０００５】
本第一の発明の情報システムは、１または２以上の端末装置とサーバ装置とを具備する情報システムであって、端末装置は、ドライバにより駆動される１以上の端末機能部と、１以上の端末機能部のドライバを識別する１以上のドライバ識別子を格納し得る端末ドライバ管理部と、ユーザからの１以上の指示を受け付ける端末受付部と、１以上の指示に対応する要求である端末要求を構成する端末要求構成部と、端末要求をサーバ装置に送信する端末送信部と、端末要求の送信に対応して、サーバ装置からコマンドとデータとを有するシナリオを受信する端末受信部と、シナリオを解釈し、１以上のドライバ識別子、および１以上のドライバ識別子で識別される１以上の機能部に渡すデータであり、シナリオが有するデータを取得する端末パーサ部と、端末パーサ部が取得した１以上のドライバ識別子で識別される１以上の端末機能部に、端末パーサ部が取得したデータを渡し、１以上の端末機能部を呼び出す端末機能呼出部とを具備し、サーバ装置は、端末要求を構成する情報とシナリオを構成する元になる情報であるシナリオ元情報との対応を示す１以上の対応情報を格納し得る対応情報格納部と、端末装置から端末要求を受信する受信部と、受信部が受信した端末要求を解釈し、端末要求に対応するシナリオ元情報を、対応情報格納部から取得し、かつ、受信部が受信した端末要求に対応する処理を行う端末要求処理部と、端末要求処理部が取得したシナリオ元情報と、端末要求処理部が処理を行って得た処理結果とを用いて、シナリオを生成するシナリオ生成部と、シナリオ生成部が生成したシナリオを端末装置に送信する送信部とを具備する情報システムである。
【０００６】
かかる構成により、ドライバにより駆動される１以上のハードウェアを具備し、かつ情報処理能力が十分でない端末装置において、１以上のハードウェアを有効に利用しつつ、複雑な情報処理が行える。
【０００７】
また、本第二の発明の情報システムは、第一の発明に対して、端末装置は、１以上のオブジェクトを格納し得る端末オブジェクト格納部と、１以上のオブジェクトを出力する端末オブジェクト出力部とをさらに具備し、シナリオは、オブジェクトの動作を示すコマンドである動作コマンドを有し、端末パーサ部は、シナリオを解釈し、シナリオから動作コマンドを取得し、端末オブジェクト出力部は、動作コマンドに従って、動作コマンドに対応するオブジェクトを動作させる情報システムである。
【０００８】
かかる構成により、ドライバにより駆動される１以上のハードウェアを具備し、かつ情報処理能力が十分でない端末装置において、１以上のハードウェアを有効に利用しつつ、アニメーション等のオブジェクトの複雑な動作の処理が行える。
【０００９】
また、本第三の発明の情報システムは、第一または第二の発明に対して、サーバ装置は、端末要求の一部または全部である要求履歴を格納し得る履歴格納部と、受信部が受信した端末要求の一部または全部である要求履歴を履歴格納部に蓄積する履歴蓄積部とをさらに具備し、シナリオ生成部は、受信部が受信した端末要求、および履歴格納部に格納されている要求履歴を用いてシナリオを生成する情報システムである。
【００１０】
かかる構成により、端末装置のユーザの操作の履歴に基づいて、端末装置において異なる動作を実現できる。
【００１１】
また、本第四の発明の情報システムは、第一から第三いずれかの発明に対して、サーバ装置は、端末装置が具備している端末機能部のドライバを識別する１以上のドライバ識別子を格納し得るサーバドライバ管理部をさらに具備し、シナリオ生成部は、サーバドライバ管理部に格納されている１以上のドライバ識別子に応じて、生成するシナリオが異なる情報システムである。
【００１２】
かかる構成により、端末装置のハードウェア構成に応じた、端末装置における適切な動作を実現できる。
【００１３】
また、本第五の発明の情報システムは、第三または第四の発明に対して、サーバ装置は、要求履歴を統計処理し、統計処理結果を取得する統計処理結果取得部と、統計処理結果を出力する統計処理結果出力部とをさらに具備する情報システムである。
【００１４】
かかる構成により、端末装置におけるユーザ操作に対して、統計処理を行える。
【００１５】
また、本第六の発明の情報システムは、第一から第五いずれかの発明に対して、シナリオ生成部が生成するシナリオは、端末装置以外の端末装置である他端末装置に対するコマンドを含み、送信部は、他端末装置に、コマンドを送信する情報システムである。
【００１６】
かかる構成により、一の端末装置におけるユーザ操作に基づいて、他の端末装置を操作できる。
【００１７】
また、本第七の発明の情報システムは、第六の発明に対して、サーバ装置は、２以上の端末装置のグループを特定する情報であり、２以上の各端末装置を識別する２以上の端末識別子を有するグループ情報を格納し得るグループ情報格納部をさらに具備し、送信部は、グループ情報が有する２以上のいずれかの端末識別子にも対応しない端末装置にはコマンドを送信しない情報システムである。
【００１８】
かかる構成により、一の端末装置におけるユーザ操作に基づいて、グループ管理された他の端末装置のみ操作ができる。
【発明の効果】
【００１９】
本発明による情報システムによれば、ドライバにより駆動される１以上のハードウェアを具備し、かつ情報処理能力が十分でない端末装置において、１以上のハードウェアを有効に利用しつつ、複雑な情報処理が行える。
【図面の簡単な説明】
【００２０】
【図１】実施の形態１における情報システムの概念図
【図２】同情報システムのブロック図
【図３】同端末装置１の動作について説明するフローチャート
【図４】同端末要求を構成する処理について説明するフローチャート
【図５】同サーバ装置２の動作について説明するフローチャート
【図６】同端末ドライバ管理表を示す図
【図７】同端末オブジェクト管理表を示す図
【図８】同対応情報管理表を示す図
【図９】同サーバドライバ管理表を示す図
【図１０】同グループ情報管理表を示す図
【図１１】同履歴管理表を示す図
【図１２】同関連ユーザ管理表を示す図
【図１３】同端末装置１におけるキャラクタの表示例を示す図
【図１４】同キャラクタ管理表を示す図
【図１５】同端末装置１におけるキャラクタの表示例を示す図
【図１６】同端末装置１におけるキャラクタの表示例を示す図
【図１７】同コンピュータシステムの概観図
【図１８】同コンピュータシステムのブロック図
【発明を実施するための形態】
【００２１】
以下、情報システム等の実施形態について図面を参照して説明する。なお、実施の形態において同じ符号を付した構成要素は同様の動作を行うので、再度の説明を省略する場合がある。
【００２２】
（実施の形態１）
本実施の形態において、端末装置でのユーザの指示等から構成された端末要求をサーバ装置が受信し、端末要求を用いて、サーバ装置で処理を行い、その処理結果と、端末要求を用いて取得されるシナリオ元情報とを用いて、シナリオを構成し、端末装置に送信する情報システムについて説明する。なお、端末装置は、シナリオを解釈し、ドライバを駆動し、ハードウェア（端末機能部）を動作させる。
【００２３】
また、本実施の形態において、端末要求を蓄積し、２以上の端末要求の履歴に基づいて、シナリオを生成する情報システムについて説明する。つまり、ユーザの指示の履歴に応じて、生成するシナリオが異なる情報システムについて説明する。
【００２４】
また、本実施の形態において、蓄積された端末要求を統計処理する情報システムについて説明する。
【００２５】
また、本実施の形態において、一の端末装置に対する操作により、サーバ装置が他の端末装置にコマンドを送信し、他の端末装置がコマンドを処理する情報システムについて説明する。
【００２６】
さらに、本実施の形態において、２以上の端末装置をグループ管理し、コマンドを送付できる他の端末装置はグループ内の端末装置のみに限定する情報システムについて説明する。
【００２７】
図１は、本実施の形態における情報システムの概念図である。情報システムは、１または２以上の端末装置１とサーバ装置２を備える。端末装置１とサーバ装置２とは、インターネット、イントラネット等のネットワーク３により通信可能である。なお、情報システムは、サーバ装置２も、２以上具備しても良い。
【００２８】
端末装置１は、いわゆるパーソナルコンピュータ、いわゆるスマートフォンや携帯電話等の携帯端末、街角に設置されている表示装置、テレビジョン装置、ナビゲーション装置等、問わない。端末装置１は、ドライバにより駆動される１以上のハードウェアを具備し、情報を出力できる装置であれば良い。
【００２９】
図２は、本実施の形態における情報システムのブロック図である。
【００３０】
情報システムを構成する端末装置１は、端末機能部１０１、端末ドライバ管理部１０２、端末オブジェクト格納部１０３、端末受付部１０４、端末要求構成部１０５、端末送信部１０６、端末受信部１０７、端末パーサ部１０８、端末機能呼出部１０９、および端末オブジェクト出力部１１０を備える。
【００３１】
サーバ装置２は、対応情報格納部２０１、サーバドライバ管理部２０２、グループ情報格納部２０３、履歴格納部２０４、受信部２０５、端末要求処理部２０６、シナリオ生成部２０７、送信部２０８、履歴蓄積部２０９、受付部２１０、統計処理結果取得部２１１、および統計処理結果出力部２１２を備える。
【００３２】
端末装置１を構成する端末機能部１０１は、ドライバにより駆動され、所定の機能を実現する。端末機能部１０１は、通常、ハードウェアであり、例えば、ディスプレイ、スピーカー、カメラ、電話等である。ただし、メール機能を実現するソフトウェアでも良い。  端末ドライバ管理部１０２は、１以上の端末機能部１０１のドライバを識別する１以上のドライバ識別子を格納し得る。
【００３３】
端末オブジェクト格納部１０３は、１以上のオブジェクトを格納し得る。オブジェクトとは、データや情報と捉えても良い。オブジェクトは、例えば、アニメーションのキャラクタの情報である。オブジェクトは、データや情報と、当該データ等を処理するプログラムやスクリプト等が一体化されていても良い。なお、端末オブジェクト格納部１０３のオブジェクトは、通常、サーバ装置２から受信されたオブジェクトである。
【００３４】
端末受付部１０４は、ユーザからの１以上の指示を受け付ける。指示は、データを有しても、有さなくても良い。指示とは、操作と捉えても良い。ここで、受け付けとは、キーボードやマウス、タッチパネルなどの入力デバイスから入力された情報の受け付け、有線もしくは無線の通信回線を介して送信された情報の受信、光ディスクや磁気ディスク、半導体メモリなどの記録媒体から読み出された情報の受け付けなどを含む概念である。
【００３５】
指示の入力手段は、タッチパネルやキーボードやマウスやメニュー画面によるもの等、何でも良い。端末受付部１０４は、タッチパネルやキーボード等の入力手段のデバイスドライバーや、メニュー画面の制御ソフトウェア等で実現され得る。
【００３６】
端末要求構成部１０５は、１以上の指示に対応する要求である端末要求を構成する。端末要求構成部１０５は、通常、端末受付部１０４が受け付けた１以上の指示を用いて、端末要求を構成する。端末要求は、通常、指示の対象のオブジェクトの識別子を有するが、オブジェクトの識別子を有さなくても良い。端末要求は、例えば、指示の対象のオブジェクトの識別子と、指示の内容を示す指示内容情報とを有する。指示内容情報とは、指示した位置を示す座標情報または、指示した領域を特定する領域識別子、操作の種類を示す操作種類識別子および位置や領域を示す座標情報や領域識別子等である。操作種類識別子は、ドラッグ、ダブルクリック、クリック、タッチ等、操作を識別する情報である。また、端末要求は、通常、端末装置１に特有の情報である端末特有情報を含む。端末特有情報とは、例えば、端末装置１にとって変化のない静的特有情報と、動的に変化する動的特有情報とがあり得る。静的特有情報は、例えば、端末装置１の識別子である端末識別子、端末装置１のユーザの識別子等である。また、動的特有情報は、例えば、端末装置１の位置を示す端末位置情報、端末装置１が存在する場所の天気を示す天気情報、現在時刻等である。
【００３７】
端末要求構成部１０５は、例えば、ユーザが画面に対して指示した場合に、表示中のオブジェクトのオブジェクト識別子であり、端末装置１が保持しているオブジェクト識別子を取得する。また、端末要求構成部１０５は、ユーザの指示した画面上の位置を示す１以上の座標情報から操作種類識別子を取得する。そして、端末要求構成部１０５は、オブジェクト識別子、操作種類識別子、１以上の座標情報を有する端末要求を構成する。
【００３８】
端末要求構成部１０５は、端末受付部１０４が音声を受け付けた場合、当該音声を音声認識し、文字列を取得しても良い。そして、端末要求構成部１０５は、当該文字列を含む端末要求を構成しても良い。また、端末要求構成部１０５は、端末受付部１０４が一の言語の文を受け付けた場合、当該文を他の言語に機械翻訳し、当該機械翻訳結果を含む端末要求を構成しても良い。つまり、端末要求構成部１０５は、端末受付部１０４が受け付けた１以上の指示に対して、音声認識、機械翻訳等の処理を実行しても良い。
【００３９】
また、端末要求構成部１０５は、端末受付部１０４が音声を受け付けた場合、当該音声をサンプリングし、デジタル化して、端末要求を構成しても良い。
【００４０】
また、端末要求構成部１０５は、端末受付部１０４が受け付けた指示等により動作する端末機能部１０１の識別子またはドライバのドライバ識別子を取得し、端末要求に含めても良い。さらに、端末要求構成部１０５は、端末受付部１０４が受け付けた指示等により動作するソフトウェアの識別子を取得し、端末要求に含めても良い。
【００４１】
なお、端末要求構成部１０５が構成する端末要求のデータ構造は問わないことは言うまでもない。なお、情報システムで扱う他のデータのデータ構造も問わない。
【００４２】
端末送信部１０６は、端末要求構成部１０５が構成した端末要求をサーバ装置２に送信する。端末送信部１０６は、サーバ装置２に端末要求を送信するために、サーバ装置２を識別するサーバ装置識別子を保持している。なお、サーバ装置識別子は、サーバ装置２と通信するために必要な情報であり、例えば、サーバ装置２のＩＰアドレス、ＭＡＣアドレス、サーバ装置２が情報を取得できるメールアドレス等である。
【００４３】
端末受信部１０７は、端末要求の送信に対応して、サーバ装置２からシナリオを受信する。シナリオは、端末装置１のドライバを動作させるコマンドを有する。また、シナリオは、通常、コマンドとデータとを有する。シナリオは、例えば、端末機能部１０１への動作指示、表示されているオブジェクトの動作を示すコマンドである動作コマンド等を有する。端末機能部１０１への動作指示は、例えば、ドライバ識別子とドライバに渡すデータとを含む。シナリオは、１または２以上のコマンド等を有する。コマンド等とは、コマンド、データ、またはコマンドとデータ等である。
【００４４】
端末パーサ部１０８は、シナリオを解釈し、１以上のドライバ識別子、およびデータを取得する。データは、１以上のドライバ識別子で識別される１以上の端末機能部１０１に渡すデータであり、シナリオが有するデータである。また、データは、オブジェクトでも良い。
【００４５】
また、端末パーサ部１０８は、シナリオを解釈し、シナリオから動作コマンドを取得しても良い。
【００４６】
端末機能呼出部１０９は、端末パーサ部１０８が取得した１以上のドライバ識別子で識別される１以上の端末機能部１０１に、端末パーサ部１０８が取得したデータを渡し、１以上の端末機能部１０１を呼び出す。ここで、呼び出すとは、動作させる、という意味であると捉えても良い。
【００４７】
端末オブジェクト出力部１１０は、１以上のオブジェクトを出力する。ここで、オブジェクトは、通常、サーバ装置２から受信されたデータである。また、出力とは、ディスプレイへの表示、プロジェクターを用いた投影、プリンタでの印字、音出力、外部の装置への送信、記録媒体への蓄積、他の処理装置や他のプログラムなどへの処理結果の引渡しなどを含む概念である。つまり、端末オブジェクト出力部１１０は、オブジェクトをディスプレイに表示しても良いし、端末オブジェクト格納部１０３に蓄積しても良い。
【００４８】
また、端末オブジェクト出力部１１０は、動作コマンドに従って、動作コマンドに対応するオブジェクトを動作させる。この動作結果は、通常、ディスプレイに表示される。ただし、端末オブジェクト出力部１１０は、スピーカーを通して声またはサウンドにより動作結果を出力しても良いし、ＬＥＤ等を利用した光の明滅を行うことにより動作結果を出力しても良いし、機械の動作等によって様々な表現で動作結果を報知する等しても良い。
【００４９】
サーバ装置２を構成する対応情報格納部２０１は、１以上の対応情報を格納し得る。対応情報は、端末要求を構成する情報とシナリオ元情報との対応を示す情報である。シナリオ元情報は、シナリオを構成する元になる情報である。対応を示す情報とは、情報そのものであっても良い。つまり、対応情報は、端末要求を構成する情報とシナリオ元情報とを有する情報でも良いし、端末要求を構成する情報へのポインタとシナリオ元情報へのポインタとを有する情報等でも良い。シナリオ元情報は、１以上のコマンドを含むコマンド列でも良いし、プログラム等でも良い。
【００５０】
サーバドライバ管理部２０２は、１以上のドライバ識別子を格納し得る。ここでのドライバ識別子は、端末装置１が具備している端末機能部１０１のドライバを識別する情報である。ドライバ識別子は、例えば、ドライバ名、ドライバのディスク上での物理アドレス等である。サーバドライバ管理部２０２は、端末装置ごと、または端末装置の種類ごとに、１以上のドライバ識別子を格納していることは好適である。
【００５１】
グループ情報格納部２０３は、グループ情報を格納し得る。グループ情報は、２以上の端末装置１のグループを特定する情報である。グループ情報は、２以上の各端末装置１を識別する２以上の端末識別子を有する．
【００５２】
履歴格納部２０４は、要求履歴を格納し得る。要求履歴は、受信部２０５が受信した端末要求の一部または全部である。履歴格納部２０４は、端末装置１ごとに、要求履歴を格納していることは好適である。また、履歴格納部２０４は、端末装置１の端末機能部１０１ごとに、要求履歴を格納していても良い。ここでの端末機能部１０１ごととは、ドライバ識別子ごとと同意義である。さらに、履歴格納部２０４は、端末装置１ごとに、かつ、端末装置１で動作したソフトウェア単位で要求履歴を格納していても良い。なお、ソフトウェア単位とは、ソフトウェアの識別子に対応づける、という意義である。
【００５３】
受信部２０５は、端末装置１から端末要求を受信する。
【００５４】
端末要求処理部２０６は、受信部２０５が受信した端末要求を解釈する。そして、端末要求処理部２０６は、当該端末要求に対応するシナリオ元情報を、対応情報格納部２０１から取得する。また、端末要求処理部２０６は、端末要求に対応する処理を行い、処理結果を取得する。処理とは、例えば、図示しないデータベースに対する検索処理、端末要求が有する文字列に対する機械翻訳処理等、何でも良い。
【００５５】
端末要求処理部２０６は、例えば、端末要求が音声を含む場合、当該音声を音声認識し、文字列を取得しても良い。そして、端末要求処理部２０６は、当該文字列を用いて、シナリオ元情報を、対応情報格納部２０１から取得しても良い。
【００５６】
シナリオ生成部２０７は、端末要求処理部２０６が取得したシナリオ元情報と、端末要求処理部２０６が処理を行って得た処理結果とを用いて、シナリオを生成する。
【００５７】
シナリオ生成部２０７は、受信部２０５が受信した端末要求、および履歴格納部２０４に格納されている要求履歴を用いてシナリオを生成する。つまり、端末要求が同じでも、要求履歴が異なれば生成するシナリオが異なることは好適である。例えば、キャラクタへのタッチ状況に応じて、動作が異なることは好適である。
【００５８】
シナリオ生成部２０７は、サーバドライバ管理部２０２に格納されている１以上のドライバ識別子に応じて、生成するシナリオが異なる。ここで、生成するシナリオが異なるとは、例えば、端末装置１が保有しないドライバのドライバ識別子を含まないようにすることである。また、端末装置１が保有しないドライバに関して、サーバ装置２の端末要求処理部２０６が処理を行うことは好適である。
【００５９】
送信部２０８は、シナリオ生成部２０７が生成したシナリオを端末装置１に送信する。また、送信部２０８は、他端末装置に、コマンドを送信しても良い。他端末装置も、端末装置１と同様の構成を有することが好適であるが、コマンドを受信し、当該コマンドに応じた動作が行えれば良い。ここで、コマンドを送信する先の他端末装置の識別子は、予め格納されていても良いし、端末装置１から受信されても良いし、他端末装置から端末装置１とペアである旨の情報が受信されても良い。端末装置１とペアである旨の情報は、例えば、端末装置１のユーザを識別するユーザ識別子である。
【００６０】
ただし、送信部２０８は、グループ情報が有する２以上のいずれかの端末識別子にも対応しない端末装置１にはコマンドを送信しないことは好適である。
【００６１】
履歴蓄積部２０９は、受信部２０５が受信した端末要求の一部または全部である要求履歴を履歴格納部２０４に蓄積する。端末要求の一部とは、２以上の端末要求から生成される情報も含む、とする。また、履歴蓄積部２０９は、端末要求が有する端末機能部１０１の識別子またはドライバのドライバ識別子ごとに、要求履歴を履歴格納部２０４に蓄積しても良い。また、履歴蓄積部２０９は、端末要求が有するソフトウェアの識別子ごとに、要求履歴を履歴格納部２０４に蓄積しても良い。また、履歴蓄積部２０９は、シナリオ生成部２０７が生成したシナリオに含まれる端末機能部１０１の識別子またはドライバ識別子ごとに、要求履歴を履歴格納部２０４に蓄積しても良い。また、履歴蓄積部２０９は、シナリオ生成部２０７が生成したシナリオに含まれるソフトウェアの識別子ごとに、要求履歴を履歴格納部２０４に蓄積しても良い。
【００６２】
受付部２１０は、サーバ装置２のユーザの指示やデータ等を受け付ける。指示やデータ等の入力手段は、キーボードやマウスやメニュー画面によるもの等、何でも良い。受付部２１０は、キーボード等の入力手段のデバイスドライバーや、メニュー画面の制御ソフトウェア等で実現され得る。
【００６３】
統計処理結果取得部２１１は、要求履歴を統計処理し、統計処理結果を取得する。統計処理とは、例えば、平均値を取得する処理、単位時間あたりの操作の数を取得する処理等である。統計処理の内容は問わない。
【００６４】
統計処理結果出力部２１２は、統計処理結果取得部２１１が取得した統計処理結果を出力する。
【００６５】
端末ドライバ管理部１０２、端末オブジェクト格納部１０３、対応情報格納部２０１、サーバドライバ管理部２０２、グループ情報格納部２０３、および履歴格納部２０４は、不揮発性の記録媒体が好適であるが、揮発性の記録媒体でも実現可能である。
【００６６】
端末ドライバ管理部１０２等にドライバ識別子等が記憶される過程は問わない。例えば、記録媒体を介してドライバ識別子等が端末ドライバ管理部１０２等で記憶されるようになってもよく、通信回線等を介して送信されたドライバ識別子等が端末ドライバ管理部１０２等で記憶されるようになってもよく、あるいは、入力デバイスを介して入力されたドライバ識別子等が端末ドライバ管理部１０２等で記憶されるようになってもよい。
【００６７】
端末送信部１０６、端末受信部１０７、受信部２０５、および送信部２０８は、通常、無線または有線の通信手段で実現されるが、放送手段で実現されても良い。
【００６８】
端末パーサ部１０８、端末機能呼出部１０９、端末要求処理部２０６、シナリオ生成部２０７、履歴蓄積部２０９、および統計処理結果取得部２１１は、通常、ＭＰＵやメモリ等から実現され得る。端末パーサ部１０８の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはＲＯＭ等の記録媒体に記録されている。但し、ハードウェア（専用回路）で実現しても良い。
【００６９】
端末オブジェクト出力部１１０、および統計処理結果出力部２１２は、ディスプレイやスピーカー等の出力デバイスを含むと考えても含まないと考えても良い。端末オブジェクト出力部１１０は、出力デバイスのドライバーソフトまたは、出力デバイスのドライバーソフトと出力デバイス等で実現され得る。
【００７０】
次に、情報システムの動作について説明する。まず、端末装置１の動作について、図３のフローチャートを用いて説明する。
【００７１】
（ステップＳ３０１）端末受付部１０４は、ユーザ等から指示またはデータ等を受け付けたか否かを判断する。指示等を受け付ければステップＳ３０２に行き、受け付けなければステップＳ３０１に戻る。
【００７２】
（ステップＳ３０２）端末要求構成部１０５は、ステップＳ３０１で受け付けた指示等を用いて、端末要求を構成するか否かを判断する。端末要求を構成すると判断した場合はステップＳ３０３に行き、端末要求を構成しないと判断した場合はステップＳ３１１に行く。なお、端末要求構成部１０５は、例えば、端末要求を構成するイベントや指示や条件等を予め格納しており、ステップＳ３０１で受け付けた指示等が、かかる格納しているイベントや指示や条件等に合致するか否かにより、端末要求を構成するか否かを判断する。また、端末要求構成部１０５は、例えば、端末要求を構成しないイベントや指示や条件等を予め格納しており、ステップＳ３０１で受け付けた指示等が、かかる格納しているイベントや指示等に合致しない場合に、端末要求を構成すると判断する。なお、条件とは、例えば、Ｎ（Ｎは０より大きい数値）秒間、入力が無いこと、所定の入力後、Ｎ秒、経過したこと等である。また、ステップＳ３０２において、端末要求構成部１０５は、条件に合致するまで、ウェイトしても良い。
【００７３】
（ステップＳ３０３）端末要求構成部１０５は、ステップＳ３０１で受け付けた指示等、またはステップＳ３０１で受け付けた指示等と一時蓄積している指示等を用いて端末要求を構成する。なお、端末要求を構成する処理について、図４のフローチャートを用いて説明する。
【００７４】
（ステップＳ３０４）端末送信部１０６は、ステップＳ３０３で構成された端末要求を、サーバ装置２に送信する。なお、端末送信部１０６は、例えば、サーバ装置２のＩＰアドレスを保持している。
【００７５】
（ステップＳ３０５）端末受信部１０７は、サーバ装置２からシナリオを受信したか否かを判断する。シナリオを受信すればステップＳ３０６に行き、シナリオを受信しなければステップＳ３０５に戻る。
【００７６】
（ステップＳ３０６）端末パーサ部１０８は、ステップＳ３０５で受信されたシナリオを解釈し、１以上のドライバ識別子、およびデータを取得する。なお、ここでは、シナリオは、１以上のドライバを操作する命令を含むとする。
【００７７】
（ステップＳ３０７）端末機能呼出部１０９は、カウンタｉに１を代入する。
【００７８】
（ステップＳ３０８）端末機能呼出部１０９は、ステップＳ３０６で取得した情報の中で、ｉ番目のドライバの操作に関する情報が存在するか否かを判断する。ｉ番目のドライバの操作に関する情報が存在すればステップＳ３０９に行き、存在しなければステップＳ３０１に戻る。
【００７９】
（ステップＳ３０９）端末機能呼出部１０９は、ステップＳ３０６で取得した情報の中で、ｉ番目のドライバの操作に関する情報に従って、ｉ番目のドライバを操作する。
【００８０】
（ステップＳ３１０）端末機能呼出部１０９は、カウンタｉを１、インクリメントする。ステップＳ３０８に戻る。
【００８１】
（ステップＳ３１１）端末送信部１０６は、指示等をバッファに一時蓄積する。ステップＳ３０１に戻る。
【００８２】
なお、ステップＳ３０２において、端末送信部１０６は、ステップＳ３０１で受け付けた指示等を用いて、端末要求を構成するか否かを判断した。しかし、指示等を受け付けた場合、常に、端末要求を構成しても良い。
【００８３】
また、図３のフローチャートにおいて、シナリオの中に、ドライバを動作させる処理以外の処理が記載されていても良い。その場合、端末装置１は、シナリオに従って、動作を行う。
【００８４】
さらに、図３のフローチャートにおいて、電源オフや処理終了の割り込みにより処理は終了する。
【００８５】
次に、ステップＳ３０３の端末要求を構成する処理について、図４のフローチャートを用いて説明する。
【００８６】
（ステップＳ４０１）端末要求構成部１０５は、バッファに指示等が存在するか否かを判断する。バッファに指示等が存在すればステップＳ４０２に行き、バッファに指示等が存在しなければステップＳ４０３に行く。
【００８７】
（ステップＳ４０２）端末要求構成部１０５は、バッファから指示等を読み出す。
【００８８】
（ステップＳ４０３）端末要求構成部１０５は、ステップＳ３０１で受け付けられた指示等を取得する。
【００８９】
（ステップＳ４０４）端末要求構成部１０５は、ステップＳ４０３で取得した指示等、またはステップＳ４０３で取得した指示等とステップＳ４０２で読み出した指示等とを用いて、指示対象のオブジェクト識別子を取得する。なお、指示等が画面上の座標値（ｘ，ｙ）であり、端末要求構成部１０５は、現在、画面上に表示されているオブジェクトのオブジェクト識別子およびオブジェクトの表示位置（例えば、オブジェクトの輪郭を特定する座標値の集合）を保持しており、指示等が示す座標値に対応するオブジェクト識別子を取得する。なお、かかる技術は、オブジェクトの管理技術として公知であるので、詳細な説明を省略する。例えば、画面上にあるキャラクタが表示されている場合、端末要求構成部１０５は、タッチされたキャラクタのオブジェクト識別子を取得する。
【００９０】
（ステップＳ４０５）端末要求構成部１０５は、ステップＳ４０３で取得した指示等、またはステップＳ４０３で取得した指示等とステップＳ４０２で読み出した指示等とを用いて、指示内容情報を取得する。指示内容情報は、例えば、タッチされたこと、ドラッグされてこと、またはタッチされたキャラクタの領域を示す領域識別子等である。例えば、端末要求構成部１０５は、現在、画面上に表示されているオブジェクトの領域識別子と領域を特定する位置情報（領域の輪郭を示す座標値の集合）を保持している、とする。
【００９１】
（ステップＳ４０６）端末要求構成部１０５は、端末特有情報を取得する。端末特有情報は、例えば、ＧＰＳ受信機で取得された位置情報、現在時刻、端末識別子等である。
【００９２】
（ステップＳ４０７）端末要求構成部１０５は、オブジェクト識別子、指示内容情報、端末特有情報を有する端末要求を構成する。なお、ここで、端末要求構成部１０５は、オブジェクト識別子、指示内容情報、端末特有情報のうち、１または２の情報のみから端末要求を構成しても良い。上位処理にリターンする。
【００９３】
なお、図４のフローチャートにおいて、端末要求の構成方法の一例を説明した。端末要求構成部１０５は、受け付けられた指示等から端末要求を構成すれば良く、その方法は問わない。
【００９４】
例えば、端末要求構成部１０５は、受け付けられた音声を音声認識し、文字列を取得しても良い。そして、端末要求構成部１０５は、当該文字列と端末識別子等の端末特有情報により、端末要求を構成しても良い。
【００９５】
次に、サーバ装置２の動作について、図５のフローチャートを用いて説明する。
【００９６】
（ステップＳ５０１）受信部２０５は、端末装置１から端末要求を受信したか否かを判断する。端末要求を受信すればステップＳ５０２に行き、端末要求を受信しなければステップＳ５０８に行く。
【００９７】
（ステップＳ５０２）端末要求処理部２０６は、受信部２０５が受信した端末要求を解釈する。そして、端末要求処理部２０６は、端末要求に対応するシナリオ元情報を、対応情報格納部２０１から取得する。
【００９８】
（ステップＳ５０３）端末要求処理部２０６は、端末要求の解釈結果を用いて、サーバ装置２が行うべき処理が存在するか否かを判断する。サーバ装置２が行うべき処理が存在すればステップＳ５０４に行き、存在しなければステップＳ５０５に行く。端末要求処理部２０６は、例えば、端末要求が変数を含む場合、またはシナリオ元情報が変数を含む場合、サーバ装置２が行うべき処理が存在すると判断する。
【００９９】
（ステップＳ５０４）端末要求処理部２０６は、端末要求が指示する処理であり、サーバ装置２が行うべき処理を行う。そして、端末要求処理部２０６は、処理結果を取得する。
【０１００】
（ステップＳ５０５）シナリオ生成部２０７は、ステップＳ５０２で取得されたシナリオ元情報、またはステップＳ５０２で取得されたシナリオ元情報とステップＳ５０４で取得された処理結果とを用いて、シナリオを構成する。
【０１０１】
（ステップＳ５０６）送信部２０８は、ステップＳ５０５で構成されたシナリオを端末装置１に送信する。
【０１０２】
（ステップＳ５０７）履歴蓄積部２０９は、ステップＳ５０１で受信された端末要求の全部または一部を履歴格納部２０４に蓄積する。ステップＳ５０１に戻る。なお、端末要求の一部は、１以上の端末要求から構成された情報（例えば、後述する好感度）も含む、と考える。
【０１０３】
（ステップＳ５０８）受付部２１０は、統計処理を行うことを示す指示を受け付けたか否かを判断する。かかる指示を受け付けた場合はステップＳ５０９に行き、指示を受け付けない場合はステップＳ５０１に戻る。なお、かかる指示を、適宜、統計処理指示という。
【０１０４】
（ステップＳ５０９）統計処理結果取得部２１１は、履歴格納部２０４の１または２以上の端末要求を用いて、統計処理を行う。そして、統計処理結果取得部２１１は統計処理結果を取得する。
【０１０５】
（ステップＳ５１０）統計処理結果出力部２１２は、ステップＳ５０９で取得された統計処理結果を出力する。ステップＳ５０１に戻る。
【０１０６】
なお、図５のフローチャートにおいて、ステップＳ５０７の処理等、他の処理と独立して行える処理の順序は問わないことは言うまでもない。
【０１０７】
また、図５のフローチャートにおいて、電源オフや処理終了の割り込みにより処理は終了する。
【０１０８】
以下、本実施の形態における情報システムの具体的な動作について説明する。情報システムの概念図は図１である。
【０１０９】
図６は、端末装置１の端末ドライバ管理部１０２に格納されている端末ドライバ管理表の一例である。ここでの端末ドライバ管理表は、ある一の端末装置１が具備しているドライバの情報を管理している。また、端末ドライバ管理表は、「ＩＤ」「ドライバ識別子」「ドライバ呼出関数」を有するレコードを１以上格納している。「ＩＤ」は、端末ドライバ管理表のレコードを識別する情報である。また、「ドライバ識別子」は、ドライバを識別する情報である。さらに、「ドライバ呼出関数」は、ドライバを動作させるための関数である。ここで、「ドライバ呼出関数」の代わりに、ドライバを動作させるためのメッセージでも良いし、メソッド名でも良いし、ドライバ呼出へのポインタの情報等でも良い。つまり、端末ドライバ管理表のレコードは、ドライバを動作させるための情報であれば何でも良い。なお、ドライバ呼出関数「ｓｈｏｗ＿ｃｈａｒ（）」はキャラクタを表示等するドライバの呼び出し関数の一例であり、「ｖｏｉｃｅ（）」は音声を再生するドライバの呼び出し関数の一例であり、「ｕｉ（）」はユーザインターフェイスをハンドリングするドライバの呼び出し関数の一例であり、「ｃａｍｅｒａ（）」はカメラのドライバの呼び出し関数の一例であり、「ｔｅｌ（）」は電話のドライバの呼び出し関数の一例であり、「ｍａｉｌ（）」はドライバの呼び出し関数の一例であり、「ｄａｔａ＿ｍａｎａｇｅ（）」はデータ管理を行うドライバの呼び出し関数の一例である。
【０１１０】
図７は、端末装置１の端末オブジェクト格納部１０３に格納されている端末オブジェクト管理表の一例である。ここでの端末オブジェクト管理表は、「ＩＤ」「キャラクタ」「全体領域情報」「部分情報」「表示フラグ」を有するレコードを１以上格納している。「ＩＤ」はキャラクタ識別子である。「全体領域情報」は、キャラクタが表示される画面上での領域を示す情報である。「全体領域情報」は、通常、２以上の座標情報を有する。座標情報は、通常、画面上での座標情報である。また、「部分情報」は、キャラクタの部分に関する情報である。部分とは、顔、胸、お腹、手、足等である。「部分情報」は、「部分識別子」「部分領域情報」を有する。「部分識別子」は、部分を識別するＩＤであり、例えば、胸は「１」、顔は「２」である。また、「部分領域情報」は、キャラクタの部分の領域を示す情報であり、通常、２以上の座標情報を有する。座標情報は、画面上での座標情報でも良いし、キャラクタ内での相対的な座標の情報等でも良い。「表示フラグ」は、現在、キャラクタが表示されているか否かを示す情報である。ここでは、「表示フラグ＝１」を有するレコードに対応するキャラクタは、現在、端末装置１の画面上に表示されている。また、「表示フラグ＝０」を有するレコードに対応するキャラクタは、現在、端末装置１の画面上に表示されていない。
【０１１１】
また、図８は、サーバ装置２の対応情報格納部２０１に格納されている対応情報管理表である。対応情報管理表は、「ＩＤ」「端末要求」「シナリオ元情報」を有するレコードを１以上格納している。「ＩＤ」は、対応情報管理表のレコードを識別する情報である。「端末要求」は、端末要求を示す情報である。また、「シナリオ元情報」は、端末要求に対応するシナリオ元情報である。「シナリオ元情報」は、ここでは、コマンド、制御情報付きのコマンドであるが、その構造、内容は問わない。なお、ここでは、コマンドは、例えば、関数の形式である。また、制御情報は、例えば、「ｉｆ  ｔｈｅｎ  ｅｌｓｅ」等である。図８において、「ｇｅｔ＿ｃｈａｒ（＄ユーザ識別子，＄キャラクタ）」は、ユーザ識別子で識別されるユーザの端末装置１で、現在、表示されているキャラクタに関する情報を取得する関数である。また、「ｄｅｌｅｔｅ（＄ユーザ識別子，＄キャラクタ）」は、ユーザ識別子で識別されるユーザの端末装置１からキャラクタの表示を消去する（未表示にする）命令に対応するシナリオである。また、「ｐｕｔ＿ｃｈａｒ（＄端末識別子，ｃｈ）」は端末識別子で識別される端末装置１に、変数「ｃｈ」に格納されているキャラクタに関する情報を送信する命令に対応するシナリオである。また、「ｓｅａｒｃｈ（＄端末識別子，＄人）」は、端末識別子で識別される端末装置１のユーザと「＄人」の関係を有するユーザの端末識別子を検索する関数である。また、「ｐｕｔ（＄位置情報，ｔｅｒｍｉｎａｌ）」は、ｔｅｒｍｉｎａｌで特定される端末装置１に位置情報を送信するシナリオである。また、「ｓｔａｒｔ＿ｕｐ（ｎａｖｉ（））」は、端末装置１のナビゲーションシステムを起動するためのシナリオである。また、「ｓｅｔ＿ｄｅｓｔｉｎａｔｉｏｎ（＄位置情報）」は、端末装置１のナビゲーションシステムにおいて、目的地を設定するシナリオである。また、「ｒｏｕｔｅ＿ｓｅａｒｃｈ（＄現在位置，＄目的地）」は、現在地を始点、目的地を終点とする経路探索を行うシナリオである。また、「ｓｅｎｄ＿ｍｅｓｓａｇｅ（）」は、引数内のメッセージを送信し、端末装置１で出力を促すシナリオである。なお、かかるシナリオ、関数は例であることは言うまでもない。
【０１１２】
また、図９は、サーバ装置２のサーバドライバ管理部２０２が格納しているサーバドライバ管理表の一例である。ここでのサーバドライバ管理表は、ある一の端末装置１が具備しているドライバの情報を管理している。また、サーバドライバ管理表は、「ＩＤ」「端末識別子」「ドライバ識別子」を有するレコードを１以上格納している。「ＩＤ」は、レコードを識別する情報である。「端末識別子」は、端末装置を識別する情報である。また、「ドライバ識別子」は、ドライバを識別する情報である。つまり、サーバドライバ管理表は、１以上の端末装置１が保持しているドライバを管理している。
【０１１３】
図１０は、サーバ装置２のグループ情報格納部２０３に格納されているグループ情報管理表である。グループ情報管理表は、「グループＩＤ」「端末識別子」を有するレコードを１以上格納している。「グループＩＤ」は、グループを識別する情報である。「端末識別子」は、グループＩＤで特定されるグループに属する端末装置の識別子である。そして、属性値「端末識別子」は、２以上の端末識別子を有する。サーバ装置２がグループ情報管理表を用いる場合、端末要求を送信してきた端末装置と、同一のグループに存在する端末装置のみ、当該端末要求に基づいて、制御できない、とする。
【０１１４】
図１１は、サーバ装置２の履歴格納部２０４が格納している履歴管理表の一例である。履歴管理表は、「ＩＤ」「端末識別子」「要求履歴」「好感度」を有するレコードを１以上格納している。「要求履歴」は、端末識別子で識別される端末装置１から送信された１以上の端末要求の履歴を格納する。また、「好感度」は、要求履歴から構成される情報であり、キャラクタの、端末装置１のユーザに対する好感度である。例えば、閾値以上の回数、キャラクタの胸やお腹へタッチしたことを示す１以上の端末要求が受信された場合、端末要求処理部２０６は、対応する好感度の値を下げる。また、例えば、閾値以上の回数、キャラクタの頭や顔へタッチしたことを示す１以上の端末要求が受信された場合、端末要求処理部２０６は、対応する好感度の値を上げる。また、Ｎ分（Ｎは正の数値）以上、タッチを示す端末要求が受信されなかった場合、端末要求処理部２０６は、対応する好感度を初期値（例えば、「高」）に戻す。なお、好感度の「高」「中」「低」は、それぞれ、例えば、数値「１」「２」「３」に対応する。また、好感度を変更する処理は、例えば、端末要求処理部２０６が行う。
【０１１５】
さらに、図１２は、端末要求処理部２０６が保持している関連ユーザ管理表である。関連ユーザ管理表は、端末装置１を所有しているユーザに関係のある人を、その関係とともに管理する表である。図１２は、「ＩＤ」「端末識別子１」「関係」「端末識別子２」を有するレコードを１以上格納している。「端末識別子１」は、端末識別子であり、第一のユーザが所有する端末の識別子である。「端末識別子２」は、端末識別子であり、第二のユーザが所有する端末の識別子である。「関係」は、第一のユーザと第二のユーザとの関係を示す情報である。関連ユーザ管理表の「ＩＤ＝１」のレコードにおいて、端末識別子「１０１」のユーザのおばあちゃんが、端末識別子「１０３」のユーザである、ことを示す。
【０１１６】
現在、端末装置１には、図１３に示すように、「ＩＤ＝１」に対応するキャラクタが表示されている。そして、かかる状況において、本実施の形態における情報システムの具体的な動作について、４つの例を挙げて説明する。
【０１１７】
（具体例１）
具体例１は、端末装置１に入力された命令をサーバ装置２で解釈し、サーバ装置２から端末装置１のドライバを動作させる例である。さらに具体的には、端末装置１のユーザが、端末装置１から出力される音が小さいため、「ボリュームを３あげて」と指示し、サーバ装置２からの命令により、ボリュームが３、アップされる処理について説明する。
【０１１８】
まず、端末装置識別子「１０１」で識別される端末装置１のユーザが、自分の端末装置１に向かって、「ボリュームを３あげて」を音声で指示した、とする。
【０１１９】
次に、端末装置１の端末受付部１０４は、音声「ボリュームを３あげて」を受け付ける。次に、端末要求構成部１０５は、端末受付部１０４が受け付けていた音声が途切れたことを検知し、端末受付部１０４が受け付けた指示等を用いて、端末要求を構成すると判断する。
【０１２０】
次に、端末要求構成部１０５は、音声「ボリュームを３あげて」を音声認識し、文字列「ボリュームを３あげて」を取得する。また、端末要求構成部１０５は、端末装置１が格納している端末識別子「１０１」を取得する。なお、端末識別子「１０１」が格納されている領域は問わない。また、端末要求構成部１０５は、端末装置１が保持しているＧＰＳ受信機が取得した位置情報（Ｘａ，Ｙａ）を取得する。なお、ＧＰＳ受信機は、例えば、端末機能部１０１の一つである。また、端末要求構成部１０５は、図示しない時計や、外部の装置（例えば、ＮＴＰサーバ）から現在時刻「２０１２／１０／２７  １０：３８：５１」取得する。そして、端末要求構成部１０５は、端末要求「１０１，（Ｘａ，Ｙａ），２０１２／１０／２７  １０：３８：５１，"ボリュームを３あげて"」を構成する。なお、端末識別子「１０１」は静的な端末特有情報であり、位置情報や現在時刻は動的な端末特有情報である。また、文字列「ボリュームを３あげて」は指示内容情報に該当する。ただし、本端末要求は、指示対象のオブジェクト識別子を有さない。また、ここでの端末要求は「端末識別子，位置情報，現在時刻，指示内容情報」を有するが、この端末要求の構造は一例であることは言うまでもない。
【０１２１】
次に、端末送信部１０６は、構成された端末要求を、サーバ装置２に送信する。
【０１２２】
次に、サーバ装置２の受信部２０５は、端末装置１から端末要求「１０１，（Ｘａ，Ｙａ），２０１２／１０／２７  １０：３８：５１，"ボリュームを３あげて"」を受信する。
【０１２３】
次に、端末要求処理部２０６は、受信された端末要求から指示内容情報「ボリュームを３あげて」を取得する。
【０１２４】
次に、端末要求処理部２０６は、指示内容情報「ボリュームを３あげて」を用いて、図８の対応情報管理表を検索する。そして、端末要求処理部２０６は、指示内容情報が、対応情報管理表の「ＩＤ＝２」の端末要求「"ボリュームを"＄数値"あげて"」にマッチする、と判断する。そして、端末要求処理部２０６は、対応情報管理表の「ＩＤ＝２」のシナリオ元情報「ｖｏｌｕｍｅ＿ｕｐ（＄端末識別子，＄数値）」を取得する。
【０１２５】
次に、端末要求処理部２０６は、端末要求「"ボリュームを"＄数値"あげて"」の中に、変数が存在することを検知し、サーバ装置２が行うべき処理が存在すると判断する。なお、このサーバ装置２が行うべき処理は、変数「＄数値」を取得する処理である。
【０１２６】
次に、端末要求処理部２０６は、指示内容情報「ボリュームを３あげて」と端末要求「"ボリュームを"＄数値"あげて"」とを用いて、変数「＄数値」に対応する「３」を、指示内容情報から取得する。
【０１２７】
次に、シナリオ生成部２０７は、端末要求から端末識別子「１０１」を取得する。また、シナリオ生成部２０７は、端末要求処理部２０６が取得した変数「＄数値」に対応する「３」を得る。
【０１２８】
そして、シナリオ生成部２０７は、シナリオ元情報「ｖｏｌｕｍｅ＿ｕｐ（＄端末識別子，＄数値）」と、端末識別子「１０１」、変数「＄数値」に対応する「３」を用いて、シナリオ「ｖｏｌｕｍｅ＿ｕｐ（１０１，３）」を構成する。
【０１２９】
次に、送信部２０８は、構成されたシナリオ「ｖｏｌｕｍｅ＿ｕｐ（１０１，３）」を端末装置１に送信する。なお、送信部２０８は、端末識別子「１０１」に対応する送信先の情報（例えば、ＩＰアドレス）を保持しており、かかる送信先の情報を用いて、シナリオを端末装置１に送信する。
【０１３０】
次に、履歴蓄積部２０９は、受信された端末要求「１０１，（Ｘａ，Ｙａ），２０１２／１０／２７  １０：３８：５１，"ボリュームを３あげて"」の全部または一部を履歴格納部２０４に蓄積する。なお、履歴蓄積部２０９は、シナリオ「ｖｏｌｕｍｅ＿ｕｐ（１０１，３）」を履歴格納部２０４に蓄積しても良い。かかる場合、端末要求の一部とは、生成されたシナリオでも良い。
【０１３１】
次に、端末装置１の端末受信部１０７は、サーバ装置２からシナリオ「ｖｏｌｕｍｅ＿ｕｐ（１０１，３）」を受信する。
【０１３２】
次に、端末パーサ部１０８は、受信されたシナリオを解釈し、ドライバ識別子「音声再生」、およびデータ「ｖｏｌｕｍｅ＿ｕｐ  ３」を取得する。なお、端末パーサ部１０８は、シナリオが有する関数名と、ドライバ識別子またはドライバに与える関数名との対応を保持している、とする。
【０１３３】
そして、端末機能呼出部１０９は、ドライバ識別子「音声再生」で識別されるドライバに対して音量を「３」上げるように指示する。そして、以後、端末装置１から出力される音声は「３」アップされた音声となる。
【０１３４】
以上、本具体例によれば、端末装置１とサーバ装置２とが通信しながら、端末装置１での処理が続けられ、かつ、端末装置１から送信された端末要求をサーバ装置２が解釈する。そして、サーバ装置２で少なくとも一部の処理を行い、サーバ装置２が処理結果と端末要求に対応するシナリオ元情報とを用いたシナリオを構成し、端末装置１に送信する。そして、端末装置１が、自信が具備するドライバの駆動を含むシナリオを解釈し、ドライバを動作させ、所望の処理を行う。
【０１３５】
（具体例２）
具体例２は、端末装置１から送信された端末要求をサーバ装置２で解釈し、サーバ装置２から端末装置１のドライバを動作させる例である。そして、具体例２は、端末装置１のユーザの操作の履歴に基づいて、端末装置１において異なる動作を実現できる動作の例である。さらに具体的には、端末装置１のユーザが、端末装置１に表示されているキャラクタの胸を閾値以上タッチした場合に、端末装置１のユーザの好感度が下がり、好感度が高い場合と比較して、キャラクタの動作が異なる処理について説明する。
【０１３６】
今、図１１の履歴管理表によれば、端末識別子「１０１」のユーザに対するキャラクタ「ＩＤ＝１」の好感度は「高」である。なお、好感度は「高」「中」「低」の３段階のいずれかで管理される、とする。また、図１１の履歴管理表によれば、端末識別子「１０１」のユーザは、キャラクタ識別子「１」で識別されるキャラクタの胸を１回、顔を１回、タッチしていることが分かる。
【０１３７】
また、シナリオ生成部２０７は、シナリオを生成するために、図１４に示すキャラクタ管理表を保持している、とする。キャラクタ管理表は、「ＩＤ」「キャラクタＩＤ」「データ」を有する。「データ」は「画像」「音声」を有する。「ＩＤ」はレコードを識別する情報である。また、「キャラクタＩＤ」は、キャラクタ識別子である。また、「データ」は、端末装置１で出力されるデータであり、「画像」は通常、動画であるが、静止画でも良い。
【０１３８】
また、ここでは、端末要求処理部２０６は、キャラクタの胸またはお腹に、３分以内に、３回以上タッチした場合に、好感度が一つ下がる、とする。
【０１３９】
かかる状況において、端末装置１のユーザが、図１３の画面上の「キャラクタＩＤ＝１」のキャラクタの胸をタッチした、とする。なお、図１３の画面はタッチパネルである。
【０１４０】
次に、端末受付部１０４は、このユーザからキャラクタ「１」の胸へのタッチを示す座標情報を含む指示（例えば、ｐｏｉｎｔ（ｘｂ，ｙｂ））を受け付ける。ｐｏｉｎｔ（ｘｂ，ｙｂ）は、例えば、タッチパネルのドライバからの出力である。
【０１４１】
次に、端末要求構成部１０５は、図７の端末オブジェクト管理表の「表示フラグ＝１」に対応するキャラクタ識別子（オブジェクト識別子）「１」を取得する。
【０１４２】
そして、端末要求構成部１０５は、指示（ｐｏｉｎｔ（ｘｂ，ｙｂ））から、タッチされたと判断する。そして、端末要求構成部１０５は、座標情報（ｘｂ，ｙｂ）が、図７の端末オブジェクト管理表の「ＩＤ＝１」のレコードが有する部分領域情報「（ｘ１０１，ｙ１０１）（ｘ１０２，ｙ１０２）・・・」で特定される領域内の点であることを検知する。そして、端末要求構成部１０５は、当該部分領域情報と対になる部分識別子「１」を取得する。
【０１４３】
次に、端末要求構成部１０５は、受け付けた指示から部分識別子「１」が取得できたので、端末要求を構成すると判断する。なお、端末要求構成部１０５は、図７の端末オブジェクト管理表で管理されている部位識別子が取得できた場合に、端末要求を構成すると判断するとする。
【０１４４】
次に、端末要求構成部１０５は、端末要求「ｔｏｕｃｈ（１，１）」を構成する。つまり、端末要求構成部１０５は、タッチされたとの判断から、「ｔｏｕｃｈ」を取得し、オブジェクト識別子「１」、部分識別子「１」から「ｔｏｕｃｈ」の引数（１，１）を得る。なお、端末要求構成部１０５は、ユーザがオブジェクトに対して行った操作の種類（タッチ（クリック）、ダブルクリック、ドラッグ等）に応じた関数名（端末要求を構成する情報の一例）を保持している、とする。
【０１４５】
また、端末要求構成部１０５は、例えば、端末識別子「１０１」、位置情報（Ｘｃ，Ｙｃ）、現在時刻「２０１２／１０／２８  １１：３８：２５」も取得した、とする。そして、端末要求構成部１０５は、端末要求「ｔｏｕｃｈ（１，１）」に、端末識別子、位置情報および現在時刻をも加えて、送信する端末要求「ｔｏｕｃｈ（１，１），１０１，（Ｘｃ，Ｙｃ），２０１２／１０／２８  １１：３８：２５」を構成した、とする。
【０１４６】
次に、端末送信部１０６は、構成された端末要求を、サーバ装置２に送信する。
【０１４７】
次に、サーバ装置２の受信部２０５は、端末装置１から端末要求「ｔｏｕｃｈ（１，１），１０１，（Ｘｃ，Ｙｃ），２０１２／１０／２８  １１：３８：２５」を受信する。
【０１４８】
次に、端末要求処理部２０６は、受信部２０５が受信した端末要求を解釈し、「ｔｏｕｃｈ（１，１）」を取得する。そして、端末要求処理部２０６は、「ｔｏｕｃｈ（１，１）」が図８の対応情報管理表の「ＩＤ＝３」のレコードにマッチする、と判断する。そして、端末要求処理部２０６は、「ｔｏｕｃｈ（１，１）」から「オブジェクト識別子＝１」「部位識別子＝１」を得る。なお、端末要求処理部２０６は、ここでは、「ｔｏｕｃｈ（１，１）」は２回目であるので、図１１の履歴管理表の好感度「高」を変更しない。
【０１４９】
次に、シナリオ生成部２０７は、「ＩＤ＝３」のレコードのシナリオ元情報を対応情報管理表から取得する。そして、シナリオ生成部２０７は、取得したシナリオ元情報に従って、端末識別子「１０１」の好感度「高」を図１１の履歴管理表から得る。そして、シナリオ生成部２０７は、シナリオ元情報を解釈し、当該シナリオ元情報が有する好感度「高」に対応する記述「ｓｈｏｗ＿ｃｈａｒ（＄オブジェクト識別子，ＩＤ＝２）」を得る。次に、シナリオ生成部２０７は、「ｓｈｏｗ＿ｃｈａｒ（＄オブジェクト識別子，ＩＤ＝２）」の変数「＄オブジェクト識別子」に「１」を代入し、「ｓｈｏｗ＿ｃｈａｒ（１，２）」を得る。次に、シナリオ生成部２０７は、オブジェクト識別子「１」に対応し、「ＩＤ＝２」のデータ（ＩＤ＝２のレコードのデータ）を図１４から取得する。このデータは、図１４の「ＩＤ＝２」のレコードの画像と、音声データ「もう、やだー」である。また、シナリオ生成部２０７は、画像に対応するドライバ識別子「キャラクタ」と、音声に対応するドライバ識別子「音声再生」とを取得する。そして、シナリオ生成部２０７は、シナリオ「（キャラクタ，「ＩＤ＝２」のレコードの画像）、（音声再生，「ＩＤ＝２」のレコードの音声）」を構成する。なお、ｓｈｏｗ＿ｃｈａｒは、キャラクタを端末装置で出力するコマンドであり、画像に対応するドライバ識別子が「キャラクタ」であり、音声に対応するドライバ識別子が「音声再生」であることを示す情報を、シナリオ生成部２０７は、保持している、とする。
【０１５０】
次に、送信部２０８は、構成されたシナリオを端末装置１に送信する。また、次に、履歴蓄積部２０９は、受信された端末要求の全部または一部を履歴格納部２０４に蓄積する。ここでは、履歴蓄積部２０９は、端末要求の一部と考えられる「（１，１，タッチ）」を履歴格納部２０４に蓄積する。
【０１５１】
次に、端末装置１の端末受信部１０７は、サーバ装置２からシナリオ「（キャラクタ，「ＩＤ＝２」のレコードの画像）、（音声再生，「ＩＤ＝２」のレコードの音声）」を受信する。  
【０１５２】
次に、端末パーサ部１０８は、受信されたシナリオを解釈し、ドライバ識別子「キャラクタ」と「ＩＤ＝２」のレコードの画像、およびドライバ識別子「音声再生」と音声「もう、やだー」を取得する。なお、端末パーサ部１０８は、各ドライバ識別子に対応するドライバ呼出関数を保持している。
【０１５３】
次に、端末機能呼出部１０９は、ドライバ呼出関数を用いて、ドライバ識別子「キャラクタ」に対応するドライバに対して、「ＩＤ＝２」のレコードの画像を与え、当該ドライバを起動する。また、端末機能呼出部１０９は、同様に、ドライバ識別子「音声再生」に対応するドライバに対して、音声「もう、やだー」を与え、当該ドライバを起動する。その結果、図１３のキャラクタ表示が図１５のように変わり、音声「もう、やだー」が出力される。なお、図１５のキャラクタは、胸を触られているが、好感度が「高」なので、笑っている画像である。
【０１５４】
次に、上記と同様に、端末装置１のユーザが、図１３の画面上の「キャラクタＩＤ＝１」のキャラクタの胸をタッチした、とする。
【０１５５】
すると、上記と同様に、端末要求構成部１０５は、送信する端末要求「ｔｏｕｃｈ（１，１），１０１，（Ｘｄ，Ｙｄ），２０１２／１０／２８  １１：３８：４８」を構成した、とする。
【０１５６】
次に、端末送信部１０６は、構成された端末要求を、サーバ装置２に送信する。
【０１５７】
次に、サーバ装置２の受信部２０５は、端末装置１から端末要求を受信する。そして、端末要求処理部２０６は、受信部２０５が受信した端末要求を、上記と同様に解釈する。そして、「ｔｏｕｃｈ（１，１）」は３回目であるので、端末要求処理部２０６は、図１１の履歴管理表の好感度「高」から「中」に変更する。
【０１５８】
次に、シナリオ生成部２０７は、「ＩＤ＝３」のレコードのシナリオ元情報を対応情報管理表から取得する。そして、シナリオ生成部２０７は、取得したシナリオ元情報に従って、端末識別子「１０１」の好感度「中」を履歴管理表から得る。そして、シナリオ生成部２０７は、シナリオ元情報を解釈し、当該シナリオ元情報が有する好感度「中」に対応する記述「ｓｈｏｗ＿ｃｈａｒ（＄オブジェクト識別子，ＩＤ＝３）」を得る。次に、シナリオ生成部２０７は、「ｓｈｏｗ＿ｃｈａｒ（＄オブジェクト識別子，ＩＤ＝３）」の変数「＄オブジェクト識別子」に「１」を代入し、「ｓｈｏｗ＿ｃｈａｒ（１，３）」を得る。次に、シナリオ生成部２０７は、オブジェクト識別子「１」に対応し、「ＩＤ＝３」のデータ（ＩＤ＝３のレコードのデータ）を図１４から取得する。このデータは、図１４の「ＩＤ＝３」のレコードの画像と、音声データ「やらしいわね」である。また、シナリオ生成部２０７は、画像に対応するドライバ識別子「キャラクタ」と、音声に対応するドライバ識別子「音声再生」とを取得する。そして、シナリオ生成部２０７は、シナリオ「（キャラクタ，「ＩＤ＝３」のレコードの画像）、（音声再生，「ＩＤ＝３」のレコードの音声）」を構成する。
【０１５９】
次に、送信部２０８は、構成されたシナリオを端末装置１に送信する。また、次に、履歴蓄積部２０９は、受信された端末要求の全部または一部を履歴格納部２０４に蓄積する。ここでは、履歴蓄積部２０９は、端末要求の一部と考えられる「（１，１，タッチ）」を履歴格納部２０４に蓄積する。
【０１６０】
次に、端末装置１の端末受信部１０７は、サーバ装置２からシナリオ「（キャラクタ，「ＩＤ＝３」のレコードの画像）、（音声再生，「ＩＤ＝３」のレコードの音声）」を受信する。  
【０１６１】
次に、端末パーサ部１０８は、受信されたシナリオを解釈し、ドライバ識別子「キャラクタ」と「ＩＤ＝３」のレコードの画像、およびドライバ識別子「音声再生」と音声「やらしいわね」を取得する。
【０１６２】
次に、端末機能呼出部１０９は、ドライバ識別子「キャラクタ」に対応するドライバに対して、「ＩＤ＝３」のレコードの画像を与え、当該ドライバを起動する。また、端末機能呼出部１０９は、ドライバ識別子「音声再生」に対応するドライバに対して、音声「やらしいわね」を与え、当該ドライバを起動する。その結果、図１５のキャラクタ表示が図１６のように変わり、音声「やらしいわね」が出力される。なお、図１６のキャラクタは、胸を触られているが、好感度が「中」なので、胸を隠している画像である。
【０１６３】
以上、本具体例によれば、端末装置１とサーバ装置２とが通信しながら、端末装置１での処理が続けられる情報システムにおいて、端末装置１のユーザの操作の履歴に基づいて、端末装置１において異なる動作を実現できる。
【０１６４】
（具体例３）
具体例３は、端末装置１から送信された端末要求をサーバ装置２で解釈し、端末要求を送信した端末装置１以外の端末装置のドライバをサーバ装置２から送信するシナリオにより動作させる例である。さらに具体的には、具体例３は、一の端末装置におけるユーザ操作に基づいて、他の端末装置を操作できる動作の例である。
【０１６５】
まず、端末装置識別子「１０１」で識別される端末装置１のユーザが、自分の端末装置１に向かって、「おばあちゃんを連れてきて」を音声で指示した、とする。
【０１６６】
次に、端末装置１の端末受付部１０４は、音声「おばあちゃんを連れてきて」を受け付ける。次に、端末要求構成部１０５は、端末受付部１０４が受け付けていた音声が途切れたことを検知し、端末受付部１０４が受け付けた指示等を用いて、端末要求を構成すると判断する。
【０１６７】
次に、端末要求構成部１０５は、音声「おばあちゃんを連れてきて」を音声認識し、文字列「おばあちゃんを連れてきて」を取得する。また、端末要求構成部１０５は、端末装置１が格納している端末識別子「１０１」を取得する。また、端末要求構成部１０５は、端末装置１が保持しているＧＰＳ受信機が取得した位置情報（Ｘｅ，Ｙｅ）を取得する。なお、ＧＰＳ受信機は、例えば、端末機能部１０１の一つである。また、端末要求構成部１０５は、図示しない時計や、外部の装置（例えば、ＮＴＰサーバ）から現在時刻「２０１２／１０／２８  １３：５９：５３」取得する。そして、端末要求構成部１０５は、端末要求「１０１，（Ｘｅ，Ｙｅ），２０１２／１０／２８  １３：５９：５３，"おばあちゃんを連れてきて"」を構成する。
【０１６８】
次に、端末送信部１０６は、構成された端末要求を、サーバ装置２に送信する。
【０１６９】
次に、サーバ装置２の受信部２０５は、端末装置１から端末要求「１０１，（Ｘｅ，Ｙｅ），２０１２／１０／２８  １３：５９：５３，"おばあちゃんを連れてきて"」を受信する。
【０１７０】
次に、端末要求処理部２０６、シナリオ生成部２０７は、受信部２０５が受信した端末要求を、以下のように解釈する。次に、端末要求処理部２０６は、受信された端末要求から指示内容情報「おばあちゃんを連れてきて」を取得する。
【０１７１】
次に、シナリオ生成部２０７は、指示内容情報「おばあちゃんを連れてきて」を用いて、図８の対応情報管理表を検索する。そして、シナリオ生成部２０７は、指示内容情報が、対応情報管理表の「ＩＤ＝５」の端末要求「＄人．＊"連れてきて"」にマッチする、と判断する。そして、シナリオ生成部２０７は、対応情報管理表の「ＩＤ＝５」のシナリオ元情報を取得する。
【０１７２】
次に、シナリオ生成部２０７は、端末要求「＄人．＊"連れてきて"」の中に、変数が存在することを検知し、サーバ装置２が行うべき処理が存在すると判断する。なお、このサーバ装置２が行うべき第一の処理は、変数「＄人」を取得する処理である。
【０１７３】
次に、シナリオ生成部２０７は、指示内容情報「おばあちゃんを連れてきて」と端末要求「＄人．＊"連れてきて"」を用いて、変数「＄人」に対応する「おばあちゃん」を、指示内容情報から取得する。なお、ここで、「おばあちゃん」を取得する方法は問わない。例えば、シナリオ生成部２０７は、「おばあちゃんを連れてきて」を形態素解析し、単語「おばあちゃん」を取得し、変数「＄人」に対応すると判断する。
【０１７４】
次に、シナリオ生成部２０７は、対応情報管理表の「ＩＤ＝５」のシナリオ元情報を解釈する。つまり、シナリオ生成部２０７は、シナリオ元情報の「ｔｅｒｍｉｎａｌ＝ｓｅａｒｃｈ（＄端末識別子，＄人）」の変数「＄端末識別子」「人」に、「１０１」「おばあちゃん」を代入する。そして、シナリオ生成部２０７は、「ｔｅｒｍｉｎａｌ＝ｓｅａｒｃｈ（１０１，おばあちゃん）」を実行する。つまり、シナリオ生成部２０７は、図１２の関連ユーザ管理表の「端末識別子１＝１０１」かつ「関係＝おばあちゃん」に合致するレコードから、端末識別子２「１０３」を取得する。つまり、「ｔｅｒｍｉｎａｌ＝ｓｅａｒｃｈ（１０１，おばあちゃん）」の「ｔｅｒｍｉｎａｌ」が「１０３」である、として取得された。
【０１７５】
次に、シナリオ生成部２０７は、シナリオ元情報を解釈し、「ｔｅｒｍｉｎａｌ！＝ＮＵＬＬ」に合致すると判断する。そして、シナリオ生成部２０７は、図８の「ＩＤ＝５」のレコードから、「ｔｅｒｍｉｎａｌ！＝ＮＵＬＬ」に対応するシナリオ元情報を取得する。このシナリオ元情報は、「ｐｕｔ（＄位置情報，ｔｅｒｍｉｎａｌ）；ｓｔａｒｔ＿ｕｐ（ｎａｖｉ（））；ｓｅｔ＿ｄｅｓｔｉｎａｔｉｏｎ（＄位置情報）；ｒｏｕｔｅ＿ｓｅａｒｃｈ（＄現在位置，＄目的地）；」である。
【０１７６】
次に、シナリオ生成部２０７は、「ｐｕｔ（＄位置情報，ｔｅｒｍｉｎａｌ）」に「位置情報＝（Ｘｅ，Ｙｅ）」「ｔｅｒｍｉｎａｌ＝１０３」を代入し、「ｐｕｔ（（Ｘｅ，Ｙｅ），１０３）」を構成する。
【０１７７】
次に、送信部２０８は、端末識別子「１０１」とおばあちゃんの端末装置の端末識別子「１０３」とが、グループ情報格納部２０３でグループとして管理されているか否かをチェックする。ここで、図１０のグループ情報管理表によれば、「１０１」と「１０３」とはグループとして管理されている。従って、送信部２０８は、おばあちゃんの端末装置１に、「ｐｕｔ（（Ｘｅ，Ｙｅ），１０３）」等のコマンドを送信しても良い、と判断する。そして、送信部２０８は、「１０３」の端末装置１に、「ｐｕｔ（（Ｘｅ，Ｙｅ），１０３）」を送信する。「ｐｕｔ（（Ｘｅ，Ｙｅ），１０３）」は、端末装置１の位置情報（Ｘｅ，Ｙｅ）を通知するコマンドである。
【０１７８】
そして、おばあちゃんの端末装置１は、端末装置１の位置情報（Ｘｅ，Ｙｅ）を受信し、一時蓄積する。なお、まず、おばあちゃんの端末装置１に、案内を行う処理を実施しても良いか否かを問い合わせる情報を出力し、おばあちゃんの端末装置１から「許可」を示す情報を受信した場合にも、以下に説明する案内を行う処理を進めることは好適である。
【０１７９】
次に、送信部２０８は、コマンド「ｓｔａｒｔ＿ｕｐ（ｎａｖｉ）（）；」を、「１０３」の端末装置１に送信する。
【０１８０】
次に、おばあちゃんの端末装置１は、コマンド「ｓｔａｒｔ＿ｕｐ（ｎａｖｉ（））；」を受信し、当該コマンドに従い、ｎａｖｉ（）を起動する。つまり、おばあちゃんの端末装置１では、ナビゲーションシステム（端末機能部の一つ）が起動される。なお、おばあちゃんの端末装置１は、シナリオ「ｓｔａｒｔ＿ｕｐ（ｎａｖｉ（））；」はナビゲーションシステムを起動することを示す情報が格納されている、とする。
【０１８１】
次に、送信部２０８は、コマンド「ｓｅｔ＿ｄｅｓｔｉｎａｔｉｏｎ（＄位置情報）；」を、「１０３」の端末装置に送信する。
【０１８２】
次に、おばあちゃんの端末装置１は、コマンド「ｓｅｔ＿ｄｅｓｔｉｎａｔｉｏｎ（＄位置情報）；」を受信し、当該コマンドに従い、位置情報（Ｘｅ，Ｙｅ）を目的地として、ナビゲーションシステムに設定する。なお、おばあちゃんの端末装置１は、シナリオ「ｓｅｔ＿ｄｅｓｔｉｎａｔｉｏｎ（＄位置情報）；」は、ナビゲーションシステムの目的地に、「＄位置情報」を設定することを示す情報が格納されている、とする。
【０１８３】
次に、送信部２０８は、コマンド「ｒｏｕｔｅ＿ｓｅａｒｃｈ（＄現在位置，＄目的地）；」を、「１０３」の端末装置１に送信する。
【０１８４】
次に、おばあちゃんの端末装置１は、コマンド「ｒｏｕｔｅ＿ｓｅａｒｃｈ（＄現在位置，＄目的地）；」の変数「＄現在位置」におばあちゃんの端末装置の現在位置を代入する。また、おばあちゃんの端末装置１は、変数「＄目的地」に位置情報（Ｘｅ，Ｙｅ）を代入する。なお、おばあちゃんの端末装置１はＧＰＳ受信機等の位置情報を取得する機能を有し、当該機能を用いて、「＄現在位置」を取得できる、とする。
【０１８５】
そして、おばあちゃんの端末装置１は、コマンド「ｒｏｕｔｅ＿ｓｅａｒｃｈ（（Ｘｆ，Ｙｆ），（Ｘｅ，Ｙｅ））；」を実行し、ナビゲーションのための経路探索を行う。そして、経路案内がおばあちゃんの端末装置１で行われる、とする。なお、経路案内における目的地は、「おばあちゃんを連れてきて」と音声入力したユーザが居る位置である。なお、おばあちゃんの端末装置１は、シナリオ「ｒｏｕｔｅ＿ｓｅａｒｃｈ（（Ｘｆ，Ｙｆ），（Ｘｅ，Ｙｅ））；」は、ナビゲーションシステムを用いて、２つの地点間の経路案内を行うことを示す情報が格納されている、とする。
【０１８６】
本具体例によれば、一の端末装置１におけるユーザ操作に基づいて、他の端末装置１を操作できる。また、本具体例によれば、一の端末装置におけるユーザ操作に基づいて、グループ管理された他の端末装置１のみ操作ができる。
【０１８７】
（具体例４）
具体例４は、オブジェクトが端末間を移動できる情報システムである。さらに具体的には、端末装置１のユーザが、端末装置１に存在しているキャラクタを、別の端末装置（ここでは、街角に設置されている端末装置（端末「Ｔ」））に移動させる場合について説明する。なお、端末装置１のユーザは、ユーザ識別子「Ａ」で識別されるユーザである、とする。
【０１８８】
ユーザ「Ａ」が、自身が所有する端末装置１を家に置いてきた。そして、当該ユーザ「Ａ」が街に出かけ、端末「Ｔ」の前に居る、とする。
【０１８９】
また、現在、当該ユーザの端末装置１（端末識別子「１０１」）に、キャラクタ識別子「１」のキャラクタが存在し、かかること（ユーザ識別子：Ａ，端末識別子：１０１，キャラクタ識別子：１）が、サーバ装置２のシナリオ生成部２０７が保持している、とする。
【０１９０】
かかる状況において、ユーザ「Ａ」は、端末「Ｔ」にユーザ識別子「Ａ」と、音声「ここに移動して」とを入力した、とする。
【０１９１】
次に、端末「Ｔ」の端末受付部１０４は、ユーザ識別子「Ａ」および音声「ここに移動して」を受け付ける。次に、端末要求構成部１０５は、受け付けたデータを用いて、端末要求を構成すると判断する。
【０１９２】
次に、端末「Ｔ」の端末要求構成部１０５は、ユーザ識別子「Ａ」、音声「ここに移動して」、端末「Ｔ」の端末識別子「５０１」を用いて、端末要求（５０１，Ａ，"ここに移動して"）を構成する。なお、端末要求構成部１０５は、音声認識機能を有し、音声「ここに移動して」を文字列「ここに移動して」に変換した、とする。なお、端末「Ｔ」は、端末識別子「５０１」を予め保持している、とする。
【０１９３】
次に、端末「Ｔ」の端末送信部１０６は、構成された端末要求（５０１，Ａ，"ここに移動して"）を、サーバ装置２に送信する。
【０１９４】
次に、サーバ装置２の受信部２０５は、端末装置１から端末要求（５０１，Ａ，"ここに移動して"）を受信する。
【０１９５】
次に、端末要求処理部２０６は、受信部２０５が受信した端末要求を解釈する。そして、端末要求処理部２０６は、端末要求の解釈結果を用いて、サーバ装置２が行うべき処理が存在すると判断する。つまり、端末要求処理部２０６は、"ここに移動して"を用いて、図８の表の「ＩＤ＝４」のレコードに合致する、と判断する。そして、端末要求処理部２０６は、「ＩＤ＝４」のレコードのシナリオ元情報「ｃｈ＝ｇｅｔ＿ｃｈａｒ（＄ユーザ識別子，＄キャラクタ）；  ｄｅｌｅｔｅ（＄ユーザ識別子，＄キャラクタ）；  ｐｕｔ＿ｃｈａｒ（＄端末識別子，ｃｈ）」を得る。そして、得たシナリオ元情報の中に変数を含むので、端末要求処理部２０６は、サーバ装置２が行うべき処理が存在すると判断する。
【０１９６】
次に、端末要求処理部２０６は、「＄ユーザ識別子」に対応する「Ａ」を端末要求から取得する。また、端末要求処理部２０６は、「＄キャラクタ」に対応する「ＩＤ＝１」のキャラクタの情報を取得する。（ユーザ識別子：Ａ，端末識別子：１０１，キャラクタ識別子：１）から、端末要求処理部２０６は、ユーザ識別子「Ａ」に対応するキャラクタ識別子は「１」であると取得できる。また、端末要求処理部２０６は、「＄端末識別子」に対応する「５０１」を端末要求から取得する。
【０１９７】
次に、シナリオ生成部２０７は、「ｃｈ＝ｇｅｔ＿ｃｈａｒ（＄ユーザ識別子，＄キャラクタ）；」の変数に値を代入し、「ｃｈ＝ｇｅｔ＿ｃｈａｒ（Ａ，１）；」を得る。そして、シナリオ生成部２０７は、「ｃｈ＝ｇｅｔ＿ｃｈａｒ（Ａ，１）；」を実行し、変数「ｃｈ」にキャラクタの情報を代入する。次に、シナリオ生成部２０７は、「ｄｅｌｅｔｅ（＄ユーザ識別子，＄キャラクタ）；」の変数に値を代入し、「ｄｅｌｅｔｅ（Ａ，１）；」を得る。そして、シナリオ生成部２０７は、「ｄｅｌｅｔｅ（Ａ，１）；」を実行し、ユーザ識別子「Ａ」に対応するキャラクタの情報を、現在、キャラクタが存在する端末装置１の端末識別子「１０１」を取得する。なお、キャラクタの情報は、キャラクタの画像を含む。
【０１９８】
そして、送信部２０８は、端末識別子「１０１」で識別される端末装置１に、「ｄｅｌｅｔｅ（Ａ，１）；」を送信する。そして、端末識別子「１０１」で識別される端末装置１の端末受信部１０７は、シナリオ「ｄｅｌｅｔｅ（Ａ，１）；」を受信し、端末パーサ部１０８は当該シナリオを解釈する。そして、端末機能呼出部１０９は、ディスプレイから「ＩＤ＝１」のキャラクタを削除する。
【０１９９】
次に、シナリオ生成部２０７は、「ｐｕｔ＿ｃｈａｒ（＄端末識別子，ｃｈ）」の変数に値を代入し、「ｐｕｔ＿ｃｈａｒ（５０１，ｃｈ）」を得る。なお、変数「ｃｈ」には、キャラクタの情報が代入されている、とする。
【０２００】
次に、送信部２０８は、「ｐｕｔ＿ｃｈａｒ（５０１，ｃｈ）」を端末識別子「５０１」で識別される端末「Ｔ」に送信する。
【０２０１】
次に、端末「Ｔ」の端末受信部１０７は「ｐｕｔ＿ｃｈａｒ（５０１，ｃｈ）」を受信する。そして、端末パーサ部１０８は、「ｐｕｔ＿ｃｈａｒ（５０１，ｃｈ）」を解釈する。そして、端末「Ｔ」の端末機能呼出部１０９は、キャラクタのドライバに変数「ｃｈ」のデータ（キャラクタのデータ）を渡し、キャラクタのドライバを起動させる。そして、端末「Ｔ」のディスプレイには、キャラクタが表示される。
【０２０２】
以上、本具体例によれば、端末間のオブジェクトが移動できる。
【０２０３】
以上、本実施の形態によれば、ドライバにより駆動される１以上のハードウェアを具備し、かつ情報処理能力が十分でない端末装置において、１以上のハードウェアを有効に利用しつつ、複雑な情報処理が行える。
【０２０４】
なお、本実施の形態において、端末装置１から送信された端末要求を、サーバ装置２が解釈して、シナリオを端末装置１に返す、という処理を行っている。ただし、サーバ装置２は、端末装置１から端末要求を受信しない場合にでも、予め決められた条件を満たす場合、端末装置１にシナリオを送信しても良い。予め決められた条件とは、例えば、予め決められた時刻になったこと、サーバ装置２の状態が予め決められた条件を満たすこと等である。サーバ装置２の状態が予め決められた条件を満たすこととは、例えば、ＣＰＵ負荷が閾値以下であること、サーバ装置２が起動していること等である。
【０２０５】
また、本実施の形態において、例えば、サーバ装置２が、ダウンした場合、サーバ装置２がダウンから復帰するまで、サーバ装置２からの復帰した旨の情報の受信まで端末装置１は待機状態となり、端末装置１が本来持つ機能が動作する。また、かかる場合、通常、端末装置１は現在の状態を保持（退避）している。なお、端末装置１が本来持つ機能とは、例えば、ＯＳがユーザからの指示等を受け付ける状態である。また、サーバ装置２から復帰した旨の情報を受信した場合、端末装置１は、退避した状態を呼び出し、サーバ装置２とのやりとりを再開する。
【０２０６】
また、端末装置１で処理を行っている場合、通常、サーバ装置２と常時通信を行っている。そのため、サーバ装置２が、例えば、ダウンした場合、端末装置１の処理は停止しても良い。
【０２０７】
また、本実施の形態における処理は、ソフトウェアで実現しても良い。そして、このソフトウェアをソフトウェアダウンロード等により配布しても良い。また、このソフトウェアをＣＤ−ＲＯＭなどの記録媒体に記録して流布しても良い。なお、このことは、本明細書における他の実施の形態においても該当する。なお、本実施の形態における端末装置１を実現するソフトウェアは、以下のようなプログラムである。つまり、このプログラムは、記憶媒体に、前記１以上の端末機能部のドライバを識別する１以上のドライバ識別子を格納しており、コンピュータを、ユーザからの１以上の指示を受け付ける端末受付部と、前記１以上の指示に対応する要求である端末要求を構成する端末要求構成部と、前記端末要求を前記サーバ装置に送信する端末送信部と、前記端末要求の送信に対応して、前記サーバ装置からコマンドとデータとを有するシナリオを受信する端末受信部と、前記シナリオを解釈し、前記１以上のドライバ識別子、および当該１以上のドライバ識別子で識別される１以上の機能部に渡すデータであり、前記シナリオが有するデータを取得する端末パーサ部と、前記端末パーサ部が取得した前記１以上のドライバ識別子で識別される１以上の端末機能部に、前記端末パーサ部が取得したデータを渡し、前記１以上の端末機能部を呼び出す端末機能呼出部として機能させるためのプログラムである。
【０２０８】
また、上記プログラムにおいて、１以上のオブジェクトを格納し得る端末オブジェクト格納部と、前記１以上のオブジェクトを出力する端末オブジェクト出力部とをさらに具備し、前記シナリオは、オブジェクトの動作を示すコマンドである動作コマンドを有し、前記端末パーサ部は、前記シナリオを解釈し、当該シナリオから動作コマンドを取得し、前記端末オブジェクト出力部は、前記動作コマンドに従って、当該動作コマンドに対応するオブジェクトを動作させることは好適である。
【０２０９】
また、本実施の形態におけるサーバ装置２を実現するソフトウェアは、以下のようなプログラムである。つまり、このプログラムは、記憶媒体に、端末要求を構成する情報とシナリオを構成する元になる情報であるシナリオ元情報との対応を示す１以上の対応情報を格納し得る対応情報格納部と、コンピュータを、端末装置から端末要求を受信する受信部と、前記受信部が受信した端末要求を解釈し、当該端末要求に対応するシナリオ元情報を、前記記憶媒体から取得し、かつ、前記受信部が受信した端末要求に対応する処理を行う端末要求処理部と、前記端末要求処理部が取得したシナリオ元情報と、前記端末要求処理部が処理を行って得た処理結果とを用いて、シナリオを生成するシナリオ生成部と、前記シナリオ生成部が生成したシナリオを端末装置に送信する送信部として機能させるためのプログラムである。
【０２１０】
また、上記プログラムにおいて、端末要求の一部または全部である要求履歴を格納し得る履歴格納部と、前記受信部が受信した端末要求の一部または全部である要求履歴を前記履歴格納部に蓄積する履歴蓄積部とをさらに具備し、前記シナリオ生成部は、前記受信部が受信した端末要求、および前記履歴格納部に格納されている要求履歴を用いてシナリオを生成するプログラムであることは好適である。
【０２１１】
また、上記プログラムにおいて、前記端末装置が具備している端末機能部のドライバを識別する１以上のドライバ識別子を格納し得るサーバドライバ管理部をさらに具備し、前記シナリオ生成部は、前記サーバドライバ管理部に格納されている１以上のドライバ識別子に応じて、生成するシナリオが異なるものとして、コンピュータを機能させることは好適である。
【０２１２】
また、上記プログラムにおいて、前記要求履歴を統計処理し、統計処理結果を取得する統計処理結果取得部と、前記統計処理結果を出力する統計処理結果出力部とをさらに具備するものとして、コンピュータを機能させることは好適である。
【０２１３】
また、上記プログラムにおいて、前記シナリオ生成部が生成するシナリオは、前記端末装置以外の端末装置である他端末装置に対するコマンドを含み、前記送信部は、前記他端末装置に、前記コマンドを送信するものとして、コンピュータを機能させることは好適である。
【０２１４】
また、上記プログラムにおいて、２以上の端末装置のグループを特定する情報であり、２以上の各端末装置を識別する２以上の端末装置識別子を有するグループ情報を格納し得るグループ情報格納部をさらに具備し、前記送信部は、前記グループ情報が有する２以上のいずれかの端末装置識別子にも対応しない端末装置にはコマンドを送信しないものとして、コンピュータを機能させることは好適である。
【０２１５】
また、図１７は、本明細書で述べたプログラムを実行して、上述した種々の実施の形態の情報システムを実現するコンピュータの外観を示す。上述の実施の形態は、コンピュータハードウェア及びその上で実行されるコンピュータプログラムで実現され得る。図１７は、このコンピュータシステム３００の概観図であり、図１８は、システム３００のブロック図である。
【０２１６】
図１７において、コンピュータシステム３００は、ＣＤ−ＲＯＭドライブを含むコンピュータ３０１と、キーボード３０２と、マウス３０３と、モニタ３０４と、マイク３０５と、スピーカー３０６とを含む。
【０２１７】
図１８において、コンピュータ３０１は、ＣＤ−ＲＯＭドライブ３０１２に加えて、ＭＰＵ３０１３と、バス３０１４と、ＲＯＭ３０１５と、ＲＡＭ３０１６と、ハードディスク３０１７とを含む。なお、バス３０１４は、ＭＰＵ３０１３やＣＤ−ＲＯＭドライブ３０１２に接続されている。また、ＲＯＭ３０１５には、ブートアッププログラム等のプログラムが記憶されている。また、ＲＡＭ３０１６は、ＭＰＵ３０１３に接続され、アプリケーションプログラムの命令を一時的に記憶するとともに一時記憶空間を提供するためのものである。また、ハードディスク３０１７は、アプリケーションプログラム、システムプログラム、及びデータを記憶するためのものである。ここでは、図示しないが、コンピュータ３０１は、さらに、ＬＡＮへの接続を提供するネットワークカードを含んでも良い。
【０２１８】
コンピュータシステム３００に、上述した実施の形態の情報システムの機能を実行させるプログラムは、ＣＤ−ＲＯＭ３１０１に記憶されて、ＣＤ−ＲＯＭドライブ３０１２に挿入され、さらにハードディスク３０１７に転送されても良い。これに代えて、プログラムは、図示しないネットワークを介してコンピュータ３０１に送信され、ハードディスク３０１７に記憶されても良い。プログラムは実行の際にＲＡＭ３０１６にロードされる。プログラムは、ＣＤ−ＲＯＭ３１０１またはネットワークから直接、ロードされても良い。
【０２１９】
プログラムは、コンピュータ３０１に、上述した実施の形態の情報システムの機能を実行させるオペレーティングシステム、またはサードパーティープログラム等は、必ずしも含まなくても良い。プログラムは、制御された態様で適切な機能（モジュール）を呼び出し、所望の結果が得られるようにする命令の部分のみを含んでいれば良い。コンピュータシステム３００がどのように動作するかは周知であり、詳細な説明は省略する。
【０２２０】
なお、上記プログラムにおいて、情報を送信する送信ステップや、情報を受信する受信ステップなどでは、ハードウェアによって行われる処理、例えば、送信ステップにおけるモデムやインターフェースカードなどで行われる処理（ハードウェアでしか行われない処理）は含まれない。
【０２２１】
また、上記プログラムを実行するコンピュータは、単数であってもよく、複数であってもよい。すなわち、集中処理を行ってもよく、あるいは分散処理を行ってもよい。
【０２２２】
また、上記各実施の形態において、一の装置に存在する２以上の通信手段（端末情報送信部、端末情報受信部など）は、物理的に一の媒体で実現されても良いことは言うまでもない。
【０２２３】
また、上記各実施の形態において、各処理（各機能）は、単一の装置（システム）によって集中処理されることによって実現されてもよく、あるいは、複数の装置によって分散処理されることによって実現されてもよい。
【０２２４】
本発明は、以上の実施の形態に限定されることなく、種々の変更が可能であり、それらも本発明の範囲内に包含されるものであることは言うまでもない。
【産業上の利用可能性】
【０２２５】
以上のように、本発明にかかる情報システムは、ドライバにより駆動される１以上のハードウェアを具備し、かつ情報処理能力が十分でない端末装置において、１以上のハードウェアを有効に利用しつつ、複雑な情報処理が行える、という効果を有し、情報システム等として有用である。
【符号の説明】
【０２２６】
１  端末装置
２  サーバ装置
３  ネットワーク
１０１  端末機能部
１０２  端末ドライバ管理部
１０３  端末オブジェクト格納部
１０４  端末受付部
１０５  端末要求構成部
１０６  端末送信部
１０７  端末受信部
１０８  端末パーサ部
１０９  端末機能呼出部
１１０  端末オブジェクト出力部
２０１  対応情報格納部
２０２  サーバドライバ管理部
２０３  グループ情報格納部
２０４  履歴格納部
２０５  受信部
２０６  端末要求処理部
２０７  シナリオ生成部
２０８  送信部
２０９  履歴蓄積部
２１０  受付部
２１１  統計処理結果取得部
２１２  統計処理結果出力部
【図１】
2014092810.tif 000003
【図２】
2014092810.tif 000004
【図３】
2014092810.tif 000005
【図４】
2014092810.tif 000006
【図５】
2014092810.tif 000007
【図６】
2014092810.tif 000008
【図８】
2014092810.tif 000009
【図９】
2014092810.tif 000010
【図１０】
2014092810.tif 000011
【図１１】
2014092810.tif 000012
【図１２】
2014092810.tif 000013
【図１７】
2014092810.tif 000014
【図１８】
2014092810.tif 000015
【図７】
2014092810.tif 000016
【図１３】
2014092810.tif 000017
【図１４】
2014092810.tif 000018
【図１５】
2014092810.tif 000019
【図１６】
2014092810.tif 000020