以下、図面を参照して種々の実施形態について詳細に説明する。なお、各図面において同一又は相当の部分に対しては同一の符号を附すこととする。
(第1実施形態)
本実施形態に係る処理システムは、端末及びサーバ間で通信を行うシステムである。処理システムでは、例えば、端末にインストールされたソフトウェア(アプリケーション)が起動され、ユーザに対してゲームが提供される。なお、ユーザとは、処理システムに登録された利用者を意味する。ユーザは、端末の使用者と同一であってもよいし、端末の使用者とは異なる人であってもよい。ユーザは処理システムにおいてユーザIDによって識別される。また、処理システムのサービスの内容は、特に限定されない。以下では、一例として、アプリケーションがゲームをユーザへ提供する場合を説明する。
図1は、実施形態に係る処理システム1の構成を示す概要図である。図1に示すように、処理システム1は、例えば、複数の端末装置10A、及び、代行サーバ30を備える。複数の端末装置10Aは、端末装置10A1〜端末装置10Anを含む(nは1より大きい自然数である)。端末装置10A1〜端末装置10Anは、双方向通信機能を備えた機器で、例えば携帯電話機、通信機能付き携帯ゲーム機又はパーソナルコンピュータ等である。端末装置10A1〜端末装置10Anは、ネットワークNを介して代行サーバ30と通信可能に構成されている。ネットワークNは、例えばインターネット又は専用回線等である。端末装置10A1〜端末装置10Anは、ほぼ同様に構成されるため、以下では、端末装置10A1を代表して説明する。なお、図1の処理システム1は一例であり、一台の端末装置10A1及び代行サーバ30からなる処理システム1であってもよい。
図2は、図1に示す端末装置10A1及び代行サーバ30のハードウェア構成を説明するブロック図である。図2に示すように、端末装置10A1及び代行サーバ30は、CPU(Central Processing Unit)101、ROM(Read Only Memory)又はRAM(Random Access Memory)等の主記憶部102、ハードディスク等の補助記憶部103、通信を制御するネットワークカード等の通信制御部104、カメラ又はタッチパネル等の入力部105及びディスプレイ等の出力部106等を含む通常のコンピュータとして構成される。後述する端末装置10A1及び代行サーバ30の各機能は、例えば、CPU101の制御により、主記憶部102等のハードウェア上に所定のソフトウェアを読み込ませ、入力部105及び出力部106を動作させ、主記憶部102又は補助記憶部103に記憶されたデータの読み出し又は書き込みを行い、通信制御部104により通信する等、の各ハードウェアの動作の組み合わせによって実現される。
図3は、処理システム1の機能構成を示すブロック図である。図3に示すように、端末装置10A1は、例えば、入出力部17、処理実行部13、ゲーム管理部11、テーブル管理部15及び端末側送受信部18を備える。端末装置10A1は、例えば、処理IDテーブル12、代行テーブル14及びデータ記録部16を備える。
以下では、ゲームとして、モンスターが描かれたカードを用いてコンピュータ又は他のユーザと対戦(バトル)を行うゲームを一例として説明する。このゲームでは、ユーザが抽選等によりカードを取得する。取得したカードのモンスターにレベルが付与されており、得られた「経験値」に応じてモンスターのレベルが上昇し、レベルに応じてモンスターの強さに関連したパラメータが上昇する。カード同士が「合成」された場合には、異なるモンスターのカードとなったり、合成前のモンスターへ「経験値」が付与されたりする。このように、ユーザは、モンスターを「経験値」に応じて成長させて、コンピュータ又は他のユーザと対戦(バトル)を行う。また、ユーザのレベルも存在し、ユーザのレベルに応じてゲームの進行や所有可能なカード枚数等が変更される。なお、ユーザは、処理システム1が対象とするゲームのユーザである。当該ゲームを実行するアプリケーションは、例えば、通信を介して端末装置10A1にダウンロードされて、インストールされる。
入出力部17は、入力操作受付部26及び表示部25を備える。入力操作受付部26は、ユーザの操作を受け付ける位置入力装置である。例えば、入力操作受付部26は、ゲームの進行に関するユーザの操作を受け付ける。入力操作受付部26は、ユーザ操作に関する情報を処理実行部13へ出力する。表示部25は、処理実行部13の出力結果に基づいて、ゲームの内容等を表示する。入力操作受付部26及び表示部25として、例えばタッチパネルが用いられる。
ゲーム管理部11は、ゲームの全体の所定の処理の管理を行う。所定の処理とは、処理システム1によって提供されるサービスに関する端末装置10A1側のアプリケーション内で実行される処理である。ゲーム管理部11は、例えば、処理実行部13に対して命令し、処理実行部13に所定の処理を実行させる。ゲーム管理部11は、例えば、処理実行部13を介して取得したユーザ操作に関する情報に基づいて、実行するゲームの処理を決定する。ゲームの処理は、処理IDによって識別できる。ゲーム管理部11は、例えば、処理IDに基づいて、処理IDテーブル12に格納された処理内容を参照する。処理IDテーブル12は、例えば、処理IDに関連付けされた処理内容が格納されたテーブルである。図4は、処理IDテーブル12の一例である。図4に示すように、処理IDテーブル12は、処理を識別する「処理ID」に「処理内容」、「利用パラメータ」及び「結果パラメータ」が関連付けされている。「処理内容」は、例えば、「カード抽選」、「バトル」、「合成」又は「レベルアップ処理」等である。「利用パラメータ」は、当該処理に必要な情報である。「結果パラメータ」は当該処理後に出力されて記録される情報である。
例えば、「処理ID」が「0055」の場合を説明する。この場合、「処理内容」として「カード抽選」が「0055」に関連付けされている。そして、「利用パラメータ」として「A:抽選種類ID」及び「B:回数」が「0055」に関連付けされており、「結果パラメータ」として「A:排出カードID」が「0055」に関連付けされている。カード抽選には、幾つかの種類の抽選が存在する。「抽選種類ID」は、複数の抽選の種類から処理対象となる抽選を識別するための識別子である。また、「回数」は抽選回数である。「排出カードID」は、抽選によって当選したカードを識別するための識別子である。
同様に、「処理ID」が「0056」の場合を説明する。「処理内容」として「バトル」が当該「0056」に関連付けされている。そして、「利用パラメータ」として「A:対戦種類ID」及び「B:対戦相手ユーザID」が「0056」にそれぞれ関連付けされており、「結果パラメータ」として「A:対戦結果」及び「B:戦利ポイント」が「0056」にそれぞれ関連付けされている。対戦は、幾つかの種類が存在する。「対戦種類ID」は、複数の対戦の種類から処理対象となる対戦を識別するための識別子である。「対戦相手ユーザID」は、対戦相手のユーザを識別するための識別子である。「対戦結果」は勝敗の内容であり、「戦利ポイント」は、勝敗の結果によって得られるポイントである。
同様に、「処理ID」が「0057」の場合では、「処理内容」として「合成」が当該「0057」に関連付けされている。そして、「利用パラメータ」として「A:ベースカードシリアル」及び「B:素材カードシリアル」が「0057」にそれぞれ関連付けされており、「結果パラメータ」として「A:ベースカードシリアル」及び「B:ベースカードパラメータ」が「0057」にそれぞれ関連付けされている。例えば、カード同士が「合成」される場合には、合成後のモンスターの基本となる「ベースカード」と、「ベースカード」のモンスターを成長させるための「素材カード」とがユーザにより選択される。「ベースカードシリアル」は、ベースカードとして「合成」されるカードを一意に選択する識別子である。「素材カードシリアル」は、素材カードとして「合成」されるカードを一意に選択する識別子である。「ベースカードパラメータ」は、「ベースカード」のモンスターの強さと関連付けされたパラメータである。
同様に、「処理ID」が「0058」の場合では、「処理内容」として「レベルアップ処理」が当該「0058」に関連付けされている。そして、「利用パラメータ」として「A:ユーザパラメータレベル」が「0058」に関連付けされており、「結果パラメータ」として「A:ユーザパラメータレベル」が「0058」に関連付けされている。「ユーザパラメータレベル」は、ユーザのレベルを示すパラメータである。
このように、処理IDテーブル12には、ゲームで実行される処理ごとに、処理に必要な「利用パラメータ」と、処理によって出力される「結果パラメータ」とが関連付けされている。ゲーム管理部11は、処理IDテーブル12を参照し、処理IDに基づいて処理内容を決定する。そして、ゲーム管理部11は、決定された処理内容を処理実行部13へ出力する。
処理実行部13は、決定部19、通常処理部20、データ管理部(端末データ更新部)21及び代行処理中継部22を備えている。決定部19は、ゲーム管理部11により出力された処理IDに基づいて、代行サーバ30に実行させるか否かを決定する。決定部19は、例えば、代行テーブル14を参照して当該処理内容の実行先を決定する。図5は、代行テーブル14の一例である。図5に示すように、代行テーブル14では、「処理ID」に「代行処理フラグ」が関連付けされている。「代行処理フラグ」は、「0」又は「1」が格納されている。決定部19は、「代行処理フラグ」が「0」の場合には、端末装置10A1に処理を実行させると決定する。この場合、決定部19は、決定結果を通常処理部20へ出力する。決定結果は、例えば処理IDを含む。一方、決定部19は、「代行処理フラグ」が「1」の場合には、代行サーバ30に処理を実行させると決定する。この場合、決定部19は、代行処理中継部22へ決定結果を出力する。なお、代行テーブル14には、代行処理を特定するために必要なその他のパラメータを含んでいてもよい。
通常処理部20は、決定部19により出力された決定結果に基づいて所定の処理を行う。通常処理部20は、処理システム1によって提供されるサービスに関する処理であって、端末装置10A1側のアプリケーション内で実行される処理を行う。通常処理部20にて実行される処理は、例えばアプリケーションにて予め定められている。具体的には、端末装置10A1にアプリケーションがインストールされた時点で定められている通常の処理である。例えば、処理IDが「0058」である場合には、通常処理部20は、「レベルアップ処理」を行う。通常処理部20は、データ管理部21へ「レベルアップ処理」に必要なデータを問い合わせる。データ管理部21は、端末装置10A1内のデータを管理する。端末装置10A1内のデータとは、端末装置10A1本体にあるRAM等の記憶領域、又は、端末装置10A1から参照可能な外部記憶領域に記録されているデータである。データ管理部21は、ここでは、データ記録部16に格納されたゲームに関する情報を管理する。データ記録部16には、ゲームの進行に必要な基本となるデータ及びユーザ固有の情報が含まれている。ゲームの基本と成るデータとは、ゲーム画面に関する情報、カードに関するデフォルトの情報(成長前のモンスターに関する情報及びモンスターの画像等)、又はゲーム音楽等である。また、ユーザ固有の情報とは、ユーザのレベル、ユーザの所有カードの情報(所有カードの種類又はレベル等)又はユーザの成績等が含まれる。通常処理部20は、データ管理部21を介して取得した情報に基づいて処理を実行し、実行結果をデータ記録部16又は入出力部17へ出力する。
代行処理中継部22は、代行サーバ30にて代行処理を行うために必要な中継処理を行う。代行処理中継部22は、代行処理情報生成部23及び代行結果受信部24を備える。代行処理情報生成部23は、代行サーバ30にて代行処理を行うために必要な情報(代行処理情報)を生成する。代行処理情報生成部23は、データ管理部21へ代行処理に必要なデータを問い合わせし、データ記録部16よりデータを取得する。代行処理情報生成部23は、取得されたデータに基づいて代行処理情報を生成する。代行処理情報は、代行処理を行う処理ID及び代行処理に必要なパラメータ等の情報を含んでいる。代行処理情報は、ユーザIDを含んでいてもよい。代行処理情報生成部23は、端末側送受信部18へ代行処理情報を出力する。
代行結果受信部24は、代行サーバ30によって処理された結果(代行結果)を、端末側送受信部18を介して受信する。代行結果受信部24は、受信された情報を、通常処理部20で利用可能なデータ形式へ変換する。そして、代行結果受信部24は、変換後のデータをデータ管理部21へ出力する。データ管理部21は、代行結果受信部24により出力されたデータを通常処理部20又はデータ記録部16へ出力する。
端末側送受信部18は、代行サーバ30と通信する。通信に用いられる情報には、送信先情報とデータが含まれる。端末側送受信部18は、代行サーバ30を宛先とする送信先情報及びデータを送信する。また、端末側送受信部18は、送信先に関する情報に基づいて端末装置10A1宛の情報であるか否かを判断し、端末装置10A1宛の情報である場合にデータを受信する。具体的には、端末側送受信部18は、例えば、代行処理情報生成部23により生成された代行処理情報を代行サーバ30へ送信し、代行サーバ30にて実行された代行結果を代行サーバ30から受信する。
また、端末側送受信部18は、例えば、代行情報を代行サーバ30から受信する。代行情報とは、代行サーバ30側の情報を基に生成された情報であって、決定部19の決定において参照される情報である。代行情報は、例えば代行処理を特定する情報である。代行情報は、例えば、「代行処理ID」を含んでいる。代行処理IDは、代行処理の対象となる処理IDを示す識別子である。代行情報には、対象となるユーザを識別するために、ユーザIDが含まれていてもよい。端末側送受信部18は、受信された代行情報をテーブル管理部15へ出力する。テーブル管理部15は、代行情報に基づいて代行テーブル14を更新する。例えば、テーブル管理部15は、「代行処理ID」に一致する「処理ID」に関連付けされた「代行処理フラグ」を変更する。なお、端末側送受信部18は、受信した代行情報をRAM等の記録部に記録してもよい。この場合、テーブル管理部15は、記録部を参照して代行情報を取得し、代行テーブル14を更新する。
代行サーバ30は、代行情報生成部36、ユーザDB37、サーバ側送受信部32及び代行処理部31を備えている。
代行情報生成部36は、上述した代行情報を生成する機能を有している。代行情報生成部36は、代行処理ID受付部41及びユーザ特定部40を備えている。代行処理ID受付部41は、例えば代行サーバ30のオペレータの入力操作によって入力された代行処理ID39を受け付ける。また、ユーザ特定部40は、代行サーバ30のオペレータの入力操作によって入力された条件データ38を受け付ける。条件データ38は、ユーザのレベル又は成績等に関連したデータであって、代行処理が必要となる条件を示す。図6は、上述した「代行処理ID」及び「代行処理が必要となる条件」を関連付けさせたテーブルである。オペレータの入力操作によって、代行処理ID「0058」、及び、パラメータ「99」を関連付けする。なお、パラメータ「99」は、ユーザのレベルが99であることを示している。
ユーザDB37には、複数の端末装置10Aのユーザに関する属性情報が格納されている。ユーザの属性情報とは、ユーザ個別に設定されたパラメータであり、例えば、ユーザのレベル、ゲーム進捗度または所持アイテム等が含まれる。図7は、ユーザDB37に格納された属性情報の一例である。図7に示すように、ユーザDB37には、「ユーザID」、「ユーザ名」、「アバター画像」及び「ユーザパラメータ」がそれぞれ関連付けされて記録されている。「アバター画像」はユーザのアバターを表示する際に用いられる画像である。「ユーザパラメータ」には、ユーザのゲームのレベルが格納されている。ユーザ特定部40は、条件データ38及びユーザDB37に基づいて、当該条件に該当するユーザを特定する。例えば、ユーザ特定部40は、レベルが「99」であるユーザをユーザDB37から取得する。そして、代行情報生成部36が、ユーザ特定部40により特定されたユーザと、代行処理ID受付部41によって取得された代行処理IDと関連付けし、代行情報を生成する。図8は、代行情報の一例である。図8に示すように、代行情報は、例えば、レベル「99」であるユーザを識別する「ユーザID」と、代行処理を識別する「代行処理ID」とが関連付けされた情報である。代行情報生成部36は、生成された代行情報をサーバ側送受信部32へ出力する。
サーバ側送受信部32は、端末装置10A1と通信する。通信に用いられる情報には、送信先情報とデータが含まれる。サーバ側送受信部32は、端末装置10A1を宛先とする送信先情報及びデータを送信する。例えば、サーバ側送受信部32は、代行情報生成部36により生成された代行情報に基づいて、送信先情報及びデータを作成して送信する。また、サーバ側送受信部32は、送信先情報に基づいて代行サーバ30宛の情報であるか否かを判断し、代行サーバ30宛の情報である場合にはデータを受信する。また、サーバ側送受信部32は、例えば、代行処理情報を受信する。上記のとおり、代行処理情報は、代行処理を行う処理ID及び代行処理に必要なパラメータ等の情報を含んでいる。また、代行処理情報は、ユーザIDを含んでいてもよい。サーバ側送受信部32は、受信されたデータを代行処理部31へ出力する。
代行処理部31は、解析部33、算出部34及び代行結果生成部35を備えている。解析部33は、サーバ側送受信部32により受信された代行処理情報を解析する。そして、解析部33は、代行処理情報に含まれる処理ID及び処理IDによって特定される処理に必要な情報を取得する。ここで、解析部33は、送信元のユーザIDを代行処理情報から取得してもよい。解析部33は、取得された情報を算出部34へ出力する。
算出部34は、代行処理情報に含まれる処理ID及び処理IDによって特定される処理に必要な情報に基づいて、端末装置10A1の代わりに処理を行う。算出部34は、処理結果(代行結果)を代行結果生成部35へ出力する。処理結果(代行結果)とは、代行処理部31が決定部19の決定に基づいて処理した結果の情報であって、端末装置10Aへ送信される情報である。代行結果生成部35は、算出部34によって処理された代行結果を、端末装置10Aへ送信可能な情報とする。例えば、解析部33により得られたユーザIDを送信先情報とし、代行結果を送信するデータとする。代行結果生成部35は、送信先情報及び代行結果をサーバ側送受信部32へ出力する。サーバ側送受信部32は、送信先情報及び代行結果を送信し、端末装置10A1の端末側送受信部18に受信させる。
次に、処理システム1の動作について説明する。図9は、処理システム1の代行テーブル14の更新処理を説明するフローチャートである。図9に示す処理は、端末装置10A1及び代行サーバ30によって実行される。例えば、端末装置10A1は、アプリケーションの起動から図9に示す処理を開始し、所定の間隔で繰り返し実行する。また、代行サーバ30は、更新処理をするためのプログラムの起動から図9に示す処理を開始し、所定の間隔で繰り返し実行する。
図9に示すように、最初に、代行サーバ30は、条件データ38がオペレータ等により入力されたか否かを判定する(S10)。S10の処理では、代行情報生成部36が、条件データ38の入力の有無を判定する。S10の処理において、条件データ38が入力されていない場合には、一定期間後に再度S10の処理を実行する。以下では、図6に示す条件データ38及び代行処理ID39が入力された場合を説明する。すなわち、条件データは、「99」であり、代行処理IDは、「0058」である。S10の処理において、代行情報生成部36により条件データ38が入力されたと判定された場合には、ユーザID特定処理へ移行する(S12)。
S12の処理では、ユーザ特定部40が、条件データ38に基づいて、代行処理を行うユーザを特定する。例えば、ユーザ特定部40は、ユーザDB37を参照し、条件データ「99」に関連付けされたユーザを取得する。ユーザDB37は、例えば図7に示すテーブルを格納している。この場合、ユーザ特定部40は、ユーザパラメータの「レベル」が「99」となっているユーザのユーザID「00234569」を取得する。ユーザ特定部40は、ユーザID「00234569」だけでなく、ユーザパラメータの「レベル」が「99」となっているユーザ全てを特定し、ユーザIDを取得する。S12の処理が終了すると、代行情報生成処理へ移行する(S14)。
S14の処理では、代行情報生成部36が、代行情報を生成する。代行情報生成部36は、ユーザ特定部40により特定された情報と、代行処理IDとを関連付けすることで、図8に示す代行情報を生成する。図8に示すように、代行情報は、ユーザパラメータの「レベル」が「99」となっているユーザID「00234569」と代行処理ID「0058」とを関連付けしている。なお、図8では、S12の処理において判定された他のユーザID「0023411」「00237890」「00241123」も代行処理ID「0058」とそれぞれ関連付けしている。代行情報生成部36は、代行情報をサーバ側送受信部32へ出力する。サーバ側送受信部32は、ユーザIDに基づいて送信先情報を作成し、代行処理IDを送信データとして端末側送受信部18へ送信する(S14)。例えば、ユーザID「00234569」を例とすると、ユーザID「00234569」を送信先情報とし、送信データを代行処理ID「0058」とする。他のユーザID「0023411」「00237890」「00241123」についても、ユーザIDに基づいてそれぞれの送信先情報が決定され、代行処理ID「0058」を送信データとして送信される。S14の処理が終了すると、代行サーバ30の処理を終了する。
端末装置10A1では、端末側送受信部18が、代行情報を受信する(S16)。例えば、ユーザID「00234569」と関連付けされた端末側送受信部18が、代行処理ID「0058」を代行情報として受信する。そして、端末側送受信部18は、代行情報をテーブル管理部15へ出力する。テーブル管理部15は、代行テーブル14を変更する。例えば、テーブル管理部15は、図5に示すように、代行処理IDと同一の処理ID「0058」の代行処理フラグを「0」から「1」へ変更する(S18)。S18の処理が終了すると、端末装置10A1の処理を終了する。
以上で図9に示す制御処理を終了する。図9に示す制御処理を実行することで、端末装置10A1の代行テーブル14が更新される。
次に、図10を用いて、処理システム1の代行処理を説明する。図10は、処理システム1による代行処理を説明するフローチャートである。図10に示す処理は、端末装置10A1及び代行サーバ30によって実行される。例えば、端末装置10A1は、アプリケーションの起動から図10に示す処理を開始し、所定の間隔で繰り返し実行する。また、代行サーバ30は、代行処理をするためのプログラムの起動から図10に示す処理を開始し、所定の間隔で繰り返し実行する。なお、以下では、端末装置10A1におけるゲームのユーザIDを「00234569」として説明する。
図10に示すように、最初に、端末装置10A1にて、ゲーム管理部11が処理命令を処理実行部13の決定部19へ出力する。処理命令は、例えば処理IDが含まれる。例えば、処理命令には、図4に示す処理ID「0057」又は「0058」等が含まれる。S20の処理が終了すると、代行フラグ判定処理へ移行する(S22)。
S22の処理では、決定部19が、S20の処理で取得された処理IDと代行テーブル14とを用いて、ゲーム管理部11から要求されている処理IDの処理が代行対象であるか否かを判定する。決定部19は、例えば図5に示す代行テーブル14を参照し、S20の処理で取得された処理IDに関連付けされた代行処理フラグが「1」であるか否かを判定する。例えば、S20の処理で取得された処理IDが「0057」である場合には、決定部19は、処理フラグが「1」でないと判定し、通常処理へ移行する(S24)。
S24の処理では、通常処理部20が、S20の処理で取得された処理ID「0057」により識別された処理を実行する。図4に示すように、処理ID「0057」により識別された処理である「合成」が行われる。S24の処理が終了すると、記録処理へ移行する(S38)。
S38の処理では、データ管理部21が、S24の処理結果を、必要に応じてデータ記録部16へ格納する。例えば、データ管理部21は、図4に示すように、処理ID「0057」により識別された処理の結果パラメータである「ベースカードシリアル」「ベースカードパラメータ」を、データ管理部21へ記録する。S38の処理が終了すると、図10に示す制御処理を終了する。
一方、S22の処理において、例えばS20の処理で取得された処理IDが「0058」である場合には、決定部19は、処理フラグが「1」であると判定し、代行処理情報の生成処理へ移行する(S26)。S26の処理では、代行処理情報生成部23によって、処理ID「0058」及び処理ID「0058」の処理に必要な情報を含む代行処理情報が生成される。図4に示すように、処理ID「0058」の処理に必要な情報は、利用パラメータである「ユーザパラメータレベル」である。ここで、代行処理情報は、当該ユーザの識別子であるユーザID「00234569」を含んでもよい。代行処理情報生成部23は、代行処理情報を端末側送受信部18へ出力する。端末側送受信部18は、送信先情報を代行サーバ30、代行処理情報を送信データとして、ネットワークNへ送信する。S26の処理が終了すると、代行処理情報受付処理へ移行する(S28)。
S28の処理では、代行サーバ30のサーバ側送受信部32が、代行処理情報を受信する。例えば、サーバ側送受信部32は、ユーザID「00234569」、処理ID「0058」及び処理ID「0058」の処理に必要な「ユーザパラメータレベル」を代行処理情報として受信する。S28の処理が終了すると、代行処理情報の解析処理へ移行する(S30)。
S30の処理では、サーバ側送受信部32が、代行処理情報を解析部33へ出力する。例えば、サーバ側送受信部32は、処理ID「0058」及び「ユーザパラメータレベル」を解析部33へ出力する。解析部33は、代行処理情報を解析し、代行処理情報に含まれる処理ID及び処理IDによって特定される処理に必要な情報を取得する。例えば、解析部33は、代行処理情報を解析し、処理ID「0058」及び「ユーザパラメータレベル」を取得する。ここで、解析部33は、送信元のユーザIDを代行処理情報から取得してもよい。この場合、例えば、ユーザID「00234569」が代行処理情報に含まれる。ユーザID「00234569」は、最終的に端末装置A1へ代行結果を送信するときに利用され得る。S30の処理が終了すると、代行処理の実行処理へ移行する(S32)。
S32の処理では、算出部34が、代行処理情報に含まれる処理ID及び処理IDによって特定される処理に必要な情報に基づいて、代行処理を実行する。すなわち、算出部34は、処理ID「0058」及び「ユーザパラメータレベル」に基づいて、代行処理を実行する。代行処理によって得られる結果は、図4に示すように「ユーザパラメータレベル」である。S32の処理が終了すると、代行結果生成処理へ移行する(S34)。
S34の処理では、代行結果生成部35が、S34の処理で得られた代行結果を、端末装置10Aへ送信可能な情報へ変換する。例えば、解析部33により得られたユーザIDを送信先情報とし、処理ID「0058」の代行結果である「ユーザパラメータレベル」を送信するデータとする。代行結果生成部35は、送信先情報及び代行結果をサーバ側送受信部32へ出力する。サーバ側送受信部32は、送信先情報を端末装置10A1、代行結果を送信データとして、ネットワークNへ送信する。S34の処理が終了すると、代行結果の受付処理へ移行する(S36)。
S36の処理では、端末側送受信部18が、代行結果を受信し、代行結果受信部24へ出力する。例えば、端末側送受信部18は、処理ID「0058」の代行結果である「ユーザパラメータレベル」を受信し、代行結果受信部24へ出力する。代行結果受信部24は、受信された代行結果を、通常処理部20で利用可能なデータ形式へ変換する。そして、代行結果受信部24は、変換後のデータをデータ管理部21へ出力する。S36の処理が終了すると、記録処理へ移行する(S38)。
S38の処理では、データ管理部21が、S36の処理結果を、必要に応じてデータ記録部16へ格納する。データ管理部21は、代行結果受信部24により出力されたデータをデータ記録部16へ出力する。例えば、データ管理部21は、処理ID「0058」の代行結果である「ユーザパラメータレベル」をデータ記録部16へ出力して記録する。また、データ管理部21は、処理ID「0058」の代行結果である「ユーザパラメータレベル」を通常処理部20へ出力してもよい。処理ID「0058」の代行結果が通常処理部20へ出力された場合には、通常処理部20が処理ID「0058」の代行結果を表示部25へ表示させる。これによって、レベル「99」のユーザのレベルアップ処理結果が当該ユーザへ提供される。S38の処理が終了すると、図10に示す制御処理を終了する。
以上で図10に示す制御処理を終了する。図10に示す制御処理を実行することで、端末装置10A1の処理が代行サーバ30によって代行される。
次に、コンピュータを端末装置10A1又は代行サーバ30として機能させるための端末処理プログラム及びサーバ処理プログラムを説明する。
端末処理プログラムは、メインモジュール、入力モジュール及び演算処理モジュールを備えている。メインモジュールは、端末処理を統括的に制御する部分である。入力モジュールは、ユーザからの入力を受け付けるようにコンピュータを動作させる。演算処理モジュールは、処理実行モジュール及びゲーム管理モジュールを備えている。メインモジュール、入力モジュール及び演算処理モジュールを実行させることにより実現される機能は、上述した端末装置10A1の入出力部17、処理実行部13(決定部19)、ゲーム管理部11、端末側送受信部18及びテーブル管理部15の機能とそれぞれ同様である。
サーバ処理プログラムは、メインモジュール、入力モジュール及び演算処理モジュールを備えている。メインモジュールは、サーバ処理を統括的に制御する部分である。入力モジュールは、ユーザからの入力を受け付けるようにコンピュータを動作させる。演算処理モジュールは、代行生成モジュール及び代行処理モジュールを備えている。メインモジュール、入力モジュール及び演算処理モジュールを実行させることにより実現される機能は、上述した代行サーバ30のサーバ側送受信部32、代行情報生成部36、代行処理部31の機能とそれぞれ同様である。
端末処理プログラム及びサーバ処理プログラムは、例えば、ROM又は半導体メモリ等の記録媒体によって提供される。また、端末処理プログラム及びサーバ処理プログラムは、データ信号としてネットワークを介して提供されてもよい。
図11は、処理システム1の作用効果を説明する概要図である。端末装置10A1にインストールされているアプリケーションが処理A、処理B及び処理Cを実行する場合を例に説明する。図11に示すように、例えばアプリケーションの不具合により、処理Cが正常に実行されない場合がある。このような場合には、アプリケーションの不具合を解消させる必要があるため、端末装置10A1とアプリケーションの修正プログラムを有するWebサーバ等とが通信する。そして、例えば、端末装置10A1が修正プログラムをダウンロードし、アプリケーションの不具合を解消する(アップデート処理)。
このとき、端末装置10A1のアプリケーションによっては、アプリケーションの終了、修正プログラムのインストール、及び、アプリケーションの起動という一連の動作が必要になる場合がある。しかしながら、ユーザの都合により、修正対象のアプリケーションを終了させることができない場合もある。また、アプリケーションの修正プログラムをWebサーバが早急に用意できない場合もある。これらの場合には、ユーザに対するサービスが停止するおそれがあるため、復旧に時間を要する場合がある。
これに対して、実施形態に係る処理システム1では、図9,10に示す処理を実行することにより、正常に実行することができない処理Cを代行サーバ30へ代行させる。そして、端末装置10A1が処理Cの結果を代行サーバ30から受信することで、端末装置10A1が実行したかのようにユーザへ結果Cを提供することができる。このため、可用性に優れた処理システム1とすることができる。
なお、上述した第1実施形態では、端末装置10A1がデータ記録部16及びデータ管理部21を備えたが、代行サーバ30がデータ記録部16及びデータ管理部21を備えてもよい。この場合、代行サーバ30内のデータが、ゲームの進行等に基づいて更新される。なお、代行サーバ30内のデータとは、代行サーバ30本体にあるRAM等の記憶領域、又は、代行サーバ30から参照可能な外部記憶領域に記録されているデータである。そして、決定部19によって処理の実行先が代行サーバ30であると決定されたときには、決定結果のみが代行サーバ30へ通知される。代行処理部31は、決定結果に基づいて、必要なデータを代行サーバ30に備わるデータ管理部21へ問い合わせし、代行サーバ30に備わるデータ記録部16から代行処理情報を取得する。そして、代行処理部31は、代行処理情報に基づいて処理し、代行結果を端末装置10A1へ送信する。このように、代行サーバ30がデータ記録部16及びデータ管理部21を備える場合であっても、端末装置10A1の処理を代行することができる。あるいは、端末装置10A1がデータ記録部16の所定部分のデータを備え、代行サーバ30がデータ記録部16の他の部分を備える場合であってもよい。このように、データ記録部16のデータが分散されて端末装置10A1及び代行サーバ30に存在する場合であっても、代行サーバ30は、端末装置10A1の処理を代行することができる。さらに、端末装置10A1及び代行サーバ30が、データ記録部16及びデータ管理部21を備えてもよい。この場合には、代行に伴う端末装置10A1と代行サーバ30との間の通信量を削減することができる。
(第2実施形態)
本実施形態に係る処理システム1Bは、第1実施形態に係る処理システム1とほぼ同様に構成され、処理システム1では端末装置10A1側に存在した決定部19が、代行サーバ30側に存在する点が相違する。以下では、第1実施形態に係る処理システム1との相違点を中心に説明し、同様の部分については説明を省略する。
本実施形態に係る処理システム1Bのハードウェア構成は、処理システム1と同様である。また、処理システム1Bでは、端末装置10A1に対応する端末装置を、端末装置10B1として説明する。第1実施形態における複数の端末装置10A2〜端末装置10Anは、複数の端末装置10B2〜端末装置10Bnに対応する。複数の端末装置10B2〜端末装置10Bnは、端末装置10B1と同様に構成することができる。
図12は、処理システム1Bの機能構成を示すブロック図である。図12に示すように、端末装置10B1は、例えば、入出力部17、処理実行部13B、ゲーム管理部11B及び端末側送受信部18を備える。端末装置10B1は、処理IDテーブル12及びデータ記録部16を備える。
ゲーム管理部11Bは、ゲーム管理部11とほぼ同様に構成され、処理IDの出力先が相違する。ゲーム管理部11Bは、処理IDを端末側送受信部18へ出力する。処理実行部13Bは、処理実行部13とほぼ同様に構成され、処理IDの入力先が相違する。処理実行部13Bは、端末側送受信部18によって受信された情報から処理IDを取得する。端末側送受信部18は、代行サーバ30Bを送信先とし、処理ID及びユーザIDを送信データとして送信する。その他の構成は、端末装置10A1と同一である。
代行サーバ30Bは、代行情報生成部36B、テーブル管理部15B、決定部19B、サーバ側送受信部32及び代行処理部31を備えている。また、代行サーバ30Bは、例えば代行テーブル14B及びデータ記録部16Bを備えている。
代行情報生成部36Bは、代行情報生成部36と同様に構成され、代行情報の出力先が相違する。代行情報生成部36Bは、代行処理ID39及び対象となるユーザIDを含む代行情報を生成する。代行情報生成部36Bは代行情報をテーブル管理部15Bへ出力する。
テーブル管理部15Bは、テーブル管理部15とほぼ同様に構成され、代行情報に基づいて代行テーブル14Bを更新する機能を有する。代行テーブル14Bは、ユーザごとに管理されている。テーブル管理部15Bは、代行情報に基づいて、対象のユーザを特定し、対象となるユーザの代行テーブル14Bを変更する。
決定部19Bは、サーバ側送受信部32から処理ID及びユーザIDを受信すると、ユーザIDに基づいて、当該ユーザの代行テーブル14Bを特定し、特定された代行テーブル14Bと「処理ID」とに基づいて、「代行処理フラグ」が「0」であるか「1」であるかを判定する。第1実施形態に係る処理システム1と同様に、代行処理フラグが「1」の場合には、代行処理部31が処理を代行する。代行処理フラグが「0」の場合には、「処理ID」が決定部19Bから端末側送受信部18を介して通常処理部20へ送信される。なお、決定部19Bが代行情報生成部36Bへ代行処理が必要な処理ID及びユーザIDを直接問い合わせしてもよい。この場合、代行サーバ30Bは、代行テーブル14B及びデータ記録部16Bを備えなくてもよい。決定部19Bは、代行処理フラグが「1」の場合には、サーバ側送受信部32及び端末側送受信部18を介して、端末装置10B1の代行処理中継部22へ決定結果を出力する。その他の構成は、代行サーバ30と同一である。
次に、処理システム1Bの動作について説明する。図13は、処理システム1の代行テーブル14の更新処理を説明するフローチャートである。図13に示す処理は、代行サーバ30Bによって実行される。例えば、代行サーバ30Bは、更新処理をするためのプログラムの起動から図13に示す処理を開始し、所定の間隔で繰り返し実行する。
図13に示すように、最初に、代行サーバ30Bは、条件データ38がオペレータ等により入力されたか否かを判定する(S40)。S40の処理は、代行サーバ30のS10の処理と同様である。以下では、第1実施形態と同様に、図6に示す条件データ38及び代行処理ID39が入力された場合を説明する。すなわち、条件データは、「99」であり、代行処理IDは、「0058」である。S40の処理において、代行情報生成部36Bにより条件データ38が入力されたと判定された場合には、ユーザID特定処理へ移行する(S42)。
S42の処理では、ユーザ特定部40が、条件データ38に基づいて、代行処理を行うユーザを特定する。S42の処理は、代行サーバ30のS12の処理と同様である。ユーザ特定部40は、ユーザパラメータの「レベル」が「99」となっているユーザのユーザID「00234569」を取得する。ユーザ特定部40は、ユーザID「00234569」だけでなく、ユーザパラメータの「レベル」が「99」となっているユーザ全てを特定し、ユーザIDを取得する。S42の処理が終了すると、代行情報生成処理へ移行する(S44)。
S44の処理では、代行情報生成部36Bが、代行情報を生成する。S44の処理は、代行サーバ30のS14の処理と同様である。例えば、図8に示すように、代行情報は、ユーザパラメータの「レベル」が「99」となっているユーザID「00234569」と代行処理ID「0058」とを関連付けされる。S44の処理が終了すると、代行テーブルの更新処理へ移行する(S46)。
S46の処理では、テーブル管理部15Bが、代行情報に基づいて、ユーザごとに用意された代行テーブル14Bを変更する。例えば、テーブル管理部15は、ユーザID「00234569」を用いて、当該ユーザIDの代行テーブル14Bを特定し、特定された代行テーブル14Bに対して、代行処理IDと同一の処理ID「0058」の代行処理フラグを「0」から「1」へ変更する。S46の処理が終了すると、代行サーバ30Bの処理を終了する。
以上で図13に示す制御処理を終了する。図13に示す制御処理を実行することで、代行サーバ30Bの代行テーブル14Bが更新される。
次に、図14を用いて、処理システム1Bの代行処理を説明する。図14は、処理システム1Bによる代行処理を説明するフローチャートである。図14に示す処理は、端末装置10B1及び代行サーバ30Bによって実行される。例えば、端末装置10B1は、アプリケーションの起動から図14に示す処理を開始し、所定の間隔で繰り返し実行する。また、代行サーバ30Bは、代行処理をするためのプログラムの起動から図14に示す処理を開始し、所定の間隔で繰り返し実行する。なお、以下では、端末装置10B1のゲームのユーザIDを「00234569」として説明する。
図14に示すように、最初に、端末装置10B1にて、ゲーム管理部11から処理命令が出力される(S50)。処理命令は、例えば処理IDが含まれる。ここでは、処理ID「0058」が一例として含まれているとする。次に、代行サーバ30Bが処理命令を端末装置10B1から受け付ける(S51)。代行サーバ30Bは、処理命令がどのユーザの処理であるのかを特定する情報を合わせて取得する。端末装置10B1が処理命令及びユーザIDを含めた情報を送信している場合には、代行サーバ30Bは、受信した情報から処理命令だけでなくユーザIDも合わせて取得する。例えば、代行サーバ30Bは、処理ID「0058」及びユーザID「00234569」を取得する。
そして、決定部19Bが、ユーザIDに基づいて、当該ユーザの代行テーブル14Bを特定する。例えば、決定部19Bは、ユーザID「00234569」に基づいて、ユーザID「00234569」に関連付けされた代行テーブル14Bを特定する。そして、決定部19Bが、S50の処理で取得された処理IDと代行テーブル14Bとを用いて、ゲーム管理部11Bら要求されている処理IDの処理が代行対象であるか否かを判定する。
決定部19と同様に、決定部19Bは、代行テーブル14Bを参照し、S50の処理で取得された処理IDに関連付けされた代行処理フラグが「1」であるか否かを判定する(S52)。例えば、図5に示すように、S51の処理で取得された処理IDが「0057」である場合には、決定部19は、処理フラグが「1」でないと判定する。決定部19Bは、処理フラグが「1」でないと判定した場合には、端末装置10B1側で実行する処理であるとの決定結果を端末装置10B1へ送信する。例えば、決定部19Bは、ユーザID「00234569」を送信先情報とし、決定結果を送信データとして送信する。この決定結果は、処理ID「0057」と関連付けされていてもよい。
S53の処理では、端末側送受信部18が、S52の処理で決定された決定結果を受け付けたか否かを判定する(S53)。S53の処理において、端末装置10B1側で実行する処理であるとの決定結果を受け付けた場合には、通常処理へ移行する(S54)。
S54の処理では、通常処理部20が、S50の処理で取得された処理IDにより識別された処理を実行する。この処理はS24の処理と同様であり、図4に示すように、処理ID「0057」により識別された処理である「合成」が行われる。S54の処理が終了すると、記録処理へ移行する(S70)。
S70の処理では、データ管理部21が、S54の処理結果を、必要に応じてデータ記録部16へ格納する。この処理はS38の処理と同様である。例えば、データ管理部21は図4に示すように、処理ID「0057」により識別された処理の結果パラメータである「ベースカードシリアル」「ベースカードパラメータ」を、データ管理部21へ記録する。S70の処理が終了すると、図14に示す制御処理を終了する。
一方、S52の処理において、処理フラグが「1」であると判定された場合を説明する。例えばS51の処理で取得された処理IDが「0058」である場合には、決定部19Bは、例えば図5に示す情報を用いて、処理フラグが「1」であると判定する。そして、決定部19Bは、代行処理情報の生成要求処理へ移行する(S55)。S55の処理では、決定部19Bが端末装置10B1へ代行処理情報の生成要求を送信する。図4に示すように、処理ID「0058」の処理に必要な情報は、利用パラメータである「ユーザパラメータレベル」である。なお、決定部19Bは、ユーザID「00234569」を用いて送信先を特定する。そして、端末装置10B1は、代行処理情報の生成要求を受信する(S56)。
そして、代行処理情報の生成処理へ移行する(S58)。S58〜S70の処理は、S26〜S38の処理と同様である。S70の処理が終了すると、図14に示す制御処理を終了する。
以上で図14に示す制御処理を終了する。図14に示す制御処理を実行することで、端末装置10B1の処理が代行サーバ30Bによって代行される。
コンピュータを端末装置10B1又は代行サーバ30Bとして機能させるための端末処理プログラム及びサーバ処理プログラムについては、第1実施形態と同様である。
以上、第2実施形態に係る処理システム1Bは、第1実施形態に係る処理システム1と同様の効果を奏する。
なお、上述した第2実施形態では、端末装置10B1がデータ記録部16及びデータ管理部21を備えたが、代行サーバ30Bがデータ記録部16及びデータ管理部21を備えてもよい。この場合、決定部19によって処理の実行先が代行サーバ30Bであると決定されたときには、代行処理部31は、決定結果に基づいて、必要なデータを代行サーバ30Bに備わるデータ管理部21へ問い合わせし、代行サーバ30Bに備わるデータ記録部16から代行処理情報を取得する。そして、代行処理部31は、代行処理情報に基づいて処理し、代行結果を端末装置10B1へ送信する。このように、代行サーバ30Bがデータ記録部16及びデータ管理部21を備える場合であっても、端末装置10B1の処理を代行することができる。あるいは、端末装置10B1がデータ記録部16の所定部分のデータを備え、代行サーバ30Bがデータ記録部16の他の部分を備える場合であってもよい。このように、データ記録部16のデータが分散されて端末装置10B1及び代行サーバ30Bに存在する場合であっても、代行サーバ30Bは、端末装置10B1の処理を代行することができる。さらに、端末装置10B1及び代行サーバ30Bが、データ記録部16及びデータ管理部21を備えてもよい。この場合には、代行に伴う端末装置10B1と代行サーバ30Bとの間の通信量を削減することができる。
以上、実施形態について説明したが本発明は上記実施形態に限定されるものではない。以下、変形例について説明する。
例えば、上述した実施形態では、通常処理部20において実行される所定の処理が、ゲームに関する処理であったが、処理システム1によって提供されるサービスに関する端末側の処理であれば、何でもよい。
例えば、上述した第1実施形態では、通常処理部20が処理を実行する前に決定部19が処理先を決定したが、通常処理部20が処理を実行し、当該処理を通常処理部20が実行できない場合に、決定部19が処理先を決定してもよい。第2実施形態においても同様である。
例えば、上述した第1実施形態では、代行処理が必要な端末装置10A1を特定し、特定された端末装置10A1へ情報を送信したが、複数の端末装置10Aへ送信してもよい。すなわち、代行サーバ30が、条件データ38及び代行処理IDを含む代行情報を送信し、複数の端末装置10Aにおいて、代行テーブル14が条件データ38及び代行処理IDを含む代行情報を格納し、決定部19が、処理予定の処理IDと自身のユーザの情報に基づいて、条件データ38及び代行処理IDに一致しているか否かを判断してもよい。
例えば、上述した実施形態では、決定部19,19Bが、所定の処理を代行サーバ30,30Bが代行するか否かを決定することを示したが、決定部19,19Bは、所定の処理の少なくとも一部を代行サーバ30,30Bが代行するか否かを決定してもよい。例えば、決定部19,19Bは、負荷の大きい演算処理とユーザへ表示するための表示調整処理とを含む所定の処理のうち、演算処理のみ代行サーバ30,30Bが実行すると決定し、表示調整処理を端末装置10A1,10B1が実行すると決定してもよい。
また、以下に記載する処理システム、端末、サーバ、端末処理プログラム及びサーバ処理プログラムであってもよい。
本発明の一側面に係る処理システム(例えば、処理システム1)は、端末(例えば端末装置10A1、端末装置10B1)及びサーバ(例えば、代行サーバ30,代行サーバ30B)間で通信を行う処理システムであって、前記端末において処理を実行する通常処理部(例えば、通常処理部20)と、前記通常処理部において実行される所定の処理と関連付けされた代行情報(例えば、処理IDを含む情報)に基づいて、前記所定の処理の少なくとも一部を前記サーバが代行するか否かを決定する決定部(例えば、決定部19,決定部19B)と、前記決定部の決定結果(例えば、処理IDを含む情報)に基づいて、前記サーバにおいて前記所定の処理の少なくとも一部を代行する代行処理部(代行処理部31)と、を備える。
本発明の一側面に係る処理システムでは、決定部により、代行情報に基づいて所定の処理の少なくとも一部をサーバが代行するか否かが決定され、代行処理部により、決定部の決定結果に基づいて、サーバにおいて所定の処理の少なくとも一部が代行される。よって、例えば端末に不具合が存在する場合であっても、代行処理部によって端末側で実行する予定の処理を実行することができる。このため、可用性に優れた処理システムを提供することが可能となる。
一実施形態では、前記決定部は、前記通常処理部が前記所定の処理を実行する前に、前記代行情報に基づいて、前記所定の処理の少なくとも一部を前記サーバが代行するか否かを決定してもよい。このように構成することで、通常処理部が所定の処理を実行する前に、代行処理部によって処理を代行することができるため、可用性に一層優れた処理システムを提供することができる。
一実施形態では、前記端末は、前記代行処理部による処理結果(例えば、代行結果)を受信してもよい。この場合、端末が実行できない処理の処理結果を、端末に取得させることができる。
一実施形態では、前記端末は、前記代行処理部による処理結果(例えば、代行結果)を用いて前記端末内のデータを更新する端末データ更新部(例えば、データ管理部21)を有してもよい。この場合、端末が実行できない処理の処理結果を、端末のデータに反映させることができる。
一実施形態では、前記サーバは、前記代行処理部による処理結果(例えば、代行結果)を用いて前記サーバ内のデータを更新するサーバデータ更新部(例えば、代行サーバ30又は代行サーバ30Bに備わる図示しないデータ管理部)を有してもよい。この場合、端末が実行できない処理の処理結果を、サーバのデータに反映させることができる。また、例えばサーバにより代行された処理がサーバ内のデータを更新する処理である場合に、サーバ及び端末間の通信量の低減を図ることが可能となる。
一実施形態では、処理システムは、代行する処理を識別する処理識別情報(例えば、代行処理ID)を取得する取得部(例えば、代行処理ID受付部41)と、前記取得部により取得された前記処理識別情報に基づいて前記代行情報を生成する代行情報生成部(例えば、代行情報生成部36,36B)と、をさらに備えてもよい。この場合、処理ごとに代行情報を適切に生成することができる。
一実施形態では、前記サーバは、該処理システムのユーザの属性情報(例えば、ユーザのレベル)をユーザに関連付けして格納するユーザ記録部(ユーザDB37)と、前記ユーザ記録部を参照して、前記属性情報に関する所定の条件を満たす前記ユーザを決定するユーザ決定部(例えば、ユーザ特定部40)と、を有し、前記ユーザ決定部により決定された前記ユーザに基づいて定まる前記端末へ前記代行情報を送信してもよい。この場合、代行を必要としない端末に代行情報を送信することを回避することができるため、サーバ及び端末間の通信量の低減を図ることが可能となる。
一実施形態では、前記端末は、前記決定部により前記代行処理部が前記所定の処理の少なくとも一部を代行すると決定された場合に、前記所定の処理を識別する情報、及び、前記所定の処理で利用される情報を前記サーバへ送信してもよい。これにより、サーバにおける代行処理を適切に行うことができる。
一実施形態では、前記端末及び前記サーバは、前記所定の処理で利用される情報をそれぞれ有してもよい。端末及びサーバの双方が所定の処理で利用される情報を有することで、代行処理の際に当該情報を端末からサーバに送信する必要がなく、より容易に代行処理を行うことができる。
本発明の他の側面に係るサーバ(例えば、代行サーバ30,代行サーバ30B)は、端末(例えば端末装置10A1、端末装置10B1)と通信を行うサーバであって、前記端末において実行される所定の処理と関連付けされた代行情報(例えば、処理IDを含む情報)を用いて前記所定の処理の少なくとも一部が代行されるか否かが決定された決定結果に基づいて、前記端末の処理を代行する代行処理部(例えば、代行処理部31)と、前記代行処理部による処理結果(例えば、代行結果)を前記端末へ送信する送信部(例えばサーバ側送受信部32)と、を備える。
本発明の他の側面に係るサーバによれば、例えば端末に不具合が存在する場合であっても、代行処理部によって端末側で実行する予定の処理を実行することができる。よって、端末の可用性を向上させることが可能となる。
本発明のさらに他の側面に係るサーバ処理プログラムは、端末(例えば端末装置10A1、端末装置10B1)と通信を行うサーバ(例えば、代行サーバ30,代行サーバ30B)を動作させるサーバ処理プログラムであって、前記端末において実行される所定の処理と関連付けされた代行情報(例えば、処理IDを含む情報)を用いて前記所定の処理の少なくとも一部が代行されるか否かが決定された決定結果に基づいて、前記端末の処理を代行する代行処理部(例えば、代行処理部31)、及び、前記代行処理部による処理結果(例えば、代行結果)を前記端末へ送信する送信部(例えばサーバ側送受信部32)として前記サーバを動作させる。
本発明のさらに他の側面に係るサーバ処理プログラムによれば、例えば端末に不具合が存在する場合であっても、サーバを代行処理部として機能させて、端末側で実行する予定の処理を実行することができる。よって、端末の可用性を向上させることが可能となる。
本発明のさらに他の側面に係る端末(例えば端末装置10A1、端末装置10B1)は、サーバ(例えば、代行サーバ30,代行サーバ30B)と通信を行う端末であって、処理を実行する通常処理部(例えば、通常処理部20)と、前記通常処理部において実行される所定の処理と関連付けされた代行情報(例えば、処理IDを含む情報)を用いて前記所定の処理の少なくとも一部が代行されるか否かが決定された決定結果に基づき前記サーバによって代行された処理結果(例えば、代行結果)を、前記サーバから受信する受信部(例えば、端末側送受信部18)と、を備える。
本発明のさらに他の側面に係る端末によれば、例えば端末に不具合が存在する場合であっても、サーバによって端末側で実行する予定の処理を実行することができる。このため、端末の可用性を向上させることが可能となる。
本発明のさらに他の側面に係る端末処理プログラムは、サーバ(例えば、代行サーバ30,代行サーバ30B)と通信する端末(例えば端末装置10A1、端末装置10B1)を動作させる端末処理プログラムであって、処理を実行する通常処理部(例えば、通常処理部20)、及び、前記通常処理部において実行される所定の処理と関連付けされた代行情報(例えば、処理IDを含む情報)を用いて前記所定の処理の少なくとも一部が代行されるか否かが決定された決定結果に基づき前記サーバによって代行された処理結果(例えば、代行結果)を、前記サーバから受信する受信部(例えば、端末側送受信部18)として前記端末を動作させる。
本発明のさらに他の側面に係る端末処理プログラムによれば、例えば端末に不具合が存在する場合であっても、サーバによって端末側で実行する予定の処理を実行することができる。このため、端末の可用性を向上させることが可能となる。