JP7521218B2 - PROGRAM, INFORMATION PROCESSING METHOD, INFORMATION PROCESSING APPARATUS, AND INFORMATION PROCESSING SYSTEM - Google Patents

PROGRAM, INFORMATION PROCESSING METHOD, INFORMATION PROCESSING APPARATUS, AND INFORMATION PROCESSING SYSTEM Download PDF

Info

Publication number
JP7521218B2
JP7521218B2 JP2020055138A JP2020055138A JP7521218B2 JP 7521218 B2 JP7521218 B2 JP 7521218B2 JP 2020055138 A JP2020055138 A JP 2020055138A JP 2020055138 A JP2020055138 A JP 2020055138A JP 7521218 B2 JP7521218 B2 JP 7521218B2
Authority
JP
Japan
Prior art keywords
processing
completed
processes
processing unit
information
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2020055138A
Other languages
Japanese (ja)
Other versions
JP2021157335A (en
JP2021157335A5 (en
Inventor
真人 大野
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Casio Computer Co Ltd
Original Assignee
Casio Computer Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Casio Computer Co Ltd filed Critical Casio Computer Co Ltd
Priority to JP2020055138A priority Critical patent/JP7521218B2/en
Publication of JP2021157335A publication Critical patent/JP2021157335A/en
Publication of JP2021157335A5 publication Critical patent/JP2021157335A5/ja
Application granted granted Critical
Publication of JP7521218B2 publication Critical patent/JP7521218B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Transfer Between Computers (AREA)

Description

本発明は、プログラム、情報処理方法、情報処理装置、及び情報処理システムに関する。 The present invention relates to a program, an information processing method, an information processing device, and an information processing system.

コンピュータ等の情報処理装置を利用して情報を処理する方法の1つとして、Webブラウザ上で利用可能なアプリケーション(Webアプリケーション)を用いる方法がある。Webアプリケーションの1つとして、例えば、Webブラウザ上でグラフや図形を描画することが可能なグラフ描画アプリケーションがある(例えば、非特許文献1を参照)。この種のアプリケーションでは、情報処理装置の利用者が入力した数式情報に基づいて、該情報処理装置とインターネット等の通信ネットワークで接続されたサーバ装置が演算を行う。そして、サーバ装置が行った演算の結果に基づくグラフ等がWebブラウザ上に描画される。 One method of processing information using an information processing device such as a computer is to use an application available on a web browser (web application). One example of a web application is a graph drawing application that can draw graphs and figures on a web browser (see, for example, non-patent document 1). In this type of application, a server device connected to the information processing device via a communication network such as the Internet performs calculations based on formula information entered by a user of the information processing device. Then, graphs and the like based on the results of the calculations performed by the server device are drawn on the web browser.

Desmos,desmos ユーザガイド,堀川由人 訳[online],[令和2年3月17日検索],インターネット<URL:https://desmos.s3.amazonaws.com/Desmos_User_Guide_JA.pdf>Desmos, Desmos User Guide, translated by Yoshito Horikawa [online], [Retrieved March 17, 2020], Internet <URL: https://desmos.s3.amazonaws.com/Desmos_User_Guide_JA.pdf>

上述したグラフ描画アプリケーション等のアプリケーションを用いて情報を処理する方法では、情報を処理するために情報処理装置とサーバ装置との間で通信を行う。このため、サーバ装置が実行する処理のなかに処理負荷の高い処理が含まれる場合や情報処理装置からのアクセスが集中してサーバ装置で実行する処理の量が増大した場合、或いは情報処理装置とサーバ装置との通信経路のトラヒックが多い場合等には、情報処理装置からサーバ装置に処理のの実行命令を送信してから、処理結果が情報処理装置で表示されるまでの待ち時間が長くなることがある。 In the method of processing information using an application such as the graph drawing application described above, communication is performed between the information processing device and the server device to process the information. For this reason, when the processes executed by the server device include processes with high processing loads, when access from the information processing device is concentrated and the amount of processes executed by the server device increases, or when there is a lot of traffic on the communication path between the information processing device and the server device, the waiting time from when the information processing device sends an execution command to the server device to when the processing result is displayed on the information processing device may be long.

以上のような実情を踏まえ、本発明の一側面に係る目的は、サーバ装置と通信する情報処理装置を利用して情報を処理する際の、処理結果が表示されるまでの待ち時間が長くなることを抑制することが可能な技術を提供することである。 In light of the above-mentioned circumstances, an object of one aspect of the present invention is to provide a technology that can reduce the waiting time until the processing results are displayed when processing information using an information processing device that communicates with a server device.

本発明の一態様に係るプログラムは、入力部により入力された処理を実行するための第1の情報を、前記第1の情報に基づいて実行される複数の処理のうち所定の時間内に実行終了可能な一部の処理を実行可能な第1の処理部により受け付ける受付ステップ、前記第1の情報に基づいて実行される複数の処理に、前記第1の処理部が前記所定の時間内に実行終了不可能な一部の処理が含まれる場合に、前記所定の時間内に実行終了不可能な一部の処理を示す情報を、通信ネットワークを介して前記第1の処理部より第2の処理部に送信する送信ステップ、前記第1の処理部により前記所定の時間内に実行終了可能な一部の処理を実行する実行ステップ、前記第2の処理部により実行された前記所定の時間内に実行終了不可能な一部の処理の実行結果を、前記通信ネットワークを介して前記第1の処理部により受信する受信ステップ、前記第1の処理部により実行された前記所定の時間内に実行終了可能な一部の処理の実行結果と、前記第2の処理部により実行された前記所定の時間内に実行終了不可能な一部の処理の実行結果とに基づいて、前記第1の処理部により出力結果を生成して出力部に出力する出力ステップ、を前記第1の処理部を含むコンピュータに実行させ、前記第1の情報により実行される前記複数の処理は、グラフを粗く描画する処理と、前記グラフを粗く描画する処理よりも処理の負荷が大きいグラフを細かく描画する処理と、前記グラフに関する解析をする処理とを含み、前記所定の時間内に実行終了不可能な一部の処理は、前記グラフを細かく描画する処理、及び、該グラフに関する解析をする処理の少なくとも一方を含む、プログラムである。 A program according to one aspect of the present invention includes a receiving step of receiving first information for executing a process inputted by an input unit by a first processing unit capable of executing a part of a plurality of processes to be executed based on the first information and which can be completed within a predetermined time; a transmitting step of transmitting information indicating the part of the process which cannot be completed within the predetermined time from the first processing unit to a second processing unit via a communication network when the plurality of processes to be executed based on the first information includes a part of the process which the first processing unit cannot complete within the predetermined time; an executing step of executing the part of the process which can be completed within the predetermined time by the first processing unit; and transmitting an execution result of the part of the process which cannot be completed within the predetermined time executed by the second processing unit to a previous processing unit via the communication network. The program causes a computer including the first processing unit to execute a receiving step by the first processing unit, and an output step by the first processing unit to generate an output result based on an execution result of a portion of the processing executed by the first processing unit that can be completed within the specified time and an execution result of a portion of the processing executed by the second processing unit that cannot be completed within the specified time, and outputs the output result to an output unit , wherein the multiple processes executed by the first information include a process of roughly drawing a graph, a process of finely drawing a graph which has a greater processing load than the process of roughly drawing the graph, and a process of analyzing the graph, and the portion of the processing that cannot be completed within the specified time includes at least one of the process of finely drawing the graph and the process of analyzing the graph .

本発明の一態様に係る情報処理方法は、サーバ装置と通信する情報処理装置が実行する情報処理方法であって、入力部により入力された第1の情報を受け付ける受付ステップと、前記第1の情報に基づいて実行される複数の処理に、所定の時間内に実行終了不可能な一部の処理が含まれる場合に、前記所定の時間内に実行終了不可能な一部の処理を示す情報を、通信ネットワークを介して前記サーバ装置に送信する送信ステップと、前記複数の処理のうち前記所定の時間内に実行終了不可能な一部の処理を除いた前記所定の時間内に実行終了可能な一部の処理を実行する実行ステップと、前記第2の情報に基づいて前記サーバ装置により実行された前記所定の時間内に実行終了不可能な一部の処理の実行結果を、前記通信ネットワークを介して受信する受信ステップと、前記所定の時間内に実行終了可能な一部の処理の実行結果と、前記サーバ装置により実行された前記所定の時間内に実行終了不可能な一部の処理の実行結果とに基づいて出力結果を生成して出力部に出力する出力ステップと、と含み、前記第1の情報により実行される前記複数の処理は、グラフを粗く描画する処理と、前記グラフを粗く描画する処理よりも処理の負荷が大きいグラフを細かく描画する処理と、前記グラフに関する解析をする処理とを含み、前記所定の時間内に実行終了不可能な一部の処理は、前記グラフを細かく描画する処理、及び、該グラフに関する解析をする処理の少なくとも一方を含む情報処理方法である。 An information processing method according to one aspect of the present invention is an information processing method executed by an information processing device communicating with a server device, the method including: a receiving step of receiving first information input by an input unit; a transmission step of transmitting information indicating the part of the processes that cannot be completed within a predetermined time to the server device via a communication network when a part of the processes executed based on the first information includes a part of the processes that cannot be completed within the predetermined time ; an execution step of executing a part of the processes that can be completed within the predetermined time, excluding the part of the processes that cannot be completed within the predetermined time, among the plurality of processes; and an execution step of executing a part of the processes that cannot be completed within the predetermined time, executed by the server device based on the second information. and an output step of generating an output result based on the execution results of a portion of the processes that can be completed within the specified time and the execution results of a portion of the processes executed by the server device that cannot be completed within the specified time, and outputting the output result to an output unit , wherein the plurality of processes executed by the first information include a process of roughly drawing a graph, a process of finely drawing a graph that has a greater processing load than the process of roughly drawing the graph, and a process of analyzing the graph, and the portion of the processes that cannot be completed within the specified time includes at least one of the process of finely drawing the graph and the process of analyzing the graph .

本発明の一態様に係る情報処理装置は、サーバ装置と通信する通信部と、入力部と、出力部と、前記入力部により入力された処理を実行するための第1の情報に基づいて実行される複数の処理のうち所定の時間内に実行終了可能な一部の処理を実行する制御部と、を備えた情報処理装置であって、前記制御部は、前記第1の情報に基づいて実行される複数の処理に、前記制御部が前記所定の時間内に実行終了不可能な一部の処理が含まれる場合に、前記所定の時間内に実行終了不可能な一部の処理を示す情報を、前記通信部により通信ネットワークを介して前記サーバ装置へ送信し、前記所定の時間内に実行終了可能な一部の処理を実行し、前記サーバ装置により実行された前記所定の時間内に実行終了不可能な一部の処理の実行結果を、前記通信ネットワークを介して前記通信部により受信し、前記所定の時間内に実行終了可能な一部の処理の実行結果と、前記サーバ装置により実行された前記所定の時間内に実行終了不可能な一部の処理の実行結果とに基づいて出力結果を生成して前記出力部に出力し、前記第1の情報により実行される前記複数の処理は、グラフを粗く描画する処理と、前記グラフを粗く描画する処理よりも処理の負荷が大きいグラフを細かく描画する処理と、前記グラフに関する解析をする処理とを含み、前記所定の時間内に実行終了不可能な一部の処理は、前記グラフを細かく描画する処理、及び、該グラフに関する解析をする処理の少なくとも一方を含む、情報処理装置である。 An information processing device according to one aspect of the present invention is an information processing device including a communication unit that communicates with a server device, an input unit, an output unit, and a control unit that executes a part of a plurality of processes that can be completed within a predetermined time among the plurality of processes that are executed based on first information for executing a process input by the input unit, and when the plurality of processes that are executed based on the first information include a part of a process that the control unit cannot complete within the predetermined time, the control unit transmits information indicating the part of the process that cannot be completed within the predetermined time to the server device via a communication network using the communication unit, executes the part of the process that can be completed within the predetermined time, and transmits the part of the process that can be completed within the predetermined time executed by the server device. The information processing device receives execution results of a portion of the processing that cannot be completed within the specified time by the communication unit via the communication network, generates output results based on the execution results of a portion of the processing that can be completed within the specified time and the execution results of a portion of the processing executed by the server device that cannot be completed within the specified time, and outputs the output results to the output unit, wherein the multiple processes executed by the first information include a process of roughly drawing a graph, a process of finely drawing a graph which has a greater processing load than the process of roughly drawing the graph, and a process of analyzing the graph, and the portion of the processing that cannot be completed within the specified time includes at least one of the process of finely drawing the graph and the process of analyzing the graph .

本発明の一態様に係る情報処理システムは、処理を実行するための第1の情報を入力する入力部と、前記入力部と接続され、前記第1の情報に基づいて実行される複数の処理のうち所定の時間内に実行終了可能な一部の処理を実行可能な第1の処理部と、通信ネットワークを介して前記第1の処理部と接続され、前記第1の情報に基づいて実行される複数の処理のうち前記第1の処理部が前記所定の時間内に実行終了不可能な一部の処理を実行可能な第2の処理部と、前記複数の処理の実行結果を出力する出力部と、を含み、前記第1の処理部は、前記第1の情報に基づいて実行される複数の処理に、前記第1の処理部が前記所定の時間内に実行終了不可能な一部の処理が含まれる場合に、前記所定の時間内に実行終了不可能な一部の処理を示す情報を、通信ネットワークを介して前記第1の処理部より第2の処理部に送信し、前記第2の処理部により実行された前記所定の時間内に実行終了不可能な一部の処理の実行結果を、前記通信ネットワークを介して受信し、前記第1の処理部により実行された前記所定の時間内に実行終了可能な一部の処理の実行結果と、前記第2の処理部により実行された前記所定の時間内に実行終了不可能な一部の処理の実行結果とに基づいて出力結果を生成して前記出力部に出力し、前記第1の情報により実行される前記複数の処理は、グラフを粗く描画する処理と、前記グラフを粗く描画する処理よりも処理の負荷が大きいグラフを細かく描画する処理と、前記グラフに関する解析をする処理とを含み、前記所定の時間内に実行終了不可能な一部の処理は、前記グラフを細かく描画する処理、及び、該グラフに関する解析をする処理の少なくとも一方を含む、情報処理システムである。 An information processing system according to one aspect of the present invention includes an input unit that inputs first information for executing a process, a first processing unit connected to the input unit and capable of executing a portion of a plurality of processes that can be completed within a predetermined time period out of the plurality of processes that are executed based on the first information, a second processing unit connected to the first processing unit via a communication network and capable of executing a portion of a plurality of processes that cannot be completed within the predetermined time period by the first processing unit out of the plurality of processes that are executed based on the first information, and an output unit that outputs execution results of the plurality of processes, wherein when the plurality of processes that are executed based on the first information include a portion of a process that cannot be completed within the predetermined time period by the first processing unit, the first processing unit outputs information indicating the portion of a process that cannot be completed within the predetermined time period from the first processing unit via the communication network to the second processing unit. an information processing system that transmits execution results of a portion of the processing executed by the first processing unit that cannot be completed within the specified time via the communication network, generates an output result based on the execution results of the portion of the processing executed by the first processing unit that can be completed within the specified time and the execution results of the portion of the processing executed by the second processing unit that cannot be completed within the specified time, and outputs the output result to the output unit, wherein the plurality of processes executed based on the first information include a process of roughly drawing a graph, a process of finely drawing a graph which has a greater processing load than the process of roughly drawing the graph, and a process of analyzing the graph, and the portion of the processing that cannot be completed within the specified time includes at least one of the process of finely drawing the graph and the process of analyzing the graph .

上記の態様によれば、サーバ装置と通信する情報処理装置を利用して情報を処理する際に、処理結果の一部を先行して表示することができ、処理結果が表示されるまでの待ち時間が長くなることを抑制することができる。 According to the above aspect, when processing information using an information processing device that communicates with a server device, a portion of the processing result can be displayed in advance, thereby preventing a long wait time until the processing result is displayed.

情報処理システムの一例を示す図である。FIG. 1 illustrates an example of an information processing system. 端末装置のハードウェア構成を例示する図である。FIG. 2 is a diagram illustrating an example of a hardware configuration of a terminal device. 演算サーバのハードウェア構成を例示する図である。FIG. 2 is a diagram illustrating an example of a hardware configuration of a processing server. 第1の実施形態に係る情報処理システムで行われる処理を説明するシーケンス図である。FIG. 2 is a sequence diagram illustrating processing performed in the information processing system according to the first embodiment. 端末装置の表示装置に表示される画面の一例を説明する図である。FIG. 11 is a diagram illustrating an example of a screen displayed on a display device of the terminal device. 第2の実施形態に係る情報処理システムで行われる処理を説明するシーケンス図である。FIG. 11 is a sequence diagram illustrating a process performed in an information processing system according to a second embodiment. 端末装置で行われる処理の更に別の例を説明するフローチャートである。13 is a flowchart illustrating yet another example of the process performed by the terminal device.

以下、図面を参照しながら、本発明に係る情報処理システムの実施形態を説明する。なお、以下の説明では、情報処理システムの一例として、Webブラウザ上でグラフや図形を描画することが可能なグラフ描画用のWebアプリケーション(以下「グラフ描画アプリケーション」という)を利用してグラフや図形を描画する処理を行う情報処理システムを挙げる。また、以下の説明では、例示する情報処理システムのうちの、既知の情報処理システムと同様のハードウェア構成、機能構成、及び動作(処理)についての詳細な説明を省略する。 Below, an embodiment of an information processing system according to the present invention will be described with reference to the drawings. In the following description, an example of an information processing system will be given, which performs processing to draw graphs and figures using a graph drawing web application (hereinafter referred to as a "graph drawing application") capable of drawing graphs and figures on a web browser. In the following description, detailed descriptions of the hardware configuration, functional configuration, and operation (processing) of the illustrated information processing system that are the same as those of known information processing systems will be omitted.

図1は、情報処理システムの一例を示す図である。 Figure 1 shows an example of an information processing system.

図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が含まれてもよい。 The information processing system 1 illustrated in FIG. 1 includes a terminal device 2, a Web server 3, and a calculation server 4. The terminal device 2 is an information processing terminal having a communication function, such as a general-purpose computer such as a desktop computer, a notebook computer, or a tablet computer, or a smartphone. The terminal device 2 can use the communication function to connect to a communication network 5 such as the Internet and communicate with an external device such as a Web server 3 via the communication network 5. The Web server 3 is a server device that is connected to the communication network 5 and provides a graph drawing application to the terminal device 2 via the communication network 5. The Web server 3 is also connected to the calculation server 4. The calculation server 4 is a server device that performs calculations of mathematical expressions in the graph drawing application provided by the Web server 3. The calculation of mathematical expressions and the drawing of graphs performed in the information processing system 1 using the graph drawing application are examples of processes performed in the information processing system 1. Note that, although only one terminal device 2 is shown in the information processing system 1 illustrated in FIG. 1, the information processing system 1 may include two or more terminal devices 2.

図2は、端末装置のハードウェア構成を例示する図である。端末装置2は、上述したように通信機能を有する情報処理端末であり、例えば、図2に示したように、プロセッサ10、主記憶装置11、補助記憶装置12、入力装置13、表示装置14、入出力インタフェース15、通信装置16、及び媒体駆動装置17を含む。端末装置2におけるこれらの構成要素は、バス18により相互に接続される。 Figure 2 is a diagram illustrating an example of the hardware configuration of a terminal device. As described above, the terminal device 2 is an information processing terminal having a communication function, and includes, for example, a processor 10, a main memory device 11, an auxiliary memory device 12, an input device 13, a display device 14, an input/output interface 15, a communication device 16, and a media drive device 17, as shown in Figure 2. These components in the terminal device 2 are interconnected by a bus 18.

プロセッサ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)により実装されてもよい。 The processor 10 is, for example, a CPU (Central Processing Unit) and controls the operation of the terminal device 2 by executing various programs including an OS (Operation System) and an arithmetic processing program described below. The main memory device 11 includes a ROM (Read Only Memory) and a RAM (Random Access Memory) and stores the programs executed by the processor 10 and data used during the execution of the programs. Some of the functions of the processor 10 and the main memory device 11 that execute the programs may be implemented, for example, by an FPGA (Field Programmable Gate Array) or an ASIC (Application Specific Integrated Circuit).

補助記憶装置12は、例えば、HDD(Hard Disk Drive)やSSD(Solid State Drive)等の、主記憶装置11と比べて記憶容量の大きい記憶装置である。補助記憶装置12には、プロセッサ10が実行するプログラム、及びプログラムの実行中に利用するデータ等が記憶される。 The auxiliary storage device 12 is a storage device, such as a hard disk drive (HDD) or a solid state drive (SSD), that has a larger storage capacity than the main storage device 11. The auxiliary storage device 12 stores programs executed by the processor 10 and data used during program execution.

入力装置13は、例えば、キーボード装置やマウス装置等である。表示装置14は、例えば、液晶表示装置等のフラットパネルディスプレイである。端末装置2がタブレット型コンピュータやスマートフォン等のタッチパネルディスプレイを備えた装置である場合、入力装置13は、例えば、表示装置14の表示面に重ねて配置されたデジタイザ(位置検出器)であってもよい。 The input device 13 is, for example, a keyboard device or a mouse device. The display device 14 is, for example, a flat panel display such as a liquid crystal display device. If the terminal device 2 is a device equipped with a touch panel display such as a tablet computer or a smartphone, the input device 13 may be, for example, a digitizer (position detector) arranged over the display surface of the display device 14.

入出力インタフェース15は、端末装置2と、該端末装置2で利用可能な種々の周辺機器とを接続するハードウェアインタフェースであり、例えば、USB(Universal Serial Bus)端子を有する。通信装置16は、端末装置2をインターネット等の通信ネットワーク5に接続し、通信ネットワーク5を介してWebサーバ3等の外部装置と通信する。媒体駆動装置17は、対応する可搬型記録媒体19から情報を読み出すこと、及び対応する可搬型記録媒体19に情報を書き込む(格納する)ことが可能な装置である。可搬型記録媒体19は、光ディスク、磁気ディスク、及び光磁気ディスク、並びにメモリカード等の半導体メモリを含む。可搬型記録媒体19は、読み出し専用のものであってもよいし、読み出し及び書き込みが可能なものであってもよい。 The input/output interface 15 is a hardware interface that connects the terminal device 2 with various peripheral devices that can be used by the terminal device 2, and has, for example, a USB (Universal Serial Bus) terminal. The communication device 16 connects the terminal device 2 to a communication network 5 such as the Internet, and communicates with external devices such as a web server 3 via the communication network 5. The medium drive device 17 is a device that can read information from a corresponding portable recording medium 19 and write (store) information to the corresponding portable recording medium 19. Portable recording media 19 include optical disks, magnetic disks, and magneto-optical disks, as well as semiconductor memories such as memory cards. The portable recording media 19 may be read-only, or may be readable and writable.

なお、端末装置2のハードウェア構成は、図2に例示した構成に限らず、幾つかの構成要素が省略又は統合されていてもよいし、図2には示していない構成要素が含まれてもよい。 The hardware configuration of the terminal device 2 is not limited to the configuration illustrated in FIG. 2, and some components may be omitted or integrated, and components not shown in FIG. 2 may be included.

図3は、演算サーバのハードウェア構成を例示する図である。演算サーバ4は、上述したように、Webサーバ3が提供するグラフ描画アプリケーションにおける数式の演算を行うサーバ装置である。演算サーバ4は、例えば、図3に示したように、プロセッサ20、主記憶装置21、補助記憶装置22、入出力インタフェース23、及び通信装置24を含む。サーバ装置4におけるこれらの構成要素は、バス25により相互に接続される。 Figure 3 is a diagram illustrating an example of the hardware configuration of the calculation server. As described above, the calculation server 4 is a server device that performs calculations of mathematical expressions in a graph drawing application provided by the Web server 3. For example, as shown in Figure 3, the calculation server 4 includes a processor 20, a main memory device 21, an auxiliary memory device 22, an input/output interface 23, and a communication device 24. These components in the server device 4 are connected to each other by a bus 25.

プロセッサ20は、例えば、CPUであり、OS及び演算処理プログラムを含む各種のプログラムを実行することにより、演算サーバ4の動作を制御する。主記憶装置21は、ROM及びRAMを含み、プロセッサ20が実行するプログラム、及びプログラムの実行中に利用するデータ等が記憶される。 The processor 20 is, for example, a CPU, and controls the operation of the computation server 4 by executing various programs including an OS and computation processing programs. The main memory device 21 includes a ROM and a RAM, and stores the programs executed by the processor 20 and data used during the execution of the programs.

補助記憶装置22は、例えば、HDDやSSD等の、主記憶装置21と比べて記憶容量の大きい記憶装置である。補助記憶装置22には、プロセッサ20が実行するプログラム、及びプログラムの実行中に利用するデータ等が記憶される。 The auxiliary storage device 22 is a storage device, such as an HDD or SSD, that has a larger storage capacity than the main storage device 21. The auxiliary storage device 22 stores the programs executed by the processor 20 and data used during the execution of the programs.

入出力インタフェース23は、演算サーバ4と、該演算サーバ4で利用可能な種々の周辺機器とを接続するハードウェアインタフェースであり、例えば、USB端子を有する。通信装置24は、Webサーバ3と通信する。 The input/output interface 23 is a hardware interface that connects the calculation server 4 to various peripheral devices that can be used by the calculation server 4, and has, for example, a USB terminal. The communication device 24 communicates with the web server 3.

なお、演算サーバ4のハードウェア構成は、図3に例示した構成に限らず、幾つかの構成要素が省略又は統合されていてもよいし、図3には示していない構成要素が含まれてもよい。演算サーバ4は、入力装置、表示装置、及び媒体駆動装置のうちの1つ以上を含んでもよい。 The hardware configuration of the calculation server 4 is not limited to the configuration illustrated in FIG. 3, and some components may be omitted or integrated, or components not illustrated in FIG. 3 may be included. The calculation server 4 may include one or more of an input device, a display device, and a media driver.

図1に例示した情報処理システム1における端末装置2は、例えば、Webブラウザを利用して、Webサーバ3により提供されるグラフ描画アプリケーションを実行することができる。例えば、端末装置2の利用者がWebブラウザ(グラフ描画アプリケーションのユーザインタフェース)に表示された数式入力欄に数式情報を入力すると、該数式情報が通信ネットワーク5を介してWebサーバ3に送信される。Webサーバ3は、受信した数式情報に基づく演算処理を演算サーバ4に行わせる。演算サーバ4による演算処理の結果は、Webサーバ3から端末装置2に送信され、演算処理の結果を受信した端末装置2は、その結果に基づくグラフを描画して表示装置14に表示させる。上記の数式情報は、情報処理システム1において処理を実行するための第1の情報の一例である。 The terminal device 2 in the information processing system 1 illustrated in FIG. 1 can execute a graph drawing application provided by the Web server 3, for example, using a Web browser. For example, when a user of the terminal device 2 inputs formula information into a formula input field displayed on the Web browser (a user interface of the graph drawing application), the formula information is transmitted to the Web server 3 via the communication network 5. The Web server 3 causes the calculation server 4 to perform calculation processing based on the received formula information. The results of the calculation processing by the calculation server 4 are transmitted from the Web server 3 to the terminal device 2, and the terminal device 2, having received the results of the calculation processing, draws a graph based on the results and displays it on the display device 14. The above formula information is an example of first information for executing processing in the information processing system 1.

なお、本発明に係る情報処理システム1では、以下に説明するように、数式情報に基づく演算処理のうちの一部の処理を、端末装置2でも行うことができる。 In addition, in the information processing system 1 according to the present invention, as described below, some of the calculation processing based on the mathematical formula information can also be performed by the terminal device 2.

[第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により実行された処理の実行結果とに基づいて生成される出力結果を出力する出力部の一例である。
[First embodiment]
FIG. 4 is a sequence diagram for explaining the processing performed in the information processing system according to the first embodiment. The sequence diagram in FIG. 4 shows an embodiment of the processing performed by the terminal device 2 and the calculation server 4 in the information processing system 1 described with reference to FIGS. 1 to 3. The input device 13 of the terminal device 2 in FIG. 4 is an example of an input unit that inputs formula information (first information) for executing processing in the information processing system 1. The calculation processing unit 26 of the terminal device 2 in FIG. 4 is an example of a first processing unit that can execute a part of the calculation processing among the multiple calculation processing executed in the information processing system 1 based on the formula information input by the input device 13. The calculation processing unit 26 corresponds to a combination of multiple hardware configurations including the processor 10 that executes a calculation processing program related to a graph drawing application, the main storage device 11, and the communication device 16. The display device 14 of the terminal device 2 in FIG. 4 is an example of an output unit that outputs an output result generated based on the execution result of the processing executed by the calculation processing unit (first processing unit) 26 and the execution result of the processing executed by the calculation server (second processing unit) 4.

端末装置2でグラフ描画アプリケーションの利用を開始した後、端末装置2の利用者が入力装置13を利用してWebブラウザ(グラフ描画アプリケーションのユーザインタフェース)の入力欄に数式情報を入力すると(ステップS1)、入力された数式情報が演算処理部26に転送される(ステップS2)。演算処理部26は、その数式情報を含む表示データを表示装置14に表示させる(ステップS3)。その後、端末装置2の利用者が入力装置13を利用してグラフを描画する処理の実行命令を入力すると(ステップS4)、入力された実行命令が演算処理部26に転送される(ステップS5)。 After starting to use the graph drawing application on the terminal device 2, the user of the terminal device 2 uses the input device 13 to input formula information into an input field of the web browser (the user interface of the graph drawing application) (step S1), and the input formula information is transferred to the calculation processing unit 26 (step S2). The calculation processing unit 26 causes the display device 14 to display display data including the formula information (step S3). Thereafter, when the user of the terminal device 2 uses the input device 13 to input an execution command for a process of drawing a graph (step S4), the input execution command is transferred to the calculation processing unit 26 (step S5).

実行命令が入力されると、演算処理部26は、数式情報をWebサーバ3に転送する(ステップS6)。Webサーバ3に転送された数式情報は、更に演算サーバ4に転送される(ステップS7)。 When an execution command is input, the calculation processing unit 26 transfers the formula information to the Web server 3 (step S6). The formula information transferred to the Web server 3 is further transferred to the calculation server 4 (step S7).

数式情報をWebサーバ3に転送した後、演算処理部26は、Webサーバ3に転送した数式情報(第1の情報)に基づく演算処理のなかに、自装置で実行可能な処理が有るか否かを判定する(ステップS8)。自装置(端末装置2)で実行可能な処理は、端末装置2において所定の時間内に終了するとみなされる処理であり、実行可能か否かは、例えば、数式の複雑さ、端末装置2の処理能力等に基づいて判定される。例えば、数値、円周率、及び三角関数等を用いて表現される四則演算(例えば、y=1/π(sin(x)+1/9sin(3x))等)をプロットする処理は、端末装置2で実行可能な処理とみなされる。また、例えば、変数の微分(例えば、y=d/dx(x)等)等の処理は、端末装置2で実行不可の処理とみなされる。実行可能な処理が有る場合(ステップS8;YES)、演算処理部26は、自装置で実行可能な処理のみを実行する(ステップS9)。なお、ステップS9において、演算処理部26は、入力された数式情報に基づく全ての演算処理を実行することもあり得る。 After transferring the formula information to the Web server 3, the calculation processing unit 26 judges whether or not there is a process executable by the own device among the calculation processes based on the formula information (first information) transferred to the Web server 3 (step S8). A process executable by the own device (terminal device 2) is a process that is deemed to be completed within a predetermined time in the terminal device 2, and whether or not it is executable is judged based on, for example, the complexity of the formula, the processing capacity of the terminal device 2, etc. For example, a process of plotting arithmetic operations expressed using numerical values, pi, trigonometric functions, etc. (e.g., y=1/π(sin(x)+1/9sin(3x)) etc.) is deemed to be executable by the terminal device 2. In addition, a process such as differentiation of variables (e.g., y=d/dx(x 2 ) etc.) is deemed to be inexecutable by the terminal device 2. If there is an executable process (step S8; YES), the calculation processing unit 26 executes only the process executable by the own device (step S9). In step S9, the calculation processing unit 26 may execute all the calculation processes based on the input mathematical formula information.

ステップS9の演算処理が終了すると、演算処理部26は、その処理の結果を表示装置14に出力する(ステップS10,S11)。演算処理部26は、処理結果に基づくグラフを描画し、該描画したグラフの画像データを生成し(ステップS10)、バス18を介して表示装置14に転送する(ステップS11)。表示装置14は、転送されたグラフの画像データを処理結果として表示する(ステップS12)。数式情報に基づく演算処理のうちの全ての演算処理が自装置で実行可能であった場合、ステップS12において数式情報と対応したグラフの描画(表示)をすることにより、入力された数式情報(第1の情報)に基づいて行われる全ての処理の実行結果を含むグラフ(出力結果)が表示装置14に表示される。これに対し、数式情報に基づく演算処理のうちの一部の演算処理のみが自装置で実行可能であった場合、ステップS12で表示されるグラフは、数式情報(第1の情報)に基づいて実行される複数の処理のうちの演算処理部(第1の処理部)26により実行不可な処理の実行結果が不足したグラフとなる。このため、ステップS9において数式情報に基づく演算処理のうちの一部の演算処理のみを実行した場合、演算処理部26は、ステップS10の処理の後、演算サーバ4における演算処理の結果の受信を待つ。 When the calculation process of step S9 is completed, the calculation processing unit 26 outputs the result of the process to the display device 14 (steps S10 and S11). The calculation processing unit 26 draws a graph based on the processing result, generates image data of the drawn graph (step S10), and transfers it to the display device 14 via the bus 18 (step S11). The display device 14 displays the transferred image data of the graph as the processing result (step S12). If all of the calculation processes based on the formula information are executable by the device, a graph (output result) including the execution results of all the processes performed based on the input formula information (first information) is displayed on the display device 14 by drawing (displaying) a graph corresponding to the formula information in step S12. On the other hand, if only a part of the calculation processes based on the formula information is executable by the device, the graph displayed in step S12 is a graph in which the execution results of the processes that cannot be executed by the calculation processing unit (first processing unit) 26 among the multiple processes executed based on the formula information (first information) are missing. Therefore, if only a portion of the calculation processing based on the mathematical formula information is performed in step S9, the calculation processing unit 26 waits to receive the results of the calculation processing in the calculation server 4 after processing in step S10.

一方、転送した数式情報に基づく演算処理のなかに自装置で実行可能な処理が無い場合(ステップS8;NO)、演算処理部26は、ステップS9及びS10の処理を行わずに、演算サーバ4における演算処理の結果の受信を待つ。 On the other hand, if there is no processing that can be executed by the own device among the calculation processing based on the transferred formula information (step S8; NO), the calculation processing unit 26 does not perform the processing of steps S9 and S10, and waits to receive the results of the calculation processing in the calculation server 4.

端末装置2の演算処理部26がステップS8以降の処理を行っている間、演算サーバ4は、受信した数式情報に基づく全ての演算処理を実行し(ステップS13)、実行した演算処理の結果をWebサーバ3に出力する(ステップS14)。Webサーバ3は、演算サーバ4から受信した演算処理の結果を端末装置2に送信する(ステップS15)。 While the calculation processing unit 26 of the terminal device 2 is performing the processes from step S8 onwards, the calculation server 4 executes all calculation processes based on the received mathematical formula information (step S13) and outputs the results of the executed calculation processes to the Web server 3 (step S14). The Web server 3 transmits the results of the calculation processes received from the calculation server 4 to the terminal device 2 (step S15).

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で入力された数式情報に対する処理を終了する。 When the result of the calculation process is received from the Web server 3, the calculation processing unit 26 of the terminal device 2 determines whether there is an undisplayed result (i.e., a result of the calculation process that is not displayed on the display device 14) (step S16). In step S16, the calculation processing unit 26 determines that there is an undisplayed result if there is a process that has not been executed in step S9 among all the processes executed based on the input formula information. If there is an undisplayed result (step S16; YES), the calculation processing unit 26 generates image data that draws a graph including the undisplayed result and outputs it to the display device 14 (steps S17, S18), and displays the image data on the display device 14 (step S19). The image data including the undisplayed result may be image data generated based on the result of the calculation process executed by the calculation processing unit 26 and supplemented (combined) with the result of the calculation process not executed by the calculation processing unit 26, or may be image data rewritten (newly generated) based on the results of all the calculation processes executed by the calculation server 4. On the other hand, if there are no undisplayed results (step S16; NO), the calculation processing unit 26 does not perform the process of step S17 and ends the process for the formula information input in step S1.

このように、本実施形態の情報処理システム1の端末装置2は、入力装置13に対する入力操作により受け付けた数式情報(第1の情報)に基づく演算処理に自装置で実行可能な演算処理が含まれる場合、数式情報に基づく全ての演算処理を演算サーバ(第2の処理部)4に実行させる一方で、自装置の演算処理部(第1の処理部)26で実行可能な演算処理を実行し、その処理結果を表示装置14に表示させる。 In this way, when the terminal device 2 of the information processing system 1 of this embodiment includes a calculation process that can be executed by the device itself among the calculation processes based on the formula information (first information) received by input operation on the input device 13, the terminal device 2 causes the calculation server (second processing unit) 4 to execute all calculation processes based on the formula information, while executing the calculation processes that can be executed by the calculation processing unit (first processing unit) 26 of the device itself and displays the processing results on the display device 14.

図5は、端末装置の表示装置に表示される画面の一例を説明する図である。 Figure 5 is a diagram illustrating an example of a screen displayed on the display device of a terminal device.

端末装置2は、数式情報の入力(ステップS1)及び実行命令の入力(ステップS3)を受け付けると、上述したように、数式情報をWebサーバ3(演算サーバ4)に転送する(ステップS6)。このとき、端末装置2の表示装置14に表示されたWebブラウザ(グラフ描画用のユーザインタフェース)は、例えば、図5に例示したような画面30を含む。画面30は、数式を入力する数式入力欄31と、入力した数式に基づいて描画されるグラフに対する解析の内容を入力する解析内容入力欄32と、グラフを表示するグラフ表示領域33とを含む。ステップS1で入力を受け付ける数式情報は、数式入力欄31に入力される数式を含み、解析内容入力欄32に解析の内容が入力された場合には、その解析の内容も含む。なお、画面30の数式入力欄31に例示した数式及び解析内容入力欄32に例示した解析の内容は、それぞれ、入力可能な数式及び解析の内容を模式的(抽象的)に示したものであり、実際に入力する数式や解析の内容は適宜変更可能である。 When the terminal device 2 receives the input of the formula information (step S1) and the input of the execution command (step S3), it transfers the formula information to the Web server 3 (calculation server 4) as described above (step S6). At this time, the Web browser (user interface for drawing graphs) displayed on the display device 14 of the terminal device 2 includes a screen 30 as shown in FIG. 5, for example. The screen 30 includes a formula input field 31 for inputting a formula, an analysis content input field 32 for inputting the contents of an analysis of a graph drawn based on the input formula, and a graph display area 33 for displaying the graph. The formula information received in step S1 includes the formula input in the formula input field 31, and if the contents of the analysis are input in the analysis content input field 32, it also includes the contents of the analysis. Note that the formulas shown in the formula input field 31 on the screen 30 and the analysis contents shown in the analysis content input field 32 are schematic (abstract) representations of the formulas and analysis contents that can be input, respectively, and the formulas and analysis contents that are actually input can be changed as appropriate.

数式情報をWebサーバ3(演算サーバ4)に転送した後、端末装置2は、数式情報に基づく演算処理のなかに自装置で実行可能な処理が有るか否かを判定する(ステップS8)。例えば、数式情報に基づく演算処理が、数式入力欄31に入力された数式と対応するグラフをグラフ表示領域33にプロットするための演算処理と、そのグラフにおける条件Aを満たす点を抽出する解析処理とが含まれる場合、端末装置2の演算処理部26は、これら2つの処理のそれぞれについて、自装置で実行可能であるか否かを判定する。自装置で実行可能であるか否かは、例えば、数式入力欄31に入力された数式の複雑さや、端末装置2の処理能力等に基づいて判定する。すなわち、端末装置2において実行可能であるか否かの判定は、例えば、所定の時間内に処理を終了させることができるか否かの判定であり得る。 After transferring the formula information to the Web server 3 (calculation server 4), the terminal device 2 judges whether or not the calculation process based on the formula information includes a process that can be executed by the terminal device itself (step S8). For example, if the calculation process based on the formula information includes a calculation process for plotting a graph corresponding to the formula input in the formula input field 31 in the graph display area 33, and an analysis process for extracting points in the graph that satisfy condition A, the calculation processing unit 26 of the terminal device 2 judges whether or not each of these two processes can be executed by the terminal device itself. Whether or not the process can be executed by the terminal device itself is judged based on, for example, the complexity of the formula input in the formula input field 31 and the processing capacity of the terminal device 2. In other words, the judgment of whether or not the process can be executed by the terminal device 2 may be, for example, a judgment of whether or not the process can be completed within a predetermined time.

ステップS8の判定において、端末装置2の演算処理部26が、グラフをプロットするための演算処理及び解析処理のうちの、グラフをプロットするための演算処理のみを自装置で実行可能であると判定した場合、演算処理部26は、ステップS9において、グラフをプロットするための演算処理のみを実行する。この演算処理が終了すると、端末装置2の表示装置14には、図5に例示したようなグラフ表示領域33内にグラフ35が描画された画面34が表示される(ステップS12)。なお、画面34に例示した三角波のグラフ35は、演算処理部26により実行された処理の実行結果の一例を模式的に示したものであり、実際の処理においては、数式入力欄31に入力された具体的な数式と対応したグラフが表示される。 If the calculation processing unit 26 of the terminal device 2 determines in step S8 that only the calculation processing for plotting the graph out of the calculation processing and analysis processing for plotting the graph can be executed by the terminal device itself, the calculation processing unit 26 executes only the calculation processing for plotting the graph in step S9. When this calculation processing is completed, a screen 34 on which a graph 35 is drawn in a graph display area 33 as shown in FIG. 5 is displayed on the display device 14 of the terminal device 2 (step S12). Note that the triangular wave graph 35 shown on the screen 34 is a schematic representation of an example of the execution result of the processing executed by the calculation processing unit 26, and in the actual processing, a graph corresponding to the specific formula entered in the formula input field 31 is displayed.

画面34が表示された後、Webサーバ3(演算サーバ4)から数式情報に基づく全ての演算処理の結果を受信すると(ステップS15)、端末装置2の表示装置14には、グラフ35と自装置で行わなかった解析処理の結果を示す点37~46とがグラフ表示領域33内に描画された画面36が表示される(ステップS19)。なお、画面36に例示した解析処理の結果を示す点37~46は、演算サーバ4により実行された解析処理の実行結果の一例を模式的に示したものであり、実際の処理においては、数式入力欄31に入力された具体的な数式及び解析内容入力欄32に入力された具体的な解析の内容に対応した解析処理の結果が表示される。 After screen 34 is displayed, when all the results of the calculation process based on the formula information are received from the Web server 3 (calculation server 4) (step S15), screen 36 is displayed on the display device 14 of the terminal device 2 in the graph display area 33, showing a graph 35 and points 37 to 46 indicating the results of the analysis process that were not performed by the device itself (step S19). Note that points 37 to 46 indicating the results of the analysis process shown on screen 36 are schematic examples of an example of the results of the analysis process executed by the calculation server 4, and in actual processing, the results of the analysis process corresponding to the specific formula entered in the formula input field 31 and the specific analysis content entered in the analysis content input field 32 are displayed.

従来の情報処理システムのように、端末装置2に入力された数式情報(第1の情報)に基づく全ての演算処理を演算サーバ4に行わせた場合(すなわち、グラフをプロットするための演算処理を端末装置2で行わない場合)、時間t0に実行命令が入力された後、時間t2にグラフ35及び解析処理の結果(点37~46)がグラフ表示領域33内に描画された画面36を表示する。このため、例えば、Webサーバ3へのアクセスが集中して演算サーバ4で実行する演算処理の量が多くなった場合や、端末装置2とWebサーバ3との間での通信に遅延が生じた場合には、演算処理の結果が描画されていない画面30から描画された画面36に切り替わるまでの待ち時間が長くなってしまう。また、数式情報に基づく演算処理のなかに処理負荷の高い演算処理(例えば、不定積分や高次の多項式に関する解析処理等)が含まれる場合にも、演算処理の結果が描画されていない画面30から描画された画面に切り替わるまでの待ち時間が長くなってしまう。 In the case where all the calculation processes based on the formula information (first information) input to the terminal device 2 are performed by the calculation server 4 as in the conventional information processing system (i.e., the calculation process for plotting the graph is not performed by the terminal device 2), after an execution command is input at time t0, a screen 36 is displayed at time t2 in which the graph 35 and the results of the analysis process (points 37 to 46) are drawn in the graph display area 33. For this reason, for example, if the amount of calculation processes executed by the calculation server 4 increases due to concentrated access to the Web server 3, or if a delay occurs in communication between the terminal device 2 and the Web server 3, the waiting time until the screen 30 on which the results of the calculation process are not drawn is switched to the screen 36 on which the results are drawn becomes long. In addition, if the calculation processes based on the formula information include calculation processes with high processing loads (e.g., analysis processes related to indefinite integrals and high-order polynomials), the waiting time until the screen 30 on which the results of the calculation process are drawn is also long.

これに対し、本実施形態の情報処理システム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によりグラフを描画する際に、少なくとも一部の処理の結果が表示(出力)されるまでの時間を短くすることができ、数式情報に基づく処理を開始した後の処理結果が表示されていない時間(待ち時間)が長くなることを抑制することができる。 In contrast, in the terminal device 2 in the information processing system 1 of this embodiment, after an execution command is input at time t0, a screen 34 on which only the graph 35 is drawn in the graph display area 33 is displayed at time t1, which is before time t2, and a screen 36 on which the graph 35 and the results of the analysis process (points 37 to 46) are drawn in the graph display area 33 is displayed at time t2. That is, in the information processing system 1 of this embodiment, after an execution command is input in the terminal device 2, the results of some of the calculation processes executed in the terminal device 2 can be displayed prior to displaying (outputting) all the results of the calculation processes based on the formula information from the calculation server 4 on the terminal device 2. Therefore, even if the time until the screen 36 is displayed is long, the time until the screen 36 is switched from the screen 30 on which the results of the calculation process are not drawn to the screen 34 on which at least some of the results of the processing based on the formula information are drawn is shorter than the time until the screen 36 is displayed. Therefore, in the information processing system 1 of this embodiment, when a graph is drawn by the terminal device 2 that communicates with the Web server 3 (calculation server 4), the time until at least some of the processing results are displayed (output) can be shortened, and the time (waiting time) during which the processing results are not displayed after processing based on the formula information begins can be prevented from becoming long.

なお、本実施形態の情報処理システム1が行う処理は、図4に例示したシーケンス図に沿った処理に限らず、本実施形態の要旨を逸脱しない範囲において様々な変更、修正が可能である。例えば、本実施形態の情報処理システム1における端末装置2は、自装置で実行可能な処理のみを実行している途中で、演算サーバ4からの演算処理の結果を受信することもある。このため、端末装置2が行う処理は、例えば、ステップS9及びS10の処理が終了する前に演算サーバ4からの演算処理の結果を受信した場合には、その時点でステップS9の処理を終了し、演算サーバ4から受信した演算処理の結果を描画して表示装置14に表示させてもよい。すなわち、端末装置2は、自装置(演算処理部26)により実行する演算処理の実行結果と、演算サーバ4により実行された演算処理の実行結果のうち、早く処理が終了した方の実行結果を先に出力してもよい。 The processing performed by the information processing system 1 of this embodiment is not limited to the processing according to the sequence diagram illustrated in FIG. 4, and various changes and modifications are possible within the scope of the gist of this embodiment. For example, the terminal device 2 in the information processing system 1 of this embodiment may receive the result of the calculation processing from the calculation server 4 while executing only the processing that can be executed by the terminal device 2 itself. For this reason, when the terminal device 2 receives the result of the calculation processing from the calculation server 4 before the processing of steps S9 and S10 is completed, the processing of step S9 may be terminated at that point, and the result of the calculation processing received from the calculation server 4 may be drawn and displayed on the display device 14. In other words, the terminal device 2 may output the execution result of the calculation processing executed by its own device (calculation processing unit 26) and the execution result of the calculation processing executed by the calculation server 4, whichever is completed first.

[第2の実施形態]
図6は、第2の実施形態に係る情報処理システムで行われる処理を説明するシーケンス図である。図6のシーケンス図には、図1~図3を参照しながら説明した情報処理システム1における端末装置2及び演算サーバ4が行う処理の、第1の実施形態とは別の実施形態を概略的に示している。図6の端末装置2における入力装置13、演算処理部26、及び表示装置14は、それぞれ、第1の実施形態で説明した入力部、第1の処理部、及び出力部の一例である。演算処理部26は、グラフ描画アプリケーションに関する演算処理プログラムを実行するプロセッサ10、主記憶装置11、及び通信装置16を含む複数のハードウェア構成の組み合わせに対応する。
Second Embodiment
Fig. 6 is a sequence diagram for explaining the processing performed in the information processing system according to the second embodiment. The sequence diagram in Fig. 6 shows an embodiment, different from the first embodiment, of the processing performed by the terminal device 2 and the calculation server 4 in the information processing system 1 described with reference to Figs. 1 to 3. The input device 13, the calculation processing unit 26, and the display device 14 in the terminal device 2 in Fig. 6 are examples of the input unit, the first processing unit, and the output unit described in the first embodiment, respectively. The calculation processing unit 26 corresponds to a combination of a plurality of hardware configurations including the processor 10, the main storage device 11, and the communication device 16, which execute a calculation processing program related to a graph drawing application.

端末装置2でグラフ描画アプリケーションの利用を開始した後、端末装置2の利用者が入力装置13を利用してWebブラウザの入力欄に数式情報(第1の情報)を入力すると(ステップS1)、入力された数式情報が演算処理部26に転送される(ステップS2)。演算処理部26は、その数式情報を含む表示データを表示装置14に表示させる(ステップS3)。その後、端末装置2の利用者が入力装置13を利用してグラフを描画する処理の実行命令を入力すると(ステップS4)、入力された実行命令が演算処理部26に転送される(ステップS5)。 After starting to use the graph drawing application on the terminal device 2, the user of the terminal device 2 uses the input device 13 to input formula information (first information) into the input field of the web browser (step S1), and the input formula information is transferred to the calculation processing unit 26 (step S2). The calculation processing unit 26 causes the display device 14 to display display data including the formula information (step S3). Thereafter, when the user of the terminal device 2 uses the input device 13 to input an execution command for a process of drawing a graph (step S4), the input execution command is transferred to the calculation processing unit 26 (step S5).

実行命令が入力されると、本実施形態の端末装置2における演算処理部26は、まず、入力された数式情報に基づく演算処理のなかに自装置で実行不可の処理が有るか否かを判定する(ステップS31)。すなわち、本実施形態の端末装置2では、数式情報をWebサーバ3(演算サーバ4)に転送する前に、自装置で実行不可の処理が有るか否かを判定する。ステップS31において、演算処理部26は、例えば、第1の実施形態で説明したような数式の複雑さ、端末装置2の処理能力等に基づいて、自装置で実行不可の処理(例えば、所定の時間内に終了することができない処理)が有るか否かを判定する。すなわち、端末装置2において実行不可である処理は、例えば、端末装置2で実行した場合には処理時間が所定の時間よりも長くなるとみなされる、処理負荷の高い処理であり得る。 When an execution command is input, the calculation processing unit 26 in the terminal device 2 of this embodiment first determines whether or not there is any processing that cannot be executed by the device itself among the calculation processes based on the input formula information (step S31). That is, in the terminal device 2 of this embodiment, before transferring the formula information to the Web server 3 (calculation server 4), the calculation processing unit 26 determines whether or not there is any processing that cannot be executed by the device itself (for example, processing that cannot be completed within a specified time) based on, for example, the complexity of the formula as described in the first embodiment and the processing capacity of the terminal device 2. That is, a process that cannot be executed by the terminal device 2 may be, for example, a process with a high processing load that is considered to take longer than a specified time when executed by the terminal device 2.

実行不可の処理が無い場合(ステップS31;NO)、演算処理部26は、全ての演算処理を自装置で実行し(ステップS32)、その処理の結果を描画して表示装置14に出力する(ステップS36,S37)。この場合、表示装置14には、入力された数式情報に基づく全ての演算処理の結果と対応するグラフ及び解析結果が描画された画面が表示される(ステップS38)。 If there is no processing that cannot be executed (step S31; NO), the calculation processing unit 26 executes all calculation processing on its own device (step S32), and draws the results of the processing and outputs them to the display device 14 (steps S36, S37). In this case, a screen is displayed on the display device 14 depicting the results of all calculation processing based on the input formula information and the corresponding graphs and analysis results (step S38).

一方、実行不可の処理がある場合(ステップS31:YES)、演算処理部26は、数式情報をWebサーバ3に転送する(ステップS33)。Webサーバ3に転送された数式情報は、更に演算サーバ4に転送される(ステップS34)。 On the other hand, if there is a process that cannot be executed (step S31: YES), the calculation processing unit 26 transfers the formula information to the Web server 3 (step S33). The formula information transferred to the Web server 3 is further transferred to the calculation server 4 (step S34).

数式情報をWebサーバ3に転送した後、演算処理部26は、転送した数式情報に基づく複数の演算処理のうちの自装置で実行可能な処理のみを実行し(ステップS35)、その処理の結果を表示装置14に出力する(ステップS36,S37)。この場合、ステップS38で表示される画面のグラフは、入力された数式情報に基づく全ての演算処理のうちの自装置で実行不可の演算処理の結果と対応する情報が不足したグラフとなる。このため、ステップS35において数式情報に基づく演算処理のうちの一部の演算処理のみを実行した場合、演算処理部26は、ステップS36の処理の後、演算サーバ4における演算処理の結果の受信を待つ。 After transferring the formula information to the Web server 3, the calculation processing unit 26 executes only those processes that can be executed by the calculation processing unit 26 out of the multiple calculation processes based on the transferred formula information (step S35), and outputs the results of the processes to the display device 14 (steps S36, S37). In this case, the graph on the screen displayed in step S38 is a graph that lacks information corresponding to the results of the calculation processes that cannot be executed by the calculation processing unit 26 out of all the calculation processes based on the input formula information. Therefore, if only some of the calculation processes based on the formula information are executed in step S35, the calculation processing unit 26 waits to receive the results of the calculation processes in the calculation server 4 after the processing of step S36.

端末装置2の演算処理部26がステップS35以降の処理を行っている間、演算サーバ4は、受信した数式情報に基づく全ての演算処理を実行し(ステップS39)、実行した演算処理の結果をWebサーバ3に出力する(ステップS40)。Webサーバ3は、演算サーバ4から受信した演算処理の結果を端末装置2に送信する(ステップS41)。 While the calculation processing unit 26 of the terminal device 2 is performing the processes from step S35 onwards, the calculation server 4 executes all calculation processes based on the received mathematical formula information (step S39) and outputs the results of the executed calculation processes to the Web server 3 (step S40). The Web server 3 transmits the results of the calculation processes received from the calculation server 4 to the terminal device 2 (step S41).

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で入力された数式情報に対する処理を終了する。 When the calculation processing result is received from the Web server 3, the calculation processing unit 26 of the terminal device 2 determines whether there is an undisplayed result (i.e., a calculation processing result that is not displayed on the display device 14) (step S42). In the second embodiment, as described above, only when there is a calculation processing that cannot be executed on the own device (terminal device 2), all calculation processing based on the formula information is executed by the server device 4. Therefore, in step S42, when the calculation processing result is received from the Web server 3, the calculation processing unit 26 determines that there is an undisplayed result. If there is an undisplayed result (step S42; YES), the calculation processing unit 26 generates image data including the undisplayed result and outputs it to the display device 14 (steps S43, S44), and causes the image data to be displayed on the display device 14 (step S45). The image data including undisplayed results may be image data generated based on the results of the calculation processing executed by the calculation processing unit 26 and supplemented (combined) with the results of the calculation processing not executed by the calculation processing unit 26, or may be image data rewritten (newly generated) based on the results of all the calculation processing executed by the calculation server 4. On the other hand, if there are no undisplayed results (step S42; NO), the calculation processing unit 26 does not perform the process of step S43 and ends the process for the formula information input in step S1.

このように、本実施形態の情報処理システム1の端末装置2は、入力装置13に対する入力操作により受け付けた数式情報に基づく演算処理に自装置で実行不可の演算処理が含まれる場合、数式情報に基づく全ての演算処理を演算サーバ4に実行させる一方で、自装置で実行可能な演算処理を実行し、その演算結果を表示装置14に表示させる。このため、本実施形態の情報処理システム1は、第1の実施形態の情報処理システム1と同様、Webサーバ3(演算サーバ4)と通信する端末装置2によりグラフを描画する際に、少なくとも一部の処理の結果が表示(出力)されるまでの時間を短くすることができ、数式情報に基づく処理を開始した後の処理結果が表示されていない時間(待ち時間)が長くなることを抑制することができる。 In this way, when the terminal device 2 of the information processing system 1 of this embodiment includes a calculation process that cannot be executed by its own device among the calculation processes based on the formula information received by input operations on the input device 13, the terminal device 2 causes the calculation server 4 to execute all calculation processes based on the formula information, while executing the calculation processes that can be executed by its own device and displaying the calculation results on the display device 14. Therefore, like the information processing system 1 of the first embodiment, the information processing system 1 of this embodiment can shorten the time until the results of at least some of the processing are displayed (output) when a graph is drawn by the terminal device 2 communicating with the Web server 3 (calculation server 4), and can suppress a long time (waiting time) during which the processing results are not displayed after starting processing based on the formula information.

また、本実施形態の情報処理システム1における端末装置2は、入力された数式情報に基づく複数の演算処理の中に、自装置で実行不可の処理が含まれる場合にのみ、数式情報を演算サーバ4に転送する。このため、入力された数式情報に基づく全ての演算処理を自装置で実行可能である場合には、演算サーバ4に演算処理を実行させることなく、入力された数式情報に基づく全ての演算処理の結果を表示装置14に表示させることができる。したがって、本実施形態の情報処理システム1は、多数の端末装置2のそれぞれから受信した数式情報に基づく演算処理を実行し得る演算サーバ4の処理負荷の増大を抑制することもできる。 In addition, the terminal device 2 in the information processing system 1 of this embodiment transfers the mathematical formula information to the calculation server 4 only when the multiple calculation processes based on the input mathematical formula information include a process that cannot be executed by the own device. Therefore, when all calculation processes based on the input mathematical formula information can be executed by the own device, the results of all calculation processes based on the input mathematical formula information can be displayed on the display device 14 without having the calculation server 4 execute the calculation processes. Therefore, the information processing system 1 of this embodiment can also suppress an increase in the processing load of the calculation server 4 that can execute calculation processes based on the mathematical formula information received from each of the multiple terminal devices 2.

なお、本実施形態の情報処理システム1が行う処理は、図6に例示したシーケンス図に沿った処理に限らず、本実施形態の要旨を逸脱しない範囲において様々な変更、修正が可能である。例えば、本実施形態の情報処理システム1における端末装置2は、ステップS35及びそれに続くステップS36の処理が終了する前に演算サーバ4からの演算処理の結果を受信した場合には、その時点でステップS35又はそれに続くステップS36の処理を終了し、演算サーバ4から受信した演算処理の結果を描画して表示装置14に表示させてもよい。 The processing performed by the information processing system 1 of this embodiment is not limited to processing according to the sequence diagram illustrated in FIG. 6, and various changes and modifications are possible without departing from the gist of this embodiment. For example, when the terminal device 2 in the information processing system 1 of this embodiment receives the result of the calculation processing from the calculation server 4 before the processing of step S35 and the subsequent step S36 are completed, the terminal device 2 may terminate the processing of step S35 or the subsequent step S36 at that point, and may render the result of the calculation processing received from the calculation server 4 and display it on the display device 14.

また、例えば、本実施形態の情報処理システム1は、端末装置2で実行不可の演算処理がある場合に、数式情報に基づく複数の演算処理から端末装置2で実行可能な1つ以上の演算処理を除いた実行不可の演算処理のみを演算サーバ4に実行させてもよい。 In addition, for example, when there is a calculation process that cannot be executed by the terminal device 2, the information processing system 1 of this embodiment may cause the calculation server 4 to execute only the calculation process that cannot be executed, excluding one or more calculation processes that can be executed by the terminal device 2, from among the multiple calculation processes based on the formula information.

図7は、端末装置で行われる処理の更に別の例を説明するフローチャートである。端末装置2は、図6に例示したステップS31,S32,S33,S35,S36~S38,及びS42~S45の処理の代わりに、図7に例示したフローチャートに沿った処理を行うことができる。 Figure 7 is a flowchart illustrating yet another example of processing performed by the terminal device. The terminal device 2 can perform processing according to the flowchart illustrated in Figure 7 instead of the processing of steps S31, S32, S33, S35, S36 to S38, and S42 to S45 illustrated in Figure 6.

数式情報及び実行命令の入力を受け付けた端末装置2は、図7に例示したフローチャートに沿った処理を開始し、まず、全ての数値演算を自装置で実行可能であるか否かを判定する(ステップS51)。数値演算は、例えば、数式情報に含まれる数式のグラフを描画(プロット)するための演算処理であり、数式情報に基づいて演算サーバ4が実行することが可能な複数の演算処理のうちの処理負荷が比較的低い演算処理である。ステップS51の判定は、演算処理部26が行う。自装置で実行不可の数値演算がある場合(ステップS51;NO)、端末装置2の演算処理部26は、次に、自装置で実行不可の処理を示す情報を生成する(ステップS55)。自装置で実行不可の数値演算が有る場合、演算処理部26は、自装置で実行不可の処理を示す情報として、数式情報に基づく全ての演算処理が実行不可であることを示す情報を生成する。ステップS55の処理を行った場合に演算処理部26が続けて行う処理については後述する。 The terminal device 2 that has received the input of the formula information and the execution command starts processing according to the flowchart exemplified in FIG. 7, and first judges whether all the numerical calculations can be executed by the own device (step S51). The numerical calculation is, for example, a calculation process for drawing (plotting) a graph of the formula included in the formula information, and is a calculation process with a relatively low processing load among the multiple calculation processes that can be executed by the calculation server 4 based on the formula information. The judgment of step S51 is performed by the calculation processing unit 26. If there is a numerical calculation that cannot be executed by the own device (step S51; NO), the calculation processing unit 26 of the terminal device 2 next generates information indicating the processing that cannot be executed by the own device (step S55). If there is a numerical calculation that cannot be executed by the own device, the calculation processing unit 26 generates information indicating that all the calculation processes based on the formula information cannot be executed as information indicating the processing that cannot be executed by the own device. The processing that the calculation processing unit 26 subsequently performs when the processing of step S55 is performed will be described later.

全ての数値演算を自装置で実行可能な場合(ステップS51;YES)、演算処理部26は、次に、自装置で実行可能なグラフ解析が有るか否かを判定する(ステップS52)。グラフ解析は、例えば、数式情報に基づく演算処理の結果から描画されるグラフに関する解析処理(例えば、微分や不定積分等)である。実行可能なグラフ解析が無い場合(ステップS52;NO)、演算処理部26は、ステップS55の処理を行う。ステップS52において実行可能なグラフ解析が無いと判定した場合、演算処理部26は、自装置で実行不可の処理を示す情報として、数式情報に基づく演算処理のうちの、グラフ解析に関する複数の処理が実行不可であることを示す情報を生成する。 If all the numerical calculations can be performed on the own device (step S51; YES), the calculation processing unit 26 then determines whether or not there is any graph analysis that can be performed on the own device (step S52). The graph analysis is, for example, an analysis process (e.g., differentiation, indefinite integral, etc.) related to a graph drawn from the result of the calculation process based on the mathematical formula information. If there is no graph analysis that can be performed (step S52; NO), the calculation processing unit 26 performs the process of step S55. If it is determined in step S52 that there is no graph analysis that can be performed, the calculation processing unit 26 generates information indicating that multiple processes related to graph analysis, among the calculation processes based on the mathematical formula information, cannot be performed as information indicating processes that cannot be performed on the own device.

自装置で実行可能なグラフ解析が有る場合(ステップS52;YES)、演算処理部26は、次に、全てのグラフ解析を実行可能であるか否かを判定する(ステップS53)。実行不可のグラフ解析が有る場合(ステップS53;NO)、演算処理部26は、ステップS55の処理を行う。ステップS53において実行不可のグラフ解析が有ると判定した場合、演算処理部26は、自装置で実行不可の処理を示す情報として、数式情報に基づく演算処理のうちの、自装置で実行不可のグラフ解析を示す情報を生成する。 If there is a graph analysis that can be executed on the own device (step S52; YES), the calculation processing unit 26 then determines whether or not all graph analyses can be executed (step S53). If there is an infeasible graph analysis (step S53; NO), the calculation processing unit 26 performs the process of step S55. If it is determined in step S53 that there is an infeasible graph analysis, the calculation processing unit 26 generates information indicating the graph analysis that cannot be executed on the own device, among the calculation processes based on the formula information, as information indicating the process that cannot be executed on the own device.

全てのグラフ解析を自装置で実行可能な場合(ステップS53;YES)、演算処理部26は、自装置で実行可能な演算処理を開始する(ステップS54)。ステップS53の判定がYESとなった場合、ステップS54では、演算処理部26は、入力された数式情報に基づく全ての演算処理を行う。演算処理を開始した後、演算処理部26は、後述するステップS58以降の処理を行う。 If all the graph analyses can be performed on the own device (step S53; YES), the calculation processing unit 26 starts the calculation processing that can be performed on the own device (step S54). If the determination in step S53 is YES, in step S54, the calculation processing unit 26 performs all the calculation processing based on the input formula information. After starting the calculation processing, the calculation processing unit 26 performs the processing from step S58 onwards, which will be described later.

また、ステップS55において自装置で実行不可の処理を示す情報を生成した場合、演算処理部26は、数式情報と実行不可の処理を示す情報とを演算サーバ4に送信し(ステップS56)、自装置で実行可能な処理が有るか否かを判定する(ステップS57)。ステップS57では、演算処理部26は、数式情報に基づく複数の演算処理のなかに、ステップS55において生成した自装置で実行不可の処理を示す情報に含まれない演算処理が有るか否かを判定する。自装置で実行不可の処理を示す情報に含まれない演算処理がある場合、演算処理部26は、自装置で実行可能な処理が有ると判定し(ステップS57;YES)、自装置で実行可能な演算処理を開始する(ステップS54)。自装置で実行可能な処理が無い場合(ステップS57;NO)、演算処理部26は、ステップS58以降の処理を行う。 In addition, if information indicating a process that cannot be executed by the own device is generated in step S55, the calculation processing unit 26 transmits the formula information and the information indicating the process that cannot be executed to the calculation server 4 (step S56), and determines whether or not there is a process that can be executed by the own device (step S57). In step S57, the calculation processing unit 26 determines whether or not there is a process that is not included in the information indicating a process that cannot be executed by the own device generated in step S55, among the multiple calculation processes based on the formula information. If there is a calculation process that is not included in the information indicating a process that cannot be executed by the own device, the calculation processing unit 26 determines that there is a process that can be executed by the own device (step S57; YES), and starts a calculation process that can be executed by the own device (step S54). If there is no process that can be executed by the own device (step S57; NO), the calculation processing unit 26 performs the processes from step S58 onwards.

ステップS58では、演算処理部26は、演算サーバ4に数式情報を送信したか否かを判定する。数式情報を送信した場合(ステップS58;YES)、演算処理部26は、次に、演算サーバ4の処理結果を受信したか否かを判定する(ステップS59)。処理結果を受信した場合(ステップS59;YES)、演算処理部26は、演算サーバ4の処理結果を描画して表示装置14に表示させる(ステップS60)。 In step S58, the calculation processing unit 26 determines whether or not the formula information has been sent to the calculation server 4. If the formula information has been sent (step S58; YES), the calculation processing unit 26 then determines whether or not the processing result of the calculation server 4 has been received (step S59). If the processing result has been received (step S59; YES), the calculation processing unit 26 renders the processing result of the calculation server 4 and displays it on the display device 14 (step S60).

演算サーバ4に数式情報を送信していない場合(ステップS58;NO)、演算サーバ4から処理結果を受信していない場合(ステップS59;NO)、又は演算サーバ4の処理結果を表示装置14に表示させると、演算処理部26は、次に、全ての処理結果を表示装置14に表示したか否かを判定する(ステップS61)。全ての処理結果を表示した場合(ステップS61;YES)、演算処理部26(端末装置2)は、入力された数式情報に基づくグラフの描画に関する処理を終了する。 If the formula information has not been sent to the calculation server 4 (step S58; NO), if the processing result has not been received from the calculation server 4 (step S59; NO), or if the processing result of the calculation server 4 has been displayed on the display device 14, the calculation processing unit 26 next determines whether or not all the processing results have been displayed on the display device 14 (step S61). If all the processing results have been displayed (step S61; YES), the calculation processing unit 26 (terminal device 2) ends the process of drawing a graph based on the input formula information.

表示していない処理結果がある場合(ステップS61;NO)、演算処理部26は、次に、自装置の処理が終了したか否かを判定する(ステップS62)。演算処理部26は、ステップS54で開始した自装置で実行可能な処理が終了した場合に、自装置の処理が終了した(「YES」)と判定する。自装置で実行可能な処理が終了していない場合、又は自装置で実行可能な処理が無かった(すなわち、ステップS54を行っていない)場合、演算処理部26は、ステップS62において自装置の処理が終了していない(「NO」)と判定する。自装置の処理が終了した場合(ステップS62;YES)、演算処理部26は、自装置の処理結果を描画して表示装置14に表示させ(ステップS63)、ステップS58の判定に戻る。自装置の処理が終了していない場合(ステップS62;NO)、演算処理装置26は、ステップS63の処理をスキップしてステップS58の判定に戻る。 If there are any processing results that have not been displayed (step S61; NO), the calculation processing unit 26 next judges whether the processing of the own device has been completed (step S62). If the processing executable by the own device that was started in step S54 has been completed, the calculation processing unit 26 judges that the processing of the own device has been completed ("YES"). If the processing executable by the own device has not been completed, or if there is no processing executable by the own device (i.e., step S54 has not been performed), the calculation processing unit 26 judges in step S62 that the processing of the own device has not been completed ("NO"). If the processing of the own device has been completed (step S62; YES), the calculation processing unit 26 draws the processing result of the own device and displays it on the display device 14 (step S63), and returns to the judgment of step S58. If the processing of the own device has not been completed (step S62; NO), the calculation processing unit 26 skips the processing of step S63 and returns to the judgment of step S58.

図7に例示したフローチャートに沿った処理を行う端末装置2は、入力された数式情報に基づく演算処理のなかに自装置で実行不可の演算処理が含まれる場合に、数式情報を演算サーバ4に転送する。このとき、端末装置2は、入力された数式情報に基づく演算処理(数値処理及びグラフ解析)のうちの自装置で実行不可の演算処理を示す情報を、数式情報とともに演算サーバ4に転送する。このため、演算サーバ4は、端末装置2から受信した数式情報に基づく複数の演算処理のうちの、端末装置2で実行不可の演算処理のみを実行すればよい。したがって、数式情報に基づく演算処理のうちの端末装置2が実行する演算処理を演算サーバ4でも実行することによる、演算サーバ4での演算処理の増大を抑制することができる。 When the terminal device 2 that performs processing according to the flowchart illustrated in FIG. 7 includes a calculation process that cannot be executed by the terminal device itself among the calculation processes based on the inputted formula information, the terminal device 2 transfers the formula information to the calculation server 4. At this time, the terminal device 2 transfers information indicating the calculation process that cannot be executed by the terminal device itself among the calculation processes (numerical processing and graph analysis) based on the inputted formula information, together with the formula information, to the calculation server 4. Therefore, the calculation server 4 only needs to execute the calculation process that cannot be executed by the terminal device 2 among the multiple calculation processes based on the formula information received from the terminal device 2. Therefore, it is possible to suppress an increase in the calculation process on the calculation server 4, which would be caused by the calculation server 4 also executing the calculation process executed by the terminal device 2 among the calculation processes based on the formula information.

上述した実施形態は、発明の理解を容易にするために具体例を示したものであり、本発明は上述した実施形態に限定されるものではない。上述した端末装置2(情報処理装置)を含む情報処理システム1、情報処理システム1における情報処理方法、及び端末装置2のプロセッサ10が実行するプログラムは、特許請求の範囲の記載を逸脱しない範囲において、さまざまな変形、変更が可能である。 The above-described embodiment is a specific example shown to facilitate understanding of the invention, and the present invention is not limited to the above-described embodiment. The information processing system 1 including the above-described terminal device 2 (information processing device), the information processing method in the information processing system 1, and the program executed by the processor 10 of the terminal device 2 can be modified and changed in various ways without departing from the scope of the claims.

例えば、端末装置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を介さずに行われてもよい。 For example, the input unit that accepts input of formula information for causing the terminal device 2 or the calculation server 4 to execute calculation processing is not limited to the input device 13, which may be one of the components of the terminal device 2 (computer), but may be an external device (computer) other than the terminal device 2 that can cooperate with the terminal device 2 that executes a graph drawing application. The external device other than the terminal device 2 may be connected to the terminal device 2 through the input/output interface 15 using a transmission cable such as a USB cable, or may be connected to the terminal device 2 by wireless communication with the communication device 16 according to a short-range wireless communication standard such as Bluetooth (registered trademark). That is, in the information processing system 1 according to the present invention, the input device (input unit) that accepts input of formula information (first information) and the like may be included in the terminal device 2 having the calculation processing unit 26 (first processing unit) that executes part of the multiple processes executed based on the formula information, or may be provided separately from the terminal device 2. When formula information is input by an external device other than the terminal device 2, instead of performing the processing as in the above-mentioned embodiment in the terminal device 2, the presence or absence of processing that can be executed by the terminal device 2 in the other external device may be determined. When an external device other than the terminal device 2 determines whether or not there is a process that can be executed by the terminal device 2, for example, the transfer of formula information to the Web server 3 (calculation server 4) may be performed without going through the calculation processing unit 26 in the terminal device 2.

また、情報処理システム1は、Webサーバ3と演算サーバ4とが1つのサーバ装置に統合されていてもよいし、実行する演算処理の種別が異なる複数の演算サーバ4を含んでもよい。 In addition, the information processing system 1 may have the Web server 3 and the calculation server 4 integrated into a single server device, or may include multiple calculation servers 4 that perform different types of calculation processing.

また、上述した実施形態では、数式情報に基づいて数式(関数)のグラフを描画する処理と該グラフに対する解析処理とを実行し、これらの処理の結果を描画して表示する情報処理システム1を例示している。しかしながら、本発明に係る情報処理システム1において行う処理は、これに限らず、例えば、2次元平面又は3次元空間に任意の形状の図形を描画する処理等を含んでもよい。また、数式情報に基づいて実行される処理は、例えば、グラフを細かく描画する処理と、グラフを粗く描画する処理と、グラフに関する解析をする処理を含んでもよい。グラフを細かく描画する処理と、グラフを粗く描画する処理とは、例えば、グラフの描画範囲を指定する変数の範囲内における演算を行う変数値の数が異なり、グラフを細かく描画する処理の負荷は、グラフを粗く描画する処理の負荷よりも大きい。このため、上述した演算処理システム1では、例えば、グラフを粗く描画する処理は端末装置2の演算処理部26で実行し、グラフを細かく描画する処理及び/又はグラフに関する解析をする処理は演算サーバ4で実行するようにしてもよい。 In the above-described embodiment, an information processing system 1 is illustrated that executes a process of drawing a graph of a formula (function) based on formula information and an analysis process for the graph, and draws and displays the results of these processes. However, the processes performed in the information processing system 1 according to the present invention are not limited to this, and may include, for example, a process of drawing a figure of any shape on a two-dimensional plane or three-dimensional space. In addition, the processes executed based on the formula information may include, for example, a process of drawing a graph in detail, a process of drawing a graph roughly, and a process of analyzing the graph. The process of drawing a graph in detail and the process of drawing a graph roughly differ, for example, in the number of variable values that perform calculations within the range of variables that specify the drawing range of the graph, and the load of the process of drawing a graph in detail is greater than the load of the process of drawing a graph roughly. For this reason, in the above-described calculation processing system 1, for example, the process of drawing a graph roughly may be executed by the calculation processing unit 26 of the terminal device 2, and the process of drawing a graph in detail and/or the process of analyzing the graph may be executed by the calculation server 4.

また、本発明に係る情報処理システム1は、上述したような数式情報に基づく演算処理を行うものに限らず、端末装置2に入力された第1の情報に基づく複数の処理のうちの一部の処理の結果を先行して出力することが求められる、任意の情報を処理するものであってもよい。 In addition, the information processing system 1 according to the present invention is not limited to one that performs arithmetic processing based on the mathematical formula information as described above, but may also process any information that requires early output of the results of some of multiple processes based on the first information input to the terminal device 2.

以下、本願の出願当初の特許請求の範囲に記載された発明を付記する。
[付記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の処理部により実行された処理の実行結果とに基づいて前記複数の処理の実行結果を出力する
ことを特徴とする情報処理システム。
The invention as described in the claims of the present application as originally filed is set forth below.
[Appendix 1]
receiving first information for executing a process inputted by an input unit, by a first processing unit capable of executing a part of a plurality of processes to be executed based on the first information;
executing the part of the processing by the first processing unit;
transmitting, by the first processing unit, second information indicating at least one of the plurality of processes that cannot be executed by the first processing unit to a second processing unit via a communication network;
receiving, by the first processing unit, via the communication network, a result of a process executed by the second processing unit based on at least the second information transmitted to the second processing unit;
generating an output result based on an execution result of the process executed by the first processing unit and an execution result of the process executed by the second processing unit, and outputting the output result to an output unit;
A program for causing a computer including the first processing unit to execute the above.
[Appendix 2]
In the program according to claim 1,
A program that causes a computer to execute, by the first processing unit, transmitting the first information to the second processing unit without determining whether or not the plurality of processes includes a process that can be executed by the first processing unit.
[Appendix 3]
In the program according to claim 1,
determining, by the first processing unit, whether or not the plurality of processes includes the part of the processes that can be executed by the first processing unit;
A program that causes the computer to execute, by the first processing unit, transmitting the second information to the second processing unit when it is determined that the second information includes the part of the processing that can be executed by the first processing unit.
[Appendix 4]
In the program according to claim 1,
After outputting the execution result of the processing executed by the first processing unit to the output unit,
A program that causes the computer to generate an output result based on the execution result of the processing executed by the second processing unit and the execution result of the processing executed by the first processing unit, and output the output result to the output unit.
[Appendix 5]
In the program according to claim 4,
A program that causes the computer to generate an output result in which the execution result of the processing executed by the second processing unit is supplemented with the execution result of the processing executed by the first processing unit, or the execution result of the processing executed by the first processing unit is rewritten with the execution result of the processing executed by the second processing unit.
[Appendix 6]
In the program according to any one of appendices 1 to 5,
the plurality of processes executed based on the first information include a process of drawing a graph in detail, a process of drawing the graph roughly, and a process of analyzing the graph;
The process that cannot be executed by the first processing unit includes a process of drawing the graph in detail and/or a process of analyzing the graph.
A program characterized by:
[Appendix 7]
An information processing device that communicates with a server device,
receiving first information for executing a process inputted by an input unit, by a first processing unit capable of executing a part of a plurality of processes to be executed based on the first information;
executing the part of the processing by the first processing unit;
transmitting second information indicating at least one of the plurality of processes that cannot be executed by the first processing unit to a second processing unit via a communication network;
receiving, via the communication network, a result of a process executed by the second processing unit based on at least the second information transmitted to the second processing unit;
generating an output result based on an execution result of the process executed by the first processing unit and an execution result of the process executed by the second processing unit, and outputting the output result to an output unit;
2. An information processing method comprising:
[Appendix 8]
An information processing device that communicates with a server device,
a first processing unit capable of executing a part of a plurality of processes to be executed based on first information for executing the processes inputted by an input unit;
a communication unit that transmits second information indicating at least one of the plurality of processes that cannot be executed by the first processing unit to a second processing unit via a communication network, and receives, via the communication network, a result of execution of the process executed by the second processing unit based on at least the second information transmitted to the second processing unit;
an output unit that outputs execution results of the plurality of processes based on an execution result of the process executed by the first processing unit and an execution result of the process executed by the second processing unit;
An information processing device comprising:
[Appendix 9]
an input unit for inputting first information for executing a process;
a first processing unit connected to the input unit and capable of executing a part of a plurality of processes that are executed based on the first information;
a second processing unit connected to the first processing unit via a communication network and capable of executing the plurality of processes;
an output unit that outputs execution results of the plurality of processes;
Including,
the first processing unit transmits second information indicating at least one of the plurality of processes that cannot be executed by the first processing unit to a second processing unit via a communication network, and receives, via the communication network, an execution result of the process executed by the second processing unit based on at least the second information transmitted to the second processing unit;
An information processing system characterized in that the output unit outputs execution results of the multiple processes based on the execution results of the process executed by the first processing unit and the execution results of the process executed by the second processing unit.

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 (解析処理の結果を示す)点
1 Information processing system 2 Terminal device 3 Web server 4 Calculation server 5 Communication network 10, 20 Processor 11, 21 Main memory device 12, 22 Auxiliary memory device 13 Input device 14 Display device 15, 23 Input/output interface 16, 24 Communication device 17 Media drive device 18, 25 Bus 19 Portable recording medium 26 Calculation processing unit 30, 34, 36 Screen 31 Formula input field 32 Analysis content input field 33 Graph display area 35 Graphs 37 to 46 (showing the results of the analysis process) Points

Claims (6)

入力部により入力された処理を実行するための第1の情報を、前記第1の情報に基づいて実行される複数の処理のうち所定の時間内に実行終了可能な一部の処理を実行可能な第1の処理部により受け付ける受付ステップ、
前記第1の情報に基づいて実行される複数の処理に、前記第1の処理部が前記所定の時間内に実行終了不可能な一部の処理が含まれる場合に、前記所定の時間内に実行終了不可能な一部の処理を示す情報を、通信ネットワークを介して前記第1の処理部より第2の処理部に送信する送信ステップ、
前記第1の処理部により前記所定の時間内に実行終了可能な一部の処理を実行する実行ステップ、
前記第2の処理部により実行された前記所定の時間内に実行終了不可能な一部の処理の実行結果を、前記通信ネットワークを介して前記第1の処理部により受信する受信ステップ、
前記第1の処理部により実行された前記所定の時間内に実行終了可能な一部の処理の実行結果と、前記第2の処理部により実行された前記所定の時間内に実行終了不可能な一部の処理の実行結果とに基づいて、前記第1の処理部により出力結果を生成して出力部に出力する出力ステップ、
を前記第1の処理部を含むコンピュータに実行させ
前記第1の情報により実行される前記複数の処理は、グラフを粗く描画する処理と、前記グラフを粗く描画する処理よりも処理の負荷が大きいグラフを細かく描画する処理と、前記グラフに関する解析をする処理とを含み、
前記所定の時間内に実行終了不可能な一部の処理は、前記グラフを細かく描画する処理、及び、該グラフに関する解析をする処理の少なくとも一方を含む、
ことを特徴とするプログラム。
a receiving step of receiving first information for executing a process inputted by an input unit by a first processing unit capable of executing a part of a plurality of processes that can be completed within a predetermined time among a plurality of processes that are executed based on the first information;
a transmission step of transmitting information indicating a part of the processing that cannot be completed within the predetermined time from the first processing unit to a second processing unit via a communication network when the plurality of processing operations that are executed based on the first information include a part of the processing that cannot be completed within the predetermined time by the first processing unit;
an execution step of executing a part of the processing that can be completed within the predetermined time by the first processing unit;
a receiving step of receiving, by the first processing unit, via the communication network, a result of the part of the processing that is executed by the second processing unit and cannot be completed within the predetermined time;
an output step of generating an output result by the first processing unit based on an execution result of a part of the processing executed by the first processing unit and which can be completed within the predetermined time and an execution result of a part of the processing executed by the second processing unit and which cannot be completed within the predetermined time, and outputting the output result to an output unit;
a computer including the first processing unit ;
the plurality of processes executed based on the first information include a process of roughly drawing a graph, a process of finely drawing a graph that has a larger processing load than the process of roughly drawing the graph, and a process of analyzing the graph;
The part of the processes that cannot be completed within the predetermined time includes at least one of a process of drawing the graph in detail and a process of analyzing the graph.
A program characterized by:
請求項1に記載のプログラムにおいて、前記出力ステップは更に、
前記第1の処理部により実行された前記所定の時間内に実行終了可能な一部の処理の実行結果を前記出力部に出力した後に、前記第2の処理部により実行された前記所定の時間内に実行終了不可能な一部の処理の実行結果と前記第1の処理部により実行された前記所定の時間内に実行終了可能な一部の処理の実行結果とに基づいて出力結果を生成させ前記出力部に出力することを含む、ことを特徴とするプログラム。
2. The program according to claim 1, wherein the output step further comprises:
a program for generating an output result based on the execution result of a portion of the processing executed by the second processing unit that cannot be completed within the predetermined time and the execution result of a portion of the processing executed by the first processing unit that can be completed within the predetermined time, and outputting the output result to the output unit.
請求項2に記載のプログラムにおいて、前記出力ステップは更に、
前記第2の処理部により実行された前記所定の時間内に実行終了不可能な一部の処理の実行結果を、前記第1の処理部により実行された前記所定の時間内に実行終了可能な一部の処理の実行結果に補充した、又は、前記第1の処理部により実行された前記所定の時間内に実行終了可能な一部の処理の実行結果を前記第2の処理部により実行された前記所定の時間内に実行終了不可能な一部の処理の実行結果に書き換えた前記出力結果を生成させることを含む、ことを特徴とするプログラム。
3. The program according to claim 2, wherein the output step further comprises:
a program for generating an output result in which a result of execution of a portion of a process executed by the second processing unit that cannot be completed within the specified time is supplemented with a result of execution of a portion of a process executed by the first processing unit that can be completed within the specified time, or a result of execution of a portion of a process executed by the first processing unit that can be completed within the specified time is rewritten with a result of execution of a portion of a process executed by the second processing unit that cannot be completed within the specified time.
サーバ装置と通信する情報処理装置が実行する情報処理方法であって、
入力部により入力された第1の情報を受け付ける受付ステップと、
前記第1の情報に基づいて実行される複数の処理に、所定の時間内に実行終了不可能な一部の処理が含まれる場合に、前記所定の時間内に実行終了不可能な一部の処理を示す情報を、通信ネットワークを介して前記サーバ装置に送信する送信ステップと、
前記複数の処理のうち前記所定の時間内に実行終了不可能な一部の処理を除いた前記所定の時間内に実行終了可能な一部の処理を実行する実行ステップと、
前記第2の情報に基づいて前記サーバ装置により実行された前記所定の時間内に実行終了不可能な一部の処理の実行結果を、前記通信ネットワークを介して受信する受信ステップと、
前記所定の時間内に実行終了可能な一部の処理の実行結果と、前記サーバ装置により実行された前記所定の時間内に実行終了不可能な一部の処理の実行結果とに基づいて出力結果を生成して出力部に出力する出力ステップと、
を含み
前記第1の情報により実行される前記複数の処理は、グラフを粗く描画する処理と、前記グラフを粗く描画する処理よりも処理の負荷が大きいグラフを細かく描画する処理と、前記グラフに関する解析をする処理とを含み、
前記所定の時間内に実行終了不可能な一部の処理は、前記グラフを細かく描画する処理、及び、該グラフに関する解析をする処理の少なくとも一方を含む、
ことを特徴とする情報処理方法。
An information processing method executed by an information processing device that communicates with a server device,
a receiving step of receiving first information inputted by an input unit;
a transmission step of transmitting information indicating a part of the processes that cannot be completed within a predetermined time to the server device via a communication network when the plurality of processes that are executed based on the first information include a part of the processes that cannot be completed within a predetermined time;
an execution step of executing a part of the plurality of processes that can be completed within the predetermined time, excluding a part of the processes that cannot be completed within the predetermined time;
a receiving step of receiving, via the communication network, a result of a part of the processing that is executed by the server device based on the second information and cannot be completed within the predetermined time;
an output step of generating an output result based on an execution result of the part of the processing that can be completed within the predetermined time and an execution result of the part of the processing that cannot be completed within the predetermined time, which is executed by the server device, and outputting the output result to an output unit;
Including ,
the plurality of processes executed based on the first information include a process of roughly drawing a graph, a process of finely drawing a graph that has a larger processing load than the process of roughly drawing the graph, and a process of analyzing the graph;
The part of the processes that cannot be completed within the predetermined time includes at least one of a process of drawing the graph in detail and a process of analyzing the graph.
23. An information processing method comprising:
サーバ装置と通信する通信部と、入力部と、出力部と、前記入力部により入力された処理を実行するための第1の情報に基づいて実行される複数の処理のうち所定の時間内に実行終了可能な一部の処理を実行する制御部と、を備えた情報処理装置であって、
前記制御部は、
前記第1の情報に基づいて実行される複数の処理に、前記制御部が前記所定の時間内に実行終了不可能な一部の処理が含まれる場合に、前記所定の時間内に実行終了不可能な一部の処理を示す情報を、前記通信部により通信ネットワークを介して前記サーバ装置へ送信し、
前記所定の時間内に実行終了可能な一部の処理を実行し、
前記サーバ装置により実行された前記所定の時間内に実行終了不可能な一部の処理の実行結果を、前記通信ネットワークを介して前記通信部により受信し、
前記所定の時間内に実行終了可能な一部の処理の実行結果と、前記サーバ装置により実行された前記所定の時間内に実行終了不可能な一部の処理の実行結果とに基づいて出力結果を生成して前記出力部に出力し、
前記第1の情報により実行される前記複数の処理は、グラフを粗く描画する処理と、前記グラフを粗く描画する処理よりも処理の負荷が大きいグラフを細かく描画する処理と、前記グラフに関する解析をする処理とを含み、
前記所定の時間内に実行終了不可能な一部の処理は、前記グラフを細かく描画する処理、及び、該グラフに関する解析をする処理の少なくとも一方を含む、
ことを特徴とする情報処理装置。
An information processing device including a communication unit that communicates with a server device, an input unit, an output unit, and a control unit that executes a part of a plurality of processes that can be completed within a predetermined time among the plurality of processes that are executed based on first information for executing a process inputted by the input unit,
The control unit is
when the plurality of processes executed based on the first information include a part of the processes that the control unit cannot complete within the predetermined time, the part of the processes is transmitted to the server device via a communication network by the communication unit, the part of the processes being included in the plurality of processes being executed based on the first information,
Executing a part of the process that can be completed within the predetermined time,
receiving, via the communication network, by the communication unit, a result of a part of the processing that is executed by the server device and cannot be completed within the predetermined time;
generating an output result based on an execution result of the part of the processing that can be completed within the predetermined time and an execution result of the part of the processing that cannot be completed within the predetermined time, which is executed by the server device, and outputting the output result to the output unit ;
the plurality of processes executed based on the first information include a process of roughly drawing a graph, a process of finely drawing a graph that has a larger processing load than the process of roughly drawing the graph, and a process of analyzing the graph;
The part of the processes that cannot be completed within the predetermined time includes at least one of a process of drawing the graph in detail and a process of analyzing the graph.
23. An information processing apparatus comprising:
処理を実行するための第1の情報を入力する入力部と、
前記入力部と接続され、前記第1の情報に基づいて実行される複数の処理のうち所定の時間内に実行終了可能な一部の処理を実行可能な第1の処理部と、
通信ネットワークを介して前記第1の処理部と接続され、前記第1の情報に基づいて実行される複数の処理のうち前記第1の処理部が前記所定の時間内に実行終了不可能な一部の処理を実行可能な第2の処理部と、
前記複数の処理の実行結果を出力する出力部と、
を含み、
前記第1の処理部は、前記第1の情報に基づいて実行される複数の処理に、前記第1の処理部が前記所定の時間内に実行終了不可能な一部の処理が含まれる場合に、前記所定の時間内に実行終了不可能な一部の処理を示す情報を、通信ネットワークを介して前記第1の処理部より第2の処理部に送信し、
前記第2の処理部により実行された前記所定の時間内に実行終了不可能な一部の処理の実行結果を、前記通信ネットワークを介して受信し、
前記第1の処理部により実行された前記所定の時間内に実行終了可能な一部の処理の実行結果と、前記第2の処理部により実行された前記所定の時間内に実行終了不可能な一部の処理の実行結果とに基づいて出力結果を生成して前記出力部に出力し、
前記第1の情報により実行される前記複数の処理は、グラフを粗く描画する処理と、前記グラフを粗く描画する処理よりも処理の負荷が大きいグラフを細かく描画する処理と、前記グラフに関する解析をする処理とを含み、
前記所定の時間内に実行終了不可能な一部の処理は、前記グラフを細かく描画する処理、及び、該グラフに関する解析をする処理の少なくとも一方を含む、
ことを特徴とする情報処理システム。
an input unit for inputting first information for executing a process;
a first processing unit connected to the input unit and capable of executing a part of a plurality of processes that can be completed within a predetermined time period, the part being executed based on the first information;
a second processing unit that is connected to the first processing unit via a communication network and is capable of executing a part of a plurality of processes that cannot be completed within the predetermined time by the first processing unit among the plurality of processes that are executed based on the first information;
an output unit that outputs execution results of the plurality of processes;
Including,
when the plurality of processes executed based on the first information include a part of the processes that the first processing unit cannot complete within the predetermined time, the first processing unit transmits information indicating the part of the processes that cannot be completed within the predetermined time from the first processing unit to the second processing unit via a communication network;
receiving, via the communication network, a result of a part of the processing that is executed by the second processing unit and cannot be completed within the predetermined time;
generating an output result based on an execution result of a part of the processing executed by the first processing unit and capable of being completed within the predetermined time and an execution result of a part of the processing executed by the second processing unit and unable to be completed within the predetermined time, and outputting the output result to the output unit;
the plurality of processes executed based on the first information include a process of roughly drawing a graph, a process of finely drawing a graph that has a larger processing load than the process of roughly drawing the graph, and a process of analyzing the graph;
The part of the processes that cannot be completed within the predetermined time includes at least one of a process of drawing the graph in detail and a process of analyzing the graph.
An information processing system comprising:
JP2020055138A 2020-03-25 2020-03-25 PROGRAM, INFORMATION PROCESSING METHOD, INFORMATION PROCESSING APPARATUS, AND INFORMATION PROCESSING SYSTEM Active JP7521218B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2020055138A JP7521218B2 (en) 2020-03-25 2020-03-25 PROGRAM, INFORMATION PROCESSING METHOD, INFORMATION PROCESSING APPARATUS, AND INFORMATION PROCESSING SYSTEM

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2020055138A JP7521218B2 (en) 2020-03-25 2020-03-25 PROGRAM, INFORMATION PROCESSING METHOD, INFORMATION PROCESSING APPARATUS, AND INFORMATION PROCESSING SYSTEM

Publications (3)

Publication Number Publication Date
JP2021157335A JP2021157335A (en) 2021-10-07
JP2021157335A5 JP2021157335A5 (en) 2023-03-31
JP7521218B2 true JP7521218B2 (en) 2024-07-24

Family

ID=77917872

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020055138A Active JP7521218B2 (en) 2020-03-25 2020-03-25 PROGRAM, INFORMATION PROCESSING METHOD, INFORMATION PROCESSING APPARATUS, AND INFORMATION PROCESSING SYSTEM

Country Status (1)

Country Link
JP (1) JP7521218B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPWO2023053809A1 (en) 2021-09-28 2023-04-06

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011198228A (en) 2010-03-23 2011-10-06 Fuji Xerox Co Ltd Image processor, image forming apparatus, and program
JP2019185687A (en) 2018-04-17 2019-10-24 カシオ計算機株式会社 Program, information processing method and information terminal

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011198228A (en) 2010-03-23 2011-10-06 Fuji Xerox Co Ltd Image processor, image forming apparatus, and program
JP2019185687A (en) 2018-04-17 2019-10-24 カシオ計算機株式会社 Program, information processing method and information terminal

Also Published As

Publication number Publication date
JP2021157335A (en) 2021-10-07

Similar Documents

Publication Publication Date Title
JP6154005B2 (en) Identifying host-compatible downloadable applications
TWI400652B (en) Dual operating system parallel processing methods, recording media and computer program products
JP2021072089A (en) Webpage rendering method, device, electronic equipment, storage medium, and program
KR102108583B1 (en) Instantiable gesture objects
US9430808B2 (en) Synchronization points for state information
US10402210B2 (en) Optimizing user interface requests for backend processing
JP7521218B2 (en) PROGRAM, INFORMATION PROCESSING METHOD, INFORMATION PROCESSING APPARATUS, AND INFORMATION PROCESSING SYSTEM
US20160299649A1 (en) Content display device, content display program, and content display method
JP2009217321A (en) Information processor and information processing program
US10275505B2 (en) In-application conversion of file versions using cloud services
JP2022539290A (en) Visual programming for deep learning
JP7006081B2 (en) Graph drawing system, calculation server, graph drawing system control method, and program for calculation server
US11287955B2 (en) Recommending a transition from use of a limited-functionality application to a full-functionality application in a digital medium environment
JP6733490B2 (en) Development support system, development support device, response control program, response control method, and response control device
US20190318517A1 (en) Electronic apparatus, information processing method, system, and medium
US11651143B2 (en) Information processing apparatus, system, information processing method, and computer-readable storage medium for storing programs
EP4036812B1 (en) Fpga implementation of low latency architecture of xgboost for inference and method therefor
JP6070829B2 (en) Display control apparatus, information processing apparatus, display control method, display control program, and information processing system
US10360701B2 (en) Integrated visualization
CN113031947B (en) Configuration data management method and device used in interface design tool
CN113885758A (en) Virtual screen generation method, computing device and storage medium
JP2022041717A (en) Information processing system and control method thereof
JP2012118932A (en) Information processing device and program
JP7235138B2 (en) Information processing device, data generation device, graph drawing system, and program
US20160132179A1 (en) Three Dimensional Object Manipulation Through A Flexible Display Device

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230323

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20230323

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20231005

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20231227

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20240116

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20240314

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20240611

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20240624

R150 Certificate of patent or registration of utility model

Ref document number: 7521218

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150