JP2008117093A - ユーザ操作記録・再現方法及び装置 - Google Patents

ユーザ操作記録・再現方法及び装置 Download PDF

Info

Publication number
JP2008117093A
JP2008117093A JP2006298353A JP2006298353A JP2008117093A JP 2008117093 A JP2008117093 A JP 2008117093A JP 2006298353 A JP2006298353 A JP 2006298353A JP 2006298353 A JP2006298353 A JP 2006298353A JP 2008117093 A JP2008117093 A JP 2008117093A
Authority
JP
Japan
Prior art keywords
user
web browser
web
script
event
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.)
Pending
Application number
JP2006298353A
Other languages
English (en)
Inventor
Takeshi Kojima
剛 小島
Ryoichi Ueda
良一 植田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2006298353A priority Critical patent/JP2008117093A/ja
Priority to US11/933,610 priority patent/US20080126931A1/en
Publication of JP2008117093A publication Critical patent/JP2008117093A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)

Abstract

【課題】Webページに対するWebブラウザのユーザ操作やバックグラウンド通信処理内容を記録・再現する。
【解決手段】
バックグラウンド通信処理を提供するオブジェクトを修正し記録/再現する機能を具備させることによりバックグラウンド通信内容を記録/再現する機能を提供する。基本機能として再現処理が提供されていないマウスカーソル移動操作処理は画像等を使用した擬似的なマウスカーソルをWebページ上に表示することで再現処理を提供する。同じく基本機能として再現処理が提供されていないキーボード操作処理は対象となるWebページを解析しキーボードイベントに対し設定されているイベントハンドラを検出し、記録したキーボードイベントと同等の情報をもつオブジェクトを生成し、当該生成したオブジェクトをキーボードイベントの代わりの引数として前記検出したイベントハンドラに渡して実行するスクリプトを生成する機能により再現処理を提供する。
【選択図】図1

Description

本発明は、Webアプリケーションが提供するWebページに対するWebブラウザを用いた利用者ユーザの操作を、記録、再現することを可能とするWebアプリケーション管理技術に関する。
インターネットなどのネットワークにおいて、Webをユーザインタフェースとして利用したアプリケーションのサービスが行われている。Webを利用することによってアプリケーション毎に専用のクライアントプログラムを用意する必要がなく、Webブラウザさえあれば、Webを利用したあらゆるアプリケーションを利用することができる。
Webアプリケーション利用が拡大し、Web上のアプリケーションの使い方の説明や、利用者ユーザのWebアプリケーションの操作行動の確認、Webアプリケーション開発時の動作テストなどの目的のため、Web上の利用者ユーザの操作を記録/再生を行う技術・製品が開発されている。しかしながらこれらの技術は既存のWebページに手を加える必要があったり、利用者ユーザのシステム環境に操作の記録/再生を行うためのソフトウェアのインストールが必要であったりする。
この問題に対処すべく、特許文献1には、Webブラウザに対する操作を記録/再生する、利用者ユーザのシステム環境にWebブラウザ以外の特殊なソフトウェアをインストールする必要のないシステムが開示されている。このシステムではWeb上の操作により発生するイベントを記録/再現する、JavaアプレットおよびJavaScriptを用いたプログラムを対象となるWebページのソースに挿入することで、Webブラウザに対するユーザの操作を記録/再現する機能を実現している。この方法によれば、ユーザのシステム環境に特殊なソフトウェアのインストールの必要なしに既存のWebページに手を加えることなく、Webブラウザに対するユーザの操作を記録/再現する機能を提供することができる。
特開2000−76266号公報
しかし、特許文献1の技術では、Javaアプレットを用いているために最初に記録/再現するプログラムを起動する際に処理時間がかかる。
また、特許文献1には、記録したイベントの再現方法について詳細に記載されていない。例えば通常JavaScriptでは実現不可能なマウスカーソルの移動操作や、キーボード操作の再現処理などについては、実現方法が不明である。
また、JavaScriptによるバックグラウンド通信機能(XMLHttpRequestオブジェクトによるHTTP通信機能)に対する記録/再現処理についても記載されておらず、ユーザの操作により発生したバックグラウンド通信を利用した処理動作の再現はできない。
本発明はこれらの課題に鑑みてなおされたものであり、その目的は、利用者ユーザのシステム環境に特殊なソフトウェアのインストールの必要なしに、JavaScriptが再現処理をサポートしていないイベントに関連した操作及びバックグラウンド通信処理についても再現することを可能とするユーザ操作記録/再現処理装置を提供することである。

