JP5677592B2 - データ処理方法、データ処理システム、及びデータ処理装置 - Google Patents
データ処理方法、データ処理システム、及びデータ処理装置 Download PDFInfo
- Publication number
- JP5677592B2 JP5677592B2 JP2013553078A JP2013553078A JP5677592B2 JP 5677592 B2 JP5677592 B2 JP 5677592B2 JP 2013553078 A JP2013553078 A JP 2013553078A JP 2013553078 A JP2013553078 A JP 2013553078A JP 5677592 B2 JP5677592 B2 JP 5677592B2
- Authority
- JP
- Japan
- Prior art keywords
- feature amount
- feature
- log
- operation log
- 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.)
- Expired - Fee Related
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/55—Detecting local intrusion or implementing counter-measures
- G06F21/552—Detecting local intrusion or implementing counter-measures involving long-term monitoring or reporting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3065—Monitoring arrangements determined by the means or processing involved in reporting the monitored data
- G06F11/3072—Monitoring arrangements determined by the means or processing involved in reporting the monitored data where the reporting involves data filtering, e.g. pattern matching, time or event triggered, adaptive or policy-based reporting
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1408—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
- H04L63/1425—Traffic logging, e.g. anomaly detection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2201/00—Indexing scheme relating to error detection, to error correction, and to monitoring
- G06F2201/865—Monitoring of software
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Computing Systems (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Quality & Reliability (AREA)
- Debugging And Monitoring (AREA)
Description
本発明は、データを処理する方法、及びその方法を実行するデータ処理システム、データ処理装置に係る。特に、ユーザ端末上でのユーザ操作の操作ログを収集し、その操作ログから特定の操作を抽出する等の、ユーザ端末上でなされたユーザ操作に関する検索方法および検索装置に関する。
近年、さまざまなサービスがネットワークを介して提供されるようになり、サービス提供者は、ネットワークの向こう側のユーザの状況を把握しにくくなっている。また、これらのサービスの中には、業務システムや金融サービスをはじめとして、その利用によって経済に大きな影響を与えるサービスも多く含まれる。
そのため、業務やビジネスの状況を把握するためには、ネットワークを介して提供されるサービスのユーザの状況を把握する必要性が高まっている。例えば、業務システムなどでは、従業員の誤操作によって大きな損失や信用の失墜を招くことがあり、このようなオペレーショナルリスクを回避するために、利用状況を監視して、問題行動を把握したいというニーズがある。また、電子商取引のように、ネットワーク化によって従来よりも参入障壁が下がって、類似のサービスを誰でも提供できるようになると、ユーザの状況にあわせたサービスをいかに提供してサービスの優位化を図るかがビジネスで成功するために重要になってくる。これを実現するためには、多数のユーザの状況を瞬時に把握して、適切なサービスを提供することが必要になる。
これに対して、特開2010−108469号公報(特許文献1)では、特定ユーザ端末の操作を、他の複数のユーザ端末の操作と比較して特異操作の判定を行うことで、特定操作の検出条件を指定しなくても問題となる可能性のある操作の検出を実現する方法が開示されている。
また、特開2010−160613号公報(特許文献2)では、各操作シーケンスに意味情報を与え、例えば電子メールの誤送信時に発生する操作シーケンスに警告情報を与えて、類似操作が発生した際に出力装置に警告を出力する方法が開示されている。
また、特開2005−250802号公報(特許文献3)では、システムへの不正アクセス検出装置として、アクセスデータの解析により異常データの特徴を示す特徴量データを算出する解析手段と、異常判定を行う統計モデルを用意して、問題の検出を行う手段が開示されている。
さらに、特開2009−230663号公報(特許文献4)では、不正なウェブページの検出を行うために、ウェブページに含まれるリンク情報を抽出し、リンク先のウェブページを取得して、そのウェブページの特徴量を算出し、特徴量に基づいてウェブページの異常の有無を判定する方法が開示されている。
上述のように、従来技術において、ユーザの状況を把握するために特定ユーザ端末の操作を他のユーザ端末の操作と比較していたが、この際にユーザ端末で取得した大量の操作ログをサーバ側に収集して解析する必要があり、操作ログを収集する為の収集コストが高くなるという問題があった。
また、誤操作の検出のような特定の操作を検出しようとする際に、検出対象の操作時に発生する操作シーケンスに警告情報を与えて類似の操作に対して警告を出すといった操作シーケンスに対する意味情報の付加を利用した処理を行っていたが、意味情報を与える操作シーケンスを適切に指定することが困難であるという問題があった。
さらに、特徴量に基づいて異常判定等を行う場合に、実際にどのような操作が行われて異常と判定されたかを知るために必要な操作の再現手段がなく、精度よい判定には特徴量の算出手段と、異常判定を行う統計モデルが正確に設定できることが前提条件となり、これらができないと精度よい判定は困難であるという問題があった。
本発明の目的は、上記の課題を解決し、多数のユーザ端末上で行われるユーザ操作から特定の操作を検出すために、大量の操作ログの収集無しに、検索対象となる特定操作を的確に行い、効率的に検索対象操作の検索を実現することにある。
本願において開示される発明の代表的な一例を示せば以下の通りである。すなわち、操作に関するログである操作ログと、操作ログの特徴を示す情報である特徴量を端末で生成し、特徴量が所定の条件を満たした場合に、操作ログと特徴量を端末から情報分析装置に送信し、情報分析装置において特徴量と操作ログとを記憶して、情報分析装置が検索要求を受信した場合に特徴量に基づいて操作ログに関する検索を行う。
また、本願において開示される発明の代表的な他の一例を示せば以下の通りである。すなわち、端末と情報分析装置の少なくとも何れかが、情報分析装置に記憶されている特徴量の少なくとも一部の特徴量の分布を示す情報を生成する。
操作ログの収集を選択的にして大量の操作ログの収集を不要することができる。さらに、検索対象となる特定操作を的確かつ効率的に実現できる。
以下、実施例について図面を用いて説明する。
本発明によるユーザ操作の検索方法を図1から図10を使って説明する。図1は、本発明が対象とするシステムのハードウェア構成と、ソフトウェア構成の例を示すシステム構成図である。
ハードウェアは、ユーザ端末装置101、操作分析装置141、分析用端末装置181と、これらの装置を接続するネットワーク161から構成される。なお、各装置のハードウェアは同一のハードウェアで実現されても、複数のハードウェアに分散されて構成されてもよい。また、例えば、操作分析装置141のメモリに分析用端末装置181の有するプログラムを追加して、操作分析装置141が分析用端末装置181の有する機能を兼ねて実行する等のように、各ソフトウェアが同一のハードウェアで実行されても、複数のハードウェアで実行されて構成されてもよい。
ユーザ端末装置101、操作分析装置141、分析用端末装置181は、すべてプロセッサ(103、143、183)、メモリ(108、148、188)、入出力部(102、147、187)、ネットワークインタフェース(107、142、182)を備え、相互に接続されている。ユーザ端末装置101、操作分析装置141は、さらにローカルディスク(105、145)を備える。ただし、一部の装置ではこれらの構成要素の一部が欠けてもよい。入出力部(102、147、187)はモニタを備え、後述する図3A、図7A、図7B、図9、図10に示すような画面をモニタに表示し、マウス、キーボード等のインタフェースを用いてこれらの画面に対する操作を行うことができる。また、これらの画像は、入出力部(102、147、187)の先に接続される映像装置(モニタなど)に表示してマウス、キーボード等のインタフェースを用いてこれらの画面に対する操作を行う構成としてもよい。
ユーザ端末装置101のメモリ108には、アプリケーション実行基盤プログラム111、アプリケーションプログラム112、操作ログ取得・送信プログラム113が格納されている。これらのプログラムは、プロセッサ103に読み込まれて実行される。アプリケーション実行基盤プログラム111は、アプリケーションプログラム112や操作ログ取得・送信プログラム113などのプログラムの実行を制御し、これらのプログラムとローカルディスクや入出力部、ネットワークなど外部との入出力を制御する機能を持つ。
アプリケーションプログラム112は、ユーザ端末装置のユーザが操作を行う対象であり、例えば文書作成や表計算、ウェブページ閲覧などの機能を提供する。
操作ログ取得・送信プログラム113は、アプリケーションプログラム上でのユーザ操作を示す情報を取得して操作ログを生成し、その操作ログの特徴量を計算したり、特徴量や操作ログを保存、送信したりするなどの機能を持つ。
入出力部102には、キーボードやマウス、モニタなどが接続され、プログラムの実行や停止の指示を行ったり、プログラムの実行結果をモニタに表示したりするのに利用される。プロセッサ103は、メモリ108からプログラムを読み込んで処理を実行する。ネットワークインタフェース107は、ユーザ端末装置101と外部の装置との間で、ネットワーク161を介して操作ログなどのデータや装置の動作を制御するコマンドの送受信を行う。ローカルディスク105には、ログ保存領域106があり、操作ログや特徴量などが保存される。
操作分析装置141のメモリ148には、分析プログラム151が格納されている。このプログラムは、プロセッサ143に読み込まれて実行される。
分析プログラム151は、ユーザ端末装置101から送信された操作ログやその特徴量を受信して保存する機能、特徴量の分析を行い特徴量の分布などを可視化する機能、ユーザ端末装置101における特徴量の計算方法を指定する機能などを持つ。
入出力部147、プロセッサ143、ネットワークインタフェース142、ローカルディスク145は、ユーザ端末装置101にある同名の装置である入出力部102、プロセッサ103、ネットワークインタフェース107、ローカルディスク105とそれぞれ同じ機能を持つ。
分析用端末装置181のメモリ188には、分析インタフェースプログラム191が格納されている。分析インタフェースプログラム191は、プロセッサ183に読み込まれて実行される。
分析インタフェースプログラム191は、検索対象とする操作を指定する機能、操作分析装置141で分析された特徴量の分析結果を表示する機能、操作分析装置141に送信された操作ログからユーザが行った操作を再現する機能、分析結果や再現結果に対する評価を入力する機能を持つ。
入出力部187、プロセッサ183、ネットワークインタフェース182は、ユーザ端末装置101にある同名の装置である入出力部102、プロセッサ103、ネットワークインタフェース107、ローカルディスク105とそれぞれ同じ機能を持つ。
本実施例における、ユーザ操作の検索処理フローを図2により説明する。図2以降の図においては、プログラムがプロセッサ上で実行されている状態をモジュールと呼び、例えば、アプリケーションプログラムがプロセッサ上で実行されている場合、アプリケーションモジュールと呼ぶ。つまり、アプリケーション実行基盤プログラム111がプロセッサ上で実行されている状態がアプリケーション実行基盤モジュール211であり、アプリケーションプログラム112がプロセッサ上で実行されている状態がアプリケーションモジュール212であり、操作ログ取得・送信プログラム113がプロセッサ上で実行されている状態が操作ログ取得・送信モジュール213であり、分析プログラム151がプロセッサ上で実行されている状態が分析モジュール251であり、分析インタフェースプログラム191がプロセッサ上で実行されている状態が分析インタフェースモジュール291である。
図1で説明したように、ユーザ端末装置101、操作分析装置141、分析用端末装置181がネットワーク161で接続されたシステムで、ユーザ端末装置101上のアプリケーションで操作が行われると、アプリケーションモジュール212上で操作に応じたイベントが発生する。例えば、アプリケーション上のボタンをマウスで押下した場合には、クリックイベントが発生する。
操作ログ取得・送信モジュール213は、操作ログ記録機能214と、特徴量計算機能215と、を持つ。操作ログ記録機能214には、プリケーション上で発生したイベントを捕らえて操作ログを生成する操作ログ生成の他に、ログ保存領域106に操作ログを保存したり、ログ保存領域106に保存されている操作ログを読み出したり、操作ログを外部に送信したりする機能も持つ。
特徴量計算機能215は、生成もしくは読み出された操作ログに対して、特徴量を計算する機能を持つ。特徴量には、アプリケーション上でマウスカーソルが動いた距離や、マウスがクリックされた回数など、操作ログから計算できるあらゆるものを含む。
さらに、特徴量計算機能215には、操作分析装置141や分析用端末装置181から指定された条件に対して計算された特徴量が条件を満たすか否かを判定する条件判定機能216が含まれる。
条件判定機能216では、例えば条件として「マウスのクリックが累積10回以上」として与えられ、マウスのクリック回数が累積で10回を越えると条件を満たしたと判定し、特徴量計算機能215に対して条件成立を通知する。特徴量計算機能215は、操作ログ記録機能214と同様に、特徴量をログ保存領域106に保存したり、ログ保存領域106に保存されている特徴量を読み出したり、特徴量を外部に送信したりする機能を持つ。さらに、特徴量に該当する操作ログを特定して、操作ログ記録機能214から該当する操作ログを取得し、これを外部に送信する機能も含まれる。
また、特徴量計算機能215には、これらの動作の履歴を記録する履歴管理機能217も含まれる。
これらの機能により、ユーザ端末装置101上で行われた操作が、特定の条件を満たした場合に、該当する操作ログをログ保存領域106から読み出して外部に送信したりすることができ、特徴量に基づいた選択的な操作ログの外部への送信が実現できる。
本実施例では、特徴量の計算や特徴量、操作ログの保存・送信のタイミングについては限定をしないが、例えば、一定量の操作が行われると特徴量の計算と操作ログの保存が行われ特徴量がネットワーク161を介して操作分析装置141に送信され、さらに条件判定機能216で条件を満たすと判定された場合には、該当する操作ログも操作分析装置141に送信される。
操作分析装置141では、分析モジュール251の機能として、ユーザ端末装置101から送信されてきた特徴量や操作ログを受信してログ保存領域146に保存するログ送受信機能252やログ保存機能253が含まれる。図2では、ユーザ端末装置101は1台のみ記載されているが、複数代のユーザ端末装置101からのログの受信も可能である。
ログ保存機能253には、ログ保存領域146から特徴量や操作ログを読み出す機能も含まれる。また、ログ送受信機能252には、特徴量や操作ログやそれらから生成されたデータをユーザ端末装置101や分析用端末装置181へ送信する機能も含まれる。
さらに、分析モジュール251には、特徴量分析機能254が含まれる。特徴量分析機能254は、複数の特徴量の統計処理を行ったり、特徴量の分布をグラフなどの形で可視化したりする機能が含まれる。さらに、指定された操作ログの特徴量と、ログ保存領域146に保存されている操作ログの特徴量との間の類似の度合いを示す情報である類似度や、乖離の度合いを示す情報である乖離度を計算したり、指定された特徴量に該当する操作ログをログ保存領域146から取得したりする機能なども含まれる。特徴量指定機能255は、特徴量の分析結果や外部からの入力によって、ユーザ端末装置101で計算する特徴量を変更したり、条件判定の条件を変更したりする機能を持つ。
これらの機能により、操作分析装置141では、複数の特徴量と操作ログの状況を確認したり、特定の特徴量や操作ログを抽出したりする機能を提供することができる。分析用端末装置181では、分析インタフェースモジュール291の機能として、操作分析装置141やユーザ端末装置101に保存されている操作ログから抽出したい操作ログを指定する検索操作指定機能292と、操作分析装置141の特徴量分析機能254で分析された結果を表示したり、操作分析装置141で抽出した操作ログを基にユーザ操作を再現したりする機能を実現する結果表示/再現機能293が含まれる。
さらに、分析結果や再現された操作に対して、抽出したい操作ログか否か、抽出したい操作を指定するのに有効な特徴量であるかないかなど、評価を入力する評価入力機能294が含まれる。
これらの機能により、分析用端末装置181では、ユーザ端末装置101でのユーザ操作の状況を確認しながら、抽出したい操作を、効率的に指定することができる。
次にユーザ操作と操作ログ、特徴量について図3A、図3B、図3Cを用いて説明する。図3Aでは、アプリケーション画面301上でユーザが複数のオブジェクトに対して選択やチェック、クリックなどの操作を行った様子を模式的に示している。例えば、プルダウンメニューのCCC304ではCCC1を選択し、ラジオボタンDDD305ではDDD2を選択している。これらの操作によって発生したイベントから、操作ログ記録機能214では、図3Bの操作ログ310の表に示したような操作ログの列を生成する。
操作ログ310には、例えば、操作を行った場所を示すアプリケーション名やURL(Uniform Resource Identifiers)、時刻、操作対象のオブジェクト名、操作の内容、操作の結果、その他備考として操作者や画面上での座標などが含まれる。
図3Cに示す操作の特徴量320には、操作ログ310から計算できるあらゆるものが含まれるが、例を挙げれば、操作発生数、操作対象、時間、座標、環境、コンテンツなどの統計量などがある。
続いて、図4〜図6で、各装置の処理フローの詳細を説明する。
図4A、図4Bに、ユーザ端末装置101での処理フローの詳細を示す。先に説明したように、操作ログ取得・送信モジュール213では、アプリケーションモジュール212上で発生したイベントから操作ログを生成、特徴量を計算するが、その中の、操作ログ生成について図4Aを用いて説明し、特徴量の計算、条件判定について図4Bを用いて説明する。
図4Aを用いて説明する操作ログの生成は、操作ログ記録機能214で行われ、アプリケーション情報401とイベント情報404から操作ログが生成される。ここで、アプリケーション情報401は図1に示したアプリケーションプログラム112に含まれ、イベント情報404は図1に示したアプリケーション実行基盤プログラム111に格納もしくは生成される。
アプリケーション情報401には、オブジェクトに関する情報402やアプリコードに関する情報403が含まれる。オブジェクトに関する情報402とは、アプリケーション画面上に表示されているボタンやフォームなどのオブジェクトの名前や場所、大きさなどの情報である。アプリコードに関する情報403とは、ウェブページに含まれるスクリプトコードなどである。
イベント情報404には、操作イベント405、アプリプロパティ406、実行環境情報407が含まれる。操作イベント405には、クリック操作など操作の内容、操作の結果、操作の場所などの情報が含まれる。アプリプロパティ406には、アプリケーションの動作状況やステート、例えばウェブページのクッキー情報などが含まれる。実行環境情報407には、操作者名や実行されているデバイス情報などが含まれる。
操作ログの生成は、操作ログ記録機能214に含まれる操作ログ変換機能411が、アプリケーション情報401とイベント情報404を取得し、これらの情報を用いて操作ログ生成ルール410に基づき行う。操作ログ生成ルール410は操作ログ取得・送信プログラム113に含まれる。また、操作ログ生成ルール410には、イベントから操作ログの文字列を生成するルールの他に、操作ログを生成するタイミングや、生成された操作ログの保存方法などが含まれても良い。生成された操作ログは、操作ログ記録機能214に含まれる操作ログ保存・送信機能412によって、ログ保存領域106との間で操作ログの保存・読み出しを行う。
図4Bを用いて説明する特徴量の計算は、特徴量計算機能215が、ログ保存領域106から操作ログを読み出し、読み出した操作ログを用いて特徴量計算ルール420に基づいて計算を行う。ここで、特徴量計算ルール420は図1にて示した操作ログ取得・送信プログラム113に含まれる。なお、操作ログはログ保存領域106を経由せずに、操作ログ変換機能411などから直接取得しても良い。特徴量計算ルール420には、特徴量の計算方法のほかに、特徴量を計算するタイミングや、計算された特徴量の保存方法などが含まれても良い。続いて、条件判定ルール422に基づいて条件判定機能216で、計算された特徴量が、操作分析装置141や分析用端末装置181から指定された条件を満たすか否かの判定を行う。ここで、条件判定ルール422は図1にて示した操作ログ取得・送信プログラム113に含まれる。また、条件判定ルール422としては、特定の特徴量が一定値より大きいかなどの条件の他に、ログ保存領域106に保存されている他の特徴量との比較などの条件も含まれる。履歴管理機能217は、条件判定結果の他に、操作ログや特徴量の計算結果などの履歴を管理し、履歴をログ保存領域106に保存する。
図5A、図5Bに操作分析装置141での処理フローの詳細を示す。先に説明したように、分析モジュール251では、ユーザ端末装置101から特徴量と操作ログを受信してそれらをログ保存領域146に保存したり、分析用端末装置181から指定された検索対象の操作の特徴量とログ保存領域146に保存されている特徴量との比較や、特徴量の分布などの分析をしたりする。これらの処理の詳細フローの例を以下に説明する。図5A、図5Bでは、複数の特徴量をまとめて特徴量ベクトル501と呼ぶ。
まず、図5Aを用いて、ログ送受信機能252、ログ保存機能253、特徴量分析機能254が行う処理について説明する。分析モジュール251では、特徴量ベクトル501と操作ログ502をログ送受信機能252で受信し、これを、ログ保存機能253を介してログ保存領域146に保存する。ログ保存領域146には、例えば図23のテーブル2300に示すように、各操作2301について、操作ログ(2302、2303、2304、2305、2306、2307)と特徴量(2308、2309、2310)とが対応付けられて保存される。特徴量の算出方法については後述する。特徴量分析機能254は、受信した特徴量やログ保存領域146に保存されている特徴量、検索対象として指定された操作の特徴量などから、検索対象の操作を抽出したり、特徴量の分布などの分析をしたりする。特徴量の分析結果514もログ保存機能253を介してログ保存領域146に保存しても良い。
次に、図5Bを用いて、特徴量指定機能255が行う処理について説明する。特徴量指定機能255では、分析用端末装置181から受信した検索結果評価521とログ保存領域146に保存されている特徴量分析結果514や特徴量から、ユーザ端末装置101での特徴量計算ルール420や条件判定ルール422などの変更・指定を行う特徴量指定522を生成する。例えば、特定の特徴量が検索対象の操作を指定するのに役に立たないとの評価が与えられた場合、該当する特徴量の計算そのものを停止するなどの変更を加えることで、特徴量の計算コストや、保存コストの低減を図ることができる。
図6に分析用端末装置181での処理フローの詳細を示す。先に説明したように、分析インタフェースモジュール291では、操作分析装置141やユーザ端末装置101に保存されている操作ログから抽出したい操作ログを指定したり、操作分析装置141の特徴量分析機能254で分析された結果をモニタに表示したり、操作分析装置141で抽出した操作ログを基にユーザ操作をモニタに再現したりし、分析結果や再現された操作に対して、抽出したい操作ログか否か、抽出したい操作を指定するのに有効な特徴量であるかないかなど、評価を入力する機能を提供する。
結果表示/再現機能293では、特徴量ベクトル501、操作ログ502、特徴量分析結果514などから、特徴量の分布の表示や特定操作の再現などを行い、検索操作指定機能292で指定された検索対象の操作の特徴量を特徴量の分布にあわせてモニタに表示し、ユーザ操作の状況と、指定した操作の関係を可視化することで、検索対象とする操作の指定を修正したり、ユーザ操作の中から検索対象となる操作を選択したりする。また、特徴量の分布の表示や、操作の再現に対して、評価を入力し、操作分析装置141に検索結果評価521を送信する機能を評価入力機能294で提供する。
図7Aは、分析用端末装置181での特徴量の分布の表示の一例を示す図であり、図7Bは操作の再現のイメージの例を示した図である。これらの画面701、750は分析用端末装置181の入出力部187が備えるモニタに表示される。図7Aの結果表示画面701には、表示内容を制御する制御部702と、特徴量の分布を表示するグラフ部703が含まれ、制御702で表示する特徴量の選択を行ったり、該当するログを選択したり、選択した操作の再現を行ったり、選択した操作を検索対象として指定する機能を提供する。
グラフ部703では、例えば3つの特徴量の分布を3次元グラフで表示する。以下では、この3次元グラフで表現される空間を特徴量空間と呼ぶ。グラフ上で黒丸●721は、ログ保存領域146に保存されている特徴量であり、中抜き丸◎722は、ログ保存領域146に保存されている特徴量の中で、さらに操作ログも保存されているものである。星★723は、検索対象の操作として指定した操作の特徴量空間での分布を示している。図7から分かるように、検索対象の操作は複数指定しても良い。図7の特徴量空間から、例えば操作の分布が、703中の点線で囲まれたいくつかのクラスタ724に分かれることや、検索対象の操作と合致する操作はないが、特徴量空間では近傍に位置する操作のクラスタ724があること、どのクラスタ724にも属さない操作があることなどが読み取れる。図7Bは、操作再現画面750で、結果表示画面701で中抜き丸◎722をマウスなどによって選択して、中抜き丸◎722の特徴量に対応する操作を再現して確認することができる。
以上の説明から図8に本実施例の全体処理フローの例として、指定した操作を検索して操作を再現し、さらに特徴量空間で他の操作の状況を表示して、必要に応じて検索対象の操作を追加する処理のフローを示す。
ユーザ端末装置101では、アプリケーションモジュール212上でユーザ操作などによりイベントが発生すると(ステップ803)、操作ログ取得・送信モジュールの操作ログ記録機能がアプリケーションモジュールからイベント情報を取得し(ステップ804)、操作ログ記録機能が操作ログ生成ルールに基づき操作ログを生成しログ保存領域に保存する(ステップ805)。以降では、ステップ803、804、805をまとめてステップ802と呼ぶ。次に、特徴量計算の要否を判定する(ステップ807)。この判定は例えば特徴量計算ルールに基づいて行う。特徴量の計算は、特徴量計算機能が特徴量計算ルールに基づき操作ログから特徴量を計算して保存する(ステップ808)。続いて、条件判定機能が条件判定ルールに基づき操作ログの送信要否を判定し、履歴管理機能がログ保存領域に保存する(ステップ809)。以降では、ステップ807、808、809をまとめてステップ806と呼ぶ。計算された特徴量の送信要否を判定し(ステップ811)、必要に応じて操作ログ保存・送信機能が特徴量を操作分析装置に送信する(ステップ812)。操作ログに比較して特徴量のサイズが十分に小さい場合には、常時特徴量を操作分析装置に送信することで、大量の操作ログを送信せずに、操作分析装置でユーザ操作の全体の状況を把握することが可能になる。続いて、操作ログの送信要否を判定する(ステップ813)。この判定は、ステップ809の判定結果に基づいて行う。
ただし、通信効率などを考慮して、ある程度の量をまとめて送信するなど送信タイミングを調整するために、ステップ809の判定結果が要であっても、直後に送信しない方法もある。操作ログの送信は、操作ログ保存・送信機能が行う(ステップ814)。以降では、ステップ811、812、813、814をまとめてステップ810と呼ぶ。ユーザ端末装置では、これらの処理フローをアプリケーション上での操作が終了するまで繰り返す。
操作分析装置141では、ユーザ端末装置101の処理ステップ812、814で送信された特徴量や操作ログを、ログ送受信機能で受信しログ保存領域に保存する(ステップ823)。続いて、特徴量分析機能が分析用端末層で指定された操作の特徴量とログ保存領域に保存されている特徴量を比較する(ステップ824)。比較の方法については、図9、図10で説明をする。ここでは、比較の例として検索対象として指定した操作と、特徴量空間で類似度の高い操作を抽出するための比較操作を例とする。類似操作の有無の判定を行い(ステップ825)、類似操作がある場合には該当操作の操作ログが操作分析装置のログ保存領域にあるか否かを判定し(ステップ826)、操作ログがある場合には、該当する操作ログを分析用端末装置に送信する(ステップ827)。以降では、ステップ823、824、825、826、827をまとめてステップ822と呼ぶ。次に、特徴量ベクトルを分析用端末装置に送信する(ステップ828)。検索処理を継続する場合には、以上の処理を繰り返す。
分析用端末装置181では、検索操作指定機能で検索対象とする操作を指定して操作分析装置に送信する(ステップ843)。検索対象とする操作の指定方法はさまざまあるが、例えば、特徴量空間の部分空間を指定する方法や、特定の操作の特徴量を計算して指定する方法などが考えられる。続いて操作分析装置から操作ログの受信を待ち(ステップ844)、操作ログを受信したら結果表示/再現機能によって操作ログを再現する(ステップ845)。これによって、検索対象とした操作に類似と判定された操作を実際に再現して確認することができる。
ステップ844における操作ログの受信待ちは、例えば一定時間内に操作ログを受信しなかった場合に受信待ちを中止するタイムアウトなどの方法が考えられる。以降では、ステップ843、844、845をまとめてステップ842と呼ぶ。続いて、操作分析装置から特徴量ベクトルの受信待ちを行い(ステップ847)、受信したら結果表示/再現機能によって特徴量空間を表示する(ステップ848)。例えば図7に示したように特徴量空間の表示により、操作ログが受信されなかった場合、つまり類似操作が発見されなかった場合にも、特徴量空間で近傍の操作を見つけることができる。以上の処理によって検索対象の操作が見つかった場合には処理を終了し、見つからなかった場合には特徴量空間の情報などから、検索対象の再指定を行うために以上の処理を繰り返す(ステップ849)。
以上の処理フローにより、ユーザ操作端末から大量の操作ログを収集せずに、検索対象の操作を効率的に抽出することができる。
図9は、ユーザ操作端末装置101や操作分析装置141で行われる特徴量の条件判定の方法の例である。図9の例は、特徴量1として操作による選択や入力の結果の状態、特徴量2としてマウスの移動距離、特徴量3としてマウスのX方向(左右方向)の移動量を選択した場合に、X、A、B、Cの操作パターン(921,922,923,924)を特徴量空間上にマップした画像であり、ユーザ操作端末装置101や操作分析装置141の入出力部102、147が備え、又は接続するモニタに表示される。ここで、Xを検索対象として指定した操作とし、A、B、Cがログ保存領域に保存されているユーザ操作とする。この場合、特徴量空間でXに類似の操作を選択するとしたらAが選択され、乖離している操作としてはCが選択される。これは、例えば特徴量空間上でXの周りに球面を描き、最初に球面911に接した点を類似の操作とし、最後に球面に接した点を乖離した操作とする方法で判定が実現できる。
さらに、検索対象として、X2、X3を追加して、特徴量空間において、X、X2、X3の3つに類似の操作を検索した場合、特徴量1については類似と判定される範囲が広がり、一方特徴量2については、一定の値が類似判定の基準となる。これを模式的に特徴量空間上に表現すると、楕円912のような範囲が類似判定に利用される。この場合、類似操作としてはBが選択される。このように、特徴量空間上に操作の特徴量をマップすることにより、検索対象とする操作との類似・乖離した操作の抽出が効率化できる。
図10Aは、図9で説明した類似・乖離した操作の判定方法を条件判定ルールとして表現した場合の例である。例えば、条件判定ルールの例(類似1)1001では、図9で説明したXと類似した操作としてAが選択されるルールである。つまり、特徴量空間でのユークリッド距離が小さい場合に、検索対象と類似度が高いと判定する。
また、条件判定ルールの例(類似2)1002では、図9で説明したX、X2、X3を検索対象として指定した場合に、類似した操作としてBが選択されるルールである。つまり、特徴量空間でのマハラノビス距離が小さい場合に、検索対象群との類似度が高いと判定する。
条件判定ルールの例(乖離)1003では、操作Cが乖離した操作として選択されるルールである。つまり、特徴量空間でのユークリッド距離が大きい場合に、検索対象との乖離度が高いと判定する。
図10Bは、類似・乖離した操作を数値計算で決定できる例である。表1010は、数値計算によって判定できるルールを例として示している。ここでは、数値計算によって判定できるルールを例として示したが、特徴量や判定方法によっては、数値計算ではなく論理計算などプログラムとしてルールが表現される場合も含まれる。
別の実施例を、図11、図12を用いて説明する。ここでは実施例1との差分についてのみ示し、実施例1で説明した部分については省略する。
ユーザ操作の中から所望の操作を検索する最も単純な方法はすべての操作の操作ログを収集して、すべての操作を再現して選択する方法であるが、ユーザ操作が多数になると現実的ではなくなる。そこで、実施例1で示したように、操作の特徴量によって選択的に操作ログを収集し、特徴量空間で検索対象の操作と類似・乖離した操作を抽出して操作の再現を限定的に行うことで、ユーザ操作が多数になった場合にも、効率的にユーザ操作の検索を実現した。
しかし、検索対象の操作を的確に指定することができないケースもある。例えば、多数のユーザが行っている代表的な操作を検索したい場合、実施例1の方法では、代表的な操作を想定して、試行錯誤を繰り返す必要がある。
そこで、このような場合には、特徴量空間上でユーザ操作の分布を確認し、多数のユーザ操作が集まっている操作のクラスタを抽出して、そのクラスタに含まれる操作を再現して確認することで、効率的にユーザ操作の検索が実現できる。
これを実現するには、操作ログが操作分析装置に保存されている操作が特徴量空間において均一に分布するように、操作ログをうまく選択して収集しておく必要がある。例えば、図11において、特徴量空間で黒丸●で表示されている点は、操作ログが操作分析装置に送信されている操作の特徴量である。この特徴量の分布状態において、黒四角■のP1の特徴量1102をもつ操作ログがユーザ端末装置で生成された場合に、当該操作ログについて送信済みの操作との距離を計算すると、操作ログ未送信領域1103に含まれることが分かり、この操作ログについては、操作分析装置に送信要と判定すべきである。ここで、操作ログ未送信領域1103とは、特徴量空間上で送信済みの操作からの距離が一定値より遠い領域を示す。距離の計算方法は、ユークリッド距離、マハラノビス距離など複数の計算方法のいずれを用いてもよい。この領域は、操作ログが生成されたときに、その操作ログと送信済みの操作からの距離を計算して一定値より遠い領域にあることが分かった場合に、操作ログ未送信領域1103にいるということを判定するものである。
逆に黒四角■のP2の特徴量1104の場合、特徴量空間で近傍に操作ログを送信済みの点があるため、操作ログの送信は不要と判定すべきである。この際に、操作ログ送信済みの領域を予め生成・管理してそれとの対比で要否判断をしてもよいし、操作ログ生成の都度、送信済みの点が近傍にあるかないかを検索して要否判断をしてもよい。
以上の処理フローを図12に示す。
ユーザ端末装置においてステップ802で操作ログが生成され、特徴量計算をした後(ステップ1208)、該当する操作ログの操作分析装置への送信要否を判定する。この判定において、該当するユーザ端末装置で行われた操作だけでなく、他のユーザ端末装置で行われた操作とその操作ログの操作分析装置での保存状況を考慮すべきか否かを判定し(ステップ1209)、必要な場合には、操作分析装置が操作ログを保存している操作の特徴量(送信済み特徴量)を操作分析装置に要求して受信する(ステップ1210)。ステップ1209で不要と判定した場合には、履歴管理機能により、操作ログを操作分析装置に送信済みの操作を特定して、その操作の特徴量(送信済み特徴量)をログ保存領域から読み出す(ステップ1211)。以上の処理の後に、ステップ1208で新たに計算した特徴量と送信済み特徴量を比較して、両者に乖離がある場合には、操作ログを送信要と判定して履歴管理機能がログ保存領域に保存する(ステップ1212)。その後、ステップ810にて操作分析装置に操作ログが送信される。
以上の処理により、検索対象の操作を的確に指定することができないケースにおいても、特徴量空間上で操作ログが送信済みで操作の再現が可能な操作を均一に分布させることができ、選択的な操作ログの送信により操作ログの収集コストを低減しつつ、効率的なユーザ操作の検索が実現できる。
別の実施例を、図13を用いて説明する。ここでは実施例1、実施例2との差分についてのみ示し、実施例1、実施例2で説明した部分については省略する。
ユーザ操作の収集コストを低減するために、ユーザ操作の収集を選択的に行う場合、検索対象とする操作に類似・乖離した操作を特徴量空間上で抽出しても、その操作の操作ログが操作分析装置に保存されておらず、操作の再現ができないために検索結果が適切かどうかの確認がとれない可能性がある。
そこで、操作分析装置で検索対象の操作と類似している操作として抽出された操作の操作ログがない場合に、該当する操作ログをユーザ端末装置に要求して受信することで操作の再現を実現する。
以上の処理フローを図13に示す。
操作分析装置は、ステップ825で類似操作ありと判定した場合に、該当操作ログの有無を判定する(ステップ1326)。該当操作のログがないと判定された場合には、該当操作ログをユーザ端末装置に要求し受信する(ステップ1331)。ユーザ端末装置では、操作分析装置からの要求に基づきログ保存領域から該当操作ログを操作分析装置に送信する(ステップ1317)。
操作分析装置とユーザ端末装置間での該当操作の指定方法はさまざま考えられるが、例えば特徴量で指定する方法がある。
図13の処理フローでは、ユーザ端末装置では、操作分析装置からの要求以外では、操作ログを操作分析装置に全く送信しない例を示している。このような処理フローによって、ユーザ端末装置から操作分析装置への操作ログの送信量を最小化することができ、操作ログの収集コストが低減できる。
別の実施例を、図14、図15を用いて説明する。ここでは実施例1、実施例2、実施例3との差分についてのみ示し、実施例1、実施例2、実施例3で説明した部分については省略する。
特徴量によって検索対象とする操作を指定する方法では、指定が難しい可能性がある。そこで、検索対象とする操作を実際に行い、特徴量を明示的に指定せずにユーザ操作の検索を行うことで検索対象の操作の指定を容易化する。
図14は、検索対象の操作を、実際に操作を行うことで指定する場合のシステム構成図の例を示した図である。
図14で、分析用端末装置1481には、分析インタフェースプログラム1491に加えて、ユーザ端末装置101のメモリ108上に格納されているものと同じ、アプリケーション実行基盤プログラム1411、アプリケーションプログラム1412、操作ログ取得・送信プログラム1413がメモリ1488上に格納されている。これにより、分析用端末装置1481でも、ユーザ端末装置101と同様にアプリケーションを実行し、その上で操作をして操作ログを生成し、その操作ログの特徴量を計算することが可能になる。なお、操作ログや特徴量などを保存するためにローカルディスク1485とログ保存領域1486が分析用端末装置1481に含まれる。これらの利用方法は、ユーザ端末装置101と同じである。図14では、アプリケーションプログラム1412などが分析用端末装置1481に配備されている状態を例として示したが、ネットワーク161を介してユーザ端末装置101上のアプリケーションを分析用端末装置1481から利用して操作ログの生成や特徴量の計算をする方法や、ユーザ端末装置101や分析用端末装置1481とは別の装置上にアプリケーションプログラム1412などが配備され、それを、ネットワーク161を介して利用し、操作ログの生成や特徴量の計算を行う方法も含まれる。
以上の処理フローを図15に示す。図15においては、プログラムがプロセッサ上で実行されている状態をモジュールと呼ぶ。つまり、アプリケーション実行基盤プログラム111がプロセッサ上で実行されている状態がアプリケーション実行基盤モジュール211であり、アプリケーションプログラム112がプロセッサ上で実行されている状態がアプリケーションモジュール212であり、操作ログ取得・送信プログラム113がプロセッサ上で実行されている状態が操作ログ取得・送信モジュール213であり、分析プログラム151がプロセッサ上で実行されている状態が分析モジュール251であり、分析インタフェースプログラム1491がプロセッサ上で実行されている状態が分析インタフェースモジュール291である。さらに、アプリケーション実行基盤プログラム1411、アプリケーションプログラム1412、操作ログ取得・送信プログラム1413がプロセッサ上で実行されることにより、分析用端末装置1481においてもアプリケーション実行基盤モジュール211、アプリケーションモジュール212、操作ログ取得・送信モジュール213と同様のモジュールが機能する。
分析用端末装置では、アプリケーションモジュール上で検索対象とする操作のイベントが発生し(ステップ1552)、操作ログ取得・送信モジュールの操作ログ記録機能がアプリケーションモジュールからイベント情報を取得し(ステップ1553)、操作ログ記録機能が操作ログ生成ルールに基づき操作ログを生成しログ保存領域に保存する(ステップ1554)。以下では、ステップ1552、1553、1554をまとめてステップ1551と呼ぶ。このようにして指定した検索対象の操作を検索操作指定機能で分析用端末装置から操作分析装置に対して送信する(ステップ1543)。図15では、操作の指定は1回のみしか行っていないが、ステップ1551を繰り返し行って、複数の操作を検索対象の操作として指定することも含まれる。
以上の処理により、特徴量によって検索対象とする操作の指定が難しい場合にも、検索対象とする操作を実際に行い、特徴量を明示的に指定せずにユーザ操作の検索を行うことで検索対象の操作の指定を容易化することができる。
別の実施例を、図16、図17を用いて説明する。ここでは実施例1、実施例2、実施例3、実施例4との差分についてのみ示し、実施例1、実施例2、実施例3、実施例4で説明した部分については省略する。
特徴量空間上で検索対象とする操作の指定を行ったり、ユーザ操作の状況を把握したりする場合に、特徴量によっては利用価値の低いもの、高いものがある。どの特徴量をどのように利用するかを適切にしていできる手段を用意することによって、検索対象の操作の指定を効率化することができる。
図16は、特徴量の利用価値を判定する方法を模式的に示した図である。結果表示画面1601において、グラフ部1603には、特徴量1のみを選択して、その度数分布が表示されている。度数分布は、ログ保存領域に保存されている複数の特徴量から特徴量1の値のみを抽出して、特徴量1が同じ値を持っているものの数をカウントした分布である。ここでは、特徴量1の度数分布は2つの山を持ち、例えば、実施例4で示した方法によって検索対象として指定した操作の特徴量が星★1604で示される値であった場合、検索対象として指定すべき操作が2つの山のどちらに属するかを指定すれば、操作の検索をより的確、効率的に行うことができる。この例では、特徴量調整1615によって、検索対象とする操作の特徴量1の条件を、星★1604の1点から、左側の山の範囲、つまり矢印1605で示される値、もしくは矢印1606で示される範囲と指定し直している。
例えば、特徴量2の度数分布1621の場合には、ほぼ均一な分布をしており、対象となる操作を絞り込む特徴量としては利用価値が低い可能性がある。このような場合には、特徴量調整1615によりこの特徴量の計算を止める、条件判定で利用しないなどの方法をとることが考えられる。
一方、特徴量3の度数分布1622の場合には、特徴量3はほぼ2通りの値しかとらず、両者の分離度が高い。よって、検索対象として指定する操作の特徴量3が2通りのどちらであるかを指定できれば、検索対象の操作の指定を効率化することができる。このような特徴量は利用価値が高い可能性がある。
このような特徴量の調整を行う処理フローを図17に示す。
分析用端末装置では、ステップ846にて特徴量空間上での特徴量の分布を表示し、評価入力機能で、特徴量の利用の有無や判定条件を取得してこれを操作分析装置に送信する(ステップ1751)。評価入力機能は、例えば、図16の特徴量調整1615で入力する特徴量の利用価値の有無などが挙げられる。操作分析装置では、分析用端末装置から送信された特徴量の利用有無・判定条件に応じて、操作分析装置の特徴量分析機能で実行する特徴量比較方法を変更したり(ステップ1732)、特徴量指定機能が特徴量計算ルール・条件判定ルールを変更してユーザ端末装置に送信したりする(ステップ1733)。ユーザ端末装置では、特徴量の計算や条件判定に先立って、操作分析装置から受信した特徴量計算ルール・条件判定ルールに従い、特徴量の計算方法や条件判定方法を変更する。
以上の処理により、特徴量の利用方法を適切に調製することができ、検索対象の操作の指定を効率化することができる。
別の実施例を、図18を用いて説明する。ここでは実施例1、実施例2、実施例3、実施例4、実施例5との差分についてのみ示し、実施例1、実施例2、実施例3、実施例4、実施例5で説明した部分については省略する。
検索対象とする操作の指定が困難な場合がある。例えばアプリケーションそのものの使い方が分からないものの、操作に迷っているユーザを抽出したい場合が挙げられる。このような場合、操作の迷いを的確に特徴量空間上で指定できれば該当する操作を検索できるが、的確に該当する特徴量空間を指定することは困難である。そこで、初期値としては仮設により検索対象とする操作の特徴量空間を指定し、その近傍の操作を再現しつつ本来検索対象として指定したい操作を選択していくことで、問題を解決する。
以上の処理フローを図18に示す。
分析用端末装置では、ステップ846で操作分析装置から特徴量の分布を受信し、結果表示/再現機能によって特徴量空間上から操作を選択して操作ログを再現する(ステップ1851)。評価入力機能で再現した操作ログを検索対象に該当もしくは非該当として記録し(ステップ1852)、これを必要に応じて繰り返す(ステップ1853)。このようにして検索対象として指定した操作を、検索操作指定機能で分析用端末装置から操作分析装置に対して送信する(ステップ1854)。
以上の処理により、検索対象とする操作の指定が難しい場合にも、検索対象とする操作をユーザ操作から選択して絞り込むことで、検索対象の操作の指定を容易化することができる。
別の実施例を、図19〜図22を用いて説明する。ここでは実施例1、実施例2、実施例3、実施例4、実施例5、実施例6との差分についてのみ示し、実施例1、実施例2、実施例3、実施例4、実施例5、実施例6で説明した部分については省略する。
検索対象の操作が、ウェブブラウザ上での操作の場合には、ウェブページにユーザ端末装置上での操作ログ取得や送信を実現するプログラムを挿入することで、ユーザ端末装置に予め操作ログの取得や送信を行うプログラムを配備しなくてもユーザ操作の検索が実現できる。これにより、ユーザ端末装置にはユーザ操作の検索を実現するためのプログラムをインストールする必要がなくなる。
図19は、ウェブブラウザ上での操作に対してユーザ操作の検索を実現するシステムのハードウェア構成と、ソフトウェア構成の例を示すシステム構成図である。ハードウェアは、ユーザ端末装置1901、操作分析装置1941、分析用端末装置1981に加えて、ウェブサーバ装置1921がネットワーク1961で接続される構成である。なお、各装置のハードウェアは同一のハードウェアで実現されても、複数のハードウェアに分散されて構成されてもよい。
ウェブサーバ装置1921は、プロセッサ1923、メモリ1928、入出力部1927、ネットワークインタフェース1922、ローカルディスク1925をもつ。ただし、一部の装置ではこれらの構成要素の一部が欠けてもよい。
ユーザ端末装置1901のメモリ1908には、ウェブブラウザプログラム1911、スクリプト実行プログラム1912が格納されている。これらのプログラムは、プロセッサ103に読み込まれて実行される。
ウェブブラウザプログラム1911は、ウェブページのリクエストを送信したり、ウェブページを受信して入出力部102を介してウェブページを表示したりする機能を持つ。
スクリプト実行プログラム1912は、ウェブブラウザプログラム1911と連携して動作し、ウェブページに含まれるスクリプトコードを実行して、ウェブページの表示や動作を制御する機能を持つ。
操作分析装置1941のメモリ1948には、分析プログラム1951と挿入プログラム1956が格納されている。これらのプログラムは、プロセッサ143に読み込まれて実行される。
分析プログラム1951は図1の分析プログラム151と同等の機能を持つ。
挿入プログラム1956は、ウェブサーバ装置1921で生成されたウェブページに対して、操作記録プログラムと特徴量計算プログラムを挿入する機能を持つ。操作記録プログラム挿入コード1957は、ウェブブラウザ上での操作に伴い発生するイベントを記録したり、ウェブブラウザの実行環境に関する情報などを操作ログとして記録したりする機能をもったスクリプトコードをウェブページに挿入する機能を持つ。特徴量計算プログラム挿入コード1958は、操作ログから特徴量を計算したり、特徴量から操作ログの送信要否を条件判定したりする機能などをもったスクリプトコードをウェブページに挿入する機能を持つ。
分析用端末装置1981のメモリ1988には、分析インタフェースプログラム1991が格納されている。分析インタフェースプログラム1991は、プロセッサ183に読み込まれて実行される。
分析インタフェースプログラム1991は、図1の分析インタフェースプログラム191と同等の機能を持つ。
ウェブサーバ装置1921のメモリ1928には、ウェブサーバプログラム1931が格納されている。ウェブサーバプログラム1931は、プロセッサ1923に読み込まれて実行される。
ウェブサーバプログラム1931は、ウェブアプリコード1932に基づいて、ウェブページを生成し、ネットワーク161を介してウェブページを送信する。
本実施例における、ユーザ操作の検索処理フローを図20により説明する。図20以降の図においては、プログラムがプロセッサ上で実行されている状態をモジュールと呼ぶ。つまり、ウェブブラウザプログラム1911がプロセッサ上で実行されている状態がウェブブラウザモジュール2011であり、スクリプト実行プログラム1912がプロセッサ上で実行されている状態がスクリプト実行モジュール2012であり、分析プログラム1951がプロセッサ上で実行されている状態が分析モジュール2051であり、挿入プログラム1956がプロセッサ上で実行されている状態が挿入モジュール2056であり、分析インタフェースプログラム1991がプロセッサ上で実行されている状態が分析インタフェースモジュール2091であり、ウェブサーバプログラム1931がプロセッサ上で実行されている状態がウェブサーバモジュール2031である。
ユーザ端末装置1901のウェブブラウザモジュール2011からウェブページのリクエストがネットワーク161を経由して送信されると、ウェブサーバ装置1921がリクエストを受信して、ウェブサーバモジュール2031がウェブアプリモジュール2032に基づいてウェブページを生成し、レスポンスとしてネットワーク161を介して操作分析装置1941に送信される。操作分析装置1941では、挿入モジュール2056で、ウェブページに操作ログ記録プログラムと特徴量計算プログラムが挿入され、ユーザ端末装置1901に対してネットワーク161を介してレスポンスとして送信する。ユーザ端末装置1901では、操作分析装置1941で挿入された操作ログ記録プログラムがスクリプト実行モジュール2012上で操作ログ記録機能2014として実行され、同様に特徴量計算プログラムが特徴量計算機能2015として実行される。操作ログ記録機能2014と特徴量計算機能2015は、図2の同名の機能と同等の機能を提供する。
なお、図20では、ウェブページのリクエストも操作分析装置1941を経由しているが、上記の通り経由しなくても良い。また、挿入モジュール2056がウェブサーバモジュール2031に含まれるなど別の構成でも良い。
図21に本実施例の全体処理フローの例として、指定したウェブブラウザ上の操作を検索して操作を再現し、さらに特徴量空間で他の操作の状況を表示して、必要に応じて検索対象の操作を追加する処理のフローを示す。
ユーザ端末装置上のウェブブラウザモジュールがウェブページのリクエストをウェブサーバ装置に送信する(ステップ2103)。ウェブサーバ装置は、ウェブサーバモジュールがユーザ端末装置からウェブページのリクエストを受けると、ウェブアプリモジュールでウェブページのレスポンスを生成して操作分析装置に送信する(ステップ2162)。操作分析装置では、ウェブサーバ装置から受信したウェブページのレスポンスに対して、挿入モジュールが操作ログ記録プログラムと特徴量計算プログラムを挿入してユーザ端末装置に送信する(ステップ2122)。ユーザ端末装置では、ウェブブラウザモジュールが操作分析装置からレスポンスを受信し(ステップ2104)、スクリプト実行モジュールでユーザ操作などによるイベントが発生する(ステップ2105)。スクリプト実行モジュール上で動作している操作ログ記録機能がスクリプト実行モジュールからイベント情報を取得し(ステップ2106)、操作ログ生成ルールに基づき操作ログを生成しログ保存領域に保存する(ステップ2107)。
以上の処理により、ユーザ端末装置のウェブブラウザ上での操作を、ユーザ端末装置に操作ログを記録するプログラムを事前にインストールせずに操作ログを生成することができる。これによって、ユーザ端末装置からより容易に操作ログを収集することができるようになり、操作ログの検索対象にできるユーザ端末装置を増やすことができる。
さらに、図22に示すように、操作分析装置の特徴量指定機能において、特徴量計算プログラム挿入機能に対して、ウェブページに挿入する特徴量計算ルール・条件判定ルールを変更する(ステップ2231)ことにより、ユーザ端末装置のウェブブラウザ上の操作の特徴量の計算や、操作ログの送信条件などを、ユーザ端末装置と独立して変更することができる。
101、1901 ユーザ端末装置102、147、187、1487、1927 入出力部103、143、183、1483、1923 プロセッサ105、145、185、1485、1925 ローカルディスク106、146、1486 ログ保存領域107、142、182、1482、1922 ネットワークインタフェース108、148、188、1488、1928 メモリ111 アプリケーション実行基盤プログラム112 アプリケーションプログラム113 操作ログ取得・送信プログラム141、1941 操作分析装置151、1951 分析プログラム152、1952 ログ送受信コード153、1953 ログ保存コード154、1954 特徴量分析コード155、1955 特徴量指定コード181、1481、1981 分析用端末装置191、1491、1991 分析インタフェースプログラム192、1492、1992 検索操作指定コード193、1493、1993 結果表示/再現コード194、1494、1994 評価入力コード161 ネットワーク211 アプリケーション実行基盤モジュール212 アプリケーションモジュール213 操作ログ取得・送信モジュール214、2014 操作ログ記録機能215、2015 特徴量計算機能216、2016 条件判定機能217、2017 履歴管理機能251、2051 分析モジュール252、2052 ログ送受信機能253、2053 ログ保存機能254、2054 特徴量分析機能255、2055 特徴量指定機能291、1491、2091 分析インタフェースモジュール292、1492、2092 検索操作指定機能293、1493、2093 結果表示/再現機能294、1494、2094 評価入力機能301 アプリケーション画面701、1601 結果表示画面750 操作再現画面1911 ウェブブラウザプログラム1912 スクリプト実行プログラム1921 ウェブサーバ装置1931 ウェブサーバプログラム1932 ウェブアプリコード1956 挿入プログラム1957 操作記録プログラム挿入コード1958 特徴量計算プログラム挿入コード2011 ウェブブラウザモジュール2012 スクリプト実行モジュール2031 ウェブサーバモジュール2032 ウェブアプリモジュール2056 挿入モジュール2057 操作ログ記録プログラム挿入機能2058 特徴量計算プログラム挿入機能
Claims (15)
- 互いに接続可能な、ユーザ端末と、情報分析装置と、分析指示端末と、を有し、
前記ユーザ端末は、
前記ユーザ端末でユーザが行った操作に関するログである操作ログを生成し、
前記操作ログの特徴を示す情報である特徴量を生成し、
前記特徴量が所定の条件を満たした場合に、前記操作ログと、前記特徴量と、を前記情報分析装置に送信し、
前記情報分析装置は、
前記ユーザ端末から受信した、前記特徴量と、前記操作ログと、を対応付けて記憶し、
前記分析指示端末から前記操作ログに関する検索要求を受信した場合に、前記特徴量に基づいて前記操作ログを検索する、ことを特徴とする情報処理システム。 - 請求項1に記載の情報処理システムであって、
前記ユーザ端末は、
前記情報分析装置または前記分析指示端末から指定された特徴量である基準特徴量と、前記操作ログに基づいて生成された特徴量と、の間の類似度と乖離度の少なくとも何れか一方に基づいて、前記操作ログと、前記特徴量と、を前記情報分析装置に送信するか否かの判定を行う、ことを特徴とする情報処理システム。 - 請求項2に記載の情報処理システムであって、
前記ユーザ端末は、
前記基準特徴量として、前記情報分析装置から指定される特徴量、又は前記分析指示端末から指定される特徴量、を用いる、ことを特徴とする情報処理システム。 - 請求項1に記載の情報処理システムであって、
前記分析指示端末は、
前記検索要求において検索対象とする操作のログである対象操作ログを前記検索対象の操作の実行結果に基づいて生成し、前記対象操作ログの特徴量である対象特徴量を生成し、
前記ユーザ端末は、
前記対象特徴量に基づいて前記所定の条件を決定する、ことを特徴とする情報処理システム。 - 請求項1に記載の情報処理システムであって、
前記分析指示端末は、
前記検索要求において検索対象とする操作のログである対象操作ログを前記検索対象の操作の実行結果に基づいて生成し、前記対象操作ログの特徴量である対象特徴量を生成し、
前記情報分析装置は、
前記対象特徴量に基づいて前記検索を行う、ことを特徴とする情報処理システム。 - 請求項1に記載の情報処理システムであって、
前記ユーザ端末は、前記情報分析装置に記憶された特徴量の少なくとも一部を取得し、前記取得した特徴量の分布を示す情報を生成する、ことを特徴とする情報処理システム。 - 請求項6に記載の情報処理システムであって、
前記ユーザ端末は、前記特徴量の分布を示す情報に基づいて前記所定の条件を決定する、ことを特徴とする情報処理システム。 - 請求項1に記載の情報処理システムであって、
前記情報分析装置は、前記記憶された特徴量の少なくとも一部の特徴量の分布を示す情報を生成する、ことを特徴とする情報処理システム。 - ユーザが行った操作に関するログである操作ログを生成するログ生成部と、
前記操作ログの特徴を示す情報である特徴量を生成する特徴量生成部と、
前記操作ログの検索処理を行う装置である情報分析装置に対するデータ送信の制御を行う送信制御部と、を備え、
前記送信制御部は、
前記特徴量が所定の条件を満たした場合に、前記操作ログと、前記特徴量と、を前記情報分析装置に送信する、
ことを特徴とする端末装置。 - 請求項9に記載の端末装置であって、
前記送信制御部は、
前記情報分析装置から指定された特徴量である基準特徴量と、前記操作ログに基づいて生成された特徴量と、の間の類似度と乖離度の少なくとも何れか一方に基づいて、前記操作ログと、前記特徴量と、を前記情報分析装置に送信するか否かの判定を行う、ことを特徴とする端末装置。 - 請求項9に記載の端末装置であって、
前記情報分析装置に記憶されている特徴量の少なくとも一部を取得し、前記取得した特徴量の分布を示す情報を生成する分布情報生成部、を更に備えることを特徴とする端末装置。 - 請求項11に記載の端末装置であって、
前記送信制御部は、
前記特徴量の分布を示す情報に基づいて前記所定の条件を決定する、ことを特徴とする端末装置。 - ユーザが行った操作に関するログである操作ログと、前記操作ログの特徴を示す情報である特徴量と、を生成するユーザ端末から、前記特徴量と、前記操作ログと、を受信する受信部と、
前記ユーザ端末から受信した、前記特徴量と、前記操作ログと、を対応付けて記憶する記憶部と、
外部装置から前記操作ログに関する検索要求を受信した場合に、前記特徴量に基づいて前記操作ログを検索する検索部と、を備え、
前記受信部は、
前記特徴量が所定の条件を満たした場合に、前記操作ログと、前記特徴量と、を前記ユーザ端末から受信する、
ことを特徴とする情報分析装置。 - 請求項13に記載の情報分析装置であって、
前記検索要求において検索対象とする操作のログである対象操作ログを前記検索対象の操作の実行結果に基づいて生成し、前記対象操作ログの特徴量である対象特徴量を生成し、前記対象特徴量に基づいて前記所定の条件を前記ユーザ端末に指定する、特徴量指定部を更に備える、ことを特徴とする情報分析装置。 - 請求項13に記載の情報分析装置であって、
前記情報分析装置に記憶されている特徴量の少なくとも一部の特徴量の分布を示す情報を生成する分布情報生成部、を更に備えることを特徴とする情報分析装置。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2012/000100 WO2013105128A1 (ja) | 2012-01-11 | 2012-01-11 | データ処理方法、データ処理システム、及びデータ処理装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP5677592B2 true JP5677592B2 (ja) | 2015-02-25 |
JPWO2013105128A1 JPWO2013105128A1 (ja) | 2015-05-11 |
Family
ID=48781111
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2013553078A Expired - Fee Related JP5677592B2 (ja) | 2012-01-11 | 2012-01-11 | データ処理方法、データ処理システム、及びデータ処理装置 |
Country Status (2)
Country | Link |
---|---|
JP (1) | JP5677592B2 (ja) |
WO (1) | WO2013105128A1 (ja) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9589541B2 (en) | 2012-02-28 | 2017-03-07 | Ebay Inc. | Location-based display of pixel history |
US9740777B2 (en) | 2013-12-20 | 2017-08-22 | Ebay Inc. | Systems and methods for saving and presenting a state of a communication session |
US9549028B2 (en) | 2014-02-18 | 2017-01-17 | Ebay Inc. | Systems and methods for automatically saving a state of a communication session |
JP6033248B2 (ja) * | 2014-02-27 | 2016-11-30 | 三菱電機ビルテクノサービス株式会社 | ツール分析支援装置及びプログラム |
WO2019049243A1 (ja) * | 2017-09-06 | 2019-03-14 | 日本電気株式会社 | 端末装置、端末装置による動作情報の報告制御方法、及び、端末装置による動作情報の報告制御プログラムが格納された記録媒体 |
JP6563578B1 (ja) * | 2018-09-26 | 2019-08-21 | 株式会社ラック | 端末装置、ファイル分析装置、ファイル分析システム、ファイル分析方法およびプログラム |
WO2023276154A1 (ja) * | 2021-07-02 | 2023-01-05 | 日本電気株式会社 | ログ生成装置、異常検出システム、ログ生成方法及び非一時的なコンピュータ可読媒体 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000250833A (ja) * | 1999-02-26 | 2000-09-14 | Hitachi Information Systems Ltd | 複数サーバ運用管理における稼働情報取得方法およびそのプログラムを記録した記録媒体 |
JP2010039878A (ja) * | 2008-08-07 | 2010-02-18 | Hitachi Ltd | ログ管理システムおよびログ表示システム |
JP2010146434A (ja) * | 2008-12-22 | 2010-07-01 | Canon It Solutions Inc | ログ管理システム、ログ管理装置、携帯端末、ログ管理方法およびプログラム |
JP2010211257A (ja) * | 2009-03-06 | 2010-09-24 | Sky Co Ltd | 操作監視システム及び操作監視プログラム |
-
2012
- 2012-01-11 WO PCT/JP2012/000100 patent/WO2013105128A1/ja active Application Filing
- 2012-01-11 JP JP2013553078A patent/JP5677592B2/ja not_active Expired - Fee Related
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000250833A (ja) * | 1999-02-26 | 2000-09-14 | Hitachi Information Systems Ltd | 複数サーバ運用管理における稼働情報取得方法およびそのプログラムを記録した記録媒体 |
JP2010039878A (ja) * | 2008-08-07 | 2010-02-18 | Hitachi Ltd | ログ管理システムおよびログ表示システム |
JP2010146434A (ja) * | 2008-12-22 | 2010-07-01 | Canon It Solutions Inc | ログ管理システム、ログ管理装置、携帯端末、ログ管理方法およびプログラム |
JP2010211257A (ja) * | 2009-03-06 | 2010-09-24 | Sky Co Ltd | 操作監視システム及び操作監視プログラム |
Also Published As
Publication number | Publication date |
---|---|
WO2013105128A1 (ja) | 2013-07-18 |
JPWO2013105128A1 (ja) | 2015-05-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5677592B2 (ja) | データ処理方法、データ処理システム、及びデータ処理装置 | |
US11947556B1 (en) | Computerized monitoring of a metric through execution of a search query, determining a root cause of the behavior, and providing a notification thereof | |
US11620300B2 (en) | Real-time measurement and system monitoring based on generated dependency graph models of system components | |
US11893703B1 (en) | Precise manipulation of virtual object position in an extended reality environment | |
US11822597B2 (en) | Geofence-based object identification in an extended reality environment | |
US11410403B1 (en) | Precise scaling of virtual objects in an extended reality environment | |
JP5468837B2 (ja) | 異常検出方法、装置、及びプログラム | |
US10984013B1 (en) | Tokenized event collector | |
US20220045919A1 (en) | Lower-tier application deployment for higher-tier system | |
US11829381B2 (en) | Data source metric visualizations | |
JP6823265B2 (ja) | 分析装置、分析システム、分析方法および分析プログラム | |
US11276240B1 (en) | Precise plane detection and placement of virtual objects in an augmented reality environment | |
US20100058118A1 (en) | Storage medium recording information reacquisition procedure generation program and information reacquisition procedure generation apparatus | |
JP5434562B2 (ja) | 運用管理プログラム、運用管理装置および運用管理方法 | |
US11676345B1 (en) | Automated adaptive workflows in an extended reality environment | |
JP2007334716A (ja) | 運用管理システム、監視装置、被監視装置、運用管理方法及びプログラム | |
WO2021072742A1 (en) | Assessing an impact of an upgrade to computer software | |
CN108664346A (zh) | 分布式存储系统的节点异常的定位方法、装置和系统 | |
US10848371B2 (en) | User interface for an application performance management system | |
US11048760B1 (en) | Techniques for placing content in and applying layers in an extended reality environment | |
CN113918534A (zh) | 一种策略处理系统及方法 | |
JP3705331B2 (ja) | ハイパーテキスト解析装置及び方法、ハイパーテキスト解析プログラムを記録した記憶媒体 | |
US20150326677A1 (en) | Screen information collecting computer, screen information collecting method, and computer-readable storage medium | |
CN113515715A (zh) | 埋点事件编码的生成方法、处理方法及相关设备 | |
US11482002B1 (en) | Codeless anchor detection for detectable features in an environment |
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: 20141202 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20141226 |
|
LAPS | Cancellation because of no payment of annual fees |