(57)【要約】【課題】画面内の複数の表示領域のうち一の表示領域に従属して表示内容が変化する他の表示領域を特定すること。【解決手段】（１）本手法では、複数の表示領域Ａ〜Ｇの中から任意に指定された点を含む一の表示領域を検出する。（２）本手法では、点が指定された時刻前後の時刻における画面Ｐの画像データＤａと画像データＤｂを比較する。（３）本手法では、画像データＤａと画像データＤｂの差分データＳＤから、複数の表示領域Ａ〜Ｇの中から点が指定された時刻の前後で表示内容が変化した他の表示領域を検出する。（４）本手法では、上記（１）〜（３）を複数回繰り返して、一の表示領域と他の表示領域の複数通りの組合せを検出する。（５）本手法では、各組合せの出現頻度から、画面Ｐ内の複数の表示領域Ａ〜Ｇのうち、一の表示領域に従属して表示内容が変化する他の表示領域を特定する。【選択図】図１
2011159018.tif 000002
【特許請求の範囲】
【請求項１】
複数の要素からなる画面上で指定された任意の点の座標位置および当該任意の点が指定された時刻を取得する取得手段と、
所定の時間間隔で得られた前記画面の一連の画像データのうち、前記取得手段によって取得された時刻以前の時刻における前記画面の画像データと、前記時刻以降の時刻における前記画面の画像データとを比較する比較手段と、
データベースに蓄積される前記画面上の各要素の座標位置に基づいて、前記複数の要素の中から前記任意の点の座標位置を含む一の要素を検出する第１の検出手段と、
前記画面上の各要素の座標位置と、前記比較手段によって比較された比較結果とに基づいて、前記複数の要素の中から前記任意の点が指定された時刻の前後で表示内容が変化した他の要素を検出する第２の検出手段と、
前記第１および第２の検出手段によって前記一の要素と前記他の要素の組合せが複数通り検出された結果、前記各組合せの出現頻度に基づいて、前記他の要素を、前記一の要素に従属して表示内容が変化する要素として特定する特定手段と、
を備えることを特徴とする情報処理装置。
【請求項２】
前記特定手段は、
前記複数通りの組合せのうち、前記第１の検出手段によって検出された検出回数が規定回数以下となる一の要素を含む組合せを除く残余の組合せの出現頻度に基づいて、前記他の要素を、前記一の要素に従属して表示内容が変化する要素として特定することを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記特定手段は、
前記複数通りの組合せのうち、前記画面上でのサイズが規定サイズより小さい一の要素を含む組合せを除く残余の組合せの出現頻度に基づいて、前記他の要素を、前記一の要素に従属して表示内容が変化する要素として特定することを特徴とする請求項１または２に記載の情報処理装置。
【請求項４】
前記第１および第２の検出手段によって検出された第１および第２の検出結果に基づいて、前記一の要素として検出された第１の要素と前記他の要素として検出された第２の要素との組合せの出現頻度を算出する第１の算出手段と、
前記第１および第２の検出結果に基づいて、前記一の要素として検出された前記第１の要素と前記他の要素として検出された第３の要素との組合せの出現頻度を算出する第２の算出手段と、
前記第１および第２の検出結果に基づいて、前記一の要素として検出された前記第２の要素と前記他の要素として検出された前記第３の要素との組合せの出現頻度を算出する第３の算出手段と、をさらに備え、
前記特定手段は、
前記第１、第２および第３の算出手段によって算出された算出結果に基づいて、前記第２の要素を前記第１の要素に従属して表示内容が変化する要素として特定し、前記第３の要素を前記第２の要素に従属して表示内容が変化する要素として特定することを特徴とする請求項１〜３のいずれか一つに記載の情報処理装置。
【請求項５】
コンピュータを、
複数の要素からなる画面上で指定された任意の点の座標位置および当該任意の点が指定された時刻を取得する取得手段、
所定の時間間隔で得られた前記画面の一連の画像データのうち、前記取得手段によって取得された時刻以前の時刻における前記画面の画像データと、前記時刻以降の時刻における前記画面の画像データとを比較する比較手段、
データベースに蓄積される前記画面上の各要素の座標位置に基づいて、前記複数の要素の中から前記任意の点の座標位置を含む一の要素を検出する第１の検出手段、
前記画面上の各要素の座標位置と、前記比較手段によって比較された比較結果とに基づいて、前記複数の要素の中から前記任意の点が指定された時刻の前後で表示内容が変化した他の要素を検出する第２の検出手段、
前記第１および第２の検出手段によって前記一の要素と前記他の要素の組合せが複数通り検出された結果、前記各組合せの出現頻度に基づいて、前記他の要素を、前記一の要素に従属して表示内容が変化する要素として特定する特定手段、
として機能させることを特徴とする情報処理プログラム。
【請求項６】
コンピュータが、
複数の要素からなる画面上で指定された任意の点の座標位置および当該任意の点が指定された時刻を取得する取得工程と、
所定の時間間隔で得られた前記画面の一連の画像データのうち、前記取得工程によって取得された時刻以前の時刻における前記画面の画像データと、前記時刻以降の時刻における前記画面の画像データとを比較する比較工程と、
データベースに蓄積される前記画面上の各要素の座標位置に基づいて、前記複数の要素の中から前記任意の点の座標位置を含む一の要素を検出する第１の検出工程と、
前記画面上の各要素の座標位置と、前記比較工程によって比較された比較結果とに基づいて、前記複数の要素の中から前記任意の点が指定された時刻の前後で表示内容が変化した他の要素を検出する第２の検出工程と、
前記取得工程、前記比較工程、前記第１および第２の検出工程の一連の処理を繰り返すことにより、前記一の要素と前記他の要素の組合せが複数通り検出された結果、前記各組合せの出現頻度に基づいて、前記他の要素を、前記一の要素に従属して表示内容が変化する要素として特定する特定工程と、
を実行させることを特徴とする情報処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数の表示領域を有する画面内の特定の表示領域を識別する情報処理装置、情報処理プログラム、および情報処理方法に関する。
【背景技術】
【０００２】
従来から、業務分析のために、アプリケーションが発行するログを用いてユーザの作業時間を計測することが行われている。この際、対象となるアプリケーションがログを発行しないものであれば、何らかの手法で間接的にログを取得する。
【０００３】
また、アプリケーションの中には、画面内に複数の表示領域（たとえば、ペイン、ツールバー、スクロールバー）を有するものがある。このようなアプリケーションを対象とする場合、どの表示領域をユーザが操作していたのかを判定するために、何らかの手法で表示領域を識別する必要がある。
【０００４】
従来において、操作者が複数の表示画面の遷移状況を把握するための技術がある（たとえば、下記特許文献１参照。）。たとえば、従来の表示装置は、過去に表示された各表示画面と各表示画面の遷移状況とで、各表示画面同士の関連付けをツリー表示する。この際、従来の表示装置は、各表示画面を、表示頻度が高いほど濃い濃度とし、当該表示頻度が低いほど薄い濃度として表示する。
【０００５】
また、コンテンツを閲覧するためのソフトウェアにおけるフレームの表示に関する技術がある（たとえば、下記特許文献２参照。）。たとえば、従来の表示方法は、表示中のフレームとは異なるページ内のフレームについて生じる変化が、ユーザが明示的に異なるフレームを見たいと意図する条件を満たす動作に基づく変化か判定する。ここで、条件を満たす動作に基づく変化の場合、ページが全体表示され、かつ、変化が生じているフレームが通知される画面の表示に移行する。
【０００６】
また、複数の項目のうちの任意の項目を容易に選択するための技術がある（たとえば、下記特許文献３参照。）。たとえば、従来の携帯電話機は、タッチパネル上の代表文字の位置が指定されると、代表文字により代表される文字群に属する文字を入力領域に表示する。このあと、従来の携帯電話機は、ある文字までドラッグ位置が移動してドラッグが解除されたときに、ドラッグが解除された位置の文字を入力文字とする。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２００８−２０４２９６号公報
【特許文献２】国際公開第２００５／１０６６２８号パンフレット
【特許文献３】特開２００７−３１６７６０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかしながら、上述した従来技術によれば、個々の表示領域を識別する情報が得られない状況では、複数の表示領域を有する画面内の特定の表示領域を正確に識別することが難しいという問題がある。たとえば、メールソフトを対象とする場合、画面内の複数の表示領域の中からリスト領域や本文領域を識別することが難しい。これでは、ユーザがメールのリストを参照していたのか、メールの本文を参照していたのかなどの作業内容を判断するためのログを取得することが難しく、ひいては、業務分析の分析精度の低下を招くという問題がある。
【０００９】
なお、画面内の各ペインのクラス名を取得し、予め規定されたクラス名と照合してペインを識別することが考えられる。しかしながら、各ペインのクラス名として、予め規定されたクラス名を使用せず、独自のクラス名を用いるアプリケーションには対応できないという問題が想定される。
【００１０】
また、画面上での各ペインのサイズや配置位置を、予め規定されたペインのサイズや配置パターンと照合することにより、ペインを識別することが考えられる。しかしながら、画面上でのペインの配置位置が予め規定された配置パターンにならない場合や、画面上での各ペインの配置位置が可変の場合には対応できないという問題が想定される。
【００１１】
本発明は、上述した従来技術による問題点を解消するため、画面内の複数の表示領域のうち一の表示領域に従属して表示内容が変化する他の表示領域を特定することができる情報処理装置、情報処理プログラム、および情報処理方法を提供することを目的とする。
【課題を解決するための手段】
【００１２】
上述した課題を解決し、目的を達成するため、開示の情報処理装置、情報処理プログラム、および情報処理方法は、複数の要素からなる画面上で指定された任意の点の座標位置および当該任意の点が指定された時刻を取得し、所定の時間間隔で得られた前記画面の一連の画像データのうち、取得された時刻以前の時刻における前記画面の画像データと、前記時刻以降の時刻における前記画面の画像データとを比較し、データベースに蓄積される前記画面上の各要素の座標位置に基づいて、前記複数の要素の中から前記任意の点の座標位置を含む一の要素を検出し、前記画面上の各要素の座標位置と、比較された比較結果とに基づいて、前記複数の要素の中から前記任意の点が指定された時刻の前後で表示内容が変化した他の要素を検出し、前記一の要素と前記他の要素の組合せが複数通り検出された結果、前記各組合せの出現頻度に基づいて、前記他の要素を、前記一の要素に従属して表示内容が変化する要素として特定することを要件とする。
【発明の効果】
【００１３】
本情報処理装置、情報処理プログラム、および情報処理方法によれば、画面内の複数の表示領域のうち一の表示領域に従属して表示内容が変化する他の表示領域を特定することができるという効果を奏する。
【図面の簡単な説明】
【００１４】
【図１】本実施の形態にかかる領域特定手法の一実施例を示す説明図である。
【図２】情報処理装置のハードウェア構成の一例を示すブロック図である。
【図３】情報処理装置の機能的構成を示すブロック図である。
【図４】イベントＤＢの記憶内容の一例を示す説明図である。
【図５】ウィンドウ構造の具体例を示す説明図である。
【図６】画面ＤＢの記憶内容の一例を示す説明図である。
【図７】ウィンドウ構造ＤＢの記憶内容の一例を示す説明図である。
【図８】要素の検出例の概要を示す説明図である。
【図９】クリック回数ＤＢの記憶内容の一例を示す説明図である。
【図１０】同時画面変化頻度ＤＢの記憶内容の一例を示す説明図である。
【図１１】組合せテーブルの記憶内容の一例を示す説明図である。
【図１２】累計頻度テーブルの記憶内容の一例を示す説明図である。
【図１３】ペイン領域ＤＢの記憶内容の一例を示す説明図である。
【図１４】情報処理装置のペイン領域特定処理手順の一例を示すフローチャートである。
【図１５】ログ取得処理の具体的処理手順の一例を示すフローチャートである。
【図１６】画像取得処理の具体的処理手順の一例を示すフローチャートである。
【図１７】要素検出処理の具体的処理手順の一例を示すフローチャートである。
【図１８】画面変化要素検出処理の具体的処理手順の一例を示すフローチャートである。
【図１９】ペイン領域特定処理の具体的処理手順の一例を示すフローチャート（その１）である。
【図２０】ペイン領域特定処理の具体的処理手順の一例を示すフローチャート（その２）である。
【図２１】ペイン領域リストの具体例を示す説明図である。
【図２２】ペイン領域リスト作成処理の具体的処理手順の一例を示すフローチャートである。
【発明を実施するための形態】
【００１５】
以下に添付図面を参照して、この発明にかかる情報処理装置、情報処理プログラム、および情報処理方法の好適な実施の形態を詳細に説明する。
【００１６】
（本領域特定手法の一実施例）
まず、本実施の形態にかかる領域特定手法の一実施例について説明する。図１は、本実施の形態にかかる領域特定手法の一実施例を示す説明図である。
【００１７】
本領域特定手法では、画面内の複数の表示領域のうち、一の表示領域に従属して表示内容が変化する他の表示領域を特定する。図１において、画面Ｐは、複数の表示領域Ａ〜Ｇを有する。表示領域Ａ〜Ｇは、画面Ｐを区切って分割された表示枠であり、たとえば、ペイン、ツールバー、スクロールバーなどである。
【００１８】
（１）本領域特定手法では、画面Ｐ上の各表示領域Ａ〜Ｇの座標位置に基づいて、複数の表示領域Ａ〜Ｇの中から任意に指定された点ｘの座標位置を含む一の表示領域を検出する。ここでは、点ｘ１が指定された結果、複数の表示領域Ａ〜Ｇの中から表示領域Ｄが検出されている。
【００１９】
（２）本領域特定手法では、点ｘが指定された時刻以前の時刻における画面Ｐの画像データＤａと、点ｘが指定された時刻以降の時刻における画面Ｐの画像データＤｂとを比較する。ここでは、比較結果として、画像データＤａと画像データＤｂとの画面差分を表す差分データＳＤが表示されている。
【００２０】
（３）本領域特定手法では、画面Ｐ上の各表示領域Ａ〜Ｇの座標位置と差分データＳＤとに基づいて、複数の表示領域Ａ〜Ｇの中から点ｘが指定された時刻の前後で表示内容が変化した他の表示領域を検出する。ここでは、複数の表示領域Ａ〜Ｇの中から表示領域Ａ，Ｅ，Ｆ，Ｇが検出されている。
【００２１】
この結果、任意に指定された点ｘを含む一の表示領域と、点ｘが指定された時刻の前後で表示内容が変化した他の表示領域との組合せが検出される。ここでは、表示領域Ｄと表示領域Ａ，Ｅ，Ｆ，Ｇとの組合せが検出されている。
【００２２】
（４）本領域特定手法では、上記（１）〜（３）を複数回繰り返すことにより、一の表示領域と他の表示領域の複数通りの組合せを検出する。
【００２３】
（５）本領域特定手法では、各組合せの出現頻度に基づいて、他の組合せよりも出現頻度が高い組合せに含まれる他の表示領域を、一の表示領域に従属して表示内容が変化する表示領域として特定する。ここでは、表示領域Ｄに従属して表示内容が変化する表示領域として表示領域Ｆが特定されている。
【００２４】
このように、本領域特定手法によれば、画面Ｐ内の複数の表示領域Ａ〜Ｇの中から、一の表示領域に従属して表示内容が変化する他の表示領域を特定することができる。また、このような従属関係にある２つの表示領域としては、たとえば、メールソフトの画面内のリスト領域と本文領域がある。リスト領域はリスト群を表示する表示領域であり、本文領域はリスト領域に表示されたリスト群から選ばれたリストに対応する本文を表示する表示領域である。
【００２５】
すなわち、本文領域は、リスト領域に従属して表示内容が変化する表示領域である。したがって、本領域特定手法によって特定される一の表示領域と他の表示領域をリスト領域と本文領域に置き換えることにより、画面内の複数の表示領域の中からリスト領域および本文領域を特定することができる。
【００２６】
（情報処理装置２００のハードウェア構成）
つぎに、本実施の形態にかかる情報処理装置２００のハードウェア構成について説明する。図２は、情報処理装置のハードウェア構成の一例を示すブロック図である。図２において、情報処理装置２００は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）２０１と、ＲＯＭ（Ｒｅａｄ‐Ｏｎｌｙ  Ｍｅｍｏｒｙ）２０２と、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）２０３と、磁気ディスクドライブ２０４と、磁気ディスク２０５と、光ディスクドライブ２０６と、光ディスク２０７と、ディスプレイ２０８と、Ｉ／Ｆ（Ｉｎｔｅｒｆａｃｅ）２０９と、キーボード２１０と、マウス２１１と、スキャナ２１２と、プリンタ２１３と、を備えている。また、各構成部はバス２２０によってそれぞれ接続されている。
【００２７】
ここで、ＣＰＵ２０１は、情報処理装置２００の全体の制御を司る。ＲＯＭ２０２は、ブートプログラムなどのプログラムを記憶している。ＲＡＭ２０３は、ＣＰＵ２０１のワークエリアとして使用される。磁気ディスクドライブ２０４は、ＣＰＵ２０１の制御にしたがって磁気ディスク２０５に対するデータのリード／ライトを制御する。磁気ディスク２０５は、磁気ディスクドライブ２０４の制御で書き込まれたデータを記憶する。
【００２８】
光ディスクドライブ２０６は、ＣＰＵ２０１の制御にしたがって光ディスク２０７に対するデータのリード／ライトを制御する。光ディスク２０７は、光ディスクドライブ２０６の制御で書き込まれたデータを記憶したり、光ディスク２０７に記憶されたデータをコンピュータに読み取らせたりする。
【００２９】
ディスプレイ２０８は、カーソル、アイコンあるいはツールボックスをはじめ、文書、画像、機能情報などのデータを表示する。このディスプレイ２０８は、たとえば、ＣＲＴ、ＴＦＴ液晶ディスプレイ、プラズマディスプレイなどを採用することができる。
【００３０】
Ｉ／Ｆ２０９は、通信回線を通じてＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、ＷＡＮ（Ｗｉｄｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、インターネットなどのネットワーク２１４に接続され、このネットワーク２１４を介して他の装置に接続される。そして、Ｉ／Ｆ２０９は、ネットワーク２１４と内部のインターフェースを司り、外部装置からのデータの入出力を制御する。Ｉ／Ｆ２０９には、たとえばモデムやＬＡＮアダプタなどを採用することができる。
【００３１】
キーボード２１０は、文字、数字、各種指示などの入力のためのキーを備え、データの入力を行う。また、タッチパネル式の入力パッドやテンキーなどであってもよい。マウス２１１は、カーソルの移動や範囲選択、あるいはウィンドウの移動やサイズの変更などを行う。ポインティングデバイスとして同様に機能を備えるものであれば、トラックボールやジョイスティックなどであってもよい。
【００３２】
スキャナ２１２は、画像を光学的に読み取り、情報処理装置２００内に画像データを取り込む。なお、スキャナ２１２は、ＯＣＲ（Ｏｐｔｉｃａｌ  Ｃｈａｒａｃｔｅｒ  Ｒｅａｄｅｒ）機能を持たせてもよい。また、プリンタ２１３は、画像データや文書データを印刷する。プリンタ２１３には、たとえば、レーザプリンタやインクジェットプリンタを採用することができる。
【００３３】
（情報処理装置２００の機能的構成）
つぎに、情報処理装置２００の機能的構成について説明する。図３は、情報処理装置の機能的構成を示すブロック図である。図３において、情報処理装置２００は、取得部３０１と、第１の選択部３０２と、比較部３０３と、第１の検出部３０４と、第２の検出部３０５と、特定部３０６と、第２の選択部３０７と、頻度算出部３０８と、積算部３０９と、出力部３１０と、を含む構成である。各機能部（取得部３０１〜出力部３１０）は、具体的には、たとえば、図２に示したＲＯＭ２０２、ＲＡＭ２０３、磁気ディスク２０５、光ディスク２０７などの記憶装置に記憶されたプログラムをＣＰＵ２０１に実行させることにより、または、Ｉ／Ｆ２０９により、その機能を実現する。
【００３４】
なお、各機能部（取得部３０１〜出力部３１０）の処理結果は、たとえば、ＲＡＭ２０３、磁気ディスク２０５、光ディスク２０７などの記憶装置に記憶される。また、後述する各種ＤＢ（データベース）等４００，６００，７００，９００，１０００，１１００，１２００，１３００は、たとえば、ＲＡＭ２０３、磁気ディスク２０５、光ディスク２０７などの記憶装置に記憶されている。
【００３５】
まず、取得部３０１は、対象となるアプリケーションの実行中に発生したイベント（事象）のログを取得する機能を有する。ここで、対象となるアプリケーションとは、たとえば、メールソフト、ＲＳＳ（ＲＤＦ  Ｓｉｔｅ  Ｓｕｍｍａｒｙ）リーダ、電子書籍などである。ただし、ここではログを発行する機能を有していないアプリケーションを想定する。
【００３６】
ログとは、たとえば、図２に示したキーボード２１０やマウス２１１を用いたユーザの操作入力（クリック操作）に応じてＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）が発行するイベントログ（クリックイベント）である。このログには、たとえば、対象のアプリケーションに割り当てられた画面Ｐ上で指定（クリック）された点の座標位置と、点が指定された時刻が含まれている。
【００３７】
具体的には、たとえば、取得部３０１が、イベントログを、ＯＳから取得してもよく、対象のアプリケーションを実行中の外部のコンピュータから取得してもよい。なお、取得されたログは、たとえば、図４に示すイベントＤＢ４００に記憶される。ここで、イベントＤＢ４００の記憶内容について説明する。
【００３８】
図４は、イベントＤＢの記憶内容の一例を示す説明図である。図４において、イベントＤＢ４００は、ログＩＤ、クリック時刻およびクリック座標のフィールドを有し、イベントログＬ１〜Ｌｎをレコードとして記憶している。
【００３９】
ログＩＤは、イベントログを識別する識別子である。クリック時刻は、クリックイベントの発生時刻である。クリック座標は、画面Ｐ上でクリックされた点の座標位置である。なお、イベントログＬ１〜Ｌｎは、クリック時刻が古いものから順にイベントＤＢ４００に記憶されている。また、イベントＤＢ４００は、たとえば、ＲＡＭ２０３、磁気ディスク２０５、光ディスク２０７などの記憶装置に記憶されている。
【００４０】
図３の説明に戻り、取得部３０１は、所定の時間間隔Ｔで画面Ｐの画像データおよびウィンドウ構造を取得する機能を有する。ここで、画像データは、対象のアプリケーションの画面Ｐに表示されている画面イメージのバイナリデータである。ウィンドウ構造は、画面Ｐを構成する複数の要素を階層化して表す構造データである。
【００４１】
要素としては、ペイン、ツールバー、スクロールバーなどの実際にビューとして画面Ｐ上に表示されるもののほか、実際にビューとしては画面Ｐ上に表示されないものがある。具体的には、たとえば、ウィンドウ構造は、要素間の親子関係を表すツリー上の木構造で表現される。ただし、各要素の親となる要素は一つであり、同一の親を持つ要素同士は範囲が重複しない。
【００４２】
なお、画像データには、画像のウィンドウサイズが含まれていてもよい。ウィンドウサイズは、監視対象のアプリケーションに割り当てられている画面Ｐのサイズであり、たとえば、画面Ｐの縦方向のピクセル数と横方向のピクセル数によって表現される。ここで、ウィンドウ構造の具体例について説明する。
【００４３】
図５は、ウィンドウ構造の具体例を示す説明図である。図５において、画面Ｐを構成する複数の要素Ｅ１〜Ｅ１４を階層構造化して、画面Ｐのウィンドウ構造を表現する木構造５００が示されている。なお、要素Ｅ２は、実際にビューとして表示される画面Ｐ上の表示領域Ａ（図１参照）に対応している。
【００４４】
また、要素Ｅ７は、画面Ｐ上の表示領域Ｂに対応している。要素Ｅ１０は、画面Ｐ上の表示領域Ｃに対応している。要素Ｅ１１は、画面Ｐ上の表示領域Ｄに対応している。要素Ｅ１２は、画面Ｐ上の表示領域Ｅに対応している。要素Ｅ１４は、画面Ｐ上の表示領域Ｆに対応している。要素Ｅ４は、画面Ｐ上の表示領域Ｇに対応している。
【００４５】
木構造５００において、要素Ｅ１は最上位階層の要素であり、要素Ｅ１４は最下位階層（最深）の要素である。また、各要素Ｅ１〜Ｅ１４に付されている座標位置は、各要素Ｅ１〜Ｅ１４の画面Ｐ上での範囲を表している。たとえば、要素Ｅ１の範囲は、点（０，０）と点（１０００，７００）を対角頂点とする矩形領域である。
【００４６】
図３の説明に戻り、具体的には、たとえば、取得部３０１が、画面Ｐの画像データおよびウィンドウ構造を、所定の時間間隔ＴでＯＳから取得してもよく、対象のアプリケーションを実行中の外部コンピュータから取得してもよい。なお、時間間隔Ｔは、任意に設定可能である（たとえば、１００ミリ秒間隔）。
【００４７】
取得された画像データは、たとえば、図６に示す画面ＤＢ６００に記憶される。また、取得されたウィンドウ構造は、たとえば、図７に示すウィンドウ構造ＤＢ７００に記憶される。ここで、画面ＤＢ６００およびウィンドウ構造ＤＢ７００の記憶内容について説明する。
【００４８】
図６は、画面ＤＢの記憶内容の一例を示す説明図である。図６において、画面ＤＢ６００は、画像ＩＤ、画像取得時刻およびデータのフィールドを有し、画面データＤ１〜Ｄｍをレコードとして記憶している。
【００４９】
画像ＩＤは、画像データを識別する識別子である。画像取得時刻は、画像データの取得時刻である。データは、画面イメージのバイナリデータである。なお、画面データＤ１〜Ｄｍは、画像取得時刻が古いものから順に画面ＤＢ６００に記憶されている。
【００５０】
図７は、ウィンドウ構造ＤＢの記憶内容の一例を示す説明図である。図７において、ウィンドウ構造ＤＢ７００は、構造取得時刻、ウィンドウハンドル、要素範囲、親要素および子要素のフィールドを有する。各フィールドに情報を設定することで、構造データ（たとえば、構造データ７００−１，７００−２）がレコードとして記憶されている。
【００５１】
構造取得時刻は、画面Ｐのウィンドウ構造の取得時刻である。ウィンドウハンドルは、画面Ｐを構成する要素を識別する識別子である。要素範囲は、画面Ｐ上での各要素の範囲である。なお、各要素の範囲は、ユーザによって、画面Ｐ上での要素の位置やサイズが変更されると、それに追従して変更される。
【００５２】
親要素は、各要素の親となる要素のウィンドウハンドルである。子要素は、各要素の子となる要素のウィンドウハンドルである。なお、子要素のフィールドは、可変長であり、子要素（１，２，…）数に応じてサブフィールドが変化する。また、構造データは、構造取得時刻が古いものから順にウィンドウ構造ＤＢ７００に記憶されている。
【００５３】
上述したログ、画像データおよびウィンドウ構造を取得する取得処理は、たとえば、対象のアプリケーションのプロセスが起動してから終了するまでの間継続して実行される。この結果、各種情報が、各種ＤＢ４００，６００，７００にそれぞれ新たなレコードとして蓄積されていく。
【００５４】
図３の説明に戻り、第１の選択部３０２は、取得されたログ群の中から任意のログを選択する機能を有する。具体的には、たとえば、第１の選択部３０２が、図４に示したイベントＤＢ４００の中から、任意のイベントログＬｉを選択することにしてもよい（ｉ＝１，２，…，ｎ）。
【００５５】
比較部３０３は、時間間隔Ｔで得られた画面Ｐの一連の画像データのうち、選択されたログに含まれる時刻以前の時刻における画面Ｐの画像データと、ログに含まれる時刻以降の時刻における画面Ｐの画像データとを比較する機能を有する。なお、ログに含まれる時刻とは、画面Ｐ上の点が指定（クリック）された時刻である。
【００５６】
具体的には、たとえば、まず、比較部３０３が、図６に示した画面ＤＢ６００の中から、選択されたイベントログＬｉのクリック時刻直前の時刻における画面Ｐの画像データＤａを抽出する。さらに、比較部３０３が、画面ＤＢ６００の中から、クリック時刻直後の時刻における画面Ｐの画像データＤｂを抽出する。
【００５７】
そして、比較部３０３が、画像データＤｂの中から、画像データＤａと画像データＤｂとの画面差分を表す差分データＳＤを抽出する。差分データＳＤは、たとえば、画像データＤａと画像データＤｂとの画面差分を表すピクセルの集合である。ここでは、差分データＳＤをピクセルｐ１〜ｐＫの集合とする。
【００５８】
なお、クリック時刻直前の時刻における画像データとは、画像取得時刻がクリック時刻以前の最新の画像データでもよく、画像取得時刻がクリック時刻以前の一定時間内（たとえば、３００ミリ秒）の任意の画像データでもよい。同様に、クリック時刻直後の時刻における画像データとは、画像取得時刻がクリック時刻以降の最古の画像データでもよく、画像取得時刻がクリック時刻以降の一定時間内の画像データでもよい。
【００５９】
第１の検出部３０４は、画面Ｐ上の各要素の座標位置に基づいて、複数の要素の中から、ログに含まれる点の座標位置を含む一の要素を検出する機能を有する。具体的には、たとえば、第１の検出部３０４が、図７に示したウィンドウ構造ＤＢ７００を参照して、複数の要素Ｅ１〜Ｅ１４の中からイベントログＬｉのクリック座標を含む要素を一の要素として検出する。
【００６０】
ただし、イベントログＬｉのクリック座標を含む要素が複数存在する場合、ウィンドウ構造の最下位階層（最深）の要素を一の要素として検出する。ここで、イベントログＬｉのクリック座標を含む要素の検出例について説明する。
【００６１】
図８は、要素の検出例の概要を示す説明図である。ここでは、木構造５００の中からクリック座標（３００，２００）を含む要素を検出する場合を例に挙げて説明する。図８中、木構造５００を構成する各要素Ｅ１〜Ｅ１４には、最上位階層からの階層の深さｈが表記されている。
【００６２】
具体的には、要素Ｅ１の深さｈは「ｈ＝０」、要素Ｅ２〜Ｅ４の深さｈは「ｈ＝１」、要素Ｅ５，Ｅ６の深さｈは「ｈ＝２」、要素Ｅ７〜Ｅ９の深さｈは「ｈ＝３」、要素Ｅ１０〜Ｅ１３の深さｈは「ｈ＝４」、要素Ｅ１４の深さｈは「ｈ＝５」である。以下、クリック座標を含む要素の検出手順（ｉ）〜（ｖｉ）の一例を説明する。
【００６３】
（ｉ）検出部は、クリック座標（３００，２００）を含む深さ「ｈ＝０」の要素を検出する。なお、クリック座標を含むとは、クリック座標が要素の範囲内に含まれることを意味する。ここでは、要素Ｅ１が検出される。（ｉｉ）検出部は、クリック座標を含み、要素Ｅ１を親とする深さ「ｈ＝１」の要素を検出する。ここでは、要素Ｅ３が検出される。
【００６４】
（ｉｉｉ）検出部は、クリック座標を含み、要素Ｅ３を親とする深さ「ｈ＝２」の要素を検出する。ここでは、要素Ｅ６が検出される。（ｉｖ）検出部は、クリック座標を含み、要素Ｅ６を親とする深さ「ｈ＝３」の要素を検出する。ここでは、要素Ｅ８が検出される。
【００６５】
（ｖ）検出部は、クリック座標を含み、要素Ｅ８を親とする深さ「ｈ＝４」の要素を検出する。ここでは、要素Ｅ１１が検出される。（ｖｉ）検出部は、クリック座標を含み、要素Ｅ１１を親とする深さ「ｈ＝５」の要素を検出する。ここでは、非検出となる。この結果、検出部は、要素Ｅ１１を一の要素として検出する。
【００６６】
このように、検出部が、クリック座標を含む要素を再帰的に検出していくことにより、複数の要素Ｅ１〜Ｅ１４の中から、クリック座標を含む最深の要素Ｅ１１を一の要素として検出することができる。なお、検出された検出結果は、図９に示すクリック回数ＤＢ９００に記憶される。
【００６７】
図９は、クリック回数ＤＢの記憶内容の一例を示す説明図である。図９において、クリック回数ＤＢ９００は、ウィンドウハンドルおよびクリック回数のフィールドを有し、要素Ｅ１〜Ｅ１４ごとの回数情報９００−１〜９００−１４をレコードとして記憶している。
【００６８】
ウィンドウハンドルは、要素を識別する識別子である。クリック回数は、各要素Ｅ１〜Ｅ１４が一の要素として検出された回数、すなわち、クリックされた回数である。ここでは、各要素Ｅ１〜Ｅ１４が一の要素として検出されると、その都度、その要素のクリック回数がインクリメントされる。たとえば、要素Ｅ２が一の要素として検出されると、要素Ｅ２のクリック回数がインクリメントされて「２６」となる。
【００６９】
図３の説明に戻り、第２の検出部３０５は、画面Ｐ上の各要素の座標位置と、比較部３０３の比較結果に基づいて、複数の要素の中から、ログに含まれる時刻の前後で表示内容が変化した他の要素を検出する機能を有する。
【００７０】
具体的には、たとえば、まず、第２の検出部３０５が、画像データＤａと画像データＤｂとの画面差分を表す差分データＳＤの中から任意のピクセルｐｋを選択する（ｋ＝１，２，…，Ｋ）。このあと、第２の検出部３０５が、ウィンドウ構造ＤＢ７００を参照して、複数の要素Ｅ１〜Ｅ１４の中から、ピクセルｐｋを含む最深の要素を他の要素として検出する。
【００７１】
なお、第２の検出部３０５は、たとえば、差分データＳＤの中から選択されていない未選択のピクセルｐｋがなくなるまで上記処理を繰り返すことにしてもよい。これにより、第１の検出部３０４によって検出された一の要素に対して、クリック時刻の前後で表示内容が変化した要素を他の要素として検出することができる。
【００７２】
なお、ピクセルｐｋを含む最深の要素を検出する手法は、図８を用いて説明した手法と同様のため説明を省略する。また、第２の検出部３０５によって検出された検出結果は、たとえば、図１０に示す同時画面変化頻度ＤＢ１０００に記憶される。
【００７３】
図１０は、同時画面変化頻度ＤＢの記憶内容の一例を示す説明図である。図１０において、同時画面変化頻度ＤＢ１０００は、クリック要素および画面変化要素のフィールドを有し、要素Ｅ１〜Ｅ１４ごとの頻度情報１０００−１〜１０００−１４をレコードとして記憶している。
【００７４】
ここで、クリック要素は、クリック座標を含む要素として検出された一の要素である。画面変化要素は、クリック時刻の前後で表示内容が変化した要素として検出された他の要素である。具体的には、同時画面変化頻度ＤＢ１０００は、各要素Ｅ１〜Ｅ１４が一の要素として検出された場合に、他の要素として検出された要素Ｅ１〜Ｅ１４の検出回数を記憶している。
【００７５】
たとえば、要素Ｅ２が一の要素として検出され、要素Ｅ２，Ｅ４が他の要素として検出された場合、頻度情報１０００−２の要素Ｅ２と要素Ｅ４の列の値がインクリメントされて「２６」および「２１」となる。
【００７６】
図３の説明に戻り、特定部３０６は、一の要素と他の要素の組合せが複数通り検出された結果、各組合せの出現頻度に基づいて、他の要素を、一の要素に従属して表示内容が変化する要素として特定する機能を有する。ここで、出現頻度とは、たとえば、各組合せの出現回数でもよく、また、全組合せに対する各組合せの出現率でもよい。
【００７７】
また、一の表示領域に従属して表示内容が変化する要素とは、たとえば、一の要素に対するクリック操作に応じて表示内容が変化する要素である。具体的には、たとえば、メールソフトの画面内のリスト領域は、フォルダ領域に対するクリック操作に応じて表示内容が変化する要素である。また、メールソフトの画面内の本文領域は、リスト領域に対するクリック操作に応じて表示内容が変化する要素である。
【００７８】
なお、フォルダ領域は、格納対象となるデータ（たとえば、メール）の格納先を表すフォルダ群を表示する表示領域である。また、リスト領域は、フォルダ領域に表示されたフォルダ群から選ばれたフォルダに対応するリスト群を表示する表示領域である。本文領域は、リスト領域に表示されたリスト群から選ばれたリストに対応する本文を表示する表示領域である。
【００７９】
具体的には、たとえば、特定部３０６が、検出された複数通りの組合せのうち出現頻度が最大の組合せの他の要素を、一の要素に従属して表示内容が変化する要素として特定することにしてもよい。すなわち、各組合せの出現頻度を絶対評価して、最も出現頻度が高い組合せの他の要素を一の要素に従属して表示内容が変化する要素として特定する。
【００８０】
また、特定部３０６が、検出された複数通りの組合せのうち出現頻度が所定の閾値α以上の組合せの他の要素を、一の要素に従属して表示内容が変化する要素として特定することにしてもよい。すなわち、各組合せの出現頻度を相対評価して、一定以上の出現頻度の組合せの他の要素を一の要素に従属して表示内容が変化する要素として特定する。
【００８１】
なお、上記閾値αは、たとえば、予め任意に設定されてＲＯＭ２０２、ＲＡＭ２０３、磁気ディスク２０５、光ディスク２０７などの記憶装置に記憶されている。
【００８２】
また、特定部３０６は、検出された複数通りの組合せのうち、第１の検出部３０４によって検出された検出回数が規定回数Ｎ以下となる一の要素を含む組合せを除外することにしてもよい。この場合、特定部３０６は、残余の組合せの出現頻度に基づいて、他の要素を、一の要素に従属して表示内容が変化する要素として特定する。
【００８３】
すなわち、一の要素として検出されたある要素の検出回数が少ないと、その要素を含む組合せの数も少なくなり出現頻度が小さくなる。そこで、このような組合せを予め排除しておくことで、以降の処理を簡単化することができる。
【００８４】
なお、上記規定回数Ｎは、たとえば、第１の検出部３０４によって一の要素として要素が検出された総検出回数や、一の要素として最も多く検出された要素の検出回数（最大検出回数）に基づいて算出する。具体的には、たとえば、特定部３０６が、総検出回数や最大検出回数のａ［％］を上記規定回数Ｎとして算出することにしてもよい。
【００８５】
総検出回数や最大検出回数は、たとえば、クリック回数ＤＢ９００を参照して特定することができる。すなわち、総検出回数は、各要素Ｅ１〜Ｅ１４のクリック回数を足し合わせることで求めることができる。最大検出回数は、各要素Ｅ１〜Ｅ１４のクリック回数のうち最大のクリック回数を特定することで求めることができる。ただし、上記規定回数Ｎは、たとえば、予め任意に設定されてＲＯＭ２０２、ＲＡＭ２０３、磁気ディスク２０５、光ディスク２０７などの記憶装置に記憶されていてもよい。
【００８６】
また、特定部３０６は、検出された複数通りの組合せのうち、画面Ｐ上でのサイズが規定サイズより小さい一の要素を含む組合せを除外することにしてもよい。一般に、フォルダ領域やリスト領域や本文領域などのペイン領域は、画面Ｐ上で、ある程度のサイズを有している。そこで、ペイン領域としては明らかにサイズが小さい一の要素を含む組合せを予め排除する。
【００８７】
なお、上記規定サイズは、たとえば、画面Ｐ上での要素の面積、高さ、幅などを用いて指定することができる。また、面積、高さ、幅は、たとえば、ピクセル数によって表現することができる。具体的には、たとえば、規定サイズが『３０ピクセル以上の高さ』の場合、上記特定部３０６は、複数通りの組合せのうち、画面Ｐ上での高さが３０ピクセル未満の一の要素を含む組合せを除外する
【００８８】
出力部３１０は、特定された特定結果を出力する機能を有する。具体的には、たとえば、出力部３１０が、一の要素に従属して表示領域が変化する要素として特定された他の要素を画面Ｐ上の本文領域、一の要素をリスト領域として、各要素のウィンドウハンドルを出力することにしてもよい。また、詳細は後述するが、出力部３１０が、図２１に示すペイン領域リスト２１００を出力することにしてもよい。
【００８９】
出力形式としては、たとえば、ディスプレイ２０８への表示、プリンタ２１３への印刷出力、Ｉ／Ｆ２０９による外部装置への送信がある。また、ＲＡＭ２０３、磁気ディスク２０５、光ディスク２０７などの記憶領域に記憶することとしてもよい。
【００９０】
（特定部３０６の具体的処理内容）
ここで、上記特定部３０６の具体的な処理内容の一例について説明する。ここでは、画面Ｐ内のフォルダ領域、リスト領域および本文領域が、トップダウン型の同時変化の関係性を有していると仮定し、この関係性に適合する最適な組合せを求めて、画面Ｐ内のリスト領域および本文領域を特定する。
【００９１】
まず、第２の選択部３０７は、第１の検出部３０４によって検出された一の要素群の中から、第１、第２および第３の要素を選択する。ここで、第１、第２および第３の要素は、フォルダ領域、リスト領域および本文領域の候補となる要素である。具体的には、たとえば、第２の選択部３０７が、クリック回数ＤＢ９００を参照して、要素Ｅ１〜Ｅ１４のうちクリック回数が「０」の要素を除く残余の一の要素群の中から、第１、第２および第３の要素を選択する。
【００９２】
なお、選択された選択結果は、たとえば、図１１に示す組合せテーブル１１００に記憶される。また、第１、第２および第３の要素を選択する選択処理は、たとえば、一の要素群の中から未選択の組合せがなくなるまで繰り返す。たとえば、一の要素群が７つの要素群の場合、第１、第２および第３の要素の組合せの総数は、３５（＝７Ｃ３）通りである。
【００９３】
頻度算出部３０８は、一の要素として検出された第１の要素と他の要素として検出された第２の要素との組合せＣ１の出現頻度ｆ１を算出する。具体的には、たとえば、頻度算出部３０８が、画面同時変化頻度ＤＢ１０００の中から、第１の要素をクリック要素とし、第２の要素を画面変化要素とした場合の第２の要素の検出回数を出現頻度ｆ１として抽出する。なお、算出された組合せＣ１の出現頻度ｆ１は、図１１に示す組合せテーブル１１００に記憶される。
【００９４】
また、頻度算出部３０８は、一の要素として検出された第１の要素と他の要素として検出された第３の要素との組合せＣ２の出現頻度ｆ２を算出する。具体的には、たとえば、頻度算出部３０８が、画面同時変化頻度ＤＢ１０００の中から、第１の要素をクリック要素とし、第３の要素を画面変化要素とした場合の第３の要素の検出回数を出現頻度ｆ２として抽出する。なお、算出された組合せＣ２の出現頻度ｆ２は、図１１に示す組合せテーブル１１００に記憶される。
【００９５】
また、頻度算出部３０８は、一の要素として検出された第２の要素と他の要素として検出された第３の要素との組合せＣ３の出現頻度ｆ３を算出する。具体的には、たとえば、頻度算出部３０８が、画面同時変化頻度ＤＢ１０００の中から、第２の要素をクリック要素とし、第３の要素を画面変化要素とした場合の第３の要素の検出回数を出現頻度ｆ３として抽出する。なお、算出された組合せＣ３の出現頻度ｆ３は、図１１に示す組合せテーブル１１００に記憶される。
【００９６】
ここで、組合せテーブル１１００の記憶内容について説明する。ここでは、上記第２の選択部３０７によって、一の要素群の中から、要素Ｅ２，Ｅ４，Ｅ７が第１、第２および第３の要素として選択された場合を例に挙げて、組合せテーブル１１００の記憶内容について説明する。
【００９７】
図１１は、組合せテーブルの記憶内容の一例を示す説明図である。図１１において、組合せテーブル１１００は、クリック要素および画面変化要素のフィールドを有し、各フィールドに情報を設定することで組合せＣ１〜Ｃ３ごとの出現頻度ｆ１〜ｆ３をレコードとして記憶する。
【００９８】
図１１において、（１）上記第２の選択部３０７により、第１、第２および第３の要素として要素Ｅ２，Ｅ４，Ｅ７が選択された結果、クリック要素および画面変化要素のフィールドに要素Ｅ２，Ｅ４，Ｅ７のウィンドウハンドルが設定されている。
【００９９】
図１１において、（２）頻度算出部３０８により、組合せＣ１（要素Ｅ２、要素Ｅ４）の出現頻度ｆ１として、画面同時変化頻度ＤＢ１０００の中から要素Ｅ４の検出回数「２０」が設定されている。
【０１００】
図１１において、（３）頻度算出部３０８により、組合せＣ２（要素Ｅ２、要素Ｅ７）の出現頻度ｆ２として、画面同時変化頻度ＤＢ１０００の中から要素Ｅ７の検出回数「１５」が設定されている。
【０１０１】
図１１において、（４）頻度算出部３０８により、組合せＣ３（要素Ｅ４、要素Ｅ７）の出現頻度ｆ３として、画面同時変化頻度ＤＢ１０００の中から要素Ｅ７の検出回数「１３」が設定されている。
【０１０２】
なお、組合せテーブル１１００は、上記第２の選択部３０７によって選択される第１、第２および第３の要素の組合せ分だけ作成されることになる。したがって、たとえば、第１、第２および第３の要素の組合せの総数が３５通りの場合、３５通りの組合せテーブル１１００が作成される。
【０１０３】
図３の説明に戻り、積算部３０９は、算出された組合せＣ１〜Ｃ３の出現頻度ｆ１〜３に基づいて、組合せＣ１〜Ｃ３の出現頻度ｆ１〜３を累計した累計頻度Ｆを算出する。具体的には、たとえば、積算部３０９が、図１１に示した組合せテーブル１１００を参照して、組合せＣ１〜Ｃ３の出現頻度ｆ１〜ｆ３を足し合わせて累計頻度Ｆを算出する。
【０１０４】
すなわち、図１１に示した組合せテーブル１１００の例では、組合せＣ１の出現頻度ｆ１「２０」と、組合せＣ２の出現頻度ｆ２「１５」と、組合せＣ３の出現頻度ｆ３「１３」とを累計した累計頻度Ｆ「４８」を算出する。なお、算出された累計頻度Ｆは、たとえば、図１２に示す累計頻度テーブル１２００に記憶される。
【０１０５】
図１２は、累計頻度テーブルの記憶内容の一例を示す説明図である。図１２において、累計頻度テーブル１２００は、第１、第２および第３の要素の組合せごとに累計頻度Ｆを有している。たとえば、要素Ｅ２，Ｅ４，Ｅ７の組合せの累計頻度Ｆは「４８」である。
【０１０６】
特定部３０６は、積算部３０９によって算出された累計頻度Ｆに基づいて、第２の要素を第１の要素に従属して表示内容が変化する要素として特定する。さらに、特定部３０６は、累計頻度Ｆに基づいて、第３の要素を第２の要素に従属して表示内容が変化する要素として特定する。
【０１０７】
具体的には、たとえば、特定部３０６が、累計頻度Ｆが最大となる第１、第２および第３の要素の組合せの第２の要素を第１の要素に従属して表示内容が変化する要素として特定する。さらに、特定部３０６は、累計頻度Ｆが最大となる第１、第２および第３の要素の組合せの第３の要素を第２の要素に従属して表示内容が変化する要素として特定する。
【０１０８】
ここで、上述した第１、第２および第３の要素は、画面Ｐ内のフォルダ領域、リスト領域および本文領域に置き換えることができる。具体的には、特定部３０６が、累計頻度Ｆが最大の組合せのうち、第１の要素をフォルダ領域、第２の要素をリスト領域、第３の要素を本文領域に特定する。
【０１０９】
すなわち、フォルダ領域に従属してリスト領域および本文領域の表示内容が変化し、リスト領域に従属して本文領域の表示内容が変化するトップダウン型の関係性を仮定して、第１、第２および第３の要素をフォルダ領域、リスト領域および本文領域に置き換える。これにより、一の要素へのクリック時に他の要素が複数検出される場合（たとえば、本文領域となる候補が複数存在）であっても、三要素間の関係から、画面Ｐ内のフォルダ領域、リスト領域および本文領域を特定することができる。
【０１１０】
なお、特定部３０６は、累計頻度Ｆが所定の閾値β以上となる第１、第２および第３の要素の組合せの第２の要素を第１の要素に対する操作入力に応じて表示内容が変化する要素として特定することにしてもよい。同様に、特定部３０６は、累計頻度Ｆが所定の閾値β以上となる第１、第２および第３の要素の組合せの第３の要素を第２の要素に対する操作入力に応じて表示内容が変化する要素として特定することにしてもよい。なお、上記閾値βは、たとえば、予め任意に設定されてＲＯＭ２０２、ＲＡＭ２０３、磁気ディスク２０５、光ディスク２０７などの記憶装置に記憶されている。
【０１１１】
特定された特定結果は、たとえば、図１３に示すペイン領域ＤＢ１３００に記憶される。図１３は、ペイン領域ＤＢの記憶内容の一例を示す説明図である。図１３において、ペイン領域ＤＢ１３００は、画面Ｐ内のリスト領域および本文領域のウィンドウハンドルを記憶している。
【０１１２】
具体的には、リスト領域のウィンドウハンドルは、特定部３０６によってリスト領域として特定された第２の要素のウィンドウハンドルである。また、本文領域のウィンドウハンドルは、特定部３０６によって本文領域として特定された第３の要素のウィンドウハンドルである。ここでは、リスト領域として要素Ｅ７、本文領域として要素Ｅ１４のウィンドウハンドルが記憶されている。
【０１１３】
なお、画面Ｐ内のリスト領域および本文領域を正確に特定できることにより、リスト領域のみの画面変化や本文領域のみの画面変化を正確に捉えることができるようになる。この結果、任意の手法により、ユーザがメールのリストを参照していたのか、メールの本文を参照していたのかなどの作業内容を判断するためのログを取得することができる。
【０１１４】
たとえば、まず、情報処理装置２００が、画面ＤＢ６００内の任意の時刻ｔ（画像取得時刻）における画面データと、時刻ｔ以前の時刻における画像データとを比較する。そして、情報処理装置２００が、比較された比較結果に基づいて、時刻ｔの画面において、リスト領域および本文領域の表示内容がともに変化しているか否かを判定する。
【０１１５】
より具体的には、たとえば、情報処理装置２００が、リスト領域での行のハイライト表示を検知し、さらに、本文領域の表示内容が変化しているか否かを判定する。ここで、リスト領域と本文領域の表示内容がともに変化している場合、情報処理装置２００が、時刻ｔと関連付けて、リスト領域内の一のリストから他のリストに切り替える選択操作に関するログを出力する。
【０１１６】
これにより、アプリケーションから発行されるログを必要とすることなく、効率的かつ高精度にリストの選択操作が行われたことを判断することができる。また、リスト領域内の一のリストから他のリストに切り替わった時刻からメールの閲覧時間などを算出することができ、業務分析に役立てることができる。
【０１１７】
（情報処理装置２００のペイン領域特定処理手順）
つぎに、情報処理装置２００のペイン領域特定処理手順について説明する。ここでは、対象となるアプリケーションがメールソフトの場合を例に挙げて説明する。また、ここでは、一の要素を「クリック要素」、他の要素を「画面変化要素」という。
【０１１８】
図１４は、情報処理装置のペイン領域特定処理手順の一例を示すフローチャートである。図１４のフローチャートにおいて、まず、取得部３０１により、メールソフトのプロセスが起動したか否かを判断する（ステップＳ１４０１）。
【０１１９】
ここで、プロセスが起動するのを待って（ステップＳ１４０１：Ｎｏ）、起動した場合（ステップ１４０１：Ｙｅｓ）、各種ＤＢ４００，６００，７００，９００，１０００，１３００の記憶内容を初期化する（ステップＳ１４０２）。
【０１２０】
つぎに、取得部３０１により、イベントログを取得するログ取得処理の実行を開始し（ステップＳ１４０３）、画面Ｐの画像データを取得する画像取得処理の実行を開始する（ステップＳ１４０４）。このあと、第１の選択部３０２により、ログ取得処理および画像取得処理の実行が終了したか否かを判断する（ステップＳ１４０５）。
【０１２１】
ここで、実行が終了するのを待って（ステップＳ１４０５：Ｎｏ）、終了した場合（ステップＳ１４０５：Ｙｅｓ）、第１および第２の検出部３０４，３０５により、複数の要素Ｅ１〜Ｅ１４の中からクリック要素および画面変化要素を検出する要素検出処理を実行する（ステップＳ１４０６）。そして、特定部３０６により、複数の要素Ｅ１〜Ｅ１４の中からリスト領域および本文領域を特定するペイン領域特定処理を実行する（ステップＳ１４０７）。
【０１２２】
つぎに、特定部３０６により、ペイン領域リストを作成するリスト作成処理を実行して（ステップＳ１４０８）、最後に、出力部３１０により、作成されたペイン領域リストを出力して（ステップＳ１４０９）、本フローチャートによる一連の処理を終了する。これにより、画面Ｐ内の複数の要素Ｅ１〜Ｅ１４の中からリスト領域および本文領域を特定することができる。
【０１２３】
＜ログ取得処理手順＞
つぎに、図１４に示したステップＳ１４０３のログ取得処理の具体的な処理手順について説明する。図１５は、ログ取得処理の具体的処理手順の一例を示すフローチャートである。図１５のフローチャートにおいて、まず、取得部３０１により、メールソフトの実行中に発生したイベント（事象）のイベントログを取得して（ステップＳ１５０１）、取得したイベントログがクリックイベントか否かを判断する（ステップＳ１５０２）。
【０１２４】
ここで、クリックイベントではない場合（ステップＳ１５０２：Ｎｏ）、ステップＳ１５０４に移行する。一方、クリックイベントの場合（ステップＳ１５０２：Ｙｅｓ）、取得部３０１により、取得したイベントログに含まれるクリック時刻およびクリック座標をイベントＤＢ４００に登録する（ステップＳ１５０３）。
【０１２５】
このあと、取得部３０１により、メールソフトのプロセスが終了したか否かを判断して（ステップＳ１５０４）、プロセスが終了していない場合（ステップＳ１５０４：Ｎｏ）、ステップＳ１５０１に戻る。一方、プロセスが終了した場合（ステップＳ１５０４：Ｙｅｓ）、本フローチャートによる一連の処理を終了する。これにより、画面Ｐ内のいずれかの要素Ｅ１〜Ｅ１４に対して行われたクリック操作に関するイベントログを取得することができる。
【０１２６】
＜画像取得処理手順＞
つぎに、図１４に示したステップＳ１４０４の画像取得処理の具体的な処理手順について説明する。図１６は、画像取得処理の具体的処理手順の一例を示すフローチャートである。
【０１２７】
図１６のフローチャートにおいて、まず、取得部３０１により、メールソフトに割り当てられている画面Ｐの画像データを取得する（ステップＳ１６０１）。そして、取得部３０１により、取得した画面Ｐの画像データを画像取得時刻と関連付けて画面ＤＢ６００に登録する（ステップＳ１６０２）。
【０１２８】
また、取得部３０１により、画面Ｐのウィンドウ構造を取得する（ステップＳ１６０３）。そして、取得部３０１により、取得した画面Ｐのウィンドウ構造を構造取得時刻と関連付けてウィンドウ構造ＤＢ７００に登録する（ステップＳ１６０４）。
【０１２９】
このあと、取得部３０１により、一定時間Ｔ待機して（ステップＳ１６０５）、メールソフトのプロセスが終了したか否かを判断する（ステップＳ１６０６）。ここで、プロセスが終了していない場合（ステップＳ１６０６：Ｎｏ）、ステップＳ１６０１に戻る。
【０１３０】
一方、プロセスが終了した場合（ステップＳ１６０６：Ｙｅｓ）、本フローチャートによる一連の処理を終了する。これにより、画面Ｐの画像データを一定時間間隔Ｔで取得することができる。
【０１３１】
＜要素検出処理手順＞
つぎに、図１４に示したステップＳ１４０６の要素検出処理の具体的な処理手順について説明する。図１７は、要素検出処理の具体的処理手順の一例を示すフローチャートである。図１７のフローチャートにおいて、まず、第１の選択部３０２により、「ｉ＝１」として（ステップＳ１７０１）、イベントＤＢ４００からイベントログＬｉを選択する（ステップＳ１７０２）。
【０１３２】
このあと、比較部３０３により、選択されたイベントログＬｉからクリック時刻を特定する（ステップＳ１７０３）。そして、比較部３０３により、画面ＤＢ６００にクリック時刻前後の画像データがあるか否かを判断する（ステップＳ１７０４）。ここで、クリック時刻前後の画像データがない場合（ステップＳ１７０４：Ｎｏ）、ステップＳ１７１４に移行する。
【０１３３】
一方、クリック時刻前後の画像データがある場合（ステップＳ１７０４：Ｙｅｓ）、比較部３０３により、画面ＤＢ６００から、イベントログＬｉのクリック時刻直前の時刻における画面Ｐの画像データＤａを抽出する（ステップＳ１７０５）。また、比較部３０３により、画面ＤＢ６００から、イベントログＬｉのクリック時刻直後の時刻における画面Ｐの画像データＤｂを抽出する（ステップＳ１７０６）。
【０１３４】
このあと、比較部３０３により、抽出された画面Ｐの画像データＤａと画面Ｐの画像データＤｂとの画面差分を表す差分データＳＤを抽出する（ステップＳ１７０７）。つぎに、第１の検出部３０４により、選択されたイベントログＬｉからクリック座標を特定する（ステップＳ１７０８）。
【０１３５】
そして、第１の検出部３０４により、ウィンドウ構造ＤＢ７００を参照して、複数の要素Ｅ１〜Ｅ１４の中からイベントログＬｉのクリック座標を含む最深の要素をクリック要素Ｅｋとして検出する（ステップＳ１７０９）。このあと、第２の検出部３０５により、複数の要素Ｅ１〜Ｅ１４の中から、クリック時刻の前後で表示内容が変化した画面変化要素集合を検出する画面変化要素検出処理を実行する（ステップＳ１７１０）。
【０１３６】
つぎに、第１の検出部３０４により、検出されたクリック要素Ｅｋが画面変化要素集合に含まれるか否かを判断する（ステップＳ１７１１）。ここで、クリック要素Ｅｋが含まれない場合（ステップＳ１７１１：Ｎｏ）、ステップＳ１７１４に移行する。
【０１３７】
一方、クリック要素Ｅｋが含まれる場合（ステップＳ１７１１：Ｙｅｓ）、第１の検出部３０４により、クリック回数ＤＢ９００内のクリック要素Ｅｋのクリック回数をインクリメントする（ステップＳ１７１２）。なお、クリック要素Ｅｋは、ステップＳ１７０９において要素Ｅ１〜Ｅ１４の中からクリック要素として検出された要素である。
【０１３８】
そして、第２の検出部３０５により、画面同時変化頻度ＤＢ１０００内の画面変化要素集合に含まれる画面変化要素Ｅｋ（１）〜Ｅｋ（ｍ）の検出回数をインクリメントする（ステップＳ１７１３）。なお、画面変化要素Ｅｋ（１）〜Ｅｋ（ｍ）は、ステップＳ１７１０において要素Ｅ１〜Ｅ１４の中から画面変化要素として検出された要素である。
【０１３９】
このあと、第１の選択部３０２により、ｉをインクリメントして（ステップＳ１７１４）、「ｉ＞ｎ」か否かを判断する（ステップＳ１７１５）。ここで、「ｉ≦ｎ」の場合（ステップＳ１７１５：Ｎｏ）、ステップＳ１７０２に戻る。一方、「ｉ＞ｎ」の場合（ステップＳ１７１５：Ｙｅｓ）、図１４に示したステップＳ１４０７に移行する。
【０１４０】
これにより、各クリック要素Ｅｋのクリック回数を計数することができるとともに、クリック要素Ｅｋごとに該クリック要素Ｅｋと画面変化要素Ｅｋ（１）〜Ｅｋ（ｍ）との組合せの出現回数を計数することができる。また、ステップＳ１７１１において、クリック要素Ｅｋが画面変化要素集合に含まれるか否かを判断することで、他の要素の表示画面の変化をともなうクリック操作のクリック回数のみ計数することができる。
【０１４１】
＜画面変化要素検出処理手順＞
つぎに、図１７に示したステップＳ１７１０の画面変化要素検出処理の具体的な処理手順について説明する。図１８は、画面変化要素検出処理の具体的処理手順の一例を示すフローチャートである。
【０１４２】
図１８のフローチャートにおいて、まず、第２の検出部３０５により、空集合の画面変化要素集合を設定する（ステップＳ１８０１）。そして、第２の検出部３０５が、「ｋ＝１」として（ステップＳ１８０２）、図１７に示したステップＳ１７０７において抽出された差分データＳＤの中から任意のピクセルｐｋを選択する（ステップＳ１８０３）。
【０１４３】
このあと、第２の検出部３０５が、ウィンドウ構造ＤＢ７００を参照して、複数の要素Ｅ１〜Ｅ１４の中から、ピクセルｐｋを含む最深の要素を画面変化要素として検出する（ステップＳ１８０４）。そして、第２の検出部３０５が、検出された画面変化要素が画面変化要素集合に含まれているか否かを判断する（ステップＳ１８０５）。
【０１４４】
ここで、画面変化要素が含まれている場合（ステップＳ１８０５：Ｙｅｓ）、ステップＳ１８０７に移行する。一方、画面変化要素が含まれていない場合（ステップＳ１８０５：Ｎｏ）、第２の検出部３０５により、画面変化要素を画面変化要素集合に追加する（ステップＳ１８０６）。
【０１４５】
そして、第２の検出部３０５により、ｋをインクリメントして（ステップＳ１８０７）、「ｋ＞Ｋ」か否かを判断する（ステップＳ１８０８）。ここで、「ｋ≦Ｋ」の場合（ステップＳ１８０８：Ｎｏ）、ステップＳ１８０３に戻る。一方、「ｋ＞Ｋ」の場合（ステップＳ１８０８：Ｙｅｓ）、図１７に示したステップＳ１７１１に移行する。
【０１４６】
これにより、クリック要素Ｅｋがクリックされたクリック時刻の前後で表示内容が変化した画面変化要素Ｅｋ（１）〜Ｅｋ（ｍ）を検出することができる。
【０１４７】
＜ペイン領域特定処理手順＞
つぎに、図１４に示したステップＳ１４０７のペイン領域特定処理の具体的な処理手順について説明する。図１９および図２０は、ペイン領域特定処理の具体的処理手順の一例を示すフローチャートである。
【０１４８】
図１９のフローチャートにおいて、まず、特定部３０６により、クリック回数ＤＢ９００を参照して、最大のクリック回数Ｎｍａｘを特定する（ステップＳ１９０１）。そして、特定部３０６により、特定されたクリック回数Ｎｍａｘから規定回数Ｎを算出する（ステップＳ１９０２）。
【０１４９】
このあと、特定部３０６により、クリック回数ＤＢ９００の中から、クリック回数が規定回数Ｎ以上のクリック要素集合を特定する（ステップＳ１９０３）。そして、特定部３０６により、クリック要素集合から規定サイズより小さいクリック要素を除外する（ステップＳ１９０４）。
【０１５０】
つぎに、第２の選択部３０７により、クリック要素集合の中から、第１、第２および第３の要素を選択する（ステップＳ１９０５）。そして、頻度算出部３０８により、画面同時変化頻度ＤＢ１０００の中から組合せＣ１の出現頻度ｆ１を抽出する（ステップＳ１９０６）。なお、抽出結果は、たとえば、組合せテーブル１１００に記憶される。このあと、頻度算出部３０８により、抽出された組合せＣ１の出現頻度ｆ１が「０」か否かを判断する（ステップＳ１９０７）。
【０１５１】
ここで、「ｆ１＝０」の場合（ステップＳ１９０７：Ｙｅｓ）、図２０に示すステップＳ１９１４に移行する。一方、「ｆ１≠０」の場合（ステップＳ１９０７：Ｎｏ）、頻度算出部３０８により、画面同時変化頻度ＤＢ１０００の中から組合せＣ２の出現頻度ｆ２を抽出する（ステップＳ１９０８）。
【０１５２】
このあと、頻度算出部３０８により、抽出された組合せＣ２の出現頻度ｆ２が「０」か否かを判断する（ステップＳ１９０９）。ここで、「ｆ２＝０」の場合（ステップＳ１９０９：Ｙｅｓ）、図２０に示すステップＳ１９１４に移行する。一方、「ｆ２≠０」の場合（ステップＳ１９０９：Ｎｏ）、頻度算出部３０８により、画面同時変化頻度ＤＢ１０００の中から組合せＣ３の出現頻度ｆ３を抽出する（ステップＳ１９１０）。
【０１５３】
このあと、頻度算出部３０８により、抽出された組合せＣ３の出現頻度ｆ３が「０」か否かを判断する（ステップＳ１９１１）。ここで、「ｆ３＝０」の場合（ステップＳ１９１１：Ｙｅｓ）、図２０に示すステップＳ１９１４に移行する。一方、「ｆ３≠０」の場合（ステップＳ１９１１：Ｎｏ）、図２０に示すステップＳ１９１２に移行する。
【０１５４】
つぎに、図２０のフローチャートにおいて、積算部３０９により、組合せＣ１〜Ｃ３の出現頻度ｆ１〜ｆ３を足し合わせて累計頻度Ｆを算出する（ステップＳ１９１２）。そして、積算部３０９により、算出された累計頻度Ｆを第１、第２および第３の要素のウィンドウハンドルとともに累計頻度テーブル１２００に登録する（ステップＳ１９１３）。
【０１５５】
このあと、第２の選択部３０７により、クリック要素集合から選択されていない未選択の第１、第２および第３の要素の組合せがあるか否かを判断する（ステップＳ１９１４）。ここで、未選択の組合せがある場合（ステップＳ１９１４：Ｙｅｓ）、図１９に示したステップＳ１９０５に移行する。
【０１５６】
一方、未選択の組合せがない場合（ステップＳ１９１４：Ｎｏ）、特定部３０６により、累計頻度テーブル１２００を参照して、累積頻度Ｆが最大の第１、第２および第３の要素の組合せを特定する（ステップＳ１９１５）。つぎに、特定部３０６により、特定された組合せの第２の要素をリスト領域として特定し、第３の要素を本文領域として特定する（ステップＳ１９１６）。
【０１５７】
そして、特定部３０６により、リスト領域および本文領域として特定された要素のウィンドウハンドルをペイン領域ＤＢ１３００に登録して（ステップＳ１９１７）、図１４に示したステップＳ１４０８に移行する。これにより、画面Ｐ内の複数の要素Ｅ１〜Ｅ１４の中から、リスト領域および本文領域を表すペイン領域を特定することができる。
【０１５８】
＜ペイン領域リスト作成処理手順＞
つぎに、図１４に示したステップＳ１４０８のペイン領域リスト作成処理の具体的な処理手順について説明する。ここでは、まず、作成対象となるペイン領域リスト２１００の具体例について説明する。
【０１５９】
図２１は、ペイン領域リストの具体例を示す説明図である。図２１において、ペイン領域リスト２１００は、範囲変化時刻、リスト領域範囲および本文領域範囲のフィールドを有する。各フィールドに情報を設定することで、ペイン領域情報（たとえば、ペイン領域情報２１００−１，２１００−２）がレコードとして記憶されている。
【０１６０】
ここで、範囲変化時刻とは、リスト領域および本文領域の範囲が変化した時刻である。リスト領域範囲とは、画面Ｐ上でのリスト領域の範囲である。本文領域範囲とは、画面Ｐ上での本文領域の範囲である。なお、ペイン領域情報は、範囲変化時刻が古いものから順にペイン領域リスト２１００に登録される。
【０１６１】
図２２は、ペイン領域リスト作成処理の具体的処理手順の一例を示すフローチャートである。図２２のフローチャートにおいて、まず、特定部３０６により、ウィンドウ構造ＤＢ７００の中から任意の構造データを抽出する（ステップＳ２２０１）。
【０１６２】
つぎに、特定部３０６により、ペイン領域ＤＢ１３００を参照して、リスト領域のウィンドウハンドルを特定する（ステップＳ２２０２）。そして、特定部３０６により、抽出された構造データを参照して、特定されたウィンドウハンドルの要素の範囲を特定することで、リスト領域の範囲を特定する（ステップＳ２２０３）。
【０１６３】
また、特定部３０６により、ペイン領域ＤＢ１３００を参照して、本文領域のウィンドウハンドルを特定する（ステップＳ２２０４）。そして、特定部３０６により、抽出された構造データを参照して、特定されたウィンドウハンドルの要素の範囲を特定することで、本文領域の範囲を特定する（ステップＳ２２０５）。
【０１６４】
このあと、特定部３０６により、図２１に示したペイン領域リスト２１００を参照して、前回のリスト領域および本文領域の範囲を特定する（ステップＳ２２０６）。ここで、前回のリスト領域および本文領域の範囲が特定されなかった場合（ステップＳ２２０７：Ｎｏ）、ステップＳ２２０９に移行する。
【０１６５】
一方、前回のリスト領域および本文領域の範囲が特定された場合（ステップＳ２２０７：Ｙｅｓ）、特定部３０６により、ステップＳ２２０３およびステップＳ２２０５において特定されたリスト領域および本文領域の範囲が前回と一致するか否かを判断する（ステップＳ２２０８）。ここで、前回と一致する場合（ステップＳ２２０８：Ｙｅｓ）、ステップＳ２２１０に移行する。
【０１６６】
一方、前回と不一致の場合（ステップＳ２２０８：Ｎｏ）、特定部３０６により、ステップＳ２２０３およびステップＳ２２０５において特定されたリスト領域および本文領域の範囲を構造取得時刻と関連付けてペイン領域リスト２１００に登録する（ステップＳ２２０９）。なお、構造取得時刻は、ステップＳ２２０１において抽出された構造データの構造取得時刻である。
【０１６７】
このあと、特定部３０６により、ウィンドウ構造ＤＢ７００の中から抽出されていない未抽出の構造データがあるか否かを判断する（ステップＳ２２１０）。ここで、未抽出の構造データがある場合（ステップＳ２２１０：Ｙｅｓ）。ステップＳ２２０１に戻る。一方、未抽出の構造データがない場合（ステップＳ２２１０：Ｎｏ）、図１４に示した１４０９に移行する。
【０１６８】
これにより、画面Ｐ内の要素Ｅ１〜Ｅ１４の位置やサイズが変更された範囲変化時刻と関連付けて、画面Ｐ内のリスト領域および本文領域を表すペイン領域の範囲をリスト化して出力することができる。
【０１６９】
以上説明したように、本実施の形態によれば、画面Ｐ上で指定された点を含む一の要素と、点が指定された時刻の前後で表示内容が変化した他の要素との組合せを複数通り検出することができる。そして、各組合せの出現頻度から、他の組合せよりも出現頻度が高い組合せに含まれる他の要素を、一の要素に従属して表示内容が変化する要素として特定することができる。
【０１７０】
これにより、要素Ｅ１〜Ｅ１４の中から、一の要素と他の要素のような従属関係にある「フォルダ領域とリスト領域」や「リスト領域と本文領域」を表す要素を特定することができる。また、リスト領域や本文領域などのペイン領域の特定にあたり、要素のクラス名や画面Ｐ上での要素の配置位置を条件としないため、ペイン領域のサイズや配置位置を変更する場合にも対応することができる。
【０１７１】
また、本実施の形態によれば、画面Ｐ内の複数の要素Ｅ１〜Ｅ１４を階層構造化して表すウィンドウ構造に基づいて、最上位階層からの深さが最深の要素を一の要素または他の要素として検出することにより、一の要素または他の要素を一意に特定することができる。
【０１７２】
また、本実施の形態によれば、検出された複数通りの組合せのうち、一の要素の検出回数が規定回数Ｎ以下となる組合せを除外することにより、出現頻度が低くなる組合せを予め排除して、以降の処理を簡単化することができる。
【０１７３】
また、本実施の形態によれば、複数通りの組合せのうち、一の要素のサイズが規定サイズより小さくなる組合せを除外することにより、ペイン領域としては明らかにサイズが小さい一の要素を含む組合せを予め排除することができる。
【０１７４】
また、本実施の形態によれば、複数通りの組合せのうち出現頻度が最大の組合せに含まれる他の要素を、一の要素に従属して表示内容が変化する要素として特定することができる。これにより、各組合せの出現頻度を絶対評価して、最も出現頻度が高い組合せの他の要素を一の要素に従属して表示内容が変化する要素として特定することができる。
【０１７５】
また、本実施の形態によれば、複数通りの組合せのうち出現頻度が所定の閾値α以上の組合せに含まれる他の要素を、一の要素に従属して表示内容が変化する要素として特定することができる。これにより、各組合せの出現頻度を相対評価して、一定以上の出現頻度の組合せの他の要素を一の要素に従属して表示内容が変化する要素として特定することができる。
【０１７６】
また、本実施の形態によれば、第１、第２および第３の要素のうち、第２の要素を第１の要素に従属して表示内容が変化する要素として特定し、第３の要素を第２の要素に従属して表示内容が変化する要素として特定することができる。このように、三要素間の従属関係を考慮することで、フォルダ領域、リスト領域および本文領域のようなトップダウン型の画面変化を起こすペイン領域を特定することができる。
【０１７７】
なお、本実施の形態で説明した情報処理方法は、予め用意されたプログラムをパーソナル・コンピュータやワークステーション等のコンピュータで実行することにより実現することができる。本情報処理プログラムは、ハードディスク、フレキシブルディスク、ＣＤ−ＲＯＭ、ＭＯ、ＤＶＤ等のコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行される。また本情報処理プログラムは、インターネット等のネットワークを介して配布してもよい。
【０１７８】
上述した実施の形態に関し、さらに以下の付記を開示する。
【０１７９】
（付記１）複数の要素からなる画面上で指定された任意の点の座標位置および当該任意の点が指定された時刻を取得する取得手段と、
所定の時間間隔で得られた前記画面の一連の画像データのうち、前記取得手段によって取得された時刻以前の時刻における前記画面の画像データと、前記時刻以降の時刻における前記画面の画像データとを比較する比較手段と、
データベースに蓄積される前記画面上の各要素の座標位置に基づいて、前記複数の要素の中から前記任意の点の座標位置を含む一の要素を検出する第１の検出手段と、
前記画面上の各要素の座標位置と、前記比較手段によって比較された比較結果とに基づいて、前記複数の要素の中から前記任意の点が指定された時刻の前後で表示内容が変化した他の要素を検出する第２の検出手段と、
前記第１および第２の検出手段によって前記一の要素と前記他の要素の組合せが複数通り検出された結果、前記各組合せの出現頻度に基づいて、前記他の要素を、前記一の要素に従属して表示内容が変化する要素として特定する特定手段と、
を備えることを特徴とする情報処理装置。
【０１８０】
（付記２）前記特定手段は、前記複数通りの組合せのうち、前記第１の検出手段によって検出された検出回数が規定回数以下となる一の要素を含む組合せを除く残余の組合せの出現頻度に基づいて、前記他の要素を、前記一の要素に従属して表示内容が変化する要素として特定することを特徴とする付記１に記載の情報処理装置。
【０１８１】
（付記３）前記特定手段は、前記複数通りの組合せのうち、前記画面上でのサイズが規定サイズより小さい一の要素を含む組合せを除く残余の組合せの出現頻度に基づいて、前記他の要素を、前記一の要素に従属して表示内容が変化する要素として特定することを特徴とする付記１または２に記載の情報処理装置。
【０１８２】
（付記４）前記特定手段は、前記検出された複数通りの組合せのうち出現頻度が最大の組合せの前記他の要素を、前記一の要素に従属して表示内容が変化する要素として特定することを特徴とする付記１〜３のいずれか一つに記載の情報処理装置。
【０１８３】
（付記５）前記特定手段は、前記検出された複数通りの組合せのうち出現頻度が所定の閾値以上の組合せの前記他の要素を、前記一の要素に従属して表示内容が変化する要素として特定することを特徴とする付記１〜３のいずれか一つに記載の情報処理装置。
【０１８４】
（付記６）前記第１および第２の検出手段によって検出された第１および第２の検出結果に基づいて、前記一の要素として検出された第１の要素と前記他の要素として検出された第２の要素との組合せの出現頻度を算出する第１の算出手段と、
前記第１および第２の検出結果に基づいて、前記一の要素として検出された前記第１の要素と前記他の要素として検出された第３の要素との組合せの出現頻度を算出する第２の算出手段と、
前記第１および第２の検出結果に基づいて、前記一の要素として検出された前記第２の要素と前記他の要素として検出された前記第３の要素との組合せの出現頻度を算出する第３の算出手段と、をさらに備え、
前記特定手段は、前記第１、第２および第３の算出手段によって算出された算出結果に基づいて、前記第２の要素を前記第１の要素に従属して表示内容が変化する要素として特定し、前記第３の要素を前記第２の要素に従属して表示内容が変化する要素として特定することを特徴とする付記１〜５のいずれか一つに記載の情報処理装置。
【０１８５】
（付記７）コンピュータを、
複数の要素からなる画面上で指定された任意の点の座標位置および当該任意の点が指定された時刻を取得する取得手段、
所定の時間間隔で得られた前記画面の一連の画像データのうち、前記取得手段によって取得された時刻以前の時刻における前記画面の画像データと、前記時刻以降の時刻における前記画面の画像データとを比較する比較手段、
データベースに蓄積される前記画面上の各要素の座標位置に基づいて、前記複数の要素の中から前記任意の点の座標位置を含む一の要素を検出する第１の検出手段、
前記画面上の各要素の座標位置と、前記比較手段によって比較された比較結果とに基づいて、前記複数の要素の中から前記任意の点が指定された時刻の前後で表示内容が変化した他の要素を検出する第２の検出手段、
前記第１および第２の検出手段によって前記一の要素と前記他の要素の組合せが複数通り検出された結果、前記各組合せの出現頻度に基づいて、前記他の要素を、前記一の要素に従属して表示内容が変化する要素として特定する特定手段、
として機能させることを特徴とする情報処理プログラム。
【０１８６】
（付記８）前記特定手段は、前記複数通りの組合せのうち、前記第１の検出手段によって検出された検出回数が規定回数以下となる一の要素を含む組合せを除く残余の組合せの出現頻度に基づいて、前記他の要素を、前記一の要素に従属して表示内容が変化する要素として特定することを特徴とする付記７に記載の情報処理プログラム。
【０１８７】
（付記９）前記特定手段は、前記複数通りの組合せのうち、前記画面上でのサイズが規定サイズより小さい一の要素を含む組合せを除く残余の組合せの出現頻度に基づいて、前記他の要素を、前記一の要素に従属して表示内容が変化する要素として特定することを特徴とする付記７または８に記載の情報処理プログラム。
【０１８８】
（付記１０）前記特定手段は、前記検出された複数通りの組合せのうち出現頻度が最大の組合せの前記他の要素を、前記一の要素に従属して表示内容が変化する要素として特定することを特徴とする付記７〜９のいずれか一つに記載の情報処理プログラム。
【０１８９】
（付記１１）前記特定手段は、前記検出された複数通りの組合せのうち出現頻度が所定の閾値以上の組合せの前記他の要素を、前記一の要素に従属して表示内容が変化する要素として特定することを特徴とする付記７〜９のいずれか一つに記載の情報処理プログラム。
【０１９０】
（付記１２）前記コンピュータを、
前記第１および第２の検出手段によって検出された第１および第２の検出結果に基づいて、前記一の要素として検出された第１の要素と前記他の要素として検出された第２の要素との組合せの出現頻度を算出する第１の算出手段、
前記第１および第２の検出結果に基づいて、前記一の要素として検出された前記第１の要素と前記他の要素として検出された第３の要素との組合せの出現頻度を算出する第２の算出手段、
前記第１および第２の検出結果に基づいて、前記一の要素として検出された前記第２の要素と前記他の要素として検出された前記第３の要素との組合せの出現頻度を算出する第３の算出手段として機能させ、
前記特定手段は、前記第１、第２および第３の算出手段によって算出された算出結果に基づいて、前記第２の要素を前記第１の要素に従属して表示内容が変化する要素として特定し、前記第３の要素を前記第２の要素に従属して表示内容が変化する要素として特定することを特徴とする付記７〜１１のいずれか一つに記載の情報処理プログラム。
【０１９１】
（付記１３）コンピュータが、
複数の要素からなる画面上で指定された任意の点の座標位置および当該任意の点が指定された時刻を取得する取得工程と、
所定の時間間隔で得られた前記画面の一連の画像データのうち、前記取得工程によって取得された時刻以前の時刻における前記画面の画像データと、前記時刻以降の時刻における前記画面の画像データとを比較する比較工程と、
データベースに蓄積される前記画面上の各要素の座標位置に基づいて、前記複数の要素の中から前記任意の点の座標位置を含む一の要素を検出する第１の検出工程と、
前記画面上の各要素の座標位置と、前記比較工程によって比較された比較結果とに基づいて、前記複数の要素の中から前記任意の点が指定された時刻の前後で表示内容が変化した他の要素を検出する第２の検出工程と、
前記取得工程、前記比較工程、前記第１および第２の検出工程の一連の処理を繰り返すことにより、前記一の要素と前記他の要素の組合せが複数通り検出された結果、前記各組合せの出現頻度に基づいて、前記他の要素を、前記一の要素に従属して表示内容が変化する要素として特定する特定工程と、
を実行させることを特徴とする情報処理方法。
【０１９２】
（付記１４）前記特定工程は、前記複数通りの組合せのうち、前記第１の検出工程によって検出された検出回数が規定回数以下となる一の要素を含む組合せを除く残余の組合せの出現頻度に基づいて、前記他の要素を、前記一の要素に従属して表示内容が変化する要素として特定することを特徴とする付記１３に記載の情報処理方法。
【０１９３】
（付記１５）前記特定工程は、前記複数通りの組合せのうち、前記画面上でのサイズが規定サイズより小さい一の要素を含む組合せを除く残余の組合せの出現頻度に基づいて、前記他の要素を、前記一の要素に従属して表示内容が変化する要素として特定することを特徴とする付記１３または１４に記載の情報処理方法。
【０１９４】
（付記１６）前記特定工程は、前記検出された複数通りの組合せのうち出現頻度が最大の組合せの前記他の要素を、前記一の要素に従属して表示内容が変化する要素として特定することを特徴とする付記１３〜１５のいずれか一つに記載の情報処理方法。
【０１９５】
（付記１７）前記特定工程は、前記検出された複数通りの組合せのうち出現頻度が所定の閾値以上の組合せの前記他の要素を、前記一の要素に従属して表示内容が変化する要素として特定することを特徴とする付記１３〜１５のいずれか一つに記載の情報処理方法。
【０１９６】
（付記１８）前記コンピュータが、
前記第１および第２の検出工程によって検出された第１および第２の検出結果に基づいて、前記一の要素として検出された第１の要素と前記他の要素として検出された第２の要素との組合せの出現頻度を算出する第１の算出工程と、
前記第１および第２の検出結果に基づいて、前記一の要素として検出された前記第１の要素と前記他の要素として検出された第３の要素との組合せの出現頻度を算出する第２の算出工程と、
前記第１および第２の検出結果に基づいて、前記一の要素として検出された前記第２の要素と前記他の要素として検出された前記第３の要素との組合せの出現頻度を算出する第３の算出工程と、をさらに実行し
前記特定工程は、前記第１、第２および第３の算出工程によって算出された算出結果に基づいて、前記第２の要素を前記第１の要素に従属して表示内容が変化する要素として特定し、前記第３の要素を前記第２の要素に従属して表示内容が変化する要素として特定することを特徴とする付記１３〜１７のいずれか一つに記載の情報処理方法。
【符号の説明】
【０１９７】
２００  情報処理装置
３０１  取得部
３０２  第１の選択部
３０３  比較部
３０４  第１の検出部
３０５  第２の検出部
３０６  特定部
３０７  第２の選択部
３０８  頻度算出部
３０９  積算部
３１０  出力部
４００  イベントＤＢ
６００  画面ＤＢ
７００  ウィンドウ構造ＤＢ
９００  クリック回数ＤＢ
１０００  画面同時変化頻度ＤＢ
１１００  組合せテーブル
１２００  累計頻度テーブル
１３００  ペイン領域ＤＢ
２１００  ペイン領域リスト
【図１】
2011159018.tif 000003
【図２】
2011159018.tif 000004
【図３】
2011159018.tif 000005
【図４】
2011159018.tif 000006
【図５】
2011159018.tif 000007
【図６】
2011159018.tif 000008
【図７】
2011159018.tif 000009
【図８】
2011159018.tif 000010
【図９】
2011159018.tif 000011
【図１０】
2011159018.tif 000012
【図１１】
2011159018.tif 000013
【図１２】
2011159018.tif 000014
【図１３】
2011159018.tif 000015
【図１４】
2011159018.tif 000016
【図１５】
2011159018.tif 000017
【図１６】
2011159018.tif 000018
【図１７】
2011159018.tif 000019
【図１８】
2011159018.tif 000020
【図１９】
2011159018.tif 000021
【図２０】
2011159018.tif 000022
【図２１】
2011159018.tif 000023
【図２２】
2011159018.tif 000024