上記課題を解決すべく本発明では、Webブラウザが読み込むスクリプトのバックグラウンド通信機能を用いる。また、Webブラウザによる操作を再現するスクリプトを生成し、生成したスクリプトによりWebブラウザでユーザの操作を再現する。
例えば、本発明のWebブラウザに対するユーザの操作を記録するユーザ操作記録方法では、前記Webブラウザは、ユーザの操作により当該Webブラウザで発生したイベントの情報を記録し、記録したイベントの情報を、当該Webブラウザが読み込むスクリプトのバックグラウンド通信機能を用いて、Webサーバに送信する。前記Webサーバは、前記Webブラウザから受信した前記イベントの情報を記録する。
また、Webサーバが提供するユーザ操作再現方法では、前記Webサーバは、Webページに対するユーザのWebブラウザによる操作の記録と、前記Webページに基づき前記操作の記録に記録されている前記Webページに対するユーザのWebブラウザによる操作を再現するスクリプトを生成し、生成した前記スクリプトをWebブラウザに送信する。前記Webブラウザは、前記スクリプトを受信し、受信した前記スクリプトを実行することにより、前記Webページに対するユーザのWebブラウザによる操作を再現する。
本発明のユーザ操作記録・再現方法では、例えば、JavaScriptのバックグラウンド通信機能(XMLHttpRequestオブジェクトの機能)を活用したJavaScriptのみを用いてブラウザ上のユーザの操作を記録・再現する機能をもつWebページを提供することができる。JavaScriptが直接サポートしていないマウスカーソルの移動操作の再現処理については画像などを用いた擬似的なマウスカーソルをWebページ上に表示することによる再現機能を提供することができる。同じくJavaScriptが直接サポートしていないキーボード操作の再現処理については、対象となるWebページを解析しキーボードイベントに対し設定されているイベントハンドラを検出し、記録したキーボードイベントと同等の情報をもつオブジェクトを生成し、当該生成したオブジェクトをキーボードイベントの代わりの引数として前記検出したイベントハンドラに渡して実行するスクリプトを生成する機能により再現処理を提供することができる。また、バックグラウンド通信に対する記録処理についてはバックグラウンド通信処理機能を提供するオブジェクト(XMLHttpRequestオブジェクト)を修正し、通信内容を記録する機能を追加し、バックグラウンド通信処理もユーザ操作の記録と同様に記録処理を行う機能を提供する。バックグラウンド通信に対する再現処理についてもバックグラウンド通信処理機能を提供するオブジェクト(XMLHttpRequestオブジェクト)を修正し、サーバとの通信処理を行う代わりに記録された通信内容を直接再現し、通信が行われたのと同様に処理を実行させる処理実行するスクリプトを生成する機能により再現処理を提供することができる。
以下、図面を参照しながら、本発明の一実施形態について説明する。
図1は、本発明の一実施形態が適用されたネットワークシステムの概略構成図である
本実施形態のネットワークシステムには、ネットワークに接続された複数の情報処理装置10、20が含まれている。これらの情報処理装置の中には、(1)クライアントであるWebブラウザからの要求に応じて提供されるWebページに対し、ユーザの操作情報を記録する処理を追加したり、記録されたユーザの操作を再現する処理を追加したりする情報処理装置(以下、「ユーザ操作記録・再現処理装置」又は「サーバ」という)10と、(2)Webブラウザがインストールされた1台以上の情報処理装置(以下、「Webブラウザ」という)20とが含まれている。
なお、Webブラウザ20はユーザの数だけ存在しうるが、図1では説明のため1つだけ示している。
これら各情報処理装置10,20はそれぞれの機能を実現するためのプログラムの実行に必要な通常のハードウェア構成(CPU,メモリ、プログラムがインストールされたハードディスク等)及び、マウス、キーボードなどの入力装置、ディスプレイ装置を備えている。以下に説明する各要素および機能は、CPUが所定のプログラムを実行することにより実現される。
Webブラウザ20は、その機能部として、ブラウザ基本処理部201を備えている。ブラウザ基本処理部201は、ユーザ操作記録・再現処理装置10から受信したWebページに基づいてディスプレイ装置にWebページを表示する処理や、スクリプトに基づいてユーザ操作の記録・再現処理を行う。
ユーザ操作記録・再現処理装置10は、その機能部として、サーバ基本処理部101と、操作ログ記録部102と、操作再現処理スクリプト生成部103とを備えている。
サーバ基本処理部102は、Webブラウザ20からのユーザ操作記録処理機能をもつWebページの取得要求に応じて、当該ユーザ操作記録処理機能をもつWebページを送信する。そのため、サーバ基本処理部101は、提供する一つ以上のWebページ1011と、操作ログ取得送信処理スクリプト1012を保持し、これらを要求するWebブラウザ20に送信する機能をもつ。
操作ログ記録部102は、操作ログ取得送信処理機能を具備したWebページをロード・表示したWebブラウザ20から送信される操作ログ記録情報を受信し、当該操作ログ記録情報を操作ログ情報104に記録する。
操作再現処理スクリプト生成機能103は、操作ログ情報104から特定の操作ログを読み取り、当該操作ログに対応するWebページに対して当該操作ログに記録されている操作を再現する処理を行うスクリプトを生成する。
このような機能構成により、ユーザ操作記録・再現処理装置10は、ユーザ操作記録機能と、ユーザ操作再現機能を備えることになる。
前者のユーザ操作記録機能は、Webブラウザ20に提供するWebページに対し、ユーザ操作を記録し、ユーザ操作記録・再現処理装置10に当該ユーザ操作情報を送信させ、操作ログ104に記録する、ユーザ操作情報記録送信機能を具備したWebページ1011Aを提供する機能である。
後者のユーザ操作再現機能は、操作ログ104に記録された特定のユーザ操作情報を読み取り、当該ユーザ操作情報に対応するWebページに対して当該操作ログ104に記録されている操作を再現する処理を行うスクリプトを生成する。また、当該ユーザ操作情報に対応するWebページ1011Bと、生成した操作を再現する処理を行う当該スクリプトとを、Webブラウザ20に提供する。
まず、ユーザ操作記録機能について説明する。
図2は、ユーザ操作記録・再現処理装置10によるユーザ操作記録機能を実行する際の情報の流れを示したものである。ユーザ操作記録・再現処理装置10のユーザ操作記録機能により提供される、ユーザ操作記録機能を具備したWebページ1011Aは、操作ログ取得送信処理スクリプト1012を含むか若しくは参照するように記述されている。なお、Webページ1011Aのソースに対し、操作ログ取得送信処理スクリプト1012を含むか参照するための記述は、Webページ1011Aを作成する管理者ユーザが記述する。
図3は、Webページ1011Aの一例である。かかる例では、操作ログ取得送信処理スクリプト1012は、その名称が”operation−logger.js”であり、参照形式により記載されている。
ユーザ操作記録・再現処理装置10のサーバ基本処理部101は、Webブラウザ20からユーザ操作記録処理機能をもつWebページの取得要求を受信すると、対象となるWebページ1011Aおよび操作ログ取得送信処理スクリプト1012を、当該Webブラウザ20に送信する。
Webブラウザ20のブラウザ基本処理部201は、Webページ1011Aおよび操作ログ取得送信処理スクリプト1012を受信すると、操作ログ取得送信処理スクリプト1012を実行し、Webブラウザ20に対するユーザの操作を記録する。そして、記録したユーザ操作情報を、ユーザ操作記録・再現処理装置10に送信する。
ユーザ操作記録・再現処理装置10の操作ログ記録部102は、当該ユーザ操作情報を受信すると、操作ログ104に当該受信したユーザ操作情報を記録する。
図4は、ユーザ操作記録処理の流れを示すフロー図である。
Webブラウザ20のブラウザ基本処理部201は、対象となるWebページ1011Aを読み込むと、そのソースに記載されている参照先の操作ログ取得送信処理スクリプト1012を読み込み、当該スクリプトの実行を開始する。このとき、操作ログ取得送信処理スクリプト1012による操作ログ取得送信処理の実行に先立ち、以下のような初期処理を行う(S101)。
まず、ブラウザ基本処理部201は、操作ログ取得送信処理スクリプト1012に従って、JavaScriptによるバックグラウンド通信を実現するためのオブジェクトXMLHttpRequestを修正し、バックグラウンド通信の通信内容も操作ログとして取得・送信するようにする。
図5は、このようなバックグランド通信の通信内容を操作ログとして取得・送信するようにXMLHttpRequestオブジェクトを修正する処理を記述したJavaScriptの一例である。ただし説明のため左端に行番号を付加している。
XMLHttpRequestオブジェクトでは、openメソッドにより接続先サーバと接続時メソッドを指定され、sendメソッドにより当該接続先サーバにHTTPリクエストが送信される。そして、接続先サーバからHTTPレスポンスを受信するとonload属性に設定されたメソッドが実行される。
そこで、ブラウザ基本処理部201は、sendメソッドを修正し、リクエスト情報をユーザ操作情報して記録するように上書き定義する(図5の9〜17行目)。また、onload属性に対し当該接続先サーバから受信した情報についてもユーザ操作情報として記録する(図5の12行目のsend_xhr_log関数はURL、リクエスト情報、レスポンス情報をユーザ操作記録・再現処理装置10に送信する処理を行うものとする)ようにメソッドを設定する。こうして、バックグラウンド通信の内容を記録する機能を実現する。
さらに、ブラウザ基本処理部201は、Webブラウザ20に対するユーザ操作により発生するイベントの情報を記録するように、イベントを処理するイベントハンドラを定義する。
JavaScriptでは、イベントの種類およびイベントが発生する要素ごとにイベントハンドラを定義することができる。
そこで、ブラウザ基本処理部201は、イベントの種類として、記録する対象のイベントすべてを指定する。また、イベントが発生する要素として、ブラウザで表示しているWebページ全体を指定する。そして、発生したイベントの情報を示す文字列を生成し、生成した文字列をユーザ操作記録情報としてユーザ操作記録・再現処理装置10に送信する処理を、イベントハンドラとして設定する。当該イベントハンドラには、後述するS102〜103を処理するメソッドを実装したものが設定される。
最後に、ブラウザ基本処理部201は、記録したユーザ操作情報をWebブラウザ20のメモリ上に一定量保存しておくための操作ログバッファを初期化する。JavaScriptにより実装する場合の一例としては、Arrayオブジェクト操作ログバッファとして利用する方法が挙げられる。
初期化処理が完了すると、ブラウザ基本処理部201は、Webブラウザ20に対するユーザの操作によるイベント発生を待機する(S102)。
ブラウザ20に対し、ユーザが操作を行い、その操作に関連したイベントが発生すると、ブラウザ基本処理部201は、S101の初期化処理により設定されたイベントハンドラを実行し、発生したイベントに応じて、イベント情報を文字列化する(S103)。
図6は、イベント情報を文字列化したものを記録した一例を示している。ただし説明のために左端に行番号を付加している。
例えば1行目の文字列は、日本時間で2006年7月13日17時46分20秒に、http://log.sample.com/のURLで示されるページで発生した、”mousepanel”のIDのついたタグ要素をターゲットとしてマウスカーソルが要素上に位置したことを示すイベントを文字列化したものである。また、補足情報としてイベント発生時のマウスカーソルがページ内の相対座標で(50,130)に位置していたことを示している。
2行目の文字列は、”keypanel”のIDのついたタグ要素をターゲットとしてキーボードのキーが押し下げられたことを示すイベントを文字列化したものである。補足情報として押し下げられたキーのコードが65であったことを示している。
3行目の文字列は、マウスカーソルが移動したことを示すイベントを文字列化したものである。補足情報として移動を検知した際のマウスカーソルの位置が相対座標で(60,140)にあったことを示している。
4〜7行目の文字列は、”inpuchat”のIDのついたテキスト入力可能なフォームタグ要素をターゲットとしてキーボードのキーが押し下げられたことを示すイベントを文字列化したものである。2行目の場合と異なり、テキスト入力可能なフォームタグの場合、補足情報として押し下げられたキーのコードのほかにフォーム内の入力文字列も記録している。8行目の文字列は、バックグラウンド通信処理が発生したことを示すイベントを文字列化したものである。補足情報としてHTTP通信時のURLが”http://log.sample.com/ajax”,メソッドが”GET”、リクエストデータがなく、レスポンスデータが”送信結果サンプル”であったことを示している。
図6の一例で示したように、ブラウザ基本処理部201は、発生したイベント情報を文字列化する際、イベント情報として発生した時刻、発生したページのURL、発生したイベントの種類、発生したイベントのターゲットとなる要素、発生したイベントに対応した補足情報を示すよう処理する。
ブラウザ基本処理部201は、補足情報として、上記の例のように、マウスカーソル操作に関するイベントの場合には、マウスカーソルの位置情報を、キーボード操作に関するイベントの場合は操作されたキーの情報や、対象となるフォーム(INPUTタグ要素やTEXTAREAタグ要素)に入力されている文字列情報を記録する。
ブラウザ基本処理部201は、バックグラウンド通信が発生した場合には、補足情報として、接続先URL、HTTP通信メソッド、リクエスト情報、レスポンス情報を記録する。
なお、キーボード操作に関するイベントの補足情報としては、通常は操作されたキーの情報さえあれば、対象となるフォームに入力されている文字列情報を記録する必要はない。しかしながら、Webブラウザ20を実行しているオペレーティングシステム上で提供される日本語入力用プログラム等のユーザの利用言語に応じた入力プログラムを介してWebブラウザ20に対して文字列入力操作を行っている場合は操作されたキーの情報が正しく取得されないことがある。そこで、ブラウザ基本処理部201は、図6の一例で示したように、対象となるフォームに入力されている文字列情報について記録する。こうすることで、ユーザが実際に入力した文字列を正確に記録することができる。
次に、ブラウザ基本処理部201は、S103で生成された操作ログ文字列を操作ログバッファに追加する(S104)。
そして、ブラウザ基本処理部201は、発生したイベントが「画面遷移」や「ウインドウを閉じる」を示すイベントであるか否かを判定し(S105)、そうである場合(S105でY)、後述する操作ログの送信処理(S107)に処理を移行する。なお、「画面遷移」のイベントとは、例えば、リンクジャンプや、送信ボタンや、戻る・進むボタンや、リロード(再読み込み、更新)などを示すイベントである。
一方、発生したイベントが「画面遷移」や「ウインドウを閉じる」を示すイベントでない場合(S105でN)、ブラウザ基本処理部201は、追加した操作ログバッファのサイズが所定の送信サイズか否か確認する(S106)。なお、送信サイズは任意の大きさでよく、小さく設定すれば頻繁にユーザ操作記録・再現処理装置10に少量サイズの操作ログ文字列を送信することとなり、大きく設定すれば大量サイズの操作ログ文字列を、送信間隔をあけてユーザ操作記録・再現処理装置10に送信することとなる。実装するネットワークの付加状況を考慮するなどして操作ログバッファのサイズは、適宜変更することができる。
前記操作ログバッファのサイズが送信サイズ未満である場合(S106でN)、ブラウザ基本処理部201は、S102の処理に戻る。
一方、操作ログバッファのサイズが所定の送信サイズに到達している場合(S106でY)、ブラウザ基本処理部201は、ログ情報の送信処理(S107)に移行する。
S107では、ブラウザ基本処理部201は、操作ログバッファに蓄積されている全操作ログ文字列を、ユーザ操作記録・再現処理装置10に送信する。その後、バッファを初期化し、S102の処理に戻る。
以上、ユーザ操作記録処理について説明した。
次に、ユーザ操作再現機能について説明する。
図7は、かかるユーザ操作再現機能を説明するための図である。
ユーザ操作記録・再現処理装置10のユーザ操作再機能により提供される、ユーザ操作再現機能を具備したWebページ1011Bは、操作再現処理スクリプト生成部103により生成される操作再現処理スクリプト1031を含むか、もしくは参照するように記述されている。なお、Webページ1011Bのソースに対し、操作ログ取得送信処理スクリプト1031を含むか参照するための記述は、Webページ1011Bを作成する管理者ユーザにより記述される。
ユーザ操作記録・再現処理装置10の操作再現処理スクリプト生成部103は、あらかじめ、操作ログ104のうち再現対象の操作ログを抽出し、当該抽出した操作ログを再現する操作再現処理スクリプト1031を生成する。
操作再現処理スクリプト1031の生成処理は、ユーザ操作記録・再現処理装置10の管理者ユーザにより、操作ログ104に記録されている情報から対象となる操作ログが指定されることにより、実行される。
なお、操作ログ104に記録する情報として、操作者のユーザIDや、セッションIDが同時に記録されるようにすることで、対象Webページの操作者を特定することが容易になる。通常、ユーザIDやセッションIDは、対象となるWebページを提供するWebアプリケーションが管理する場合がほとんどであり、ユーザIDやセッションIDを操作ログ104に記録する場合は、Webアプリケーションから情報を得る必要がある。ユーザIDやセッションIDは、一般にWebブラウザ20のクッキー機能を利用したものがほとんどであるが、その実装方法は様々である。ここでは具体的な連携方法については省略する。
サーバ基本処理部101は、Webブラウザ20からユーザ操作再現処理機能をもつWebページの取得要求を受信すると、対象となるWebページ1011Bおよび操作再現処理スクリプト1031を当該Webブラウザ20に送信する。
Webブラウザ20のブラウザ基本処理部201は、Webページ1011Bおよび操作再現処理スクリプト1031を受信すると、操作再現処理スクリプト1031を実行し、操作ログ104に蓄積されている特定のユーザ操作を再現する処理を実行する。
以下、図8のフローに従い、ユーザ操作記録・再現処理装置10のユーザ操作再現機能により提供されるユーザ操作再現機能を、対象となるWebページ1011Bに具備させるための操作再現処理スクリプト1031を生成する処理手順を説明する。
操作再現処理スクリプト1031には、初期化処理の後に、操作ログ104に蓄積されているユーザ操作情報のうち特定のものを再現する処理が記述される。
図9は初期化処理を行うJavaScriptの一例である。ただし説明のため左端に行番号が付加されている。
操作再現処理スクリプト生成部103は、バックグラウンド通信処理の再現処理のためのXMLHttpRequestの修正処理と、擬似マウスカーソルの表示処理とが初期化処理として実行されるように、操作再現処理スクリプト1031に記述する(S201)。
まず、操作再現処理スクリプト生成部103は、JavaScriptにおけるバックグラウンド通信処理機能を提供するXMLHttpRequestオブジェクトを修正し(図9の0〜22行目)、サーバとの通信処理は行わせず、操作ログ104に記録された通信情報を再現するように上書き設定する。具体的にはsendメソッドを上書きし、HTTP通信処理を行わせず、サーバからのレスポンス情報として操作ログ104に記録された情報を設定し、onload属性に設定されたメソッドを実行させるようにする(図9の11〜20行目)。この修正処理により操作ログ103に記録されたバックグラウンド通信処理を再現することができるようになる。
また、操作再現処理スクリプト生成部103は、擬似的にマウスカーソルを表現する要素(マウスカーソルを模した画像を利用する場合は当該画像を示すIMGタグ、単純な正方形や文字列(例えば”+”の文字)を利用する場合は当該要素を示すDIVタグなどのタグを利用する)をWebブラウザ20で表示しているWebページ1011B上に表示するための記述処理を行う。
図9の初期化処理の一例では、23〜33行目で文字列”+”を、マウスカーソルを模したものとしてWebブラウザ20上に表示する処理を記述している。多くのWebブラウザが具備するJavaScriptの実行環境ではマウスカーソルの移動イベントを再現する機能を仕様として備えているものの、実際にユーザが利用しているマウスカーソルを移動させる機能は実現されていないため、このような擬似的なマウスカーソルをマウスカーソルの移動操作の再現に利用する。
次に、操作ログ104のうち管理者ユーザにより特定されたものを読み込む(図8のS202)。このとき、操作ログ104に蓄積されている管理者ユーザが特定した全てのユーザ操作情報の読み込みが完了している場合、本フロー(操作再現処理スクリプトの生成処理)を終了する。一方、まだ読み込み済みでないユーザ操作情報を読み込めた場合、その操作情報に記述されているイベントの種類を判定し(S203)、イベントの種類に応じた再現処理スクリプトを生成する。
図10は、イベントの再現処理を記述したスクリプトの一例である。以下イベントの種類ごとに再現処理スクリプトの生成方法を詳細に説明する。
JavaScriptの機能により、その再現が可能なイベントの場合、以下のように再現処理スクリプトを生成する(図8のS204〜S206)。なお、JavaScriptの機能によりその再現が可能なイベントには、mouseoverイベント・mouseoutイベントなどがある。
まず、操作再現処理スクリプト生成部103は、当該イベントの操作対象要素オブジェクトとして、イベントのターゲットを取得する処理を記述する(S204)。イベントのターゲットを取得するには、JavaScriptが基本機能として提供するDocumentオブジェクトのgetElementByIdメソッドやgetElementsByTagNameメソッドを利用する。getElementByIdメソッドは、IDを指定し、指定されたIDと一致する値をID属性の値として保持するタグ要素を一つ取得する。getElementsByTagNameメソッドは、タグ名を指定し、指定されたタグ名と一致するタグすべてを取得する。ユーザ操作情報にターゲット要素の情報としてIDが記載されている場合は、getElementByIdメソッドを利用してターゲット要素を取得する。IDが記載されておらず(ID属性を保持しない)、タグ名と何番目に現れているタグかを示す番号(以下タグ番号)のみが記載されている場合は、getElementsByTagNameメソッドを用い、タグ名が一致するタグすべてを取得したのち、当該タグ名が一致するタグのうちタグ番号目のタグをターゲット要素として取得する。
次に、操作再現処理スクリプト生成部103は、JavaScriptが基本機能として提供しているイベントの生成機能を利用してイベントを生成する処理を記述する(S205)。
DocumentオブジェクトにcreateEventメソッドというイベント生成機能が用意されている。また、これを利用して生成されるEventオブジェクトにinitMouseEventメソッドやinitUIEventメソッド等のイベント情報の設定機能が用意されている。これらのメソッドを利用することでイベントを生成することができる。
次に、S204で記述する操作対象オブジェクトの取得処理により取得されるターゲット要素に対し、S204〜S211で記述する操作イベントオブジェクトの生成処理により生成されるイベントを発生させる処理を記述する(S206)。前記イベントを引数として、前記ターゲット要素のdispatchEventメソッド呼び出すことでイベントを発生させることができる。
図10の1〜4行目には、IDとして”mousepanel”を持つタグ要素上にマウスカーソルが移動したことを示すイベントを再現する処理が記述されている。createEventメソッドによりマウスイベントを生成し(図10の1行目)、マウスカーソルがタグ要素上に配置されたことを示すイベント”mouseover”として初期化し(図10の2行目)、”mousepanel”のIDをもつタグ要素を取得し(図10の3行目)、取得したタグ要素に対し生成したマウスイベントをdispatchEventメソッドで割付処理をすることで、マウスイベントの再現処理を実現している。
次に、生成不可能のイベントの場合(図8のS207〜S208)について説明する。
キーボード操作に関するイベントの場合、多くのWebブラウザが持つJavaScriptの実行環境はその基本機能として再現する機能を持っていない。そこで、操作再現処理スクリプト生成部103は、キーボード操作に関するイベントと同様の情報を持つオブジェクト(以下、代替キーボードイベントオブジェクト)をイベントオブジェクトの代わりに生成し(S207)、生成した代替キーボードイベントオブジェクトを引数として、対応するイベントハンドラを呼び出す処理を記述する(S208)。
代替キーボードイベントオブジェクト生成処理については、ユーザ操作情報に記録されているイベントのタイプとキーコード情報を、それぞれ”type”属性および”keyCode”属性の値として保持するオブジェクトを生成する処理の記述により実現する。前記対応するイベントハンドラの呼び出し処理は、ユーザ操作情報に記録されているイベントターゲット要素に設定されているイベントハンドラを、元となるWebページを解析して取得し、当該取得したイベントハンドラのメソッドをステップ604−20において記述される処理で生成される代替キーボードイベントオブジェクトを引数として呼び出す記述により実現する。
イベントハンドラの取得は、以下の解析処理により行う。まずJavaScriptにおけるキーボードイベントはターゲット要素から上位階層のタグ要素に向かって順々に処理され、ターゲット要素から最上位のタグ要素の間でイベントハンドラが設定されていれば、それらをすべて実行する仕組みになっている。従って、ユーザ操作情報に記録されているターゲット要素から最上位のタグ要素を順にたどり、それらのタグ要素に設定されているキーボードイベントハンドラとして設定されているスクリプトをすべて取得すればよい。
図10の5〜11行目には、IDとして”keypanel”のを持つタグ要素上で”a”キーが押し下げられたことを示すイベントを再現する処理が記述されている。”keypanel”のIDをもつタグ要素を取得し(図10の5行目。ここでは”keypanel”のタグ要素上にのみイベントハンドラが設定されていることが解析されたものとしている)、そのタグ要素がもつイベントハンドラを取得し(図10の6行目)、キーイベントと同様のオブジェクトを生成し(図10の8行目)、取得したイベントハンドラを呼び出す(図10の11行目)ことで、キーイベントの再現処理を実現している。
次に、マウスカーソルの移動に関するイベントの場合(図8のS209)について説明する。
かかる場合、操作再現処理スクリプト生成部103は、初期化処理S201で生成した擬似マウスカーソル要素を移動させる処理を記述する。
要素の位置移動は、JavaScriptにより対象となる要素のCSSスタイルシートの属性値を変化させることにより実現することができる。具体的には、position属性の値を”absolute”に設定した上でtop属性(Webブラウザ画面の上端からの位置)の値とleft属性(Webブラウザ画面の左端からの位置)の値を設定する。図10の12〜16行目にマウスカーソルの移動イベントを再現する処理が記述されている。擬似マウスカーソルを表すタグ要素を取得し(図10の12行目)(図9の再現処理の初期化処理スクリプトの一例の26行目で擬似マウスカーソルを表すタグ用のIDを”_mouse_curosor”としているため、その値をIDにもつタグ要素を取得している。)、位置を(300px、400px)の位置に設定する(図10の13〜16行目)ことでマウスカーソルの移動イベントの再現処理を実現している。
次に、TYPE属性の値が”TEXT”であるINPUTタグや、TEXTAREAタグ(以下前記二つを指してテキスト入力フォームと呼ぶ)に対するキーボード操作に関するイベントの場合(図8のS210)について説明する。
かかる場合、操作再現処理スクリプト生成部103は、当該イベントに対するユーザ操作情報に記述されている入力済み文字列値を、対象となるテキスト入力フォームに設定する処理を記述する。S204で示した操作対象オブジェクトの取得処理と同様の処理を記述し、取得した操作対象オブジェクトのvalue属性の値を前記ユーザ操作情報に記述されている入力済み文字列値に設定する処理を記述する。
図10の17,18行目には、テキスト入力フォームへの入力操作の再現処理が記述されている。入力対象のタグ要素を取得し(図10の17行目)、そのタグ要素の値を”テストです”とする(図10の18行目)(”テストです”という文字列が日本語入力プログラムを介して入力された操作ログが記録されていたものとする)ことで、テキスト入力フォームへの入力操作を再現している。
次に、バックグラウンド通信処理に関するイベントの場合(図8のS211)について説明する。
かかる場合、操作再現処理スクリプト生成部103は、S201で記述される初期化処理によって修正されたサーバとの通信を実際には行わず、サーバからのレスポンス情報を設定したのちにonload属性に設定されたメソッドを実行するXMLHttpRequestのsendメソッドを呼び出す処理を記述する。サーバからのレスポンス情報の設定処理の記述には操作ログ104の該当ユーザ操作情報に記録されているサーバからのレスポンス情報を利用する。修正するsendメソッドの処理記述において、”this.responseText=’(記録されているレスポンス情報)’;”と記述することでレスポンス情報を設定することができる。
図10の19,20行目にバックグラウンド通信の再現処理が記述されている。前記初期化処理において操作ログ情報104にもとづき再現処理を行うように修正したXMLHttpRequestオブジェクトを生成し(図10の19行目)、sendメソッドの呼び出し処理を行うことでバックグラウンド通信処理の再現処理を実現している。図9の再現処理の初期化処理スクリプトの一例の11〜20行目で示したXMLHttpRequestオブジェクトの修正により、実際にはバックグラウンド通信は行わず、操作ログ情報104に記録されたバックグラウンド通信の結果のレスポンス情報を反映した処理がなされる。
操作再現処理スクリプト生成部103は、S206、S208,S209、S210、S211の処理の後、S202に戻って処理を続ける。
以上、操作再現処理スクリプト1031の生成処理について説明した。
上述したように、こうして生成された操作再現処理スクリプト1031により、Webブラウザ20では、ユーザの操作の再現が表示される。
以上、本発明の一実施形態について説明した。
本実施の形態によれば、ユーザ操作記録・再現処理装置10の管理者ユーザは、利用者ユーザにその機能の利用を意識させることなく、利用者ユーザが対象となるWebページをWebブラウザ20での操作をユーザ操作記録・再現処理装置10に記録することできる。
また、ユーザ操作記録・再現処理装置10に記録した利用者ユーザの操作情報を元に、利用者ユーザの操作を再現Webブラウザ上で再現することができる。
すなわち、上記実施形態によれば、利用者ユーザのシステム環境に特殊なソフトウェアのインストールの必要なしに、JavaScriptが再現処理をサポートしていないイベントに関連した操作についても再現することを可能とするユーザ操作記録/再現処理装置を提供することができる。また、バックグラウンド通信処理についても記録/再現処理を提供し、再現処理時には通信対象のサーバとは通信せず、記録されている通信内容をそのまま再現する機能を提供することができる。
本実施形態が提供するこれらの機能により、利用者ユーザに意識させることなくWebブラウザの操作を詳細なレベルまで記録することができ、管理者ユーザは当該記録された利用者ユーザの操作を詳細なレベルまで再現することができる。このような機能を利用することで管理者ユーザや開発者は対象となるWebページにおける利用者の行動を把握することができ、当該Webページの使い勝手向上をはかる改善開発のための情報源として活用することができる。
本発明は、上記実施形態に限定されない。上記実施形態は、様々な変形が可能である。
上記実施の形態では、操作ログ取得送信処理スクリプト1012をWebサーバ基本機能101上に配置する構成をとったが、JavaScriptはWebブラウザから接続可能なサーバであればどこに配置されているものであっても実行することが可能なため、ユーザ操作記録・再現処理装置10とは異なる情報処理装置で実現されるWebサーバ上に配置されていてもよい。
また、上記実施の形態では、ユーザ操作記録・再現処理装置10を実現する情報処理装置内にWebサーバ基本機能101も同時に具備する構成をとったが、Webサーバ基本機能101は独立した情報処理装置に配置する形態をとってもよい。ただしこの構成の場合は、ユーザ操作記録・再現処理装置10とWebサーバ基本機能101とにWebブラウザ20から同じURLドメインでアクセスできるように配置する必要がある。多くのWebブラウザの実装において、JavaScriptのバックグラウンド通信機能は、参照しているWebページのURLと同じドメインに対してのみ許可された機能となっているためである。
さらに別の構成として、図11に示すシステム構成例のように、サーバ基本処理部101を備えた独立したWebサーバ10xを配置する。そして、ユーザ操作記録・再現処理装置10は、その他の主要機能部を備え、プロキシサーバとして、Webブラウザ20とWebサーバ10xとの間に配置する。
また、図1の構成の場合において、本実施の形態では対象となるWebページ1011Aに対し、操作ログ取得送信スクリプト1012を参照する記述を管理者ユーザが追記するように説明したが、操作ログ取得送信スクリプト1012を参照する記述を対象となるWebページに後から挿入処理する処理をユーザ操作記録・再現処理装置10で行ってもよい。
図11のシステム構成例では、ユーザ操作記録・再現処理装置10に、操作ログ取得送信処理スクリプト付加処理部301を新たに具備している。操作ログ取得送信処理スクリプト付加処理部301は、Webブラウザ20から要求されるWebページを、対応するWebサーバ基本処理部101から取得したのちに、操作ログ取得送信処理スクリプト1012の記述を当該取得したWebページに挿入する処理を行い、Webブラウザ20に送信する機能を持つ。
このような構成をとることで、管理者ユーザが操作ログ取得送信スクリプト1012を参照する記述を対象となるWebページに記載せずとも、自動的に操作ログ取得送信スクリプト1012を参照する記述を挿入することでき、より多くのWebページに容易にユーザ操作情報の記録処理を具備することができる。ただし、この構成の場合も、ユーザ操作記録・再現処理装置10とWebサーバ基本機能は同じURLドメインでWebブラウザ20からアクセスできるように配置する必要がある。
また本実施の形態では、あらかじめユーザ操作記録・再現処理装置10の管理者ユーザが操作ログ104を特定し、操作再現処理スクリプト1031を操作再現処理スクリプト生成機能103に生成させる方法を述べた。しかし、これに限らず、Webブラウザ20からのリクエスト情報を元に操作ログ104を特定し、操作再現処理スクリプト1031を操作再現処理スクリプト生成部103に生成させる処理方法をとることもできる。例えば、ユーザ操作記録・際限処理装置10に対し、あらかじめ操作再現処理スクリプト1031を生成しておく代わりに、Webブラウザ20からのリクエストを受信した際に、リクエスト情報に含まれる操作ログ104を特定する情報(ユーザIDやセッションID、操作再現開始・終了時刻など)を元に再現処理対象のユーザ操作情報を抽出する。そして、図8に記載の操作ログ再現処理スクリプトの生成処理フローに従い、操作ログ再現処理スクリプト1031を生成する。さらに、対象となるWebページに当該生成した操作ログ再現処理スクリプトを参照する記述を挿入し、Webブラウザ20に送信する。このような処理を行う機能を具備することで、上記方法を実現することができる。
上記のような構成・方法をとることで、管理者ユーザがあらかじめ操作ログ再現処理スクリプト1031を生成しておく必要なく、ユーザ操作再現処理機能の利用者ユーザが直接操作ログ104に記録されているユーザ操作情報を特定してユーザ操作再現処理機能を利用することができる。
以上、本発明の一実施形態およびその変形例について説明した。
企業内の業務システムはそのほとんどがWebアプリケーションとして実現されるようになった。また、JavaScriptのバックグラウンド通信機能を活用した、画面遷移を伴わない使い勝手のよいWebアプリケーションが増加している。そのような使い勝手のよいWebアプリケーションの増加に伴い、Webアプリケーションに対する使い勝手のよさがより強く求められるようなっている。
このような状況においては、Webアプリケーションの開発者は、利用者ユーザのニーズにより的確にこたえる使い勝手を提供するよう随時Webアプリケーションを改善するよう求められる。
本発明は利用者ユーザに意識させることなく、利用者ユーザのWebブラウザにおける操作情報を記録することができる環境を提供する。本発明により収集される利用者ユーザの操作情報を解析したり、本発明によるユーザ操作の再現処理を利用したりすることで、対象となるWebアプリケーションが利用者にどのように利用されているかを知ることができ、その情報をWebアプリケーションの使い勝手の改善に活用することができる。
一実施形態の概略高製図。 ユーザ操作記録処理の情報の流れを示した図。 操作ログ取得送信処理スクリプトを参照するWebページの一例を示す図。 操作ログ取得送信処理スクリプトによるユーザ操作記録処理手順を示すフロー図。 バックグラウンド通信処理を操作ログとして記録するよう修正するスクリプトの一例を示す図。 操作ログ取得送信処理スクリプトにより記録された操作ログ情報の一例を示した図。 ユーザ操作再現処理の情報の流れを示した図。 操作再現処理スクリプトの生成処理手順を示したフロー図。 操作再現処理の初期化処理を行うスクリプトの一例を示す図。 操作再現処理のイベント再現処理を行うスクリプトの一例を示す図。 変形例にかかる概略構成図。
符号の説明
10:ユーザ操作記録・再現処理装置
101:サーバ基本処理部
102:操作ログ記録部
103:操作再現処理スクリプト生成部
104:操作ログ情報
20:Webブラウザ
201:ブラウザ基本処理部
10x:Webサーバ
301:操作ログ取得送信処理スクリプト付加部

