(57)【要約】【課題】クライアントに表示された画面を生成する画面生成プログラム、画面生成装置、画面生成方法を提供する。【解決手段】  サーバからクライアントに送信されたデータであってユーザによる操作を受け付ける第１画面をクライアントに表示させるためのデータである第１データと、クライアントからサーバに送信されたデータであってクライアントに表示された第１画面で受け付けられた操作を示すデータである第２データとを取得する取得ステップと、取得ステップにより取得された第１データ及び第２データに基づいて、第２データに基づく情報である操作情報を、第１画面に付加してなる第２画面を表示させるための第３データを生成する生成ステップとをコンピュータに実行させる。【選択図】図２
2007280357.tif 000002
【特許請求の範囲】
【請求項１】
サーバとの通信に基づいてクライアントに表示された画面の生成を該クライアントと異なるコンピュータに実行させる画面生成プログラムであって、
前記サーバから前記クライアントに送信されたデータであってユーザによる操作を受け付ける第１画面を前記クライアントに表示させるためのデータである第１データと、前記クライアントから前記サーバに送信されたデータであって前記クライアントに表示された第１画面で受け付けられた操作を示すデータである第２データとを取得する取得ステップと、
前記取得ステップにより取得された第１データ及び第２データに基づいて、第２データに基づく情報である操作情報を、第１画面に付加してなる第２画面を表示させるための第３データを生成する生成ステップと
をコンピュータに実行させる画面生成プログラム。
【請求項２】
請求項１に記載の画面生成プログラムにおいて、
前記取得ステップは更に、前記サーバから前記クライアントに送信されたデータであって前記クライアントに画面を表示させるための第４データを取得することを特徴とする画面生成プログラム。
【請求項３】
請求項１または請求項２に記載の画面生成プログラムにおいて、
前記取得ステップは、前記サーバと前記クライアントの間の通信がキャプチャされたデータであるキャプチャデータから、第１データと第２データを取得することを特徴とする画面生成プログラム。
【請求項４】
請求項３に記載の画面生成プログラムにおいて、
前記取得ステップは、前記クライアントから前記サーバへのメッセージであるリクエストメッセージと前記サーバから前記クライアントへのメッセージであるレスポンスメッセージとを前記キャプチャデータから抽出し、抽出したレスポンスメッセージから第１データを取得し、該レスポンスメッセージの直後のリクエストメッセージから第２データを取得することを特徴とする画面生成プログラム。
【請求項５】
請求項４に記載の画面生成プログラムにおいて、
前記取得ステップは、前記サーバのエラーログにおけるエラー内容を取得し、前記メッセージの中から該エラー内容に対応するメッセージを抽出し、前記メッセージに関連するメッセージを抽出し、該メッセージから第１データと第２データを取得することを特徴とする画面生成プログラム。
【請求項６】
請求項４または請求項５に記載の画面生成プログラムにおいて、
第１データは、フォームであり、第２データは、リクエストメッセージの引数であることを特徴とする画面生成プログラム。
【請求項７】
請求項６に記載の画面生成プログラムにおいて、
前記生成ステップは、前記フォームに前記引数の値の記述を追加したものを第３データとすることを特徴とする画面生成プログラム。
【請求項８】
請求項１乃至請求項７のいずれかに記載の画面生成プログラムにおいて、
前記操作情報は、前記操作の順序である操作順序を含むことを特徴とする画面生成プログラム。
【請求項９】
サーバとの通信に基づいてクライアントに表示された画面の生成を行う画面生成装置であって、
前記サーバから前記クライアントに送信されたデータであってユーザによる操作を受け付ける第１画面を前記クライアントに表示させるためのデータである第１データと、前記クライアントから前記サーバに送信されたデータであって前記クライアントに表示された第１画面で受け付けられた操作を示すデータである第２データとを取得する取得部と、
前記取得部により取得された第１データ及び第２データに基づいて、第２データに基づく情報である操作情報を、第１画面に付加してなる第２画面を表示させるための第３データを生成する生成部と
を備える画面生成装置。
【請求項１０】
サーバとの通信に基づいてクライアントに表示された画面の生成を該クライアントと異なる情報処理装置で実行する画面生成方法であって、
前記サーバから前記クライアントに送信されたデータであってユーザによる操作を受け付ける第１画面を前記クライアントに表示させるためのデータである第１データと、前記クライアントから前記サーバに送信されたデータであって前記クライアントに表示された第１画面で受け付けられた操作を示すデータである第２データとを取得する取得ステップと、
前記取得ステップにより取得された第１データ及び第２データに基づいて、第２データに基づく情報である操作情報を、第１画面に付加してなる第２画面を表示させるための第３データを生成する生成ステップと
を実行する画面生成方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、クライアントに表示された画面を生成する画面生成プログラム、画面生成装置、画面生成方法に関するものである。
【背景技術】
【０００２】
クライアントがＷｅｂサーバにアクセスすることにより提供されるＷｅｂサービスにおいて、クライアントにおけるユーザの操作により発生したトラブルは、ユーザからコールセンターへの電話により解決するようにしていた。
【０００３】
なお、本発明の関連ある従来技術として、クライアントが操作ログを保持することにより、Ｗｅｂサーバに異常が発生した場合、異常が発生した時点までの処理をクライアントが操作ログを用いて復旧し、クライアントを用いるユーザはその後の処理をシームレスに継続できる処理要求復旧方式がある（例えば、特許文献１参照）。
【特許文献１】特開２００３−６０１８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、上述したようにクライアント側の操作によりトラブルが発生した場合、コールセンターが取得できる情報は、Ｗｅｂサーバ側に記録された操作履歴、エラーログ、顧客情報などであり、コールセンターは、クライアント側の詳細な操作や画面までを把握することができない。
【０００５】
また、特許文献１の技術は、Ｗｅｂサーバ側でトラブルが発生し、復旧した場合の技術であり、上述したようなクライアント側の操作によるトラブルを解決できない。また、特許文献１の技術は、トラブルの前後でクライアントの処理を継続するためにクライアントだけで行う処理であり、Ｗｅｂサーバやコールセンター側には無関係の処理である。
【０００６】
本発明は上述した問題点を解決するためになされたものであり、クライアントに表示された画面を生成する画面生成プログラム、画面生成装置、画面生成方法を提供することを目的とする。
【課題を解決するための手段】
【０００７】
上述した課題を解決するため、本発明は、サーバとの通信に基づいてクライアントに表示された画面の生成を該クライアントと異なるコンピュータに実行させる画面生成プログラムであって、前記サーバから前記クライアントに送信されたデータであってユーザによる操作を受け付ける第１画面を前記クライアントに表示させるためのデータである第１データと、前記クライアントから前記サーバに送信されたデータであって前記クライアントに表示された第１画面で受け付けられた操作を示すデータである第２データとを取得する取得ステップと、前記取得ステップにより取得された第１データ及び第２データに基づいて、第２データに基づく情報である操作情報を、第１画面に付加してなる第２画面を表示させるための第３データを生成する生成ステップとをコンピュータに実行させるものである。
【０００８】
また、本発明は、サーバとの通信に基づいてクライアントに表示された画面の生成を行う画面生成装置であって、前記サーバから前記クライアントに送信されたデータであってユーザによる操作を受け付ける第１画面を前記クライアントに表示させるためのデータである第１データと、前記クライアントから前記サーバに送信されたデータであって前記クライアントに表示された第１画面で受け付けられた操作を示すデータである第２データとを取得する取得部と、前記取得部により取得された第１データ及び第２データに基づいて、第２データに基づく情報である操作情報を、第１画面に付加してなる第２画面を表示させるための第３データを生成する生成部とを備えたものである。
【０００９】
また、本発明は、サーバとの通信に基づいてクライアントに表示された画面の生成を該クライアントと異なる情報処理装置で実行する画面生成方法であって、
前記サーバから前記クライアントに送信されたデータであってユーザによる操作を受け付ける第１画面を前記クライアントに表示させるためのデータである第１データと、前記クライアントから前記サーバに送信されたデータであって前記クライアントに表示された第１画面で受け付けられた操作を示すデータである第２データとを取得する取得ステップと、前記取得ステップにより取得された第１データ及び第２データに基づいて、第２データに基づく情報である操作情報を、第１画面に付加してなる第２画面を表示させるための第３データを生成する生成ステップとを実行するものである。
【発明の効果】
【００１０】
本発明によれば、クライアントにおける入力内容を含め、クライアントに表示された画面を生成することができる。
【発明を実施するための最良の形態】
【００１１】
以下、本発明の実施の形態について図面を参照しつつ説明する。
【００１２】
実施の形態１．
本実施の形態においては、画面生成装置の一例として、Ｗｅｂサーバにアクセスするクライアントにおける画面を再現する画面再現装置について説明する。
【００１３】
まず、本実施の形態に係るＷｅｂシステムの構成について説明する。
【００１４】
図１は、本実施の形態に係るＷｅｂシステムの構成の一例を示すブロック図である。このＷｅｂシステムは、クライアント１、Ｗｅｂサーバ２、ネットワークスイッチ３、画面再現装置４、操作ログ記憶部５、エラーログ記憶部６を備える。クライアント１とＷｅｂサーバ２は、ネットワークスイッチ３を介して接続されている。また、画面再現装置４は、ネットワークスイッチ３のミラーポートに接続されている。また、操作ログ記憶部５とエラーログ記憶部６は、Ｗｅｂサーバ２と画面再現装置４に接続されている。
【００１５】
クライアント１は、ユーザの操作に従ってＷｅｂサーバ２にアクセスし、Ｗｅｂサーバ２から受信したＷｅｂ画面を表示するとともに、ユーザによるＷｅｂ画面上の操作をＷｅｂサーバ２へ送信する。また、Ｗｅｂサーバ２は、クライアント１における操作の履歴を操作ログとして操作ログ記憶部５に保存し、クライアント１との通信において発生したエラーの履歴をエラーログとしてエラーログ記憶部６に保存する。また、ネットワークスイッチ３は、クライアント１とＷｅｂサーバ２の間の通信をキャプチャし、ミラーポートから画面再現装置４に送信する。
【００１６】
次に、画面再現装置４の構成について説明する。
【００１７】
図２は、本実施の形態に係る画面再現装置の構成の一例を示すブロック図である。この画面再現装置４は、ＨＴＴＰ（HyperText Transfer Protocol）メッセージ観測部１１１、ＨＴＴＰ解析部１１２、通信データ記憶部１１３、通信データ抽出部１２１、画面データ生成部１２２、画面部品ファイル記憶部１２３、画面データ記憶部１２４、画面付加情報記憶部１３２、画面制御部１３３、画面表示部１３４を備える。
【００１８】
次に、操作ログ記憶部５における操作ログとエラーログ記憶部６におけるエラーログについて説明する。
【００１９】
操作ログとエラーログは、従来と同様にして、Ｗｅｂサーバ２により生成される。図３は、本実施の形態に係る操作ログの一例を示す表である。操作ログは、操作毎のレコードを持つ。また、操作ログは、レコード毎の項目として、リクエストタイムスタンプ、顧客ＩＤ、発信元ＩＰアドレス、操作を持つ。図４は、本実施の形態に係るエラーログの一例を示す表である。エラーログは、エラー毎のレコードを持つ。また、エラーログは、レコード毎の項目として、リクエストタイムスタンプ、顧客ＩＤ、発信元ＩＰアドレス、操作、エラーメッセージを持つ。
【００２０】
次に、ネットワークスイッチ３によりキャプチャされるＨＴＴＰメッセージについて説明する。
【００２１】
まず、クライアント１からＷｅｂサーバ２へ送信されるリクエスト（ＨＴＴＰリクエストメッセージ）のデータ構造について説明する。図５は、ＨＴＴＰリクエストメッセージのデータ構造の一例を示す表である。図の左側の列に示すように、リクエストのデータ構造は、メッセージヘッダ、空行、メッセージボディで構成される。メッセージヘッダは、リクエストライン、リクエストヘッダ、一般ヘッダ、エンティティヘッダで構成される。更に、図の右側の２列は、リクエストのデータ構造の内容の具体例として、ＧＥＴメソッドのサンプルとＰＯＳＴメソッドのサンプルを示す。
【００２２】
まず、Ｗｅｂサーバ２からクライアント１へ送信されるレスポンス（ＨＴＴＰレスポンスメッセージ）のデータ構造について説明する。図６は、ＨＴＴＰレスポンスメッセージのデータ構造の一例を示す表である。図の左側の列に示すように、レスポンスのデータ構造は、リクエストと同様、メッセージヘッダ、空行、メッセージボディで構成される。メッセージヘッダは、ステータスライン、レスポンスヘッダ、一般ヘッダ、エンティティヘッダで構成される。更に、図の右側の２列は、レスポンスのデータ構造の内容の具体例として、ＨＴＭＬ（HyperText Markup Language）ファイル取得時のサンプルと画像ファイル取得時のサンプルを示す。
【００２３】
図７は、ＨＴＴＰメッセージの一例を示すシーケンス図である。一連のＨＴＴＰメッセージにおいて、リクエストとレスポンスが交互に現れる。また、あるリクエストとその直後のレスポンスとは、ペアになっている。また、あるレスポンス中のフォームに対してクライアント１で入力された応答入力は、その直後のリクエストの引数になる。従って、あるレスポンス中のフォームとその直後のリクエスト中の応答入力とは、ペアになっている。画像再現装置４は、これらのペアを用いてＨＴＴＰメッセージ間の対応付けを行う。
【００２４】
次に、ＨＴＴＰメッセージ観測部１１１とＨＴＴＰ解析部１１２による通信データ取得処理について説明する。
【００２５】
図８は、本実施の形態に係る通信データ取得処理の動作の一例を示すフローチャートである。ここで、ＨＴＴＰメッセージに付与される識別ＩＤは、“（親番号）−（子番号）”の形式で表される。まず、ＨＴＴＰメッセージ観測部１１１は、親番号を初期化し（親番号＝０）（Ｓ１１１）、ネットワークスイッチ３がキャプチャしたメッセージからＨＴＴＰメッセージを抽出し、ＨＴＴＰ解析部１１２に送る（Ｓ１１２）。次に、ＨＴＴＰ解析部１１２は、受け取ったＨＴＴＰメッセージに対してＨＴＴＰプロトコル解析処理を行い（Ｓ１１３）、その結果を通信データとして通信データ記憶部１１３に格納する（Ｓ１１４）。次に、ＨＴＴＰメッセージ観測部１１１は、全てのメッセージの観測を終了したか否かの判断を行い（Ｓ１１５）、終了していなければ（Ｓ１１５，Ｎ）、処理Ｓ１１２へ戻り、終了していれば（Ｓ１１５，Ｙ）、このフローを終了する。
【００２６】
次に、通信データ取得処理中のＨＴＴＰプロトコル解析処理について説明する。
【００２７】
図９は、本実施の形態に係るＨＴＴＰプロトコル解析処理の動作の一例を示すフローチャートである。まず、ＨＴＴＰ解析部１１２は、ＨＴＴＰメッセージ観測部１１１から受け取ったＨＴＴＰメッセージを解析し（Ｓ１２２）、与えられたＨＴＴＰメッセージが新しい接続（新しいセッション、新しい画面）であるか否かの判断を行う（Ｓ１２３）。新しい接続でない場合（Ｓ１２３，Ｎ）、処理Ｓ１２５に移行する。一方、新しい接続である場合（Ｓ１２３，Ｙ）、ＨＴＴＰ解析部１１２は、親番号に１を加え、子番号を初期化する（子番号を１にする）（Ｓ１２４）。次に、ＨＴＴＰ解析部１１２は、与えられたＨＴＴＰメッセージがリクエストであるか否かの判断を行う（Ｓ１２５）。リクエストでない場合（Ｓ１２５，Ｎ）、処理Ｓ１３１に移行する。一方、リクエストである場合（Ｓ１２５，Ｙ）、ＨＴＴＰ解析部１１２は、子番号に１を加える（Ｓ１２６）。
【００２８】
次に、ＨＴＴＰ解析部１１２は、与えられたＨＴＴＰメッセージがレスポンスであるか否かの判断を行う（Ｓ１３１）。レスポンスでない場合（Ｓ１３１，Ｎ）、親番号と子番号からなる識別ＩＤを通信データ記憶部１１３に登録し（Ｓ１３２）、このフローを終了する。一方、レスポンスである場合（Ｓ１３１，Ｙ）、ＨＴＴＰ解析部１１２は、送信元ＩＰアドレスおよびポート番号、発信先ＩＰアドレスおよびポート番号の全てが対応する（リクエストとレスポンスのペアとなる、直前の）リクエストの識別ＩＤをレスポンスの識別ＩＤとして通信データ記憶部１１３に登録し（Ｓ１３３）、このフローを終了する。
【００２９】
次に、通信データ記憶部１１３のデータ構造について説明する。
【００３０】
図１０は、本実施の形態に係る通信データ記憶部１１３の内容の一例を示す表である。通信データ記憶部１１３には、通信データとして、ＨＴＴＰメッセージのメッセージボディである通信データファイルと通信データファイルをテーブルの形式で管理する通信データテーブルとが格納される。通信データテーブルは、ＨＴＴＰメッセージ毎のレコードを持つ。また、通信データテーブルは、レコード毎の項目として、タイムスタンプ、発信元ＩＰ（Internet Protocol）アドレス：接続ポート、送信先ＩＰアドレス：接続ポート、識別ＩＤ、種別、ＨＴＴＰメッセージヘッダ、ボディを持つ。
【００３１】
識別ＩＤは、上述したＨＴＴＰプロトコル解析処理により付与されたものである。識別ＩＤの親番号は、１つの画面の接続内で同一になり、識別ＩＤの子番号は、リクエストとレスポンスのペアで同一になる。種別は、リクエストとレスポンスのいずれかを示す。ボディは、そのＨＴＴＰメッセージのメッセージボディである通信データファイルのファイル名である。通信データファイルは、ＨＴＭＬフォーム、ＨＴＴＰメッセージの引数（ＨＴＭＬフォームの応答入力）、画像データなどである。
【００３２】
上述した通信データ取得処理によれば、クライアント１とＷｅｂサーバ２の間のＨＴＴＰメッセージを解析し、通信データテーブルを生成することにより、エラーログとの対応付けが容易になるとともに、ＨＴＴＰメッセージ間におけるリクエストとレスポンスのペアやフォームと応答入力のペアの関係の抽出が容易になる。
【００３３】
次に、通信データ抽出部１２１による通信データ抽出処理について説明する。
【００３４】
図１１は、本実施の形態に係る通信データ抽出処理の動作の一例を示すフローチャートである。まず、通信データ抽出部１２１は、エラーログ記憶部６に基づいて抽出条件を指定し（Ｓ１４１）、通信データ記憶部１１３からＨＴＴＰメッセージの読み込みを行う（Ｓ１４２）。ここで、抽出条件は、例えば、エラーログの中から画面再現装置４のユーザにより指定されたエラーに対応するＨＴＴＰメッセージと、そのＨＴＴＰメッセージに関連するＨＴＴＰメッセージ（そのＨＴＴＰメッセージの前後の所定の範囲に含まれるＨＴＴＰメッセージ）である。エラーに対応するＨＴＴＰメッセージは、例えば、エラーログにおけるリクエストタイムスタンプや発信元ＩＰアドレスが一致するＨＴＴＰメッセージである。
【００３５】
ここでは、エラーログに基づいて抽出条件を指定したが、操作ログに基づいて抽出条件を指定しても良い。
【００３６】
次に、通信データ抽出部１２１は、通信データ記憶部１１３における全てのＨＴＴＰメッセージの読み込みを完了したか否かの判断を行い（Ｓ１４３）、完了した場合（Ｓ１４３，Ｙ）、このフローを終了し、完了していない場合（Ｓ１４３，Ｎ）、読み込んだＨＴＴＰメッセージが抽出条件に適合したか否かの判断を行う（Ｓ１４４）。抽出条件に適合しない場合（Ｓ１４４，Ｎ）、処理Ｓ１４２へ戻って次の通信データの読み込みを行う。一方、抽出条件に適合した場合（Ｓ１４４，Ｙ）、通信データ抽出部１２１は、読み込んだＨＴＴＰメッセージを画面データ生成部１２２に送り、画面データ生成部１２２は画面データ生成処理を行い（Ｓ１４５）、処理Ｓ１４２へ戻って次の通信データの読み込みを行う。
【００３７】
次に、通信データ抽出処理中の画面データ生成部１２２による画面データ生成処理について説明する。
【００３８】
図１２は、本実施の形態に係る画面データ生成処理の動作の一例を示すフローチャートである。まず、画面データ生成部１２２は、通信データ抽出部１２１から受け取ったＨＴＴＰメッセージがレスポンスであるか否かの判断を行う（Ｓ１５１）。
【００３９】
処理Ｓ１５１において、レスポンスである場合（Ｓ１５１，Ｙ）、画面データ生成部１２２は、そのレスポンスがＨＴＭＬであるか画像であるかの判断を行う（Ｓ１５２）。ＨＴＭＬである場合（Ｓ１５２，ＨＴＭＬ）、画面データ生成部１２２は、ＨＴＭＬを解析してＨＴＭＬフォームを抽出し（Ｓ１５３）、ＨＴＭＬフォームを画面部品ファイルとして画面部品ファイル記憶部１２３に書き込み（Ｓ１５４）、このフローを終了する。画像である場合（Ｓ１５２，画像）、画面データ生成部１２２は、画像ファイルを画像部品ファイルとして画面部品ファイル記憶部１２３に書き込み（Ｓ１５５）、このフローを終了する。
【００４０】
処理Ｓ１５１において、レスポンスでない場合（Ｓ１５１，Ｎ）、画面データ生成部１２２は、通信データ抽出部１２１から受け取ったＨＴＴＰメッセージがリクエストであるか否かの判断を行う（Ｓ１６１）。
【００４１】
処理Ｓ１６１において、リクエストである場合（Ｓ１６１，Ｙ）、画面データ生成部１２２は、そのリクエストがＧＥＴであるかＰＯＳＴであるかの判断を行う（Ｓ１６２）。リクエストがＧＥＴである場合（Ｓ１６２，ＧＥＴ）、リクエストヘッダから引数（応答入力）を読み込み（Ｓ１６３）、処理Ｓ１６５へ移行する。一方、リクエストがＰＯＳＴである場合（Ｓ１６２，ＰＯＳＴ）、メッセージボディから引数（応答入力）を読み込み（Ｓ１６４）、処理Ｓ１６５へ移行する。
【００４２】
次に、画面データ生成部１２２は、対応する（リクエストの直前のレスポンスから抽出された）画面部品ファイル記憶部１２３からＨＴＭＬフォームを読み込み（Ｓ１６５）、このＨＴＭＬフォームに応答入力を埋め込む応答入力埋め込み処理を行い（Ｓ１６６）、その結果として得られたＨＴＭＬフォームを画面データファイルとして画面データ記憶部１２４に登録し（Ｓ１６７）、このフローを終了する。
【００４３】
処理Ｓ１６１において、リクエストでない場合（Ｓ１６１，Ｎ）、このフローを終了する。
【００４４】
次に、画面データ生成処理中の応答入力埋め込み処理について説明する。
【００４５】
図１３は、本実施の形態に係る応答入力埋め込み処理の動作の一例を示すフローチャートである。まず、画面データ生成部１２２は、画面部品ファイル記憶部１２３からＨＴＭＬフォームから１行読み込み（Ｓ１７１）、該当する行に＜ｆｏｒｍ＞タグがあるか否かの判断を行う（Ｓ１７２）。
【００４６】
＜ｆｏｒｍ＞タグがない場合（Ｓ１７２，Ｎ）、処理Ｓ１８１へ移行する。
【００４７】
一方、＜ｆｏｒｍ＞タグがある場合（Ｓ１７２，Ｙ）、画面データ生成部１２２は、該当する行に＜ｉｎｐｕｔ＞タグがあるか否かの判断を行う（Ｓ１７３）。＜ｉｎｐｕｔ＞タグがあり、その種類がｔｅｘｔである場合（Ｓ１７３，ｔｅｘｔ）、画面データ生成部１２２は、ｖａｌｕｅ属性に引数の値を設定し（Ｓ１７４）、処理Ｓ１８１へ移行する。また、＜ｉｎｐｕｔ＞タグがあり、その種類がｒａｄｉｏ  ｃｈｅｃｋｂｏｘである場合（Ｓ１７３，ｒａｄｉｏ  ｃｈｅｃｋｂｏｘ）、画面データ生成部１２２は、引数の値と等しい値の行にｃｈｅｃｋｅｄ＝“ｃｈｅｃｋｅｄ”という記述を追加し（Ｓ１７５）、処理Ｓ１８１へ移行する。また、＜ｉｎｐｕｔ＞タグがあり、その種類がｓｅｌｅｃｔである場合（Ｓ１７３，ｓｅｌｅｃｔ）、画面データ生成部１２２は、引数の値と等しいｏｐｔｉｏｎ要素にｓｅｌｅｃｔｅｄ＝“ｓｅｌｅｃｔｅｄ”という記述を追加し（Ｓ１７６）、処理Ｓ１８１へ移行する。
【００４８】
また、＜ｉｎｐｕｔ＞タグがない場合（Ｓ１７３，ＮＯ）、画面データ生成部１２２は、＜ｔｅｘｔａｒｅａ＞タグがあるか否かの判断を行い（Ｓ１７７）、＜ｔｅｘｔａｒｅａ＞タグがない場合（Ｓ１７７，Ｎ）、処理Ｓ１８１へ移行し、＜ｔｅｘｔａｒｅａ＞タグがある場合（Ｓ１７７，Ｙ）、画面データ生成部１２２は、＜ｔｅｘｔａｒｅａ＞タグの中に引数の値を設定し（Ｓ１７８）、処理Ｓ１８１へ移行する。
【００４９】
処理Ｓ１８１において、画面データ生成部１２２は、ＨＴＭＬフォームの全ての行の読み込みが完了したか否かの判断を行い（Ｓ１８１）、完了した場合（Ｓ１８１，Ｙ）、このフローを終了し、完了しない場合（Ｓ１８１，Ｎ）、処理Ｓ１７１へ戻り、次の行の読み込みを行う。
【００５０】
次に、上述した応答入力埋め込み処理により生成されたＨＴＭＬフォームの具体例について説明する。
【００５１】
図１４は、本実施の形態に係る応答入力埋め込み処理の動作の具体例を示す図である。この図は、ＨＴＭＬフォーム“ｆｕｒｉｋｏｍｉ００１”、通信データテーブルにおけるリクエスト３−１のレコード、通信データファイルにおけるリクエスト３−１の引数、通信データテーブルにおけるレスポンス２−１のレコード、振込み元指定画面の関係を示す。
【００５２】
この図において、ＨＴＭＬフォーム“ｆｕｒｉｋｏｍｉ００１”は、応答入力埋め込み処理の結果を示す。リクエスト３−１は、“ｆｕｒｉｋｏｍｉ００１”への応答入力を引数に持つリクエストを示す。リクエスト３−１の引数は、“ｆｕｒｉｋｏｍｉ００１”への応答入力を示す。レスポンス２−１は、“ｆｕｒｉｋｏｍｉ００１”を返したレスポンスであり、リクエスト３−１の直前のレスポンスを示す。振込み元指定画面は、ＨＴＭＬフォーム“ｆｕｒｉｋｏｍｉ００１”に応答入力を埋め込んだ結果により表示される画面を示す。
【００５３】
ＨＴＭＬフォーム“ｆｕｒｉｋｏｍｉ００１”には、上述した応答入力埋め込み処理により、２つの＜ｉｎｐｕｔ＞タグ内にそれぞれの応答入力を表す“ｖａｌｕｅ＝００１”と“ｖａｌｕｅ＝００００１”が埋め込まれる。
【００５４】
上述した画面データ生成処理によれば、Ｗｅｂサーバ２側に保存されたエラーログとキャプチャした通信データとに基づいて、ＨＴＭＬフォームに応答が入力された状態のＨＴＭＬフォームを生成することができる。
【００５５】
次に、画面データ記憶部１２３のデータ構造について説明する。
【００５６】
図１５は、本実施の形態に係る画面データ記憶部の内容の一例を示す表である。画面データ記憶部１２３には、画面データテーブルと画面データファイルとが格納される。画面データテーブルは、画面データ毎のレコードを持つ。また、画面データテーブルは、レコード毎の項目として、顧客ＩＤ、レスポンスタイムスタンプ、画面データファイル名である。画面データファイル名は、応答入力埋め込み処理により生成されたＨＴＭＬフォームにリンクする。図の下部に参考として、それぞれの画面データファイルにより表示される画面を示す。
【００５７】
処理Ｓ１６７において、画面データ生成部１２２は、操作ログ記憶部５から対応する操作の顧客ＩＤを取得し、通信データ記憶部１１３から対応するレスポンスのタイムスタンプを取得し、画面データファイル名とともに画面データテーブルに登録する。
【００５８】
次に、画面表示部１３４により表示されるＧＵＩ（Graphical User Interface）について説明する。
【００５９】
図１６は、本実施の形態に係るＧＵＩの一例を示す図である。ＧＵＩは、タイムスタンプ表示部１５１、画面データ表示部１５２、最初画面移動ボタン１５３、後退ボタン１５４、前進ボタン１５５、最後画面移動ボタン１５６、画面スライダ１５７、エラーログ表示部１５８、入力支援メッセージ表示部１５９を備える。
【００６０】
タイムスタンプ表示部１５１は、画面データＨＴＴＰメッセージのタイムスタンプを表示する。画面データ表示部１５２は、画面制御部１３３から送られた画面データを表示する。画面付加情報表示部１５８は、画面制御部１３３から送られた画面付加情報を表示する。最初画面移動ボタン１５３、後退ボタン１５４、前進ボタン１５５、最後画面移動ボタン１５６、画面スライダ１５７は、画面再現装置４のユーザによる操作を受け付け、操作を画面制御部１３３に送る。
【００６１】
次に、画面制御部１３３による画面制御処理について説明する。
【００６２】
図１７は、本実施の形態に係る画面制御処理の動作の一例を示すフローチャートである。まず、画面制御部１３３は、画面再現装置４のユーザにより、操作画面においてボタンが押下されたか否かの判断を行う（Ｓ２１１）。前進ボタンが押下された場合（Ｓ２１１，前進ボタン）、画面制御部１３３は、画面を１つ進め（Ｓ２１２）、処理Ｓ２３１へ移行する。また、後退ボタンが押下された場合（Ｓ２１１，後退ボタン）、画面制御部１３３は、画面を１つ戻し（Ｓ２１３）、処理Ｓ２３１へ移行する。また、最初画面移動ボタンが押下された場合（Ｓ２１１，最初画面移動ボタン）、画面制御部１３３は、最初の画面に移動させ（Ｓ２１４）、処理Ｓ２３１へ移行する。また、最後画面移動ボタンが押下された場合（Ｓ２１１，最後画面移動ボタン）、画面制御部１３３は、最初の画面に移動させ（Ｓ２１５）、処理Ｓ２３１へ移行する。
【００６３】
また、ボタンが押下されていない場合（Ｓ２１１，ＮＯ）、画面制御部１３３は、画面再現装置４のユーザにより、操作画面においてスライダが操作されたか否かの判断を行う（Ｓ２２１）。スライダが左に操作された場合（Ｓ２２１，左）、画面制御部１３３は、スライダ位置に相当する画面に戻し（Ｓ２２２）、処理Ｓ２３１へ移行する。また、スライダが右に操作された場合（Ｓ２２１，右）、画面制御部１３３は、スライダ位置に相当する画面に進め（Ｓ２２３）、処理Ｓ２３１へ移行する。
【００６４】
処理Ｓ２３１において、画面制御部１３３は、移動した画面に対応する画面データファイルを画面データ記憶部１２４から読み出すとともに、画面データファイルで用いられる画面部品ファイルを画面データ記憶部１２４から読み出し（Ｓ２３１）、画面データファイルと画面部品ファイルを画面表示部１３４に表示させ（Ｓ２３２）、エラーログ記憶部６におけるエラーログや画面付加情報記憶部１３２における画面付加情報を読み出し（Ｓ２３３）、エラーログや画面付加情報を画面表示部１３４に表示させ（Ｓ２３４）、処理Ｓ２１１に戻り、次の操作についての判断を行う。
【００６５】
また、スライダが操作されていない場合（Ｓ２２１，ＮＯ）、画面制御部１３３は、画面再現装置４のユーザにより、操作画面において操作が終了されたか否かの判断を行う（Ｓ２４１）。操作が終了されていない場合（Ｓ２４１，Ｎ）、処理Ｓ２１１に戻り、次の操作についての判断を行う。一方、操作が終了された場合（Ｓ２４１，Ｙ）、このフローを終了する。
【００６６】
図１８は、本実施の形態に係る画面表示部に表示される画面の具体例を示す図である。上述した画面制御処理により、画面データ表示部１５２に表示される画面は、図１５の画面データテーブルで管理されている４つの画面データのいずれかに基づく画面であり、前進ボタン１５５や後退ボタン１５４などの操作に従って、４つの画面の間を移動する。
【００６７】
次に、予め画面付加情報記憶部１３２に格納される画面付加情報のデータ構造について説明する。
【００６８】
図１９は、本実施の形態に係る画面付加情報のデータ構造の一例を示すブロック図である。画面付加情報は、操作−ＨＴＭＬフォーム対応付けテーブル１６１、エラー内容−応答入力引数対応付けテーブル１６２、応答入力支援メッセージテーブル１６３からなる。
【００６９】
図２０は、本実施の形態に係る操作−ＨＴＭＬフォーム対応付けテーブルの内容の一例を示す表である。操作−ＨＴＭＬフォーム対応付けテーブル１６１は、操作ログにおける操作とＨＴＭＬフォームなどの対応付けを示すテーブルであり、操作毎に、操作名、ＨＴＭＬフォーム名、フォームを要求したリクエスト、応答入力のリクエストの項目を持つ。画面制御部１３３は、このテーブルを参照することにより、画面データ（ＨＴＭＬフォーム名、引数名）に対応する操作を取得することができる。
【００７０】
図２１は、本実施の形態に係るエラー内容−応答入力対応付けテーブルの内容の一例を示す表である。エラー内容−応答入力引数対応付けテーブル１６２は、エラー内容と応答入力などの対応付けを示すテーブルであり、エラー内容毎に、エラーメッセージ、ＨＴＭＬフォーム名、引数名の項目を持つ。画面制御部１３３は、このテーブルを参照することにより、画面データ（ＨＴＭＬフォーム名、引数名）に対応するエラー内容を取得することができる。
【００７１】
図２２は、本実施の形態に係る応答入力支援メッセージテーブルの内容の一例を示す表である。応答入力支援メッセージテーブル１６３は、クライアント１のユーザに対して適切な応答入力を支援するためのメッセージである入力支援メッセージ（入力内容に関する情報）を格納しておくものであり、ＨＴＭＬフォーム名、引数名、入力支援メッセージの項目を持つ。画面制御部１３３は、このテーブルを参照することにより、画面データ（ＨＴＭＬフォーム名、引数名）に対応する入力支援メッセージを取得することができる。
【００７２】
上述した画面制御処理によれば、画面再現装置４のユーザは、クライアント１において表示された画面の順番を元に、容易に画面を切り替えることができる。更に、画面データに対応するエラーログや画面付加情報を表示することにより、エラーの内容や入力支援の内容を表示することができる。
【００７３】
次に、クライアント１のユーザの操作によるトラブルが発生した場合の画面再現装置４によるクライアント１の画面の再現について、２つの具体例を用いて説明する。
【００７４】
第１の具体例は、振込先指定画面において６桁で入力すべき振込先の口座番号を、クライアント１のユーザが１桁で入力していた場合である。
【００７５】
図２３は、本実施の形態に係る第１の具体例の表示に用いられる情報の一例を示す図である。この図は、エラーログ記憶部６におけるエラーログ、画面付加情報記憶部１３２におけるエラー内容−応答入力対応付けテーブルと入力支援メッセージテーブルを示す。図中の太い下線で示した部分が関連する情報である。
【００７６】
図２４は、本実施の形態に係る第１の具体例におけるＧＵＩの表示の一例を示す図である。画面制御部１３３は、画面再現装置４のユーザの操作に従って、エラーログに対応する画面に応答入力を埋め込んだ状態の画面データを画面データ表示部１５２に表示させ、タイムスタンプをタイムスタンプ表示部１５１に表示させる。更に、画面制御部１３３は、エラー内容−応答入力対応付けテーブルから、表示した画面データのＨＴＭＬフォーム名と引数名に対応するエラー内容を読み出し、エラーログ表示部１５８に表示させる。更に、画面制御部１３３は、入力支援メッセージテーブルから、表示した画面データのＨＴＭＬフォーム名と引数名に対応する入力支援メッセージを読み出し、入力支援メッセージ表示部１５９に表示させる。
【００７７】
第２の具体例は、パスワード再発行の確認のための電話番号の入力において、クライアント１のユーザが入力した電話番号の形式が誤っていた場合である。
【００７８】
図２５は、本実施の形態に係る第２の具体例における画面データの一例を示す図である。クライアント１において、まず、１番目の画面であるログイン画面が表示される。ここで、クライアント１のユーザがパスワードを忘れた場合の操作を行うと、２番目の画面である氏名電話番号確認画面が表示される。ここで、クライアント１のユーザが誤った形式の電話番号を入力すると、３番目の画面であるエラー画面が表示される。
【００７９】
図２６は、本実施の形態に係る第２の具体例におけるＧＵＩの表示の一例を示す図である。画面制御部１３３は、画面再現装置４のユーザの操作に従って、氏名電話番号確認画面のフォームに応答入力を埋め込んだ状態の画面データを画面データ表示部１５２に表示させる。更に、画面制御部１３３は、エラー内容−応答入力対応付けテーブルから、表示した画面データのＨＴＭＬフォーム名と引数名に対応するエラー内容を読み出し、エラーログ表示部１５８に表示させる。更に、画面制御部１３３は、入力支援メッセージテーブルから、表示した画面データのＨＴＭＬフォーム名と引数名に対応する入力支援メッセージを読み出し、入力支援メッセージ表示部１５９に表示させる。
【００８０】
例えば、コールセンターの担当者が画面再現装置４を用いることにより、エラーが発生したクライアント１の画面を再現できるとともに、前後の画面への移り変わりを自由に操作できることから、クライアント１からのユーザの問い合わせの内容を正確に把握することができる。更に、再現した画面とともに画面に応じた付加情報を表示することにより、コールセンターの担当者はクライアント１からのユーザの問い合わせに対して適切な処置を行うことができる。
【００８１】
実施の形態２．
【００８２】
ここで、株取引アプリケーションにおけるクライアントのユーザの操作の例について説明する。図２７は、クライアントに表示された株購入画面の第１状態を示す図である。図２８は、クライアントに表示された株購入画面の第２状態を示す図である。図２９は、クライアントに表示された株購入画面の第３状態を示す図である。図３０は、クライアントに表示された株購入画面の第４状態を示す図である。図３１は、クライアントに表示された取引確定画面の第１状態を示す図である。図３２は、クライアントに表示された株購入画面の第５状態を示す図である。
【００８３】
株購入画面は、株価を表示するための株価表示欄、更新ボタン、購入株数を入力するための購入株数入力欄、クリアボタン、取引実行ボタン、戻るボタンを表示する。まず、クライアントにおいて、ログイン認証が行われ、購入する株の銘柄が指定され、株購入画面の第１状態が表示されたとする。株購入画面の第１状態において、ユーザにより更新ボタンが押下されたとすると、株購入画面は第１状態から第２状態へ遷移する。株購入画面の第２状態は、クライアントがＷｅｂサーバから現在の株価を取得することにより、株購入画面の第１状態における株価表示欄の株価が更新されたものである。次に、株購入画面の第２状態において、ユーザにより更新ボタンが押下されたとすると、株購入画面は第２状態から第３状態へ遷移する。株購入画面の第３状態は、クライアントがＷｅｂサーバから現在の株価を取得することにより、株購入画面の第２状態における株価表示欄の株価が更新されたものである。
【００８４】
次に、株購入画面の第３状態において、ユーザにより購入株数入力欄に購入株数が入力されたとすると、株購入画面は第３状態から第４状態へ遷移する。株購入画面の第４状態は、株購入画面の第３状態における購入株数入力欄に購入株数が入力されたものである。次に、株購入画面の第４状態において、ユーザにより取引実行ボタンが押下されたとすると、株購入画面の第４状態は取引確定画面の第１状態へ遷移する。
【００８５】
取引確定画面の第１状態は、株購入画面の第４状態における株価と購入株数を表示すると共に、ＯＫボタンとキャンセルボタンを表示する。次に、取引確定画面の第１状態において、ユーザによりキャンセルボタンが押下されたとすると、取引確定画面の第１状態は株購入画面の第５状態へ遷移する。株購入画面の第５状態は、株購入画面の第４状態と同一である。次に、ユーザが操作上の疑問によりコールセンタへ電話したとする。
【００８６】
しかしながら、上述した操作の例に対して、コールセンタが実施の形態１に係る画面再現装置を有する場合、オペレータ（コールセンターの担当者）は、画面再現装置４により再現された画面を切り替えながら画面遷移を辿る必要があった。
【００８７】
また、実施の形態１に係る画面再現装置は、再現された複数の画面を一覧にした一覧画面を表示しても良い。図３３は、実施の形態１に係る画面再現装置による一覧画面の一例を示す図である。この一覧画面は、上述した株購入画面の第１状態、第２状態、第３状態、第４状態、取引確定画面の第１状態、株購入画面の第５状態が順番に並べて表示したものである。しかしながら、上述した操作の例に対して、一覧画面を表示する場合、オペレータは、細かい操作の内容を確認しにくく、特にどのボタンが押下されて次画面に遷移したかは把握しにくい。
【００８８】
本実施の形態においては、クライアントにおける画面遷移の状況を、オペレータがより簡単に把握することができる画面再現装置について説明する。
【００８９】
まず、本実施の形態に係る画面再現装置の構成について説明する。
【００９０】
図３４は、本実施の形態に係る画面再現装置の構成の一例を示すブロック図である。この図において、図２と同一符号は図２に示された対象と同一又は相当物を示しており、ここでの説明を省略する。この図は、図２と比較すると、画面再現装置４の代わりに画面再現装置７を備える。また、画面再現装置７は、画面再現装置４と比較すると、新たに再現対象データ集約部３１１、遷移番号付加部３１２、再現画像作成部３１３、再現画像表示部３１４、再現データ記憶部３１５、画面画像雛形ＤＢ（Database）３２１、ボタン上書き情報ＤＢ３２２、データ上書き情報ＤＢ３２３を備え、通信データ抽出部１２１、画面データ生成部１２２、画面部品ファイル記憶部１２３、画面データ記憶部１２４、画面付加情報記憶部１３２、画面制御部１３３、画面表示部１３４を必要としない。
【００９１】
再現データ記憶部３１５は、再現対象レコード抽出テーブル、再現対象集約テーブル、データ遷移管理テーブルＡ、データ遷移管理テーブルＢ、上書き再現画面画像データを格納する。
【００９２】
次に、本実施の形態に係る画面再現装置の動作について説明する。
【００９３】
本実施の形態に係る画面再現装置は、実施の形態１と同様、ＨＴＴＰメッセージ観測部１１１とＨＴＴＰ解析部１１２による通信データ取得処理を行った後、次の画面再現処理を行う。
【００９４】
図３５は、本実施の形態に係る画面再現処理の動作の一例を示すフローチャートである。まず、再現対象データ集約部３１１は、通信データ記憶部１１３に格納された情報から再現の対象となるデータを集約する再現対象データ集約処理を行う（Ｓ３１１）。次に、遷移番号付加部３１２は、再現の対象となるデータに画面遷移に関する番号を付加する遷移番号付加処理を行う（Ｓ３１２）。次に、再現画像作成部３１３は、再現画像を作成する再現画像作成処理を行う（Ｓ３１３）。次に、再現画像表示部３１４は、作成された再現画像を表示する再現画像表示処理を行い（Ｓ３１４）、このフローは終了する。以下、説明を簡単にするため、画面再現装置が対象とする画面において、１画面が１フォームに対応し、フォームが画像なしの単純なＨＴＭＬである場合について説明する。
【００９５】
次に、再現対象データ集約処理について説明する。
【００９６】
図３６は、本実施の形態に係る再現対象データ集約処理の動作の一例を示すフローチャートである。まず、再現対象データ集約部３１１は、再現対象を指定する情報を取得する（Ｓ３２１）。再現対象とは、再現対象となる操作を行った顧客である再現対象顧客、及び再現対象となる操作を行った時間帯である再現対象時間帯である。本実施の形態において、再現対象顧客を指定する情報は、ＩＰアドレス及び接続ポートのペアである。ここで、再現対象データ集約部３１１は、オペレータによる入力からこれらの情報を取得する。オペレータは、これらの情報をエラーログ記憶部６や通信データ記憶部１１３に格納された情報から取得することができる。
【００９７】
次に、再現対象データ集約部３１１は、通信データ記憶部１１３に格納された通信データテーブルにおいて、タイムスタンプが再現対象時間帯内であり、且つ指定されたＩＰアドレス及び接続ポートのペアを持つレコードを、タイムスタンプ順に抽出し、再現データ記憶部３１５の再現対象レコード抽出テーブルに格納する（Ｓ３２２）。ここで、指定されたＩＰアドレス及び接続ポートのペアを持つレコードとは、そのペアを“発信元ＩＰアドレス：接続ポート”、あるいは“送信先ＩＰアドレス：接続ポート”に持つレコードである。図３７は、本実施の形態に係る再現対象レコード抽出テーブルの内容の一例を示す表である。この再現対象レコード抽出テーブルは、通信データテーブルにおける項目のうち、タイムスタンプ、種別、ＨＴＴＰメッセージヘッダ、ボディを格納する。
【００９８】
次に、再現対象データ集約部３１１は、再現対象レコード抽出テーブルにおけるｒｅｓｐｏｎｓｅレコードの番号を表す変数ｎを１に初期化する（Ｓ３２３）。次に、再現対象データ集約部３１１は、再現対象レコード抽出テーブルからｎ番目のｒｅｓｐｏｎｓｅレコードを読み取り（Ｓ３２４）、ｒｅｓｐｏｎｓｅレコードの解析を行うｒｅｓｐｏｎｓｅ解析処理を行う（Ｓ３２５）。
【００９９】
次に、再現対象データ集約部３１１は、再現対象レコード抽出テーブルにおける次のレコードがｒｅｑｕｅｓｔレコードであるか否かの判断を行い、ｒｅｑｕｅｓｔレコードでない場合（Ｓ３３１，Ｎ）、処理Ｓ３３４へ移行し、ｒｅｑｕｅｓｔレコードである場合（Ｓ３３１，Ｙ）、次のレコードであるｒｅｑｕｅｓｔレコードを読み取り（Ｓ３３２）、ｒｅｑｕｅｓｔレコードの解析を行うｒｅｑｕｅｓｔレコード解析処理を行い（Ｓ３３３）、処理Ｓ３３４へ移行する。次に、再現対象データ集約部３１１は、ｎを１増加させ（Ｓ３３４）、再現対象レコード抽出テーブルの最終のｒｅｓｐｏｎｓｅレコードまで読み取ったか否かの判断を行い、最終のｒｅｓｐｏｎｓｅレコードまで読み取っていない場合（Ｓ３３５，Ｎ）、処理Ｓ３２４へ戻り、最終のｒｅｓｐｏｎｓｅレコードまで読み取った場合（Ｓ３３５，Ｙ）、このフローは終了する。
【０１００】
ｒｅｓｐｏｎｓｅレコード解析処理及びｒｅｑｕｅｓｔレコード解析処理により、再現データ記憶部３１５の再現対象集約テーブルにおける一部の項目が設定される。図３８は、本実施の形態に係る再現対象集約テーブルの内容の一例を示す表である。この再現対象集約テーブルは、項目として、タイムスタンプ、画面ＩＤ、画面遷移順、ボタンＩＤ、押下順、時間差、データＩＤ（ｒｅｓｐｏｎｓｅ）、データ（ｒｅｓｐｏｎｓｅ）、データＩＤ（ｒｅｑｕｅｓｔ）、データ（ｒｅｑｕｅｓｔ）を有する。なお、本実施の形態においては、１つのｒｅｑｕｅｓｔに含まれるデータが１つ、１つのｒｅｓｐｏｎｓｅに含まれるデータが１つである場合としたが、１つのｒｅｑｕｅｓｔ及び１つのｒｅｓｐｏｎｓｅに複数のデータが含まれる場合であっても本発明を適用することができる。
【０１０１】
次に、ｒｅｓｐｏｎｓｅレコード解析処理について説明する。
【０１０２】
図３９は、本実施の形態に係るｒｅｓｐｏｎｓｅレコード解析処理の動作の一例を示すフローチャートである。まず、再現対象データ集約部３１１は、読み取ったｒｅｓｐｏｎｓｅレコードのボディ部を解析する（Ｓ３４１）。次に、再現対象データ集約部３１１は、ボディ部の解析結果から、フォーム（画面）の種類を特定し、再現対象集約テーブルにおける画面ＩＤに設定する（Ｓ３４２）。次に、再現対象データ集約部３１１は、ｒｅｓｐｏｎｓｅレコードに、値の設定された引数データがあるか否かの判断を行う（Ｓ３４３）。値の設定された引数データがない場合（Ｓ３４３，Ｎ）、このフローは終了する。値の設定された引数データがある場合（Ｓ３４３，Ｙ）、再現対象データ集約部３１１は、引数データの種類を特定し、再現対象集約テーブルにおけるデータＩＤ（ｒｅｓｐｏｎｓｅ）に設定し（Ｓ３４４）、引数データの値を抽出し、再現対象集約テーブルにおけるデータ（ｒｅｓｐｏｎｓｅ）に設定し（Ｓ３４５）、このフローは終了する。
【０１０３】
次に、ｒｅｑｕｅｓｔレコード解析処理について説明する。
【０１０４】
図４０は、本実施の形態に係るｒｅｑｕｅｓｔレコード解析処理の動作の一例を示すフローチャートである。まず、再現対象データ集約部３１１は、読み取ったｒｅｑｕｅｓｔレコードのタイムスタンプを、再現対象集約テーブルの“タイムスタンプ”に設定する（Ｓ３５２）。
【０１０５】
次に、再現対象データ集約部３１１は、ｎが１より大きいか否かの判断を行い、ｎが１より大きくない場合（Ｓ３５３，Ｎ）、処理Ｓ３５５へ移行し、ｎが１より大きい場合（Ｓ３５３，Ｙ）、ｒｅｑｕｅｓｔレコードのタイムスタンプと再現対象集約テーブルの前レコードのタイムスタンプとの差を算出し、符号付きの値として再現対象集約テーブルの時間差に設定する（Ｓ３５４）。次に、再現対象データ集約部３１１は、読み取ったｒｅｑｕｅｓｔレコードのボディ部を解析し（Ｓ３５５）、解析結果から、クリックされたボタン（リンク等のクリックの操作も含む）の種類を特定し、再現対象集約テーブルのボタンＩＤに設定する（Ｓ３５６）。
【０１０６】
次に、再現対象データ集約部３１１は、ｒｅｑｕｅｓｔレコードに値の設定された引数データがあるか否かの判断を行う（Ｓ３５７）。値の設定された引数データがない場合（Ｓ３５７，Ｎ）、このフローは終了する。値の設定された引数データがある場合（Ｓ３５７，Ｙ）、再現対象データ集約部３１１は、引数データの種類を特定し、再現対象集約テーブルのデータＩＤ（ｒｅｑｕｅｓｔ）に設定し（Ｓ３５８）、引数データの値を抽出し、再現対象集約テーブルのデータ（ｒｅｑｕｅｓｔ）に設定し（Ｓ３５９）、このフローは終了する。
【０１０７】
上述した再現対象集約処理によれば、対象として指定されたユーザによる一連の操作を抽出することができる。
【０１０８】
次に、遷移番号付加処理について説明する。
【０１０９】
図４１は、本実施の形態に係る遷移番号付加処理の動作の一例を示すフローチャートである。まず、遷移番号付加部３１２は、画面遷移順の情報を再現対象集約テーブルに設定する画面遷移順付加処理を行い（Ｓ３６１）、押下ボタン順の情報を再現対象集約テーブルに設定する押下ボタン順付加処理を行い（Ｓ３６２）、データ遷移の情報を再現対象集約テーブルに設定するデータ遷移付加処理を行い（Ｓ３６３）、このフローは終了する。
【０１１０】
次に、画面遷移順付加処理について説明する。
【０１１１】
図４２は、本実施の形態に係る画面遷移順付加処理の動作の一例を示すフローチャートである。まず、遷移番号付加部３１２は、再現対象集約テーブルにおけるレコードの番号を示す変数ｎを１に初期化し（Ｓ３７１）、再現対象集約テーブルの第１レコードの画面遷移順に１を設定する（Ｓ３７２）。次に、遷移番号付加部３１２は、再現対象集約テーブルに複数のレコードが存在するか否かの判断を行い、存在しない場合（Ｓ３７３，Ｎ）、このフローは終了し、存在する場合（Ｓ３７３，Ｙ）、次の処理へ移行する。
【０１１２】
次に、遷移番号付加部３１２は、ｎを１増加させ（Ｓ３７４）、再現対象集約テーブルの第ｎレコードを読み込む（Ｓ３７５）。次に、遷移番号付加部３１２は、画面ＩＤが第（ｎ−１）レコードと同一であるか否かの判断を行う（Ｓ３７６）。同一である場合（Ｓ３７６，Ｙ）、遷移番号付加部３１２は、再現対象集約テーブルの第ｎレコードの画面遷移順に、第（ｎ−１）レコードの画面遷移順と同じ値を設定し（Ｓ３７７）、同一でない場合（Ｓ３７６，Ｎ）、再現対象集約テーブルの第ｎレコードの画面遷移順に、第（ｎ−１）レコードの画面遷移順の値＋１を設定し（Ｓ３７８）、処理Ｓ３７９へ移行する。次に、遷移番号付加部３１２は、再現対象集約テーブルの最終レコードを処理したか否かの判断を行い、最終レコードを処理していない場合（Ｓ３７９，Ｎ）、処理Ｓ３７４へ戻り、最終レコードを処理した場合（Ｓ３７９，Ｙ）、このフローは終了する。
【０１１３】
次に、押下ボタン順付加処理について説明する。
【０１１４】
図４３は、本実施の形態に係る押下ボタン順付加処理の動作の一例を示すフローチャートである。まず、遷移番号付加部３１２は、再現対象集約テーブルにおけるレコードの番号を示す変数ｎを１に初期化し（Ｓ３８１）、再現対象集約テーブルの第ｎレコードを読み込む（Ｓ３８２）。次に、遷移番号付加部３１２は、読み込んだレコードにボタンＩＤが設定されているか否かの判断を行い、
設定されていない場合（Ｓ３８３，Ｎ）、このフローは終了する。設定されている場合（Ｓ３８３，Ｙ）、遷移番号付加部３１２は、第ｎレコードの押下順にｎを設定し（Ｓ３８４）、ｎを１増加させる（Ｓ３８５）。次に、遷移番号付加部３１２は、再現対象集約テーブルの最終レコードを処理したか否かの判断を行い、最終レコードを処理していない場合（Ｓ３８６，Ｎ）、処理Ｓ３８２へ戻り、最終レコードを処理した場合（Ｓ３８６，Ｙ）、このフローは終了する。
【０１１５】
なお、本実施の形態においては、ボタン押下を契機として画面遷移が行われる場合について説明したが、他の契機により画面遷移が行われる場合であっても本発明を適用することができる。
【０１１６】
次に、データ遷移付加処理について説明する。
【０１１７】
図４４は、本実施の形態に係るデータ遷移付加処理の動作の一例を示すフローチャートである。まず、遷移番号付加部３１２は、再現対象集約テーブルにおける全てレコードを順（タイムスタンプの昇順）に読み込み、データＩＤ（ｒｅｓｐｏｎｓｅ）、データ（ｒｅｓｐｏｎｓｅ）、データＩＤ（ｒｅｑｕｅｓｔ）、データ（ｒｅｑｕｅｓｔ）、押下順を読み取る（Ｓ３９１）。次に、遷移番号付加部３１２は、再現対象集約テーブル内に存在するデータＩＤ（ｒｅｓｐｏｎｓｅ）の値毎のデータ遷移管理テーブルＡを作成し、再現データ記憶部３１５に格納する（Ｓ３９２）。
【０１１８】
図４５は、本実施の形態に係るデータ遷移管理テーブルＡの内容の一例を示す図である。上述したようにデータＩＤ（ｒｅｓｐｏｎｓｅ）の値毎のｒｅｓｐｏｎｓｅデータ遷移管理テーブルＡが作成される。ここでは、データＩＤ（ｒｅｓｐｏｎｓｅ）が２種類の値（購入株価、確定株価）を持つため、２個のデータ遷移管理テーブルＡが作成される。それぞれのデータ遷移管理テーブルＡは、データ値と押下順の項目を持つ。データ遷移管理テーブルＡにおけるデータ値は、再現対象集約テーブルにおけるデータ（ｒｅｓｐｏｎｓｅ）に対応し、押下順は、再現対象集約テーブルにおける押下順に対応する。
【０１１９】
次に、遷移番号付加部３１２は、データ遷移管理テーブルＡにおける各レコードのデータ値として、再現対象集約テーブルにおいて対応するレコードのデータ（ｒｅｓｐｏｎｓｅ）の値を設定し、データ遷移管理テーブルＡにおける各レコードの押下順として、再現対象集約テーブルにおける前レコードの押下順の値を設定する（Ｓ３９３）。
【０１２０】
次に、遷移番号付加部３１２は、各データ遷移管理テーブルＡにおいて、直前のレコードのデータ値と重複するデータ値を持つレコードを取得し、その押下順を直前のレコードの押下順に追加し、取得したレコードを削除する（Ｓ３９４）。
【０１２１】
次に、遷移番号付加部３１２は、再現対象集約テーブル内に存在したデータＩＤ（ｒｅｑｕｅｓｔ）の値毎にデータ遷移テーブルＢを作成し、再現データ記憶部３１５に格納する（Ｓ３９５）。
【０１２２】
図４６は、本実施の形態に係るデータ遷移管理テーブルＢの内容の一例を示す図である。ここでは、データＩＤ（ｒｅｑｕｅｓｔ）が２種類の値（購入株数、確定株数）を持つため、２個のデータ遷移管理テーブルＢが作成される。それぞれのデータ遷移管理テーブルＢは、データ値の項目を持つ。データ遷移管理テーブルＢにおけるデータ値は、再現対象集約テーブルにおけるデータ（ｒｅｑｕｅｓｔ）に対応する。
【０１２３】
次に、遷移番号付加部３１２は、データ遷移管理テーブルＢにおける各レコードのデータ値として、再現対象集約テーブルにおいて対応するレコードのデータ（ｒｅｑｕｅｓｔ）の値を設定する（Ｓ３９６）。
【０１２４】
次に、遷移番号付加部３１２は、各データ遷移管理テーブルＢにおいて、直前のレコードのデータ値と重複するデータ値を持つレコードを削除し（Ｓ３９７）、このフローは終了する。
【０１２５】
上述した遷移番号付加処理によれば、対象とする一連の操作において遷移した画面の順序及び操作の順序を抽出することができる。
【０１２６】
なお、本実施の形態においては、データ（ｒｅｓｐｏｎｓｅ）が変化するため、データＩＤ（ｒｅｓｐｏｎｓｅ）の値毎のデータ遷移管理テーブルＡにデータ値と押下順を設定したが、データ（ｒｅｑｕｅｓｔ）が変化する場合、データＩＤ（ｒｅｑｕｅｓｔ）の値毎のデータ遷移管理テーブルＢにデータ値と押下順を設定しても良い。
【０１２７】
次に、再現画像作成処理について説明する。
【０１２８】
再現画像作成処理に用いる情報である画面画像雛形ＤＢ３２１、ボタン上書き情報ＤＢ３２２、データ上書き情報ＤＢ３２３は、予め作成され、記憶装置に格納される。
【０１２９】
図４７は、本実施の形態に係る画面画像雛形ＤＢの内容の一例を示す表である。画面画像雛形ＤＢ３２１は、項目として、画面ＩＤと画像データ所在を有する。画面画像雛形ＤＢ３２１における画面ＩＤは、再現対象集約テーブルにおける画面ＩＤに対応し、画像データ所在は、画面画像雛形データのパスを示す。画面画像雛形データは、画面ＩＤに対応するＨＴＭＬフォームが所定の画面サイズで表示された場合の画面の画像であり、値の無い状態で予め作成され、画像データ所在に保存される。
【０１３０】
図４８は、本実施の形態に係るボタン上書き情報ＤＢの内容の一例を示す表である。ボタン上書き情報ＤＢ３２２は、項目として、ボタンＩＤ、画面ＩＤ、上書き座標、上書き画像を有する。ボタン上書き情報ＤＢ３２２におけるボタンＩＤは、再現対象集約テーブルにおけるボタンＩＤに対応し、画面ＩＤは、再現対象集約テーブルにおける画面ＩＤに対応する。上書き座標は、画面ＩＤに対応するＨＴＭＬフォームが所定の画像サイズで表示された場合のボタンの位置を示す座標（Ｘ，Ｙ）である。上書き画像は、ボタンの位置を強調するための画像である。
【０１３１】
図４９は、本実施の形態に係るデータ上書き情報ＤＢの内容の一例を示す表である。データ上書き情報ＤＢ３２３は、項目として、データＩＤ、画面ＩＤ、上書き座標、シフト座標を有する。データ上書き情報ＤＢ３２３におけるデータＩＤは、再現対象集約テーブルにおけるデータＩＤ（ｒｅｓｐｏｎｓｅ）またはデータＩＤ（ｒｅｑｕｅｓｔ）に対応し、画面ＩＤは、再現対象集約テーブルにおける画面ＩＤに対応する。上書き座標は、画面ＩＤに対応するＨＴＭＬフォームが所定の画像サイズで表示された場合のデータの位置を示す座標（Ｘ，Ｙ）である。シフト座標は、上書きするデータの位置をシフトさせるための座標の単位（Ｘ，Ｙ）である。
【０１３２】
なお、再現画像作成部３１３は、再現画像作成処理の前に、予め設定された画面サイズに基づいて、画面ＩＤに対応するＨＴＭＬフォームを表示された画像を作成して画面画像雛形データを作成しても良い。また、再現画像作成部３１３は、予め設定された画面サイズに基づいて、上書き座標を算出しても良い。また、再現画像作成部３１３は、予め設定された画面サイズに基づいて、上書き座標及びシフト座標を算出しても良い。
【０１３３】
図５０は、本実施の形態に係る再現画像作成処理の動作の一例を示すフローチャートである。まず、再現画像作成部３１３は、再現対象集約テーブルを全て読み込む（Ｓ４１１）。次に、再現画像作成部３１３は、画面画像雛形ＤＢ３２１に基づいて、再現対象集約テーブルの各画面ＩＤに対応する画面画像雛形データを取得し、各画面ＩＤに対応する上書き再現画面画像データとして再現データ記憶部３１５に格納する（Ｓ４１２）。ここで、再現画像作成部３１３は、まず画面画像雛形ＤＢ３２１において画面ＩＤに対応する画像データ所在を取得し、取得した画像データ所在から画面画像雛形データを取得する。
【０１３４】
次に、再現画像作成部３１３は、再現対象集約テーブルにおけるボタンＩＤの全てを取得し、ボタン上書き情報ＤＢ３２２に基づいて、上書き再現画面画像データへ画像を上書きするボタン上書き処理を行う（Ｓ４１３）。ここで、再現画像作成部３１３は、ボタンＩＤをキーにしてボタン上書き情報ＤＢ３２２を参照することにより上書き座標と上書き画面を取得し、上書き再現画面画像データ上の上書き座標の位置に上書き画像を上書きする。
【０１３５】
次に、再現画像作成部３１３は、再現対象集約テーブルの押下順の値が設定されている全てのレコードにおいて、ボタンＩＤ、画面ＩＤ、押下順、時間差を読み取り、ボタンＩＤをキーにしてボタン上書き情報ＤＢ３２２を参照することにより上書き座標を取得し、押下順の値及び時間差の値を画像として、上書き再現画面画像データ上の上書き座標の位置の近傍に上書きするデータ上書き処理を行い（Ｓ４１４）、このフローは終了する。
【０１３６】
次に、データ上書き処理について説明する。
【０１３７】
図５１は、本実施の形態に係るデータ上書き処理の動作の一例を示すフローチャートである。まず、再現画像作成部３１３は、データ遷移管理テーブルＡのレコードの番号を示す変数ｎを０に初期化する（Ｓ４２１）。次に、再現画像作成部３１３は、データ遷移管理テーブルＡの（ｎ＋１）番目のレコードを読み込む（Ｓ４２２）。次に、再現画像作成部３１３は、データ遷移管理テーブルＡとデータ上書き情報ＤＢ３２３に基づいてデータ座標を算出し、データ遷移管理テーブルＡの押下順とデータ値を、対応する上書き再現画面画像データ上のデータ座標に上書きする（Ｓ４２３）。データ座標は、上書き再現画面画像データ上に配置される押下順とデータ値の座標である。ここで、再現画像作成部３１３は、データ遷移管理テーブルＡのデータＩＤ、画面ＩＤをキーにして、データ上書き情報ＤＢ３２３の上書き座標、シフト座標を取得し、（上書き座標）＋（シフト座標）＊ｎをデータ座標とする。
【０１３８】
次に、再現画像作成部３１３は、ｎを１増加させ（Ｓ４２４）、データ遷移管理テーブルＡの最終レコードまで処理したか否かの判断を行い、最終レコードまで処理していない場合（Ｓ４２５，Ｎ）、処理Ｓ４２２へ戻り、最終レコードまで処理した場合（Ｓ４２５，Ｙ）、次の処理へ移行する。次に、再現画像作成部３１３は、全てのデータ遷移管理テーブルＡについて処理したか否かの判断を行い、全てのデータ遷移管理テーブルＡについて処理していない場合（Ｓ４２６，Ｎ）、処理Ｓ４２１へ戻って次のデータ遷移管理テーブルＡについての処理を行い、全てのデータ遷移管理テーブルＡについて処理した場合（Ｓ４２６，Ｙ）、次の処理へ移行する。
【０１３９】
次に、再現画像作成部３１３は、データ遷移管理テーブルＢのレコードの番号を示す変数ｎを０に初期化する（Ｓ４３１）。次に、再現画像作成部３１３は、データ遷移管理テーブルＢの（ｎ＋１）番目のレコードを読み込む（Ｓ４３２）。次に、再現画像作成部３１３は、データ遷移管理テーブルＢとデータ上書き情報ＤＢ３２３に基づいてデータ座標を算出し、データ遷移管理テーブルＢの押下順とデータ値を、対応する上書き再現画面画像データ上のデータ座標に上書きする（Ｓ４３３）。ここで、再現画像作成部３１３は、データ遷移管理テーブルＢのデータＩＤ、画面ＩＤをキーにして、データ上書き情報ＤＢ３２３の上書き座標、シフト座標を取得し、（上書き座標）＋（シフト座標）＊ｎをデータ座標とする。
【０１４０】
次に、再現画像作成部３１３は、ｎを１増加させ（Ｓ４３４）、データ遷移管理テーブルＢの最終レコードまで処理したか否かの判断を行い、最終レコードまで処理していない場合（Ｓ４３５，Ｎ）、処理Ｓ４３２へ戻り、最終レコードまで処理した場合（Ｓ４３５，Ｙ）、次の処理へ移行する。次に、再現画像作成部３１３は、全てのデータ遷移管理テーブルＢについて処理したか否かの判断を行い、全てのデータ遷移管理テーブルＢについて処理していない場合（Ｓ４３６，Ｎ）、処理Ｓ４３１へ戻って次のデータ遷移管理テーブルＢについての処理を行い、全てのデータ遷移管理テーブルＢについて処理した場合（Ｓ４３６，Ｙ）、このフローは終了する。
【０１４１】
上述した再現画像生成処理によれば、対象とする一連の画面に対して、各画面における操作の内容及び順序、表示の内容及び順序を付加した画面を生成することができる。また、ボタンなどのクリックの操作であれば、フォームの画像にクリックされた位置を強調する画像、操作の順序、前の操作との時間差等を付加し、値の入力や表示を伴う操作であれば、フォームの画像の値の位置付近に値と操作の順序、前の操作との時間差等を付加することにより、オペレータは一連の操作を容易に把握することができる。
【０１４２】
次に、再現画像表示処理について説明する。
【０１４３】
図５２は、本実施の形態に係る再現画像表示処理の動作の一例を示すフローチャートである。まず、再現画像表示部３１４は、再現対象集約テーブルから、各上書き再現画面画像データの画面ＩＤに対応する画面遷移順を取得し、各上書き再現画面画像データの属性とする（Ｓ４４１）。次に、各上書き再現画面画像データとその属性を合わせて再現画面として表示し（Ｓ４４２）、このフローは終了する。
【０１４４】
次に、再現画像表示処理により表示された再現画面の例について説明する。
【０１４５】
図５３は、本実施の形態に係る再現画面の一例を示す図である。この再現画面は、２つの上書き再現画面画像データを横に並べて表示する。２つの上書き再現画面画像データのうち、左側に表示される第１の上書き再現画面画像データは、画面画像雛形ＤＢ３２１に格納された第１の画面画像雛形データを元に作成され、第２の上書き再現画面画像データは、画面画像雛形ＤＢ３２１に格納された第２の画面画像雛形データを元に作成される。図５４は、本実施の形態に係る第１の画面画像雛形データの一例を示す図である。図５５は、本実施の形態に係る第２の画面画像雛形データの一例を示す図である。第１の画面画像雛形データの画面ＩＤは、“株購入”であり、第２の画面画像雛形データの画面ＩＤは、“取引確定”である。これらの画面画像雛形データは、上書きする前の上書き再現画面画像データである。
【０１４６】
また、ボタン上書き処理により、第１の上書き再現画面画像データには、操作されたボタン（“更新”、“取引実行”）を指す上書き画像が上書き座標に上書きされ、第２の上書き再現画面画像データには、操作されたボタン（“ＣＡＮＣＥＬ”）を指す上書き画像が上書き座標に上書きされる。
【０１４７】
また、データ上書き処理により第１の上書き再現画面画像データには、入力または表示されたデータ（“購入株価”、“購入株数”）の値を示す画像がデータ座標に上書きされ、第２の上書き再現画面画像データには操作されたデータ（“確定株価”、“確定株数”）の値がデータ座標に上書きされる。更に、データ上書き処理により第１の上書き再現画面画像データ及び第２の上書き再現画面画像データには、ボタン押下の時間差、ボタンの押下順（１、２、３）の値がデータ座標に上書きされる。
【０１４８】
この例においては、２つの上書き再現画面画像データを表示するとしたが、見易い画面サイズとなるように画面画像雛形データを作成し、その画面サイズに基づいて再現画面に表示する上書き再現画面画像データの数を決定しても良い。あるいは、再現画面に表示する上書き再現画面画像データの数に基づいて画面サイズを決定し、その画面サイズに合わせて、画面画像雛形ＤＢ３２１、ボタン上書き情報ＤＢ３２２、データ上書き情報ＤＢ３２３を作成しても良い。
【０１４９】
上述した再現画像表示処理によれば、再現画像生成処理により生成された一連の画面と、各画面の順序を表示することができる。また、複数の上書き画面画像データを表示することにより、オペレータは画面遷移を伴う操作を容易に把握することができる。
【０１５０】
また、本実施の形態に係る画面生成装置は、情報処理装置に容易に適用することができ、情報処理装置の性能をより高めることができる。ここで、情報処理装置には、例えばサーバ、コールセンター端末、管理者端末等が含まれ得る。
【０１５１】
更に、画面生成装置を構成するコンピュータにおいて上述した各ステップを実行させるプログラムを、画面生成プログラムとして提供することができる。上述したプログラムは、コンピュータにより読取り可能な記録媒体に記憶させることによって、画面生成装置を構成するコンピュータに実行させることが可能となる。ここで、上記コンピュータにより読取り可能な記録媒体としては、ＲＯＭやＲＡＭ等のコンピュータに内部実装される内部記憶装置、ＣＤ−ＲＯＭやフレキシブルディスク、ＤＶＤディスク、光磁気ディスク、ＩＣカード等の可搬型記憶媒体や、コンピュータプログラムを保持するデータベース、或いは、他のコンピュータ並びにそのデータベースや、更に回線上の伝送媒体をも含むものである。
【０１５２】
なお、取得ステップは、実施の形態における通信データ取得処理と通信データ抽出処理に対応する。生成ステップは、実施の形態における画面データ生成処理、再現対象データ集約処理、遷移番号付加処理、再現画像作成処理に対応する。第１表示ステップは、実施の形態における画面制御処理に対応する。第２表示ステップは、実施の形態における再現画面表示処理に対応する。また、取得部は、実施の形態におけるＨＴＴＰメッセージ観測部１１１、ＨＴＴＰ解析部１１２、通信データ抽出部１２１に対応する。生成部は、実施の形態における画面データ生成部１２２、再現対象データ集約部３１１、遷移番号付加部３１２、再現画像作成部３１３に対応する。
【０１５３】
また、第１データは、実施の形態におけるＨＴＭＬフォームに対応する。また、第１画面は、実施の形態におけるＷｅｂ画面に対応する。第２データは、実施の形態における応答入力、引数データ、ボタンの種類に対応する。第２画面は、実施の形態における上書き再現画面画像データに対応する。第３データは、実施の形態における応答入力埋め込み処理により生成されたＨＴＭＬフォーム、上書き再現画面画像データに対応する。第４データは、実施の形態における画像データに対応する。操作は、実施の形態におけるボタンのクリックや値の入力に対応する。操作順序は、実施の形態における押下順、データ遷移管理テーブルＡ、データ遷移管理テーブルＢに対応する。画面順序は、実施の形態における画面遷移順に対応する。画面順序は、実施の形態における画面遷移順に対応する。操作位置を強調する図形は、実施の形態における上書き画像に対応する。操作位置は、実施の形態における上書き座標に対応する。操作位置の近傍は、実施の形態におけるデータ座標に対応する。
【０１５４】
（付記１）  サーバとの通信に基づいてクライアントに表示された画面の生成を該クライアントと異なるコンピュータに実行させる画面生成プログラムであって、
前記サーバから前記クライアントに送信されたデータであってユーザによる操作を受け付ける第１画面を前記クライアントに表示させるためのデータである第１データと、前記クライアントから前記サーバに送信されたデータであって前記クライアントに表示された第１画面で受け付けられた操作を示すデータである第２データとを取得する取得ステップと、
前記取得ステップにより取得された第１データ及び第２データに基づいて、第２データに基づく情報である操作情報を、第１画面に付加してなる第２画面を表示させるための第３データを生成する生成ステップと
をコンピュータに実行させる画面生成プログラム。
（付記２）  付記１に記載の画面生成プログラムにおいて、
前記取得ステップは更に、前記サーバから前記クライアントに送信されたデータであって前記クライアントに画面を表示させるための第４データを取得することを特徴とする画面生成プログラム。
（付記３）  付記１または付記２に記載の画面生成プログラムにおいて、
前記取得ステップは、前記サーバと前記クライアントの間の通信がキャプチャされたデータであるキャプチャデータから、第１データと第２データを取得することを特徴とする画面生成プログラム。
（付記４）  付記３に記載の画面生成プログラムにおいて、
前記取得ステップは、前記クライアントから前記サーバへのメッセージであるリクエストメッセージと前記サーバから前記クライアントへのメッセージであるレスポンスメッセージとを前記キャプチャデータから抽出し、抽出したレスポンスメッセージから第１データを取得し、該レスポンスメッセージの直後のリクエストメッセージから第２データを取得することを特徴とする画面生成プログラム。
（付記５）  付記４に記載の画面生成プログラムにおいて、
前記取得ステップは、前記サーバのエラーログにおけるエラー内容を取得し、前記メッセージの中から該エラー内容に対応するメッセージを抽出し、前記メッセージに関連するメッセージを抽出し、該メッセージから第１データと第２データを取得することを特徴とする画面生成プログラム。
（付記６）  付記４または付記５に記載の画面生成プログラムにおいて、
第１データは、フォームであり、第２データは、リクエストメッセージの引数であることを特徴とする画面生成プログラム。
（付記７）  付記６に記載の画面生成プログラムにおいて、
前記生成ステップは、前記フォームに前記引数の値の記述を追加したものを第３データとすることを特徴とする画面生成プログラム。
（付記８）  付記１乃至付記７のいずれかに記載の画面生成プログラムにおいて、
更に、画面を表示させるためのデータであって第３データを含む複数の画面データの中から、ユーザインタフェースからの指示に基づいて画面データの選択を行い、該選択された画面データに基づく画面の表示を行う第１表示ステップをコンピュータに実行させることを特徴とする画面生成プログラム。
（付記９）  付記８に記載の画面生成プログラムにおいて、
前記第１表示ステップは、前記選択された画面データに基づく画面に加えて、前記サーバのエラーログにおけるエラー内容のうち第２データに対応するエラー内容を表示することを特徴とする画面生成プログラム。
（付記１０）  付記８または付記９に記載の画面生成プログラムにおいて、
前記第１表示ステップは、前記選択された画面データに基づく画面に加えて、予め記憶された第２データに関する情報のうち前記入力内容に対応する情報を表示することを特徴とする画面生成プログラム。
（付記１１）  付記１乃至付記７のいずれかに記載の画面生成プログラムにおいて、
前記操作情報は、前記操作の順序である操作順序を含むことを特徴とする画面生成プログラム。
（付記１２）  付記１１に記載の画面生成プログラムにおいて、
前記生成ステップは、第１画面において操作が行われた位置である操作位置を第２データに基づいて取得し、第１画面の前記操作位置に基づく位置に前記操作情報を付加した画面を第２画面とすることを特徴とする画面生成プログラム。
（付記１３）  付記１１または付記１２に記載の画面生成プログラムにおいて、
前記生成ステップは、複数の第１画面が前記クライアントに表示された順序である画面順序を複数の第１データに基づいて取得すると共に、複数の第１画面に対応する第３データを生成し、
更に、複数の第３データと前記画面順序を示す情報とを対応付けて表示する第２表示ステップをコンピュータに実行させることを特徴とする画面生成プログラム。
（付記１４）  付記１１乃至付記１３のいずれかに記載の画面生成プログラムにおいて、
第２データが前記操作位置のクリックを示す場合、前記操作情報は前記操作位置を強調する図形を含み、前記生成ステップは、第１画面の前記操作位置の近傍に前記操作情報を付加した画面を第２画面とすることを特徴とする画面生成プログラム。
（付記１５）  付記１１乃至付記１４のいずれかに記載の画面生成プログラムにおいて、
第２データが前記操作位置への値の入力または表示を示す場合、前記操作情報は該値を含み、前記生成ステップは、第１画面の前記操作位置の近傍に前記操作情報を付加した画面を第２画面とすることを特徴とする画面生成プログラム。
（付記１６）  付記１１乃至付記１５のいずれかに記載の画面生成プログラムにおいて、
前記生成ステップは更に、第２データに基づいて前記操作の時刻を取得し、前記操作の時刻に関する情報を前記操作情報に含めることを特徴とする画面生成プログラム。
（付記１７）  付記１６に記載の画面生成プログラムにおいて、
前記操作の時刻に関する情報は、対象とする操作と該操作の直前の操作との時間差であることを特徴とする画面生成プログラム。
（付記１８）  付記１１乃至付記１７のいずれかに記載の画面生成プログラムにおいて、
前記生成ステップは、所定の画面サイズの第１画面の画像を取得すると共に、前記第１データ及び前記所定の画面サイズに基づく前記操作位置を取得し、前記第１画面の画像と前記操作情報と前記操作位置とに基づいて第２画面の画像を生成し、該画像を第３データとすることを特徴とする画面生成プログラム。
（付記１９）  サーバとの通信に基づいてクライアントに表示された画面の生成を行う画面生成装置であって、
前記サーバから前記クライアントに送信されたデータであってユーザによる操作を受け付ける第１画面を前記クライアントに表示させるためのデータである第１データと、前記クライアントから前記サーバに送信されたデータであって前記クライアントに表示された第１画面で受け付けられた操作を示すデータである第２データとを取得する取得部と、
前記取得部により取得された第１データ及び第２データに基づいて、第２データに基づく情報である操作情報を、第１画面に付加してなる第２画面を表示させるための第３データを生成する生成部と
を備える画面生成装置。
（付記２０）  サーバとの通信に基づいてクライアントに表示された画面の生成を該クライアントと異なる情報処理装置で実行する画面生成方法であって、
前記サーバから前記クライアントに送信されたデータであってユーザによる操作を受け付ける第１画面を前記クライアントに表示させるためのデータである第１データと、前記クライアントから前記サーバに送信されたデータであって前記クライアントに表示された第１画面で受け付けられた操作を示すデータである第２データとを取得する取得ステップと、
前記取得ステップにより取得された第１データ及び第２データに基づいて、第２データに基づく情報である操作情報を、第１画面に付加してなる第２画面を表示させるための第３データを生成する生成ステップと
を実行する画面生成方法。
【図面の簡単な説明】
【０１５５】
【図１】実施の形態１に係るＷｅｂシステムの構成の一例を示すブロック図である。
【図２】実施の形態１に係る画面再現装置の構成の一例を示すブロック図である。
【図３】実施の形態１に係る操作ログの一例を示す表である。
【図４】実施の形態１に係るエラーログの一例を示す表である。
【図５】ＨＴＴＰリクエストメッセージのデータ構造の一例を示す表である。
【図６】ＨＴＴＰレスポンスメッセージのデータ構造の一例を示す表である。
【図７】ＨＴＴＰメッセージの一例を示すシーケンス図である。
【図８】実施の形態１に係る通信データ取得処理の動作の一例を示すフローチャートである。
【図９】実施の形態１に係るＨＴＴＰプロトコル解析処理の動作の一例を示すフローチャートである。
【図１０】実施の形態１に係る通信データ記憶部１１３の内容の一例を示す表である。
【図１１】実施の形態１に係る通信データ抽出処理の動作の一例を示すフローチャートである。
【図１２】実施の形態１に係る画面データ生成処理の動作の一例を示すフローチャートである。
【図１３】実施の形態１に係る応答入力埋め込み処理の動作の一例を示すフローチャートである。
【図１４】実施の形態１に係る応答入力埋め込み処理の動作の具体例を示す図である。
【図１５】実施の形態１に係る画面データ記憶部の内容の一例を示す表である。
【図１６】実施の形態１に係るＧＵＩの一例を示す図である。
【図１７】実施の形態１に係る画面制御処理の動作の一例を示すフローチャートである。
【図１８】実施の形態１に係る画面表示部に表示される画面の具体例を示す図である。
【図１９】実施の形態１に係る画面付加情報のデータ構造の一例を示すブロック図である。
【図２０】実施の形態１に係る操作−ＨＴＭＬフォーム対応付けテーブルの内容の一例を示す表である。
【図２１】実施の形態１に係るエラー内容−応答入力対応付けテーブルの内容の一例を示す表である。
【図２２】実施の形態１に係る応答入力支援メッセージテーブルの内容の一例を示す表である。
【図２３】実施の形態１に係る第１の具体例の表示に用いられる情報の一例を示す図である。
【図２４】実施の形態１に係る第１の具体例におけるＧＵＩの表示の一例を示す図である。
【図２５】実施の形態１に係る第２の具体例における画面データの一例を示す図である。
【図２６】実施の形態１に係る第２の具体例におけるＧＵＩの表示の一例を示す図である。
【図２７】クライアントに表示された株購入画面の第１状態を示す図である。
【図２８】クライアントに表示された株購入画面の第２状態を示す図である。
【図２９】クライアントに表示された株購入画面の第３状態を示す図である。
【図３０】クライアントに表示された株購入画面の第４状態を示す図である。
【図３１】クライアントに表示された取引確定画面の第１状態を示す図である。
【図３２】クライアントに表示された株購入画面の第５状態を示す図である。
【図３３】実施の形態１に係る画面再現装置による一覧画面の一例を示す図である。
【図３４】実施の形態２に係る画面再現装置の構成の一例を示すブロック図である。
【図３５】実施の形態２に係る画面再現処理の動作の一例を示すフローチャートである。
【図３６】実施の形態２に係る再現対象データ集約処理の動作の一例を示すフローチャートである。
【図３７】実施の形態２に係る再現対象レコード抽出テーブルの一例を示す表である。
【図３８】実施の形態２に係る再現対象集約テーブルの内容の一例を示す表である。
【図３９】実施の形態２に係るｒｅｓｐｏｎｓｅレコード解析処理の動作の一例を示すフローチャートである。
【図４０】実施の形態２に係るｒｅｑｕｅｓｔレコード解析処理の動作の一例を示すフローチャートである。
【図４１】実施の形態２に係る遷移番号付加処理の動作の一例を示すフローチャートである。
【図４２】実施の形態２に係る画面遷移順付加処理の動作の一例を示すフローチャートである。
【図４３】実施の形態２に係る押下ボタン順付加処理の動作の一例を示すフローチャートである。
【図４４】実施の形態２に係るデータ遷移付加処理の動作の一例を示すフローチャートである。
【図４５】実施の形態２に係るデータ遷移管理テーブルＡの内容の一例を示す図である。
【図４６】実施の形態２に係るデータ遷移管理テーブルＢの内容の一例を示す図である。
【図４７】実施の形態２に係る画面画像雛形ＤＢの内容の一例を示す表である。
【図４８】実施の形態２に係るボタン上書き情報ＤＢの内容の一例を示す表である。
【図４９】実施の形態２に係るデータ上書き情報ＤＢの内容の一例を示す表である。
【図５０】実施の形態２に係る再現画像作成処理の動作の一例を示すフローチャートである。
【図５１】実施の形態２に係るデータ上書き処理の動作の一例を示すフローチャートである。
【図５２】実施の形態２に係る再現画像表示処理の動作の一例を示すフローチャートである。
【図５３】実施の形態２に係る再現画面の一例を示す図である。
【図５４】実施の形態２に係る第１の画面画像雛形データの一例を示す図である。
【図５５】実施の形態２に係る第２の画面画像雛形データの一例を示す図である。
【符号の説明】
【０１５６】
１  クライアント、２  Ｗｅｂサーバ、３  ネットワークスイッチ、４，７  画面再現装置、５  操作ログ記憶部、６  エラーログ記憶部、１１１  ＨＴＴＰメッセージ観測部、１１２  ＨＴＴＰ解析部、１１３  通信データ記憶部、１２１  通信データ抽出部、１２２  画面データ生成部、１２３  画面部品ファイル記憶部、１２４  画面データ記憶部、１３２  画面付加情報記憶部、１３３  画面制御部、１３４  画面表示部、１５１  タイムスタンプ表示部、１５２  画面データ表示部、１５３  最初画面移動ボタン、１５４  後退ボタン、１５５  前進ボタン、１５６  最後画面移動ボタン、１５７  画面スライダ、１５８  エラーログ表示部、１５９  入力支援メッセージ表示部、１６１  操作−ＨＴＭＬフォーム対応付けテーブル、１６２  エラー内容−応答入力引数対応付けテーブル、１６３  応答入力支援メッセージテーブル、３１１  再現対象データ集約部、３１２  遷移番号付加部、３１３  再現画像作成部、３１４  再現画像表示部、３１５  再現データ記憶部、３２１  画面画像雛形ＤＢ、３２２  ボタン上書き情報ＤＢ、３２３  データ上書き情報ＤＢ。
【図１】
2007280357.tif 000003
【図２】
2007280357.tif 000004
【図３】
2007280357.tif 000005
【図４】
2007280357.tif 000006
【図５】
2007280357.tif 000007
【図６】
2007280357.tif 000008
【図７】
2007280357.tif 000009
【図８】
2007280357.tif 000010
【図９】
2007280357.tif 000011
【図１０】
2007280357.tif 000012
【図１１】
2007280357.tif 000013
【図１２】
2007280357.tif 000014
【図１３】
2007280357.tif 000015
【図１４】
2007280357.tif 000016
【図１５】
2007280357.tif 000017
【図１６】
2007280357.tif 000018
【図１７】
2007280357.tif 000019
【図１８】
2007280357.tif 000020
【図１９】
2007280357.tif 000021
【図２０】
2007280357.tif 000022
【図２１】
2007280357.tif 000023
【図２２】
2007280357.tif 000024
【図２３】
2007280357.tif 000025
【図２４】
2007280357.tif 000026
【図２５】
2007280357.tif 000027
【図２６】
2007280357.tif 000028
【図２７】
2007280357.tif 000029
【図２８】
2007280357.tif 000030
【図２９】
2007280357.tif 000031
【図３０】
2007280357.tif 000032
【図３１】
2007280357.tif 000033
【図３２】
2007280357.tif 000034
【図３３】
2007280357.tif 000035
【図３４】
2007280357.tif 000036
【図３５】
2007280357.tif 000037
【図３６】
2007280357.tif 000038
【図３７】
2007280357.tif 000039
【図３８】
2007280357.tif 000040
【図３９】
2007280357.tif 000041
【図４０】
2007280357.tif 000042
【図４１】
2007280357.tif 000043
【図４２】
2007280357.tif 000044
【図４３】
2007280357.tif 000045
【図４４】
2007280357.tif 000046
【図４５】
2007280357.tif 000047
【図４６】
2007280357.tif 000048
【図４７】
2007280357.tif 000049
【図４８】
2007280357.tif 000050
【図４９】
2007280357.tif 000051
【図５０】
2007280357.tif 000052
【図５１】
2007280357.tif 000053
【図５２】
2007280357.tif 000054
【図５３】
2007280357.tif 000055
【図５４】
2007280357.tif 000056
【図５５】
2007280357.tif 000057