【新規性喪失の例外の表示】特許法第30条第2項適用 1.平成26年3月11日発行 情報処理学会第76回(平成26年)全国大会 講演論文集(4)4−129〜4−130頁 2.平成26年6月4日掲載 http://www2.infonets.hiroshima−u.ac.jp/dicomo/program/1D_abst.html http://www2.infonets.hiroshima−u.ac.jp/dicomo/program/1D_abst.html#1D−3 http://www2.infonets.hiroshima−u.ac.jp/dicomo/program/program_abst.html http://www2.infonets.hiroshima−u.ac.jp/dicomo/program/program_abst.html#1D http:dicomo2014.github.io/session/session−1d 3.平成26年7月2日発行 情報処理学会シンポジウムシリーズVol.2014 No.1 「マルチメディア、分散、協調とモバイル(DICOMO2014)シンポジウム論文集」93〜99頁
(58)【調査した分野】(Int.Cl.,DB名)
操作支援対象端末と、サーバと、サンプル提供端末とを備え、前記サーバが通信ネットワークを介して接続されている前記操作支援対象端末におけるポップアップダイアログに対する操作を支援する操作支援システムであって、
前記サーバは、
通信ネットワークを介して接続されている前記サンプル提供端末にダイアログが表示されると、前記ダイアログに関するダイアログ含有情報を前記サンプル提供端末から受信するダイアログ受信部と、
前記ダイアログと同一のダイアログを前記操作支援対象端末が表示すると、前記ダイアログ含有情報に基づいて案内情報を生成する案内情報生成部と、
前記案内情報を前記操作支援対象端末に送信する案内情報送信部と、
を備え、
前記操作支援対象端末は、前記案内情報送信部によって送信された案内情報を提示する案内文提示部を備える、操作支援システム。
【発明を実施するための形態】
【0014】
以下、本発明の一実施形態について図面を参照して説明する。
【0015】
<操作支援システムの機能構成>
まず、
図1を参照して本実施形態の全体構成について説明する。
図1は、本発明の一実施形態に係る操作支援システム1の概略図である。
【0016】
図1に示されるように、操作支援システム1は、操作支援対象端末101、サーバ201、及びサンプル提供端末301を備える。操作支援対象端末101、サーバ201、及びサンプル提供端末301は通信ネットワークを介して接続され、情報を互いに送受信する。また、操作支援システム1は、複数の操作支援対象端末101及び複数のサンプル提供端末301を有してもよい。
【0017】
図1に示される操作支援システム1の各機能は、これらの機能を実現する処理内容を記述したプログラム(操作支援プログラム)をコンピュータの記憶部に格納しておき、当該コンピュータのCPUによってこのプログラムを読み出して実行することで実現することができる。
【0018】
<サンプル提供端末の機能構成>
次に、
図2を参照して、サンプル提供端末301の機能構成について説明する。
図2は、サンプル提供端末301の機能構成を示す機能ブロック図である。
【0019】
サンプル提供端末301は、サンプル提供端末301がディスプレイに表示したダイアログに関する情報であるダイアログ含有情報を収集して、サーバ201に送信する。ダイアログ含有情報の詳細については後述する。
【0020】
サンプル提供端末301は、ダイアログ検出部303、ダイアログ含有情報収集部304、及びダイアログ含有情報送信部305を有する。これら各部はWindows(登録商標)API(Application Programming Interface)によって、機能を実現してもよい。
【0021】
ダイアログ検出部303は、サンプル提供端末301がディスプレイに表示したダイアログを検出する。例えば、Windows(登録商標)OSにおいて、ダイアログはウィンドウの一例であり、全てのダイアログにおけるウィンドウのクラス名は「#32770」である。そこで、Windows(登録商標)APIのデスクトップ上のウィンドウを列挙するためのEnumWindows関数、及びウィンドウのクラス名を取得するためのGetClassName関数を用いて、ダイアログ検出部303は、クラス名「#32770」のウィンドウを検出する。
【0022】
ダイアログ含有情報収集部304は、ダイアログ検出部303が検出したダイアログに係るダイアログ含有情報を収集する。
【0023】
ダイアログ含有情報とは、ダイアログに表示されているテキストやボタン等のオブジェクト、及びダイアログ本体の画像を表すビットマップデータを含む情報である。また、ダイアログ含有情報は、クリック等のユーザの操作によって遷移した後のダイアログのダイアログ含有情報を識別するための遷移情報を含んでもよい。
【0024】
ダイアログ含有情報収集部304は、一例としてWindows(登録商標)OSにおいて、GetWindowText関数を用いてダイアログのオブジェクトに表示されているテキストを取得し、GetWindowRect関数を用いてオブジェクトが配置されている座標を取得し、GetClassName関数を用いてオブジェクトのクラス名を取得する。
【0025】
また、ダイアログ含有情報収集部304は、一例としてGetWindowRect関数を用いて取得された座標に表示されている画像をキャプチャしてビットマップデータを作成する。さらに、ダイアログ含有情報収集部304は、生成したビットマップデータをJPEG(Joint Photographic Experts Group)形式に圧縮する。また、ダイアログ含有情報収集部304は、ダイアログが生成された生成時刻を表すタイトルをダイアログ含有情報に付して管理する。
【0026】
また、ダイアログ含有情報収集部304は、一例としてWindows(登録商標)OSにおいて、SetWindowsHookEx関数を用いて、ユーザの操作及び操作に係る座標を取得する。また、ダイアログ含有情報収集部304は、WindowsFromPoint関数を用いて取得された操作及び座標に基づいてクリックされたボタンを特定する。
【0027】
また、ダイアログ含有情報収集部304はWindowsFromPoint関数によって取得された操作によって遷移した後のダイアログについての遷移情報をダイアログ含有情報に含めて管理する。ダイアログ含有情報は、例えば、JSON(JavaScript(登録商標) Object Notation)形式としてもよい。また、ダイアログ本体の画像を表すダイアログ画像情報はビットマップデータを圧縮したJPEG形式としてもよい。
【0028】
図3はダイアログ含有情報を示す概念図である。
図3(a)は、ダイアログ含有情報に含まれるダイアログ画像情報が表す画像を示す図である。また、
図3(b)は、JSONファイルで管理されているダイアログ含有情報の一例を示す図である。一例として
図3(b)に示されるダイアログ含有情報には、ダイアログのタイトル(Title)が「ソフトウェアのインストール」であり、ダイアログに表示されるテキスト(Static)が「ソフトウェアのインストールを開始しますか?」であり、ダイアログに表示するオブジェクトのクラスであるボタン(Button)の名称(Name)が「はい(Y)」であり、オブジェクトの位置を表す座標が(280,145,399,185)であることが示されている。また、
図3(b)に示されるダイアログ含有情報には、ダイアログに表示するオブジェクトのクラスであるボタン(Button)の名称(Name)が「いいえ(N)」であり、オブジェクトの位置を表す座標が(407,145,526,184)であることも示されている。
【0029】
また、
図3(b)に示す例においては、「はい(Y)」のオブジェクトが操作された場合の遷移情報(Transition)は「B.json」であること、が示されている。
【0030】
また、
図3(c)は、
図3(a)に示されるダイアログにおいて「はい(Y)」がクリックされた場合に遷移する遷移ダイアログの画像を示している。また、
図3(d)は
図3(b)に示されるダイアログ含有情報に含まれる遷移情報によって識別される遷移後のダイアログ含有情報の一例を示す図である。
【0031】
ダイアログ含有情報送信部305は、通信ネットワークを介して、ダイアログ含有情報をサーバ201に送信する。ダイアログ含有情報送信部305は、サンプル提供端末301のディスプレイに表示されているダイアログが閉じられたときに、サーバ201にダイアログ含有情報を送信する。
【0032】
次に、
図4を参照して、サーバ201の機能構成について説明する。
図4は、サーバ201の機能構成を示す機能ブロック図である。
【0033】
<サーバの機能構成>
サーバ201は、ダイアログ含有情報を管理し、操作支援対象端末101が表示する案内情報を生成する。サーバ201は、送受信部202、収集データ管理部203、及び案内情報管理部204を有する。
【0034】
送受信部202(ダイアログ受信部、案内情報送信部)は、操作支援対象端末101及びサンプル提供端末301と、通信ネットワークを介して各種情報を送受信する。
【0035】
収集データ管理部203は、サンプル提供端末301によって送信されたダイアログ含有情報、及び回数情報を含むダイアログ情報を管理する。回数情報とは、同一のダイアログに係るダイアログ含有情報を後述するマージ部214が遷移ごとにマージした回数を表す情報である。収集データ管理部203は、収集データ記憶部211、抽出部212、同一判定部213、及びマージ部214を有する。
【0036】
収集データ記憶部211は、サンプル提供端末301のダイアログ含有情報送信部305から受信したダイアログ含有情報を記憶する。具体的には、収集データ記憶部211は、ダイアログのアイコン毎に作成されたディレクトリの中に、タイトル毎にディレクトリを作成し、そのディレクトリにダイアログ含有情報を記憶する。
【0037】
抽出部212は、送受信部202によって受信したダイアログ含有情報から、ポップアップウィンドウに係るダイアログ含有情報を抽出する。送受信部202によって受信したダイアログ含有情報に係るダイアログには、ユーザへの操作支援が必要なポップアップウィンドウだけでなく、操作支援が不要なファイル選択やオプションウィンドウといったモーダルウィンドウも含まれる。本実施形態では、ユーザへの操作支援が必要なポップウィンドウについてのみ、操作を支援するための処理を行うため、抽出部212はポップアップウィンドウに係るダイアログ含有情報を抽出する。
【0038】
具体的には、抽出部212はダイアログ含有情報に含まれるダイアログ画像情報が表す画像に所定のアイコンが含まれているかを判定する。一例として、抽出部212は、OpenCVのテンプレートマッチングを用いて、この判定をしてもよい。抽出部212は、ダイアログ画像情報が表す画像に所定のアイコンが含まれていると判定した場合、当該ダイアログはユーザへの操作支援が必要なポップアップウィンドウであると判断し、その画像に係るダイアログ含有情報を抽出する。また、抽出部212は、ダイアログ画像情報が表す画像に所定のアイコンが含まれていると判定しなかった場合、その画像に係るダイアログ含有情報を抽出しない。
【0039】
所定のアイコンの例は、
図5に示されるエラーアイコン、警告アイコン、情報アイコン、質問アイコン等であるが、ユーザの設定によりどのようなアイコンとしてもよい。
【0040】
同一判定部213は、抽出部212によって抽出されたダイアログ含有情報に係るダイアログと同一のダイアログに係るダイアログ含有情報が収集データ記憶部211に記憶されているか否かを判定する。
【0041】
具体的には、同一判定部213は、抽出部212によって抽出されたダイアログ含有情報に含まれるアイコンに係るディレクトリの中の、タイトルに係るディレクトリにダイアログ含有情報が記憶されているか否かを判定する。また、同一判定部213は、ダイアログ含有情報が記憶されていると判定した場合、抽出されたダイアログ含有情報のデータの配列構造が、記憶されているダイアログ含有情報のデータの配列構造と同一であるか否かを判定する。
【0042】
同一判定部213は、データの配列構造が同一であると判定した場合、同一のダイアログ含有情報の共通部分を1つの情報としたダイアログ情報を生成する。このように、同一のダイアログ含有情報の共通部分を1つにしたダイアログ情報を生成することを「マージする」という。
【0043】
同一のダイアログに係るダイアログ含有情報のうち共通部分は、ダイアログのタイトル、ダイアログに表示されるテキスト、ダイアログに表示するオブジェクトのウィンドウハンドル、クラス、名称、オブジェクトの位置を表す情報である。また、同一のダイアログに係る含有情報のうち共通しない部分(非共通部分)は遷移情報である。マージ部214は同一のダイアログで同一の遷移情報を有するダイアログ含有情報をマージした回数を算出し、この値を回数情報とする。また、マージ部214は、この回数情報及びダイアログ含有情報含むダイアログ情報を収集データ記憶部211に記憶する。
【0044】
図6は、ダイアログ情報の一例を示す概念図である。
図6に示される例には、同一のダイアログについて、名称(Name)が「はい(Y)」であるオブジェクトの操作に係るダイアログ含有情報をマージした回数(Count)は8回であることが示されている。また、名称(Name)が「いいえ(N)」であるオブジェクトの操作に係るダイアログ含有情報をマージした回数(Count)は2回であることが示されている。
【0045】
図4に戻って、案内情報管理部204は、操作支援対象端末101に送信するための案内情報を管理する。案内情報管理部204は、説明文記憶部215、統計算出部216、説明情報付与部217、及び案内情報生成部218を有する。
【0046】
説明文記憶部215は、案内情報を記憶する。
【0047】
統計算出部216は、ダイアログ情報に含まれる回数情報から、ダイアログ含有情報がマージされた総回数を算出する。例えば、
図6に示す例においては、名称(Name)が「はい(Y)」であるオブジェクトの操作に係るダイアログ含有情報がマージされた回数(Count)は8回であり、名称(Name)が「いいえ(N)」であるオブジェクトの操作に係るダイアログ含有情報がマージされた回数(Count)は2回である。そのため、ダイアログ含有情報がマージされた総回数は10回であると算出する。
【0048】
説明情報付与部217は、ダイアログを説明するための管理者によって入力された説明文(note)を受け付け、そのダイアログに係るダイアログ情報に「#note」の文字とともに記憶する。
【0049】
案内情報生成部218は、操作支援対象端末101からダイアログ含有情報が送信されると、その操作支援対象端末101のディスプレイに表示させる案内情報を生成する。具体的には、案内情報生成部218は、そのダイアログ含有情報に係るダイアログが収集データ記憶部211に記憶されているダイアログ情報に係るダイアログのいずれかと同一であるか判定する。そのために、案内情報生成部218は、収集データ記憶部211に記憶されているダイアログ情報に係るダイアログのアイコンのうち、送信されたダイアログ含有情報のアイコンと同一のアイコンを、テンプレートマッチングを用いて検索する。
【0050】
同一のアイコンが検索された場合、案内情報生成部218は、そのアイコンに係るダイアログ情報に基づいて案内情報を生成する。また、案内情報生成部218は、例えばHTML5のCanvasを用いて、該案内情報に、遷移前のダイアログ、遷移後のダイアログ、及び、それらを始点、終点とする矢印を含むように案内情報を生成する。
【0051】
ここで、案内情報生成部218が、矢印を含む案内情報を生成する機能の一例を説明する。案内情報生成部218は、ダイアログ含有情報収集部304がSetWindowsHookEx関数を用いることによって特定したダイアログのオブジェクトの座標が表す位置にdivエレメントを埋め込み、埋め込まれたdivエレメントと遷移後のダイアログの画像に基づいて、jQuery-ArrowMarkプラグインを用いて、矢印を含む案内情報を生成する。
【0052】
また、案内情報生成部218は、ダイアログ含有情報に説明文を含めるように案内情報を生成する。また、案内情報生成部218は、説明情報付与部217によって付与された説明文に統計算出部216によって生成された統計情報を案内情報に含めるように案内情報を生成する。また、多くの操作支援対象端末101が備えているブラウザ等で表示可能であるように、案内情報はHTML形式とすることが好ましい。
【0053】
図7は、案内情報の一例である。例えば、
図7に示されるように、遷移前のダイアログの中の「はい」と表示されるオブジェクト43を始点とし、遷移後のダイアログを表す画像42を終点とする矢印44を表示するように案内情報を生成する。また、
図6に示す例のように「はい」に係る操作の回数は8回であり、「いいえ」に係る操作の回数は2回であって、統計算出部216によって、操作の総回数は10回と算出されている場合、案内情報生成部218は、
図7に示されるように、「10人中8人のユーザが[はい]のボタンを選択しています。」という説明文41を含むように案内情報を生成する。
【0054】
次に、
図8を参照して、操作支援対象端末101の機能構成について説明する。
図8は、操作支援対象端末101の機能構成を示す機能ブロック図である。
【0055】
<操作支援対象端末の機能構成>
操作支援対象端末101は、ダイアログに関する情報をサーバ201に送信する。また、操作支援対象端末101は、サーバ201から案内情報を受信し、受信した案内情報を表示する。
図8に示されるように、操作支援対象端末101は、ダイアログ検出部103、ダイアログ含有情報収集部104、ダイアログ含有情報送信部105、及び案内文提示部106を有する。これら各部はWindows(登録商標)APIによって、機能を実現してもよい。
【0056】
ダイアログ検出部103は、ダイアログ検出部303と同様に操作支援対象端末101がディスプレイに表示したダイアログを検出する。
【0057】
ダイアログ含有情報収集部104は、ダイアログ含有情報収集部304と同様にダイアログ検出部103が検出したダイアログに係るダイアログ含有情報を収集する。
【0058】
ダイアログ含有情報送信部105は、ダイアログ含有情報送信部305と同様に通信ネットワークを介して、ダイアログ含有情報をサーバ201に送信する。
【0059】
案内文提示部106は、サーバ201の送受信部202から送信された案内情報を受信する。また、案内文提示部106は受信した案内情報を、操作支援対象端末101のディスプレイに提示する。
【0060】
<操作支援システムの動作>
図9を参照して、本実施形態に係る操作支援システム1の動作を説明する。
図9は、操作支援システム1の動作を表すシーケンス図である。
【0061】
まず、サンプル提供端末301の動作について説明する。ダイアログ検出部303はサンプル提供端末301がディスプレイに表示したダイアログを検出する(ステップS1)。ステップS1でダイアログ検出部303がダイアログを検出すると、ダイアログ含有情報収集部304は、ダイアログ検出部303が検出したダイアログに係るダイアログ含有情報を収集する(ステップS2)。
【0062】
続いて、ダイアログ含有情報送信部305は、ステップS2でダイアログ含有情報収集部304によって収集されたダイアログ含有情報を、通信ネットワークを介して、サーバ201に送信する(ステップS3)。
【0063】
ステップS3で、ダイアログ含有情報送信部305によってダイアログ含有情報が送信されると、サーバ201の送受信部202は、送信されたダイアログ含有情報を受信する(ステップS4)。送受信部202によってダイアログ含有情報が受信されると、抽出部212は、送受信部202によって受信したダイアログ含有情報から、ダイアログがポップアップウィンドウであるダイアログ含有情報を抽出する(ステップS5)。
【0064】
ステップS5でポップアップウィンドウに係るダイアログ含有情報が抽出されると、抽出されたダイアログ含有情報が収集データ記憶部211に記憶される。そして、マージ部214は収集データ記憶部211に記憶されているダイアログ含有情報をマージする(ステップS6)。
【0065】
また、管理者によって説明文(note)が入力されると、説明情報付与部217は入力された説明文を「#note」の文字とともにダイアログ情報に付与する(ステップS7)。
【0066】
ここで、操作支援対象端末101の動作について説明する。サンプル提供端末301の動作と同様に、ダイアログ検出部103が、操作支援対象端末101によってディスプレイに表示されたダイアログを検出する(ステップS8)。ステップS11でダイアログ検出部103によってダイアログが検出されると、ダイアログ含有情報収集部104は、ダイアログ検出部103が検出したダイアログに係るダイアログ含有情報を収集する(ステップS9)。
【0067】
続いて、ダイアログ含有情報送信部105は、ダイアログ含有情報収集部104によって収集されたダイアログ含有情報を、通信ネットワークを介して、サーバ201に送信する(ステップS10)。
【0068】
ステップS10で、操作支援対象端末101からダイアログ含有情報が送信されると、案内情報生成部218は、送信されたダイアログ含有情報のアイコンと同一のアイコンに係るダイアログ情報を検索し、検索されたダイアログ情報に基づいて案内情報を生成する(ステップS11)。
【0069】
具体的には、案内情報生成部218はダイアログ情報に含まれる遷移する前の画像、遷移した後の画像、これらの画像をそれぞれ始点及び終点とする矢印、及び説明文を表示するための案内情報を生成する。
【0070】
ステップS11で案内情報生成部218によって案内情報が生成されると、送受信部202は生成された案内情報を操作支援対象端末101に送信する(ステップS12)。
【0071】
ステップS12で案内情報が送信されると、操作支援対象端末101の案内文提示部106は、案内情報を受信し、その案内情報が表す案内文をディスプレイに提示する(ステップS13)。
【0072】
また、操作支援対象端末101のディスプレイに表示されたダイアログが、ユーザの操作によって遷移し、遷移によって新たなダイアログが表示されると、ダイアログ検出部303は表示されたダイアログを検出する(ステップS8)。そして、検出されたダイアログに基づいて、ステップS9乃至13の処理が行われる。
【0073】
以上のように、本実施形態においては、サーバ201は、遷移情報を含むダイアログ含有情報に基づいて、操作支援対象端末101のユーザを支援するための案内情報を生成する。遷移情報には、ダイアログに対してどのような操作が行われたかを示す情報が含まれる。そのため、案内情報を提示されたユーザはダイアログに対してどのような操作が行われる傾向にあるかを統計的に知ることができ、自身が行うべき操作を迅速に判断することが可能である。
【0074】
また、遷移情報には、ダイアログに対してどのような操作をした場合にどのようにダイアログに遷移するかを示す情報が含まれる。そのため、案内情報を提示されたユーザはダイアログに対してどのような操作をした場合にどのようにダイアログに遷移するかを操作前に知ることができ、自身が行うべき操作を適切に判断することが可能である。
【0075】
そのため、ユーザは、専門用語を含んだ表現を理解できなかったり、提示されたボタンの選択によりどのような動作となるか分からなかったりしても、辞書や操作マニュアルを調べることなく操作が行える。したがって、ユーザの作業効率を向上させ、ユーザのストレスを軽減することが可能となる。
【0076】
また、ダイアログ情報は、アイコンのタイトルごとのディレクトリの中に生成されたタイトルごとのディレクトリに管理されているため、サンプル提供端末301から受信したダイアログ含有情報と同じダイアログに係るダイアログ含有情報が収集データ記憶部211に記憶されているか否かを、同一判定部213は迅速に判定することが可能である。
【0077】
また、本実施形態では、抽出部212がポップアップダイアログを抽出することにより、操作支援が必要でないファイル選択やオプションウィンドウといったモーダルウィンドウについての案内情報を生成しないようにすることができる。このように操作支援が必要なウィンドウについてのみ案内情報を生成することによって、サーバ201のリソースを効率的に利用することが可能である。
【0078】
また、本実施形態では、ダイアログ情報は遷移した後のダイアログ含有情報を識別する情報を含んでいるが、ダイアログ情報はさらなるユーザの操作によってさらに遷移した後のダイアログ含有情報を含んでもよい。すなわち、第1のダイアログが遷移した後の第2のダイアログに関する情報、第2のダイアログが遷移した後の第3のダイアログに関する情報、・・・、第nのダイアログが遷移した後の第(n+1)のダイアログに関する情報をダイアログ情報は含むことできる。このため、多数回にわたっての操作が求められる場合においても、それらの操作に係るダイアログを予め知ることができ、操作に係る手順書を参照する必要がなく、ユーザの負荷をさらに軽減することが可能である。
【0079】
本実施形態では、操作支援対象端末101にダイアログが表示されると、サーバ201の案内情報生成部218が上述の処理を行い、それによって生成された案内情報が送信されるが、操作支援対象端末101にダイアログが表示されると、サーバ201の説明文記憶部215に記憶されている案内情報が送信されてもよい。
【0080】
上述の実施形態は代表的な例として説明したが、本発明の趣旨及び範囲内で、多くの変更及び置換ができることは当業者に明らかである。したがって、本発明は、上述の実施形態によって制限するものと解するべきではなく、特許請求の範囲から逸脱することなく、種々の変形や変更が可能である。例えば、実施形態に記載の複数の構成ブロックを1つに組み合わせたり、あるいは1つの構成ブロックを分割したりすることが可能である。