(57)【要約】      （修正有）【課題】端末にて所定の処理を実行することができない場合においても、端末等の機能を制限することなく所定の処理を実行する。【解決手段】処理システム１は、端末１０Ａ１及びサーバ３０間で通信を行う処理システムであって、前記端末において処理を実行する通常処理部２０と、前記端末の情報に基づいて、所定の処理を前記通常処理部で実行することについての支障判定結果が所定の条件を満たしていると判定される場合に、前記サーバ３０が前記所定の処理の少なくとも一部を代行すると決定する決定部１９と、前記決定部の決定結果に基づいて、前記サーバ３０において前記所定の処理の少なくとも一部を代行する代行処理部３１と、を備える。【選択図】図３
2015153176.tif 000002
【特許請求の範囲】
【請求項１】
端末及びサーバ間で通信を行う処理システムであって、
前記端末において処理を実行する通常処理部と、
前記端末の情報に基づいて、所定の処理を前記通常処理部で実行することについての支障判定結果が所定の条件を満たしていると判定される場合に、前記サーバが前記所定の処理の少なくとも一部を代行すると決定する決定部と、
前記決定部の決定結果に基づいて、前記サーバにおいて前記所定の処理の少なくとも一部を代行する代行処理部と、
を備える処理システム。
【請求項２】
前記決定部は、前記所定の処理を実行するために必要な前記端末のハードウェアリソースに応じて、前記所定の処理を前記通常処理部で実行することについての支障判定結果が所定の条件を満たしている場合に、前記サーバが前記所定の処理の少なくとも一部を代行すると決定する、請求項１に記載の処理システム。
【請求項３】
前記端末は、前記代行処理部による処理結果を受信する、請求項１又は２に記載の処理システム。
【請求項４】
前記端末の利用可能なハードウェアリソースを管理するハードウェアリソース管理部をさらに備え、
前記決定部は、前記利用可能なハードウェアリソース、及び、前記所定の処理を実行するために必要な前記端末のハードウェアリソースを比較し、比較結果に応じて、前記代行処理部が前記所定の処理の少なくとも一部を代行すると決定する、請求項２又は３に記載の処理システム。
【請求項５】
前記代行処理部は、代行した処理結果を、前記利用可能なハードウェアリソースに応じて調整する、請求項４に記載の処理システム。
【請求項６】
前記端末は、前記決定部により前記代行処理部が前記所定の処理の少なくとも一部を代行すると決定された場合に、前記所定の処理を識別する情報、及び、前記所定の処理で利用される情報を前記サーバへ送信する、請求項１〜５のいずれか一項に記載の処理システム。
【請求項７】
前記端末及び前記サーバは、前記所定の処理で利用される情報をそれぞれ有する、請求項１〜６のいずれか一項に記載の処理システム。
【請求項８】
前記ハードウェアリソースは、メモリ容量である、請求項４又は５に記載の処理システム。
【請求項９】
前記処理結果は、画像を含んでおり、
前記代行処理部は、前記画像の解像度、階調、又は表示数の少なくとも一つを調整する、請求項５に記載の処理システム。
【請求項１０】
端末と通信を行うサーバであって、
所定の処理を前記端末で実行することについての支障判定結果が所定の条件を満たしていると前記端末の情報に基づき判定される場合に、前記所定の処理の少なくとも一部が代行されると決定される決定結果に基づいて、前記端末の処理を代行する代行処理部と、
前記代行処理部による処理結果を前記端末へ送信する送信部と、
を備えるサーバ。
【請求項１１】
端末と通信を行うサーバを動作させるサーバ処理プログラムであって、
所定の処理を前記端末で実行することについての支障判定結果が所定の条件を満たしていると前記端末の情報に基づき判定される場合に、前記所定の処理の少なくとも一部が代行されると決定される決定結果に基づいて、前記端末の処理を代行する代行処理部、及び、
前記代行処理部による処理結果を前記端末へ送信する送信部
として前記サーバを動作させるサーバ処理プログラム。
【請求項１２】
サーバと通信を行う端末であって、
処理を実行する通常処理部と、
所定の処理を前記通常処理部で実行することについての支障判定結果が所定の条件を満たしていると前記端末の情報に基づき判定される場合に、前記所定の処理の少なくとも一部が代行されると決定される決定結果に基づき前記サーバによって代行された処理結果を、前記サーバから受信する受信部と、
を備える端末。
【請求項１３】
サーバと通信を行う端末を動作させる端末処理プログラムであって、
処理を実行する通常処理部、及び、
所定の処理を前記通常処理部で実行することについての支障判定結果が所定の条件を満たしていると前記端末の情報に基づき判定される場合に、前記所定の処理の少なくとも一部が代行されると決定される決定結果に基づき前記サーバによって代行された処理結果を、前記サーバから受信する受信部
として前記端末を動作させる端末処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、処理システム、サーバ、端末、サーバ処理プログラム及び端末処理プログラムに関する。
【背景技術】
【０００２】
近年、携帯端末等においても高精細な画像データや高音質な音声データが利用されている。これに伴い、画像データや音声データのデータ量は増加していく傾向にある。このような状況において、例えば、動作に必要なメモリ容量を動的に確保、開放しながら進行するアプリケーションを実行する場合には、その進行過程で動作に必要なメモリ容量を確保できないおそれがある。
【０００３】
動作に必要なメモリ容量を確保できない場合の対処として、端末に表示する内容を簡略化することによって、動作に必要なメモリ容量を削減し、画像表示等を行うシステム（例えば特許文献１参照）が知られている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１３−００３７７２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、上記特許文献１に記載されたシステムでは、表示内容を簡略化する際にユーザにとって必要な情報まで削除されてしまう場合があり、適切な対処とならないおそれがある。このように、従来のシステムでは、メモリ容量等のハードウェアリソースが不足しても、適切に対処することができない場合がある。プログラム等のソフトウェアリソースが不足した場合、又は、優先度の高い処理による割り込みが発生した場合も同様であり、従来の対応では適切に対処することができないおそれがある。本技術分野では、端末で所定の処理を実行することができない場合においても、端末等の機能を制限することなく所定の処理を実行することが望まれている。
【課題を解決するための手段】
【０００６】
本発明の一側面に係る処理システムは、端末及びサーバ間で通信を行う処理システムであって、前記端末において処理を実行する通常処理部と、前記端末の情報に基づいて、所定の処理を前記通常処理部で実行することについての支障判定結果が所定の条件を満たしていると判定される場合に、前記サーバが前記所定の処理の少なくとも一部を代行すると決定する決定部と、前記決定部の決定結果に基づいて、前記サーバにおいて前記所定の処理の少なくとも一部を代行する代行処理部と、を備える。
【０００７】
本発明の他の側面に係るサーバは、端末と通信を行うサーバであって、所定の処理を前記端末で実行することについての支障判定結果が所定の条件を満たしていると前記端末の情報に基づき判定される場合に、前記所定の処理の少なくとも一部が代行されると決定される決定結果に基づいて、前記端末の処理を代行する代行処理部と、前記代行処理部による処理結果を前記端末へ送信する送信部と、を備える。
【０００８】
本発明のさらに他の側面に係るサーバ処理プログラムは、端末と通信を行うサーバを動作させるサーバ処理プログラムであって、所定の処理を前記端末で実行することについての支障判定結果が所定の条件を満たしていると前記端末の情報に基づき判定される場合に、前記所定の処理の少なくとも一部が代行されると決定される決定結果に基づいて、前記端末の処理を代行する代行処理部、及び、前記代行処理部による処理結果を前記端末へ送信する送信部として前記サーバを動作させる。
【０００９】
本発明のさらに他の側面に係る端末は、サーバと通信を行う端末であって、処理を実行する通常処理部と、所定の処理を前記通常処理部で実行することについての支障判定結果が所定の条件を満たしていると前記端末の情報に基づき判定される場合に、前記所定の処理の少なくとも一部が代行されると決定される決定結果に基づき前記サーバによって代行された処理結果を、前記サーバから受信する受信部と、を備える。
【００１０】
本発明のさらに他の側面に係る端末処理プログラムは、サーバと通信を行う端末を動作させる端末処理プログラムであって、処理を実行する通常処理部、及び、所定の処理を前記通常処理部で実行することについての支障判定結果が所定の条件を満たしていると前記端末の情報に基づき判定される場合に、前記所定の処理の少なくとも一部が代行されると決定される決定結果に基づき前記サーバによって代行された処理結果を、前記サーバから受信する受信部として前記端末を動作させる。
【発明の効果】
【００１１】
本発明の種々の側面及び実施形態によれば、端末にて所定の処理を実行することができない場合においても、端末等の機能を制限することなく所定の処理を実行することができる。
【図面の簡単な説明】
【００１２】
【図１】第１実施形態に係る処理システムの構成を示す概略図である。
【図２】図１に示す代行サーバ及び端末装置のハードウェア構成を説明するブロック図である。
【図３】図１の処理システムの機能ブロック図である。
【図４】処理ＩＤテーブルの一例である。
【図５】必要メモリテーブルの一例である。
【図６】カードデータテーブルの一例である。
【図７】所有カードデータテーブルの一例である。
【図８】図１の処理システムによる代行処理を説明するフローチャートである。
【図９】第１実施形態に係る処理システムの作用効果を説明する概略図である。
【図１０】第２実施形態に係る処理システムの概略図である。
【図１１】図１０の処理システムによる代行処理を説明するフローチャートである。
【発明を実施するための形態】
【００１３】
以下、図面を参照して種々の実施形態について詳細に説明する。なお、各図面において同一又は相当の部分に対しては同一の符号を付すこととする。
【００１４】
（第１実施形態）
本実施形態に係る処理システムは、端末及びサーバ間で通信を行うシステムである。処理システムでは、例えば、端末にインストールされたソフトウェア（アプリケーション）が起動され、ユーザに対してゲームが提供される。なお、ユーザとは、処理システムに登録された利用者を意味する。ユーザは、端末の使用者と同一であってもよいし、端末の使用者とは異なる人であってもよい。ユーザは処理システムにおいてユーザＩＤによって識別される。また、処理システムのサービスの内容は、特に限定されない。以下では、一例として、アプリケーションがゲームをユーザへ提供する場合を説明する。
【００１５】
図１は、実施形態に係る処理システム１の構成を示す概略図である。図１に示すように、処理システム１は、例えば、複数の端末装置１０Ａ、及び、代行サーバ３０を備える。複数の端末装置１０Ａは、端末装置１０Ａ１〜端末装置１０Ａｎを含む（ｎは１より大きい自然数である）。端末装置１０Ａ１〜端末装置１０Ａｎは、双方向通信機能を備えた機器で、例えば携帯電話機、通信機能付き携帯ゲーム機又はパーソナルコンピュータ等である。端末装置１０Ａ１〜端末装置１０Ａｎは、ネットワークＮを介して代行サーバ３０と通信可能に構成されている。ネットワークＮは、例えばインターネット又は専用回線等である。端末装置１０Ａ１〜端末装置１０Ａｎは、ほぼ同様に構成されるため、以下では、端末装置１０Ａ１を代表して説明する。なお、図１の処理システム１は一例であり、一台の端末装置１０Ａ１及び代行サーバ３０からなる処理システム１であってもよい。
【００１６】
図２は、図１に示す端末装置１０Ａ１及び代行サーバ３０のハードウェア構成を説明するブロック図である。図２に示すように、端末装置１０Ａ１及び代行サーバ３０は、ＣＰＵ（Central  Processing  Unit）１０１、ＲＯＭ（Read  Only  Memory）又はＲＡＭ（Random  Access  Memory）等の主記憶部１０２、ハードディスク等の補助記憶部１０３、通信を制御するネットワークカード等の通信制御部１０４、カメラ又はタッチパネル等の入力部１０５及びディスプレイ等の出力部１０６等を含む通常のコンピュータとして構成される。後述する端末装置１０Ａ１及び代行サーバ３０の各機能は、例えば、ＣＰＵ１０１の制御により、主記憶部１０２等のハードウェア上に所定のソフトウェアを読み込ませ、入力部１０５及び出力部１０６を動作させ、主記憶部１０２又は補助記憶部１０３に記憶されたデータの読み出し又は書き込みを行い、通信制御部１０４により通信する等、の各ハードウェアの動作の組み合わせによって実現される。
【００１７】
図３は、処理システム１の機能構成を示すブロック図である。図３に示すように、端末装置１０Ａ１は、例えば、入出力部１７、処理実行部１３、ゲーム管理部１１、メモリ管理部（ハードウェアリソース管理部）１５及び端末側送受信部（受信部）１８を備える。端末装置１０Ａ１は、例えば、処理ＩＤテーブル１２、必要メモリテーブル１４及びデータ記録部１６を備える。
【００１８】
以下では、ゲームとして、モンスターが描かれたカードを用いてコンピュータ又は他のユーザと対戦（バトル）を行うゲームを一例として説明する。このゲームでは、ユーザが抽選等によりカードを取得する。取得したカードのモンスターにレベルが付与されており、得られた「経験値」に応じてモンスターのレベルが上昇し、レベルに応じてモンスターの強さに関連したパラメータが上昇する。カード同士が「合成」された場合には、異なるモンスターのカードとなったり、合成前のモンスターへ「経験値」が付与されたりする。このように、ユーザは、モンスターを「経験値」に応じて成長させて、コンピュータ又は他のユーザと対戦（バトル）を行う。また、ユーザのレベルも存在し、ユーザのレベルに応じてゲームの進行や所有可能なカード枚数等が変更される。なお、ユーザは、処理システム１が対象とするゲームのユーザである。当該ゲームを実行するアプリケーションは、例えば、通信を介して端末装置１０Ａ１にダウンロードされて、インストールされる。
【００１９】
入出力部１７は、入力操作受付部２６及び表示部２５を備える。入力操作受付部２６は、ユーザの操作を受け付ける位置入力装置である。例えば、入力操作受付部２６は、ゲームの進行に関するユーザの操作を受け付ける。入力操作受付部２６は、ユーザ操作に関する情報を処理実行部１３へ出力する。表示部２５は、処理実行部１３の出力結果に基づいて、ゲームの内容等を表示する。入力操作受付部２６及び表示部２５として、例えばタッチパネルが用いられる。
【００２０】
ゲーム管理部１１は、ゲームの全体の所定の処理の管理を行う。所定の処理とは、処理システム１によって提供されるサービスに関する端末装置１０Ａ１側のアプリケーション内で実行される処理である。ゲーム管理部１１は、例えば、処理実行部１３に対して命令し、処理実行部１３に所定の処理を実行させる。ゲーム管理部１１は、例えば、処理実行部１３を介して取得したユーザ操作に関する情報に基づいて、実行するゲームの処理を決定する。ゲームの処理は、処理ＩＤによって識別できる。ゲーム管理部１１は、例えば、処理ＩＤに基づいて、処理ＩＤテーブル１２に格納された処理内容を参照する。処理ＩＤテーブル１２は、例えば、処理ＩＤに関連付けされた処理内容が格納されたテーブルである。図４は、処理ＩＤテーブル１２の一例である。図４に示すように、処理ＩＤテーブル１２は、処理を識別する「処理ＩＤ」に「処理内容」、「利用パラメータ」及び「結果パラメータ」が関連付けされている。「処理内容」は、例えば、「カード抽選」、「バトル」、「合成」又は「レベルアップ処理」等である。「利用パラメータ」は、当該処理に必要な情報である。「結果パラメータ」は当該処理後に出力されて記録される情報である。
【００２１】
例えば、「処理ＩＤ」が「００５５」の場合を説明する。この場合、「処理内容」として「カード抽選」が「００５５」に関連付けされている。そして、「利用パラメータ」として「Ａ：抽選種類ＩＤ」及び「Ｂ：回数」が「００５５」に関連付けされており、「結果パラメータ」として「Ａ：排出カードＩＤ」が「００５５」に関連付けされている。カード抽選には、幾つかの種類の抽選が存在する。「抽選種類ＩＤ」は、複数の抽選の種類から処理対象となる抽選を識別するための識別子である。また、「回数」は抽選回数である。「排出カードＩＤ」は、抽選によって当選したカードを識別するための識別子である。
【００２２】
同様に、「処理ＩＤ」が「００５６」の場合を説明する。「処理内容」として「バトル」が当該「００５６」に関連付けされている。そして、「利用パラメータ」として「Ａ：対戦種類ＩＤ」及び「Ｂ：対戦相手ユーザＩＤ」が「００５６」にそれぞれ関連付けされており、「結果パラメータ」として「Ａ：対戦結果」及び「Ｂ：戦利ポイント」が「００５６」にそれぞれ関連付けされている。対戦は、幾つかの種類が存在する。「対戦種類ＩＤ」は、複数の対戦の種類から処理対象となる対戦を識別するための識別子である。「対戦相手ユーザＩＤ」は、対戦相手のユーザを識別するための識別子である。「対戦結果」は勝敗の内容であり、「戦利ポイント」は、勝敗の結果によって得られるポイントである。
【００２３】
同様に、「処理ＩＤ」が「００５７」の場合では、「処理内容」として「合成」が当該「００５７」に関連付けされている。そして、「利用パラメータ」として「Ａ：ベースカードシリアル」及び「Ｂ：素材カードシリアル」が「００５７」にそれぞれ関連付けされており、「結果パラメータ」として「Ａ：ベースカードシリアル」及び「Ｂ：ベースカードパラメータ」が「００５７」にそれぞれ関連付けされている。例えば、カード同士が「合成」される場合には、合成後のモンスターの基本となる「ベースカード」と、「ベースカード」のモンスターを成長させるための「素材カード」とがユーザにより選択される。「ベースカードシリアル」は、ベースカードとして「合成」されるカードを一意に選択する識別子である。「素材カードシリアル」は、素材カードとして「合成」されるカードを一意に選択する識別子である。なお、ベースカードは一枚であるのに対し、素材カードは一枚でも複数枚であってもよい。「ベースカードパラメータ」は、「ベースカード」のモンスターの強さと関連付けされたパラメータである。
【００２４】
同様に、「処理ＩＤ」が「００５８」の場合では、「処理内容」として「レベルアップ処理」が当該「００５８」に関連付けされている。そして、「利用パラメータ」として「Ａ：ユーザパラメータレベル」が「００５８」に関連付けされており、「結果パラメータ」として「Ａ：ユーザパラメータレベル」が「００５８」に関連付けされている。「ユーザパラメータレベル」は、ユーザのレベルを示すパラメータである。
【００２５】
このように、処理ＩＤテーブル１２には、ゲームで実行される処理ごとに、処理に必要な「利用パラメータ」と、処理によって出力される「結果パラメータ」とが関連付けされている。ゲーム管理部１１は、処理ＩＤテーブル１２を参照し、処理ＩＤに基づいて処理内容を決定する。ゲーム管理部１１は、決定された処理内容及び処理ＩＤを処理実行部１３へ出力する。
【００２６】
処理実行部１３は、決定部１９、通常処理部２０、データ管理部２１及び代行処理中継部２２を備えている。決定部１９は、ゲーム管理部１１から出力された処理ＩＤに対応する所定の処理の少なくとも一部を、代行サーバ３０に実行させるか否かを決定する。具体的には、決定部１９は、端末装置１０Ａ１の情報（端末の情報）に基づいて、所定の処理を通常処理部２０で実行することについての支障判定結果が所定の条件を満たしていると判定される場合に、代行サーバ３０が所定の処理の少なくとも一部を代行すると決定する。
【００２７】
端末装置１０Ａ１の情報とは、端末装置１０Ａ１にて取得可能な情報である。端末装置１０Ａ１の情報は、端末装置１０Ａ１にて実行予定の所定の処理の情報、端末装置１０Ａ１の利用可能な資源、又は、端末装置１０Ａ１の処理能力に関する情報である。例えば、端末装置１０Ａ１の情報とは、所定の処理で必要なハードウェアリソースに関する情報、利用可能な端末装置１０Ａ１のハードウェアリソースに関する情報、所定の処理で必要なソフトウェアリソースに関する情報、利用可能な端末装置１０Ａ１のソフトウェアリソースに関する情報、所定の処理の優先度、他の処理の優先度、又は、使用者もしくはユーザ指示により実行すべき処理に関する情報等である。
【００２８】
端末装置１０Ａ１のハードウェアリソースとは、端末装置１０Ａ１の物理的な資源である。具体的には、ハードウェアリソースは、端末装置１０Ａ１の利用可能なメモリ容量、利用可能なハードディスク容量、又は、利用可能なＣＰＵの割り当て時間等であるが、これらに限られるものではない。また、端末装置１０Ａ１のソフトウェアリソースとは、端末装置１０Ａ１の機能的かつ無形の資源である。具体的には、ソフトウェアリソースとは、利用可能な端末装置１０Ａ１のソフトウェア等であるが、これらに限られるものではない。ソフトウェアには、アプリケーション又はプログラムだけでなく、オペレーティングシステム（ＯＳ：Operating System）が含まれていてもよい。優先度とは、優先的にＣＰＵが割り当てられるタスクである。使用者又はユーザ指示により実行すべき処理とは、使用者又はユーザが優先的に実行することを指示した処理である。
【００２９】
上述した端末装置１０Ａ１の情報に基づいて、決定部１９は、所定の処理を通常処理部２０で実行することについての支障判定結果が所定の条件を満たしているか否かを判定する。ここで、所定の処理を通常処理部２０で実行することについての支障とは、所定の処理を通常処理部２０で実行するに際して妨げとなる事柄である。具体的には、端末装置１０Ａ１における、利用可能なハードウェアリソースの不足、利用可能なソフトウェアリソースの不足、又は、所定の処理よりも優先度の高い処理による割り込み等である。ハードウェアリソースの不足とは、具体的には、端末装置１０Ａ１の利用可能なメモリ容量の不足、利用可能なハードディスク容量の不足、又は、利用可能なＣＰＵの割り当て時間等であるが、これらに限られるものではない。ソフトウェアリソースの不足とは、具体的には、所定の処理を実行するために必要な端末装置１０Ａ１にソフトウェアがインストールされていないこと、又は、所定の処理を実行するために必要なプログラムが他のアプリケーションに占有されていること等であるが、これらに限られるものではない。
【００３０】
支障判定結果とは、上述した支障が決定部１９により判定された結果であり、上述した端末装置１０Ａ１の情報に基づいて決定部１９により判定された結果である。支障判定結果は、例えば、所定の処理に必要な資源又は処理能力と、端末装置１０Ａ１の利用可能な資源又は処理能力との比較結果である。具体的には、支障判定結果は、所定の処理に必要なハードウェアリソースと端末装置１０Ａ１において利用可能なハードウェアリソースとの比較結果、所定の処理に必要なソフトウェアリソースと端末装置１０Ａ１において利用可能なソフトウェアリソースとの比較結果、又は、所定の処理を実行するために必要な処理時間と端末装置１０Ａ１においてＣＰＵの割り当てが可能な時間との比較結果等であるが、これらに限られるものではない。
【００３１】
支障判定結果が、所定の条件を満たしていると判定される場合とは、所定の処理を通常処理部２０で実行することについて、支障があると判定される場合である。所定の条件は、予め決定部１９が記憶している条件であり、支障があると判断するための条件である。例えば、所定の条件は、所定の処理に必要なハードウェアリソースを確保することができないこと、所定の処理に必要なハードウェアリソースを確保することができるが、他の処理に影響を与えること、所定の処理に必要なソフトウェアリソースが確保することができないこと、又は、優先度の高い処理の実行により、ＣＰＵの割り当て時間を確保することができないこと等であるが、これらに限定されるものではない。よって、所定の処理を通常処理部２０で実行することについての支障判定結果が所定の条件を満たしていると判定される場合とは、すなわち、所定の処理を通常処理部２０で実行させることが困難である場合であり、例えば、所定の処理の全部又は一部を通常処理部２０で実行させることができない場合である。或いは、例えば、所定の処理の全部又は一部を通常処理部２０で実行させることが、端末装置１０Ａ１にとって好ましくない場合である。端末装置１０Ａ１にとって好ましくない場合とは、例えば、所定の処理の全部又は一部を通常処理部２０で実行させると、端末装置１０Ａ１の負荷が大きくなる場合、又は、端末装置１０Ａ１の処理時間が長くなる場合である。端末装置１０Ａ１の負荷は、例えば、ＣＰＵの利用率が所定の閾値以上の場合に、負荷が大きいとすることができる。端末装置１０Ａ１の処理時間は、例えば、所定の閾値以上の場合に、処理時間が長いとすることができる。或いは、例えば、優先度の高い端末装置１０Ａ１の処理があり、所定の処理の全部又は一部を通常処理部２０で実行させると、優先度の高い端末装置１０Ａ１の処理が優先的に行えなくなる場合である。
【００３２】
以下では、端末装置１０Ａ１の情報として、所定の処理を実行するために必要なメモリ容量に関する情報、及び、利用可能な端末装置１０Ａ１のメモリ容量を用いる例を説明する。
【００３３】
決定部１９は、所定の処理を実行するために必要な端末装置１０Ａ１のメモリ容量に関する情報（以下、「処理毎必要メモリ容量」）に加えて、端末装置１０Ａ１で利用可能なメモリ容量に関する情報（以下、「利用可能メモリ容量」）を取得し、これらの情報を比較した比較結果に応じて、代行サーバ３０が所定の処理の少なくとも一部を代行するか否かを決定する。決定部１９は、例えば、必要メモリテーブル１４を参照することにより、処理毎必要メモリ容量を取得する。図５は、必要メモリテーブル１４の一例である。図５に示すように、必要メモリテーブル１４では、処理を識別する「処理ＩＤ」に「必要メモリ」が関連付けされている。「必要メモリ」は、処理ＩＤで識別される処理の実行に最低限必要な、端末装置１０Ａ１のメモリ容量である。決定部１９は、「必要メモリ」を取得することで、処理ＩＤで識別される処理の実行に最低限必要なメモリ容量を取得する。さらに、決定部１９は、「必要メモリ」に、ユーザ操作に応じて決まる所定の係数を掛け合わせることで、処理毎必要メモリ容量を導出する。
【００３４】
決定部１９により、合成処理の実行に必要な処理毎必要メモリ容量が導出される例について、説明する。合成処理が行われる場合には、図４に示されるように、ベースカードを特定する「ベースカードシリアル」、及び素材カードを特定する「素材カードシリアル」が利用パラメータとされる。上述したように、合成処理においては、ベースカードは常に一枚であるのに対し、素材カードは一枚の場合と複数枚の場合とがある。合成処理においては、素材カードの枚数が一枚の場合に、処理の実行に必要なメモリ容量が最小となる。よって、必要メモリテーブル１４には、「処理ＩＤ」が「００５７」（合成処理）の「必要メモリ」として、素材カードが一枚の場合の処理の実行に必要なメモリ容量が格納されている。また、合成処理においては、素材カードの枚数に応じて（素材カードの枚数が多いほど）、処理に必要なメモリ容量が増える。そのため、決定部１９は、ユーザ操作（入力操作受付部２６により受け付けられたユーザ操作）によって特定される素材カードの枚数を取得し、当該枚数に応じた所定の係数を、「必要メモリ」に掛け合わせることで、処理毎必要メモリ容量を導出する。なお、決定部１９は、枚数に応じた所定の係数を、例えば、枚数毎の係数を管理したテーブル（図示せず）を参照することにより取得することができる。
【００３５】
決定部１９は、例えば、メモリ管理部１５から出力された利用可能メモリ容量を取得する。メモリ管理部１５は、利用可能メモリ容量を管理している。メモリ管理部１５は、端末装置１０Ａ１におけるメモリ容量の割り当て及び開放を管理しており、端末装置１０Ａ１のリアルタイムな利用可能メモリ容量を管理している。メモリ管理部１５は、決定部１９からの要求に応じて、端末装置１０Ａ１の利用可能メモリ容量を決定部１９に出力する。
【００３６】
決定部１９は、取得（導出）した処理毎必要メモリ容量と、取得した利用可能メモリ容量とを比較し、比較結果に応じて、代行サーバ３０が所定の処理の少なくとも一部を代行するか否かを決定する。決定部１９は、例えば、処理毎必要メモリ容量が利用可能メモリ容量よりも大きい場合には、当該処理を通常処理部２０で実行することが困難であると判定し、代行サーバ３０が所定の処理を代行すると決定する。この場合には、決定部１９は、当該処理の処理ＩＤ、及び端末装置１０Ａ１の利用可能メモリ容量を含んだ決定結果を、代行処理中継部２２へ出力する。
【００３７】
また、決定部１９は、処理毎必要メモリ容量が利用可能メモリ容量よりも小さい場合には、当該処理を通常処理部２０で実行することが困難でないと判定し、代行サーバ３０が所定の処理を代行しないと決定する。この場合には、決定部１９は、当該処理を通常処理部２０が実行すると決定し、当該処理の処理ＩＤを含んだ決定結果を、通常処理部２０へ出力する。なお、決定部１９は、処理毎必要メモリ容量が利用可能メモリ容量よりも小さい場合であっても、代行サーバ３０が所定の処理を代行すると決定してもよい。例えば、利用可能メモリ容量よりも所定値小さい値を基準として判断してもよい。このことで、例えば、所定の処理を通常処理部２０で実行させると端末装置１０Ａ１の負荷が大きくなり処理時間が長くなる場合等に、代行サーバ３０に処理を代行させることができる。
【００３８】
また、決定部１９は、処理毎必要メモリ容量が利用可能メモリ容量よりも大きい場合に、利用可能メモリ容量を考慮して、所定の処理のうち、通常処理部２０で処理することができない処理のみを、代行サーバ３０が代行すると決定してもよい。この場合には、所定の処理のうち一部を通常処理部２０が、残りを代行サーバ３０がそれぞれ処理することとなる。そのため、決定部１９は、通常処理部２０及び代行処理中継部２２の双方に、決定結果を出力する。通常処理部２０に出力される決定結果には、所定の処理のうち一部の処理（通常処理部２０が実行する「一部の処理」）を特定する情報が含まれている。また、代行処理中継部２２に出力される決定結果には、所定の処理のうち残りの処理（代行サーバ３０が代行する「残りの処理」）を特定する情報が含まれている。
【００３９】
決定部１９は、代行サーバ３０が処理を代行するか否かを決定すると、メモリ管理部１５に対して、利用可能メモリ容量の全て又は一部を確保させる。決定部１９は、例えば通常処理部２０に処理を実行させる場合には、当該処理に係るメモリ容量を、メモリ管理部１５に確保させる。また、決定部１９は、例えば通常処理部２０に処理を実行させない場合であっても、代行サーバ３０による代行処理結果を表示部２５で表示させるために、メモリ管理部１５に、利用可能メモリ容量の全て又は一部を確保させる。
【００４０】
通常処理部２０は、決定部１９により出力された決定結果に基づいて所定の処理を行う。通常処理部２０は、処理システム１によって提供されるサービスに関する処理であって、端末装置１０Ａ１側のアプリケーション内で実行される処理を行う。通常処理部２０にて実行される処理は、例えばアプリケーションにて予め定められている。具体的には、通常処理部２０にて実行される処理は、端末装置１０Ａ１にアプリケーションがインストールされた時点で定められている通常の処理である。例えば、決定部１９から出力された処理ＩＤが「００５７」である場合には、通常処理部２０は、「合成処理」を行う。通常処理部２０は、データ管理部２１へ「合成処理」に必要なデータを問い合わせる。
【００４１】
データ管理部２１は、端末装置１０Ａ１内のデータを管理する。端末装置１０Ａ１内のデータとは、端末装置１０Ａ１本体にあるＲＡＭ等の記憶領域、又は、端末装置１０Ａ１から参照可能な外部記憶領域に記憶されているデータである。データ管理部２１は、ここでは、データ記録部１６に格納されたゲームに関する情報を管理する。データ記録部１６には、ゲームの進行に必要な基本となるデータ及びユーザ固有の情報が含まれている。ゲームの基本と成るデータとは、ゲーム画面に関する情報、カードに関するデフォルトの情報（成長前のモンスターに関する情報及びモンスターの画像等）、又はゲーム音楽等である。カードに関するデフォルトの情報は、例えば、図６に示されるカードデータテーブルで管理されている。図６はカードデータテーブルの一例である。図６に示すように、カードデータテーブルは、カードを識別する「カードＩＤ」に「カード名」、「カード画像」及び「カードパラメータ」が関連付けされている。また、ユーザ固有の情報とは、ユーザのレベル、ユーザの所有カードの情報（所有カードの種類又はレベル等）又はユーザの成績等が含まれる。ユーザの所有カードの情報は、例えば図７に示される所有カードデータテーブルで管理されている。図７は所有カードデータテーブルの一例である。図７に示すように、所有カードデータテーブルは、ユーザが所有する固有のカードを識別する「シリアル」に「カードＩＤ」及び「カードレベル」が関連付けされている。通常処理部２０は、データ管理部２１を介して取得した情報に基づいて処理を実行し、実行結果をデータ記録部１６又は入出力部１７へ出力する。
【００４２】
通常処理部２０が合成処理を実行する例について、説明する。通常処理部２０は、決定部１９により出力された決定結果に含まれる処理ＩＤ（「００５７」）に基づき、合成処理を行う。上述したように、合成処理を行う場合の利用パラメータは、ベースカードシリアル及び素材カードシリアルである。ベースカードシリアル及び素材カードシリアルは、入力操作受付部２６により受け付けられたユーザ操作に応じて決まる。入力操作受付部２６は、図７に示される所有カードデータテーブルで管理された固有のカードのうちいずれか１つのカードのシリアル（ベースカードシリアル）の指定を、ユーザより受け付ける。また、入力操作受付部２６は、図７に示される所有カードデータテーブルで管理された固有のカードのうちベースカード以外のいずれかのカードの１つ又は複数のシリアル（素材カードシリアル）の指定を、ユーザより受け付ける。
【００４３】
通常処理部２０は、入力操作受付部２６より、ベースカードシリアル及び素材カードシリアルを取得する。そして、通常処理部２０は、データ管理部２１に対して、ベースカードシリアル及び素材カードシリアルを出力する。データ管理部２１は、データ記録部１６からデータの読み出しを行う。すなわち、データ管理部２１は、図７に示される所有カードデータテーブルより、ベースカードシリアル及び素材カードシリアルに関連付けられたカードＩＤ及びカードレベルを取得する。また、データ管理部２１は、所有カードデータテーブルより取得したカードＩＤに基づいて、図６に示されるカードデータテーブルより、当該カードＩＤに関連付けられたカード画像及びカードパラメータを取得する。
【００４４】
通常処理部２０は、べースカードに係るカードパラメータ及びカードレベルと、素材カードに係るカードパラメータ及びカードレベルとに基づいて、合成処理の結果パラメータである、ベースカードパラメータを導出する。また、ベースカードに係るカード画像と、素材カードに係るカード画像とに基づいて、合成処理中及び合成処理後に表示部２５に表示する合成画像を生成する。通常処理部２０は、合成処理後のベースカードパラメータを、データ管理部２１を介してデータ記録部１６に出力する。また、通常処理部２０は、合成画像を入出力部１７の表示部２５に出力する。
【００４５】
代行処理中継部２２は、代行サーバ３０にて代行処理を行うために必要な中継処理を行う。代行処理中継部２２は、代行処理情報生成部２３及び代行結果受信部２４を備える。代行処理情報生成部２３は、代行サーバ３０にて代行処理を行うために必要な情報（代行処理情報）を生成する。代行処理情報には、代行処理を行う処理ＩＤ、代行処理に必要なパラメータ、及び端末装置１０Ａ１の利用可能メモリ容量が含まれている。代行処理に必要なパラメータとは、上述の通常処理部２０における説明で記載した、ベースカード及び素材カードに係るカードパラメータ及びカードレベルと、ベースカード及び素材カードに係るカード画像である。これらの情報は、入力操作受付部２６により受け付けられたユーザ操作、及びデータ管理部２１へのデータ問い合わせに基づいて取得されたものである。また、代行処理情報には、端末装置１０Ａ１のユーザを特定するユーザＩＤが含まれていてもよい。代行処理情報生成部２３は、端末側送受信部１８へ代行処理情報を出力する。
【００４６】
代行結果受信部２４は、代行サーバ３０によって処理された結果（代行結果）を、端末側送受信部１８を介して受信する。代行結果受信部２４は、受信された情報を、通常処理部２０で利用可能なデータ形式へ変換する。そして、代行結果受信部２４は、変換後のデータをデータ管理部２１へ出力する。データ管理部２１は、代行結果受信部２４により出力されたデータを通常処理部２０又はデータ記録部１６へ出力する。
【００４７】
端末側送受信部１８は、代行サーバ３０と通信する。通信に用いられる情報には、送信先情報とデータが含まれる。端末側送受信部１８は、代行サーバ３０を宛先とする送信先情報及びデータを送信する。また、端末側送受信部１８は、送信先に関する情報に基づいて端末装置１０Ａ１宛の情報であるか否かを判断し、端末装置１０Ａ１宛の情報である場合にデータを受信する。具体的には、端末側送受信部１８は、例えば、代行処理情報生成部２３により生成された代行処理情報を代行サーバ３０へ送信し、代行サーバ３０にて実行された代行結果を代行サーバ３０から受信する。
【００４８】
代行サーバ３０は、サーバ側送受信部（送信部）３２及び代行処理部３１を備えている。サーバ側送受信部３２は、端末装置１０Ａ１と通信する。通信に用いられる情報には、送信先情報とデータが含まれる。サーバ側送受信部３２は、端末装置１０Ａ１を宛先とする送信先情報及びデータを送信する。また、サーバ側送受信部３２は、送信先に関する情報に基づいて代行サーバ３０宛の情報であるか否かを判断し、代行サーバ３０宛の情報である場合にはデータを受信する。具体的には、サーバ側送受信部３２は、例えば、代行処理情報を端末装置１０Ａ１から受信し、代行処理部３１にて実行された代行結果を端末装置１０Ａ１へ送信する。
【００４９】
代行処理部３１は、端末装置１０Ａ１（具体的には決定部１９）の決定結果に基づいて、代行サーバ３０において所定の処理の少なくとも一部を代行する。代行処理部３１は、解析部３３、算出部３４及び代行結果生成部３５を備えている。解析部３３は、サーバ側送受信部３２により受信された代行処理情報を解析する。そして、解析部３３は、代行処理情報に含まれる処理ＩＤ、代行処理に必要なパラメータ、及び端末装置１０Ａ１の利用可能メモリ容量を取得する。ここで、解析部３３は、送信元のユーザＩＤを代行処理情報から取得してもよい。解析部３３は、取得された情報を算出部３４へ出力する。
【００５０】
算出部３４は、代行処理情報に含まれる処理ＩＤ、代行処理に必要なパラメータ、及び端末装置１０Ａ１の利用可能メモリ容量に基づいて、端末装置１０Ａ１の代わりに処理を行う。算出部３４は、代行した処理結果（代行結果）を、端末装置１０Ａ１の利用可能メモリ容量に応じて調整する。すなわち、例えば代行結果に画像が含まれている場合には、算出部３４は、画像の解像度、階調、又は表示数の少なくとも１つを調整してもよい。なお、処理結果（代行結果）とは、代行処理部３１が決定部１９の決定に基づいて処理した結果の情報であって、端末装置１０Ａへ送信される情報である。算出部３４は代行結果を代行結果生成部３５へ出力する。代行結果生成部３５は、算出部３４によって処理された代行結果を、端末装置１０Ａ１へ送信可能な情報とする。例えば、解析部３３により得られたユーザＩＤを送信先情報とし、代行結果を送信するデータとする。代行結果生成部３５は、送信先情報及び代行結果をサーバ側送受信部３２へ出力する。サーバ側送受信部３２は、送信先情報及び代行結果を送信し、端末装置１０Ａ１の端末側送受信部１８に受信させる。
【００５１】
次に、図８を用いて、処理システム１の代行処理を説明する。図８は、処理システム１による代行処理を説明するフローチャートである。図８に示す処理は、端末装置１０Ａ１及び代行サーバ３０によって実行される。例えば、端末装置１０Ａ１は、アプリケーションの起動から図８に示す処理を開始し、所定の間隔で繰り返し実行する。また、代行サーバ３０は、更新処理をするためのプログラムの起動から図８に示す処理を開始し、所定の間隔で繰り返し実行する。
【００５２】
図８に示すように、最初に、端末装置１０Ａ１にて、ゲーム管理部１１が処理命令を処理実行部１３の決定部１９へ出力する（Ｓ１０）。処理命令には、例えば処理ＩＤが含まれる。例えば、処理命令には、図４に示す処理ＩＤ「００５７」（処理内容：合成）が含まれる。Ｓ１０の処理が終了すると、メモリ容量比較処理へ移行する（Ｓ１２）。
【００５３】
Ｓ１２の処理では、決定部１９が、Ｓ２０の処理で取得された処理ＩＤ（「００５７」）とユーザ操作内容とから処理毎必要メモリ容量を導出する。具体的には、決定部１９は、まず、図５に示す必要メモリテーブルを参照し、処理ＩＤ（「００５７」）で識別される処理である合成処理の実行に最低限必要な「必要メモリ」を取得する。さらに、決定部１９は、「必要メモリ」に、ユーザ操作に応じて決まる所定の係数を掛け合わせることで、処理毎必要メモリ容量を導出する。ユーザ操作に応じて決まる所定の係数とは、例えば合成処理の場合には、ユーザ操作により指定された合成処理に用いる素材カードの枚数に応じて決まる係数である。すなわち、決定部１９は、ユーザ操作によって特定される素材カードの枚数を取得し、当該枚数に応じた係数を、「必要メモリ」に掛け合わせることで、処理毎必要メモリ容量を導出する。なお、決定部１９は、枚数に応じた所定の係数を、例えば、枚数毎の係数を管理したテーブル（図示せず）を参照することにより取得することとできる。また、決定部１９がメモリ管理部１５から利用可能メモリ容量を取得する。そして、決定部１９が、処理毎必要メモリ容量と利用可能メモリ容量とを比較し、例えば処理毎必要メモリ容量が利用可能メモリ容量よりも小さい場合には、端末装置１０Ａ１のメモリ容量は不足していないとして、通常処理へ移行する（Ｓ１４）。
【００５４】
Ｓ１４の処理では、通常処理部２０が、Ｓ１０の処理で取得された処理ＩＤにより識別された処理を実行する。具体的には、図４に示す処理ＩＤ「００５７」により識別される処理である「合成」が行われる。通常処理部２０は、入力操作受付部２６が受け付けたユーザ操作に応じて決まるベースカードシリアル及び素材カードシリアルを取得する。そして、通常処理部２０は、べースカードに係るカードパラメータ及びカードレベルと、素材カードに係るカードパラメータ及びカードレベルとに基づいて、合成処理の結果パラメータである、ベースカードパラメータを導出する。また、ベースカードに係るカード画像と、素材カードに係るカード画像とに基づいて、合成処理中及び合成処理後に表示部２５に表示する合成画像を生成する。通常処理部２０は、合成画像を入出力部１７の表示部２５に出力する。Ｓ１４の処理が終了すると、記録処理へ移行する（Ｓ２８）。
【００５５】
Ｓ２８の処理では、データ管理部２１が、Ｓ１４の処理結果を、必要に応じてデータ記録部１６へ格納する。例えば、データ管理部２１は、図４に示すように、処理ＩＤ「００５７」により識別された処理の結果パラメータである「ベースカードシリアル」「ベースカードパラメータ」を、データ管理部２１へ記録する。Ｓ２８の処理が終了すると、図８に示す制御処理を終了する。
【００５６】
一方、Ｓ１２の処理において、例えば、処理毎必要メモリ容量が利用可能メモリ容量よりも大きい場合には、端末装置１０Ａ１のメモリ容量が不足しているとして、代行処理情報の生成処理へ移行する（Ｓ１６）。Ｓ１６の処理では、代行処理情報生成部２３によって、代行処理を行う処理ＩＤ（「００５７」）、代行処理に必要なパラメータ、及び端末装置１０Ａ１の利用可能メモリ容量を含む代行処理情報が生成される。ここで、代行処理に必要なパラメータとは、ベースカード及び素材カードに係るカードパラメータ及びカードレベルと、ベースカード及び素材カードに係るカード画像である。これらの情報は、入力操作受付部２６により受け付けられたユーザ操作、及びデータ管理部２１へのデータ問い合わせに基づいて取得されたものである。代行処理情報生成部２３は、代行処理情報を端末側送受信部１８へ出力する。端末側送受信部１８は、送信先情報を代行サーバ３０、代行処理情報を送信データとして、ネットワークＮ（図１参照）へ送信する。Ｓ１６の処理が終了すると、代行処理情報受付処理へ移行する（Ｓ１８）。
【００５７】
Ｓ１８の処理では、代行サーバ３０のサーバ側送受信部３２が、代行処理情報を受信する。例えば、サーバ側送受信部３２は、処理ＩＤ（「００５７」）、代行処理に必要なパラメータ（ベースカード及び素材カードに係るカードパラメータ及びカードレベルと、ベースカード及び素材カードに係るカード画像）、及び端末装置１０Ａ１の利用可能メモリ容量を代行処理情報として受信する。Ｓ１８の処理が完了すると、代行処理情報の解析処理へ移行する（Ｓ２０）。
【００５８】
Ｓ２０の処理では、サーバ側送受信部３２が、上述した代行処理情報を解析部３３へ出力する。解析部３３は、代行処理情報を解析し、代行処理情報に含まれる処理ＩＤ（「００５７」）、代行処理に必要なパラメータ（ベースカード及び素材カードに係るカードパラメータ及びカードレベルと、ベースカード及び素材カードに係るカード画像）、及び端末装置１０Ａ１の利用可能メモリ容量を取得する。ここで、解析部３３は、送信元のユーザＩＤを代行処理情報から取得してもよい。Ｓ２０の処理が終了すると、代行処理の実行処理へ移行する（Ｓ２２）。
【００５９】
Ｓ２２の処理では、算出部３４が、代行処理情報に含まれる処理ＩＤ（「００５７」）、代行処理に必要なパラメータ（ベースカード及び素材カードに係るカードパラメータ及びカードレベルと、ベースカード及び素材カードに係るカード画像）、及び端末装置１０Ａ１の利用可能メモリ容量に基づいて、代行処理を実行する。Ｓ２２の処理が終了すると、代行結果生成処理へ移行する（Ｓ２４）。
【００６０】
Ｓ２４の処理では、代行結果生成部３５が、Ｓ２２の処理で得られた代行結果を、端末装置１０Ａへ送信可能な情報へ変換する。例えば、解析部３３により得られたユーザＩＤを送信先情報とし、処理ＩＤ「００５７」の代行結果である、合成処理後のベースカードパラメータ及び合成画像を送信データとする。代行結果生成部３５は、送信先情報及び代行結果をサーバ側送受信部３２へ出力する。サーバ側送受信部３２は、送信先情報を端末装置１０Ａ１、代行結果（合成処理後のベースカードパラメータ及び合成画像）を送信データとして、ネットワークＮへ送信する。Ｓ２４の処理が終了すると、代行結果の受付処理へ移行する（Ｓ２６）。
【００６１】
Ｓ２６の処理では、端末側送受信部１８が、代行結果（合成処理後のベースカードパラメータ及び合成画像）を受信し、代行結果受信部２４へ出力する。代行結果受信部２４は、受信された代行結果（合成処理後のベースカードパラメータ及び合成画像）を、通常処理部２０で利用可能なデータ形式へ変換する。そして、代行結果受信部２４は、変換後のデータをデータ管理部２１へ出力する。Ｓ２６の処理が終了すると、記録処理へ移行する（Ｓ２８）。
【００６２】
Ｓ２８の処理では、データ管理部２１が、Ｓ２６の処理結果を、必要に応じてデータ記録部１６へ出力する。データ管理部２１は、代行結果受信部２４により出力されたデータをデータ記録部１６へ出力する。例えば、データ管理部２１は、処理ＩＤ「００５７」の代行結果である、合成処理後（且つデータ形式変換後）のベースカードパラメータをデータ記録部１６へ出力して記憶する。また、データ管理部２１は、処理ＩＤ「００５７」の代行結果である合成処理後（且つデータ形式変換後）のベースカードパラメータ及び合成画像を通常処理部２０へ出力してもよい。処理ＩＤ「００５７」の代行結果である合成画像が通常処理部２０へ出力された場合には、通常処理部２０が処理ＩＤ「００５７」の代行結果である合成画像を表示部２５に表示させる。これによって、合成画像が当該ユーザへ提供される。Ｓ２８の処理が終了すると、図８に示す制御処理を終了する。
【００６３】
以上で図８に示す制御処理を終了する。図８に示す制御処理を実行することで、端末装置１０Ａ１の処理が代行サーバ３０によって代行される。
【００６４】
次に、コンピュータを端末装置１０Ａ１又は代行サーバ３０として機能させるための端末処理プログラム及びサーバ処理プログラムを説明する。
【００６５】
端末処理プログラムは、メインモジュール、入力モジュール及び演算処理モジュールを備えている。メインモジュールは、端末処理を統括的に制御する部分である。入力モジュールは、ユーザからの入力を受け付けるようにコンピュータを動作させる。演算処理モジュールは、処理実行モジュール及びゲーム管理モジュールを備えている。メインモジュール、入力モジュール及び演算処理モジュールを実行させることにより実現される機能は、上述した端末装置１０Ａ１の入出力部１７、処理実行部１３（決定部１９）、ゲーム管理部１１、メモリ管理部１５、及び端末側送受信部１８の機能とそれぞれ同様である。
【００６６】
サーバ処理プログラムは、メインモジュール、入力モジュール及び演算処理モジュールを備えている。メインモジュールは、サーバ処理を統括的に制御する部分である。入力モジュールは、ユーザからの入力を受け付けるようにコンピュータを動作させる。演算処理モジュールは、代行生成モジュール及び代行処理モジュールを備えている。メインモジュール、入力モジュール及び演算処理モジュールを実行させることにより実現される機能は、上述した代行サーバ３０のサーバ側送受信部３２及び代行処理部３１の機能とそれぞれ同様である。
【００６７】
端末処理プログラム及びサーバ処理プログラムは、例えば、ＲＯＭ又は半導体メモリ等の記録媒体によって提供される。また、端末処理プログラム及びサーバ処理プログラムは、データ信号としてネットワークを介して提供されてもよい。
【００６８】
図９は、処理システム１の作用効果を説明する概略図である。端末装置１０Ａ１にインストールされているアプリケーションが処理Ａ、処理Ｂ、処理Ｃを実行する場合を例に説明する。例えば、処理Ａ、処理Ｂについては端末装置１０Ａ１で実行できるのに対し、処理Ｃについては、メモリ容量等の点で、端末装置１０Ａ１で実行することができない場合がある。すなわち、端末装置１０Ａ１において利用可能メモリ容量が少なく、処理Ｃに係る処理毎必要メモリ容量が利用可能メモリ容量を上回り、端末装置１０Ａ１において処理Ｃを実行することができない場合がある。このような場合には、従来、例えば、端末装置のアプリケーションやシステムの機能制限を行うことで、端末装置のメモリ容量を確保する。
【００６９】
しかしながら、機能制限を行うことでメモリ容量を確保する方法では、制限可能な機能が存在する場合にしか適切にメモリを確保することができない。また、本来制限をかけるべきでない機能に制限をかけてメモリを確保するおそれもある。
【００７０】
これに対して、実施形態に係る処理システム１では、図８に示す処理を実行することにより、端末装置１０Ａ１で実行することができない処理Ｃを代行サーバ３０へ代行させる。そして、端末装置１０Ａ１が処理Ｃの結果を代行サーバ３０から受信することで、端末装置１０Ａ１が実行したかのようにユーザへ結果Ｃを提供することができる。このため、端末装置１０Ａ１において十分にメモリ容量を確保することができない場合であっても、端末装置１０Ａ１の機能を制限することなく、所定の処理（処理Ｃ）を実行することができる。
【００７１】
なお、上述した第１実施形態では、端末装置１０Ａ１がデータ記録部１６及びデータ管理部２１を備えたが、代行サーバ３０がデータ記録部１６及びデータ管理部２１を備えてもよい。この場合、代行サーバ３０内のデータが、ゲームの進行等に基づいて更新される。なお、代行サーバ３０内のデータとは、代行サーバ３０本体にあるＲＡＭ等の記憶領域、又は、代行サーバ３０から参照可能な外部記憶領域に記憶されているデータである。そして、決定部１９によって処理の実行先が代行サーバ３０であると決定されたときには、決定結果のみが代行サーバ３０へ通知される。代行処理部３１は、決定結果に基づいて、必要なデータを代行サーバ３０に備わるデータ管理部２１へ問い合わせし、代行サーバ３０に備わるデータ記録部１６から代行処理情報を取得する。そして、代行処理部３１は、代行処理情報に基づいて処理し、代行結果を端末装置１０Ａ１へ送信する。このように、代行サーバ３０がデータ記録部１６及びデータ管理部２１を備える場合であっても、端末装置１０Ａ１の処理を代行することができる。あるいは、端末装置１０Ａ１がデータ記録部１６の所定部分のデータを備え、代行サーバ３０がデータ記録部１６の他の部分を備える場合であってもよい。このように、データ記録部１６のデータが分散されて端末装置１０Ａ１及び代行サーバ３０に存在する場合であっても、代行サーバ３０は、端末装置１０Ａ１の処理を代行することができる。さらに、端末装置１０Ａ１及び代行サーバ３０が、データ記録部１６及びデータ管理部２１を備えてもよい。この場合には、代行に伴う端末装置１０Ａ１と代行サーバ３０との間の通信量を削減することができる。
【００７２】
（第２実施形態）
本実施形態に係る処理システム１Ｂは、第１実施形態に係る処理システム１とほぼ同様に構成され、処理システム１では端末装置１０Ａ１側に存在した決定部１９が、代行サーバ３０側に存在する点が相違する。以下では、第１実施形態に係る処理システム１との相違点を中心に説明し、同様の部分については説明を省略する。
【００７３】
本実施形態に係る処理システム１Ｂのハードウェア構成は、処理システム１と同様である。また、処理システム１Ｂでは、端末装置１０Ａ１に対応する端末装置を、端末装置１０Ｂ１として説明する。第１実施形態における複数の端末装置１０Ａ２〜端末装置１０Ａｎは、複数の端末装置１０Ｂ２〜端末装置１０Ｂｎに対応する。複数の端末装置１０Ｂ２〜端末装置１０Ｂｎは、端末装置１０Ｂ１と同様に構成することができる。
【００７４】
図１０は、処理システム１Ｂの機能構成を示すブロック図である。図１０に示すように、端末装置１０Ｂ１は、例えば、入出力部１７、処理実行部１３Ｂ、ゲーム管理部１１Ｂ、メモリ管理部１５Ｂ及び端末側送受信部１８を備える。端末装置１０Ｂ１は、例えば、処理ＩＤテーブル１２及びデータ記録部１６を備える。
【００７５】
ゲーム管理部１１Ｂは、ゲーム管理部１１とほぼ同様に構成され、処理ＩＤの出力先が相違する。ゲーム管理部１１Ｂは、処理ＩＤを端末側送受信部１８及びメモリ管理部１５Ｂへ出力する。処理実行部１３Ｂは、処理実行部１３とほぼ同様に構成され、処理ＩＤの入力先が相違する。処理実行部１３Ｂは、端末側送受信部１８によって受信された情報から処理ＩＤを取得する。また、処理実行部１３Ｂは、入力操作受付部２６により受け付けられたユーザ操作に応じた所定の係数を、後述する決定部１９Ｂによる処理毎必要メモリ容量の導出に用いる情報として、端末側送受信部１８へ出力する。メモリ管理部１５Ｂは、メモリ管理部１５とほぼ同様に構成され、利用可能メモリ容量の出力先が相違する。メモリ管理部１５Ｂは、利用可能メモリ容量を端末側送受信部１８へ出力する。端末側送受信部１８は、代行サーバ３０Ｂを送信先とし、処理ＩＤ、所定の係数及び利用可能メモリ容量を送信データとして送信する。その他の構成は、端末装置１０Ａ１と同一である。
【００７６】
代行サーバ３０Ｂは、サーバ側送受信部３２、代行処理部３１及び決定部１９Ｂを備えている。また、代行サーバ３０Ｂは、例えば必要メモリテーブル１４Ｂを備えている。
【００７７】
サーバ側送受信部３２は、端末装置１０Ｂ１から、処理ＩＤ、所定の係数及び利用可能メモリ容量を送信データとするデータを受信する。決定部１９Ｂは、サーバ側送受信部３２から受信した処理ＩＤ及び所定の係数と、必要メモリテーブル１４Ｂを参照して取得した情報とに基づき、処理ＩＤに対応した処理に係る処理毎必要メモリ容量を取得する。なお、必要メモリテーブル１４Ｂに格納されたデータは、必要メモリテーブル１４と同様である。そして、決定部１９Ｂは、処理毎必要メモリ容量と、サーバ側送受信部３２から受信した利用可能メモリ容量とを比較し、比較結果に応じて、代行サーバ３０Ｂが処理ＩＤに対応した処理の少なくとも一部を代行するか否かを決定する。決定部１９Ｂは、処理ＩＤ及び利用可能メモリ容量を含んだ決定結果を、サーバ側送受信部３２へ出力する。代行サーバ３０Ｂが所定の処理を代行しないと決定された場合には、決定結果は、端末側送受信部１８を介して通常処理部２０へ送信される。また、代行サーバ３０Ｂが所定の処理を代行すると決定された場合には、決定結果は、端末側送受信部１８を介して代行処理中継部２２へ送信される。
【００７８】
次に、図１１を用いて、処理システム１Ｂの代行処理を説明する。図１１は、処理システム１Ｂによる代行処理を説明するフローチャートである。図１１に示す処理は、端末装置１０Ｂ１及び代行サーバ３０Ｂによって実行される。例えば、端末装置１０Ｂ１は、アプリケーションの起動から図１１に示す処理を開始し、所定の間隔で繰り返し実行する。また、代行サーバ３０Ｂは、更新処理をするためのプログラムの起動から図１１に示す処理を開始し、所定の間隔で繰り返し実行する。
【００７９】
図１１に示すように、最初に、端末装置１０Ｂ１にて、ゲーム管理部１１Ｂから処理命令が出力される（Ｓ５０）。処理命令には、例えば処理ＩＤが含まれる。例えば、処理命令には、図４に示す処理ＩＤ「００５７」（処理内容：合成）が含まれる。また、処理命令には、入力操作受付部２６により受け付けられた、ユーザ操作に応じて決まる所定の係数、すなわち、合成処理においてユーザ操作によって特定される素材カードの枚数に応じた係数が含まれる。また、ゲーム管理部１１Ｂからの処理命令に応じて、メモリ管理部１５Ｂから、利用可能メモリ容量が端末側送受信部１８へ出力される。次に、代行サーバ３０Ｂが処理命令を端末装置１０Ｂ１から受け付ける（Ｓ５１）。そして、メモリ容量比較処理へ移行する（Ｓ５２）。Ｓ５２の処理では、決定部１９Ｂが、処理ＩＤ（「００５７」）及び所定の係数と、必要メモリテーブル１４Ｂを参照して取得した情報とに基づき、処理ＩＤ（「００５７」）に対応した処理に係る処理毎必要メモリ容量を取得する。また、決定部１９Ｂが、処理毎必要メモリ容量と利用可能メモリ容量とを比較し、端末装置１０Ｂ１のメモリ容量が不足しているか否かを判定する。例えば処理毎必要メモリ容量が利用可能メモリ容量よりも小さい場合には、端末装置１０Ｂ１のメモリ容量は不足していないと判定する。決定部１９Ｂは、端末装置１０Ｂ１のメモリ容量が不足していないと判定した場合には、端末装置１０Ｂ１側で実行する処理であるとの決定結果を端末装置１０Ｂ１へ送信する。
【００８０】
そして、端末側送受信部１８が、Ｓ５２の処理で決定された決定結果を受け付けたか否かを判定する（Ｓ５３）。Ｓ５３の処理において、端末装置１０Ｂ１側で実行する処理であるとの決定結果を受け付けた場合には、通常処理へ移行する（Ｓ５４）。
【００８１】
Ｓ５４の処理では、通常処理部２０が、処理ＩＤにより識別された処理を実行する。この処理はＳ１４の処理と同様であり、図４に示す処理ＩＤ「００５７」により識別される処理である「合成」が行われる。Ｓ５４の処理が終了すると、記録処理へ移行する（Ｓ７０）。
【００８２】
Ｓ７０の処理では、データ管理部２１が、Ｓ５４の処理結果を、必要に応じてデータ記録部１６へ格納する。この処理はＳ２８の処理と同様である。例えば、図４に示すように、処理ＩＤ「００５７」により識別された処理の結果パラメータである「ベースカードシリアル」「ベースカードパラメータ」を、データ管理部２１へ記録する。Ｓ７０の処理が終了すると、図１１に示す制御処理を終了する。
【００８３】
一方、Ｓ５２の処理において、例えば、処理毎必要メモリ容量が利用可能メモリ容量よりも大きい場合には、決定部１９Ｂは、代行処理情報の生成要求処理へ移行する（Ｓ５５）。Ｓ５５の処理では、決定部１９Ｂが端末装置１０Ｂ１へ代行処理情報の生成要求を送信する。そして、端末装置１０Ｂ１は、代行処理情報の生成要求を受信する（Ｓ５６）。そして、代行処理情報の生成処理へ移行する（Ｓ５８）。Ｓ５８〜Ｓ７０の処理は、Ｓ１６〜Ｓ２８の処理と同様である。Ｓ７０の処理が終了すると、図１１に示す制御処理を終了する。
【００８４】
以上で図１１に示す制御処理を終了する。図１１に示す制御処理を実行することで、端末装置１０Ｂ１の処理が代行サーバ３０Ｂによって代行される。
【００８５】
コンピュータを端末装置１０Ｂ１又は代行サーバ３０Ｂとして機能させるための端末処理プログラム及びサーバ処理プログラムについては、第１実施形態と同様である。
【００８６】
以上、第２実施形態に係る処理システム１Ｂは、第１実施形態に係る処理システム１と同様の効果を奏する。
【００８７】
なお、上述した第２実施形態では、端末装置１０Ｂ１がデータ記録部１６及びデータ管理部２１を備えたが、代行サーバ３０Ｂがデータ記録部１６及びデータ管理部２１を備えてもよい。この場合、決定部１９によって処理の実行先が代行サーバ３０Ｂであると決定されたときには、代行処理部３１は、決定結果に基づいて、必要なデータを代行サーバ３０Ｂに備わるデータ管理部２１へ問い合わせし、代行サーバ３０Ｂに備わるデータ記録部１６から代行処理情報を取得する。そして、代行処理部３１は、代行処理情報に基づいて処理し、代行結果を端末装置１０Ｂ１へ送信する。このように、代行サーバ３０Ｂがデータ記録部１６及びデータ管理部２１を備える場合であっても、端末装置１０Ｂ１の処理を代行することができる。あるいは、端末装置１０Ｂ１がデータ記録部１６の所定部分のデータを備え、代行サーバ３０Ｂがデータ記録部１６の他の部分を備える場合であってもよい。このように、データ記録部１６のデータが分散されて端末装置１０Ｂ１及び代行サーバ３０Ｂに存在する場合であっても、代行サーバ３０Ｂは、端末装置１０Ｂ１の処理を代行することができる。さらに、端末装置１０Ｂ１及び代行サーバ３０Ｂが、データ記録部１６及びデータ管理部２１を備えてもよい。この場合には、代行に伴う端末装置１０Ｂ１と代行サーバ３０Ｂとの間の通信量を削減することができる。
【００８８】
以上、実施形態について説明したが本発明は上記実施形態に限定されるものではない。以下、変形例について説明する。
【００８９】
例えば、上述した実施形態では、通常処理部２０において実行される所定の処理が、ゲームに関する処理であったが、処理システム１によって提供されるサービスに関する端末側の処理であれば、何でもよい。
【００９０】
例えば、上述した第１実施形態では、通常処理部２０が処理を実行する前に決定部１９が処理先を決定したが、通常処理部２０が処理を実行し、当該処理を通常処理部２０が実行できない場合に、決定部１９が処理先を決定してもよい。第２実施形態においても同様である。
【００９１】
例えば、上述した第１実施形態では、決定部１９が、所定の処理を通常処理部２０で実行することが困難であるか否かを判定するための情報として、端末装置１０Ａ１のメモリ容量に関する情報を用いる例を説明したが、例えば、端末装置１０Ａ１のハードディスク容量等の他のハードウェアリソースに関する情報を用いてもよい。この場合には、メモリ容量を管理するメモリ管理部１５に相当する構成として、他のハードウェアリソースを管理する構成を用いることができる。
【００９２】
例えば、上述した実施形態では、決定部１９,１９Ｂが、所定の処理を代行サーバ３０,３０Ｂが代行するか否かを決定することを示したが、決定部１９,１９Ｂは、所定の処理の少なくとも一部を代行サーバ３０,３０Ｂが代行するか否かを決定してもよい。例えば、決定部１９,１９Ｂは、負荷の大きい演算処理とユーザへ表示するための表示調整処理とを含む所定の処理のうち、演算処理のみ代行サーバ３０,３０Ｂが実行すると決定し、表示調整処理を端末装置１０Ａ１,１０Ｂ１が実行すると決定してもよい。
【００９３】
また、以下に記載する処理システム、端末、サーバ、端末処理プログラム及びサーバ処理プログラムであってもよい。
【００９４】
本発明の一側面に係る処理システム（例えば、処理システム１，処理システム１Ｂ）は、端末（例えば端末装置１０Ａ１，端末装置１０Ｂ１）及びサーバ（例えば、代行サーバ３０，代行サーバ３０Ｂ）間で通信を行う処理システムであって、前記端末において処理を実行する通常処理部（例えば、通常処理部２０）と、前記端末の情報に基づいて、所定の処理を前記通常処理部で実行することについての支障判定結果が所定の条件を満たしていると判定される場合に、前記サーバが前記所定の処理の少なくとも一部を代行すると決定する決定部（例えば、決定部１９，決定部１９Ｂ）と、前記決定部の決定結果（例えば、処理ＩＤを含む情報）に基づいて、前記サーバにおいて前記端末の処理を代行する代行処理部（例えば、代行処理部３１）と、を備える。
【００９５】
本発明の一側面に係る処理システムでは、端末において処理を実行することが困難であると、端末の情報に基づき判定される場合に、サーバが当該処理の少なくとも一部を代行する。よって、端末で所定の処理を実行することができない場合であっても、端末等の機能を制限することなく端末側で実行する予定の処理を実行することができる。
【００９６】
一実施形態では、前記決定部は、前記所定の処理を実行するために必要な前記端末のハードウェアリソースに応じて、前記所定の処理を前記通常処理部で実行することについての支障判定結果が所定の条件を満たしている場合に、前記サーバが前記所定の処理の少なくとも一部を代行すると決定してもよい。これにより、ハードウェアリソースの不足が原因となって端末側では処理を実行することができない場合であっても、端末等の機能を制限することなく端末側で実行する予定の処理を実行することができる。
【００９７】
一実施形態では、前記端末は、前記代行処理部による処理結果を受信してもよい。これにより、端末が実行できない処理の処理結果を端末に取得させることができる。
【００９８】
一実施形態では、処理システムは、端末の利用可能なハードウェアリソース（例えば、メモリ容量）を管理するハードウェアリソース管理部（例えば、メモリ管理部１５，メモリ管理部１５Ｂ）をさらに備え、前記決定部は、前記利用可能なハードウェアリソース（例えば、利用可能メモリ容量）、及び、前記所定の処理を実行するために必要な前記端末のハードウェアリソース（処理毎必要メモリ容量）を比較し、比較結果に応じて、前記代行処理部が前記所定の処理の少なくとも一部を代行すると決定してもよい。これにより、処理を実行するために必要な端末のハードウェアリソースに加えて、処理を実行する際の、端末の利用可能なハードウェアリソースを考慮して、代行処理部が処理を実行するか否かを決定することができる。このため、処理を実行する際の端末のハードウェアリソースの利用状況に応じて、より適切に、代行処理部が処理を実行するか否かを決定することができる。
【００９９】
一実施形態では、前記代行処理部は、代行した処理結果（例えば、代行処理結果）を、前記利用可能なハードウェアリソースに応じて調整してもよい。これにより、ハードウェアリソースを有効に理由に利用することができる。
【０１００】
一実施形態では、前記端末は、前記決定部により前記代行処理部が前記所定の処理の少なくとも一部を代行すると決定された場合に、前記所定の処理を識別する情報（例えば、処理ＩＤ）、及び、前記所定の処理で利用される情報（例えば、代行処理に必要なパラメータ）を前記サーバへ送信してもよい。これにより、サーバにおける代行処理を適切に行うことができる。
【０１０１】
一実施形態では、端末及び前記サーバは、前記所定の処理で利用される情報をそれぞれ有してもよい。端末及びサーバの双方が所定の処理で利用される情報（例えば、カードに関するデフォルトの情報を管理するカードデータテーブル）を有することで、代行処理の際に当該情報を端末からサーバに送信する必要がなく、より容易に代行処理を行うことができる。
【０１０２】
一実施形態では、上述したハードウェアリソースは、メモリ容量であってもよい。これにより、端末のメモリ容量を確保できない場合に、所定の処理の処理結果を取得することができる。
【０１０３】
一実施形態では、処理結果は、画像を含んでおり、前記代行処理部は、前記画像の解像度、階調、又は表示数の少なくとも一つを調整してもよい。これにより、端末が処理結果に含まれる画像を適切に利用することができる。
【０１０４】
本発明の他の側面に係るサーバ（例えば、代行サーバ３０，代行サーバ３０Ｂ）は、端末（例えば、端末装置１０Ａ１，端末装置１０Ｂ１）と通信を行うサーバであって、所定の処理を前記端末で実行することについての支障判定結果が所定の条件を満たしていると前記端末の情報に基づき判定される場合に、前記所定の処理の少なくとも一部が代行されると決定される決定結果（例えば、処理ＩＤを含む情報）に基づいて、前記端末の処理を代行する代行処理部（例えば、代行処理部３１）と、前記代行処理部による処理結果を前記端末へ送信する送信部（例えば、サーバ側送受信部３２）と、を備える。
【０１０５】
本発明の他の側面に係るサーバによれば、端末で所定の処理を実行することが困難である場合であっても、端末等の機能を制限することなく端末側で実行する予定の処理を実行することができる。
【０１０６】
本発明のさらに他の側面に係るサーバ処理プログラムは、端末（例えば端末装置１０Ａ１，端末装置１０Ｂ１）と通信を行うサーバ（例えば、代行サーバ３０，代行サーバ３０Ｂ）を動作させるサーバ処理プログラムであって、所定の処理を前記端末で実行することについての支障判定結果が所定の条件を満たしていると前記端末の情報に基づき判定される場合に、前記所定の処理の少なくとも一部が代行されると決定される決定結果（例えば、処理ＩＤを含む情報）に基づいて、前記端末の処理を代行する代行処理部（例えば、代行処理部３１）、及び、前記代行処理部による処理結果を前記端末へ送信する送信部（例えば、サーバ側送受信部３２）として前記サーバを動作させる。
【０１０７】
本発明のさらに他の側面に係るサーバ処理プログラムによれば、端末で所定の処理を実行することが困難である場合であっても、サーバを代行処理部として機能させて、端末等の機能を制限することなく端末側で実行する予定の処理を実行することができる。
【０１０８】
本発明のさらに他の側面に係る端末（例えば端末装置１０Ａ１，端末装置１０Ｂ１）は、サーバ（例えば、代行サーバ３０，代行サーバ３０Ｂ）と通信を行う端末であって、処理を実行する通常処理部（例えば、通常処理部２０）と、所定の処理を前記通常処理部で実行することについての支障判定結果が所定の条件を満たしていると前記端末の情報に基づき判定される場合に、前記所定の処理の少なくとも一部が代行されると決定される決定結果（例えば、処理ＩＤを含む情報）に基づき前記サーバによって代行された処理結果を、前記サーバから受信する受信部（例えば、端末側送受信部１８）と、を備える。
【０１０９】
本発明のさらに他の側面に係る端末によれば、端末で所定の処理を実行することができない場合であっても、サーバが代行した処理結果を受信することで、端末等の機能を制限することなく端末側で実行する予定の処理を取得することができる。
【０１１０】
本発明のさらに他の側面に係る端末処理プログラムは、サーバ（例えば、代行サーバ３０，代行サーバ３０Ｂ）と通信を行う端末（例えば端末装置１０Ａ１，端末装置１０Ｂ１）を動作させる端末処理プログラムであって、処理を実行する通常処理部（例えば、通常処理部２０）、及び、所定の処理を前記通常処理部で実行することについての支障判定結果が所定の条件を満たしていると前記端末の情報に基づき判定される場合に、前記所定の処理の少なくとも一部が代行されると決定される決定結果（例えば、処理ＩＤを含む情報）に基づき前記サーバによって代行された処理結果を、前記サーバから受信する受信部（例えば、端末側送受信部１８）として前記端末を動作させる。
【０１１１】
本発明のさらに他の側面に係る端末処理プログラムによれば、端末で所定の処理を実行することができない場合であっても、サーバが代行した処理結果を受信するように端末を機能させることで、端末等の機能を制限することなく端末側で実行する予定の処理を取得することができる。
【符号の説明】
【０１１２】
１，１Ｂ…処理システム、１０Ａ，１０Ａ１〜１０Ａｎ，１０Ｂ１〜１０Ｂｎ…端末装置、１９，１９Ｂ…決定部、２０…通常処理部、３０，３０Ｂ…代行サーバ、３１…代行処理部。
【図１】
2015153176.tif 000003
【図２】
2015153176.tif 000004
【図３】
2015153176.tif 000005
【図４】
2015153176.tif 000006
【図５】
2015153176.tif 000007
【図６】
2015153176.tif 000008
【図７】
2015153176.tif 000009
【図８】
2015153176.tif 000010
【図９】
2015153176.tif 000011
【図１０】
2015153176.tif 000012
【図１１】
2015153176.tif 000013