Claims (10)

  1. Webブラウザに対するユーザの操作を記録するユーザ操作記録方法であって、
    前記Webブラウザは、
    ユーザの操作により当該Webブラウザで発生したイベントの情報を記録し、記録したイベントの情報を、当該Webブラウザが読み込むスクリプトのバックグラウンド通信機能を用いて、Webサーバに送信し、
    前記Webサーバは、
    前記Webブラウザから受信した前記イベントの情報を記録する
    ことを特徴とするユーザ操作記録方法。
  2. 請求項1に記載のユーザ操作記録方法であって、
    前記Webブラウザが読み込むスクリプトにおいて、バックグラウンド通信処理を提供するオブジェクトを修正することにより、通信内容を記録し、記録した通信内容の情報をスクリプトのバックグラウンド通信機能を用いてWebサーバに送信する
    ことを特徴とするユーザ操作記録方法。
  3. 請求項1に記載のユーザ操作記録方法であって、
    前記Webブラウザが読み込むスクリプトにより、テキスト入力フォームに対するキーボード操作によりイベントが発生した際にイベントの情報の他にテキスト入力フォームに対し入力されている文字列をイベント情報とともに記録し、記録した通信内容の情報をスクリプトのバックグラウンド通信機能を用いてWebサーバに送信する
    ことを特徴とするユーザ操作記録方法。
  4. Webサーバが提供するユーザ操作再現方法であって、
    前記Webサーバは、
    Webページに対するユーザのWebブラウザによる操作の記録と、前記Webページに基づき前記操作の記録に記録されている前記Webページに対するユーザのWebブラウザによる操作を再現するスクリプトを生成し、生成した前記スクリプトをWebブラウザに送信し、
    前記Webブラウザは、前記スクリプトを受信し、受信した前記スクリプトを実行することにより、前記Webページに対するユーザのWebブラウザによる操作を再現する
    ことを特徴とするユーザ操作再現方法。
  5. 請求項4に記載のユーザ操作再現方法であって、
    前記Webサーバが生成しWebブラウザが読み込むスクリプトにより、
    キーボード操作を再現する際に操作対象の要素に対応するイベントハンドラを、前記Webページを解析して取得し、
    前記キーボード操作に対応するイベントオブジェクトと同等の情報を持つオブジェクトを生成し、
    生成した前記オブジェクトを、取得した前記イベントハンドラに渡すことによりキーボード操作によるイベント処理を再現する
    ことを特徴とするユーザ操作再現方法。
  6. 請求項4に記載のユーザ操作再現方法であって、
    前記Webサーバが生成しWebブラウザが読み込むスクリプトにおいて、
    マウスカーソルの移動操作を再現する際に、擬似的なマウスカーソルを前記Webブラウザ上に表示する
    ことを特徴とするユーザ操作再現方法。
  7. 請求項4に記載のユーザ操作再現方法であって、
    前記Webサーバが生成しWebブラウザが読み込むスクリプトにおいて、
    テキスト入力フォームに対するキーボード操作を再現する際に、前記キーボード操作の記録に記載されている前記テキスト入力フォームに入力されている文字列を、前記テキスト入力フォームの入力文字列として設定する
    ことを特徴とするユーザ操作再現方法。
  8. 請求項4に記載のユーザ操作再現方法であって、
    前記Webサーバが生成しWebブラウザが読み込むスクリプトにおいて、
    バックグラウンド通信処理を再現する際に、バックグラウンド通信処理用オブジェクトを修正し、前記操作の記録に記載されているバックグラウンド通信処理内容を通信処理結果として処理させる
    ことを特徴とするユーザ操作再現方法。
  9. Webブラウザに対するユーザの操作を記録するユーザ操作記録システムであって、
    前記Webブラウザは、
    ユーザの操作により当該Webブラウザで発生したイベントの情報を記録し、記録したイベントの情報を、当該Webブラウザが読み込むスクリプトのバックグラウンド通信機能を用いて、Webサーバに送信し、
    前記Webサーバは、
    前記Webブラウザから受信した前記イベントの情報を記録する
    ことを特徴とするユーザ操作記録システム。
  10. WebブラウザとWebサーバとを備え、当該Webブラウザに対するユーザの操作を再現するユーザ操作再現システムであって、
    前記Webサーバは、
    Webページに対するユーザのWebブラウザによる操作の記録と、Webページに基づき前記操作の記録に記録されている前記Webページに対するユーザのWebブラウザによる操作を再現するスクリプトを生成し、生成した前記スクリプトをWebブラウザに送信し、
    前記Webブラウザは、前記スクリプトを受信し、受信した前記スクリプトを実行することにより、前記Webページに対するユーザのWebブラウザによる操作を再現する
    ことを特徴とするユーザ操作再現システム。
