(57)【特許請求の範囲】
【請求項１】
ユーザの入力操作に応じた処理を実行する情報処理装置であって、
ユーザによる操作を受容するユーザ入力手段と、
前記ユーザ入力手段からユーザ操作に応じてアプリケーションを実行するアプリケーション実行手段と、
前記ユーザ入力手段を介したユーザの操作履歴を時間系列順に記録する操作履歴記録手段と、
前記操作履歴記録手段により時間系列順に記録されているユーザの操作履歴をユーザに提示し、該時間系列上でユーザが指定した個所又は範囲にユーザ操作を遡り、又は操作の時間系列を並べ替え編集する操作履歴編集手段と、
前記操作履歴編集手段により編集された操作履歴に従ってアプリケーションの実行を再現するアプリケーション再現手段と、
を具備し、
前記操作履歴記録手段は、再現時にユーザによる内容変更を許可するものと許可しないものとに分類して操作履歴を記録し、
前記アプリケーション再現手段は、内容変更が許可されている操作履歴の再現を行なう際に、ユーザの必要に応じて内容を変更してからアプリケーションの実行を再現する、
ことを特徴とする情報処理装置。
【請求項２】
前記操作履歴記録手段は、各操作履歴に記憶の優先度を付けて記録する、
ことを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記操作履歴記録手段は、記録されている各操作履歴のうち記憶の優先度が低い方から順に削除又は圧縮する、
ことを特徴とする請求項１に記載の情報処理装置。
【請求項４】
ユーザの入力操作に応じた処理を実行する情報処理方法であって、
ユーザによる操作を受容するユーザ入力ステップと、
前記ユーザ入力ステップにおいて入力されたユーザ操作に応じてアプリケーションを実行するアプリケーション実行ステップと、
前記ユーザ入力ステップにおいて入力されたユーザ操作の履歴を時間系列順に記録する操作履歴記録ステップと、
前記操作履歴記録ステップにおいて時間系列順に記録されたユーザの操作履歴ユーザに提示し、該時間系列上でユーザが指定した個所又は範囲にユーザ操作を遡り、又は操作の時間系列を並べ替えを編集する操作履歴編集ステップと、
前記操作履歴編集ステップにおいて編集された操作履歴に従ってアプリケーションの実行を再現するアプリケーション再現ステップと、
を有し、
前記操作履歴記録ステップでは、再現時にユーザによる内容変更を許可するものと許可しないものとに分類して操作履歴を記録し、
前記アプリケーション再現ステップでは、内容変更が許可されている操作履歴の再現を行なう際に、ユーザの必要に応じて内容を変更してからアプリケーションの実行を再現する、
ことを特徴とする情報処理方法。
【請求項５】
前記操作履歴記録ステップでは、各操作履歴に記憶の優先度を付けて記録する、
ことを特徴とする請求項４に記載の情報処理方法。
【請求項６】
前記操作履歴記録ステップでは、記録されている各操作履歴のうち記憶の優先度が低い方から順に削除又は圧縮する、
ことを特徴とする請求項４に記載の情報処理方法。
【請求項７】
ユーザの入力操作に応じた処理をコンピュータ上で実行するようにコンピュータ可読形式で記述されたコンピュータ・プログラムであって、前記コンピュータを、
ユーザによる操作を受容するユーザ入力手段、
前記ユーザ入力手段からユーザ操作に応じてアプリケーションを実行するアプリケーション実行手段、
前記ユーザ入力手段を介したユーザの操作履歴を時間系列順に記録する操作履歴記録手段、
前記操作履歴記録手段により時間系列順に記録されているユーザの操作履歴をユーザに提示し、該時間系列上でユーザが指定した個所又は範囲にユーザ操作を遡り、又は操作の時間系列を並べ替え編集する操作履歴編集手段、
前記操作履歴編集手段により編集された操作履歴に従ってアプリケーションの実行を再現するアプリケーション再現手段、
をとして機能させ、
前記操作履歴記録手段は、再現時にユーザによる内容変更を許可するものと許可しないものとに分類して操作履歴を記録し、
前記アプリケーション再現手段は、内容変更が許可されている操作履歴の再現を行なう際に、ユーザの必要に応じて内容を変更してからアプリケーションの実行を再現する、
ことを特徴とするコンピュータ・プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、アプリケーション・ソフトウェアを使用する情報処理装置及び情報処理方法、並びにコンピュータ・プログラムに係り、特に、アプリケーション・ソフトウェアを利用するユーザの入力操作を効率化する情報処理装置及び情報処理方法、並びにコンピュータ・プログラムに関する。
【０００２】
さらに詳しくは、本発明は、アプリケーション・ソフトウェアを利用する上で、ユーザが過去に実行した操作履歴を繰り返し利用して処理を実行して、ユーザの入力操作を効率化する情報処理装置及び情報処理方法、並びにコンピュータ・プログラムに係り、特に、ユーザが過去に実行した操作を再現したり、過去のある時点から実施した一連の操作を繰り返し実行したりする情報処理装置及び情報処理方法、並びにコンピュータ・プログラムに関する。
【背景技術】
【０００３】
情報技術（ＩＴ）分野における急速な進歩とともに、さまざまな形態のコンピュータ・システムが開発・製造され、大学やその他の研究機関、企業内のオフィス、さらには一般家庭に広く普及している。コンピュータ上では、それぞれの業務に適用したアプリケーションを起動し、音声、画像、自然言語などさまざまなメディアをデジタル化して、数学的に取り扱うことにより、情報の編集・加工、蓄積、管理、伝達、共有などより高度で多岐にわたる処理を行なうことが可能である。
【０００４】
また、最近では、コンピュータのアプリケーションとして、物理的、生態的、あるいは社会的などのシステムの挙動を数式化若しくはモデル化し、ほぼ同じ法則に支配されるシステムの挙動をコンピュータ上で模擬すること、すなわちシミュレーションが広く利用されている。シミュレーション技術を利用することにより、さまざまな局面におけるシステムの挙動を現実に体験する前に予測することができ、得られたパラメータに基づいてシステムを制御し、システムのエラーを予測し、これを防止する制御を行なうことでエラーを回避することができる。
【０００５】
ここで、アプリケーション・ソフトウェアを利用する上で、ユーザが過去に実行した操作を再現したい、あるいは過去のある時点から実施した一連操作を繰り返し実行したいという場合がある。例えば、上記のシミュレーション計算においては、オペレータの入力したパラメータをシミュレーション・エンジンに投入して挙動解析計算を実行するが、同じモデル式を用いたシミュレーション計算を、パラメータを変更しながら繰り返し行なう必要がある。このような場合、オペレータは一連の入力操作を繰り返し行なわなければならず、煩わしい。このため、過去に行なわれた操作履歴のうち特定の範囲を繰り返し実行したい、繰り返し実行する際にパラメータの再設定など途中の操作を部分的な変更して再現したい、という要望がある。
【０００６】
例えば、ワードプロセッサやスプレッドシートなどの主に編集アプリケーションにおいては、「元に戻す」、「やり直す」といった機能を装備することが一般的であり、過去にユーザが入力した操作内容を時間系列上で前後にさせ、編集作業の利便性が図られている。
【０００７】
しかしながら、「元に戻す」、「やり直す」といった機能は、所望の操作時点までの移動に他ならず、一連の操作を繰り返し行なう、あるいは部分的に変更して再現するという、操作履歴の編集機能は備えていない。
【０００８】
例えば、図１３に示すように、ＯＰ＃６、ＯＰ＃５、ＯＰ＃４、ＯＰ＃３、ＯＰ＃２、ＯＰ＃１、ＯＰ＃０という時間系列順で過去に入力操作が行なわれたとする。ここで、「元に戻す」機能によりＯＰ＃３まで遡ったときには、それ以後の入力操作ＯＰ＃２〜ＯＰ＃０の操作履歴から消失してしまうので繰り返し利用できなくなる。言い換えれば、過去の操作履歴を特定の範囲で繰り返すことはできない。
【０００９】
例えば、ＯＰ＃３〜ＯＰ＃０の範囲で、一部の入力操作においてパラメータの再設定を行ないながら繰り返し実行したいとする。「元に戻す」機能で操作項目ＯＰ＃３まで遡り、ここで入力操作の変更を行なうと、以後の入力操作ＯＰ＃２〜ＯＰ＃０は操作履歴から消失してしまうため、オペレータは再入力しなければならない。以後、ＯＰ＃３〜ＯＰ＃０の範囲で操作項目ＯＰ＃３における操作内容を変更しながら繰り返す際には、入力操作ＯＰ＃２〜ＯＰ＃０を再入力しなければならない。
【００１０】
要言すれば、「元に戻す」、「やり直す」といった機能は、例えばデータ入力・結果の解析を繰り返すシミュレーション・ソフトウェアにおいて、入力データを一部だけ変更し何度も繰り返しながら思考錯誤するといった作業には利用することはできない。
【００１１】
また、例えばシミュレーション結果として描画されたグラフを、マウスを使って視点を変えながら解析若しくは分析する操作を再現したい場合には、マウスの移動した座標などまで記録しておくことが必要である。上述した操作ログのような方法でユーザの操作するマウスの移動軌跡のすべての座標データを保存しておくことは、後の編集作業も困難になり、無駄な履歴を多く残してしまうことになり、メモリ領域確保の面でも効率がよくない。
【００１２】
例えば、操作者の行なうマウスの動きなどを、後で他の端末で再生する場合に、再生時に同じ結果が得られるようにする同期再生方法について提案がなされている（例えば、特許文献１を参照のこと）。しかしながら、同方法では、操作抽出端末上での入力イベントや結果イベントを操作や処理が行なわれた順通りに保存し、操作再生端末側では、保存した順に従って入力イベントや結果イベントを順次再生するようにしたものであって、再生時に操作内容の変更を行なうものではない。すなわち、この同期再生方法による操作履歴の保存・再生は、丁度ＣＤに記録されているデータを再生（プレイ）するものに相当し、操作履歴の変更は一切許されない。
【００１３】
なお、操作履歴を編集して繰り返し操作をカスタマイズする手段として、マクロ記録機能や、操作ログからユーザが必要な操作だけをプログラミングする機能が考えられる。しかしながら、マクロ記録では、ある時間を遡って必要な個所だけを記録できない。また、操作ログを利用するためには、ユーザがアプリケーション固有の（マクロ）言語を習得した上で、必要な部分だけを取り出して編集するという作業を行なう必要があり、時間がかかるなどの難点がある。
【００１４】
【特許文献１】特開平１１−３８１５３号公報、図１、図４
【発明の開示】
【発明が解決しようとする課題】
【００１５】
本発明の目的は、アプリケーション・ソフトウェアを利用するユーザの入力操作を効率化することができる、優れた情報処理装置及び情報処理方法、並びにコンピュータ・プログラムを提供することにある。
【００１６】
本発明のさらなる目的は、アプリケーション・ソフトウェアを利用する上で、ユーザが過去に実行した操作履歴を繰り返し利用して処理を実行して、ユーザの入力操作を効率化することができる、優れた情報処理装置及び情報処理方法、並びにコンピュータ・プログラムを提供することにある。
【００１７】
本発明のさらなる目的は、ユーザが過去に実行した操作を再現したり、過去のある時点から実施した一連の操作を繰り返し実行したりすることができる、優れた情報処理装置及び情報処理方法、並びにコンピュータ・プログラムを提供することにある。
【課題を解決するための手段】
【００１８】
本発明は、上記課題を参酌してなされたものであり、その第１の側面は、ユーザの入力操作に応じた処理を実行する情報処理装置であって、ユーザによる操作を受容するユーザ入力手段と、前記ユーザ入力手段からユーザ操作に応じてアプリケーションを実行するアプリケーション実行手段と、前記ユーザ入力手段を介したユーザの操作履歴を時間系列順に記録する操作履歴記録手段と、前記操作履歴記録手段により時間系列順に記録されているユーザの操作履歴を編集する操作履歴編集手段と、前記操作履歴編集手段により編集されたユーザ操作に応じてアプリケーションの実行を再現するアプリケーション再現手段と具備することを特徴とする情報処理装置ユーザの入力操作に応じた処理を実行する情報処理装置である。
【００１９】
計算機システム上でアプリケーション・ソフトウェアを利用する際、ユーザが過去に実行した操作を再現したい、あるいは過去のある時点から実施した一連操作を繰り返し実行したいことがある。例えば、「元に戻す」、「やり直す」といった一般的な機能により過去にユーザが入力した操作内容を時間系列上で前後にさせることができるが、途中の操作を部分的に変更して再現するという、操作履歴の編集機能は備えていない。
【００２０】
これに対し、本発明に係る情報処理装置は、計算機システム上でユーザの入力操作に応じてアプリケーションを実行する際に、ユーザに必要な操作履歴を効率よく記録し、目的に応じて過去に実施した操作をＧＵＩ上から簡単に再現するとともに、必要であれば、操作履歴を部分的に変更するようにした。
【００２１】
前記操作履歴編集手段は、時間系列順に記録されている操作履歴をユーザに提示し、該時間系列上でユーザが指定した個所又は範囲にユーザ操作を遡り、又は操作の時間系列を並べ替える、といった操作履歴の編集を行なう。そして、前記アプリケーション再現手段は、前記操作履歴編集手段により編集された操作履歴に従ってアプリケーションの実行を再現する。時間系列上で操作履歴の個所や範囲を指定する場合、ユーザは、例えば時間とステップ数のいずれで選択できるようにしてもよい。
【００２２】
ここで、前記操作履歴記録手段は、ユーザがアプリケーション上から実施できる操作を機能毎に分類して操作履歴を記録し、前記アプリケーション再現手段は、該分類に応じて操作履歴の再現を行なうようにしてもよい。
【００２３】
具体的には、前記操作履歴記録手段は、再現時にユーザによる内容変更を許可するものとしないものとに分類して操作履歴を記録する。そして、前記アプリケーション再現手段は、内容変更が許可されている操作履歴の再現を行なう際に、ユーザの必要に応じて内容を変更してからアプリケーションの実行を再現する。したがって、ユーザは、一連の操作を実行した後に、必要な操作ステップまで後戻りし、さらに必要な部分だけ書き替えなどの編集を行なった上で操作を再現したり保存して再利用したりすることができる。
【００２４】
また、前記操作履歴記録手段は、各操作履歴に記憶の優先度を付けて記録するようにしてもよい。このような場合、記録されている各操作履歴のうち記憶の優先度が低い方から順に削除又は圧縮するとともに、優先度の高い操作履歴ほど記録に多く残すようにすることにより、操作履歴の効率的な再利用を行なうことができる。このような場合、操作履歴を効率よく利用できること以外にも、記憶域の無駄をなくすという効果がある。さらに、優先順位の低い履歴から随時抹消してゆくことも可能であり、莫大な記憶域確保をしなくてよい。
【００２５】
また、本発明の第２の側面は、ユーザの入力操作に応じた処理をコンピュータ・システム上で実行するようにコンピュータ可読形式で記述されたコンピュータ・プログラムであって、前記コンピュータ・システムに対し、ユーザによる操作を受容するユーザ入力手順と、前記ユーザ入力手順により入力されたユーザ操作に応じてアプリケーションを実行するアプリケーション実行手順と、前記ユーザ入力手順により入力されたユーザ操作の履歴を時間系列順に記録する操作履歴記録手順と、前記操作履歴記録手順により時間系列順に記録されたユーザの操作履歴を編集する操作履歴編集手順と、前記操作履歴編集手順により編集されたユーザ操作に応じてアプリケーションの実行を再現するアプリケーション再現手順とを実行させることを特徴とするコンピュータ・プログラムである。
【００２６】
本発明の第２の側面に係るコンピュータ・プログラムは、コンピュータ・システム上で所定の処理を実現するようにコンピュータ可読形式で記述されたコンピュータ・プログラムを定義したものである。換言すれば、本発明の第２の側面に係るコンピュータ・プログラムをコンピュータ・システムにインストールすることによって、コンピュータ・システム上では協働的作用が発揮され、本発明の第１の側面に係る情報処理装置と同様の作用効果を得ることができる。
【発明の効果】
【００２７】
本発明によれば、アプリケーション・ソフトウェアを利用する上で、ユーザが過去に実行した操作履歴を繰り返し利用して処理を実行して、ユーザの入力操作を効率化することができる、優れた情報処理装置及び情報処理方法、並びにコンピュータ・プログラムを提供することができる。
【００２８】
また、本発明によれば、ユーザが過去に実行した操作を再現したり、過去のある時点から実施した一連の操作を繰り返し実行したりすることができる、優れた情報処理装置及び情報処理方法、並びにコンピュータ・プログラムを提供することができる。
【００２９】
本発明によれば、計算機システム上でユーザの入力操作に応じてアプリケーションを実行する際に、ユーザに必要な操作履歴を効率よく記録し、目的に応じて過去に実施した操作をＧＵＩ上から簡単に再現することができるとともに、必要であれば、操作履歴を部分的に変更することが可能である。
【００３０】
すなわち、パーソナル・コンピュータなどの計算機システム上でアプリケーション・ソフトウェアを起動している際に、ユーザは、一連の操作を実行した後に、必要な操作ステップまで後戻りし、さらに必要な部分だけ書き替えなどの編集を行なった上で操作を再現したり保存して再利用したりすることができる。
【００３１】
また、本発明によれば、ユーザが実行した操作を、再利用時に書き換えや編集が可能な操作とそうでない操作に分類して自動的に記憶する内容に差をつけたり、さらに記憶の優先順位を付けたりして、操作履歴の効率的な再利用を行なうことができる。
【００３２】
操作開始から終了までのすべての操作履歴を保存する方法に対して、機能によって自動的に記憶する内容に差を付けることは、操作履歴を効率よく利用できること以外にも、記憶域の無駄をなくすという効果がある。さらに、優先順位の低い履歴から随時抹消してゆくことも可能であり、莫大な記憶域確保をしなくてよい。
【００３３】
また、本発明によれば、アプリケーションを実行中にユーザが何気なく実行した操作をもう一度再現させたい場合や、ある一連の作業を部分的に変更して繰り返したい場合に、ユーザは操作を思い出したり、何度も同じ操作を繰り返したりする必要はない。また、ユーザは、アプリケーション固有の複雑なプログラミング言語を習得しなくても、遡りたい操作ステップ数や時間を指定することにより、簡単に操作履歴を記憶し再現することが可能である。
【００３４】
本発明のさらに他の目的、特徴や利点は、後述する本発明の実施形態や添付する図面に基づくより詳細な説明によって明らかになるであろう。
【発明を実施するための最良の形態】
【００３５】
以下、図面を参照しながら本発明の実施形態について詳解する。
【００３６】
図１には、本発明の一実施形態に係る情報処理装置のハードウェア構成を模式的に示している。この情報処理装置上では、ユーザの入力操作に応じてアプリケーションが実行される。ここで言うアプリケーションとは、例えば、解析・分析・シミュレーション、あるいはＣＡＤなどに代表される、入力と結果の関係を試行錯誤するようなアプリケーションである。情報処理装置は、例えばパーソナル・コンピュータ（ＰＣ）のような一般的な計算機システムで構成することができる。以下、各部について説明する。
【００３７】
この情報処理装置は、プロセッサ１０を中心に構成されている。プロセッサ１０は、オペレーティング・システム（ＯＳ）が提供するプログラム実行環境下で、メモリに記憶されたプログラムに基づいて各種の処理を実行する。また、プロセッサ１０は、バス３０を介して接続されている各種の周辺機器を制御している。バス３０に接続された周辺機器は次のようなものである。
【００３８】
メモリ２０は、例えばＤＲＡＭ（Ｄｙｎａｍｉｃ ＲＡＭ）などの半導体メモリで構成され、プロセッサ１０において実行されるプログラム・コードをロードしたり、実行プログラムの作業データを一時格納したりするために使用される。メモリ２０は、プロセッサ１０のメモリ空間を構成する。
【００３９】
ディスプレイ・コントローラ２１は、プロセッサ１０から送られてくる描画命令に従って表示画像を生成し、表示装置２２に送る。ディスプレイ・コントローラに接続された表示装置２２は、ディスプレイ・コントローラ２１から送られた表示画像情報に従い、その画像を画面に表示出力する。
【００４０】
入出力インターフェース２３は、キーボード２４やマウス２５が接続されており、キーボード２４やマウス２５からの入力信号をプロセッサ１０へ転送する。
【００４１】
ネットワーク・インターフェース２６は、ＬＡＮやインターネットなどの外部ネットワークに接続されており、インターネットを介したデータ通信を制御する。すなわち、プロセッサ１０から送られたデータをインターネット上の他の装置へ転送するとともに、インターネットを介して送られてきたデータを受け取りプロセッサ１０に渡す。例えば、プログラムやデータなどをネットワーク経由で外部から受信することができる。
【００４２】
ハード・ディスク装置（ＨＤＤ：Ｈａｒｄ Ｄｉｓｋ Ｄｒｉｖｅ）コントローラ２７には、ＨＤＤなどの大容量外部記憶装置２８が接続されており、ＨＤＤ コントローラ２７が接続されたＨＤＤ２８へのデータの入出力を制御する。ＨＤＤ２８には、プロセッサが実行すべきオペレーティング・システム（ＯＳ）のプログラム、アプリケーション・プログラム、ドライバ・プログラム、さらにはプログラムによって参照又は再生処理が行なわれるデータやコンテンツなどが格納されている。本実施形態では、各プログラムは、ＨＤＤ２８上に実行可能形式でインストールされる。
【００４３】
なお、情報処理装置を構成するためには、図１に示した以外にも多くの電気回路などが必要である。但し、これらは当業者には周知であり、また、本発明の要旨を構成するものではないので、本明細書中では省略している。また、図面の錯綜を回避するため、図中の各ハードウェア・ブロック間の接続も一部しか図示していない点を了承されたい。
【００４４】
図１に示す情報処理装置上では、例えば、解析・分析・シミュレーション、あるいはＣＡＤなどに代表される、入力と結果の関係を試行錯誤するようなアプリケーション、さらにはその他の形態のさまざまなアプリケーションを実行することができる。
【００４５】
ここで、計算機システム上でアプリケーション・ソフトウェアを利用する際、ユーザが過去に実行した操作を再現したい、あるいは過去のある時点から実施した一連操作を繰り返し実行したいことがある。
【００４６】
従来の「元に戻す」、「やり直す」といった、過去の操作履歴を使用する一般的な機能により過去にユーザが入力した操作内容を時間系列上で前後にさせることができるが、途中の操作を部分的に変更して再現するという、操作履歴の編集機能は備えていない。
【００４７】
これに対し、本発明に係る情報処理装置上では、計算機システム上でユーザの入力操作に応じてアプリケーションを実行する際に、ユーザに必要な操作履歴を効率よく記録し、目的に応じて過去に実施した操作をＧＵＩ上から簡単に再現するとともに、必要であれば、操作履歴を部分的に変更することができる。
【００４８】
図２には、本発明に係る情報処理装置が持つアプリケーションの実行環境の機能的構成を模式的に示している。図示のアプリケーション実行環境は、ユーザ入力部５１と、アプリケーション実行部５２と、操作履歴記録部５３と、操作履歴編集部５４と、アプリケーション再現部５５を備えている。
【００４９】
ユーザ入力部５１は、キーボード２４やマウス２５などのユーザ入力装置に対するユーザ操作を受容する。
【００５０】
アプリケーション実行部５２は、ユーザ入力部５１で受容したユーザ指示操作や、入力パラメータを適用して、シミュレータやＣＡＤといったアプリケーションを実行する。
【００５１】
操作履歴記録部５３は、ユーザ入力部５１を介したユーザの操作履歴を時間系列順に記録する。操作履歴記録部５３は、ユーザがアプリケーション上から実施できる操作を機能毎に分類して操作履歴を記録するようにしてもよい。具体的には、再現時にユーザによる内容変更を許可するものと許可しないものとに分類して操作履歴を記録する。例えば、実行した操作のみ記憶する、あるいはマウスの移動した軌道座標をすべて記憶するというように再生時の目的によって記録内容に差を設ける。このような場合、内容変更が許可されている操作履歴の再現を行なう際に、ユーザの必要に応じて内容を変更してからアプリケーションの実行を再現することができる。
【００５２】
また、操作履歴記録部５３は、各操作履歴に記憶の優先度を付けて記録するようにしてもよい。そして、記録されている各操作履歴のうち記憶の優先度が低い方から順に削除又は圧縮するとともに、優先度の高い操作履歴ほど記録に多く残すようにすることにより、操作履歴の効率的な再利用を行なうことができる。このような場合、操作履歴を効率よく利用できること以外にも、記憶域の無駄をなくすという効果がある。さらに、優先順位の低い履歴から随時抹消してゆくことも可能であり、莫大な記憶域確保をしなくてよいことになる。
【００５３】
操作履歴編集部５４は、操作履歴記録部５３により時間系列順に記録されているユーザの操作履歴を編集する。具体的には、時間系列順に記録されている操作履歴を、ＧＵＩ画面上でユーザに提示する。そして、時間系列順に並んだ操作履歴の画面上で、ユーザが指定した個所又は範囲にユーザ操作を遡り、これをアプリケーション再現部５５に渡して、同じ操作に基づく処理を繰り返し実行させる。時間系列上で操作履歴の個所や範囲を指定する場合、ユーザは、例えば時間とステップ数のいずれで選択できるようにしてもよい。あるいは、過去にユーザが行なった操作の時間系列順を並べ替えて、アプリケーション再現部５５に渡すようにしてもよい。
【００５４】
アプリケーション再現部５５は、操作履歴編集部５４により編集されたユーザ操作を適用して、アプリケーションの実行を再現する。操作履歴記録部５３において再現時にユーザによる内容変更を許可するものと許可しないものとに分類して操作履歴を記録している場合には、アプリケーション再現部５５は、内容変更が許可されている操作履歴の再現を行なう際に、ユーザの必要に応じて内容を変更してからアプリケーションの実行を再現する。
【００５５】
図３には、図２に示したアプリケーション実行環境下で、過去にユーザが行なった操作履歴を繰り返し用いてアプリケーションを再現する仕組みを模式的に示している。アプリケーションの再現は、ユーザの操作履歴の取得と、取得した操作履歴の保存及び保管と、操作履歴の編集、操作履歴の再利用によるアプリケーションの再現という４つの段階に大別される。
【００５６】
キーボード２４やマウス２５などのユーザ入力装置を解して行なわれたユーザの操作履歴はユーザ入力部５１により取得され、その時間系列順のまま操作履歴記録部５３により記録される。
【００５７】
ユーザ入力部５１により操作履歴を取得した際、アプリケーション上から実施できる操作を機能毎に分類する。そして、操作履歴記録部５３では、再現時にユーザによる内容変更を許可するものと許可しないものとに分類して操作履歴を記録する。例えば、実行した操作のみ記憶する／マウスの移動した軌道座標すべて記憶するというように再生時の目的によって記録内容に差を設ける。
【００５８】
また、操作履歴記録部５３は、各操作履歴に記憶の優先度を付けて記録する。時間の経過とともに、蓄積される操作履歴のデータ・サイズが徐々に膨らんでいく。そこで、記録されている各操作履歴のうち記憶の優先度が低い方から順に削除又は圧縮するとともに、優先度の高い操作履歴ほど記録に多く残すようにする。これによって、操作履歴の効率的な再利用と、記憶域の確保を図る。
【００５９】
操作履歴の編集段階では、時間系列順に記録されている操作履歴を、ＧＵＩ画面上でユーザに提示する。この画面上で、ユーザは、遡って実行したい操作履歴の個所や、繰り返して実行したい範囲を指定することができる。あるいは、操作履歴の時間系列順の入れ替えを指定することができる。時間系列上で操作履歴の個所や範囲を指定する場合、ユーザは、例えば時間とステップ数のいずれで選択できるようにしてもよい。
【００６０】
アプリケーションを再現する段階では、編集された操作履歴を適用してアプリケーションの実行を繰り返す。このとき、操作履歴記録部５３において再現時にユーザによる内容変更を許可するものと許可しないものとに分類して操作履歴を記録している場合には、アプリケーション再現部５５は、内容変更が許可されている操作履歴の再現を行なう際に、ユーザの必要に応じて内容を変更してからアプリケーションの実行を再現する。
【００６１】
図４には、過去のユーザの操作履歴を繰り返し用いてアプリケーションを再現する様子を模式的に示している。図示の例では、ＯＰ＃６、ＯＰ＃５、ＯＰ＃４、ＯＰ＃３、ＯＰ＃２、ＯＰ＃１、ＯＰ＃０という時間系列順で過去に入力操作が行なわれたことを想定している。
【００６２】
ＧＵＩ画面上には、図４に示すように、過去にユーザ操作が時間系列順に、各操作履歴に相当するエントリが配置されている。ユーザは、このようなＧＵＩ画面上で、遡って再現したい操作履歴の個所や範囲を指定することができる。あるいはエントリにドラッグ操作を印加することで、操作履歴の順を入れ替えることができる。
【００６３】
ここで、ユーザは＃ＯＰ３まで遡り、＃ＯＰ３〜＃ＯＰ０の範囲で操作履歴を繰り返し利用したいとする。このうち＃ＯＰ１と＃ＯＰ０は再現時にユーザによる内容変更を許可するものとして分類されているとする。この場合、アプリケーション再現部５５は、＃ＯＰ３〜＃ＯＰ０の範囲で操作履歴を繰り返して実行するが、＃ＯＰ１と＃ＯＰ０を実行する際にはそれぞれ、パラメータの再入力といった内容変更をユーザに促す。そして、ユーザが新たに指定した内容を適用して、アプリケーションを再現する。
【００６４】
この結果、操作履歴は図５に示すように更新される。さらに＃ＯＰ３〜＃ＯＰ０の範囲で操作履歴を繰り返して実行し、＃ＯＰ１と＃ＯＰ０を実行する際に内容変更を行なった場合には、操作履歴は図６に示すように更新される。
【００６５】
図４〜図６に示した例では、時間系列上で操作履歴の個所や範囲を指定する場合、ユーザはステップ数で選択するようになっているが、勿論、時間で操作履歴をできるように実装することも可能である。
【００６６】
以下では、計算シミュレーションを実行するアプリケーションを例にとって、本発明の具体的な実施例について説明する。
【００６７】
図７には、計算シミュレーションを実行するアプリケーションにおけるシミュレーション結果を表示出力する画面構成例を示している。
【００６８】
図示の画面は、複数のメニュー項目を備えたメニュー・バーと、シミュレーションに必要なパラメータＡ〜Ｄをそれぞれ入力するための各入力フィールドを持つ画面左側のデータ入力領域と、入力されたパラメータを用いて実施されたシミュレーションの結果を表示する画面右側の結果表示領域を備えている。
【００６９】
メニュー・バー内には、ファイル、表示、解析、履歴再生などのメニュー項目が配設される。各メニュー項目は、保存・再生、２Ｄ−３Ｄ切り替えオン／オフ、計算開始・モード設定、ステップ数指定・時間指定などのプルダウン・メニューを持つ。
【００７０】
また、データ入力領域では、各パラメータの数値の代入や書き換え選択を行なうことができる。
【００７１】
また、結果表示領域では、シミュレーションの対象となる３次元オブジェクトが表示されマウス操作により描かれる軌跡に追従して、オブジェクトの回転や視点変換、スケールの色変更などが行なわれる。
【００７２】
そして、アプリケーション・ソフトウェアは、パラメータを代入して、“計算開始”コマンドを選択したことに応答して、情報処理装置の演算機能内部で計算を実行し、その結果を右の結果表示領域に描画することができる。
【００７３】
このアプリケーションの中で、ユーザが行なう操作を、（１）プルダウン・メニュー、（２）データ代入部、（３）結果表示ウインドウの３つに分類する。各分類でユーザが実行する操作と自動的に履歴に記憶される内容は次のようなものとする。
【００７４】
（１）でユーザは、ファイル保存や計算実行などのソフトウエア制御コマンドを選択する。システムは実行されたコマンドを時間系列順に履歴として記憶する。
【００７５】
また、（２）でユーザは、キーボードなどから数値や文字データを入力する。情報処理装置内では、各パラメータの代入・書き替えなどの操作と、入力された数値を時間系列順に履歴として記憶する。
【００７６】
また、（３）でユーザは、マウスを使って描画された計算結果の視点を変えたり、表示方法を切り替えたり、色付けをしたりする。情報処理装置内では、マウスの移動座標や、選択された色、表示の切り替え操作などを時間系列順に履歴として記憶する。
【００７７】
ここで、ユーザが、図７に示したＧＵＩ画面のメニュー・バー内から履歴再現メニューを選択すると、時間とステップ数のいずれで操作履歴を指定するかを確認するダイアログ（図８を参照のこと）が出現する。ここで、ユーザがステップ数を選択すると、続いてステップ数を指定するためのダイアログに切り替わる（図９を参照のこと）。
【００７８】
このダイアログ上で、ユーザが過去４ステップを再現対象に選択したとする。過去４ステップは表１に示す操作で、履歴が保存されているとする。
【００７９】
【表１】
0004631562.tif 000002
【００８０】
操作履歴を記録する際、ユーザがアプリケーション上から実施できる操作を機能毎に分類する。具体的には、再現時にユーザによる内容変更を許可するものと許可しないものとに分類して操作履歴を記録する。表１に示した例では、データ代入のコマンドでは代入したデータの変更可能であるが、パラメータ代入実行する操作や、マウスの座標指示操作は変更不可としている。マウスの座標指示操作を変更可能とすると、指示座標点は一般的に個数が多く、再現時のパラメータ書き換え操作が煩雑になる。
【００８１】
過去４ステップ分の操作履歴の中では、パラメータＡ入力並びにパラメータＢ入力ではそれぞれ代入したデータの変更可能である。そこで、図９に示したダイアログで過去４ステップが指定されたことに応答して、ユーザには図１０に示すような、パラメータＡ及びＢを入力するためのウインドウが表示される。そして、ユーザは必要があればこのパラメータを変更した上で、アプリケーションの再現が可能である。
【００８２】
また、表１に示した例では、マウスの座標記憶の優先度を低く、パラメータの値入力とコマンド実行の記録の優先度を高くしている。 ユーザは再生機能を利用して、パラメータを例えばＡ→Ａ’→Ａ”と変更しながら、計算・分析を繰り返し行なうことが可能である。優先度の高い操作履歴ほど記録に多く残すようにすることにより、操作履歴の効率的な再利用を行なうことができる。また、マウスの指示座標記憶のように記憶容量が大きくなる操作履歴の優先度を低くすることで、記憶域の無駄をなくすという効果がある。
【００８３】
本発明によれば、記憶された操作履歴内容を再現時に部分的に変更して利用できることは，解析・分析・シミュレーション・ＣＡＤなど、入力と結果の関係を試行錯誤するようなアプリケーションについて特に有効である。
【００８４】
図１１には、本発明により操作履歴を編集してアプリケーションを再現する動作を示している。また、図１２には、従来の「やり直し（Ｕｎｄｏ）」動作を図解している。上述したように、本発明によれば、数値入力を行なう操作履歴に遡って、入力パラメータ値をＡ、Ａ’、Ａ”といった具合に書き換えながら、数値入力Ａ、数値入力Ｂ、グラフ作成という時間系列順の操作履歴を繰り返し利用することができる。したがって、同じモデル式を用いたシミュレーション計算を、パラメータを変更しながら繰り返し行なうといった場合に、操作性は著しく向上する。
【００８５】
これに対し、「やり直し（Ｕｎｄｏ）」動作では、数値入力Ａ、数値入力Ｂ、グラフ作成という時間系列順の操作履歴がある場合に、これとは逆のグラフ作成、数値入力Ｂ、数値入力Ａという順で処理を遡っていくことはできるが、例えば数値入力Ａで入力パラメータ値Ａを書き換えることはできない。また、数値入力Ａという操作まで遡って新たな数値入力Ａ’という操作を行なうと、その時点で新たな操作履歴が作成され、以降の数値入力Ｂ、グラフ作成という操作履歴は失われるため、ユーザは改めて操作入力しなければならない。これは、上述した本発明に係る操作と比べ煩わしいものとなる。
【産業上の利用可能性】
【００８６】
以上、特定の実施形態を参照しながら、本発明について詳解してきた。しかしながら、本発明の要旨を逸脱しない範囲で当業者が該実施形態の修正や代用を成し得ることは自明である。
【００８７】
本発明によれば、アプリケーション実行時に行なわれたユーザの操作履歴内容を記憶して、これを再現時に部分的に変更して利用することができるが、かかる機能は、解析・分析・シミュレーションといったアプリケーションの他に、ＣＡＤなど、ユーザの入力操作に応じて実行されるアプリケーション、とりわけ入力と結果の関係を試行錯誤するようなアプリケーションについて特に有効に作用する。
【００８８】
要するに、例示という形態で本発明を開示してきたのであり、本明細書の記載内容を限定的に解釈するべきではない。本発明の要旨を判断するためには、特許請求の範囲を参酌すべきである。
【図面の簡単な説明】
【００８９】
【図１】図１は、本発明の一実施形態に係る情報処理装置のハードウェア構成を模式的に示した図である。
【図２】図２は、本発明に係る情報処理装置が持つアプリケーションの実行環境の機能的構成を模式的に示した図である。
【図３】図３は、図２に示したアプリケーション実行環境下で、過去にユーザが行なった操作履歴を繰り返し用いてアプリケーションを再現する仕組みを模式的に示した図である。
【図４】図４は、過去のユーザの操作履歴を繰り返し用いてアプリケーションを再現する様子を示した図である。
【図５】図５は、過去のユーザの操作履歴を繰り返し用いてアプリケーションを再現する様子を示した図である。
【図６】図６は、過去のユーザの操作履歴を繰り返し用いてアプリケーションを再現する様子を示した図である。
【図７】図７は、計算シミュレーションを実行するアプリケーションにおけるシミュレーション結果を表示出力する画面構成例を示した図である。
【図８】図８は、時間とステップ数のいずれで操作履歴を指定するかを確認するダイアログの構成例を示した図である
【図９】図９は、ステップ数を指定するためのダイアログの構成例を示した図である。
【図１０】図１０は、パラメータＡ及びＢを入力するためのウインドウの構成例を示した図である。
【図１１】図１１は、本発明により操作履歴を編集してアプリケーションを再現する動作と、従来の「やり直し（Ｕｎｄｏ）」動作の相違を説明するための図である。
【図１２】図１２は、本発明により操作履歴を編集してアプリケーションを再現する動作と、従来の「やり直し（Ｕｎｄｏ）」動作の相違を説明するための図である。
【図１３】図１３は、「元に戻す」機能の動作を説明するための図である。
【符号の説明】
【００９０】
１０…プロセッサ
２０…メモリ
２１…ディスプレイ・コントローラ
２２…表示装置
２３…入出力インターフェース
２４…キーボード
２５…マウス
２６…ネットワーク・インターフェース
２７…ＨＤＤコントローラ
２８…ＨＤＤ
３０…バス
５１…ユーザ入力部
５２…アプリケーション実行部
５３…操作履歴記録部
５４…操作履歴編集部
５５…アプリケーション再現部
【図１】
0004631562.tif 000003
【図２】
0004631562.tif 000004
【図３】
0004631562.tif 000005
【図４】
0004631562.tif 000006
【図５】
0004631562.tif 000007
【図６】
0004631562.tif 000008
【図７】
0004631562.tif 000009
【図８】
0004631562.tif 000010
【図９】
0004631562.tif 000011
【図１０】
0004631562.tif 000012
【図１１】
0004631562.tif 000013
【図１２】
0004631562.tif 000014
【図１３】
0004631562.tif 000015