(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-07-16
(45)【発行日】2024-07-24
(54)【発明の名称】プログラム、情報処理方法、情報処理装置、及び情報処理システム
(51)【国際特許分類】
G06F 9/50 20060101AFI20240717BHJP
G06F 15/02 20060101ALI20240717BHJP
【FI】
G06F9/50 150C
G06F15/02 315G
G06F15/02 335E
(21)【出願番号】P 2020055138
(22)【出願日】2020-03-25
【審査請求日】2023-03-23
(73)【特許権者】
【識別番号】000001443
【氏名又は名称】カシオ計算機株式会社
(74)【代理人】
【識別番号】110004185
【氏名又は名称】インフォート弁理士法人
(74)【代理人】
【識別番号】100074099
【氏名又は名称】大菅 義之
(74)【代理人】
【識別番号】100121083
【氏名又は名称】青木 宏義
(74)【代理人】
【識別番号】100138391
【氏名又は名称】天田 昌行
(72)【発明者】
【氏名】大野 真人
【審査官】田中 幸雄
(56)【参考文献】
【文献】特開2019-185687(JP,A)
【文献】特開2011-198228(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 9/50
G06F 15/02
(57)【特許請求の範囲】
【請求項1】
入力部により入力された処理を実行するための第1の情報を、前記第1の情報に基づいて実行される複数の処理のうち所定の時間内に実行終了可能な一部の処理を実行可能な第1の処理部により受け付ける受付ステップ、
前記第1の情報に基づいて実行される複数の処理に、前記第1の処理部が前記所定の時間内に実行終了不可能な一部の処理が
含まれる場合に、前記所定の時間内に実行終了不可能な一部の処理を示す情報を、通信ネットワークを介して前記第1の処理部より第2の処理部に送信する送信ステップ、
前記第1の処理部により前記所定の時間内に実行終了可能な一部の処理を実行する実行ステップ、
前記第2の処理部により実行された前記所定の時間内に実行終了不可能な一部の処理の実行結果を、前記通信ネットワークを介して前記第1の処理部により受信する受信ステップ、
前記第1の処理部により実行された前記所定の時間内に実行終了可能な一部の処理の実行結果と、前記第2の処理部により実行された前記所定の時間内に実行終了不可能な一部の処理の実行結果とに基づいて、前記第1の処理部により出力結果を生成して出力部に出力する出力ステップ、
を前記第1の処理部を含むコンピュータに実行させ
、
前記第1の情報により実行される前記複数の処理は、グラフを粗く描画する処理と、前記グラフを粗く描画する処理よりも処理の負荷が大きいグラフを細かく描画する処理と、前記グラフに関する解析をする処理とを含み、
前記所定の時間内に実行終了不可能な一部の処理は、前記グラフを細かく描画する処理、及び、該グラフに関する解析をする処理の少なくとも一方を含む、
ことを特徴とするプログラム。
【請求項2】
請求項1に記載のプログラムにおいて、前記出力ステップは更に、
前記第1の処理部により実行された前記所定の時間内に実行終了可能な一部の処理の実行結果を前記出力部に出力した後に、前記第2の処理部により実行された前記所定の時間内に実行終了不可能な一部の処理の実行結果と前記第1の処理部により実行された前記所定の時間内に実行終了可能な一部の処理の実行結果とに基づいて出力結果を生成させ前記出力部に出力することを含む、ことを特徴とするプログラム。
【請求項3】
請求項2に記載のプログラムにおいて、前記出力ステップは更に、
前記第2の処理部により実行された前記所定の時間内に実行終了不可能な一部の処理の実行結果を、前記第1の処理部により実行された前記所定の時間内に実行終了可能な一部の処理の実行結果に補充した、又は、前記第1の処理部により実行された前記所定の時間内に実行終了可能な一部の処理の実行結果を前記第2の処理部により実行された前記所定の時間内に実行終了不可能な一部の処理の実行結果に書き換えた前記出力結果を生成させることを含む、ことを特徴とするプログラム。
【請求項4】
サーバ装置と通信する情報処理装置が実行する情報処理方法であって、
入力部により入力された第1の情報を受け付ける受付ステップと、
前記第1の情報に基づいて実行される複数の処理に、所定の時間内に実行終了不可能な一部の処理が
含まれる場合に、前記所定の時間内に実行終了不可能な一部の処理を示す情報を、通信ネットワークを介して前記サーバ装置に送信する送信ステップと、
前記複数の処理のうち前記所定の時間内に実行終了不可能な一部の処理を除いた前記所定の時間内に実行終了可能な一部の処理を実行する実行ステップと、
前記第2の情報に基づいて前記サーバ装置により実行された前記所定の時間内に実行終了不可能な一部の処理の実行結果を、前記通信ネットワークを介して受信する受信ステップと、
前記所定の時間内に実行終了可能な一部の処理の実行結果と、前記サーバ装置により実行された前記所定の時間内に実行終了不可能な一部の処理の実行結果とに基づいて出力結果を生成して出力部に出力する出力ステップと、
を含み
、
前記第1の情報により実行される前記複数の処理は、グラフを粗く描画する処理と、前記グラフを粗く描画する処理よりも処理の負荷が大きいグラフを細かく描画する処理と、前記グラフに関する解析をする処理とを含み、
前記所定の時間内に実行終了不可能な一部の処理は、前記グラフを細かく描画する処理、及び、該グラフに関する解析をする処理の少なくとも一方を含む、
ことを特徴とする情報処理方法。
【請求項5】
サーバ装置と通信する通信部と、入力部と、出力部と、前記入力部により入力された処理を実行するための第1の情報に基づいて実行される複数の処理のうち所定の時間内に実行終了可能な一部の処理を実行する制御部と、を備えた情報処理装置であって、
前記制御部は、
前記第1の情報に基づいて実行される複数の処理に、前記制御部が前記所定の時間内に実行終了不可能な一部の処理が
含まれる場合に、前記所定の時間内に実行終了不可能な一部の処理を示す情報を、前記通信部により通信ネットワークを介して前記サーバ装置へ送信し、
前記所定の時間内に実行終了可能な一部の処理を実行し、
前記サーバ装置により実行された前記所定の時間内に実行終了不可能な一部の処理の実行結果を、前記通信ネットワークを介して前記通信部により受信し、
前記所定の時間内に実行終了可能な一部の処理の実行結果と、前記サーバ装置により実行された前記所定の時間内に実行終了不可能な一部の処理の実行結果とに基づいて出力結果を生成して前記出力部に出力
し、
前記第1の情報により実行される前記複数の処理は、グラフを粗く描画する処理と、前記グラフを粗く描画する処理よりも処理の負荷が大きいグラフを細かく描画する処理と、前記グラフに関する解析をする処理とを含み、
前記所定の時間内に実行終了不可能な一部の処理は、前記グラフを細かく描画する処理、及び、該グラフに関する解析をする処理の少なくとも一方を含む、
ことを特徴とする情報処理装置。
【請求項6】
処理を実行するための第1の情報を入力する入力部と、
前記入力部と接続され、前記第1の情報に基づいて実行される複数の処理のうち所定の時間内に実行終了可能な一部の処理を実行可能な第1の処理部と、
通信ネットワークを介して前記第1の処理部と接続され、前記第1の情報に基づいて実行される複数の処理のうち前記第1の処理部が前記所定の時間内に実行終了不可能な一部の処理を実行可能な第2の処理部と、
前記複数の処理の実行結果を出力する出力部と、
を含み、
前記第1の処理部は、前記第1の情報に基づいて実行される複数の処理に、前記第1の処理部が前記所定の時間内に実行終了不可能な一部の処理が
含まれる場合に、前記所定の時間内に実行終了不可能な一部の処理を示す情報を、通信ネットワークを介して前記第1の処理部より第2の処理部に送信し、
前記第2の処理部により実行された前記所定の時間内に実行終了不可能な一部の処理の実行結果を、前記通信ネットワークを介して受信し、
前記第1の処理部により実行された前記所定の時間内に実行終了可能な一部の処理の実行結果と、前記第2の処理部により実行された前記所定の時間内に実行終了不可能な一部の処理の実行結果とに基づいて出力結果を生成して前記出力部に出力し、
前記第1の情報により実行される前記複数の処理は、グラフを粗く描画する処理と、前記グラフを粗く描画する処理よりも処理の負荷が大きいグラフを細かく描画する処理と、前記グラフに関する解析をする処理とを含み、
前記所定の時間内に実行終了不可能な一部の処理は、前記グラフを細かく描画する処理、及び、該グラフに関する解析をする処理の少なくとも一方を含む、
ことを特徴とする情報処理システム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、プログラム、情報処理方法、情報処理装置、及び情報処理システムに関する。
【背景技術】
【0002】
コンピュータ等の情報処理装置を利用して情報を処理する方法の1つとして、Webブラウザ上で利用可能なアプリケーション(Webアプリケーション)を用いる方法がある。Webアプリケーションの1つとして、例えば、Webブラウザ上でグラフや図形を描画することが可能なグラフ描画アプリケーションがある(例えば、非特許文献1を参照)。この種のアプリケーションでは、情報処理装置の利用者が入力した数式情報に基づいて、該情報処理装置とインターネット等の通信ネットワークで接続されたサーバ装置が演算を行う。そして、サーバ装置が行った演算の結果に基づくグラフ等がWebブラウザ上に描画される。
【先行技術文献】
【非特許文献】
【0003】
【文献】Desmos,desmos ユーザガイド,堀川由人 訳[online],[令和2年3月17日検索],インターネット<URL:https://desmos.s3.amazonaws.com/Desmos_User_Guide_JA.pdf>
【発明の概要】
【発明が解決しようとする課題】
【0004】
上述したグラフ描画アプリケーション等のアプリケーションを用いて情報を処理する方法では、情報を処理するために情報処理装置とサーバ装置との間で通信を行う。このため、サーバ装置が実行する処理のなかに処理負荷の高い処理が含まれる場合や情報処理装置からのアクセスが集中してサーバ装置で実行する処理の量が増大した場合、或いは情報処理装置とサーバ装置との通信経路のトラヒックが多い場合等には、情報処理装置からサーバ装置に処理のの実行命令を送信してから、処理結果が情報処理装置で表示されるまでの待ち時間が長くなることがある。
【0005】
以上のような実情を踏まえ、本発明の一側面に係る目的は、サーバ装置と通信する情報処理装置を利用して情報を処理する際の、処理結果が表示されるまでの待ち時間が長くなることを抑制することが可能な技術を提供することである。
【課題を解決するための手段】
【0006】
本発明の一態様に係るプログラムは、入力部により入力された処理を実行するための第1の情報を、前記第1の情報に基づいて実行される複数の処理のうち所定の時間内に実行終了可能な一部の処理を実行可能な第1の処理部により受け付ける受付ステップ、前記第1の情報に基づいて実行される複数の処理に、前記第1の処理部が前記所定の時間内に実行終了不可能な一部の処理が含まれる場合に、前記所定の時間内に実行終了不可能な一部の処理を示す情報を、通信ネットワークを介して前記第1の処理部より第2の処理部に送信する送信ステップ、前記第1の処理部により前記所定の時間内に実行終了可能な一部の処理を実行する実行ステップ、前記第2の処理部により実行された前記所定の時間内に実行終了不可能な一部の処理の実行結果を、前記通信ネットワークを介して前記第1の処理部により受信する受信ステップ、前記第1の処理部により実行された前記所定の時間内に実行終了可能な一部の処理の実行結果と、前記第2の処理部により実行された前記所定の時間内に実行終了不可能な一部の処理の実行結果とに基づいて、前記第1の処理部により出力結果を生成して出力部に出力する出力ステップ、を前記第1の処理部を含むコンピュータに実行させ、前記第1の情報により実行される前記複数の処理は、グラフを粗く描画する処理と、前記グラフを粗く描画する処理よりも処理の負荷が大きいグラフを細かく描画する処理と、前記グラフに関する解析をする処理とを含み、前記所定の時間内に実行終了不可能な一部の処理は、前記グラフを細かく描画する処理、及び、該グラフに関する解析をする処理の少なくとも一方を含む、プログラムである。
【0007】
本発明の一態様に係る情報処理方法は、サーバ装置と通信する情報処理装置が実行する情報処理方法であって、入力部により入力された第1の情報を受け付ける受付ステップと、前記第1の情報に基づいて実行される複数の処理に、所定の時間内に実行終了不可能な一部の処理が含まれる場合に、前記所定の時間内に実行終了不可能な一部の処理を示す情報を、通信ネットワークを介して前記サーバ装置に送信する送信ステップと、前記複数の処理のうち前記所定の時間内に実行終了不可能な一部の処理を除いた前記所定の時間内に実行終了可能な一部の処理を実行する実行ステップと、前記第2の情報に基づいて前記サーバ装置により実行された前記所定の時間内に実行終了不可能な一部の処理の実行結果を、前記通信ネットワークを介して受信する受信ステップと、前記所定の時間内に実行終了可能な一部の処理の実行結果と、前記サーバ装置により実行された前記所定の時間内に実行終了不可能な一部の処理の実行結果とに基づいて出力結果を生成して出力部に出力する出力ステップと、と含み、前記第1の情報により実行される前記複数の処理は、グラフを粗く描画する処理と、前記グラフを粗く描画する処理よりも処理の負荷が大きいグラフを細かく描画する処理と、前記グラフに関する解析をする処理とを含み、前記所定の時間内に実行終了不可能な一部の処理は、前記グラフを細かく描画する処理、及び、該グラフに関する解析をする処理の少なくとも一方を含む情報処理方法である。
【0008】
本発明の一態様に係る情報処理装置は、サーバ装置と通信する通信部と、入力部と、出力部と、前記入力部により入力された処理を実行するための第1の情報に基づいて実行される複数の処理のうち所定の時間内に実行終了可能な一部の処理を実行する制御部と、を備えた情報処理装置であって、前記制御部は、前記第1の情報に基づいて実行される複数の処理に、前記制御部が前記所定の時間内に実行終了不可能な一部の処理が含まれる場合に、前記所定の時間内に実行終了不可能な一部の処理を示す情報を、前記通信部により通信ネットワークを介して前記サーバ装置へ送信し、前記所定の時間内に実行終了可能な一部の処理を実行し、前記サーバ装置により実行された前記所定の時間内に実行終了不可能な一部の処理の実行結果を、前記通信ネットワークを介して前記通信部により受信し、前記所定の時間内に実行終了可能な一部の処理の実行結果と、前記サーバ装置により実行された前記所定の時間内に実行終了不可能な一部の処理の実行結果とに基づいて出力結果を生成して前記出力部に出力し、前記第1の情報により実行される前記複数の処理は、グラフを粗く描画する処理と、前記グラフを粗く描画する処理よりも処理の負荷が大きいグラフを細かく描画する処理と、前記グラフに関する解析をする処理とを含み、前記所定の時間内に実行終了不可能な一部の処理は、前記グラフを細かく描画する処理、及び、該グラフに関する解析をする処理の少なくとも一方を含む、情報処理装置である。
【0009】
本発明の一態様に係る情報処理システムは、処理を実行するための第1の情報を入力する入力部と、前記入力部と接続され、前記第1の情報に基づいて実行される複数の処理のうち所定の時間内に実行終了可能な一部の処理を実行可能な第1の処理部と、通信ネットワークを介して前記第1の処理部と接続され、前記第1の情報に基づいて実行される複数の処理のうち前記第1の処理部が前記所定の時間内に実行終了不可能な一部の処理を実行可能な第2の処理部と、前記複数の処理の実行結果を出力する出力部と、を含み、前記第1の処理部は、前記第1の情報に基づいて実行される複数の処理に、前記第1の処理部が前記所定の時間内に実行終了不可能な一部の処理が含まれる場合に、前記所定の時間内に実行終了不可能な一部の処理を示す情報を、通信ネットワークを介して前記第1の処理部より第2の処理部に送信し、前記第2の処理部により実行された前記所定の時間内に実行終了不可能な一部の処理の実行結果を、前記通信ネットワークを介して受信し、前記第1の処理部により実行された前記所定の時間内に実行終了可能な一部の処理の実行結果と、前記第2の処理部により実行された前記所定の時間内に実行終了不可能な一部の処理の実行結果とに基づいて出力結果を生成して前記出力部に出力し、前記第1の情報により実行される前記複数の処理は、グラフを粗く描画する処理と、前記グラフを粗く描画する処理よりも処理の負荷が大きいグラフを細かく描画する処理と、前記グラフに関する解析をする処理とを含み、前記所定の時間内に実行終了不可能な一部の処理は、前記グラフを細かく描画する処理、及び、該グラフに関する解析をする処理の少なくとも一方を含む、情報処理システムである。
【発明の効果】
【0010】
上記の態様によれば、サーバ装置と通信する情報処理装置を利用して情報を処理する際に、処理結果の一部を先行して表示することができ、処理結果が表示されるまでの待ち時間が長くなることを抑制することができる。
【図面の簡単な説明】
【0011】
【
図2】端末装置のハードウェア構成を例示する図である。
【
図3】演算サーバのハードウェア構成を例示する図である。
【
図4】第1の実施形態に係る情報処理システムで行われる処理を説明するシーケンス図である。
【
図5】端末装置の表示装置に表示される画面の一例を説明する図である。
【
図6】第2の実施形態に係る情報処理システムで行われる処理を説明するシーケンス図である。
【
図7】端末装置で行われる処理の更に別の例を説明するフローチャートである。
【発明を実施するための形態】
【0012】
以下、図面を参照しながら、本発明に係る情報処理システムの実施形態を説明する。なお、以下の説明では、情報処理システムの一例として、Webブラウザ上でグラフや図形を描画することが可能なグラフ描画用のWebアプリケーション(以下「グラフ描画アプリケーション」という)を利用してグラフや図形を描画する処理を行う情報処理システムを挙げる。また、以下の説明では、例示する情報処理システムのうちの、既知の情報処理システムと同様のハードウェア構成、機能構成、及び動作(処理)についての詳細な説明を省略する。
【0013】
【0014】
図1に例示した情報処理システム1は、端末装置2、Webサーバ3、及び演算サーバ4を含む。端末装置2は、例えば、デスクトップ型コンピュータ、ノートブック型コンピュータ、及びタブレット型コンピュータ等の汎用コンピュータ、並びにスマートフォン等の、通信機能を有する情報処理端末である。端末装置2は、通信機能を利用してインターネット等の通信ネットワーク5に接続し、通信ネットワーク5を介してWebサーバ3等の外部装置と通信することができる。Webサーバ3は、通信ネットワーク5に接続され、通信ネットワーク5を介して端末装置2にグラフ描画アプリケーションを提供するサーバ装置である。Webサーバ3は、演算サーバ4とも接続される。演算サーバ4は、Webサーバ3が提供するグラフ描画アプリケーションにおける数式の演算を行うサーバ装置である。グラフ描画アプリケーションを利用して情報処理システム1で行われる数式の演算やグラフの描画等の処理は、情報処理システム1で行われる処理の一例である。なお、
図1に例示した情報処理システム1では、1つの端末装置2のみが示されているが、情報処理システム1には2つ以上の端末装置2が含まれてもよい。
【0015】
図2は、端末装置のハードウェア構成を例示する図である。端末装置2は、上述したように通信機能を有する情報処理端末であり、例えば、
図2に示したように、プロセッサ10、主記憶装置11、補助記憶装置12、入力装置13、表示装置14、入出力インタフェース15、通信装置16、及び媒体駆動装置17を含む。端末装置2におけるこれらの構成要素は、バス18により相互に接続される。
【0016】
プロセッサ10は、例えば、CPU(Central Processing Unit)であり、OS(Operation System)及び後述する演算処理プログラムを含む各種のプログラムを実行することにより、端末装置2の動作を制御する。主記憶装置11は、ROM(Read Only Memory)及びRAM(Random Access Memory)を含み、プロセッサ10が実行するプログラム、及びプログラムの実行中に利用するデータ等が記憶される。プログラムを実行するプロセッサ10及び主記憶装置11の機能の一部は、例えば、FPGA(Field Programmable Gate Array)やASIC(Application Specific Integrated Circuit)により実装されてもよい。
【0017】
補助記憶装置12は、例えば、HDD(Hard Disk Drive)やSSD(Solid State Drive)等の、主記憶装置11と比べて記憶容量の大きい記憶装置である。補助記憶装置12には、プロセッサ10が実行するプログラム、及びプログラムの実行中に利用するデータ等が記憶される。
【0018】
入力装置13は、例えば、キーボード装置やマウス装置等である。表示装置14は、例えば、液晶表示装置等のフラットパネルディスプレイである。端末装置2がタブレット型コンピュータやスマートフォン等のタッチパネルディスプレイを備えた装置である場合、入力装置13は、例えば、表示装置14の表示面に重ねて配置されたデジタイザ(位置検出器)であってもよい。
【0019】
入出力インタフェース15は、端末装置2と、該端末装置2で利用可能な種々の周辺機器とを接続するハードウェアインタフェースであり、例えば、USB(Universal Serial Bus)端子を有する。通信装置16は、端末装置2をインターネット等の通信ネットワーク5に接続し、通信ネットワーク5を介してWebサーバ3等の外部装置と通信する。媒体駆動装置17は、対応する可搬型記録媒体19から情報を読み出すこと、及び対応する可搬型記録媒体19に情報を書き込む(格納する)ことが可能な装置である。可搬型記録媒体19は、光ディスク、磁気ディスク、及び光磁気ディスク、並びにメモリカード等の半導体メモリを含む。可搬型記録媒体19は、読み出し専用のものであってもよいし、読み出し及び書き込みが可能なものであってもよい。
【0020】
なお、端末装置2のハードウェア構成は、
図2に例示した構成に限らず、幾つかの構成要素が省略又は統合されていてもよいし、
図2には示していない構成要素が含まれてもよい。
【0021】
図3は、演算サーバのハードウェア構成を例示する図である。演算サーバ4は、上述したように、Webサーバ3が提供するグラフ描画アプリケーションにおける数式の演算を行うサーバ装置である。演算サーバ4は、例えば、
図3に示したように、プロセッサ20、主記憶装置21、補助記憶装置22、入出力インタフェース23、及び通信装置24を含む。サーバ装置4におけるこれらの構成要素は、バス25により相互に接続される。
【0022】
プロセッサ20は、例えば、CPUであり、OS及び演算処理プログラムを含む各種のプログラムを実行することにより、演算サーバ4の動作を制御する。主記憶装置21は、ROM及びRAMを含み、プロセッサ20が実行するプログラム、及びプログラムの実行中に利用するデータ等が記憶される。
【0023】
補助記憶装置22は、例えば、HDDやSSD等の、主記憶装置21と比べて記憶容量の大きい記憶装置である。補助記憶装置22には、プロセッサ20が実行するプログラム、及びプログラムの実行中に利用するデータ等が記憶される。
【0024】
入出力インタフェース23は、演算サーバ4と、該演算サーバ4で利用可能な種々の周辺機器とを接続するハードウェアインタフェースであり、例えば、USB端子を有する。通信装置24は、Webサーバ3と通信する。
【0025】
なお、演算サーバ4のハードウェア構成は、
図3に例示した構成に限らず、幾つかの構成要素が省略又は統合されていてもよいし、
図3には示していない構成要素が含まれてもよい。演算サーバ4は、入力装置、表示装置、及び媒体駆動装置のうちの1つ以上を含んでもよい。
【0026】
図1に例示した情報処理システム1における端末装置2は、例えば、Webブラウザを利用して、Webサーバ3により提供されるグラフ描画アプリケーションを実行することができる。例えば、端末装置2の利用者がWebブラウザ(グラフ描画アプリケーションのユーザインタフェース)に表示された数式入力欄に数式情報を入力すると、該数式情報が通信ネットワーク5を介してWebサーバ3に送信される。Webサーバ3は、受信した数式情報に基づく演算処理を演算サーバ4に行わせる。演算サーバ4による演算処理の結果は、Webサーバ3から端末装置2に送信され、演算処理の結果を受信した端末装置2は、その結果に基づくグラフを描画して表示装置14に表示させる。上記の数式情報は、情報処理システム1において処理を実行するための第1の情報の一例である。
【0027】
なお、本発明に係る情報処理システム1では、以下に説明するように、数式情報に基づく演算処理のうちの一部の処理を、端末装置2でも行うことができる。
【0028】
[第1の実施形態]
図4は、第1の実施形態に係る情報処理システムで行われる処理を説明するシーケンス図である。
図4のシーケンス図には、
図1~
図3を参照しながら説明した情報処理システム1における端末装置2及び演算サーバ4が行う処理の一実施形態を概略的に示している。
図4の端末装置2の入力装置13は、情報処理システム1において処理を実行するための数式情報(第1の情報)を入力する入力部の一例である。
図4の端末装置2の演算処理部26は、入力装置13により入力される数式情報に基づいて情報処理システム1で実行される複数の演算処理のうちの一部の演算処理を実行可能な第1の処理部の一例である。演算処理部26は、グラフ描画アプリケーションに関する演算処理プログラムを実行するプロセッサ10、主記憶装置11、及び通信装置16を含む複数のハードウェア構成の組み合わせに対応する。
図4の端末装置2の表示装置14は、演算処理部(第1の処理部)26により実行された処理の実行結果と、演算サーバ(第2の処理部)4により実行された処理の実行結果とに基づいて生成される出力結果を出力する出力部の一例である。
【0029】
端末装置2でグラフ描画アプリケーションの利用を開始した後、端末装置2の利用者が入力装置13を利用してWebブラウザ(グラフ描画アプリケーションのユーザインタフェース)の入力欄に数式情報を入力すると(ステップS1)、入力された数式情報が演算処理部26に転送される(ステップS2)。演算処理部26は、その数式情報を含む表示データを表示装置14に表示させる(ステップS3)。その後、端末装置2の利用者が入力装置13を利用してグラフを描画する処理の実行命令を入力すると(ステップS4)、入力された実行命令が演算処理部26に転送される(ステップS5)。
【0030】
実行命令が入力されると、演算処理部26は、数式情報をWebサーバ3に転送する(ステップS6)。Webサーバ3に転送された数式情報は、更に演算サーバ4に転送される(ステップS7)。
【0031】
数式情報をWebサーバ3に転送した後、演算処理部26は、Webサーバ3に転送した数式情報(第1の情報)に基づく演算処理のなかに、自装置で実行可能な処理が有るか否かを判定する(ステップS8)。自装置(端末装置2)で実行可能な処理は、端末装置2において所定の時間内に終了するとみなされる処理であり、実行可能か否かは、例えば、数式の複雑さ、端末装置2の処理能力等に基づいて判定される。例えば、数値、円周率、及び三角関数等を用いて表現される四則演算(例えば、y=1/π(sin(x)+1/9sin(3x))等)をプロットする処理は、端末装置2で実行可能な処理とみなされる。また、例えば、変数の微分(例えば、y=d/dx(x2)等)等の処理は、端末装置2で実行不可の処理とみなされる。実行可能な処理が有る場合(ステップS8;YES)、演算処理部26は、自装置で実行可能な処理のみを実行する(ステップS9)。なお、ステップS9において、演算処理部26は、入力された数式情報に基づく全ての演算処理を実行することもあり得る。
【0032】
ステップS9の演算処理が終了すると、演算処理部26は、その処理の結果を表示装置14に出力する(ステップS10,S11)。演算処理部26は、処理結果に基づくグラフを描画し、該描画したグラフの画像データを生成し(ステップS10)、バス18を介して表示装置14に転送する(ステップS11)。表示装置14は、転送されたグラフの画像データを処理結果として表示する(ステップS12)。数式情報に基づく演算処理のうちの全ての演算処理が自装置で実行可能であった場合、ステップS12において数式情報と対応したグラフの描画(表示)をすることにより、入力された数式情報(第1の情報)に基づいて行われる全ての処理の実行結果を含むグラフ(出力結果)が表示装置14に表示される。これに対し、数式情報に基づく演算処理のうちの一部の演算処理のみが自装置で実行可能であった場合、ステップS12で表示されるグラフは、数式情報(第1の情報)に基づいて実行される複数の処理のうちの演算処理部(第1の処理部)26により実行不可な処理の実行結果が不足したグラフとなる。このため、ステップS9において数式情報に基づく演算処理のうちの一部の演算処理のみを実行した場合、演算処理部26は、ステップS10の処理の後、演算サーバ4における演算処理の結果の受信を待つ。
【0033】
一方、転送した数式情報に基づく演算処理のなかに自装置で実行可能な処理が無い場合(ステップS8;NO)、演算処理部26は、ステップS9及びS10の処理を行わずに、演算サーバ4における演算処理の結果の受信を待つ。
【0034】
端末装置2の演算処理部26がステップS8以降の処理を行っている間、演算サーバ4は、受信した数式情報に基づく全ての演算処理を実行し(ステップS13)、実行した演算処理の結果をWebサーバ3に出力する(ステップS14)。Webサーバ3は、演算サーバ4から受信した演算処理の結果を端末装置2に送信する(ステップS15)。
【0035】
Webサーバ3から演算処理の結果を受信すると、端末装置2の演算処理部26は、未表示の結果(すなわち表示装置14に表示されていない演算処理の結果)が有るか否かを判定する(ステップS16)。ステップS16では、演算処理部26は、入力された数式情報に基づいて実行される全ての処理のなかにステップS9において実行していない処理がある場合に、未表示の結果があると判定する。未表示の結果がある場合(ステップS16;YES)、演算処理部26は、未表示の結果を含むグラフを描画した画像データを生成して表示装置14に出力し(ステップS17,S18)、該画像データを表示装置14に表示させる(ステップS19)。未表示の結果を含む画像データは、演算処理部26で実行した演算処理の結果に基づいて生成した画像データに、演算処理部26で実行していない演算処理の結果を補充(合成)した画像データであってもよいし、演算サーバ4で実行された全ての演算処理の結果に基づいて書き換えた(新たに生成した)画像データであってもよい。一方、未表示の結果が無い場合(ステップS16;NO)、演算処理部26は、ステップS17の処理を行わずに、ステップS1で入力された数式情報に対する処理を終了する。
【0036】
このように、本実施形態の情報処理システム1の端末装置2は、入力装置13に対する入力操作により受け付けた数式情報(第1の情報)に基づく演算処理に自装置で実行可能な演算処理が含まれる場合、数式情報に基づく全ての演算処理を演算サーバ(第2の処理部)4に実行させる一方で、自装置の演算処理部(第1の処理部)26で実行可能な演算処理を実行し、その処理結果を表示装置14に表示させる。
【0037】
図5は、端末装置の表示装置に表示される画面の一例を説明する図である。
【0038】
端末装置2は、数式情報の入力(ステップS1)及び実行命令の入力(ステップS3)を受け付けると、上述したように、数式情報をWebサーバ3(演算サーバ4)に転送する(ステップS6)。このとき、端末装置2の表示装置14に表示されたWebブラウザ(グラフ描画用のユーザインタフェース)は、例えば、
図5に例示したような画面30を含む。画面30は、数式を入力する数式入力欄31と、入力した数式に基づいて描画されるグラフに対する解析の内容を入力する解析内容入力欄32と、グラフを表示するグラフ表示領域33とを含む。ステップS1で入力を受け付ける数式情報は、数式入力欄31に入力される数式を含み、解析内容入力欄32に解析の内容が入力された場合には、その解析の内容も含む。なお、画面30の数式入力欄31に例示した数式及び解析内容入力欄32に例示した解析の内容は、それぞれ、入力可能な数式及び解析の内容を模式的(抽象的)に示したものであり、実際に入力する数式や解析の内容は適宜変更可能である。
【0039】
数式情報をWebサーバ3(演算サーバ4)に転送した後、端末装置2は、数式情報に基づく演算処理のなかに自装置で実行可能な処理が有るか否かを判定する(ステップS8)。例えば、数式情報に基づく演算処理が、数式入力欄31に入力された数式と対応するグラフをグラフ表示領域33にプロットするための演算処理と、そのグラフにおける条件Aを満たす点を抽出する解析処理とが含まれる場合、端末装置2の演算処理部26は、これら2つの処理のそれぞれについて、自装置で実行可能であるか否かを判定する。自装置で実行可能であるか否かは、例えば、数式入力欄31に入力された数式の複雑さや、端末装置2の処理能力等に基づいて判定する。すなわち、端末装置2において実行可能であるか否かの判定は、例えば、所定の時間内に処理を終了させることができるか否かの判定であり得る。
【0040】
ステップS8の判定において、端末装置2の演算処理部26が、グラフをプロットするための演算処理及び解析処理のうちの、グラフをプロットするための演算処理のみを自装置で実行可能であると判定した場合、演算処理部26は、ステップS9において、グラフをプロットするための演算処理のみを実行する。この演算処理が終了すると、端末装置2の表示装置14には、
図5に例示したようなグラフ表示領域33内にグラフ35が描画された画面34が表示される(ステップS12)。なお、画面34に例示した三角波のグラフ35は、演算処理部26により実行された処理の実行結果の一例を模式的に示したものであり、実際の処理においては、数式入力欄31に入力された具体的な数式と対応したグラフが表示される。
【0041】
画面34が表示された後、Webサーバ3(演算サーバ4)から数式情報に基づく全ての演算処理の結果を受信すると(ステップS15)、端末装置2の表示装置14には、グラフ35と自装置で行わなかった解析処理の結果を示す点37~46とがグラフ表示領域33内に描画された画面36が表示される(ステップS19)。なお、画面36に例示した解析処理の結果を示す点37~46は、演算サーバ4により実行された解析処理の実行結果の一例を模式的に示したものであり、実際の処理においては、数式入力欄31に入力された具体的な数式及び解析内容入力欄32に入力された具体的な解析の内容に対応した解析処理の結果が表示される。
【0042】
従来の情報処理システムのように、端末装置2に入力された数式情報(第1の情報)に基づく全ての演算処理を演算サーバ4に行わせた場合(すなわち、グラフをプロットするための演算処理を端末装置2で行わない場合)、時間t0に実行命令が入力された後、時間t2にグラフ35及び解析処理の結果(点37~46)がグラフ表示領域33内に描画された画面36を表示する。このため、例えば、Webサーバ3へのアクセスが集中して演算サーバ4で実行する演算処理の量が多くなった場合や、端末装置2とWebサーバ3との間での通信に遅延が生じた場合には、演算処理の結果が描画されていない画面30から描画された画面36に切り替わるまでの待ち時間が長くなってしまう。また、数式情報に基づく演算処理のなかに処理負荷の高い演算処理(例えば、不定積分や高次の多項式に関する解析処理等)が含まれる場合にも、演算処理の結果が描画されていない画面30から描画された画面に切り替わるまでの待ち時間が長くなってしまう。
【0043】
これに対し、本実施形態の情報処理システム1における端末装置2では、時間t0に実行命令が入力された後、時間t2よりも前の時間t1にグラフ35のみがグラフ表示領域33内に描画された画面34を表示し、時間t2にグラフ35及び解析処理の結果(点37~46)がグラフ表示領域33内に描画された画面36を表示する。すなわち、本実施形態の情報処理システム1では、端末装置2において実行命令が入力された後、演算サーバ4からの数式情報に基づく全ての演算処理の結果を端末装置2で表示(出力)することに先行して、端末装置2で実行した一部の演算処理の結果を表示することができる。このため、画面36が表示されるまでの時間が長くなってしまうことがあっても、演算処理の結果が描画されていない画面30から数式情報に基づく少なくとも一部の処理の結果が描画された画面34に切り替わるまでの時間は、画面36が表示されるまでの時間よりも短くなる。したがって、本実施形態の情報処理システム1では、Webサーバ3(演算サーバ4)と通信する端末装置2によりグラフを描画する際に、少なくとも一部の処理の結果が表示(出力)されるまでの時間を短くすることができ、数式情報に基づく処理を開始した後の処理結果が表示されていない時間(待ち時間)が長くなることを抑制することができる。
【0044】
なお、本実施形態の情報処理システム1が行う処理は、
図4に例示したシーケンス図に沿った処理に限らず、本実施形態の要旨を逸脱しない範囲において様々な変更、修正が可能である。例えば、本実施形態の情報処理システム1における端末装置2は、自装置で実行可能な処理のみを実行している途中で、演算サーバ4からの演算処理の結果を受信することもある。このため、端末装置2が行う処理は、例えば、ステップS9及びS10の処理が終了する前に演算サーバ4からの演算処理の結果を受信した場合には、その時点でステップS9の処理を終了し、演算サーバ4から受信した演算処理の結果を描画して表示装置14に表示させてもよい。すなわち、端末装置2は、自装置(演算処理部26)により実行する演算処理の実行結果と、演算サーバ4により実行された演算処理の実行結果のうち、早く処理が終了した方の実行結果を先に出力してもよい。
【0045】
[第2の実施形態]
図6は、第2の実施形態に係る情報処理システムで行われる処理を説明するシーケンス図である。
図6のシーケンス図には、
図1~
図3を参照しながら説明した情報処理システム1における端末装置2及び演算サーバ4が行う処理の、第1の実施形態とは別の実施形態を概略的に示している。
図6の端末装置2における入力装置13、演算処理部26、及び表示装置14は、それぞれ、第1の実施形態で説明した入力部、第1の処理部、及び出力部の一例である。演算処理部26は、グラフ描画アプリケーションに関する演算処理プログラムを実行するプロセッサ10、主記憶装置11、及び通信装置16を含む複数のハードウェア構成の組み合わせに対応する。
【0046】
端末装置2でグラフ描画アプリケーションの利用を開始した後、端末装置2の利用者が入力装置13を利用してWebブラウザの入力欄に数式情報(第1の情報)を入力すると(ステップS1)、入力された数式情報が演算処理部26に転送される(ステップS2)。演算処理部26は、その数式情報を含む表示データを表示装置14に表示させる(ステップS3)。その後、端末装置2の利用者が入力装置13を利用してグラフを描画する処理の実行命令を入力すると(ステップS4)、入力された実行命令が演算処理部26に転送される(ステップS5)。
【0047】
実行命令が入力されると、本実施形態の端末装置2における演算処理部26は、まず、入力された数式情報に基づく演算処理のなかに自装置で実行不可の処理が有るか否かを判定する(ステップS31)。すなわち、本実施形態の端末装置2では、数式情報をWebサーバ3(演算サーバ4)に転送する前に、自装置で実行不可の処理が有るか否かを判定する。ステップS31において、演算処理部26は、例えば、第1の実施形態で説明したような数式の複雑さ、端末装置2の処理能力等に基づいて、自装置で実行不可の処理(例えば、所定の時間内に終了することができない処理)が有るか否かを判定する。すなわち、端末装置2において実行不可である処理は、例えば、端末装置2で実行した場合には処理時間が所定の時間よりも長くなるとみなされる、処理負荷の高い処理であり得る。
【0048】
実行不可の処理が無い場合(ステップS31;NO)、演算処理部26は、全ての演算処理を自装置で実行し(ステップS32)、その処理の結果を描画して表示装置14に出力する(ステップS36,S37)。この場合、表示装置14には、入力された数式情報に基づく全ての演算処理の結果と対応するグラフ及び解析結果が描画された画面が表示される(ステップS38)。
【0049】
一方、実行不可の処理がある場合(ステップS31:YES)、演算処理部26は、数式情報をWebサーバ3に転送する(ステップS33)。Webサーバ3に転送された数式情報は、更に演算サーバ4に転送される(ステップS34)。
【0050】
数式情報をWebサーバ3に転送した後、演算処理部26は、転送した数式情報に基づく複数の演算処理のうちの自装置で実行可能な処理のみを実行し(ステップS35)、その処理の結果を表示装置14に出力する(ステップS36,S37)。この場合、ステップS38で表示される画面のグラフは、入力された数式情報に基づく全ての演算処理のうちの自装置で実行不可の演算処理の結果と対応する情報が不足したグラフとなる。このため、ステップS35において数式情報に基づく演算処理のうちの一部の演算処理のみを実行した場合、演算処理部26は、ステップS36の処理の後、演算サーバ4における演算処理の結果の受信を待つ。
【0051】
端末装置2の演算処理部26がステップS35以降の処理を行っている間、演算サーバ4は、受信した数式情報に基づく全ての演算処理を実行し(ステップS39)、実行した演算処理の結果をWebサーバ3に出力する(ステップS40)。Webサーバ3は、演算サーバ4から受信した演算処理の結果を端末装置2に送信する(ステップS41)。
【0052】
Webサーバ3から演算処理の結果を受信すると、端末装置2の演算処理部26は、未表示の結果(すなわち表示装置14に表示されていない演算処理の結果)が有るか否かを判定する(ステップS42)。第2の実施形態では、上述のように、自装置(端末装置2)において実行不可の演算処理が有る場合にのみ、数式情報に基づく全ての演算処理をサーバ装置4に実行させる。このため、ステップS42では、演算処理部26は、Webサーバ3から演算処理の結果を受信した場合には、未表示の結果があると判定する。未表示の結果がある場合(ステップS42;YES)、演算処理部26は、未表示の結果を含む画像データを生成して表示装置14に出力し(ステップS43,S44)、該画像データを表示装置14に表示させる(ステップS45)。未表示の結果を含む画像データは、演算処理部26で実行した演算処理の結果に基づいて生成した画像データに、演算処理部26で実行していない演算処理の結果を補充(合成)した画像データであってもよいし、演算サーバ4で実行された全ての演算処理の結果に基づいて書き換えた(新たに生成した)画像データであってもよい。一方、未表示の結果が無い場合(ステップS42;NO)、演算処理部26は、ステップS43の処理を行わずに、ステップS1で入力された数式情報に対する処理を終了する。
【0053】
このように、本実施形態の情報処理システム1の端末装置2は、入力装置13に対する入力操作により受け付けた数式情報に基づく演算処理に自装置で実行不可の演算処理が含まれる場合、数式情報に基づく全ての演算処理を演算サーバ4に実行させる一方で、自装置で実行可能な演算処理を実行し、その演算結果を表示装置14に表示させる。このため、本実施形態の情報処理システム1は、第1の実施形態の情報処理システム1と同様、Webサーバ3(演算サーバ4)と通信する端末装置2によりグラフを描画する際に、少なくとも一部の処理の結果が表示(出力)されるまでの時間を短くすることができ、数式情報に基づく処理を開始した後の処理結果が表示されていない時間(待ち時間)が長くなることを抑制することができる。
【0054】
また、本実施形態の情報処理システム1における端末装置2は、入力された数式情報に基づく複数の演算処理の中に、自装置で実行不可の処理が含まれる場合にのみ、数式情報を演算サーバ4に転送する。このため、入力された数式情報に基づく全ての演算処理を自装置で実行可能である場合には、演算サーバ4に演算処理を実行させることなく、入力された数式情報に基づく全ての演算処理の結果を表示装置14に表示させることができる。したがって、本実施形態の情報処理システム1は、多数の端末装置2のそれぞれから受信した数式情報に基づく演算処理を実行し得る演算サーバ4の処理負荷の増大を抑制することもできる。
【0055】
なお、本実施形態の情報処理システム1が行う処理は、
図6に例示したシーケンス図に沿った処理に限らず、本実施形態の要旨を逸脱しない範囲において様々な変更、修正が可能である。例えば、本実施形態の情報処理システム1における端末装置2は、ステップS35及びそれに続くステップS36の処理が終了する前に演算サーバ4からの演算処理の結果を受信した場合には、その時点でステップS35又はそれに続くステップS36の処理を終了し、演算サーバ4から受信した演算処理の結果を描画して表示装置14に表示させてもよい。
【0056】
また、例えば、本実施形態の情報処理システム1は、端末装置2で実行不可の演算処理がある場合に、数式情報に基づく複数の演算処理から端末装置2で実行可能な1つ以上の演算処理を除いた実行不可の演算処理のみを演算サーバ4に実行させてもよい。
【0057】
図7は、端末装置で行われる処理の更に別の例を説明するフローチャートである。端末装置2は、
図6に例示したステップS31,S32,S33,S35,S36~S38,及びS42~S45の処理の代わりに、
図7に例示したフローチャートに沿った処理を行うことができる。
【0058】
数式情報及び実行命令の入力を受け付けた端末装置2は、
図7に例示したフローチャートに沿った処理を開始し、まず、全ての数値演算を自装置で実行可能であるか否かを判定する(ステップS51)。数値演算は、例えば、数式情報に含まれる数式のグラフを描画(プロット)するための演算処理であり、数式情報に基づいて演算サーバ4が実行することが可能な複数の演算処理のうちの処理負荷が比較的低い演算処理である。ステップS51の判定は、演算処理部26が行う。自装置で実行不可の数値演算がある場合(ステップS51;NO)、端末装置2の演算処理部26は、次に、自装置で実行不可の処理を示す情報を生成する(ステップS55)。自装置で実行不可の数値演算が有る場合、演算処理部26は、自装置で実行不可の処理を示す情報として、数式情報に基づく全ての演算処理が実行不可であることを示す情報を生成する。ステップS55の処理を行った場合に演算処理部26が続けて行う処理については後述する。
【0059】
全ての数値演算を自装置で実行可能な場合(ステップS51;YES)、演算処理部26は、次に、自装置で実行可能なグラフ解析が有るか否かを判定する(ステップS52)。グラフ解析は、例えば、数式情報に基づく演算処理の結果から描画されるグラフに関する解析処理(例えば、微分や不定積分等)である。実行可能なグラフ解析が無い場合(ステップS52;NO)、演算処理部26は、ステップS55の処理を行う。ステップS52において実行可能なグラフ解析が無いと判定した場合、演算処理部26は、自装置で実行不可の処理を示す情報として、数式情報に基づく演算処理のうちの、グラフ解析に関する複数の処理が実行不可であることを示す情報を生成する。
【0060】
自装置で実行可能なグラフ解析が有る場合(ステップS52;YES)、演算処理部26は、次に、全てのグラフ解析を実行可能であるか否かを判定する(ステップS53)。実行不可のグラフ解析が有る場合(ステップS53;NO)、演算処理部26は、ステップS55の処理を行う。ステップS53において実行不可のグラフ解析が有ると判定した場合、演算処理部26は、自装置で実行不可の処理を示す情報として、数式情報に基づく演算処理のうちの、自装置で実行不可のグラフ解析を示す情報を生成する。
【0061】
全てのグラフ解析を自装置で実行可能な場合(ステップS53;YES)、演算処理部26は、自装置で実行可能な演算処理を開始する(ステップS54)。ステップS53の判定がYESとなった場合、ステップS54では、演算処理部26は、入力された数式情報に基づく全ての演算処理を行う。演算処理を開始した後、演算処理部26は、後述するステップS58以降の処理を行う。
【0062】
また、ステップS55において自装置で実行不可の処理を示す情報を生成した場合、演算処理部26は、数式情報と実行不可の処理を示す情報とを演算サーバ4に送信し(ステップS56)、自装置で実行可能な処理が有るか否かを判定する(ステップS57)。ステップS57では、演算処理部26は、数式情報に基づく複数の演算処理のなかに、ステップS55において生成した自装置で実行不可の処理を示す情報に含まれない演算処理が有るか否かを判定する。自装置で実行不可の処理を示す情報に含まれない演算処理がある場合、演算処理部26は、自装置で実行可能な処理が有ると判定し(ステップS57;YES)、自装置で実行可能な演算処理を開始する(ステップS54)。自装置で実行可能な処理が無い場合(ステップS57;NO)、演算処理部26は、ステップS58以降の処理を行う。
【0063】
ステップS58では、演算処理部26は、演算サーバ4に数式情報を送信したか否かを判定する。数式情報を送信した場合(ステップS58;YES)、演算処理部26は、次に、演算サーバ4の処理結果を受信したか否かを判定する(ステップS59)。処理結果を受信した場合(ステップS59;YES)、演算処理部26は、演算サーバ4の処理結果を描画して表示装置14に表示させる(ステップS60)。
【0064】
演算サーバ4に数式情報を送信していない場合(ステップS58;NO)、演算サーバ4から処理結果を受信していない場合(ステップS59;NO)、又は演算サーバ4の処理結果を表示装置14に表示させると、演算処理部26は、次に、全ての処理結果を表示装置14に表示したか否かを判定する(ステップS61)。全ての処理結果を表示した場合(ステップS61;YES)、演算処理部26(端末装置2)は、入力された数式情報に基づくグラフの描画に関する処理を終了する。
【0065】
表示していない処理結果がある場合(ステップS61;NO)、演算処理部26は、次に、自装置の処理が終了したか否かを判定する(ステップS62)。演算処理部26は、ステップS54で開始した自装置で実行可能な処理が終了した場合に、自装置の処理が終了した(「YES」)と判定する。自装置で実行可能な処理が終了していない場合、又は自装置で実行可能な処理が無かった(すなわち、ステップS54を行っていない)場合、演算処理部26は、ステップS62において自装置の処理が終了していない(「NO」)と判定する。自装置の処理が終了した場合(ステップS62;YES)、演算処理部26は、自装置の処理結果を描画して表示装置14に表示させ(ステップS63)、ステップS58の判定に戻る。自装置の処理が終了していない場合(ステップS62;NO)、演算処理装置26は、ステップS63の処理をスキップしてステップS58の判定に戻る。
【0066】
図7に例示したフローチャートに沿った処理を行う端末装置2は、入力された数式情報に基づく演算処理のなかに自装置で実行不可の演算処理が含まれる場合に、数式情報を演算サーバ4に転送する。このとき、端末装置2は、入力された数式情報に基づく演算処理(数値処理及びグラフ解析)のうちの自装置で実行不可の演算処理を示す情報を、数式情報とともに演算サーバ4に転送する。このため、演算サーバ4は、端末装置2から受信した数式情報に基づく複数の演算処理のうちの、端末装置2で実行不可の演算処理のみを実行すればよい。したがって、数式情報に基づく演算処理のうちの端末装置2が実行する演算処理を演算サーバ4でも実行することによる、演算サーバ4での演算処理の増大を抑制することができる。
【0067】
上述した実施形態は、発明の理解を容易にするために具体例を示したものであり、本発明は上述した実施形態に限定されるものではない。上述した端末装置2(情報処理装置)を含む情報処理システム1、情報処理システム1における情報処理方法、及び端末装置2のプロセッサ10が実行するプログラムは、特許請求の範囲の記載を逸脱しない範囲において、さまざまな変形、変更が可能である。
【0068】
例えば、端末装置2や演算サーバ4に演算処理を実行させるための数式情報の入力を受け付ける入力部は、端末装置2(コンピュータ)の構成要素の1つであり得る入力装置13に限らず、端末装置2とは別の、グラフ描画アプリケーションを実行する端末装置2と連携可能な外部装置(コンピュータ)であってもよい。端末装置2とは別の外部装置は、例えば、USBケーブル等の伝送ケーブルを利用して入出力インタフェース15を通じて端末装置2に接続されてもよいし、Bluetooth(登録商標)等の近距離無線通信規格に従った通信装置16との無線通信により端末装置2に接続されてもよい。すなわち、本発明に係る情報処理システム1では、数式情報(第1の情報)等の入力を受け付ける入力装置(入力部)は、その数式情報に基づいて実行される複数の処理のうちの一部の処理を実行する演算処理部26(第1の処理部)を有する端末装置2に包含されるものであってもよいし、端末装置2とは別個に設けられるものであってもよい。端末装置2とは別の外部装置により数式情報が入力される場合には、端末装置2において上述の実施形態のような処理を行う代わりに、該別の外部装置において端末装置2で実行可能な処理の有無等を判定してもよい。端末装置2とは別の外部装置において端末装置2で実行可能な処理の有無等を判定する場合、例えば、Webサーバ3(演算サーバ4)への数式情報の転送は、端末装置2における演算処理部26を介さずに行われてもよい。
【0069】
また、情報処理システム1は、Webサーバ3と演算サーバ4とが1つのサーバ装置に統合されていてもよいし、実行する演算処理の種別が異なる複数の演算サーバ4を含んでもよい。
【0070】
また、上述した実施形態では、数式情報に基づいて数式(関数)のグラフを描画する処理と該グラフに対する解析処理とを実行し、これらの処理の結果を描画して表示する情報処理システム1を例示している。しかしながら、本発明に係る情報処理システム1において行う処理は、これに限らず、例えば、2次元平面又は3次元空間に任意の形状の図形を描画する処理等を含んでもよい。また、数式情報に基づいて実行される処理は、例えば、グラフを細かく描画する処理と、グラフを粗く描画する処理と、グラフに関する解析をする処理を含んでもよい。グラフを細かく描画する処理と、グラフを粗く描画する処理とは、例えば、グラフの描画範囲を指定する変数の範囲内における演算を行う変数値の数が異なり、グラフを細かく描画する処理の負荷は、グラフを粗く描画する処理の負荷よりも大きい。このため、上述した演算処理システム1では、例えば、グラフを粗く描画する処理は端末装置2の演算処理部26で実行し、グラフを細かく描画する処理及び/又はグラフに関する解析をする処理は演算サーバ4で実行するようにしてもよい。
【0071】
また、本発明に係る情報処理システム1は、上述したような数式情報に基づく演算処理を行うものに限らず、端末装置2に入力された第1の情報に基づく複数の処理のうちの一部の処理の結果を先行して出力することが求められる、任意の情報を処理するものであってもよい。
【0072】
以下、本願の出願当初の特許請求の範囲に記載された発明を付記する。
[付記1]
入力部により入力された、処理を実行するための第1の情報を、前記第1の情報に基づいて実行される複数の処理のうちの一部の処理を実行可能な第1の処理部により受け付けることと、
前記第1の処理部により、前記一部の処理を実行することと、
前記第1の処理部により、少なくとも前記複数の処理のうちの、前記第1の処理部により実行不可な処理を示す第2の情報を、通信ネットワークを介して第2の処理部に送信することと、
前記第2の処理部に送信された少なくとも前記第2の情報に基づいて前記第2の処理部により実行された処理の実行結果を、前記通信ネットワークを介して前記第1の処理部により受信することと、
前記第1の処理部により、該第1の処理部により実行された処理の実行結果と、前記第2の処理部により実行された処理の実行結果とに基づいて出力結果を生成して出力部に出力すること、
を前記第1の処理部を含むコンピュータに実行させることを特徴とするプログラム。
[付記2]
付記1に記載のプログラムにおいて、
前記複数の処理のなかに前記第1の処理部で実行可能な処理が含まれるか否かの判定を行わずに、前記第1の情報を前記第2の処理部に送信することを、前記第1の処理部により実行する
ことを前記コンピュータに実行させることを特徴とするプログラム。
[付記3]
付記1に記載のプログラムにおいて、
前記複数の処理に前記第1の処理部で実行可能な前記一部の処理が含まれるか否かを、前記第1の処理部により判定し、
前記第1の処理部で実行可能な前記一部の処理が含まれると判定した場合に、前記第2の情報を前記第2の処理部に送信することを、前記第1の処理部により実行する
ことを前記コンピュータに実行させることを特徴とするプログラム。
[付記4]
付記1に記載のプログラムにおいて、
前記第1の処理部により実行された処理の実行結果を前記出力部に出力した後に、
前記第2の処理部により実行された処理の実行結果と前記第1の処理部により実行された処理の実行結果とに基づいて出力結果を生成させ前記出力部に出力する
ことを前記コンピュータに実行させることを特徴とするプログラム。
[付記5]
付記4に記載のプログラムにおいて、
前記第2の処理部により実行された処理の実行結果を、前記第1の処理部により実行された処理の実行結果に補充した、又は前記第1の処理部により実行された処理の実行結果を前記第2の処理部により実行された処理の実行結果に書き換えた前記出力結果を生成させる
ことを前記コンピュータに実行させることを特徴とするプログラム。
[付記6]
付記1~5のいずれか1つに記載のプログラムにおいて、
前記第1の情報により実行される前記複数の処理は、グラフを細かく描画する処理と、前記グラフを粗く描画する処理と、該グラフに関する解析をする処理とを含み、
前記第1の処理部により実行不可な処理は、前記グラフを細かく描画する処理及び/又は該グラフに関する解析をする処理を含む、
ことを特徴とするプログラム。
[付記7]
サーバ装置と通信する情報処理装置が、
入力部により入力された、処理を実行するための第1の情報を、前記第1の情報に基づいて実行される複数の処理のうちの一部の処理を実行可能な第1の処理部により受け付けることと、
前記第1の処理部により、前記一部の処理を実行することと、
少なくとも前記複数の処理のうちの、前記第1の処理部により実行不可な処理を示す第2の情報を、通信ネットワークを介して第2の処理部に送信することと、
前記第2の処理部に送信された少なくとも前記第2の情報に基づいて前記第2の処理部により実行された処理の実行結果を、前記通信ネットワークを介して受信することと、
前記第1の処理部により実行された処理の実行結果と、前記第2の処理部により実行された処理の実行結果とに基づいて出力結果を生成して出力部に出力すること、
を実行することを特徴とする情報処理方法。
[付記8]
サーバ装置と通信する情報処理装置であって、
入力部により入力された、処理を実行するための第1の情報に基づいて実行される複数の処理のうちの一部の処理を実行可能な第1の処理部と、
少なくとも前記複数の処理のうちの、前記第1の処理部により実行不可な処理を示す第2の情報を、通信ネットワークを介して第2の処理部に送信し、前記第2の処理部に送信された少なくとも前記第2の情報に基づいて前記第2の処理部により実行された処理の実行結果を、前記通信ネットワークを介して受信する通信部と、
前記第1の処理部により実行された処理の実行結果と、前記第2の処理部により実行された処理の実行結果とに基づいて前記複数の処理の実行結果を出力する出力部と、
を備えることを特徴とする情報処理装置。
[付記9]
処理を実行するための第1の情報を入力する入力部と、
前記入力部と接続され、前記第1の情報に基づいて実行される複数の処理のうちの一部の処理を実行可能な第1の処理部と、
通信ネットワークを介して前記第1の処理部と接続され、前記複数の処理を実行可能な第2の処理部と、
前記複数の処理の実行結果を出力する出力部と、
を含み、
前記第1の処理部は、少なくとも前記複数の処理のうちの、前記第1の処理部により実行不可な処理を示す第2の情報を、通信ネットワークを介して第2の処理部に送信し、前記第2の処理部に送信された少なくとも前記第2の情報に基づいて前記第2の処理部により実行された処理の実行結果を、前記通信ネットワークを介して受信し、
前記出力部は、前記第1の処理部により実行された処理の実行結果と、前記第2の処理部により実行された処理の実行結果とに基づいて前記複数の処理の実行結果を出力する
ことを特徴とする情報処理システム。
【符号の説明】
【0073】
1 情報処理システム
2 端末装置
3 Webサーバ
4 演算サーバ
5 通信ネットワーク
10,20 プロセッサ
11,21 主記憶装置
12,22 補助記憶装置
13 入力装置
14 表示装置
15,23 入出力インタフェース
16,24 通信装置
17 媒体駆動装置
18,25 バス
19 可搬型記録媒体
26 演算処理部
30,34,36 画面
31 数式入力欄
32 解析内容入力欄
33 グラフ表示領域
35 グラフ
37~46 (解析処理の結果を示す)点