(57)【要約】【課題】アプリケーションの操作画面内で次に操作すべき画面やそれに準ずる情報を直接提示できるヘルプ・リコメンド方法及びそのコンピュータプログラムを提供する。【解決手段】複数のウィンドウを表示可能な操作画面を通じてユーザが入力デバイスを介してアプリケーションの操作を行うコンピュータ装置を用い、アプリケーションのメインウィンドウ100の操作に関するユーザの現在のマウスカーソル102の座標に基づいて、コンピュータ装置で動作するアプリケーションのメインウィンドウ100とともに操作画面上に、アプリケーション操作によって今後遷移する可能性のあるEstimated Windows 201を提示するウィンドウ200を表示する。【選択図】図３
2014238686.tif 000002
【特許請求の範囲】
【請求項１】
複数のウィンドウを表示可能な操作画面を通じてユーザが入力デバイスを介してアプリケーションの操作を行うコンピュータ装置を用い、前記アプリケーションの操作に関するユーザの現在の選択インターフェースの状態に基づいて今後遷移する可能性のある状態を提示するヘルプ・リコメンド方法であって、
前記コンピュータ装置は、前記コンピュータ装置で動作するアプリケーションの画面とともに前記操作画面上に、今後遷移する可能性のある状態の画面或いは操作フロー或いは動画或いはテキスト情報の何れか又はこれらの任意の組み合わせを提示する
ことを特徴とするヘルプ・リコメンド方法。
【請求項２】
前記コンピュータ装置は、更に今後遷移する可能性のある画面状態の再帰的な描画を提示する
ことを特徴とする請求項１に記載のヘルプ・リコメンド方法。
【請求項３】
前記コンピュータ装置は、ユーザの選択インターフェースにおける操作イベント又は選択インターフェース直下のＧＵＩオブジェクトの少なくとも何れか一方を取得してログとして記憶装置に蓄積し、
前記記憶装置に蓄積されているログに基づいて、現在のユーザの操作対象のアプリケーションと選択インターフェースの状態から遷移する今後の状態を提示する
ことを特徴とする請求項１に記載のヘルプ・リコメンド方法。
【請求項４】
前記コンピュータ装置は、前記提示した今後の画面状態を仮想的な操作画面とし、該仮想的な操作画面において行ったユーザの仮想的な操作により変化した状態をさらに提示する
ことを特徴とする請求項１に記載のヘルプ・リコメンド方法。
【請求項５】
前記コンピュータ装置は、ショーテストパスを定義するログを記録及び更新するとともに、該ログに基づいて選択インターフェースのＧＵＩオブジェクトの箇所を特定する
ことを特徴とする請求項３に記載のヘルプ・リコメンド方法。
【請求項６】
前記コンピュータ装置は、選択インターフェースにおいて、操作エリアからユーザが到達したい画面までの自動操作のスクリプトを生成する
ことを特徴とする請求項３に記載のヘルプ・リコメンド方法。
【請求項７】
前記コンピュータ装置は、更に今後遷移する可能性のある画面状態の再帰的な仮想描画ウィンドウ又は今後の状態の表示を仮想的な操作画面として該仮想的な操作画面において行ったユーザの仮想的な操作により変化した状態の描画ウィンドウのうちの少なくとも何れか１つに基づいて、ユーザが実際の画面を次々と操作した結果に基づいて、予め仮想的な操作手順を記録し、該仮想的な操作手順に基づいて選択インターフェースのイベントログもしくは自動操作のスクリプトを生成する
することを特徴とする請求項１に記載のヘルプ・リコメンド方法。
【請求項８】
複数のウィンドウを表示可能な操作画面を通じてユーザが入力デバイスを介してアプリケーションの操作を行うコンピュータ装置において動作し、前記アプリケーションの操作に関するユーザの現在の選択インターフェースの状態に基づいて今後遷移する可能性のある状態を提示するヘルプ・リコメンド作業を実行するコンピュータプログラムであって、
前記請求項１乃至７の何れかに記載のヘルプ・リコメンド方法を実行する
ことを特徴とするコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンピュータのオペレーティングシステム上で動作するアプリケーションに対して動作し、ユーザの現在の選択インターフェースの状態に基づいて今後遷移する可能性のある状態を提示するヘルプ・リコメンド方法およびその装置に関するものである。
【０００２】
なお、ここでは、「オペレーティングシステム」とはWindows, MacOS, Linux, タブレット端末上で動作するオペレーションシステム全般のことを指し、特にＧＵＩを備えユーザの入力系に対するデバイスドライバを保持するオペレーティングシステムのことを指す。また、「アプリケーション」とは、業務システムやオープンソースのソフトウェアなどを含み、オペレーティングシステム上で動作し、またブラウザ上で表示されるシステムを含む。また、「選択インターフェース」とはマウスのカーソル、ポインタやアイコンを意味し、ポインティングデバイスであるマウスやキーボード、ペンタブレット等を用いて操作画面上でユーザに提示されるGUIチップのことである。
【背景技術】
【０００３】
アプリケーションの複雑化・高機能化につれ、アプリケーションの使い方を操作画面のＧＵＩ上でユーザに対して分かりやすく表現することが難しくなる。    ＧＵＩのウィジット自体が多数の選択項目を抱え、ユーザにとってその項目が分かりにくくなるケースを以下に示す。なお、ここで、「ＧＵＩのウィジット」とはコンボボックス、ボタン、テキストボックス、ベインなどの共通で定義されているＧＵＩの要素項目を指す。
【０００４】
例えばネットワーク監視アプリケーションの監視対象エリアの拡大により一つのコンボボックス上に多数の選択項目を設けて機能を詰めこむことがある。この機能拡張によってコンボボックスの持つ意味やコンボボックスと他のＧＵＩのウィジットとの関係が分かりにくくなり、ＧＵＩのウィジットを含む操作画面をユーザが見ても、アプリケーションの使い方を知らないユーザにとっては操作フローが明確に分からないケースがある。
【０００５】
アプリケーションの複雑化・高機能化は、単一のアプリケーションを操作する際及び複数のアプリケーションを連携して操作する際における操作フローの複雑化に繋がる。操作フローが複雑化した状況では、アプリケーションの使い方を知らないユーザが、単一のアプリケーション及び複数のアプリケーションの操作フローを適切に把握することが難しくなる。例えば故障対応などの現場では、緊急事態におけるトラブルシューティングの業務フローとの関係性をマネージャーが十分に把握できず、現場のチームメンバーの業務を把握できなくなることにも繋がる。
【０００６】
アプリケーションの複雑化・操作フローの複雑化によって、アプリケーションの使い方を知らないユーザが操作に習熟すること、操作の実態を把握することが難しくなる。アプリケーション操作画面上では、過去にユーザがどのように操作を行ってきたかという情報が提示されておらず、またアプリケーションの中で、使われ方によるアプリケーション内の使用項目の違いなどが明確に提示されていないケースが多いため、アプリケーションの習熟に関して時間と労力を要することに繋がる。
【０００７】
アプリケーションの使い方のミスが重大なエラーを引き起こすことがある。ところが使い方のミスを防ぐための機能をアプリケーションの製造段階ですべて織り込むことは難しく、またアプリケーションを使う人に合わせてシステムをローカライズすることには限界がある。例えば監視業務においては、業務システムのミスオペレーションを防ぐことが重要であり、熟練ユーザがミスオペレーションをしないように現場を管理しているケースが多い。実際のミスオペレーションはヒューマンエラーに依るところが多く、クリックのミスや入力値の打ち間違えによって重大なミスオペレーションを引き起こすケースがある。このようなミスオペレーションは業務に習熟すればなくなるというものでもないので、業務システムがヒューマンエラーを事前に防ぐような機能を持っていることが求められている。ところが実際にミスオペレーションを事前に防ぐような機能を把握し、製造段階ですべて実装しておくこと・ローカライズしておくことは難しいといった実情がある。
【０００８】
アプリケーションの使い方に関するミスを防ぐため、マニュアルを作成し、アプリケーションを使う際に参照する方法があるが、ユーザにとってマニュアルを検索、調べる時間・コストを要する点、もしくはマニュアルを参照することによってアプリケーションの操作を中断しなくてはならない。
【先行技術文献】
【非特許文献】
【０００９】
【非特許文献１】. Bergman, L., V. Castelli, T. Lau, and D. Oblinger. DocWizards: a system for authoring follow-me documentation wi- zards. Proc. , 191200, 2005.
【非特許文献２】Toshio Nakamura, Takeo Igarachi.  An Application-Independent System for visualizing User Operation History,UIST'08
【発明の概要】
【発明が解決しようとする課題】
【００１０】
アプリケーションの使い方に関するミスを防ぐための手法として次のようなものが知られている。
【００１１】
その１つは、操作画面内でアプリケーションや次に操作すべき画面を提示し、操作フローに関する情報を直接提示できるアプローチとして非特許文献１に開示されるドキュメンテーションウィザードが知られている。これは、ユーザの操作の手順を提示することにより、実際の操作画面の画像キャプチャで提示し、ユーザの操作支援を行うものである。
【００１２】
しかし、このドキュメンテーションウィザードは、基本的にJavaのSWTのシステムのみで実装されているために、操作ログの汎用性といった観点で課題が存在する。
【００１３】
その他に、直接操作画面上にユーザが操作すべき補助情報を提示できるアプローチとして非特許文献２に開示されるアプリケーションインディペンデントシステムが知られている。これは、ユーザが操作した基本的なWin32などのクリックイベント等で取得できる汎用的なログ情報を元に、操作画面上にWindows標準のペイントで描くように操作の流れを提示することができるが、現在のユーザの操作と連携しておらず、補助情報を提示することができない、といった観点で課題が存在する。
【００１４】
アプリケーションの使い方に関する情報がアプリケーションまたはそのアプリケーションに準じたGUI上で表現できること、アプリケーションに関する使い方を知らないユーザがアプリケーションの使い方を知っているユーザの操作フローを操作画面内で把握できること、アプリケーションの過去の操作の履歴から、アプリケーションに関する使い方を知らないユーザが着目しているポイント（最近参照されたもの、頻度）を元に操作画面上で参照できること、エラーを未然に防ぐことができるような通知がアプリケーション上で構築できることを課題と捉えた。
【００１５】
そこで本発明では上記の背景に対して、アプリケーションの操作画面内で次に操作すべき画面やそれに準ずる情報を直接提示できることを課題とした。
【課題を解決するための手段】
【００１６】
本発明は上記の目的を達成するために、複数のウィンドウを表示可能な操作画面を通じてユーザが入力デバイスを介してアプリケーションの操作を行うコンピュータ装置を用い、前記アプリケーションの操作に関するユーザの現在の選択インターフェースの状態に基づいて今後遷移する可能性のある状態を提示するヘルプ・リコメンド方法であって、前記コンピュータ装置は、前記コンピュータ装置で動作するアプリケーションの画面とともに前記操作画面上に、今後遷移する可能性のある状態の画面或いは操作フロー或いは動画或いはテキスト情報の何れか又はこれらの任意の組み合わせを提示するヘルプ・リコメンド方法を提案する。
【００１７】
さらに本発明は上記の目的を達成するために、上記ヘルプリコメンド方法を実行するコンピュータプログラムを提案する。
【発明の効果】
【００１８】
本発明によれば、ユーザが直面している操作画面に対してリアルタイムな操作状態を元に、今後遷移する可能性のある画面等を提示することができることによって、ユーザがどのようにアプリケーション上で業務を行えば良いのかをリアルタイムに操作画面上で把握することができるようになる。以上の機能によって、業務システムのアプリケーションの使い方が分からないユーザがアプリケーションを実際に操作せずとも現場の業務実態を把握することができるようになること、業務システムの初心者のユーザが現場の業務に即したアプリケーションの使い方に習熟できるようになること、ミスオペレーションに繋がるような操作の使い方を事前に知ることができる、といった効果を奏する。
【図面の簡単な説明】
【００１９】
【図１】本発明の一実施形態におけるヘルプ・リコメンド方法を実行するプログラムを適用したコンピュータ装置を示す図
【図２】本発明の一実施形態におけるアプリケーションのメインウィンドウを示す図
【図３】本発明の一実施形態における実施例１のEstimated Windowsの表示ウィンドウを示す図
【図４】本発明の一実施形態における重心点を説明する図
【図５】本発明の一実施形態において重心点が特定の位置に移動する様子を説明する図
【図６】本発明の一実施形態におけるユーザの操作及び操作に付随してEstimated Windowsが提示される様子を説明する図
【図７】本発明の一実施形態におけるユーザの操作及び操作に付随してEstimated Windowsが提示される様子を説明する図
【図８】本発明の一実施形態におけるユーザの操作及び操作に付随してEstimated Windowsが提示される様子を説明する図
【図９】本発明の一実施形態におけるユーザの操作及び操作に付随してEstimated Windowsが提示される様子を説明する図
【図１０】本発明の一実施形態におけるユーザの操作及び操作に付随してEstimated Windowsが提示される様子を説明する図
【図１１】本発明の一実施形態におけるユーザの操作及び操作に付随してEstimated Windowsが提示される様子を説明する図
【図１２】本発明の一実施形態におけるユーザの操作及び操作に付随してEstimated Windowsが提示される様子を説明する図
【図１３】本発明の一実施形態におけるユーザの操作及び操作に付随してEstimated Windowsが提示される様子を説明する図
【図１４】本発明の一実施形態におけるユーザの操作及び操作に付随してEstimated Windowsが提示される様子を説明する図
【図１５】本発明の一実施形態における選択インターフェースの操作ログから操作エリアを定義する方法を説明する図
【図１６】本発明の一実施形態における実施例２のEstimated Windowsの表示ウィンドウを示す図
【図１７】本発明の実施例２におけるＬｅｖｅｌ１によるヘルプ・リコメンドプログラムの動作順序を説明するフローチャート
【図１８】本発明の実施例２におけるＬｅｖｅｌ１によるヘルプ・リコメンドのウィンドウを示す図
【図１９】本発明の実施例２におけるＬｅｖｅｌ２によるヘルプ・リコメンドプログラムの動作順序を説明するフローチャート
【図２０】本発明の実施例２におけるＬｅｖｅｌ２によるヘルプ・リコメンドのウィンドウを示す図
【図２１】本発明の実施例２における「Distance」設定を説明する図
【図２２】本発明の実施例３における設定ウィンドウを示す図
【図２３】本発明の一実施形態における実施例３のEstimated Windowsの表示ウィンドウを示す図
【図２４】本発明の一実施形態における実施例４のEstimated Windowsの表示ウィンドウを示す図
【図２５】本発明の一実施形態における実施例４のEstimated Windowsの表示ウィンドウを示す図
【図２６】本発明の一実施形態における実施例４のEstimated Windowsの表示ウィンドウを示す図
【図２７】本発明の一実施形態におけるショーテストパスによる操作ログの更新による自動スクリプト生成を説明する図
【図２８】本発明の一実施形態における仮想的な操作による自動スクリプト生成を説明する図
【発明を実施するための形態】
【００２０】
前述した従来技術のアプローチに対して、本発明では非特許文献１に開示されるドキュメンテーションウィザードのように特定の実装形態でしか使えないものではなく、さらに非特許文献２に開示されるアプリケーションインディペンデントシステムでは達成されていない、ユーザの現在の操作のリアルタイムな操作状態を取得する技術により、実際のユーザの操作の状態に対して操作すべき補助情報を提示できる手法に関する技術の検討を行った。
【００２１】
具体的には、現在のユーザのカーソルの座標位置、キーボードの入力状態と操作対象のウィンドウの状態を常時監視してログに取得することにより、直接的にユーザの行うべき情報を提示する手法である。速度、汎用性の観点から、マウス直下のＧＵＩオブジェクトや、クリックトレースの操作列などの基礎的な操作ログイベントから、ユーザが次に操作すべき画面状態を次々にユーザに対して提案するシステムである。
【００２２】
具体的にはユーザの操作イベント（例えばクリックイベントの座標列）に着目し、ユーザが現在操作しているアプリケーションにおけるマウスのポジション（座標）、キーボードの入力待ち状態などを代表とする選択インターフェースの状態と、汎用的で業務を阻害せずに簡易に取得できるユーザの操作状態から、過去に業務システムのユーザが起こしたクリックのトレース、キーボードイベント発生ログ等の汎用的で業務を阻害せず、個人データ上問題のない簡易なログデータから、ユーザが操作すべき内容をリアルタイムに参照、リコメンドすることができるシステムである。
【００２３】
なお、本実施形態では、「汎用的で業務を阻害せずに簡易に取得できるユーザの操作状態」を「リアルタイム（Real time）な操作状態」と称する。また、本実施形態では、「汎用的で業務を阻害せずに個人データ上問題のない簡易なログデータ」を「ベイシック（Basic）な操作ログ」と称する。
【００２４】
次に、本発明の概要並びに一実施形態を説明する。
【００２５】
本発明は、ユーザが日常的に操作しているコンピュータ装置のオペレーティングシステム（ＯＳ）において、オペレーティングシステム上で動作するアプリケーションの選択インターフェースの状態を常時監視して操作イベントをログとして保持することによりユーザの操作を支援するヘルプ・リコメンドを表示する方法に関するものであり、ユーザが操作する画面の画像や操作フローを模したダイアグラムの図を提示するＧＵＩツールチップの表示機能を持つプログラムに関する。
【００２６】
なお、本実施形態において「操作イベント」とは、具体的にはクリックイベントやタッチパネルイベント、キーボードイベント等を指し、オペレーティングシステム上で動作するアプリケーションのＧＵＩ上で選択インターフェースを介してユーザが選択する際のイベントのことを指す。
【００２７】
図１は本発明の一実施形態におけるヘルプ・リコメンド方法を実行するプログラムを適用したコンピュータ装置を示す図である。図において、１０は周知のコンピュータ装置で、装置本体１１と、装置本体１１に接続された入力デバイス１２とディスプレイ１３並びに装置本体１１の内部に設けられた記憶装置１４を備え、オペレーティングシステム（ＯＳ）１５上でアプリケーションプログラム１６およびヘルプ・リコメンドプログラム１７が動作する。ここで、入力デバイス１２はキーボードやマウス等を含むものとする。
【００２８】
本実施形態では、図２に示す設備構築の業務システムのメインウィンドウ100を表示するアプリケーションプログラム１６をヘルプ・リコメンド対象のアプリケーションプログラムとして説明を行う。
【００２９】
メインウィンドウ100には設備構築メニューが表示され、そのメニュー項目として「工事管理」、「補正」、「参照」、「終了」が表示されている。
【実施例１】
【００３０】
次に、本発明の具体的な実施例１を説明する。
【００３１】
実施例１では、アプリケーション１６の操作画面（メインウィンドウ100）上の「工事管理」の項目にマウスカーソル102を近づけると、「工事管理」をクリックした際に今後遷移する可能性のあるウィンドウ(以下、Estimated Windowsと称する)201を１つ以上提示するウィンドウ200がディスプレイ１３に表示される。また、各Estimated Windows 201の下にはウィンドウタイトル遷移数とクリックトレース数が表示される。
【００３２】
また、「参照」や「終了」でもPotential Point 101が提示されているが、ユーザがそのPotential Point 101にマウスカーソル102を近接させた場合には、同様に「参照」や「終了」を押下した場合に遷移する可能性のあるEstimated Windows 201が提示される。Potential Point 101とは、ユーザが操作したアプリケーションの過去のBasicな操作ログの中で、同じウィンドウタイトルが表示された場合に、その起点となる操作ログの重心点（Potential Point 101）を示したものである。操作ログは記憶装置１４に蓄積されている。
【００３３】
なお、Estimated Windows 201は、記憶装置に蓄積されているログに基づいて選択される。すなわち、ヘルプ・リコメンドプログラム１７によって動作しているコンピュータ装置１０は、ユーザの選択インターフェースにおける操作イベント又は選択インターフェース直下のＧＵＩオブジェクトの少なくとも何れか一方を取得して操作ログとして記憶装置１４に蓄積し、記憶装置１４に蓄積されている操作ログに基づいて、現在のユーザの操作対象のアプリケーションと選択インターフェースの状態から遷移する今後の状態をEstimated Windows 201として提示する。
【００３４】
次に、図４を参照して上記重心点（Potential Point 101）について説明する。
【００３５】
各操作エリア103におけるPotential Point 101の座標はメインウィンドウ100の左上角の基準点を原点とするＸＹ座標を用いてき決められるとともに以前の蓄積データの平均値を用いて決められる。すなわち、記憶装置１４に蓄積されているPotential Point 101の座標のＸ座標の平均値とＹ座標の平均値によって現時点より１つ前の時点のPotential Point 101の座標が決定される。
【００３６】
現時点のPotential Point 101の座標は次のようにして決定される。すなわち、メインウィンドウ100における所定の操作エリア103の上記1つ前の時点つまり現在のPotential Point 101にマウスカーソル102を近づけた場合、図４(1)に示すように現在のPotential Pointが１つ存在し、その周辺には複数の任意選択可能なPotential Pointが存在する。次に図４(2)に示すように、過去の操作ログに基づいてマウスカーソル102の位置を中心とした所定範囲内に存在する任意選択可能なPotential Point以外の任意選択可能なPotential Pointを選択不可能とし、さらに図４(3)に示すようにマウスカーソル102の位置に最も近い任意選択可能なPotential Pointを最終の（新たな）Potential Pointとする。このような操作ログを蓄積していくと、図５に示すように初期状態では不特定な位置に存在したPotential Pointが特定の位置に存在するようになる。
【００３７】
次に、本実施形態におけるユーザの操作及び操作に付随して提示されるEstimated Windowsについて図６乃至図１４を参照して説明する。なお、ここでは選択インターフェースとしてマウスカーソル102を用いるがこれに限定されることはなく、タブレットなどであっても良いことは言うまでもない。
【００３８】
なお、ここではウィンドウ200に提示されるEstimated Windows 201の一部を「先読みウィンドウ表示view」内に表して説明する。
【００３９】
ユーザがアプリケーションを操作し、選択インターフェース(マウスカーソル102)を当該のアプリケーションのメインウィンドウ100に対して近づける。このとき図６に示すようにマウスカーソル102は操作エリアに入ってないのでEstimated Windows 201は提示されない。
【００４０】
ユーザがマウスカーソル102をメインウィンドウ100の「工事管理」項目の操作エリア103に持って行くと、図７に示すようにウィンドウ200には１つ以上のEstimated Windows 201は提示される。
【００４１】
ユーザは「工事管理」から提示された候補のウィンドウの情報を参考にした後、図８に示すようにマウスカーソル102を「補正」項目の操作エリア103に近づけると、「候補のウィンドウの表示」が切り替わり、「補正」項目の操作エリア103内でマウスをクリックすると先に生成される可能性の高い候補のEstimated Windows 201がウィンドウ200の表される。
【００４２】
この後、図９に示すように、再度ユーザが「工事管理」項目の操作エリア103にマウスカーソル102を近づけて、再度「工事管理」項目の操作エリア103内でマウスをクリックすると先に生成される可能性の高い候補のEstimated Windows 201がウィンドウ200に表示される。このとき図１０に示すようにユーザが目標となるウィンドウにマウスカーソル102を持って行ってマウスクリックすることにより目標となるウィンドウを指定することもできる。これによりヘルプ・リコメンドシステムに対して操作の流れを教えることができる。
【００４３】
また、図１１乃至図１３に示すように、「工事管理」項目をクリックした後、下位項目の「作業エリア管理」項目をマウスクリックした後に、「作業エリア作成」をマウスクリックすると、実際の操作画面110と目標ウィンドウが同一の画面状態になっていることが確認できる。ユーザがその事実をヘルプ・リコメンドシステムに対して通知することにより、図１４に示すようにユーザは更に、現在の操作対象のウィンドウ状態を起点として今後表示される可能性のある次の候補のウィンドウの表示を行うことができる。
【００４４】
このように、現在操作しているアプリケーション１６とそのアプリケーションの過去の操作ログから、次々と候補となるEstimated Windows 201を提示させることができ、また、その場でモデルとなる操作の流れや代表的な操作フローやウィンドウ遷移順をヘルプ・リコメンドシステムに対して教示することができる。
【００４５】
次に、本実施形態における選択インターフェース（マウスカーソル102）の操作ログから操作エリアを定義する方法について図１５を参照して説明する。ここで説明する選択インターフェースの操作ログから操作エリアを定義する方法は、Ｌｅｖｅｌ１（クリックイベント列による推定）において、操作エリアを定義できる１つの具体例である。
【００４６】
ユーザがアプリケーション１６を操作し、Estimated Windows 201が次々と提示される中で、例えば上記図６乃至図１３を用いて説明したように現在のウィンドウ状態が切り替わった場合に、ヘルプ・リコメンドプログラム１７によって動作しているコンピュータ装置１０は、Coordinate Logを記憶装置１４に保持する。Coordinate Logでは、ユーザが行ったマウス操作におけるマウスカーソルの座標位置の列を保持している。ユーザの一般的な操作ログの中ではCoordinate(48,42)→Coordinate(87,65)→Coordinate(250,70)で示されているように、最短pathで当該の目標のウィンドウに到達することができることもあるが、多くの場合において、D(x,y)で示されているように、冗長で必要のないクリックが発生することもある。そのようなケースにおいて、Coordinate一Coordinate二Coordinate三Coordinate四Coordinate五Coordinate六から、最短path がCoordinate一、Coordinate六であることが判別可能である。そのような最短pathを集め、Voronoi diagramのように操作エリア103を定義することができ、またPotential Point(重心点)101のような操作エリア103の定義を行うこともできる。
【００４７】
また、ヘルプ・リコメンドプログラム１７によって動作しているコンピュータ装置１０は、最短path（ショーテストパス）を定義する操作ログを記録及び更新し、この操作ログに基づいて選択インターフェースのＧＵＩオブジェクトの箇所を特定する。
【実施例２】
【００４８】
次に、本発明の具体的な実施例２を説明する。
【００４９】
実施例２におけるヘルプ・リコメンドプログラムの処理は前述した実施例１とほぼ同様であり、実施例２では実施例１のようなEstimated Windows 201を表示するために、ユーザが重要視するパラメータ設定や、何ステップ先のウィンドウを参照するかについて細かなチューニングを行えるようにした。
【００５０】
これにより、次に操作すべき画面の情報がユーザの重視する観点（特定の人のログ、統計情報）によって提示情報を柔軟に変更することができる。
【００５１】
すなわち、図１６に示すように実施例２では、アプリケーション１６の操作画面（メインウィンドウ100）上の「工事管理」の項目にマウスカーソル102を近づけると、「工事管理」をクリックした際に今後遷移する可能性のあるウィンドウ(Estimated Windows 201)を１つ以上表示するウィンドウ300がディスプレイ１３に表示される。
【００５２】
図１６において、「現在のウィンドウ状態」301では現在ユーザが操作している対象のウィンドウのウィンドウタイトルの名前を表示しており、「ポインティングデバイスの座標位置」302では、現在ユーザが操作している対象のアプリケーションを基準とする相対座標位置において、ユーザのマウスカーソルがどの座標位置にあるかという情報をユーザに通知している。
【００５３】
「現在のユーザ名」303では、アプリケーションを操作しているユーザの名前を表示しており、ユーザによって記憶装置１４に蓄積している操作ログや、提示するEstimated Windows 201を変更するといったチューニングが可能となる。
【００５４】
「提示するウィンドウのステップ数」304では、Estimated Windows 201がユーザの現在操作している対象のウィンドウ状態から、何ステップ先のウィンドウタイトルの結果を表示するかという設定が可能となる。
【００５５】
「ソーティング順序」305においては、ユーザに提示されるEstimated Windows 201の表示順序を決定するソーティングパラメータを表しており、「Frequency」、「Timestamp」、「Manipulation steps」、「Confirm」というソーティングパラメータを具備している。ここで、「Frequency」はユーザが操作した回数の多さ順でEstimated Windowsとして表示する。「Timestamp」はユーザが一番最近操作したもの順で表示する。「Manipulation steps」はEstimated Windowsの中で、最短のウィンドウタイトル遷移数で到達可能なwindowから順に表示する。「Confirm」はユーザがチェックしたウィンドウ遷移だけをEstimated Windowとして表示する。
【００５６】
「Distance」306では、ユーザの選択インターフェース(マウスカーソル)の位置がPotential Pointから「Distance」で設定したピクセル数以下の距離になったときに、Estimated Windows 201を提示することを示している。
【００５７】
「ユーザの参照、実行モード」307では、ユーザが操作ログをヘルプ・リコメンドプログラムを介して記憶装置１４に蓄積させたいときに選択する「Training」モードと、実際にアプリケーションを操作する中でEstimated Windowsを参照したいときに選択する「Using」モードが存在する。
【００５８】
「ログの活用モード」308では、Ｌｅｖｅｌ１(クリックイベント列による推定)とＬｅｖｅｌ２（ＧＵＩのＵＩオブジェクト取得による推定）の２種類が存在する。本実施例では、作業エリアの実施例としてＬｅｖｅｌ１ではPotential Pointを用い、Ｌｅｖｅｌ２ではＵＩオブジェクトのサイズと座標位置におけるエリアを用いている。
【００５９】
次に、上記Ｌｅｖｅｌ１及びＬｅｖｅｌ２のそれぞれにおけるヘルプ・リコメンドプログラムの動作を説明する。
【００６０】
図１７に示すフローチャートでは、Ｌｅｖｅｌ１（クリックイベント列による推定）によるヘルプ・リコメンドプログラム１７の動作の順序を示している。
【００６１】
Ｌｅｖｅｌ１では、業務システムであるアプリケーションのメインウィンドウ100をユーザが操作すると、現在の選択インターフェース（マウスカーソル）の操作画面内の座標位置(x,y)を取得し（ＳＡ１）、その後、データベースの中からユーザが操作した操作エリア（本実施形態で述べるPotential Pointは操作エリアの実施形態の一つである）を取得する（ＳＡ２）。その後、操作エリアの中で最も近接の操作エリアもしくは操作エリアの中にユーザの選択インターフェースが存在するする場合（ＳＡ３）において、記憶装置１４に蓄積されているデータベースから、ウィンドウの遷移が該当するウィンドウステップ数以下である操作ログを抽出する（ＳＡ４）。その後、「Frequency,Timestamp, Manipulation steps」におけるソーティングを行い（ＳＡ５）、例えば図１８に示すように候補のウィンドウ（Estimated Windows 201）を表示する（ＳＡ６）。
【００６２】
図１９に示すフローチャートでは、Ｌｅｖｅｌ２（ＧＵＩ のＵＩオブジェクト取得による推定）によるヘルプ・リコメンドプログラム１７の動作の順序を示している。
【００６３】
Ｌｅｖｅｌ２では、業務システムであるアプリケーションのメインウィンドウ100をユーザが操作すると、ユーザの選択インターフェース(マウスカーソル)直下のＵＩ構成要素を取得する（ＳＢ１）。このときＵＩ構成要素を取得できるか否かを判定し（ＳＢ２）、ユーザがＵＩ構成要素を取得できない場合には図７に示したフローチャートのＳＡ１の処理に移行し、Ｌｅｖｅｌ１として処理する。
【００６４】
一方、ＵＩ構成要素を取得できる場合には、データベースの中からＵＩ構成が同一である要素を取得し（ＳＢ３）、データベースからウィンドウの遷移が該当するウィンドウステップ数以下である操作ログを抽出する（ＳＢ４）。その後、「Frequency, Timestamp, Manipulation steps」におけるソーティングを行い（ＳＢ５）、例えば図２０に示すように候補のウィンドウを表示する（ＳＢ６）。
【００６５】
本実施例２では、前述したように「Distance」306の設定によって、図２１に示すように、アプリケーションウィンドウ400においてユーザの選択インターフェース(マウスカーソル102)の位置がPotential Point 101から「Distance」で設定したピクセル数以下の距離になったときに、Estimated Windows 201が提示される。
【実施例３】
【００６６】
次に、本発明の具体的な実施例３を説明する。
【００６７】
実施例３におけるヘルプ・リコメンドプログラムの処理は前述した実施例１，２とほぼ同様であり、実施例３では実施例２で説明したウィンドウ300を設定ウィンドウ500とし、Estimated Windows 201のみを表示するウィンドウを新たに設けた。すなわち、実施例３における設定ウィンドウ500は図２２に示すように実施例２のウィンドウ300と同様の構成である。また、設定終了後には設定ウィンドウ500を非表示とすることができる。
【００６８】
実施例４では、例えば図２３に示すようにアプリケーションウィンドウ400においてユーザの選択インターフェース(マウスカーソル102)の位置がPotential Point 101から「Distance」で設定したピクセル数以下の距離になったときには、ウィンドウ610が表示されるとともにウィンドウ610内にEstimated Windows 201が提示される。
【実施例４】
【００６９】
次に、本発明の具体的な実施例４を説明する。
【００７０】
実施例４におけるヘルプ・リコメンドプログラムの処理は前述した実施例１乃至３とほぼ同様であり、実施例４では実施例３の処理に加えてウィンドウの再帰的表示機能を追加した。
【００７１】
すなわち、図２４乃至図２６に示すように、実施例４においても、アプリケーションのメインウィンドウ100においてユーザの選択インターフェース（マウスカーソル102）の位置が所定項目のPotential Point 101から「Distance」で設定したピクセル数以下の距離になったときには、ウィンドウ610内にマウスカーソル102が位置する項目に対応するEstimated Windows 201が提示される。
【００７２】
さらに実施例４では、ウィンドウ610内にマウスカーソル102を移動し、マウスカーソル102の位置がウィンドウ610内に存在するPotential Point 101から「Distance」で設定したピクセル数以下の距離になったときには、新たなウィンドウ620が表示されて、ウィンドウ620内にマウスカーソル102が位置する項目に対応するEstimated Windows 201が提示される。
【００７３】
ウィンドウ610に提示されるEstimated Windows 201は設定ウィンドウ500においてステップ１に設定された候補ウィンドウであり、ウィンドウ620に提示されるEstimated Windows 201は設定ウィンドウ500においてステップ２に設定された候補ウィンドウである。また、各ウィンドウ610,620におけるEstimated Windows 201の提示順は設定ウィンドウ500において設定されたソート順になっている。
【００７４】
以上説明したように本実施形態によれば、業務システムのアプリケーションにおける過去のユーザのBasicな操作ログに基づいて今後遷移する可能性のある画面等を提示することができるとともに、先の画面上で仮想的に操作することができる。
【００７５】
これにより、ユーザが直面している操作画面に対してまさにマウス・キーボード操作を行っているリアルタイムな操作状態を元に、例えばユーザがどのＧＵＩウィジット（ボタンやコンボボックス）の項目を選べば良いかを決めあぐねている際に、ユーザがどのようにアプリケーション上で業務を行えば良いのかを知ることができる。
【００７６】
さらに、アプリケーション上でどのような操作が行われてきたのかをリアルタイムに操作画面上で把握することができるようになる。
【００７７】
以上の機能によって、業務システムのアプリケーションの使い方が分からないユーザがアプリケーションを実際に操作せずとも現場の業務実態を把握することができるようになる。また、業務システムの初心者のユーザが現場の業務に即したアプリケーションの使い方に習熟できるようになる。さらに、ミスオペレーションに繋がるような操作の使い方を事前に知ることができる。
【００７８】
なお、上記実施形態では今後遷移する可能性のある状態としてウィンドウの画面を提示する例を示したが、これに限定されることはなく、画面或いは操作フロー或いは動画或いはテキスト情報の何れか又はこれらの任意の組み合わせを提示するようにしても良いことは言うまでもない。
【００７９】
また、上記実施形態では選択インターフェースにおいてショーテストパスで定義された操作エリアからユーザが到達したい画面までの自動操作のスクリプトを生成することができる。すなわち、ユーザが「再帰的表示」に関連して，ユーザが到達したいウィンドウを選択するなどの任意の手段を用い、そのウィンドウに至るまでのユーザのBasicな操作ログを出力することにより、自動操作のためのスクリプトを生成できる。すなわち、上記図１５に示したD(x,y)を含むCoordinateを収集し、その中でショーテストパスを定義することにより，最短経路（ショーテストパス）の自動操作のスクリプトを生成することができる。このように生成した自動操作のスクリプトを用いることにより、操作をより簡略化することができる。
【００８０】
例えば、図２７に示すように、ウィンドウＡ710からウィンドウＢ720に遷移するときのスクリプトをScript#AtoBとし、ウィンドウＢ710からウィンドウＤ740に遷移するときのスクリプトをScript#BtoDとし、ウィンドウＡ710からウィンドウＣ730に遷移するときのスクリプトをScript#AtoCとし、ウィンドウＢ720からウィンドウＥ750に遷移するときのスクリプトをScript#BtoEとすると、これらのスクリプトから自動操作のスクリプトを生成することができる。
【００８１】
また、遷移する可能性がある再帰的な仮想描画ウィンドウと仮想的な操作を組み合わせて、ユーザが実際の画面を次々と操作することにより、予め仮想的な操作手順を記録して、選択インターフェースのイベントログもしくは自動操作のスクリプトを生成することができる。このように生成した自動操作のスクリプトを用いることにより、操作をより簡略化することができる。
【００８２】
例えば、図２８に示すように、メインウィンドウ100がウィンドウＡ710（現在の状態）であるとき、メインウィンドウ100の「工事管理」の項目にマウスカーソルを持って行くとウィンドウ610が表示され、ウィンドウ610内に複数のEstimated Windows 201が表示される。このとき、ユーザがマウスカーソル102をウィンドウ610内の所定のEstimated Windows 201B（ウィンドウＢ720）に持って行くとマウスカーソル102の位置に該当する操作エリアに対応してウィンドウ620にEstimated Windows 201E（ウィンドウＥ750（到達したい状態））が表示される。ここでユーザがウィンドウ620にEstimated Windows 201Eの上にマウスカーソル102を持って行ってクリックすることによりイベントログと自動操作のスクリプトが生成される。
【産業上の利用可能性】
【００８３】
本発明によれば、業務システムのアプリケーションにおける過去のユーザの操作ログに基づいて今後遷移する可能性のある画面等を提示することができるので、業務システムのアプリケーションの使い方が分からないユーザがアプリケーションを実際に操作せずとも現場の業務実態を把握することができるようになる。
【符号の説明】
【００８４】
１０…コンピュータ装置、１１…装置本体、１２…入力デバイス、１３…ディスプレイ、１４…記憶装置、１５…オペレーティングシステム、１６…アプリケーションプログラム、１７…ヘルプ・リコメンドプログラム、100…メインウィンドウ、101…Potential Point、102…マウスカーソル、103…操作エリア、200…ウィンドウ、201…Estimated Windows、300…ウィンドウ、301…現在のウィンドウ状態、302…ポインティングデバイスの座標位置、303…現在のユーザ名、304…提示するウィンドウのステップ数、305…ソーティング順序、306…Distance、307…ユーザの参照、実行モード、308…ログの活用モード、400…アプリケーションウィンドウ、500…設定ウィンドウ、610,620…ウィンドウ、710…ウィンドウＡ、720…ウィンドウＢ、730…ウィンドウＣ、740…ウィンドウＤ750…ウィンドウＥ。
【図１】
2014238686.tif 000003
【図２】
2014238686.tif 000004
【図３】
2014238686.tif 000005
【図４】
2014238686.tif 000006
【図５】
2014238686.tif 000007
【図６】
2014238686.tif 000008
【図７】
2014238686.tif 000009
【図８】
2014238686.tif 000010
【図９】
2014238686.tif 000011
【図１０】
2014238686.tif 000012
【図１１】
2014238686.tif 000013
【図１２】
2014238686.tif 000014
【図１３】
2014238686.tif 000015
【図１４】
2014238686.tif 000016
【図１５】
2014238686.tif 000017
【図１６】
2014238686.tif 000018
【図１７】
2014238686.tif 000019
【図１８】
2014238686.tif 000020
【図１９】
2014238686.tif 000021
【図２０】
2014238686.tif 000022
【図２１】
2014238686.tif 000023
【図２２】
2014238686.tif 000024
【図２３】
2014238686.tif 000025
【図２４】
2014238686.tif 000026
【図２５】
2014238686.tif 000027
【図２６】
2014238686.tif 000028
【図２７】
2014238686.tif 000029
【図２８】
2014238686.tif 000030