JP2006298353A 2006-11-02 2006-11-02 ユーザ操作記録・再現方法及び装置 Pending JP2008117093A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2006298353A JP2008117093A (ja) 2006-11-02 2006-11-02 ユーザ操作記録・再現方法及び装置
US11/933,610 US20080126931A1 (en) 2006-11-02 2007-11-01 System and method for recording and reproducing user operation

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006298353A JP2008117093A (ja) 2006-11-02 2006-11-02 ユーザ操作記録・再現方法及び装置

Publications (1)

Publication Number Publication Date
JP2008117093A true JP2008117093A (ja) 2008-05-22

Family

ID=39465277

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006298353A Pending JP2008117093A (ja) 2006-11-02 2006-11-02 ユーザ操作記録・再現方法及び装置

Country Status (2)

Country Link
US (1) US20080126931A1 (ja)
JP (1) JP2008117093A (ja)

Cited By (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009289218A (ja) * 2008-05-30 2009-12-10 Fujitsu Ltd 情報処理装置、その入力情報の復元方法及び復元プログラム
JP2010039901A (ja) * 2008-08-07 2010-02-18 Nomura Research Institute Ltd 動作検証装置および動作検証プログラム
JP2010128877A (ja) * 2008-11-28 2010-06-10 Hitachi Ltd ウェブシステムおよび処理記録収集方法
JP2010231587A (ja) * 2009-03-27 2010-10-14 Nomura Research Institute Ltd Webコンテンツ表示監視システム
WO2010116586A1 (ja) * 2009-03-30 2010-10-14 株式会社野村総合研究所 動作検証装置、動作検証方法、および動作検証システム
JP2010237841A (ja) * 2009-03-30 2010-10-21 Nomura Research Institute Ltd 動作検証装置および動作検証プログラム
JP2011060196A (ja) * 2009-09-14 2011-03-24 Hitachi Ltd ウェブアプリケーションの操作記録・再生方法およびシステム
JP2011164783A (ja) * 2010-02-05 2011-08-25 Nomura Research Institute Ltd 動作検証装置、動作検証方法および動作検証プログラム
JP2011164788A (ja) * 2010-02-05 2011-08-25 Nomura Research Institute Ltd 動作検証装置、動作検証方法、および動作検証プログラム
JP2011164784A (ja) * 2010-02-05 2011-08-25 Nomura Research Institute Ltd 動作検証装置、動作検証方法および動作検証プログラム
JP2011164787A (ja) * 2010-02-05 2011-08-25 Nomura Research Institute Ltd 動作検証システム
JP2011164785A (ja) * 2010-02-05 2011-08-25 Nomura Research Institute Ltd 動作検証装置、動作検証方法および動作検証プログラム
JP2011164786A (ja) * 2010-02-05 2011-08-25 Nomura Research Institute Ltd 動作検証装置、動作検証方法および動作検証プログラム
WO2011161735A1 (ja) * 2010-06-25 2011-12-29 株式会社日立製作所 ウェブアプリケーションの操作再現方法およびシステム
WO2012020512A1 (ja) * 2010-08-09 2012-02-16 株式会社日立製作所 ウェブアプリケーションの操作記録方法およびシステム
WO2012035654A1 (ja) * 2010-09-17 2012-03-22 株式会社東芝 操作情報生成装置
WO2012086217A1 (ja) * 2010-12-24 2012-06-28 株式会社日立製作所 稼働ログ収集方法および装置
JP2013232035A (ja) * 2012-04-27 2013-11-14 Pfu Ltd 情報処理システム、情報処理装置、情報処理方法、及びプログラム
KR20140009416A (ko) * 2011-02-28 2014-01-22 오라클 인터내셔날 코포레이션 사용자 시작 동작과 백 엔드 동작을 모니터하고 상관시키기 위한 방법 및 컴퓨터 프로그램
US8813002B2 (en) 2012-10-26 2014-08-19 Fujitsu Limited Circuit board design support program, design support method, and design support apparatus
WO2015029464A1 (ja) * 2013-08-29 2015-03-05 三菱電機株式会社 模擬装置、情報生成装置、模擬方法、模擬プログラム、環境提供システム、環境提供方法及びプログラム
JP2016505969A (ja) * 2012-12-19 2016-02-25 アマゾン テクノロジーズ インコーポレイテッド リロードイベントに基づくウェブリソースの対話性分析
JP2017536614A (ja) * 2014-10-20 2017-12-07 アビニシオ テクノロジー エルエルシー ルールの規定及びデータへの適用
JP2018101446A (ja) * 2012-07-30 2018-06-28 グーグル エルエルシー 第1コンピューティングデバイスから第2コンピューティングデバイスへのアプリケーションの状態の転送

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
ES2555291T3 (es) * 2008-04-15 2015-12-30 Foresee Results Método para el seguimiento remoto y la reproducción de la interacción de un usuario con una página web
US8839116B2 (en) * 2008-08-22 2014-09-16 Siemens Aktiengesellschaft User interface in an information technology (IT) system
US8589810B2 (en) * 2008-11-18 2013-11-19 At&T Intellectual Property I, L.P. Methods, systems, and products for recording browser navigations
EP2438537A4 (en) * 2009-06-05 2013-05-01 Hewlett Packard Development Co SYSTEM AND METHOD FOR REPRESENTING USER INTERACTION WITH A WEB SERVICE
JP2011002870A (ja) * 2009-06-16 2011-01-06 Hitachi Ltd ウェブアプリケーションの操作性評価・改善方法およびウェブシステム
US10089092B2 (en) * 2010-01-27 2018-10-02 Embarcadero Technologies, Inc. Creating a software product from a software application
JP5476326B2 (ja) * 2011-03-08 2014-04-23 株式会社日立製作所 ウェブ操作記録・再現方法および装置
WO2013038489A1 (ja) * 2011-09-13 2013-03-21 株式会社日立製作所 計算機システム、クライアント計算機の管理方法及び記憶媒体
US8806574B2 (en) 2011-10-05 2014-08-12 Hewlett-Packard Development Company, L.P. System and method for policy conformance in a web application
US9256691B2 (en) * 2012-07-10 2016-02-09 Recursive Labs, Inc. Systems and methods for enabling Internet co-browsing experience for multiple users
TW201445489A (zh) * 2013-05-31 2014-12-01 Hon Hai Prec Ind Co Ltd 資料追蹤方法及系統
US9665473B2 (en) * 2014-03-25 2017-05-30 Accenture Global Services Limited Smart tester application for testing other applications

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06309303A (ja) * 1993-04-22 1994-11-04 Sharp Corp 文字入力装置
JPH086832A (ja) * 1994-06-22 1996-01-12 Nec Corp イベント記録装置およびイベント再現装置
JP2000076266A (ja) * 1998-08-28 2000-03-14 Internatl Business Mach Corp <Ibm> ブラウザ操作自動実行システムおよびその方法
JP2001060179A (ja) * 1999-08-20 2001-03-06 Fuji Xerox Co Ltd 履歴記録装置及び履歴再生装置
JP2001306499A (ja) * 2000-04-17 2001-11-02 Image Source:Kk ホームページの改良支援システム
JP2002251295A (ja) * 2000-12-18 2002-09-06 Fujitsu Ltd 情報処理装置、プログラムの障害対処方法、媒体、およびプログラム

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7200804B1 (en) * 1998-12-08 2007-04-03 Yodlee.Com, Inc. Method and apparatus for providing automation to an internet navigation application
US20030233296A1 (en) * 2000-12-01 2003-12-18 Wagner Brad H. System and method for automated form generation and comparison
US7647561B2 (en) * 2001-08-28 2010-01-12 Nvidia International, Inc. System, method and computer program product for application development using a visual paradigm to combine existing data and applications
US7080325B2 (en) * 2002-02-22 2006-07-18 Call-Tell Llc Graphical device for comprehensive viewing and input of variable data via a browser-based display
US7171615B2 (en) * 2002-03-26 2007-01-30 Aatrix Software, Inc. Method and apparatus for creating and filing forms
US7694223B2 (en) * 2003-06-04 2010-04-06 Sony Computer Entertainment Inc. Methods and systems for recording user actions in computer programs
US20050060230A1 (en) * 2003-08-08 2005-03-17 Kaye Evan John Methods and systems for providing real-time incentive for text submissions
US7627821B2 (en) * 2004-06-15 2009-12-01 Microsoft Corporation Recording/playback tools for UI-based applications
US7653896B2 (en) * 2004-06-30 2010-01-26 Microsoft Corporation Smart UI recording and playback framework

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06309303A (ja) * 1993-04-22 1994-11-04 Sharp Corp 文字入力装置
JPH086832A (ja) * 1994-06-22 1996-01-12 Nec Corp イベント記録装置およびイベント再現装置
JP2000076266A (ja) * 1998-08-28 2000-03-14 Internatl Business Mach Corp <Ibm> ブラウザ操作自動実行システムおよびその方法
JP2001060179A (ja) * 1999-08-20 2001-03-06 Fuji Xerox Co Ltd 履歴記録装置及び履歴再生装置
JP2001306499A (ja) * 2000-04-17 2001-11-02 Image Source:Kk ホームページの改良支援システム
JP2002251295A (ja) * 2000-12-18 2002-09-06 Fujitsu Ltd 情報処理装置、プログラムの障害対処方法、媒体、およびプログラム

Cited By (37)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009289218A (ja) * 2008-05-30 2009-12-10 Fujitsu Ltd 情報処理装置、その入力情報の復元方法及び復元プログラム
JP2010039901A (ja) * 2008-08-07 2010-02-18 Nomura Research Institute Ltd 動作検証装置および動作検証プログラム
JP2010128877A (ja) * 2008-11-28 2010-06-10 Hitachi Ltd ウェブシステムおよび処理記録収集方法
JP2010231587A (ja) * 2009-03-27 2010-10-14 Nomura Research Institute Ltd Webコンテンツ表示監視システム
US11580011B2 (en) 2009-03-30 2023-02-14 Nomura Research Institute, Ltd. Operation verifying apparatus, operation verifying method and operation verifying system
US9495280B2 (en) 2009-03-30 2016-11-15 Nomura Research Institute, Ltd. Operation verifying apparatus, operation verifying method and operation verifying system
WO2010116586A1 (ja) * 2009-03-30 2010-10-14 株式会社野村総合研究所 動作検証装置、動作検証方法、および動作検証システム
US10346288B2 (en) 2009-03-30 2019-07-09 Nomura Research Institute, Ltd. Operation verifying apparatus, operation verifying method and operation verifying system
US10860463B2 (en) 2009-03-30 2020-12-08 Nomura Research Institute, Ltd. Operation verifying apparatus, operation verifying method and operation verifying system
JP2010237841A (ja) * 2009-03-30 2010-10-21 Nomura Research Institute Ltd 動作検証装置および動作検証プログラム
JP2011060196A (ja) * 2009-09-14 2011-03-24 Hitachi Ltd ウェブアプリケーションの操作記録・再生方法およびシステム
US8463874B2 (en) 2009-09-14 2013-06-11 Hitachi, Ltd. Method and system of recording and reproducing web application operation
JP2011164785A (ja) * 2010-02-05 2011-08-25 Nomura Research Institute Ltd 動作検証装置、動作検証方法および動作検証プログラム
JP2011164786A (ja) * 2010-02-05 2011-08-25 Nomura Research Institute Ltd 動作検証装置、動作検証方法および動作検証プログラム
JP2011164787A (ja) * 2010-02-05 2011-08-25 Nomura Research Institute Ltd 動作検証システム
JP2011164784A (ja) * 2010-02-05 2011-08-25 Nomura Research Institute Ltd 動作検証装置、動作検証方法および動作検証プログラム
JP2011164788A (ja) * 2010-02-05 2011-08-25 Nomura Research Institute Ltd 動作検証装置、動作検証方法、および動作検証プログラム
JP2011164783A (ja) * 2010-02-05 2011-08-25 Nomura Research Institute Ltd 動作検証装置、動作検証方法および動作検証プログラム
WO2011161735A1 (ja) * 2010-06-25 2011-12-29 株式会社日立製作所 ウェブアプリケーションの操作再現方法およびシステム
WO2012020512A1 (ja) * 2010-08-09 2012-02-16 株式会社日立製作所 ウェブアプリケーションの操作記録方法およびシステム
CN102792295A (zh) * 2010-09-17 2012-11-21 株式会社东芝 操作信息生成设备
WO2012035654A1 (ja) * 2010-09-17 2012-03-22 株式会社東芝 操作情報生成装置
WO2012086217A1 (ja) * 2010-12-24 2012-06-28 株式会社日立製作所 稼働ログ収集方法および装置
JP2012133695A (ja) * 2010-12-24 2012-07-12 Hitachi Ltd 稼働ログ収集方法および装置
JP2014510969A (ja) * 2011-02-28 2014-05-01 オラクル・インターナショナル・コーポレイション ユーザ開始動作を監視し、バックエンドオペレーションと相互に関連付けるための方法およびコンピュータプログラム
KR101988608B1 (ko) 2011-02-28 2019-06-12 오라클 인터내셔날 코포레이션 사용자 시작 동작과 백 엔드 동작을 모니터하고 상관시키기 위한 방법 및 컴퓨터 프로그램
KR20140009416A (ko) * 2011-02-28 2014-01-22 오라클 인터내셔날 코포레이션 사용자 시작 동작과 백 엔드 동작을 모니터하고 상관시키기 위한 방법 및 컴퓨터 프로그램
JP2013232035A (ja) * 2012-04-27 2013-11-14 Pfu Ltd 情報処理システム、情報処理装置、情報処理方法、及びプログラム
JP2018101446A (ja) * 2012-07-30 2018-06-28 グーグル エルエルシー 第1コンピューティングデバイスから第2コンピューティングデバイスへのアプリケーションの状態の転送
US8813002B2 (en) 2012-10-26 2014-08-19 Fujitsu Limited Circuit board design support program, design support method, and design support apparatus
US9628349B2 (en) 2012-12-19 2017-04-18 Amazon Technologies, Inc. Interactivity analyses of web resources based on reload events
US9483572B2 (en) 2012-12-19 2016-11-01 Amazon Technologies, Inc. Interactivity analyses of web resources based on reload events
JP2016505969A (ja) * 2012-12-19 2016-02-25 アマゾン テクノロジーズ インコーポレイテッド リロードイベントに基づくウェブリソースの対話性分析
WO2015029195A1 (ja) * 2013-08-29 2015-03-05 三菱電機株式会社 模擬装置、情報生成装置、模擬方法及び模擬プログラム
WO2015029464A1 (ja) * 2013-08-29 2015-03-05 三菱電機株式会社 模擬装置、情報生成装置、模擬方法、模擬プログラム、環境提供システム、環境提供方法及びプログラム
JP2017536614A (ja) * 2014-10-20 2017-12-07 アビニシオ テクノロジー エルエルシー ルールの規定及びデータへの適用
US11334536B2 (en) 2014-10-20 2022-05-17 Ab Initio Technology Llc Specifying and applying rules to data

Also Published As

Publication number Publication date
US20080126931A1 (en) 2008-05-29

Similar Documents

Publication Publication Date Title
JP2008117093A (ja) ユーザ操作記録・再現方法及び装置
US11822919B2 (en) Auto-generation of API documentation via implementation-neutral analysis of API traffic
JP5511845B2 (ja) マークアップ言語を通してクライアント・ブラウザ状態のサーバ側ロギングを遂行するための方法
JP4140916B2 (ja) Webページにおける状態遷移を解析する方法
JP5325169B2 (ja) ウェブアプリケーションの操作再現方法およびシステム
US8924943B2 (en) Browser emulator system
US20100082747A1 (en) Real-time collaborative browsing
JP5483965B2 (ja) ウェブアプリケーションの操作記録・再生方法およびシステム
US9122762B2 (en) Method and system to maintain a web page
US20130132833A1 (en) Systems and Methods For Remote Tracking And Replay Of User Interaction With A Webpage
US20130191814A1 (en) Test scenario generation method, test scenario generation system, and test scenario generation program
JP2005531049A (ja) アプリケーションの自動インストール
JP4023803B2 (ja) ウェブアプリケーション開発支援装置、データ処理方法及びプログラム
JP5476326B2 (ja) ウェブ操作記録・再現方法および装置
WO2014209263A1 (en) Contextual-based localization based on manual testing
US20130263156A1 (en) Operation log collection method and device
JP4846832B2 (ja) Webページの表示方法、計算機システム及びプログラム
JP5151696B2 (ja) ユニフォームリソースロケータ情報を書き換えるプログラム
JP4048736B2 (ja) 障害解析支援方法および装置
JP6426535B2 (ja) テスト支援装置、及びテスト支援方法
JP2007052552A (ja) コンテンツ管理方法及びコンテンツ管理システム
WO2023059576A1 (en) Dynamic recorder for demonstrations of web-based software applications
JP2005148861A (ja) 情報取得プログラム、情報取得方法および情報取得装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090115

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20100824

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100914

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20101111

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20111115