JP5812507B2 - 端末装置及びアノテーション方法並びにコンピュータシステム及びコンピュータプログラム - Google Patents
端末装置及びアノテーション方法並びにコンピュータシステム及びコンピュータプログラム Download PDFInfo
- Publication number
- JP5812507B2 JP5812507B2 JP2014522549A JP2014522549A JP5812507B2 JP 5812507 B2 JP5812507 B2 JP 5812507B2 JP 2014522549 A JP2014522549 A JP 2014522549A JP 2014522549 A JP2014522549 A JP 2014522549A JP 5812507 B2 JP5812507 B2 JP 5812507B2
- Authority
- JP
- Japan
- Prior art keywords
- annotation
- window
- database
- display
- user
- 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
Links
- 238000000034 method Methods 0.000 title claims description 80
- 238000004590 computer program Methods 0.000 title claims description 7
- 230000008859 change Effects 0.000 claims description 29
- 238000012544 monitoring process Methods 0.000 claims description 21
- 238000004364 calculation method Methods 0.000 claims description 17
- 238000009825 accumulation Methods 0.000 claims description 9
- 238000013500 data storage Methods 0.000 claims description 5
- 230000004044 response Effects 0.000 claims description 4
- 238000004891 communication Methods 0.000 claims description 3
- 230000008569 process Effects 0.000 description 12
- 238000012545 processing Methods 0.000 description 8
- 238000013515 script Methods 0.000 description 7
- 230000001360 synchronised effect Effects 0.000 description 4
- 238000001994 activation Methods 0.000 description 3
- 230000004913 activation Effects 0.000 description 2
- 238000012217 deletion Methods 0.000 description 2
- 230000037430 deletion Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000007704 transition Effects 0.000 description 2
- 230000008901 benefit Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/451—Execution arrangements for user interfaces
- G06F9/453—Help systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0481—Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/166—Editing, e.g. inserting or deleting
- G06F40/169—Annotation, e.g. comment data or footnotes
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Human Computer Interaction (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- User Interface Of Digital Computer (AREA)
Description
本発明は、端末装置で動作する業務システムにおいて、業務を行っているユーザを直接サポートするためのエージェントとなって端末装置上で動作するシステムに関し、特に既存の業務システムを改造することなく様々なユーザが主体となって業務知識を操作画面上のユーザインターフェースに対して追記或いは共有することができる技術に関する。
元来、端末装置を操作して業務を行っているユーザが操作対象となる実際の業務システムのユーザインターフェースを対象として、業務知識をユーザが直接記述することは業務システムの改変を伴うため不可能である。仮に操作対象の業務システムのAPI(Application Program Interface)があったとしても業務知識を記述するためには様々な業務システムによって提供されているAPIの実装をその都度把握し、業務システムのアーキテクチャに即した関数からアクセスするための個々のアダプターの設定が必要であるため汎用的でない。
そこでユーザが業務システムの業務知識を記述する場合は業務システムとは別にテキストやwikiなどの知識共有のツールを使って業務知識を蓄積することが多い。しかしそのような知識共有のツール内に記述された文章の中に、ユーザが画面のウィンドウの変遷に対してどのようなタイミングで業務知識を参照するべきかを記述することは困難であり、業務知識がテキストという1次情報に変換されているために2D画面での実操作とリンクした形式で業務知識を提供することは困難である。
また、画面上に表示されているウィジット(画面上に表示されたボタンやテキストなど固有のコントロール)に対して業務知識を直接的にユーザに提供することは難しい。
さらに、他のユーザによって記述されたテキスト形式の業務知識に対して、あるユーザが新しい業務知識を付与する際には、他のユーザによって蓄積された業務知識の文脈や背景を理解していなければならず、また、画面上に表示されているユーザインターフェースと同期したフォーマットで記述されていないため、実操作画面を踏まえた知識をドキュメント化することには稼働がかかってしまい、かつ表現することが難しかった。
さらにまた、業務システムを管理するシステムの作成者や主管側の立場の人が業務システムを操作するためのマニュアルを参照し、実際業務中のユーザからフィードバックを直接得るための環境が用意されていないため、マニュアルを改良するための機会に恵まれておらず、また現場のオペレータ間で操作画面を通して業務知識を共有させるためのデータベース(以下、DBと称する)、及び端末装置の環境や業務システムのアーキテクチャを意識せず業務知識の共有を行うための端末装置で動作する操作支援のツールが提供されていないという背景があった。
一方、端末装置上で動作する既存の業務システムを改造することなく、外部からアクセスするためのAPIを業務システムが持っていない場合でも、自動操作や画面のウィジットに対してそれを説明するためのテキストを付与できるツールとしてSikuliが知られている(非特許文献1を参照)。
SikuliはOpenCVによる画像のテンプレートマッチングを使用しており、エンドユーザが操作画面の画像を直接Pythonのスクリプト中に埋め込むことで、従来の操作支援ツールと比較して操作支援のためのスクリプトが容易に書けるという点に優位性がある。Sikuliでは画像のテンプレートマッチングの結果に対して対応するテキストを自動化スクリプト内へ記述することができ、実際に動いているシステムに対して画像マッチングによってテキストをオーバーレイ表示させる機能を追加した(非特許文献2を参照)。
"Sikuli: using GUI screenshots for search and automation "(UIST ’09 proceeding)
"Creating contextual help for GUIs using screenshots "(UIST ’11 proceeding)
しかしながら、非特許文献1、非特許文献2に開示されている技術ではデフォルトで操作画面上に表示されている画面全体の画像に対して貪欲に画像のテンプレートマッチングを行うため、計算量が増加するという問題点があった。
また、ユーザが所望するテキストを表示させるための操作画面内のイベントをユーザ自身が事前に決定しスクリプト化する必要があるという点があった。さらには、テキストの表示のための契機となるイベント自体が画像のテンプレートマッチングによるものであるということから、ウィンドウのアクティブ、非アクティブに関わらず画像マッチングを行うので、非アクティブ時の画面上の表示による変化から画像マッチングに失敗するパターンを想定し明確にスクリプト化しなくてはならないという点、現実の業務システムの操作と連携してテキストを付与する際には画像マッチング自体をイベントの契機とするため、常時監視による計算量が増大するという点、監視のための画像マッチングの契機をユーザ自身の判断に委ねることで、業務知識表示のためのタイミングをユーザがうまく捉えられないという点、ユーザが実際の業務システムの画面を見ながら幾つかのテキストの候補から選択的に見たいテキストを選ぶためのユーザインターフェースを具備していないという点、また表示させたいテキストを含むスクリプトを管理する場合に探索する箇所が画面に表示されるウィンドウの何れかであって特定のDBを持っていないため、テキスト表示の箇所と画像をまとめて整理してユーザが編集する環境を提供していないという点、ユーザ間でスクリプトを共有させるための編集用のDBが用意されていないため、他のユーザによってスクリプトを編集追記させるのが難しいという点等の問題点があった。
また、ユーザが所望するテキストを表示させるための操作画面内のイベントをユーザ自身が事前に決定しスクリプト化する必要があるという点があった。さらには、テキストの表示のための契機となるイベント自体が画像のテンプレートマッチングによるものであるということから、ウィンドウのアクティブ、非アクティブに関わらず画像マッチングを行うので、非アクティブ時の画面上の表示による変化から画像マッチングに失敗するパターンを想定し明確にスクリプト化しなくてはならないという点、現実の業務システムの操作と連携してテキストを付与する際には画像マッチング自体をイベントの契機とするため、常時監視による計算量が増大するという点、監視のための画像マッチングの契機をユーザ自身の判断に委ねることで、業務知識表示のためのタイミングをユーザがうまく捉えられないという点、ユーザが実際の業務システムの画面を見ながら幾つかのテキストの候補から選択的に見たいテキストを選ぶためのユーザインターフェースを具備していないという点、また表示させたいテキストを含むスクリプトを管理する場合に探索する箇所が画面に表示されるウィンドウの何れかであって特定のDBを持っていないため、テキスト表示の箇所と画像をまとめて整理してユーザが編集する環境を提供していないという点、ユーザ間でスクリプトを共有させるための編集用のDBが用意されていないため、他のユーザによってスクリプトを編集追記させるのが難しいという点等の問題点があった。
本発明の目的は上記の問題点に鑑み、ユーザの操作に追従して画面上に表示されるテキストとアイコン(アノテーション)を表示するために計算量を低減することが可能である端末装置及びアノテーション方法並びにコンピュータシステム及びコンピュータプログラムを提供することである。
本発明のさらなる目的は、任意のユーザがアノテーション文章を追加及び編集することが容易に可能である端末装置及びアノテーション方法並びにコンピュータシステム及びコンピュータプログラムを提供することである。
本発明は上記目的を達成するために、テキスト又はアイコンを含むアノテーションの表示対象となるウィンドウ毎に作成されたアノテーションルールが蓄積されているアノテーションデータベースと、ウィンドウを表示可能な操作画面に表示されているウィンドウのうちの何れがアクティブウィンドウであるかを監視すると共に、前記アノテーションデータベースを検索して前記アノテーションデータベース内に前記アクティブウィンドウに対応するアノテーションルールが存在し且つユーザによって操作が行われたときにアノテーション表示部に対してアノテーションの表示を要求する業務画面状態取得部と、前記業務画面状態取得部からの要求に応じてユーザの操作に関連するアノテーションルールを前記アノテーションデータベースから取得して該アノテーションルールに含まれるアノテーションを前記操作画面に表示する前記アノテーション表示部とを備えていることを特徴とする端末装置を提案する。
本発明の端末装置によれば、アノテーションデータベースはアノテーションルールが表示対象となるウィンドウ毎に分けて蓄積されており、アノテーションの表示対象となるアクティブウィンドウが何れであるかが常時監視されているので、アノテーション文章を表示する際にはアクティブウィンドウに対応して蓄積されているアノテーションルールに含まれるアノテーション文書のみが検索されて表示される。
また、本発明は上記の目的を達成するために、上記端末装置においてさらに、アノテーション付与対象となるウィンドウが指定されたときに該ウィンドウ画面の属性値を前記アノテーションルールとして前記アノテーションデータベースに登録するアクティブウィンドウ画面属性値取得部と、ユーザの操作に基づいて、所定の照合位置を基準としてアノテーション文章の表示位置及びテンプレート画像の探索領域が指定すると共にテンプレート画像をアクティブウィンドウ全体のキャプチャイメージであるアノテーションベース画像から指定するアノテーション表示位置編集部と、ユーザの操作に基づいて前記アノテーションデータベースに蓄積されているアノテーションルールとしてのアクティブウィンドウのテンプレート画像の編集及びアクティブウィンドウ画面の属性値の編集を行うためのアノテーションデータベース編集部とを備え、前記業務画面状態取得部は、前記操作画面上の前記アクティブウィンドウを検出し、該アクティブウィンドウ内にのみアノテーションアイコンとメッセージツールチップとアノテーション文章を表示するように前記アノテーション表示部に対してアクティブウィンドウの座標位置及びサイズを指示し、前記アノテーション表示部は、ユーザがアノテーションを参照する際に、前記業務画面状態取得部から指示を受けたアクティブウィンドウ内であり且つユーザが指定するテンプレート画像に一致する画像付近の所定位置にアノテーションアイコンとメッセージツールチップと前記アノテーションデータベースに登録されているアノテーション文章を表示する端末装置を提案する。
本発明の端末装置によれば、アクティブウィンドウ画面属性値取得部によって、アノテーション付与対象となるウィンドウが指定されたときに該ウィンドウ画面の属性値がアノテーションルールとしてアノテーションデータベースに登録され、アノテーション表示位置編集部によって、ユーザの操作に基づいて、所定の照合位置を基準としてアノテーション文章の表示位置及びテンプレート画像の探索領域が指定されると共にテンプレート画像がアクティブウィンドウ全体のキャプチャイメージであるアノテーションベース画像から指定される。さらに、アノテーションデータベース編集部によって、ユーザの操作に基づいてアノテーションデータベースに蓄積されているアノテーションルールとしてのアクティブウィンドウのテンプレート画像の編集及びアクティブウィンドウ画面の属性値の編集が行われ、業務画面状態取得部によって、操作画面上のアクティブウィンドウが検出され、該アクティブウィンドウ内にのみアノテーションアイコンとメッセージツールチップとアノテーション文章を表示するようにアノテーション表示部に対してアクティブウィンドウの座標位置及びサイズが指示される。さらにまた、アノテーション表示部によって、ユーザがアノテーションを参照する際に、業務画面状態取得部から指示を受けたアクティブウィンドウ内であり且つユーザが指定するテンプレート画像に一致する画像付近の所定位置にアノテーションアイコンとメッセージツールチップとアノテーションデータベースに登録されているアノテーション文章が表示される。
また、本発明は上記の目的を達成するために、上記端末装置においてさらに、前記業務画面状態取得部は、ユーザの操作をポーリング形式で監視することによってウィンドウサイズ及びウィンドウ座標位置を取得し、該ウィンドウ座標位置に対するアノテーション表示対象となる座標位置の差分を計算し、該計算結果に基づいてアノテーションの再描画を行う端末装置を提案する。
本発明の端末装置によれば、業務画面状態取得部により、ユーザの操作がポーリング形式で常時監視されてウィンドウサイズ及びウィンドウ座標位置が取得され、該ウィンドウ座標位置に対するアノテーション表示対象となる座標位置の差分が計算され、該計算結果に基づいてアノテーションの再描画が行われる。
本発明は上記の目的を達成するために、端末装置が実行するアノテーション方法であって、テキスト又はアイコンを含むアノテーションの表示対象となるウィンドウ毎に作成したアノテーションルールを書き換え可能な記憶部に形成されたアノテーションデータベースに蓄積するデータ蓄積手順と、前記データ蓄積手順の後に、ウィンドウを表示可能な操作画面に表示されているウィンドウのうちの何れがアクティブウィンドウであるかを監視する監視手順と、前記アノテーションデータベースを検索して前記アノテーションデータベース内に前記アクティブウィンドウに対応するアノテーションルールが存在し且つユーザによって操作が行われたときに、ユーザの操作に関連するアノテーションルールを前記アノテーションデータベースから取得して該アノテーションルールに含まれるアノテーションを前記操作画面に表示する表示手順と、を有する、アノテーション方法を提案する。
本発明のアノテーション方法によれば、端末装置によって、アノテーション文章の表示対象となるウィンドウ毎に作成された複数のアノテーションルールがアノテーションデータベースに蓄積され、操作画面に表示されているアクティブウィンドウが常時監視されているので、そのウィンドウプロパティ情報によってアノテーションデータベースを検索し、アノテーションデータベース内にアクティブウィンドウに対応するアノテーションルールが存在し且つユーザによってアノテーション表示操作が行われたときに、ユーザの操作に関連するアノテーションルールがアノテーションデータベースから取得され、該アノテーション文章が操作画面に表示される。
また、本発明は上記の目的を達成するために、上記アノテーション方法において、前記端末装置は、さらに、前記データ蓄積手順において、アノテーション付与対象となるウィンドウが指定されたときに該ウィンドウ画面の属性値を前記アノテーションルールとして前記アノテーションデータベースに登録する属性値取得手順を実行するか、或いは、前記データ蓄積手順において、ユーザの操作に基づいて、所定の照合位置を基準としてアノテーション文章の表示位置及びテンプレート画像の探索領域を指定すると共にテンプレート画像をアクティブウィンドウ全体のキャプチャイメージであるアノテーションベース画像から指定する表示位置編集手順を実行するか、或いは、前記データ蓄積手順において、ユーザの操作に基づいて前記アノテーションデータベースに蓄積されているアノテーションルールとしてのアクティブウィンドウのテンプレート画像の編集及びアクティブウィンドウ画面の属性値の編集を行うためのデータベース編集手順を実行し、前記表示手順において、ユーザがアノテーションを参照する際に、前記アクティブウィンドウ内であり且つユーザが指定するテンプレート画像に一致する画像付近の所定位置にアノテーションアイコンとメッセージツールチップと前記アノテーションデータベースに登録されているアノテーション文章を表示するツール表示手順を実行する、アノテーション方法を提案する。
本発明のアノテーション方法によれば、端末装置によって、さらに、アノテーション付与対象となるウィンドウが指定されたときに該ウィンドウ画面の属性値がアノテーションルールとしてアノテーションデータベースに登録され、ユーザの操作に基づいて、所定の照合位置を基準としてアノテーション文章の表示位置及びテンプレート画像の探索領域が指定されると共にテンプレート画像がアクティブウィンドウ全体のキャプチャイメージであるアノテーションベース画像から指定される。さらに、ユーザの操作に基づいて、アノテーションデータベースに蓄積されているアノテーションルールとしてのアクティブウィンドウのテンプレート画像の編集及びアクティブウィンドウ画面の属性値の編集が行われ、ユーザがアノテーションを参照する際に、アクティブウィンドウ内であり且つユーザが指定するテンプレート画像に一致する画像付近の所定位置にアノテーションアイコンとメッセージツールチップとアノテーションデータベースに登録されているアノテーション文章が表示される。
また、本発明は上記の目的を達成するために、上記アノテーション方法において、前記端末装置は、さらに、前記表示手順において、ユーザの操作をポーリング形式で監視することによってウィンドウサイズ及びウィンドウ座標位置を取得し、該ウィンドウ座標位置に対するアノテーション表示対象となる座標位置の差分を計算し、該計算結果に基づいてアノテーション文章の再描画を行うアノテーション方法を提案する。
本発明のアノテーション方法によれば、ユーザの操作がポーリング形式で常時監視されてウィンドウサイズ及びウィンドウ座標位置が取得され、該ウィンドウ座標位置に対するアノテーション表示対象となる座標位置の差分が計算され、該計算結果に基づいてアノテーション文章の再描画が行われる。
また、本発明は上記の目的を達成するために、上記端末装置をクライアント端末として有し、該クライアント端末が通信網を介してサーバに接続されているコンピュータシステムにおいて、前記サーバは、前記クライアント端末のアノテーションデータベースに蓄積されているアノテーションルールと同等のアノテーションルールが蓄積されているサーバサイドアノテーションデータベースを備え、前記クライアント端末のアノテーションデータベースは、自己が蓄積するアノテーションルールに加えられた変更に同期して該変更と同じ変更を前記サーバサイドアノテーションデータベースに指示するコンピュータシステムを提案する。
本発明のコンピュータシステムによれば、クライアント端末のアノテーションデータベースに蓄積されているアノテーションルールと同等のアノテーションルールが蓄積されているサーバサイドアノテーションデータベースは、クライアント端末のアノテーションデータベースが蓄積するアノテーションルールに加えられた変更に同期して変更される。
また、本発明は上記の目的を達成するために、コンピュータを、本発明に係る端末装置の各手段として機能させるためのコンピュータプログラムを提案する。
本発明のコンピュータプログラムによれば、該プログラムが起動されたコンピュータ装置からなる端末装置によって上記アノテーション方法が実行される。
本発明によれば、アノテーション文章を表示する際に、アノテーションデータベースに登録されているアノテーションルールの中のアクティブウィンドウと同等のタイトル名を持つアノテーションルールを検索し、抽出されたもののみを処理すればよいのでアノテーション文章の表示にかかる計算量及び時間を従来よりも低減することができる。
また、ユーザが、アノテーション付与対象となる新たなウィンドウのアノテーションルールをアノテーションデータベースに登録することができると共に、アノテーションデータベースに蓄積されているアノテーションルールを追加及び編集することができる。同時に、アノテーション文章を表示する際に、テンプレートマッチングの探索領域を予めアクティブウィンドウ内に限定することで、探索の計算量を抑えた効率的なマッチングが可能となる。さらにまた、アノテーション文章の再描画時にはウィンドウ座標位置に対するアノテーション表示対象となる座標位置の差分を計算し、該計算結果に基づいてアノテーションの再描画が行われるので、アノテーション文章の再描画にかかる計算量及び時間を従来よりも低減することができる。また、サーバサイドアノテーションデータベースに蓄積されているアノテーションルールがクライアントサイドアノテーションデータベースに蓄積されているアノテーションルールの変更に同期して変更されるので、他のクライアント端末を使用するユーザとアノテーションルールを共有することができる。
また、ユーザが、アノテーション付与対象となる新たなウィンドウのアノテーションルールをアノテーションデータベースに登録することができると共に、アノテーションデータベースに蓄積されているアノテーションルールを追加及び編集することができる。同時に、アノテーション文章を表示する際に、テンプレートマッチングの探索領域を予めアクティブウィンドウ内に限定することで、探索の計算量を抑えた効率的なマッチングが可能となる。さらにまた、アノテーション文章の再描画時にはウィンドウ座標位置に対するアノテーション表示対象となる座標位置の差分を計算し、該計算結果に基づいてアノテーションの再描画が行われるので、アノテーション文章の再描画にかかる計算量及び時間を従来よりも低減することができる。また、サーバサイドアノテーションデータベースに蓄積されているアノテーションルールがクライアントサイドアノテーションデータベースに蓄積されているアノテーションルールの変更に同期して変更されるので、他のクライアント端末を使用するユーザとアノテーションルールを共有することができる。
本実施形態は、本発明における、クライアント端末(端末装置)の業務システムのアプリケーションを利用する様々なユーザが操作画面を通じて業務を行う際に、操作画面上に表示される画像を元に予め作成されたアノテーションデータベース(以下、アノテーションDBと称する)を参照し、操作対象となっているアクティブウィンドウに対して操作画面にオーバーレイさせる形でアノテーション文章を表示させるコンピュータシステム及び端末装置の一具体例を説明するものである。
以下、添付の図を参照して本発明の一実施形態を説明する。以下に説明する実施形態は本発明の一実施例であり、本発明は、以下の実施形態に制限されるものではない。なお、本明細書及び図面において符号が同じ構成要素は、相互に同一のものを示すものとする。
図1は本実施形態におけるコンピュータシステムの構成を示すブロック図である。図において、1はクライアント端末、3はサーバである。なお、クライアント端末1とサーバ3はネットワーク(通信網)5によって接続され、互いに通信可能な状態になっている。
また、以下で述べるアノテーションDBとは、クライアント端末1に備わるクライアントサイドアノテーションDBとサーバ3に備わるサーバサイドアノテーションDBの2つのDB(データベース)の総称である。ユーザがアノテーションDBを参照するということは、クライアントサイドアノテーションDBを参照する場合とサーバサイドアノテーションDBを参照する場合の2つを意味している。ユーザがクライアント端末1からネットワーク5を介して直接、サーバサイドアノテーションDBを参照することも可能である。クライアントサイドアノテーションDBとサーバサイドアノテーションDBは、図6及び図7で示しているとおり、データの持ち方(例えばXMLの構造)は差異がないが、DBのテーブルに関しては、図6に示すクライアントサイドアノテーションDBのテーブルに比べて図7に示すサーバサイドアノテーションDBのテーブルでは<user>テーブルの下に<window>テーブルがあるなど、サーバサイドアノテーションDBのテーブルはクライアントサイドアノテーションDBのテーブルを包含するようなデータの持ち方をしている。
図1に示すように、クライアント端末1は、周知のコンピュータ装置からなり、操作画面10を表示するモニタと、業務画面状態取得部21、アノテーション表示部22、アクティブウィンドウ画面属性値取得部23、アノテーション表示位置編集部24、アノテーションDB編集部25、クライアントサイドアノテーションDB(以下、アノテーションDBと称する)26、操作部27を備えている。
本実施形態に係るアノテーション方法は、クライアント端末1が操作に関するアノテーション文章を操作画面に表示するアノテーション方法であって、データ蓄積手順と、監視手順と、表示手順と、を有する。監視手順はデータ蓄積手順の後に実行する。監視手順を実行中に表示手順を実行する。
データ蓄積手順では、アノテーション文章の表示対象となるウィンドウ毎に作成した複数のアノテーションルールをアノテーションDB26及び31に蓄積する。
監視手順では、操作画面に10表示されているウィンドウのうちの何れがアクティブウィンドウであるかを常時監視する。監視手順では、後述する図9に示すSB6を実行する。
表示手順では、アノテーションDB26を検索してアノテーションDB26内にアクティブウィンドウに対応するアノテーションルールが存在し且つユーザによってアノテーション表示操作が行われたときに、ユーザの操作に関連するアノテーションルールをアノテーションDB26から取得して該アノテーションルールに含まれるアノテーション文章を操作画面に表示する。表示手順では、後述する図9に示すSB5を実行する。本手順においてアノテーションDB26内にアノテーションルールが存在しない場合、アノテーションDB31を検索してもよい。
監視手順では、操作画面に10表示されているウィンドウのうちの何れがアクティブウィンドウであるかを常時監視する。監視手順では、後述する図9に示すSB6を実行する。
表示手順では、アノテーションDB26を検索してアノテーションDB26内にアクティブウィンドウに対応するアノテーションルールが存在し且つユーザによってアノテーション表示操作が行われたときに、ユーザの操作に関連するアノテーションルールをアノテーションDB26から取得して該アノテーションルールに含まれるアノテーション文章を操作画面に表示する。表示手順では、後述する図9に示すSB5を実行する。本手順においてアノテーションDB26内にアノテーションルールが存在しない場合、アノテーションDB31を検索してもよい。
データ蓄積手順において、属性値取得手順、表示位置編集手順、データベース編集手順のいずれかを有していてもよい。
属性値取得手順では、アノテーション付与対象となるウィンドウが指定されたときに該ウィンドウ画面の属性値をアノテーションルールとしてアノテーションDB26に登録する。
表示位置編集手順では、ユーザの操作に基づいて、所定の照合位置を基準としてアノテーション文章の表示位置及びテンプレート画像の探索領域を指定すると共にテンプレート画像をアクティブウィンドウ全体のキャプチャイメージであるアノテーションベース画像から指定する。
データベース編集手順では、ユーザの操作に基づいてアノテーションDB26に蓄積されているアノテーションルールとしてのアクティブウィンドウのテンプレート画像の編集及びアクティブウィンドウ画面の属性値の編集を行う。
これらの場合、表示手順においてツール表示手順を実行する。ツール表示手順では、後述する図9に示すSB2を実行する。
属性値取得手順では、アノテーション付与対象となるウィンドウが指定されたときに該ウィンドウ画面の属性値をアノテーションルールとしてアノテーションDB26に登録する。
表示位置編集手順では、ユーザの操作に基づいて、所定の照合位置を基準としてアノテーション文章の表示位置及びテンプレート画像の探索領域を指定すると共にテンプレート画像をアクティブウィンドウ全体のキャプチャイメージであるアノテーションベース画像から指定する。
データベース編集手順では、ユーザの操作に基づいてアノテーションDB26に蓄積されているアノテーションルールとしてのアクティブウィンドウのテンプレート画像の編集及びアクティブウィンドウ画面の属性値の編集を行う。
これらの場合、表示手順においてツール表示手順を実行する。ツール表示手順では、後述する図9に示すSB2を実行する。
表示手順では、ユーザの操作をポーリング形式で常時監視することによってウィンドウサイズ及びウィンドウ座標位置を取得し、該ウィンドウ座標位置に対するアノテーション表示対象となる座標位置の差分を計算し、該計算結果に基づいてアノテーション文章の再描画を行ってもよい。
業務画面状態取得部21は、図2に示すように、ウィンドウ状態常時取得エージェント211によってポーリング形式の状態取得(send,get)を行い、アクティブウィンドウのウィンドウハンドルを常時取得した状態で監視を行い、アクティブウィンドウが切り替えられたタイミングで変更があったときにはその都度、アクティブウィンドウが持つウィンドウテーブルWTからウィンドウの実行ファイル名、ウィンドウのサイズ、ウィンドウの座標位置等を取得する。なお、図2において横軸は時間を表し、縦軸はZ−orderを表す。また、ウィンドウテーブルWTとは、各ウィンドウ毎に設けられており、アクティブウィンドウのウィンドウハンドルから取得できるウィンドウタイトルやウィンドウの座標位置、ウィンドウの実行ファイル名などを保持しているウィンドウコントロールのテーブルである。ウィンドウ状態常時取得エージェント211は常にアクティブウィンドウに対して動作する。
ウィンドウズ(登録商標)のアプリケーションのウィンドウはZ−orderと呼ばれる順番に累積される形で操作画面10上に表示されておりアクティブウィンドウとはZ−orderの順序中最前列に表示されるウィンドウのことである。ユーザのクリックイベント操作や他のウィンドウへの切り替えイベント(Alt+tab)などによって最前列に切り替わる際の変化を捉え、アノテーション表示部22及びクライアントサイドアノテーションDB26にアクティブウィンドウの変化を通知する。
業務画面状態取得部21は、ユーザの操作によってアクティブウィンドウを変更した際には、ウィンドウ状態常時取得エージェントによって常時取得されるアクティブウィンドウのタイトル名の存在の有無を、アノテーションDB26内に保存されたアノテーションルールの中のウィンドウタイトル名の中から調べるテキストマッチング検索を行う。この検索によりアノテーションDB26内に該当するウィンドウタイトルが存在する際には、業務画面状態取得部21はアノテーション表示部22に対して該当するDBの表示のクエリを送信し、ウィンドウのサイズ或いはウィンドウの座標位置が変更された際には、業務画面状態取得部21はアノテーション表示部22に対してアノテーションアイコン及びメッセージツールチップ113の表示位置をその変化に合わせて移動するクエリを送る。また、業務画面状態取得部は、クライアントサイドアノテーションDB26に対して、アクティブウィンドウが変化した時に、変化後のアクティブウィンドウのウィンドウタイトルのうち、アノテーションDB26内に含まれているものの有無を聞くクエリを送る。ウィンドウ状態常時取得エージェント211がアノテーション表示部22に対してアクティブウィンドウの切り替えタイミングのクエリを送ることで、アノテーション表示部22は操作画面10でのアノテーションアイコン群の表示を常時更新する。
アノテーション表示部22は、クライアントサイドアノテーションDB26内に蓄積されたアノテーションのテーブルを取得し、図3に示すように、アクティブウィンドウ110上のウィジット111の位置を基にアノテーションがあることを示すアノテーションアイコン112をアクティブウィンドウ110にオーバーレイ表示させる。また、アノテーション表示部22は、業務画面状態取得部21からの通知の通り、ウィンドウのサイズ変更やウィンドウの座標位置が変更された際には相対的な座標位置の差分値の分をずらして再表示することにより、アノテーション表示位置のリアルタイムなトラッキングを可能にする。すなわち、ユーザが実際にアノテーションを参照する際には図4に示すようにアノテーションアイコン112を発見した後にマウスを使用してマウスカーソル115をアノテーションアイコン112上にホバリングするかまたはアノテーションアイコン112をクリックすることでメッセージツールチップ113を表示することが可能になり、アノテーションの中身であるアノテーション文章をメッセージツールチップ113内に表記することでユーザはアノテーション文章を参照することが可能となる。
アクティブウィンドウ画面属性値取得部23は、アノテーションの付与先であるウィンドウの属性値を取得してこれをアノテーションルールとしてアノテーションDB26に初期登録する。この際、操作画面10のアクティブウィンドウ画面属性値の取得に関しては、業務画面状態取得部21で自動的に監視しているものとは異なり、ユーザの操作を契機として業務画面状態取得部21のウィンドウテーブル取得の関数を利用する。また、アクティブウィンドウ画面属性値取得部23は、アクティブウィンドウ110に該当するウィンドウ画面のウィンドウタイトル名、ウィンドウの実行ファイル名、ウィンドウサイズ等の属性値と、アノテーション表示位置編集部24のベース画像となるアクティブウィンドウ全体のキャプチャイメージ(アノテーションベース画像)をアノテーションDB26へ登録する。
アノテーション表示位置編集部24は、アクティブウィンドウ画面属性値取得部23からクライアントサイドアノテーションDB26に登録されたアノテーションルール内のアノテーションのテーブルを編集する機能部である。アノテーション表示位置編集部24は、ユーザの操作に基づいて、図5に示すように、アクティブウィンドウ画面属性値取得部23によって予め取得したアクティブウィンドウの画面全体のキャプチャイメージ画像であるアノテーションベース画像300上で選択された任意の画像をテンプレート画像315としてクライアント端末1を操作するユーザが指定することにより選択する。
また、アノテーション表示位置編集部24は、クライアントサイドアノテーションDB26内に蓄積されているアノテーションルールの中のアノテーション表示設定の項目が設定されているアノテーションルールを利用して、図5に示すようにアノテーションの表示位置の画像をクライアント端末1を操作するユーザがテンプレート画像315として、このテンプレート画像に該当した位置を基準としてアノテーションアイコン112を表示させる。この際、アノテーションアイコン112を表示させるために、アノテーション表示位置編集部24は、予め取得していたアクティブウィンドウ全体のキャプチャイメージ画像をアノテーションベース画像300とし、アクティブウィンドウの座標位置311を起点とするアノテーションアイコンの相対x座標位置312とアノテーションアイコンの相対y座標位置313を利用してアノテーションの表示位置を編集する。照合位置316は、予めユーザの操作によって指定されているテンプレートマッチングの探索領域314内においてテンプレートマッチングで設定した類似度以上で最大の類似度を記録した確率を有する画像のドットの座標位置を表している。また、アノテーションアイコン112を表示する際には、照合位置316から予めユーザが設定した任意のアノテーションアイコンの相対y座標313、アノテーションアイコンの相対x座標312を基準として操作画面10に表示させる。なお、ユーザは、アノテーション表示位置編集部24を介して、アノテーション文章の表示位置及びテンプレート画像315、テンプレート画像の探索領域314を指定する。
上記のように、テンプレートマッチングの探索領域314を予めアクティブウィンドウ内に限定することで、探索の計算量を抑えた効率的なテンプレート画像315のマッチングが可能となる。
アノテーションDB編集部25は、クライアントサイドアノテーションDB26内に蓄積されたアノテーションルールを用い、図1に示すように、ユーザに対して常時編集可能なGUI(Graphical User Interface)を用意する。ユーザは、アノテーションDB編集部のウィンドウ140を用いて、随時表示されたメッセージツールチップ113内のアノテーション文章の内容を確認することができると共に、このアノテーション文章を追記及び編集することができる。アノテーションDB編集部のウィンドウ140には、アノテーションDBの構造表示ボックス150とアノテーション文章編集のテキストボックス160が表示される。さらに、アノテーションDBの構造表示ボックス150内には、ウィンドウタイトル151毎に対象アプリケーションフォルダ152が表示され、対象アプリケーションフォルダ152毎にアノテーション文章153が表示される。
このように、アノテーションDBの構造表示ボックス150では、クライアントサイドアノテーションDB26に登録されたウィンドウタイトルを主キーとするDBのテーブルを可視化する。アノテーション文章編集のテキストボックスをアノテーションDBの構造表示ボックス150とリンクさせてその都度編集するGUIを具備することによって、クライアントサイドアノテーションDB26の内部の構造をユーザに対して分かりやすく表示することが可能である。
上記のように、アノテーションDB編集部25は、アノテーション表示位置編集部24と連携して、ユーザがアノテーション表示位置及び探索領域等を自由に編集可能とするGUIを持ち、アノテーションDB26からのフィードバックをすぐに受け取ることでユーザと相互作用的にアノテーション文章を追記編集可能にしている。なお、アノテーションDB編集部25は、ユーザの操作に基づいて、アノテーションルールの一部としてアノテーションDB26に蓄積されているアノテーション文章の表示位置及びテンプレート画像315、テンプレート画像の探索領域314、アクティブウィンドウ画面の属性値を編集する。
さらに、アノテーションDB編集部は、ユーザがアノテーションを付与したいアプリケーションを登録するため、アクティブウィンドウ画面属性値取得部に対して、クライアントサイドアノテーションDBへの登録をするためのGUIを提供する。例えば、マウスの右ボタンクリックによるプルダウンメニュー等のGUI(図示せず)を提供する。アクティブウィンドウ画面属性値取得部23で登録されたウィンドウタイトルを始めとするアノテーションテーブルはGUI上に随時更新され、アノテーションDB編集部のウィンドウ140内にあるアノテーションDBの構造表示ボックス150に可視化される。
クライアントサイドアノテーションDB26は、アノテーションルールを蓄積するための書き換え可能な不揮発性の記録部を有し、アノテーション表示部22とアノテーションDB編集部25からのDB変更のクエリ、アノテーション表示位置編集部24からのDB変更のクエリ、アクティブウィンドウ画面属性値取得部23からのDB新規登録のクエリを受け取り、サーバサイドアノテーションDB31内のテーブルのうち、ユーザのクライアント端末で必要な運用ポリシーに基づいた条件テーブルを受け取ることにより、ユーザに有用なサーバサイドアノテーションDB26を選択するトランザクションを受け取る。
図6に示すように、クライアントサイドアノテーションDB26内のファイル構造の例ではアノテーションDB26のテーブルをXML構造で表現しており、変更のクエリ毎にアノテーション情報の変更と追加を行うトランザクションを走らせるDBの形態である。このアノテーションDB26が保持するデータは、アクティブウィンドウ画面属性値取得部23を介して業務画面状態取得部21から得られる実行ファイルの名前、プロセスID、ウィンドウタイトル等であり、クライアントサイドアノテーションDB26に登録する際にはウィンドウタイトルの変更を加えることで、アノテーションDB26を参照する時にはウィンドウタイトルを始めとするテーブルから該当する属性値を参照することが可能である。
操作部27は周知のキーボード及びマウス等を有し、ユーザがキーボードやマウスを操作することにより文字入力や位置入力を行うことができるようになっている。
また、サーバ3は、周知のコンピュータ装置からなり、サーバサイドアノテーションDB31を備えている。
サーバサイドアノテーションDB31は、クライアントサイドアノテーションDB26と同様にアノテーションルールを蓄積するための書き換え可能な不揮発性の記録部を有し、図1に示すようにクライアントサイドアノテーションDB26に接続され、クライアントサイドアノテーションDB26に変更が加わるとそのDiff毎にクライアントサイドアノテーションDB26からサーバサイドアノテーションDB31に対して変更内容を同期する形態でサーバサイドアノテーションDB31のデータが同期して変更されるデータ構造、例えば図7に示すようなXMLを始めとするデータ構造で構成されている。
サーバサイドアノテーションDB31は、図1に示すようにサーバ3の側に設けられているので、シンクライアント環境で動作するコンピュータシステムにおいては、クライアント端末1毎に或いはユーザ毎にカスタマイズされたアノテーションを提供することが可能である。
サーバサイドアノテーションDB31の導入によって、ユーザ毎に固有のテーブルを図7のように保有することができる。クライアント端末1へのアノテーションツールの導入だけでは、個々のクライアント端末1によって使用環境が異なり、クライアント端末1を使用するユーザが異なる状況の中で、アノテーションルールの内容を共有することは困難である。そこで、サーバサイドアノテーションDB31を備えたサーバ3を用意することで、クライアントサイドアノテーションDB26に固有のアノテーションDB内のテーブル(OSなどのユーザの使用環境、クライアント端末1で扱っているシステムの種類)などを集約させることができるというメリットが得られる。
なお、サーバ3にシンクライアント環境を導入することで、画面イメージだけをクライアント端末1に導入してオペレーション操作を行なうことができる。その際にはクライアント端末1の環境をサーバ3に導入することが考えられる。
次に、本実施形態におけるアノテーション表示及びアノテーションルールの追加編集に関して詳細に説明する。
図8にアノテーションツールの起動処理の流れを示したフローチャートを示し、図9にアノテーション表示モードで実行される処理の流れを示したフローチャートを示し、図10にアノテーションDB編集モードで実行される処理の流れを示したフローチャートを示す。
クライアント端末1の起動と同時にアノテーションツールが起動されると、図8に示すように、ユーザによってアノテーション表示モードが選択されたか否かを監視し(SA1)、アノテーション表示モードが選択されたときには図9に示すアノテーション表示モードを実行する(SA2)。アノテーション表示モードが終了されると(SA3)、上記SA1の処理に移行する。
また、上記SA1の監視の結果、アノテーション表示モードが選択されないときは図10に示すアノテーションDB編集モードを実行し(SA4)、アノテーション表示モードが選択されたとき以外はアノテーションDB編集モードを実行する。
アノテーション表示モードでは、クライアント端末1は、図9に示すように、業務画面状態取得部21によるアクティブウィンドウのテキストマッチングを行う(SB1)。すなわち、業務画面状態取得部21のポーリング形式による状態の取得(send,get)を行う。ウィンドウ状態常時取得エージェント211が取得するウィンドウタイトル名に対して、クライアントサイドアノテーションDB26及びサーバサイドアノテーションDB31に蓄積されているアノテーションルールの中に保存されたXML構造のwindowタグに格納されているtitle値の文字列が含まれているかどうかテキストマッチングを行うことによりアクティブウィンドウのアノテーションルールがアノテーションDB26,31内にあるかどうかの照合を行う。
この結果、アクティブウィンドウのアノテーションルールがアノテーションDB26,31内にある場合は、クライアント端末1は、アノテーション表示部22を実行する(SB2)ことにより前述したようにアノテーション表示部22が画像マッチングを行い、アクティブウィンドウ110に対してアノテーションアイコン112の表示を行い、ユーザの操作に応じてメッセージツールチップ113及びアノテーション文章を表示する。
次いで、クライアント端末1は、アノテーションDB26,31内にテキストマッチングで該当するアノテーション文章が1つ以上存在するか否かを判定する(SB3)。この判定の結果、クライアントサイドアノテーションDB26やサーバサイドアノテーションDB31内にアノテーション文章が1つ以上、複数登録されている場合(テキストマッチングで該当するアノテーションが1つ以上存在する場合)には、アクティブウィンドウ内における画像の1対1でのテンプレートマッチングが成立するか否かを判定する(SB4)。すなわち、登録されたアノテーション文章の数だけ画像のマッチングを当該アクティブウィンドウに対して行い、画像マッチングが成功する場合(アクティブウィンドウ下での画像の1対1でのテンプレートマッチングが成立する場合)にはアノテーションアイコンの表示を行い(SB5)、この後、上記SB3の処理に移行する。また、アクティブウィンドウ下での画像の1対1でのテンプレートマッチングが成立する場合には、前記SB3の処理に移行する。なお、上記SB3,SB4の処理を繰り返すことにより、1つのアノテーションルールを1つのウィンドウに適用して複数箇所にアノテーションアイコン112やアノテーション文章を表示することも可能である。
また、上記SB1の判定の結果、アクティブウィンドウのアノテーションルールがアノテーションDB26,31内に無い場合、及び上記SB3の判定の結果、クライアントサイドアノテーションDB31やサーバサイドアノテーションDB31内にアノテーション文章が一つ以上登録されてない場合は、業務画面状態取得部21による監視を行い(SB6)、アクティブウィンドウの変更があるか否かを監視する(SB7)と共にウィンドウの座標位置の変更があるか否かを監視し(SB8)、このようにアクティブウィンドウを常時監視することで、アクティブウィンドウの変更があった場合には上記SB1のテキストマッチング結果による条件分岐を経て、SB2の処理に移行してアノテーション表示部22の再度実行を行い、ウィンドウの座標位置の変更があった場合にはアノテーション表示座標位置の相対位置変更を行う(SB9)。
一方、アノテーション編集モードの実行では、アノテーションDB編集部25がユーザの操作によって4つの機能、すなわち「新規アノテーションの作成」(SC1)、「アノテーションの編集」(SC2)、「アノテーションの削除」(SC3)、「アノテーション文章の編集」(SC4)の機能を持ち、アノテーション編集モードの実行が開始されるとクライアント端末1はこれらの機能をユーザの操作に応じて実行する。
「新規アノテーションの作成」(SC1)では、アクティブウィンドウ画面属性値取得23によってアクティブウィンドウ画面属性値の取得を行い(SC5)、クライアントサイドアノテーションDB26,31においてXML構造のアノテーションDBを新規で作成する。このとき、対象ウィンドウのプロセス名、タイトル、ウィンドウクラス、取得時間等を取得することにより、アノテーションルールを編集するための土台となるDBを構築する。さらに、アノテーションDB編集部25からクライアントサイドアノテーションDB26に対してアノテーションルールの新規登録のクエリを送信することにより、アノテーションDB26に対して上記処理を要求する。これにより、サーバサイドアノテーションDB31にも新規アノテーションが作成される。
「アノテーションの編集」(SC2)では、アノテーション表示位置編集部24を実行し(SC6)アノテーションベース画像からアノテーションアイコンの相対x座標、相対y座標、テンプレート画像、テンプレートマッチングの探索領域、テンプレートマッチングの類似度閾値を決定すると共に、アノテーションDB編集部25からクライアントサイドアノテーションDB26に対してテンプレートマッチングの入力値として使用されるパラメータ値変更のクエリを送信する。これにより、クライアントサイドアノテーションDB26はアノテーションルールの変更を行い、この変更に応じてアノテーションDB編集部ウィンドウ140の表示内容の変更が行われる(SC7)と共に、サーバサイドアノテーションDB31のアノテーションルールも変更される。
「アノテーションの削除」(SC3)では、削除対象となるアノテーション文章を削除するためのクエリをクライアントサイドアノテーションDB26に送信する。これにより、クライアントサイドアノテーションDB26は指定されたアノテーション文章の削除を行い、この削除に応じてアノテーションDB編集部ウィンドウ140の表示内容の変更が行われる(SC7)と共に、サーバサイドアノテーションDB31内の対応するアノテーション文章も削除される。
「アノテーション文章の編集」(SC4)では、アノテーション文章編集のテキストボックス160に入力されたアノテーション文章を更新する。このとき、アノテーションDB編集部25からクライアントサイドアノテーションDB26に対して、アノテーション文章の変更のクエリを送信する。これにより、クライアントサイドアノテーションDB26は指定されたアノテーション文章の変更を行い、この変更に応じてアノテーションDB編集部ウィンドウ140の表示内容の変更が行われる(SC7)と共に、サーバサイドアノテーションDB31内の対応するアノテーション文章も変更される。
以上の4つの機能において、クライアントサイドアノテーションDB26の内容が変更された場合には、アノテーションDB編集部ウィンドウ140の表示内容の変更を行い、実際の画面上に更新処理を行うと共に、サーバサイドアノテーションDB31と定期的に同期処理を行う。クライアントサイドアノテーションDB26側からサーバサイドアノテーションDB31へはクライアントサイドアノテーションDBの内容変更通知を行い、サーバーサイドアノテーションDB側からクライアントサイドアノテーションDB26へはサーバサイドアノテーションDBのポリシー変更によるDB内容変更通知を行うことで、両アノテーションDB26,31の内容の定期更新処理を行う。
上記のように本実施形態によれば、操作画面10上にアノテーションDB26,31に蓄積されているアノテーション文章をオーバーレイ表示しているので、ユーザはこのアノテーション文章を見ることにより実際の業務を通じた知識を得ることができるため、業務を容易に遂行することができる。また、本実施形態では操作画面10の遷移に合わせ画面上に表示されているウィジットを画面に固有の特徴量として画像で認識させているので、直接ユーザに対してインタラクティブに様々なアノテーション文章を提供することができる。さらに、複数人の様々な立場のユーザを対象として業務知識を具体化したアノテーション文章を蓄積するためのアノテーションDBを保持することでアノテーション文章の積極的な追記編集を可能にすることができる。
さらに、本実施形態によれば、アノテーション対象のウィンドウ毎に管理されたアノテーションDBを作成することでアノテーションの管理を容易にし、アクティブウィンドウのウィンドウタイトルの文字列によってアノテーションルールを検索し絞り込むことで無意味なテンプレートマッチング処理を減らし,同時にテンプレートマッチングのための探索領域を1つのウィンドウ(すなわちアクティブウィンドウ)に限定することで個々のテンプレートマッチング処理の計算量を抑えることができる。また、ユーザに対してアノテーションアイコン、メッセージツールチップ、アノテーション文章を表示するときはアクティブウィンドウ表示時に限定しているので探索の計算量を抑えることができ、アノテーションアイコンの表示位置をウィンドウの表示位置やウィンドウのサイズの変化に合わせてその都度移動させる機能を具備しているので実際の操作を阻害しない程度の処理速度を実現することができる。
また、本実施形態によれば、アノテーション文章の追記及び編集を容易に行えるアノテーションDB編集用のGUIを具備しているのでアノテーション文章が表示されているアノテーションアイコン、メッセージツールチップ内でのリアルタイムな追記変更が可能である。その変更に関する結果はシステムを動作させることで即座にユーザが確認し操作画面を通してフィードバックを得ることができるので、ユーザによる対話的なアノテーション作成作業を可能にしており、操作画面にオーバーレイする形態でアノテーション文章を表示し、アノテーション文章がその都度追記編集されたアノテーションルールを蓄積するアノテーションDBを具備しているのでこのアノテーションルールを他のユーザと容易に共有することができる。
さらにまた、本実施形態によれば、アノテーション文章の再描画時にはウィンドウ座標位置に対するアノテーション表示対象となる座標位置の差分を計算し、該計算結果に基づいてアノテーションの再描画が行われるので、アノテーション文章の再描画にかかる計算量及び時間を従来よりも低減することができる。また、サーバサイドアノテーションDB31に蓄積されているアノテーションルールがクライアントサイドアノテーションDB26に蓄積されているアノテーションルールの変更に同期して変更されるので、他のクライアント端末を使用するユーザとアノテーションルールを共有することができる。
なお、クライアント端末1において、アノテーションDB26のハードウェアとしての記憶部以外で行われる処理の全て或いは一部をハードウェアによって実現すること或いはコンピュータプログラムによって実現することが可能であることは言うまでもない。
端末装置上で動作する既存の業務システムを改造することなく、外部からアクセスするためのAPIを業務システムが持っていない場合でも、自動操作や画面のウィジットに対してそれを説明するためのアノテーションを容易に付与すること及びアノテーションルールの追加編集を容易に行うことができると共に、アノテーション表示の際のデータベース検索に要する計算量を従来よりも低減することができる。
1…クライアント端末(端末装置)、10…操作画面、110…アクティブウィンドウ、111…ウィジット、112…アノテーションアイコン、113…メッセージツールチップ、114…マウスカーソル、120,130…ウィンドウ、140…アノテーションDB編集部のウィンドウ、150…アノテーションDBの構造表示ボックス、151…ウィンドウタイトル、152…対象アプリケーションフォルダ、153…アノテーション文章、160…アノテーション文章編集のテキストボックス、211…ウィンドウ状態常時取得エージェント、300…アノテーションベース画像、311…アクティブウィンドウの座標位置、312…アノテーションアイコンの相対x座標位置、313…アノテーションアイコンの相対y座標位置313、314…テンプレートマッチングの探索領域、315…テンプレート画像、316…照合位置、21…業務画面状態取得部、22…アノテーション表示部、23…アクティブウィンドウ画面属性値取得部、24…アノテーション表示位置編集部、25…アノテーションDB編集部、26…クライアントサイドアノテーションDB、27…操作部、3…サーバ、31…サーバサイドアノテーションDB。
Claims (8)
- テキスト又はアイコンを含むアノテーションの表示対象となるウィンドウ毎に作成されたアノテーションルールが蓄積されているアノテーションデータベースと、
ウィンドウを表示可能な操作画面に表示されているウィンドウのうちの何れがアクティブウィンドウであるかを監視すると共に、前記アノテーションデータベースを検索して前記アノテーションデータベース内に前記アクティブウィンドウに対応するアノテーションルールが存在し且つユーザによって操作が行われたときにアノテーション表示部に対して前記アノテーションの表示を要求する業務画面状態取得部と、
前記業務画面状態取得部からの要求に応じてユーザの操作に関連するアノテーションルールを前記アノテーションデータベースから取得して該アノテーションルールに含まれるアノテーションを前記操作画面に表示する前記アノテーション表示部とを備えている
ことを特徴とする端末装置。 - アノテーション付与対象となるウィンドウが指定されたときに該ウィンドウ画面の属性値を前記アノテーションルールとして前記アノテーションデータベースに登録するアクティブウィンドウ画面属性値取得部と、
ユーザの操作に基づいて、所定の照合位置を基準としてアノテーション文章の表示位置及びテンプレート画像の探索領域を指定すると共に、テンプレート画像をアクティブウィンドウ全体のキャプチャイメージであるアノテーションベース画像から指定するアノテーション表示位置編集部と、
ユーザの操作に基づいて前記アノテーションデータベースに蓄積されているアノテーションルールとしてのアクティブウィンドウのテンプレート画像の編集及びアクティブウィンドウ画面の属性値の編集を行うためのアノテーションデータベース編集部とを備え、
前記業務画面状態取得部は、前記操作画面上の前記アクティブウィンドウを検出し、該アクティブウィンドウ内にのみアノテーションアイコンとメッセージツールチップとアノテーション文章を表示するように前記アノテーション表示部に対してアクティブウィンドウの座標位置及びサイズを指示し、
前記アノテーション表示部は、ユーザがアノテーションを参照する際に、前記業務画面状態取得部から指示を受けたアクティブウィンドウ内であり且つユーザが指定するテンプレート画像に一致する画像付近の所定位置にアノテーションアイコンとメッセージツールチップと前記アノテーションデータベースに登録されているアノテーション文章を表示する
ことを特徴とする請求項1に記載の端末装置。 - 前記業務画面状態取得部は、ユーザの操作をポーリング形式で監視することによってウィンドウサイズ及びウィンドウ座標位置を取得し、該ウィンドウ座標位置に対するアノテーション表示対象となる座標位置の差分を計算し、該計算結果に基づいてアノテーションの再描画を行うことを特徴とする請求項1又は2に記載の端末装置。
- 端末装置が実行するアノテーション方法であって、
テキスト又はアイコンを含むアノテーションの表示対象となるウィンドウ毎に作成したアノテーションルールを書き換え可能な記憶部に形成されたアノテーションデータベースに蓄積するデータ蓄積手順と、
前記データ蓄積手順の後に、ウィンドウを表示可能な操作画面に表示されているウィンドウのうちの何れがアクティブウィンドウであるかを監視する監視手順と、
前記アノテーションデータベースを検索して前記アノテーションデータベース内に前記アクティブウィンドウに対応するアノテーションルールが存在し且つユーザによって操作が行われたときに、ユーザの操作に関連するアノテーションルールを前記アノテーションデータベースから取得して該アノテーションルールに含まれるアノテーションを前記操作画面に表示する表示手順と、
を有する、
アノテーション方法。 - 前記端末装置は、さらに、
前記データ蓄積手順において、アノテーション付与対象となるウィンドウが指定されたときに該ウィンドウ画面の属性値を前記アノテーションルールとして前記アノテーションデータベースに登録する属性値取得手順を実行するか、或いは、
前記データ蓄積手順において、ユーザの操作に基づいて、所定の照合位置を基準としてアノテーション文章の表示位置及びテンプレート画像の探索領域を指定すると共にテンプレート画像をアクティブウィンドウ全体のキャプチャイメージであるアノテーションベース画像から指定する表示位置編集手順を実行するか、或いは、
前記データ蓄積手順において、ユーザの操作に基づいて前記アノテーションデータベースに蓄積されているアノテーションルールとしてのアクティブウィンドウのテンプレート画像の編集及びアクティブウィンドウ画面の属性値の編集を行うためのデータベース編集手順を実行し、
前記表示手順において、ユーザがアノテーションを参照する際に、前記アクティブウィンドウ内であり且つユーザが指定するテンプレート画像に一致する画像付近の所定位置にアノテーションアイコンとメッセージツールチップと前記アノテーションデータベースに登録されているアノテーション文章を表示するツール表示手順を実行する、
請求項4に記載のアノテーション方法。 - 前記端末装置は、さらに、
前記表示手順において、ユーザの操作をポーリング形式で監視することによってウィンドウサイズ及びウィンドウ座標位置を取得し、該ウィンドウ座標位置に対するアノテーション表示対象となる座標位置の差分を計算し、該計算結果に基づいてアノテーション文章の再描画を行う、請求項4又は5に記載のアノテーション方法。 - 前記請求項1乃至3の何れかに記載の端末装置をクライアント端末として有し、該クライアント端末が通信網を介してサーバに接続されているコンピュータシステムにおいて、
前記サーバは、前記クライアント端末のアノテーションデータベースに蓄積されているアノテーションルールと同等のアノテーションルールが蓄積されているサーバサイドアノテーションデータベースを備え、
前記クライアント端末のアノテーションデータベースは、自己が蓄積するアノテーションルールに加えられた変更に同期して該変更と同じ変更を前記サーバサイドアノテーションデータベースに指示する
ことを特徴とするコンピュータシステム。 - コンピュータを、前記請求項1乃至3の何れかに記載の端末装置の各手段として機能させるためのコンピュータプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014522549A JP5812507B2 (ja) | 2012-06-29 | 2013-06-17 | 端末装置及びアノテーション方法並びにコンピュータシステム及びコンピュータプログラム |
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012146383 | 2012-06-29 | ||
JP2012146383 | 2012-06-29 | ||
PCT/JP2013/066581 WO2014002812A1 (ja) | 2012-06-29 | 2013-06-17 | 端末装置及びアノテーション方法並びにコンピュータシステム及びコンピュータプログラム |
JP2014522549A JP5812507B2 (ja) | 2012-06-29 | 2013-06-17 | 端末装置及びアノテーション方法並びにコンピュータシステム及びコンピュータプログラム |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2015156649A Division JP6086955B2 (ja) | 2012-06-29 | 2015-08-07 | サーバ装置、アノテーション方法及びコンピュータプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP5812507B2 true JP5812507B2 (ja) | 2015-11-17 |
JPWO2014002812A1 JPWO2014002812A1 (ja) | 2016-05-30 |
Family
ID=49782973
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014522549A Active JP5812507B2 (ja) | 2012-06-29 | 2013-06-17 | 端末装置及びアノテーション方法並びにコンピュータシステム及びコンピュータプログラム |
JP2015156649A Active JP6086955B2 (ja) | 2012-06-29 | 2015-08-07 | サーバ装置、アノテーション方法及びコンピュータプログラム |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2015156649A Active JP6086955B2 (ja) | 2012-06-29 | 2015-08-07 | サーバ装置、アノテーション方法及びコンピュータプログラム |
Country Status (3)
Country | Link |
---|---|
US (1) | US9715396B2 (ja) |
JP (2) | JP5812507B2 (ja) |
WO (1) | WO2014002812A1 (ja) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6220079B2 (ja) | 2014-09-08 | 2017-10-25 | 日本電信電話株式会社 | 表示制御装置、表示制御方法および表示制御プログラム |
JP6360179B2 (ja) * | 2014-09-08 | 2018-07-18 | 日本電信電話株式会社 | アノテーション装置、アノテーション方法、及びアノテーションプログラム |
US10082941B2 (en) | 2015-05-20 | 2018-09-25 | Vmware, Inc. | Optimizing window move actions for remoted applications |
US10564829B2 (en) | 2016-03-25 | 2020-02-18 | Vmware, Inc. | Optimizing window resize actions for remoted applications |
JP6662748B2 (ja) * | 2016-10-13 | 2020-03-11 | 日本電信電話株式会社 | 表示制御装置、表示制御方法、および、表示制御プログラム |
CN108804002B (zh) * | 2018-04-25 | 2022-03-08 | 广州视源电子科技股份有限公司 | 交互智能设备的文本注释方法和装置 |
JP6817253B2 (ja) * | 2018-06-29 | 2021-01-20 | 日本電信電話株式会社 | 表示制御装置、表示制御方法、および表示制御プログラム |
CN110716715B (zh) * | 2019-10-18 | 2024-01-19 | 恒生电子股份有限公司 | 一种应用程序开发方法、装置、设备及介质 |
CN113099285A (zh) * | 2021-03-30 | 2021-07-09 | 上海哔哩哔哩科技有限公司 | 展示方法及装置 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009037362A (ja) * | 2007-07-31 | 2009-02-19 | Canon Software Inc | 帳票システムおよび帳票システムの制御方法およびプログラムおよび記録媒体 |
JP2010066868A (ja) * | 2008-09-09 | 2010-03-25 | Hitachi Information & Communication Engineering Ltd | 電子付箋の貼り付けシステムおよびその方法 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8463744B2 (en) * | 2001-01-03 | 2013-06-11 | International Business Machines Corporation | Method and system for synchronizing data |
JP2006004298A (ja) | 2004-06-18 | 2006-01-05 | Fuji Xerox Co Ltd | 文書処理装置、文書処理方法及び文書処理プログラム |
US20070113180A1 (en) * | 2005-11-15 | 2007-05-17 | Michael Danninger | Method and system for providing improved help functionality to assist new or occasional users of software in understanding the graphical elements of a display screen |
US8990774B2 (en) * | 2009-12-01 | 2015-03-24 | Cinnober Financial Technology Ab | Methods and apparatus for automatic testing of a graphical user interface |
US20110289401A1 (en) * | 2010-05-20 | 2011-11-24 | Salesforce.Com, Inc. | Multiple graphical annotations of documents using overlays |
-
2013
- 2013-06-17 WO PCT/JP2013/066581 patent/WO2014002812A1/ja active Application Filing
- 2013-06-17 JP JP2014522549A patent/JP5812507B2/ja active Active
- 2013-06-17 US US14/399,245 patent/US9715396B2/en active Active
-
2015
- 2015-08-07 JP JP2015156649A patent/JP6086955B2/ja active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009037362A (ja) * | 2007-07-31 | 2009-02-19 | Canon Software Inc | 帳票システムおよび帳票システムの制御方法およびプログラムおよび記録媒体 |
JP2010066868A (ja) * | 2008-09-09 | 2010-03-25 | Hitachi Information & Communication Engineering Ltd | 電子付箋の貼り付けシステムおよびその方法 |
Also Published As
Publication number | Publication date |
---|---|
WO2014002812A1 (ja) | 2014-01-03 |
JP6086955B2 (ja) | 2017-03-01 |
US9715396B2 (en) | 2017-07-25 |
JPWO2014002812A1 (ja) | 2016-05-30 |
US20150149900A1 (en) | 2015-05-28 |
JP2015207320A (ja) | 2015-11-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6086955B2 (ja) | サーバ装置、アノテーション方法及びコンピュータプログラム | |
JP5984215B2 (ja) | 動的マニュアル作成装置及びその方法並びにコンピュータプログラム | |
JP2014021511A (ja) | 表示制御装置、表示制御方法、プログラム、及び通信システム | |
US20140026104A1 (en) | Display control device, display control method, and program | |
US20210064397A1 (en) | Operation display apparatus and operation display program | |
JP2016177553A (ja) | 情報処理装置、情報処理システム、情報処理方法、及びプログラム | |
US10423705B2 (en) | Document management program for executing on a web browser for uploading documents to a document management server | |
JP6602190B2 (ja) | ソフトウェア開発プログラム及びソフトウェア開発方法 | |
JP2013073510A (ja) | 監視制御システム、監視制御システムのコメント情報登録方法及び監視制御システムのコメント情報登録プログラム | |
JP4148721B2 (ja) | 会議支援用共用端末、情報処理プログラム、記憶媒体、情報処理方法及び会議支援システム | |
US20210271380A1 (en) | Display device | |
JP6910494B1 (ja) | 情報処理プログラム、情報処理装置及び情報処理方法 | |
JP6570436B2 (ja) | ソフトウェア開発プログラム及びソフトウェア開発方法 | |
JP5048641B2 (ja) | 情報処理装置及び情報処理方法 | |
JP2017204311A (ja) | 情報処理装置、帳票管理システム、帳票管理サーバ、情報処理方法、及びそのプログラム | |
JP2011128908A (ja) | 情報処理装置及び情報処理方法 | |
JP2016091092A (ja) | ブラウザ、ブラウザの制御方法およびプログラム | |
US20240241621A1 (en) | Information processing system, non-transitory computer readable medium storing program, and information processing method | |
US11120207B2 (en) | Information processing apparatus, information processing method, and storage medium | |
JP2020009169A (ja) | 注釈の付与を支援するための情報処理システム及びプログラム | |
JP2003281066A (ja) | 会議支援装置、プログラム及び記憶媒体 | |
JP2014167668A (ja) | 文書管理装置、文書管理方法およびそのプログラム | |
JP6357958B2 (ja) | 情報処理装置、制御プログラム及び制御方法 | |
JP6203613B2 (ja) | 情報処理装置、帳票管理システム、帳票管理装置、情報処理方法、及びそのプログラム | |
JP2021000424A (ja) | コンピュータプログラム、サーバ装置、端末装置、プログラム生成方法、及び方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
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: 20150908 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20150911 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5812507 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |