(57)【特許請求の範囲】
【請求項１】
少なくとも１つのコンピュータプロセッサを用いてウェブリソースの対話性のレベルを判定するためのコンピュータ実装方法であって、
少なくとも１つのサーバから、ウェブリソースを生成するための複数のコードをクライアント側アプリケーションにネットワーク上で送信することであって、前記複数のコードは、前記ウェブリソースのリロードイベント後、前記ウェブリソース、前記クライアント側アプリケーション、または前記少なくとも１つのサーバのうちの少なくとも１つに関する操作情報を捕捉するための検出スクリプトを含む、送信することと、
前記少なくとも１つのサーバで、前記クライアント側アプリケーションでの前記ウェブリソースの前記リロードイベントを前記ネットワーク上で検出することと、
前記少なくとも１つのサーバで、前記ネットワーク上での前記検出スクリプトに従って前記クライアント側アプリケーションから捕捉された前記操作情報を識別することと、
前記操作情報を分析して、前記少なくとも１つのコンピュータプロセッサを用いて前記ウェブリソースの前記対話性のレベルを判定することと、を含む、コンピュータ実装方法。
【請求項２】
前記少なくとも１つのサーバで、前記クライアント側アプリケーションから前記ウェブリソースのロードイベントを前記ネットワーク上で検出することをさらに含む、請求項１に記載のコンピュータ実装方法。
【請求項３】
前記操作情報を識別することは、前記ネットワーク上で前記クライアント側アプリケーションから前記操作情報を受信することを含む、請求項１に記載のコンピュータ実装方法。
【請求項４】
前記操作情報を識別することは、前記少なくとも１つのサーバで、前記少なくとも１つのコンピュータプロセッサを用いて前記操作情報を捕捉することを含む、請求項１に記載のコンピュータ実装方法。
【請求項５】
前記リロードイベントは、
前記クライアント側アプリケーションでのリフレッシュボタンの選択、
前記クライアント側アプリケーションでのリロードボタンの選択、
前記クライアント側アプリケーションでのハイパーリンクされたアイコンの選択、
前記クライアント側アプリケーションでのハイパーリンクされた複数のテキストの選択、
前記クライアント側アプリケーションでのブックマークの選択、または
前記クライアント側アプリケーションのシャットダウン、前記クライアント側アプリケーションの再起動、および前記クライアント側アプリケーションから前記ウェブリソースを生成するための前記複数のコードに対する要求のうちの少なくとも１つを含む、請求項１に記載のコンピュータ実装方法。
【請求項６】
前記操作情報は、
前記ウェブリソースのユニフォームリソースロケータ、
前記ウェブリソースの前記ロードイベントの開始と前記ウェブリソースの前記リロードイベントの開始との間の経過時間、
例外に応答して前記クライアント側アプリケーションによって生成された少なくとも１つの例外オブジェクト、
前記リロードイベントが開始された前記クライアント側アプリケーションのタイプ、
前記クライアント側アプリケーションによってロードされたいくつかのバーチャルマイルストーン、
前記リロードイベントの前記開始時に前記クライアント側アプリケーションを操作するコンピュータ上で維持された複数のオペレーティングソフトウェアのバージョン、および
前記リロードイベントの前記開始時の前記コンピュータの場所のうちの少なくとも１つを含む、請求項１に記載のコンピュータ実装方法。
【請求項７】
前記少なくとも１つのコンピュータプロセッサを用いて、前記ウェブリソースを生成するための前記複数のコードを生成することと、
前記少なくとも１つのサーバで、前記少なくとも１つのコンピュータプロセッサを用いて、ＪａｖａＳｃｒｉｐｔ（登録商標）にプログラムされる前記検出スクリプトを、前記ウェブリソースを生成するための前記複数のコードに挿入することと、をさらに含む、請求項１に記載のコンピュータ実装方法。
【請求項８】
前記ウェブリソースを生成するための前記複数のコードは、前記ウェブリソース内に少なくとも１つのバーチャルマイルストーンを生成する命令を含み、
前記検出スクリプトは、
クライアントデータオブジェクトを生成する命令と、
少なくとも１つの例外に関する情報を前記クライアントデータオブジェクトに追加する命令と、
前記複数のコードの前記送信と前記リロードイベントの前記検出との間の経過時間に関する情報を前記クライアントデータオブジェクトに追加する命令と、
前記クライアント側アプリケーションによる前記少なくとも１つのバーチャルマイルストーンの生成に関する情報を追加する命令と、
前記クライアント側アプリケーションに関する情報を前記クライアントデータオブジェクトに追加する命令と、
前記クライアントデータオブジェクトを前記リロードイベントの前記少なくとも１つのサーバ前記検出に送信する命令と、を含む、請求項１に記載のコンピュータ実装方法。
【請求項９】
前記少なくとも１つのサーバで、複数のビジネスルールを識別することと、
前記少なくとも１つのサーバで、前記クライアントデータオブジェクトを分析して、前記複数のビジネスルールのうちのいずれかが破られたかを識別することと、をさらに含む、請求項８に記載のコンピュータ実装方法。
【請求項１０】
前記複数のビジネスルールは、閾値数のリロードイベント、閾値数の例外、または閾値数のバーチャルマイルストーンのうちの少なくとも１つを含む、請求項９に記載のコンピュータ実装方法。
【請求項１１】
前記少なくとも１つのサーバから、前記リロードイベントに応答して前記ネットワーク上で前記ウェブリソースを生成するための前記複数のコードを前記クライアント側アプリケーションに送信することをさらに含む、請求項１に記載のコンピュータ実装方法。
【請求項１２】
前記検出スクリプトは、前記クライアント側アプリケーションに前記操作情報をデータベースに記憶させるようにさらに適合される、請求項１に記載のコンピュータ実装方法。
【請求項１３】
前記少なくとも１つのサーバで、前記リロードイベント後、前記ウェブリソースとのユーザ対話に関する情報を受信することをさらに含み、前記操作情報を分析して、前記ウェブリソースの前記対話性のレベルを判定するステップは、前記リロードイベント後、前記ウェブリソースとの前記ユーザ対話と関連付けられた前記複数のコードの一部を識別することを含む、請求項１に記載のコンピュータ実装方法。
【請求項１４】
前記ウェブリソース、前記クライアント側アプリケーション、または前記少なくとも１つのサーバのうちの少なくとも１つの予期された操作状態を識別することであって、前記操作情報を分析して、前記ウェブリソースの前記対話性のレベルを判定するステップは、前記操作情報を前記予期された操作状態と比較することを含む、識別することと、
前記操作情報が前記予期された操作状態と一致する場合、前記ウェブリソースの前記対話性のレベルが十分であると判定することと、
前記操作情報が前記予期された操作状態と一致しない場合、少なくとも１つの警告を送信することと、をさらに含む、請求項１に記載のコンピュータ実装方法。
【請求項１５】
前記操作情報は、前記リロードイベントの開始時に前記クライアント側アプリケーションによってロードされた前記ウェブリソースの一部に関する情報を含み、
前記操作情報を分析して、前記ウェブリソースの前記対話性のレベルを判定することは、前記リロードイベントの前記開始時に前記クライアント側アプリケーションによってロードされた前記ウェブリソースの前記一部に対応する前記複数のコードの一部を識別することを含む、請求項１に記載のコンピュータ実装方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、リロードイベントに基づくウェブリソースの対話性分析に関する。
【背景技術】
【０００２】
コンピュータユーザは、ウェブブラウザおよびクライアント側アプリケーション等の他のものを用いてワールドワイドウェブの膨大なリソースにアクセスすることができ、このアプリケーションは一般に、ハイパーテキスト転送プロトコル（または「ＨＴＴＰ」）等のある特定のプロトコルに従って１つ以上のサーバおよび／またはサーバ側アプリケーションからハイパーテキストマークアップ言語（または「ＨＴＭＬ」）等のコンピュータ言語で書かれたコードを受信し、このコードを解析して、文書オブジェクトモデル（または「ＤＯＭ」）にし、かつＤＯＭをアセンブルして、ユーザインターフェース上でユーザに表示され得るウェブページにすることによって動作する。そのようなブラウザまたは他のアプリケーションは典型的に、サーバから受信された情報をユーザインターフェース上に表示され得るコンテンツに変換するためのエンジン、構文解析および実行スクリプトのためのインタープリタ、ならびに「クッキー」、またはユーザの閲覧行動に関連し、かつ将来同じウェブサイトまたは他のウェブサイトによって読み出され得るファイルの形態で情報を記憶するためのデータベースまたは他のデータストアを含む。
【０００３】
ウェブブラウザ上のウェブページの表示は、ロードイベントの開始から始まり、これは、ウェブブラウザにユニフォームリソースロケータ（または「ＵＲＬ」）またはロードイベントによって対象にされた他のファイル場所と関連付けられた１つ以上のファイルに対する要求を送信させる。そのようなロードイベントは、アドレスボックスもしくはアドレスバーへのＵＲＬの入力、ＵＲＬにハイパーリンクされ得る画像もしくはテキストのセットの選択、ブックマークの選択、ＵＲＬにリンクされ、もしくはそうでなければそれと関連付けられ得るホームボタンもしくは任意の他の特徴、またはウェブブラウザのシャットダウン、およびウェブブラウザの再起動時のウェブページへの後続の復帰を含み得る。ウェブブラウザのユーザがブラウザにロードイベントを提供するとき、ウェブブラウザは、ＵＲＬと関連付けられたインターネットプロトコル（または「ＩＰ」）のためのドメイン名システム（または「ＤＮＳ」）「ルックアップ」と呼ばれるときもある、様々なデータストアの検索を実施することができる。例えば、ＵＲＬと関連付けられ得るＩＰアドレスを特定することを試みるとき、ブラウザは、外部ソースと同様に、独自のキャッシュしたレコード、またはオペレーティングシステムもしくはインターネットへのアクセスが提供されるルータ上のキャッシュ内に記憶されたレコードを検索することができる。
【０００４】
ＵＲＬと関連付けられたＩＰアドレスが識別されると、ブラウザは、ＨＴＴＰに従ってこのＵＲＬでのウェブページに対する要求を、このページと関連付けられたファイルが特定されるサーバに送信し、サーバは、ＨＴＭＬ等の１つ以上のコンピュータ言語で表されたコードの形態でブラウザに応答を提供することによって要求を処理する。ブラウザは次に、コードをウェブページにレンダリングし始めることができ、必要に応じて、サーバによって提供されたコード内に埋め込まれ得るファイルに対する要求を送信することができる。例えば、コードがＨＴＭＬを含み、画像、マルチメディア、または他の場所で（例えば、外部サーバ上に）見つけられ得る他のファイルを参照する場合、ブラウザは、ファイルの各々に対する要求を送信することができる。コードおよび他のファイルがサーバからブラウザによって受信されるとき、ブラウザは、表示のためのウェブページをユーザインターフェース上にアセンブルし始めることができる。
【０００５】
時々、ウェブページのローディング中、またはウェブページのローディングが完了した後、ウェブブラウザのユーザは、リロードイベントを開始するために選択することができ、このイベントは、ページの初期のローディングを促したロードイベントで提供された同じＵＲＬと関連付けられた１つ以上のファイルに対する要求の再送信をもたらす。最も一般的に、リロードイベントは、「リロード」または「リフレッシュ」ボタンの選択を含み、これは、サーバにごく最近提出されたウェブページのＵＲＬを再提出する。他のリロードイベントは、これらに限定されないが、アドレスバーもしくはアドレスボックスにロードイベントが提供された同じＵＲＬの再入力、ロードイベントが提供された同じＵＲＬにハイパーリンクされる画像もしくはテキストのセットの再選択（すなわち、ウェブページもしくは電子メール文書でハイパーリンクを選択すること、現在表示されるウェブページのブックマークの選択）、またはシャットダウンもしくはウェブブラウザの動作を安全にする他の動作後、ウェブブラウザをウェブページに戻す任意のステップを含み得る。
【０００６】
ウェブブラウザ等のクライアントベースのアプリケーションのユーザは、様々な理由でリロードイベントを開始する場合がある。第一に、ユーザは、ウェブページまたはその上に表された１つ以上の要素がディスプレイ上にロードする速度に不満を持っている場合がある。第二に、ウェブページ上に表されることを意図された要素のうちの１つ以上、またはウェブページ全体それ自体は、最終的にロードすることができない場合がある。第三に、恐らく最も重要なことだが、ユーザは、第１の例でウェブページに訪れるようにユーザに促した１つ以上のタスクを実施するのを妨げられ、または阻まれる場合がある。これに関して、ウェブページに対する第２または後続の要求の提出をもたらすリロードイベントのユーザの開始は、ウェブページの少なくとも１つの態様への不満の表れ、またはユーザがリロードイベント後、最終的に実施され得るものなどの１つ以上のタスクを実施することの難しさを経験していることの兆候として検出および解釈され得る。したがって、リロードイベントの開始、またはユーザがリロードイベントを開始する頻度（例えば、単位時間あたり開始されたリロードイベントの数）は、ウェブページの対話性を、ならびに／または何らかの改善策がウェブページ、クライアント側アプリケーション、もしくはウェブページおよび関連したコンテンツが記憶されるサーバに対して必要とされるかを判定するために追跡および分析され得る。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】米国特許公開第２００９／００９４５２２号明細書
【発明の概要】
【発明が解決しようとする課題】
【０００８】
以下にさらに詳細に記載されるように、本開示は、１つ以上のウェブリソースを要求したユーザによって操作されたブラウザから受信または検出され得るリロードイベントに基づいて、１つ以上のウェブリソースの対話性を分析または監視するためのシステムおよび方法を対象とする。具体的には、本開示の一実施形態は、ウェブリソースのリロードイベントの受信または検出に基づいて、サーバまたは他の外部ソースから既に要求されたウェブリソースの対話性および操作性を分析するためのシステムおよび方法を説明し、これは、ウェブリソース、ブラウザ、および／またはブラウザが動作しているコンピュータハードウェアに関して捕捉される所定のデータのセットを伴い得る。そのようなリロードイベントは、ウェブリソースを表示しているブラウザ上の「リフレッシュ」もしくは「リロード」ボタンの選択、ブラウザ上のアドレスボックスもしくはアドレスバーへのウェブリソースに対応するユニフォームリソースロケータ（もしくは「ＵＲＬ」）の再入力、ウェブリソースに対応する同じＵＲＬにハイパーリンクされた画像、ボタン、もしくはテキストのセットの選択、またはウェブリソースに対する第２もしくは後続の要求をブラウザからサーバへ提出する任意の他の動作を含み得る。捕捉されたデータの任意の態様が所定の閾値を超えるか、またはそうでなければ障害が発生したことを示す場合、ブラウザおよび／またはコンピュータハードウェアは、不十分であると判定され得、不足に対処するために１つ以上の改善策が手動または自動的に取られ得る。
【０００９】
当業者であれば、ウェブリソース（ウェブページを含むがこれに限定されない）がハイパーテキストマークアップ言語（または「ＨＴＭＬ」）で通常書かれたコードのセットから構成され、このコードがロードイベントの形態でユーザおよび／またはブラウザからの要求の受信時にサーバからブラウザに転送されることを認識している。コードのセットは、他の外部コンテンツへのリンクと同様に、テキスト、画像、もしくは媒体を表示するための特徴、またはブラウザによって提供され、１つ以上のスクリプト言語（例えば、ＪａｖａＳｃｒｉｐｔ（登録商標））にプログラムされるものなどのランタイム環境で動的な機能的タスクを実施するためのスクリプト化命令の形態での他の機能を含み得る。ブラウザ上のアドレスボックスもしくはアドレスバーへのＵＲＬの入力、ブラウザによって提供されたボタンまたはブックマークの選択、またはハイパーリンクされた画像もしくはテキストのセットの選択に応答するなど、ブラウザがロードイベントを受信すると、ブラウザは、サーバに呼び出しをかける。呼び出しがサーバによって受信されると、コードおよび任意の関連したファイルは、１つ以上のエンジンがコードおよび関連したファイルをレンダリングおよび解析して、文書オブジェクトモデル（または「ＤＯＭ」）の形態で認識可能なコンテンツにし、ユーザインターフェース上にＤＯＭと一致するレンダリングおよび構文解析されたコンテンツを提供する。ウェブリソースは、音声（例えば、．ＭＰ３もしくは．ＷＭＡファイル）と同様に、１つ以上のウェブページに表示されたテキスト、画像、および／または媒体、映像（例えば、．ＷＭＶもしくは．ＡＶＩファイル）、またはネットワーク上で送信され、かつウェブブラウザもしくは１つ以上の類似のアプリケーションを通じてユーザに提供され得る他のテキストベースのコンテンツもしくはマルチメディアコンテンツを含み得る。
【００１０】
ウェブリソースを生成するためのコード内に提供され得るスクリプト化命令のタイプのうちのいくつかは、クライアント側アプリケーション（ウェブブラウザ等）またはクライアント側アプリケーションが動作していて、かつウェブリソースが提供されるコンピュータハードウェアの動作または状態に関する情報を検出および記憶する検出スクリプトを含み得る。例えば、ＪａｖａＳｃｒｉｐｔ（登録商標）での「ナビゲータ」オブジェクトは、クライアント側アプリケーションの名前および／またはバージョン、ならびにアプリケーション、またはアプリケーションが動作するオペレーティングシステムもしくはプラットフォームの言語を検出することができる。加えて、類似の命令は、ウェブリソースがユーザから要求される日時、またはユーザがウェブリソースを要求した場所を検出することができる。そのような情報は、クライアント側（例えば、ＨＴＭＬ５ストレージファイルまたは「クッキー」）上の任意のデータストア上に記憶され、クライアント側アプリケーションとサーバ側アプリケーションとの間の接続性が確認されると、サーバ側に送信され得る。例えば、ウェブリソースがネットワーク障害によりロードすることができないとき、ウェブブラウザのユーザがリロードイベントを開始する場合、ウェブブラウザは、ネットワーク障害が解決されるまでサーバと通信できないにもかかわらず、検出スクリプトに従って情報を捕捉することができる。そのような状況では、情報は、ウェブブラウザとサーバおよび／またはサーバ側アプリケーションとの間の接続性が回復されると、サーバおよび／またはサーバ側アプリケーションに送信され得る。
【００１１】
本開示のシステムおよび方法は、検出スクリプトまたは他の特徴を利用して、ウェブリソースが提供されるクライアント側アプリケーションまたはコンピュータマシンに関する操作データを検出または記録することができ、そのようなデータを分析して、ウェブリソースの対話性のレベルを、またはウェブリソースを提供するための何らかの課題または不利な状態が存在するかを判定することができる。クライアント側アプリケーションのユーザからのリロードイベント、すなわち、特定のウェブリソースに対する第２または後続の呼び出しの受信または検出に応答して、本開示のシステムおよび方法は、クライアント側アプリケーションからそのような操作データを要求し、アプリケーションからデータを受信すると、データを分析して、リロードイベントがアプリケーションに関する１つ以上の操作課題を示すかを判定することができる。例えば、ユーザは、要求されたウェブページがロードすることができないか、もしくはある特定の期間後にロードされない場合、またはウェブページに表示されることを意図される特定の態様（例えば、画像または映像ファイル）がページをロードすることができない場合、ウェブブラウザ上の「リフレッシュ」または「リロード」ボタンを選択することができる。したがって、「リフレッシュ」または「リロード」ボタンの選択は、ページがロードしていないか、もしくはゆっくりとロードしているか、またはウェブページのある特定の要素がロードすることをできていないことを示すことができる。加えて、ウェブリソースを要求するウェブブラウザのユーザからの初期のロードイベントの受信（すなわち、アドレスボックスへのＵＲＬの入力またはハイパーリンクされた画像もしくはテキストのセットの選択）と、第２または後続の時間のためのウェブリソースを要求するウェブブラウザのユーザからのリロードイベントの受信または検出（すなわち、「リフレッシュ」または「リロード」ボタンの選択）との間の経過時間はまた、ウェブリソースの対話性のレベルに関する１つ以上の兆候を提供することができる。最後に、ユーザが特定の場所からリロードイベントを提供する場合、ユーザの場所は、何らかの課題または不利なイベントがその特定の場所に関連し得るか（すなわち、ある領域内の１つ以上のユーザに影響を与えるネットワーク停止または遅延）を判定するために分析され得る。
【００１２】
本開示の一実施形態に従って、タブレットコンピュータ上で操作するウェブブラウザのユーザは、ドメイン名およびファイルパスを含むＵＲＬをウェブブラウザ上のアドレスボックスに入力することによってウェブページを要求する。このロードイベントに応答して、ＵＲＬと関連付けられたＩＰアドレスは、ブラウザからサーバに送信され、次に、ＨＴＭＬコードのセットおよび任意の関連付けられたファイルがサーバからブラウザに送信される。コードのセットは、ブラウザおよびタブレットコンピュータの現在の操作状態に関するデータを記録する検出スクリプト等のコードのサブセットを含み得、これは、リロードイベントが開始された時点で、コンピュータ上のブラウザおよびオペレーティングシステムの名前およびバージョン、リロードイベントの日時、コンピュータのＩＰアドレス、コンピュータの場所、ロードイベントの開始とリロードイベントの開始との間の経過時間、リロードイベントの時点のページの状態（すなわち、ＨＴＭＬおよびその中に埋め込まれた任意のファイルのローディングの状態）を含む。ウェブページがウェブブラウザ上でロードしているとき、ユーザは、ブラウザ上の「リフレッシュ」ボタンを選択し、それによりリロードイベントを開始し、ブラウザおよびタブレットコンピュータの操作状態に関するデータが記録され、サーバに送信される。
【００１３】
データが捕捉され、サーバに送信されると、サーバは、データを分析して、ユーザがリロードイベントを開始するために選択し得た何らかの理由を識別する。例えば、データは、単独か、または他のコンピュータから受信もしくは検出された他のリロードイベントに関するデータと組み合わせるかのいずれかで、ウェブページが十分な期間内、すなわち、ウェブページがロードする速度が所定の閾値を下回る場合、ロードしていないか、またはウェブページの特定の要素が全くロードしていないことを反映することができる。加えて、タブレットコンピュータ上で動作している特定のブラウザまたはそのバージョン上でウェブページをロードすることに関する問題があり得る。最後に、ウェブページが特定のウェブブラウザおよび／またはウェブブラウザが動作しているコンピュータ上でロードするのを妨げている独立した未知の障害および／または局所的な障害があり得る。そのような状況では、ウェブページに関する１つ以上の課題は、リロードイベントに基づいて識別され得、これは、そのような課題が、概してテキストもしくは埋め込まれたファイルに関して、またはユーザによって操作された特定のブラウザもしくはコンピュータ上のウェブページのローディングに関して存在し得ることをサーバの操作者に警告することができる。
【００１４】
本開示の別の実施形態に従って、ソーシャルネットワークにアクセスするためのアプリケーションが携帯電話にインストールされる。このアプリケーションにより、携帯電話のユーザは、ユーザの要求でソーシャルネットワークの会員によって作成された様々なページおよび投稿を閲覧することができる。このアプリケーションは、ユーザが既に表示したページまたは投稿に対する第２または後続の要求を含み得る、ユーザがリロードイベントを提供した時点での携帯電話の状態、アプリケーション、およびセルラーまたはワイヤレスフィディリティー（または「ＷｉＦｉ」）接続上の携帯電話とソーシャルネットワークとの間の接続性に関する操作データを収集し、それをソーシャルネットワークに報告し、かつ十分な接続性レベルが回復された時点の操作データをソーシャルネットワークに送信するようにプログラムされるコードのセットを含む。
【００１５】
収集され、リロードイベントを提出したソーシャルネットワークの会員の身元を含み得る操作データ、リロードイベントが開始された時点でのメガビット毎秒（または「Ｍｂｐｓ」）で表された携帯電話とソーシャルネットワークとの間の送信速度、携帯電話の特定のブランドおよびそれにインストールされたオペレーティングシステムのバージョン、リロードイベントが要求された時点での携帯電話の場所（全地球測位システム（または「ＧＰＳ」）受信器等の搭載ハードウェアを用いて、または１つ以上のセルラーの中継塔との三角測量または場所特定によって検出され得る）、ユーザが表示することを意図したページまたは投稿、ならびに携帯電話が通信しているセルラーセルまたは中継塔など、携帯電話とソーシャルネットワークとの間の接続に関する任意の利用可能なデータ。リロードイベントが開始されると、この情報は、携帯電話上のキャッシュまたは他のデータストア内に記憶され、携帯電話とソーシャルネットワークとの間の接続性が確認されると、ソーシャルネットワークに送信され、これは、携帯電話が承認されたＷｉＦｉ接続ハブもしくはセルラーの中継塔の範囲内であるとき、または携帯電話がユニバーサルシリアルバス（または「ＵＳＢ」）接続を経てデスクトップもしくはラップトップコンピュータなどまで、１つ以上の汎用コンピュータと同期されるとき生じ得る。
【００１６】
そのような特徴をそのモバイルアプリケーション内に含むことによって、ソーシャルネットワークは、アプリケーションがインストールされる特定のタイプのモバイルデバイスに関するその対話性を監視し、ソーシャルネットワークにアクセスしながらユーザが直面し得るあらゆる障害を識別および評価することができる。例えば、ソーシャルネットワークの特定の会員がページまたは投稿に応答してリロードイベントを頻繁に提出する場合、その特定の会員によって開始されたリロードイベントに応答するアプリケーションからのデータの受信は、重きを置かれないか、またはソーシャルネットワークもしくはアプリケーションとのその接続性における障害を示す可能性が低いとスコアされ得る。ソーシャルネットワークの複数の会員が単一のページまたは投稿に応答してリロードイベントを提供する場合、単一のページまたは投稿は、ソーシャルネットワークまたはその上に表示されたテキストおよび／もしくはマルチメディアに関するその接続性における障害を示す可能性が高いとスコアされ得る。ソーシャルネットワークの会員は、彼らの携帯電話がセルラー電話接続を介してインターネットに接続されるが、彼らの携帯電話がＷｉＦｉ接続を介してインターネットに接続されないときにリロードイベントを提出する場合、ソーシャルネットワークは、アプリケーションソフトウェアおよび／または独自のサーバを障害追跡して、アプリケーションがＷｉＦｉ接続を介してソーシャルネットワークに接続する何らかの難しさを有しているかを判定することができる。最後に、ソーシャルネットワークの会員が複数のページまたは投稿に関連してリロードイベントを提出する速度が標準的な所定の閾値の確率または頻度を超える場合、１つ以上の一般的な課題がソーシャルネットワーク全体として悩まし得ることが理解され得る。
【００１７】
本開示のさらに別の実施形態に従って、サーバ側アプリケーションは、それぞれのクライアント側アプリケーションとの対話性を監視するために検出スクリプトで既存のウェブページを高めるようにプログラムされる。ユーザがサーバでホスティングされる特定のウェブページを要求するクライアント側アプリケーションからロードイベントを開始すると、サーバ側アプリケーションは、コードをクライアント側アプリケーションに送信する前に、特定の検出スクリプトを、ウェブページを表示するためのコードに挿入する。検出スクリプトは、１つ以上のバーチャルマイルストーンをウェブページのＤＯＭに挿入するためのコード、ならびにリロードイベントの開始時にウェブページを要求したブラウザおよび／またはコンピュータの操作状態に関するデータを記録し、かつクライアント側アプリケーションとサーバ側アプリケーションとの間の接続性が確認されるときにデータをサーバに送信するための１つ以上のスクリプト化イベントを含む。このデータは、リロードイベントが開始された日時、開始された特定のタイプのリロードイベント（例えば、「リフレッシュ」もしくは「リロード」ボタンの選択、アドレスボックスへのＵＲＬの第２もしくは後続の入力、またはブックマークもしくはハイパーリンクの第２もしくは後続の選択）、またはリロードイベントが開始された時点でクライアント側アプリケーションによってロードされたウェブページの量もしくは程度を含み得、これは、クライアント側アプリケーションによってロードすることに成功したバーチャルマイルストーンの数によって少なくとも一部測定または評価され得る。バーチャルマイルストーンは、ウェブページが生成されるコード内に表されるか、または埋め込まれ得るウェブページのテキスト、画像、フレーム、要素、または他の態様の部分を含み得る。
【００１８】
リロードイベントが開始されると、このデータは、データがサーバで、および／またはサーバ側アプリケーションによって捕捉された他のデータと集約され、かつリロードイベントを開始することをユーザに促し得るあらゆる考えられる課題を判定するために分析され得る場合、クライアント側アプリケーションによって捕捉され、サーバ側アプリケーションに送信される。具体的には、ウェブブラウザに最終的に転送され、および／またはウェブページ上に表示することに成功したバーチャルマイルストーンの数および場所は、ＤＯＭ内でウェブページが適切にロードするのを妨げた１つ以上の考えられる課題の場所を示すことができ、リロードイベントを開始することをユーザに促すことができる。
【００１９】
したがって、本開示のシステムおよび方法は、ウェブリソースが要求もしくはロードされたアプリケーションもしくはマシンから、またはウェブリソースがホスティングされるアプリケーションもしくはマシンからリロードイベントの開始と関連付けられたデータを分析することによってウェブリソースの対話性を監視するために利用され得る。例えば、そのようなデータは、ウェブリソース、クライアント側アプリケーションもしくはウェブリソースが要求された任意のクライアント側ハードウェア、サーバ側アプリケーションもしくはウェブリソースが生成されたサーバ側ハードウェア、またはリロードイベントの受信もしくは検出前後にユーザによって取られた任意の他の動作に関するあらゆる操作情報を含み得る。リロードイベントの開始が予期されない場合、またはリロードイベントが開始される頻度が所定の閾値を超える場合、ウェブリソース、クライアント側アプリケーション、サーバ側アプリケーション、またはこれらと関連付けられた任意のハードウェアもしくはソフトウェアに少なくとも関する１つ以上の課題がウェブリソースの対話性に関して存在することが理解され得る。
【図面の簡単な説明】
【００２０】
【図１】本開示の実施形態に従う、リロードイベントに基づいてウェブリソースの対話性を分析するためのシステムのブロック図である。
【図２】本開示の実施形態に従う、ウェブページをレンダリングし、かつリロードイベントに基づいてウェブリソースの対話性を分析するためのウェブブラウザの一実施形態である。
【図３】本開示の実施形態に従う、リロードイベントに基づいてウェブリソースの対話性を分析するためのプロセスのフローチャートである。
【図４】本開示の実施形態に従う、リロードイベントに基づいてウェブリソースの対話性を分析するためのシステムまたは方法への送信のためにクライアント側アプリケーションで捕捉されたデータの表である。
【図５】本開示の実施形態に従う、クライアント側アプリケーションで捕捉され、かつリロードイベントに基づいてウェブリソースの対話性を分析するためのシステムおよび方法によって分析されたデータの表である。
【図６】本開示の実施形態に従う、リロードイベントに基づいてウェブリソースの対話性を分析するためのプロセスのフローチャートである。
【図７Ａ】本開示の実施形態に従う、リロードイベントに基づいてウェブリソースの対話性を分析するためのシステムおよび方法によって分析されるウェブページを表示するためのコードのセットである。
【図７Ｂ】本開示の実施形態に従う、リロードイベントに基づいてウェブリソースの対話性を分析するための一実施形態による分析のために、図７Ａのコードのセットに基づいて生成されたウェブページである。
【図８】本開示の実施形態に従う、ウェブリソースの対話性を分析するためのプロセスのフローチャートである。
【図９】本開示の実施形態に従う、リロードイベントに基づいてウェブリソースの対話性を分析するためのプロセスのフローチャートである。
【発明を実施するための形態】
【００２１】
図１を参照すると、リロードイベントに基づいてウェブリソースの対話性を分析するための１つのシステム１００が示される。図１を参照すると、システム１００は、インターネット等のネットワーク１５０にわたって互いに接続された、ユーザ１１０、１２０、１３０（または会員、顧客、消費者、買い物客、もしくは購買者）、ならびに企業１４０（またはホスト、市場、もしくは他の組織）を含む。
【００２２】
ユーザ１１０、１２０、１３０は、ラップトップコンピュータ１１２上で動作するウェブブラウザ１１４、タブレットコンピュータ１２２上で動作するウェブブラウザ１２４、またはスマートフォン１３２上で動作するウェブブラウザ１３４などのクライアントアプリケーションを用いてインターネット１５０上で、企業１４０等の実体または個人と関連付けられた１つ以上のリソースにアクセスすることを望む任意の実体または個人であり得る。ユーザ１１０、１２０、１３０は、ラップトップコンピュータ１１２、タブレットコンピュータ１２２、および／またはスマートフォン１３２を用いて、ネットワーク１５０上でデジタルデータを送受信することによって企業１４０に接続するか、またはそうでなければそれと通信することができ、これは、線１１５、１２５、１３５によって示されるように、有線または無線手段を通じてインターネット１５０に接続され得る。ウェブブラウザ１１４、１２４、１３４は、企業のウェブサイト１４４を表示し、および／またはそれと通信するユーザ１１０、１２０、１３０に１つ以上のユーザインターフェースを提供する。
【００２３】
さらに、当業者であれば、ユーザ１１０、１２０、１３０がキーボード、キーパッド、マウス、スタイラス、タッチスクリーン、もしくは他のデバイス（図示せず）を使用するか、または、ラップトップコンピュータ１１２および／もしくはウェブブラウザ１１４、タブレットコンピュータ１２２および／もしくはウェブブラウザ１２４、スマートフォン１３２および／もしくはウェブブラウザ１３４、または企業１４０、サーバ１４２、ウェブサイト１４４、データベース１４６、および／もしくはプロセッサ１４８と対話するか、またはアイテム、リンク、ノード、ハブ、もしくは本開示の任意の他の態様を「選択する」方法を使用することができることを認識するであろう。
【００２４】
企業１４０は、オンライン市場もしくは他の処理システムからのユーザ１１０、１２０、１３０等の顧客によって販売すること、またはそうでなければアイテムをダウンロード、購入、賃貸、賃借、もしくは借用することを利用可能にすることを含むがこれらに限定されない任意の理由で、ウェブサイト１４４をホスティングするサーバ１４２、データベース１４６、および／または１つ以上のコンピュータプロセッサ１４８を含むネットワーク化されたコンピュータ基盤を維持するあらゆる実体または個人であり得る。ウェブサイト１４４は、１つ以上の物理的コンピュータサーバ１４２を用いて実装され得、これは、線１４５によって示されるように、デジタルデータを送受信することによってネットワーク１５０を接続するか、またはそうでなければそれと通信する。加えて、企業１４０がオンライン市場である場合、市場１４０で利用可能にされるか、またはユーザ１１０、１２０、１３０によって注文されたアイテムは、１人以上の第三者の販売業者（または商人もしくは製造業者）によって作製されるか、または彼らから取得され得、企業１４０それ自体は、商人または販売業者であり得る。
【００２５】
本明細書に記載されるコンピュータ、サーバ、デバイスなどは、必要な電子機器、ソフトウェア、メモリ、ストレージ、データベース、ファームウェア、論理／状態マシン、マイクロプロセッサ、通信リンク、ディスプレイまたは他の視覚もしくは音声ユーザインターフェース、印刷デバイス、ならびに本明細書に記載される機能を実施し、および／または本明細書に記載される結果を達成する任意の他の入力／出力インターフェースを有する。また、当業者であれば、そのようなコンピュータ、サーバ、デバイスなどのユーザがキーボード、キーパッド、マウス、スタイラス、タッチスクリーン、もしくは他のデバイス（図示せず）を操作し得るか、または、コンピュータ、サーバ、デバイスなどと対話するか、またはアイテム、リンク、ノード、ハブ、または本開示の任意の他の態様を「選択する」方法を操作することができることを認識するであろう。
【００２６】
「ユーザ」または「企業」によって実施されると本明細書に記載されるプロセスステップは、それらのそれぞれのコンピュータシステムによって実施されるか、または１つ以上の汎用コンピュータによって実行されたソフトウェアモジュール（またはコンピュータプログラム）内に実装される自動化されたステップであり得る。さらに、「ユーザ」または「企業」によって実施されると記載されるプログラムステップは典型的に、ラップトップコンピュータ１１２、タブレットコンピュータ１２２、スマートフォン１３２、またはサーバ１４２を介して人間の操作者によって実施され得るが、あるいは、自動化されたエージェントによって実施され得る。
【００２７】
ユーザ１１０、１２０、１３０、および企業１４０は、ウェブブラウザ１１４、１２４、１３４、もしくはウェブサイト１４４等の任意のウェブ対応アプリケーションもしくはインターネットアプリケーションもしくは特徴、または電子メール（もしくはＥメール）、もしくはショートメッセージサービスもしくはマルチメディアメッセージサービス（ＳＭＳもしくはＭＭＳ）のテキストメッセージなど、インターネット１５０に接続するか、または互いに通信する他のメッセージング技術を含む、任意の他のクライアントサーバアプリケーションまたは特徴を使用することができる。加えて、ラップトップコンピュータ１１２、タブレットコンピュータ１２２、スマートフォン１３２、およびサーバ１４２は、セットトップボックス、携帯情報端末、「スマートフォン」を含む携帯電話、デジタルメディアプレイヤ、ウェブパッド、タブレットコンピュータ、ラップトップコンピュータ、デスクトップコンピュータ、電子書籍リーダなどを含むがこれらに限定されない、ネットワーク上で通信することができる多くのコンピューティングデバイスのうちのいずれかを含み得る。ラップトップコンピュータ１１２とタブレットコンピュータ１２２とスマートフォン１３２とサーバ１４２との間の通信を提供するためのプロトコルおよび構成要素は、コンピュータ通信の当業者に周知であり、それ故に本明細書により詳細に記載される必要がない。
【００２８】
本明細書に記載されるデータおよび／またはコンピュータ実行可能な命令、プログラム、ファームウェア、ソフトウェアなど（本明細書では「コンピュータ実行可能な」構成要素と呼ばれる）は、ラップトップコンピュータ１１２、タブレットコンピュータ１２２、スマートフォン１３２、および／もしくはサーバ１４２内であるか、またはそれらによってアクセス可能であり、かつプロセッサ（中央処理装置またはＣＰＵなど）によって実行されるとき、プロセッサに本明細書に記載される機能および／または方法のすべてまたは一部を実施させる一連の命令を有するコンピュータ可読媒体上に記憶され得る。そのようなコンピュータ実行可能な命令、プログラム、ソフトウェアなどは、フロッピー（登録商標）ドライブ、ＣＤ−ＲＯＭドライブ、ＤＶＤ−ＲＯＭドライブ、ネットワークインターフェースなどのコンピュータ可読媒体と関連付けられた駆動機構を用いて、または外部接続を介して、ラップトップコンピュータ１１２、タブレットコンピュータ１２２、スマートフォン１３２、またはサーバ１４２のメモリにロードされ得る。
【００２９】
本開示のシステムおよび方法のいくつかの実施形態はまた、コンピュータ実行可能なプログラム製品であって、本明細書に記載されるプロセスまたは方法を実施するコンピュータ（または他の電子デバイス）をプログラムするために使用され得る命令（圧縮形態または非圧縮形態で）をその上に記憶させた非一時的機械可読記憶媒体を含むコンピュータ実行可能なプログラム製品として提供され得る。機械可読記憶媒体は、これらに限定されないが、ハードドライブ、フロッピー（登録商標）ディスケット、光ディスク、ＣＤ−ＲＯＭ、ＤＶＤ、読み取り専用メモリ（ＲＯＭ）、ランダムアクセスメモリ（ＲＡＭ）、消去可能プログラマブル読み取り専用メモリ（ＥＰＲＯＭ）、電気的消去可能プログラマブル読み取り専用メモリ（ＥＥＰＲＯＭ）、フラッシュメモリ、磁気もしくは光カード、ソリッドステートメモリデバイス、または電子命令を記憶するのに好適であり得る他のタイプの媒体／機械可読媒体を含み得る。さらに、実施形態はまた、一時的機械可読信号（圧縮または非圧縮形態で）を含むコンピュータ実行可能なプログラム製品として提供され得る。機械可読信号の例は、搬送波を用いて変調されるか否かにかかわらず、これらに限定されないが、コンピュータプログラムをホスティングするか、または動作させるコンピュータシステムまたはマシンがアクセスするように構成され得る信号を含むか、またはインターネットもしくは他のネットワークを通じてダウンロードされ得る信号を含み得る。
【００３０】
ウェブブラウザまたはクライアント側アプリケーション等の他のもののユーザは、様々な理由でサーバ側アプリケーションから要求されたウェブリソースに対してリロードイベントを開始することができる。例えば、ユーザは、ウェブページがロードするのに時間がかかり過ぎている場合、またはウェブページの１つ以上の要素がロードすることができない場合、ウェブページがリロードまたはリフレッシュされることを要求することができる。ユーザはまた、ウェブページがその上の情報の表示を更新するためにリロードまたはリフレッシュされるか、またはウェブページが予期しないか、もしくは不正確である情報を含むかを要求することができる。したがって、１つ以上のリロードイベントの開始から推定され得る情報は、ウェブブラウザのユーザの考え方への洞察、それ故にその上に表されたウェブページの品質、精度、もしくは有効性、またはウェブブラウザとウェブページが始まった１つ以上のサーバとの間の対話性への洞察を提供することができる。具体的には、ユーザがリロードイベントを開始する場合、リロードイベント後にユーザによって開始されたまさに次の対話は、多くの場合、ユーザがそのようにすることができた場合、リロードイベントの代わりに、ユーザがその対話を開始したことを仮定し得るため、特に有益であり得る。
【００３１】
図解のために、本明細書に開示されるシステムおよび方法のうちのいくつかは、図１に示されるように、企業１４０によって維持され、かつユーザ１１０、１２０、１３０によってアクセスされたウェブサイト１４４など、インターネット上で様々なコンピュータユーザによるアクセスのために企業によって維持されたウェブサイトに関して主に参照され得る。しかしながら、当業者によって認識されるように、本明細書に開示されるシステムおよび方法はまた、多くの他の状況に使用され得、それらの有用性は、本明細書に記載される好ましい実施形態のうちのいずれかに限定されない。
【００３２】
図２を参照すると、本開示のシステムおよび方法に関連して利用され得るウェブブラウザ２００の一実施形態が示される。このウェブサイトは、メニューバー２１０と、オプションバー２２０と、アドレスバー２３０と、スライダーバー２４０と、複数のコンテンツ２６０を含むウェブページ２５０とを含む。
【００３３】
メニューバー２１０は、複数の選択可能なオプション２１２、ならびにブラウザ２００を最小にするためのボタン２１４およびブラウザ２００を閉じるためのボタン２１６を含む。オプションバー２２０は、２つのごく最近表示したウェブページにそれぞれ戻るか、または進むための戻るボタン２２２および次へボタン２２４を含む。オプションバー２２０はまた、現在表示されているウェブページ２５０のコンテンツをリロードするためのリフレッシュボタン２２６と、ウェブブラウザ２００が開いている時点で通常表示される特定のページにアクセスするためのホームボタン２２８とを含む。
【００３４】
アドレスバー２３０は、特定のウェブリソースのテキストベースのアドレスまたはＵＲＬ２３２が入力され得るスペースを含む。スライダーバー２４０は、ブラウザ２００内に示されるウェブページ２５０の一部を垂直に移動するための矢印２４２、２４４およびスライダー２４６を含む、ウェブページ２５０のコンテンツを通じてナビゲートするための様々な特徴を含む。複数のコンテンツ２６０は、画像２６２、ハイパーリンクされたテキストのセット２６４、および表示されたテキストのセット２６６を含む。
【００３５】
当業者であれば、図２に示されるウェブブラウザ２００等のウェブブラウザのユーザが本開示に従う様々な方法でロードイベントを開始し得ることを理解する。第一に、ユーザは、アドレスまたはＵＲＬ２３２等のＵＲＬまたは他のファイル場所をアドレスバー２３０に入力することができ、これは、ウェブブラウザ２００からウェブページが場所する１つ以上のサーバへの呼び出しの送信をもたらす。第二に、ユーザは、ホームボタン２２８を選択することができ、これは、ウェブブラウザ２００の「ホーム」ページとして定義された所定のウェブページに対する呼び出しの送信をもたらす。第三に、ユーザは、メニューバー２１０に示されるドロップダウンメニューオプションから１つ以上のブックマークを選択することができ、これはまた、選択されたブックマークと関連付けられ得るウェブページに対する呼び出しの送信をもたらす。第四に、ユーザは、テキストのセット２６４など、ウェブページ２５０に表された１つ以上のハイパーリンクされた特徴、またはウェブリソースにリンクされるか、もしくはそうでなければそれと関連付けられる任意の他の特徴を選択することができる。ロードイベントは、これらの動作のうちのいずれか、ならびに本開示に従うクライアント側アプリケーションから１つ以上のサーバにウェブリソースに対する呼び出しの送信をもたらす任意の他の動作を含み得る。
【００３６】
同様に、当業者であれば、図２に示されるウェブブラウザ等のウェブブラウザのユーザが本開示に従う様々な方法でリロードイベントを開始し得ることも理解する。第一に、最も一般的に、ユーザは、オプションバー２２０に示される「リフレッシュ」ボタン２２６を選択することができる。第二に、ユーザは、ウェブページ２５０の表示をもたらしたアドレスまたはＵＲＬ２３２等の同じＵＲＬまたはファイル場所をアドレスバー２３０に再入力することができる。第三に、ユーザは、選択されたブックマークまたは選択されたハイパーリンクされた特徴がウェブページ２５０の表示をもたらしたアドレスまたはＵＲＬ２３２と関連付けられる場合、メニューバー２１０に示されるドロップダウンメニュー、またはウェブページ２５０に示されるハイパーリンクされた特徴のうちの１つからブックマークを選択することができる。第四に、ユーザは、ボタン２１６を選択することなどによって、ウェブブラウザ２００をシャットダウンする任意のステップを取り、その後、ウェブブラウザ２００が再起動される時点でこのウェブページに戻ることができる。リロードイベントは、これらの動作のうちのいずれか、ならびに、本開示に従って、クライアント側アプリケーションから１つ以上のサーバに、第２または後続の時間の場合、１つ以上のサーバに、ウェブリソースに対する呼び出しの再送信をもたらす任意の他の動作を含み得る。
【００３７】
上記に論じられるように、クライアント側アプリケーションによって、または１つ以上のサーバ側アプリケーションによって捕捉されたデータを含み得るクライアント側アプリケーションで開始されたリロードイベント中に捕捉され得る操作データは、リロードイベントが意図された１つ以上のウェブリソースに関して何らかの操作課題が存在するかを判定するために１つ以上のサーバ側アプリケーションによって分析され得る。図３を参照すると、リロードイベントに基づいて対話性分析を実施するためのプロセスの一実施形態を表すフローチャート３００が示される。ステップ３１０では、サーバ側アプリケーションは、検出スクリプトを含むウェブページを生成する。例えば、サーバ側アプリケーションは、そのような検出スクリプトを含むウェブページを自動的に作成することができるか、または検出スクリプトを既に生成されたウェブページに挿入することができ、検出スクリプトは、ウェブページの操作状態および対話性、ならびにアプリケーションが動作するクライアント側アプリケーションおよび／またはコンピュータに関するデータを捕捉することを意図する。ステップ３１５では、クライアント側アプリケーションは、ウェブページに対する呼び出しを送信することができる。例えば、ユーザは、ウェブページに対応するＵＲＬまたはウェブアドレスを１つ以上のコンピュータ上で動作するウェブブラウザ上のアドレスボックスに入力するか、またはウェブページに対応するハイパーリンクされた画像、ハイパーリンクされたテキストのセット、もしくはブックマークを選択することができる。
【００３８】
ステップ３２０では、サーバ側アプリケーションは、ウェブページをクライアント側アプリケーションに表示するためのコードを送信する。例えば、サーバは、ＨＴＭＬ、Ｊａｖａ（登録商標）もしくはＪａｖａＳｃｒｉｐｔ（登録商標）、または任意の他の認識可能なコンピュータ言語の形態でテキストをブラウザに送信することができる。ステップ３２５では、クライアント側アプリケーションは、検出スクリプトに従って操作データを記録し、ステップ３３０では、クライアント側アプリケーションは、ウェブページをユーザに表示することを試みる。例えば、検出スクリプトがロードイベントもしくはリロードイベントが開始されたブラウザおよび／もしくはコンピュータのタイプおよびバージョン、またはロードイベントもしくはリロードイベントが開始される時間を記録することをコンピュータシステムに要求する場合、そのような情報は、ブラウザがウェブページをユーザにレンダリングおよび表示することを試みるときに記録され得る。
【００３９】
ステップ３４０では、ユーザは、リロードイベントを開始し、これは、「リフレッシュ」もしくは「リロード」ボタンの選択、アドレスバーもしくはアドレスボックスへの元のウェブページを構成するテキストの再入力、呼び出しがステップ３１５においてサーバに送信された同じウェブページにハイパーリンクされる画像もしくはテキストのセットの選択、または第２もしくは後続の時間の場合、ウェブページがウェブブラウザ上に表示されることを要求することを試みるための任意の他の手段によって開始され得る。ステップ３５０では、クライアント側アプリケーションは、ステップ３２５で記録された操作データおよびサーバ側アプリケーションへのウェブページの要求の両方を送信する。ステップ３９０では、サーバ側アプリケーションは、クライアント側アプリケーションから受信された操作データ、ならびにサーバおよび／またはサーバ側アプリケーションで捕捉または観察された任意の他の操作データを分析して、任意の潜在的な課題を識別し、ウェブページをクライアント側アプリケーションに表示するためのコードを再び送信する。
【００４０】
したがって、サーバ側アプリケーションからウェブリソースを要求するクライアント側アプリケーションの操作状態、またはウェブリソースが存在するサーバ側アプリケーションもしくはサーバの操作状態に関する情報は、リロードイベントがユーザから受信または検出され、本開示のシステムおよび方法に従って、ウェブリソースまたはサーバ側アプリケーションに関するあらゆる課題がリロードイベントを開始することをユーザに促したかを判定するために分析される場合にサーバ側アプリケーションに捕捉または送信され得る。任意のコンピュータ言語（ＨＴＭＬまたはＪａｖａＳｃｒｉｐｔ（登録商標）を含むがこれらに限定されない）で書かれた任意のタイプのコンピュータコード（検出スクリプトまたは他のプログラムの特徴）は、クライアント側アプリケーションからサーバ側アプリケーションに情報を捕捉および送信し、またはサーバ側アプリケーションおよび／もしくは任意の関連のあるサーバ設備の操作性に関する情報を捕捉するために使用され得る。
【００４１】
上記に記載されるように、ウェブページ、ウェブページを要求するクライアント側アプリケーション、またはクライアント側アプリケーションが動作するコンピュータの対話性および操作性に関する任意のタイプの情報は、本開示のシステムおよび方法に従って、リロードイベントの開始時の分析のために捕捉され得る。例えば、ウェブページに関して、アプリケーションは、ウェブページのＵＲＬ、ロードイベントがウェブページを要求するために開始された時間、およびリロードイベントが開始された時間を捕捉することができる。クライアント側アプリケーションそれ自体に関して、アプリケーションは、アプリケーションを用いて最近訪問または表示されたウェブページまたはリソースのリスト、インストールされ、その上で動作する任意のアンチウイルス保護ソフトウェアの状態、「クッキー」または他の記憶された表示データのリストを捕捉することができる。クライアント側アプリケーションが動作するコンピュータに関して、アプリケーションは、その中にインストールされた１つ以上のプロセッサの中核温度、その中で動作する任意のファンの速度、利用可能な処理能力、メモリ、または電力のレベルおよび程度（例えば、交流電源またはバッテリ寿命の利用可能性）などの操作データを捕捉することができる。データが捕捉されると、これは、クライアント側に記憶され得、ウェブページ、クライアント側アプリケーション、および／またはクライアント側アプリケーションが動作しているコンピュータに関するそのようなデータおよび任意の他の関連データは、サーバ側アプリケーションに転送され、それにより表示されたウェブページに対して任意の他の処置を取る代わりに、任意の操作課題または状況がユーザにリロードイベントを開始させるかを判定するために分析され得る。
【００４２】
同様に、ウェブページをホスティングするサーバ側アプリケーション、またはサーバ側アプリケーションが動作するサーバの対話性および操作性に関する任意のタイプの情報は、本開示のシステムおよび方法に従ってリロードイベントの開始時に分析のために捕捉され得る。例えば、サーバ側アプリケーションおよび／またはサーバは、クライアント側アプリケーションから任意のデータを受信し、ならびにサーバ側で任意のデータを捕捉し、捕捉されたデータおよび／または受信されたデータを他の類似のデータを含む１つ以上のデータストアに加えることができる。受信されると、データは、定期的にサーバ側で走査または分析され得、任意のチケット、電子メッセージ、および／または他の通知がその中で識別され得る任意の課題に基づいて生成され得る。さらに、サーバ側でのそのようなデータの分析は、クライアント側アプリケーションから受信または検出された任意のリロードイベントの数および／もしくは頻度、クライアント側アプリケーションによって作成された例外（すなわち、例外的なイベント）の数もしくは頻度、またはクライアント側アプリケーションでロードすることができないＤＯＭ内の要素もしくは場所の数もしくは頻度を含む、１つ以上のビジネスルールによって動かされ得る。
【００４３】
図４を参照すると、クライアント側アプリケーション（例えば、ウェブブラウザ）によって捕捉され、サーバ側アプリケーション（例えば、ウェブホスト）に転送され得るデータの表４００の一例が示される。表４００は、ウェブリソース４１０のＵＲＬ、ロードイベントがウェブリソース４１０に提出された日時４１２、リロードイベントがウェブリソースに提出された日時４１４、およびロードイベントとリロードイベントとの間の経過時間４１６を含む。加えて、表４００はまた、データが捕捉されたクライアント側アプリケーションの名前およびバージョン４２０、ブラウザが動作していたコンピュータのオペレーティングシステム４２２、ならびにコンピュータの場所４２４およびＩＰアドレス４２６を含む。
【００４４】
図４の表４００に示されるデータは、関連する様々な有益な情報をサーバ側アプリケーションに提供することができる。例えば、ロードイベントおよびリロードイベントが開始された日時４１２、４１４は、ウェブリソースに関連するコンテンツをロードする際の少なくとも１つの課題がこれらの日時４１２、４１４に存在したことをサーバ側アプリケーションに示すことができる。加えて、比較的短いロードイベント４１２とリロードイベント４１４との間の経過時間４１６（すなわち、４２秒）は、ウェブコンテンツをロードする際の難しさがユーザに直ぐに明らかであったことを示すことができる。次に、ブラウザ４２０およびブラウザ４２０が動作していたオペレーティングシステム４２２は、そのようなソフトウェアまたはハードウェアのユーザによって適切にロードし得ないことを示唆し得る。さらに、場所４２４およびＩＰアドレス４２６は、ユーザの物理的または仮想近辺におけるネットワーク課題または減速を意味し得る。さらに、表４００に示される日付４１２および時間４１４でのリロードイベントの開始が所定の時間内に開始されたそのようなリロードイベントのみである場合、ウェブリソースの対話性は、十分であると仮定される可能性があり得る。逆に、経過時間４１６がある特定の閾値を超える場合、リロードイベントが操作障害に関連し、必ずしも無視され得る分離された発生ではない。
【００４５】
図４に示される表４００のデータなど、リロードイベントの開始時にサーバ側アプリケーションに捕捉および送信されるクライアント側アプリケーションとサーバ側アプリケーションとの間のウェブリソースの対話に関する情報は、そのようなリロードイベントが分離された場合であるか、またはそのようなリロードイベントが外部ユーザでウェブリソースの対話性におけるより広い集約の欠陥を示すかを判定するために、リロードイベントの開始時に他のクライアント側アプリケーションから捕捉された類似の情報とともに集合的に分析され得る。
【００４６】
図５を参照すると、データの表５００が示される。表５００は、ウェブリソースｗｗｗ．ｒｅａｄｙ．ｇｏｖに関して受信または検出された特定のリロードイベントに関し、リロードイベントに割り当てられた番号５１０、ウェブリソースのＵＲＬまたはファイル場所５１２、ロードイベントが開始された日時５１４、リロードイベントが開始された日時５１６、ロードイベントとリロードイベントとの間の経過時間５１６を含む列によって分類される。表５００はまた、リロードイベントの各々が開始されたブラウザ５２０、ブラウザ５２０の各々が動作していたオペレーティングシステム５２２、ならびにリロードイベントが開始されたコンピュータの場所５２４およびＩＰアドレス５２６に関するデータを含む。図５に示されるように、表５００は、１５個のリロードイベント５３０〜５３８、５４０〜５４８、５５０〜５５８に関するデータを追加される。
【００４７】
総計が取られると、図５の表５００に示されるデータは、場所５１２で維持されるウェブリソースの対話性に関する多くの表示を識別するために分析され得る。例えば、１５個のリロードイベント５３０〜５３８、５４０〜５４８、５５０〜５５８の各々は、２０１２年の１０月２９日および３０日の５時間の長さにわたって類似の場所５２４からウェブリソースｗｗｗ．ｒｅａｄｙ．ｇｏｖ５１２にアクセスすることを試みたユーザによって開始され、それによりＮｅｗ  Ｊｅｒｓｅｙにおける場所からウェブリソースｗｗｗ．ｒｅａｄｙ．ｇｏｖにアクセスするための要求、および表５００に示された日時５１４、５１６でそのように行う際の難しさの両方を意味する。次に、リロードイベント５３４、５３８、５４４、５４６、５５０は、同じブラウザ５２０（すなわち、Ｉｎｔｅｒｎｅｔ  Ｅｘｐｌｏｒｅｒ（登録商標））から開始されたため、これは、ユーザがそのようなブラウザ、またはこのバージョンからウェブリソース５１２にアクセスする難しさを有していたことが推測され得る。リロードイベント５３２、５５４、５５６、５５８がより旧式の特定のブラウザ５２０のバージョン（すなわち、２０１０年に最後に利用可能にされたＧｏｏｇｌｅ（登録商標）Ｃｈｒｏｍｅ（登録商標）のバージョン６、７および８）から開始されたため、これは、ユーザがブラウザ５２０のこれらの特定のバージョンでウェブリソース５１２をロードする難しさを有していたことが推定され得る。加えて、リロードイベント５３２、５４６、５５０が１つの特定のオペレーティングシステム（すなわち、Ｗｉｎｄｏｗｓ（登録商標）ＸＰ）のユーザによって開始され、リロードイベント５３６、５４０、５５８が別の特定のオペレーティングシステム（すなわち、Ｍａｃ（登録商標）ＯＳ  Ｘ）のユーザによって開始され、かつリロードイベント５４８、５５４、５５６が第３のオペレーティングシステム（すなわち、Ａｎｄｒｏｉｄ（登録商標））のユーザによって開始されたため、これは、ユーザがこれらの特定のオペレーティングシステム５２２でウェブリソース５１２をロードする難しさを有していたことが推定され得る。最後に、リロードイベント５４０、５４２、５４６、５４８が共通の場所５２４から、およびおおよその時間５１６でユーザによって開始されたため、これは、ネットワークまたは他の難しさがおおよその時間５１６で共通の場所５２４からウェブリソース５１２にユーザがアクセスするのを妨げていたことが推定され得る。
【００４８】
１人以上のユーザによって開始され得る１つ以上のリロードイベントに関する操作データから任意の他の結論または演繹が出され得る。例えば、複数のリロードイベントがウェブリソースにアクセスしている単一のユーザによって開始される場合、リロードイベントは、局所的問題、クライアント側アプリケーションの操作性に関する特定のエラーもしくは知識不足、またはユーザの一部の上の関連するウェブリソースを示すことができ、一般に無視され得る。同様に、ニュース、スポーツ、または現在のイベントに関する他の情報を提供するウェブサイトがユーザからかなりの数のリロードイベントを受信する場合、そのようなイベントは、ウェブサイトに関する問題または対話性課題ではなく、むしろそこで提供される情報に対する要求の高まりを示し得る。さらに、図５の表５００に示されるデータは、リロードイベントが開始された日時５１６もしくは特定の場所５２４、またはロードイベント５１４の開始とリロードイベント５１６の開始との間の経過時間５１６に対して１つ以上の閾値または限界を導くために利用され得る。したがって、本開示のシステムおよび方法は、リロードイベントの数および頻度を監視して、それにより捕捉された任意の他の情報を分析して、正常な動作中に通常予期され得るものから異常な並外れたリロードイベントを分離し、リロードイベントの受信または検出と関連付けられた許容レベルを確立することができる。
【００４９】
１つ以上のリロードイベントに基づいて任意の課題または問題が１つ以上のウェブリソースに関して存在するかを判定することにおいて監視され得る重要な測定基準の１つは、リロードイベントの開始後にユーザによって実施されるまさに次の対話である。例えば、ウェブブラウザ上のウェブページを表示しているユーザが「リフレッシュ」ボタンを選択し、その後、ウェブページが選択後に表示されると、ウェブページ上に表示されたリンクを選択する場合、これは、ユーザが「リフレッシュ」ボタンを選択することをユーザに最終的に促されたリンクの表示または動作を妨げたいくつかの課題または状況に遭遇したことが推定され得る。理論的には、そのような課題または状況が存在しない場合、ユーザは、ユーザがそのようにすることができる場合、ユーザが「リフレッシュ」ボタンを選択した時点でリンクを選択した可能性が高い。
【００５０】
図６を参照すると、本開示に従うリロードイベントに基づいてウェブリソースの対話性を分析するためのプロセスの一実施形態を表すフローチャート６００が示される。特に記されない限り、図６に示されるような番号「６」が先行する参照番号は、図３に示される番号「３」が先行する参照番号を有するステップと類似するステップを示す。
【００５１】
ステップ６０５では、１つ以上のサーバ側アプリケーションによって操作されるか、またはその上で維持され得るシステムは、ウェブページを表示するためのコードに検出パッケージを挿入し、ステップ６１０では、ユーザは、ブラウザからウェブページを要求するロードイベントを実施する。例えば、ブラウザの名前およびバージョンを記録するように適合された埋め込まれたコードまたはスクリプトイベントのサブセット、オペレーティングシステム、ロードイベントの場所および日時、ならびにリロードイベントが開始される時点でのリロードイベントは、サーバまたはサーバ側アプリケーションによってウェブページを生成するための既存のコードのセットにロードされてもよく、ユーザは、ウェブページに対応するＵＲＬをブラウザ上のアドレスバーに入力してもよい。ステップ６１５では、ロードイベントに応答して、ブラウザは、システムからウェブページを生成するためのコードを要求し、ステップ６２０では、システムは、コードをブラウザに送信する。例えば、ブラウザは、それと関連付けられたＵＲＬまたはＩＰアドレスによって指定された場所で投稿されたウェブページに対する呼び出しをシステムに送信することができ、システムは、ウェブページを表示するためのコード、および任意の関連付けられたコンテンツをブラウザに送信することができる。
【００５２】
ステップ６４０では、ユーザは、ウェブブラウザを介してウェブページとの第１の対話を行う。例えば、図２に示されるウェブブラウザ２００を参照すると、ユーザは、ハイパーリンクされた画像２６２もしくはハイパーリンクされたテキストのセット２６４を選択するか、またはメニューバー２１０に示されるドロップダウンメニューのうちのいずれか、オプションバー２２０に示されるボタンもしくは他の特徴のうちのいずれかと対話し（すなわち、選択し）、ＵＲＬもしくは他のファイル場所をアドレスバー２３０に入力するか、またはスライダーバー２４０のツールを用いてウェブページ２５０の一部を調整することができる。ステップ６４５では、システムは、第１のユーザ対話がリロードイベントを含むかを判定する。例えば、図２に示されるウェブブラウザ２００をさらに参照すると、システムは、ユーザが「リフレッシュ」ボタン２２６を選択したか、またはウェブページに対応するブックマークもしくはハイパーリンクを選択するなどによって、ウェブブラウザによって現在表示されているウェブページ２５０のリロードをもたらす任意の他のイベントを実施したかを判定することができる。第１のユーザ対話がリロードイベントを含まない場合、プロセスは、ステップ６５０に進み、第１のユーザ対話をシステムに送信し、プロセスは終了する。
【００５３】
第１のユーザ対話がリロードイベントを含む場合、プロセスは、ブラウザが検出パッケージによって指定されるように操作情報を記録するステップ６５５に、かつブラウザがウェブページを生成するためのコードをシステムから再び要求するステップ６５７に進む。例えば、リロードイベントが開始されると、ブラウザは、ブラウザの名前およびバージョン、オペレーティングシステム、ロードイベントの場所および日時、ならびにリロードイベントが開始される時点でのリロードイベントを記録することができ、システムは、コードをブラウザに再送信することができる。ステップ６７０では、ブラウザは、ウェブページをユーザに表示する。
【００５４】
ステップ６７２では、ユーザは、ブラウザを介してウェブページとの第２のユーザ対話を行う。例えば、図２に示されるウェブブラウザ２００を再び参照すると、ユーザは、ハイパーリンクされた画像２６２またはハイパーリンクされたテキストのセット２６４を選択することができる。ステップ６７５では、ブラウザは、ステップ６５５で記録された操作情報および第２のユーザ対話をシステムに送信する。例えば、第２のユーザ対話に応答して、ブラウザは、第２のユーザ対話に含まれ得る任意のコマンドだけでなく、ステップ６５５で記録された操作データ、すなわち、それが動作するブラウザもしくはコンピュータに関する任意の情報、またはウェブページもしくはリロードイベントの表示と関連付けられた状況も送信することができる。
【００５５】
ステップ６９０では、システムは、ブラウザから受信された操作情報、ならびにシステム終了で捕捉された任意の他の関連のある操作情報を分析して、ウェブページに関する、特に第２のユーザ対話に関する何らかの潜在的な課題が存在するかを判定し、プロセスは終了する。例えば、システムは、リロードイベントが開始された時点でユーザが第２のユーザ対話を実施し得ない何らかの操作理由があるかを判定し、それにより識別されたあらゆる障害に対処する何らかの是正措置を取ることができる。
【００５６】
上記に論じられるように、本開示のシステムおよび方法は、クライアント側（すなわち、クライアント側アプリケーション、またはこのアプリケーションが動作するマシンによる）およびサーバ側（すなわち、サーバ側アプリケーション、またはこのアプリケーションが動作するサーバによる）の両方で観察される捕捉された操作情報を考慮することができる。上記に論じられるように、本開示のシステムおよび方法は、何らかの操作課題がウェブリソースに関して存在するかをさらに判定し、そのような課題がウェブリソースと関連付けられたＤＯＭ内に存在し得る一般的な場所を識別することができる。例えば、検出スクリプトまたはパッケージがウェブページを表示するためのコードのセットに埋め込まれ、コード内に１つ以上のバーチャルマイルストーンを含む場合、本開示のシステムおよび方法は、適切にロードされなかったバーチャルマイルストーンの数および場所と比較すると、ブラウザによって適切にロードされたバーチャルマイルストーンの数および場所に基づいてコードおよび／またはＤＯＭ内の特定の場所を特定することを試みることができる。上記に参照されたそのようなバーチャルマイルストーンは、あらゆる形態を取ることができる。
【００５７】
図７Ａを参照すると、ウェブページを表示するためのコードのセット７００Ａが示される。コードのセットは、ウェブページのローディング中、および／またはユーザがウェブページから離れるか、もしくはそれをリフレッシュする際にいくつかの機能を実施するように適合されたコードのサブセット７１０Ａまたは検出スクリプト、ならびにウェブブラウザもしくは他のクライアント側アプリケーション上にウェブページをレンダリングするためのコードのサブセット７３０Ａを含む。例えば、要素７１１Ａおよび７１２Ａは、クライアント側アプリケーションに、クライアント側アプリケーションによって作成された任意の例外（すなわち、方法内に生じるエラー）、またはクライアント側アプリケーションによって生成された例外的なオブジェクト（すなわち、そのようなエラーに関する情報）を記録させ、最初の瞬間に現在の時間を捕捉させる。要素７１３Ａおよび７１４Ａは、クライアントデータオブジェクトまたはセット、およびそのようなデータが捕捉される時間を定義し、要素７１５Ａ、７２０Ａ、７２１Ａおよび７２２Ａは、任意の保存されたスクリプトエラー（すなわち、「ＪＳＥｒｒｏｒｓ」）、要素７１２Ａで捕捉された開始時間を用いて計算されるように初期のロードイベントのウェブページ後の経過時間（すなわち、「経過時間」）、ウェブページ上に現れたバーチャルマイルストーン（すなわち、「ブレッドクラム」）の数のリストまたは記録、ならびにウェブブラウザのＵＲＬまたは寸法等の一連の操作測定基準を含む、クライアントデータオブジェクトまたはセットに関する一連の変数を定義する。
【００５８】
要素７２３Ａは、クライアント側アプリケーションにクライアントデータオブジェクトまたはセット内に変数または情報を収集させ、要素７２４Ａは、そのような変数または情報をイベントの実施時に１つ以上のサーバ側アプリケーションに戻させる。要素７２５Ａは、ウェブページ上にロードしたバーチャルマイルストーンをレジストリ内に記憶または記録させ、要素７２６Ａは、クライアントデータオブジェクトまたはセット内の変数または情報を収集させ（すなわち、ウェブページからの離脱またはそのリローディング）、ステップ７２４Ａでサーバ側アプリケーションに戻させるイベントを定義する。
【００５９】
コードのサブセット７３０Ａは、ヘッダ７３２Ａ、ハイパーリンクされたテキストのセット７３４Ａ、リストタイトル７３６Ａ、および非順序リスト７３８Ａを表示するための様々なタグ付き要素を含む。コードのセット７３０Ａはまた、バーチャルマイルストーン７４０Ａをウェブページ上に提供するためのタグ付き要素を含む。図７Ａに示されるように、コードのセット７００Ａ内のマイルストーン７４０Ａは、ｂｒｅａｄｃｒｕｍｂｓ．ｊｐｇと題名される画像を含み、ヘッダ、ハイパーリンクされたテキストのセット、リストタイトル、およびウェブページ上のビュレット付きリスト要素の各々の後に表示される５画素×５画素の寸法を有する。画像は、任意の色を有し得るか、または無色であり、任意の形状または形態を取り得る。バーチャルマイルストーン７４０Ａの各々には、連続した数字が提供され、ウェブページ上にロードすると、レコードまたは他のレジストリ内に記録され得る。
【００６０】
図７Ｂを参照すると、図７Ａのコードのセット７００Ａによって生成されたウェブページを表示するウェブブラウザ７００Ｂが示される。ウェブページは、図７Ａに示されるコードのサブセット７３０Ａによって各々レンダリングされるヘッダ７３２Ｂと、ハイパーリンクされたテキストのセット７３４Ｂと、リストヘッダ７３６Ｂと、非順序リスト７３８Ｂとを含む。ウェブページはまた、要素７３２Ｂ、７３４Ｂ、７３６Ｂ、７３８Ｂの各々がウェブページ上に示された後に表された様々なバーチャルマイルストーン７４０Ｂを含み、これはまた、図７Ａに示されるコードのサブセット７３０Ａによってレンダリングされる。
【００６１】
したがって、クライアント側アプリケーションのユーザがウェブページ、クライアント側アプリケーションおよび／もしくはクライアント側アプリケーションが動作するコンピュータ、またはサーバ側アプリケーションおよび／もしくはサーバ側アプリケーションが動作するサーバに関する操作情報を記録する検出スクリプトを含むウェブページを要求し、かつ最終的に同じウェブページのリロードイベントを開始する場合、本開示のシステムおよび方法は、リロードイベントが開始された時点でウェブページを表示するためのコード内に埋め込まれたどのバーチャルマイルストーンがレンダリングされたかを判定することによって、リロードイベントが開始された時点で、クライアント側アプリケーションによってロードされたウェブページの量および程度を判定することができる。そのような情報は、ウェブページの正常な動作中に捕捉され、サーバ側アプリケーションに戻されてもよく、そこでこの情報は、定期的にサーバ側で再調査されるか、またはそうでなければ分析されてもよく、任意のチケット、電子メッセージ、および／または他の通知がその中で識別され得る任意の課題に基づいて生成され得る。サーバ側でのそのようなデータのそのような再調査または他の分析は、１つ以上のビジネスルールに従って実施されてもよく、これは、クライアント側アプリケーションから受信または検出された任意のリロードイベントの数および／もしくは頻度、クライアント側アプリケーションで、もしくはそれによって作成された任意の例外（すなわち、例外的なイベント）の数もしくは頻度、またはクライアント側アプリケーションでロードすることができないＤＯＭ内の要素もしくは場所の数もしくは頻度など、誘導変数または測定基準に制限または閾値限界を課すことができる。本開示の１つの特定の実施形態に従って、リロードイベントを開始することをユーザに促した課題の場所および／またはタイプは、どのバーチャルマイルストーンがクライアント側アプリケーションによって適切にロードされたか、およびどのバーチャルマイルストーンがロードすることができなかったかを判定することによって識別され得る。
【００６２】
上記に論じられるように、リロードイベントを検出するクライアント側アプリケーションは、ウェブページを表示するためのコードのセットに埋め込まれた検出スクリプトに従って、ウェブページ、クライアント側アプリケーションそれ自体、もしくはクライアント側アプリケーションが動作するコンピュータ、またはウェブページもしくはリロードイベントの表示と関連付けられた状況のうちのいずれかに関するあらゆる情報またはデータを捕捉する。リロードイベントがクライアント側アプリケーションによって検出されると、そのような情報またはデータは次に、分析のためにサーバ側で動作する１つ以上のアプリケーションに送信され得る。
【００６３】
本開示のいくつかの他の実施形態に従って、クライアント側アプリケーションは、ウェブページ、クライアント側アプリケーションそれ自体、またはクライアント側アプリケーションが検出スクリプトに従って動作するコンピュータに関する操作情報またはデータを持続的に捕捉することができる。クライアント側アプリケーションは次に、所定のイベントの発生時にそのような情報またはデータをサーバ側アプリケーションに転送することができ、サーバ側アプリケーションは、リロードイベントが生じ、および／または任意のこの原因を識別することを試みるかを判定するためにそのような情報を分析することができる。そのような実施形態では、リロードイベントの検出、およびリロードイベントを促したあらゆる要因の分析の両方がサーバ側で行われ得る。
【００６４】
図８を参照すると、クライアント側アプリケーションおよびサーバ側アプリケーション上で実施され得るウェブリソースの対話性を分析するためのプロセスを表す一対のフローチャート８００Ａ、８００Ｂがそれぞれ、本開示の一実施形態に従って示される。フローチャート８００Ａ、８００Ｂで表されるプロセスは、それぞれのアプリケーション内で互いに独立して動作することができ、それぞれのアプリケーションが互いに対話する様々な点が示される。
【００６５】
図８のフローチャート８００Ａで表されるプロセスを参照すると、ステップ８１０では、クライアント側アプリケーションを操作するユーザがウェブページを要求する。ステップ８２０では、クライアント側アプリケーションは、ウェブページを表示するコードのセットを受信し、コードのセットは、ウェブページからの離脱時（すなわち、アンロードイベント時）にクライアント側データを捕捉するための検出スクリプトを含む。例えば、コードのセットは、図７Ａに示されるコードのセット７００Ａに類似し、ウェブページからの離脱時に操作情報を捕捉し、かつそれをサーバ側アプリケーションに送信するようにプログラムされ得る図７Ａに示されるコードのサブセット７１０Ａに類似する検出スクリプトを含み得る。
【００６６】
クライアント側アプリケーションがコードのセットを受信すると、ステップ８３０では、検出スクリプトは、クライアント側データセット、すなわち、検出スクリプトに従って捕捉されたデータを含み得る情報のセットを初期化することができる。ステップ８４０でウェブページからのユーザの離脱時に、クライアント側アプリケーションは、ステップ８５０で検出スクリプトに従って必要なクライアント側データをデータセットに集め、ステップ８６０でデータセットをサーバ側アプリケーションに送信することができる。例えば、ウェブブラウザのユーザが新しいウェブページを選択し、クライアント側アプリケーションを閉じ、またはクライアント側アプリケーションをウェブページから離れさせる任意の他のステップを取ると、クライアント側データが集められ、サーバ側アプリケーションに送信され得る。ステップ８７０では、ウェブページからのユーザの離脱が別のウェブページに対する要求を含む場合、プロセスは、ステップ８１０に戻る。ユーザの離脱が別のウェブページに対する要求を含まない場合、プロセスは終了する。
【００６７】
図８のフローチャート８００Ｂで表されるプロセスに示されるように、図８のフローチャート８００Ａで表されるプロセスのステップ８１０など、クライアント側アプリケーションによって要求されたウェブページのうちの１つ以上をホスティングするサーバ側アプリケーション上で互恵的なプロセスが実施され得る。図８のフローチャート８００Ｂを参照すると、ステップ８１５では、サーバ側アプリケーションは、クライアント側アプリケーションからのウェブページに対する要求を受信する。図８に示されるように、ステップ８１５は、フローチャート８００Ａで表されるプロセスのステップ８１０で引き起こされ得る。ステップ８２５では、サーバ側アプリケーションは、ウェブページを表示するためのコードをクライアント側アプリケーションに送信し、コードのセットは、ウェブページからの離脱時にクライアント側情報またはデータを捕捉し、かつそのような情報をサーバ側アプリケーションに送信するようにクライアント側アプリケーションに指示する検出スクリプトを含む。図８にも示されるように、ステップ８２５は、フローチャート８００Ａで表されるプロセスのステップ８２０をもたらすことができる。
【００６８】
ステップ８６５では、サーバ側アプリケーションは、１つ以上のデータストア内のクライアント側情報またはデータを受信および記憶する。例えば、図８に示されるように、ステップ８６５は、フローチャート８００Ａで表されるプロセスのステップ８６０で引き起こされ得、データセットは、他のクライアント側データで受信および集約され得る。ステップ８７５では、クライアント側アプリケーションは、ルールセットに従って、かつ定期的に集約されたクライアント側データを走査する。サーバ側アプリケーションは、クライアント側データを独立して、クライアント側アプリケーションから受信された他のクライアント側データとともに、またはウェブページを要求した他のクライアント側アプリケーションから、所定の定期的な間隔で（例えば、５分ごとに）、または手動もしくは自動開始時に分析することができる。クライアント側データを受信すると、サーバ側アプリケーションは、アンロードイベントのうちのいずれかがリロードイベントを含むかを判定し、リロードイベントの発生時にクライアント側アプリケーションから受信された操作情報またはデータを分析して、何らかの操作障害またはエラーがリロードイベントを促したかを判定することができ、特にサーバ側アプリケーション、または一般にサーバ側を悩まし得る。
【００６９】
例えば、ルールセットは、「高速リフレッシュ」ルールを含み、そこでクライアント側データは、リロードイベントまたは「リフレッシュ」が所定の閾値を超える速度で生じているかを判定するために分析される。ルールセット内の別のルールは、ウェブページが要求される日時をリロードイベントが受信された日時に対して比較して、ウェブページの１つ以上の態様またはウェブページ全体それ自体をロードする上での問題がクライアント側またはサーバ側のいずれかで存在し得るかを判定することができる。さらに別のルールは、リロードイベントの時点でクライアント側アプリケーションによってロードされ得るバーチャルマイルストーンの数または特定のバーチャルマイルストーンを判定することなどによってリロードイベントの発生時にロードすることに成功したウェブページの程度を識別することができる。任意のタイプのルールは、リロードイベントが生じたか、クライアント側またはサーバ側のいずれかの態様が任意のそのようなリロードイベントの原因であり得るかを判定するためにサーバ側アプリケーションによって利用され得る。
【００７０】
ステップ８８５では、ルールセット内のルールのうちの１つ以上が破られたことをデータストア内に記録または集約されるクライアント側データのうちのいずれかが示す場合、プロセスは、ステップ８９５に進み、１つ以上の警告が引き起こされ得る。そのようなルール違反が示されない場合、プロセスは、ステップ８７５に戻り、データストアのコンテンツが将来、１つ以上の一定間隔で走査および分析され得る。
【００７１】
本開示のシステムおよび方法はまた、１つ以上のウェブリソースの一部とともに、またはその一部として検出スクリプトまたはパッケージおよび他の監視手段を持続的に提供し、かつそのようなリソースとともにユーザの対話を分析して、リソース、またはリソースがリロードイベントに応答して維持されるハードウェアもしくはソフトウェアに関して何らかの課題または不一致が存在するかを判定するように適合され得る。何らかのそのような課題または不一致が識別される場合、１つ以上の警告または他の表示が引き起こされてもよく、課題または不一致は、手動または自動的に分析されてもよい。そのような課題または不一致が識別されない場合、リロードイベントは、リロードイベントがリソースの対話性と関連付けられた何らかの不足もしくは欠陥、リソースを要求し得る任意のデバイス、またはリソースを維持または提供し得る任意のサーバを示さないかのように無視され、またはそうでなければ処理され得る。
【００７２】
図９を参照すると、本開示に従うリロードイベントに基づいてウェブリソースの対話性を分析するためのプロセスの一実施形態を表すフローチャート９００が示される。特に記されない限り、図９に示されるような番号「９」が先行する参照番号は、図６に示される番号「６」が先行する参照番号を有するステップと類似するステップ、または図３に示される番号「３」が先行する参照番号を有するステップと類似するステップを示す。
【００７３】
ステップ９２０では、システムは、ウェブコンテンツおよび検出パッケージを含むコードをユーザによって操作されるブラウザに送信する。例えば、システムは、携帯電話、タブレットコンピュータ、ラップトップコンピュータ、または他のインターネット対応デバイス上で動作するブラウザ上のウェブページを提示するためのコードを送信してもよく、このコードは、その中に、ブラウザ、デバイス、またはウェブに応答してそれに取られる任意の処置と関連付けられた情報を検出するための１つ以上の要素またはオブジェクトを埋め込んでもよい。ステップ９３０では、ブラウザは、ウェブコンテンツをユーザに表示することができる。
【００７４】
ステップ９４０では、ユーザは、ブラウザを介してウェブコンテンツに応答を提供する。例えば、ユーザは、ウェブコンテンツ上に、またはそれで表示された任意の情報（例えば、ボタン、ボックス、またはハイパーリンク）を選択するか、またはそうでなければそれと対話することができる。ステップ９４２では、ブラウザは、ブラウザおよび／またはブラウザがユーザの応答時点で動作するデバイスの操作状態を記録する。例えば、ユーザがブラウザ上のリンクまたはボタンを選択する場合、検出パッケージは、ウェブページ（例えば、その上に成功したコードに記述された情報の量および程度）、ブラウザ（例えば、ブラウザのタイプおよびバージョンならびに表示履歴）、およびコンピュータ（例えば、コンピュータまたは任意の関連した構成要素に関する任意の操作情報）に関する任意の操作データを記録することができる。
【００７５】
ステップ９４５では、ブラウザは、「リフレッシュ」もしくは「リロード」ボタンの選択、またはウェブコンテンツと関連付けられたＵＲＬにハイパーリンクされたテキストもしくはオブジェクトのセットの選択などのリロードイベントを含むかを判定する。ユーザ応答がリロードイベントを含まない場合、プロセスは、ブラウザがユーザ応答をシステムに送信するステップ９５０に、かつステップ９２０に戻る前に、システムがユーザ応答に基づいて適切なウェブコンテンツを識別するステップ９６５に進む。
【００７６】
ユーザ応答がリロードイベントを含む場合、プロセスは、ブラウザが記録された操作状態をシステムに送信するステップ９７５に、かつシステムが記録された操作状態をユーザ応答時に予期された操作状態と比較するステップ９８０に進む。例えば、システムは、ブラウザによって完全にロードされたウェブコンテンツの程度をユーザ応答が提供された時点でウェブブラウザによって完全にロードされるべきであるウェブコンテンツの程度に対して比較して、何らかのローディングエラーが存在し得るかを判定することができる。
【００７７】
ステップ９８５では、ステップ９４２で記録された操作状態が予期された操作状態と一致した場合、これは、リロードイベントがユーザによる不用意な行為か、またはウェブコンテンツ、ブラウザ、もしくはシステムに関していかなる操作課題もしくは欠陥も示さないかのいずれかであったことが理解され得る。したがって、プロセスは次に、ブラウザがユーザ応答をシステムに送信するステップ８５０に、システムがユーザ応答に基づいて適切なウェブコンテンツを識別するステップ８６５に進む。
【００７８】
ステップ９４２で記録された操作状態がその時点で予期された操作状態と一致しなかった場合、これは、ウェブコンテンツ、ブラウザ、またはシステムに関するいくつかの形態の課題または欠陥が理解され得る。したがって、プロセスは、システムが記録された操作状態と予期された操作状態との間の不一致を分析するステップ９９０に、システムが不一致に基づいて少なくとも１つの警告（例えば、１つ以上のメッセージの送信）を開始するステップ９９５に進む。
【００７９】
したがって、図９のフローチャート９００に示されるものなどのウェブリソース、ウェブリソースを要求するクライアント側アプリケーション、および／またはウェブリソースを提供するサーバ側アプリケーションの観察された操作状態と比較することによって、リロードイベントがウェブリソースまたはアプリケーションのいずれかに関するさらに大きな問題を示すか、または単純に、ユーザによる正常な意図された行為であるかが判定され得る。
【００８０】
本開示の実施形態は、以下の付記を考慮して記載され得る。
【００８１】
付記１．非一時的コンピュータ可読媒体であって、命令は、実行されるとき、ネットワークに接続され、かつ少なくとも１つのコンピュータプロセッサを有するコンピュータシステムに、少なくとも１つのコンピュータプロセッサを用いて、ウェブページを表示するためのコードのセットを生成することであって、このコードのセットが、ウェブページ、コンピュータシステム、コードのセットを要求するブラウザ、またはコードのセットを要求するブラウザが動作しているコンピュータデバイスの少なくとも１つの操作特性を捕捉するようにコードのセットを要求するブラウザに指示するためのコードのサブセットを含む、生成することと；ネットワーク上で、ユーザによって操作されたブラウザからのロードイベントを検出することであって、このロードイベントが、ウェブページを表示するためのコードのセットに対する第１の要求を含む、検出することと；ネットワーク上で、コードのセットをユーザによって操作されたブラウザに送信することと；ネットワーク上で、ユーザによって操作されたブラウザからリロードイベントを検出することであって、このリロードイベントが、ウェブページを表示するためのコードのセットに対する第２の要求を含む、検出することと；ネットワーク上で、ウェブページ、コンピュータシステム、ユーザによって操作されたブラウザ、またはユーザによって操作されたブラウザが動作しているコンピュータデバイスの少なくとも１つの操作特性を受信することであって、この少なくとも１つの操作特性が、リロードイベントの開始時のコードのサブセットに従うブラウザによって捕捉された、受信することと；少なくとも１つのコンピュータプロセッサを用いて、少なくとも１つの操作特性を分析して、リロードイベントの原因を識別することと、を行わせる、その上に記憶されたコンピュータ実行可能な命令を有する、媒体。
【００８２】
付記２．少なくとも１つの操作特性は、ウェブページのユニフォームリソースロケータ（ＵＲＬ）、リロードイベントの開始の日時、ロードイベントの開始の日時、ブラウザのタイプ、およびユーザによって操作されたブラウザがリロードイベントの開始時点で動作しているコンピュータの場所のうちの少なくとも１つを含む、付記１に記載の媒体。
【００８３】
付記３．リロードイベントは、（ａ）ウェブブラウザでリフレッシュボタンを選択することと、（ｂ）ウェブページにハイパーリンクされたオブジェクトを選択することと、（ｃ）ウェブページにリンクされたブックマークを選択することと、（ｄ）ブラウザをシャットダウンすること、ブラウザを再起動すること、およびウェブページに戻ることとのうちの少なくとも１つを含む、付記１に記載の媒体。
【００８４】
付記４．ウェブリソースの対話性のレベルを判定するためのコンピュータ実装方法であって、少なくとも１つのサーバから、ウェブリソースを生成するためのコードのセットをクライアント側アプリケーションにネットワーク上で送信することであって、コードのセットは、ウェブリソースのリロードイベント後、ウェブリソース、クライアント側アプリケーション、または少なくとも１つサーバのうちの少なくとも１つに関する操作情報を捕捉するための検出スクリプトを含む、送信することと；少なくとも１つのサーバで、クライアント側アプリケーションでのウェブリソースのリロードイベントをネットワーク上で検出することと；少なくとも１つのサーバで、ネットワーク上での検出スクリプトに従ってクライアント側アプリケーションから捕捉された操作情報を識別することと；操作情報を分析して、少なくとも１つのコンピュータプロセッサを用いてウェブリソースの対話性のレベルを判定することと、を含む、コンピュータ実装方法。
【００８５】
付記５．少なくとも１つのサーバで、クライアント側アプリケーションからウェブリソースのロードイベントをネットワーク上で検出するステップをさらに含む、付記４に記載のコンピュータ実装方法。
【００８６】
付記６．操作情報を識別するステップは、ネットワーク上でクライアント側アプリケーションから操作情報を受信することを含む、付記４に記載のコンピュータ実装方法。
【００８７】
付記７．操作情報を識別するステップは、少なくとも１つのサーバで、少なくとも１つのコンピュータプロセッサを用いて操作情報を捕捉することを含む、付記４に記載のコンピュータ実装方法。
【００８８】
付記８．リロードイベントは、クライアント側アプリケーションでのリフレッシュボタンの選択、クライアント側アプリケーションでのリロードボタンの選択、クライアント側アプリケーションでのハイパーリンクされたアイコンの選択、クライアント側アプリケーションでのハイパーリンクされたテキストのセットの選択、クライアント側アプリケーションでのブックマークの選択、またはクライアント側アプリケーションのシャットダウン、クライアント側アプリケーションの再起動、およびクライアント側アプリケーションからウェブリソースを生成するためのコードのセットに対する要求のうちの少なくとも１つを含む、付記５に記載のコンピュータ実装方法。
【００８９】
付記９．操作情報は、ウェブリソースのユニフォームリソースロケータ、ウェブリソースのロードイベントの開始とウェブリソースのリロードイベントの開始との間の経過時間、例外に応答してクライアント側アプリケーションによって生成された少なくとも１つの例外オブジェクト、リロードイベントが開始されたクライアント側アプリケーションのタイプ、クライアント側アプリケーションによってロードされたいくつかのバーチャルマイルストーン、リロードイベントの開始時にクライアント側アプリケーションを操作するコンピュータ上で維持されたオペレーティングソフトウェアのセットのバージョン、およびリロードイベントの開始時のコンピュータの場所のうちの少なくとも１つを含む、付記５に記載のコンピュータ実装方法。
【００９０】
付記１０．少なくとも１つのコンピュータプロセッサを用いて、ウェブリソースを生成するためのコードのセットを生成するステップと、少なくとも１つのサーバで、少なくとも１つのコンピュータプロセッサを用いて、ＪａｖａＳｃｒｉｐｔ（登録商標）にプログラムされる検出スクリプトを、ウェブリソースを生成するためのコードのセットに挿入するステップと、をさらに含む、付記４に記載のコンピュータ実装方法。
【００９１】
付記１１．ウェブリソースを生成するためのコードのセットは、ウェブリソース内に少なくとも１つのバーチャルマイルストーンを生成する命令を含み、検出スクリプトは、クライアントデータオブジェクトを生成する命令と、少なくとも１つの例外に関する情報をクライアントデータオブジェクトに追加する命令と、コードのセットの送信とリロードイベントの検出との間の経過時間に関する情報をクライアントデータオブジェクトに追加する命令と、クライアント側アプリケーションによる少なくとも１つのバーチャルマイルストーンの生成に関する情報を追加する命令と、クライアント側アプリケーションに関する情報をクライアントデータオブジェクトに追加する命令と、クライアントデータオブジェクトをリロードイベントの少なくとも１つのサーバ検出に送信する命令と、を含む、付記４に記載のコンピュータ実装方法。
【００９２】
付記１２．少なくとも１つのサーバで、複数のビジネスルールを識別することと、少なくとも１つのサーバで、クライアントデータオブジェクトを分析して、ビジネスルールのうちのいずれかが破られたかを識別することと、をさらに含む、付記１１に記載のコンピュータ実装方法。
【００９３】
付記１３．ビジネスルールは、閾値数のリロードイベント、閾値数の例外、および閾値数のバーチャルマイルストーンのうちの少なくとも１つを含む、付記１２に記載のコンピュータ実装方法。
【００９４】
付記１４．少なくとも１つのサーバから、リロードイベントに応答してネットワーク上でウェブリソースを生成するためのコードのセットをクライアント側アプリケーションに送信するステップをさらに含む、付記４に記載のコンピュータ実装方法。
【００９５】
付記１５．検出スクリプトは、クライアント側アプリケーションに操作情報をデータベースに記憶させるようにさらに適合される、付記４に記載のコンピュータ実装方法。
【００９６】
付記１６．少なくとも１つのサーバで、リロードイベント後、ウェブリソースとのユーザ対話に関する情報を受信するステップをさらに含み、操作情報を分析して、ウェブリソースの対話性のレベルを判定するステップは、リロードイベント後、ウェブリソースとのユーザ対話と関連付けられたコードのセットの一部を識別することを含む、付記４に記載のコンピュータ実装方法。
【００９７】
付記１７．ウェブリソース、クライアント側アプリケーション、または少なくとも１つのサーバのうちの少なくとも１つの予期された操作状態を識別するステップをさらに含み、操作情報を分析して、ウェブリソースの対話性のレベルを判定するステップは、操作情報を予期された操作状態と比較することを含む、付記４に記載のコンピュータ実装方法。
【００９８】
付記１８．操作情報が予期された操作状態と一致する場合、ウェブリソースの対話性のレベルが十分であると判定し、操作情報が予期された操作状態と一致しない場合、少なくとも１つの警告を送信する、付記１７に記載のコンピュータ実装方法。
【００９９】
付記１９．少なくとも１つのサーバと関連付けられたデータストア内の検出スクリプトに従ってクライアント側アプリケーションから捕捉された操作情報を記憶するステップをさらに含み、データストアは、検出スクリプトに従ったウェブリソースの前のリロードイベント後、ウェブリソース、他のクライアント側アプリケーション、または複数の他のクライアント側アプリケーションから捕捉された少なくとも１つのサーバに関する操作情報を含む、付記９に記載のコンピュータ実装方法。
【０１００】
付記２０．操作情報を分析して、ウェブリソースの対話性のレベルを判定するステップは、データストア内に含まれた操作情報に基づいてウェブリソースのリロードイベントの閾値頻度を判定することと、リロードイベントが閾値頻度を超える場合に少なくとも１つの警告を送信することと、を含む、付記１９に記載のコンピュータ実装方法。
【０１０１】
付記２１．操作情報を分析して、ウェブリソースの対話性のレベルを判定するステップは、ウェブリソースのリロードイベントの閾値経過時間を判定することと、経過時間が閾値経過時間を超える場合、少なくとも１つの警告を送信することと、を含む、付記１９に記載のコンピュータ実装方法。
【０１０２】
付記２２．操作情報を分析して、ウェブリソースの対話性のレベルを判定するステップは、リロードイベントの開始時のコンピュータの場所を前のリロードイベントのうちの少なくとも１つの場所と比較することを含む、付記１９に記載のコンピュータ実装方法。
【０１０３】
付記２３．操作情報を分析して、ウェブリソースの対話性のレベルを判定するステップは、リロードイベントの開始の日時を前のリロードイベントのうちの少なくとも１つの日時と比較することを含む、付記１９に記載のコンピュータ実装方法。
【０１０４】
付記２４．操作情報は、リロードイベントの開始時にクライアント側アプリケーションによってロードされたウェブリソースの一部に関する情報を含み、操作情報を分析して、ウェブリソースの対話性のレベルを判定するステップは、リロードイベントの開始時にクライアント側アプリケーションによってロードされたウェブリソースの一部に対応するコードのセットの一部を識別するステップを含む、付記４に記載のコンピュータ実装方法。
【０１０５】
付記２５．ウェブリソースのリロードイベントを開始したクライアント側アプリケーションのユーザを識別するステップと、ユーザによって開始されたリロードイベントの経過時間閾値を識別するステップと、をさらに含み、経過時間が経過時間閾値を超える場合、ウェブリソースの対話性のレベルが十分であると判定し、経過時間が経過時間閾値を超えない場合、少なくとも１つの警告を生成する、付記９に記載のコンピュータ実装方法。
【０１０６】
付記２６．ネットワークに接続されたコンピュータシステムであって、このコンピュータシステムは、少なくとも１つのコンピュータプロセッサと、少なくとも１つのデータストアとを備え、このコンピュータシステムは、コンピュータシステムにウェブサイトの対話性のレベルを判定するための方法を実施させるコンピュータプログラムを実行するように適合され、この方法は、ネットワーク上で、クライアントデバイス上で動作するウェブブラウザからのウェブサイトを表示するためのコードのセットに対する第１の呼び出しを含むロードイベントを受信するステップを含み、コードのセットは、少なくとも１つのデータストア上に記憶され、ウェブサイトは、少なくとも１つのコンピュータプロセッサを用いて、検出パッケージを含むコードのセットを修正する少なくとも１つのバーチャルマイルストーンを含み、検出パッケージは、（ａ）ウェブブラウザにデータオブジェクトを作成させるスクリプト化命令と、（ｂ）ウェブブラウザに例外に関する情報をデータオブジェクトに追加させるスクリプト化命令と、（ｃ）ウェブブラウザにロードイベント後の経過時間に関する情報をデータオブジェクトに追加させるスクリプト化命令と、（ｄ）ウェブブラウザに少なくとも１つのバーチャルマイルストーンに関する情報をデータオブジェクトに追加させるスクリプト化命令と、（ｅ）ウェブブラウザにウェブブラウザの状態に関する情報をデータオブジェクトに追加させるスクリプト化命令と、（ｆ）ウェブブラウザに、リロードイベントに応答したデータオブジェクトをコンピュータシステムに送信させ、ネットワーク上で、修正されたコードのセットをクライアントデバイスに送信し、ネットワーク上で、クライアントデバイス上で動作するウェブブラウザからのウェブサイトを表示するためのコードのセットの第２の呼び出しを含む、リロードイベントを検出し、ネットワーク上で、ウェブブラウザからデータオブジェクトを受信し、かつデータオブジェクト内の情報を分析して、ウェブサイトの対話性のレベルを判定するスクリプト化命令と、を含む、コンピュータシステム。
【０１０７】
付記２７．本方法は、少なくとも１つのコンピュータプロセッサを用いて、クライアントデバイスに適切にロードすることができなかった少なくとも１つのバーチャルマイルストーンの第１の数を識別するステップと、少なくとも１つのコンピュータプロセッサを用いて、クライアントデバイスに適切にロードすることができなかった少なくとも１つのバーチャルマイルストーンに対応して有する修正されたコードのセットの一部を識別するステップと、をさらに含む、付記２６に記載のコンピュータシステム。
【０１０８】
付記２８．本方法は、ネットワーク上で、ウェブブラウザからウェブページの一部とのユーザ対話を受信するステップをさらに含み、操作情報を分析して、ウェブサイトの対話性のレベルを判定するステップは、少なくとも１つのコンピュータプロセッサを用いて、ユーザ対話に対応するウェブページの一部に対応する修正されたコードのセットの一部を識別するステップを含む、付記２６に記載のコンピュータシステム。
【０１０９】
付記２９．データオブジェクト内の情報を分析するステップは、スクリプト化命令に従ってウェブサイトの前のリロードイベント後、データオブジェクト内の情報を複数の他のウェブブラウザから捕捉された情報と比較するステップを含む、付記２６に記載のコンピュータシステム。
【０１１０】
本開示は、本開示を実装するための例示的な技術、構成要素、および／またはプロセスを用いて本明細書に記載されたが、他の技術、構成要素、および／もしくはプロセス、または、本明細書に記載され、かつ本開示の範囲内に含まれる同じ機能（複数可）および／または結果（複数可）を達成する、本明細書に記載される技術、構成要素、および／もしくはプロセスの他の組み合わせおよび順序が使用または実施され得ることが当業者によって理解されるべきである。
【０１１１】
特に明示的または黙示的に本明細書に示されない限り、本明細書の特定の実施形態に関して記載される特徴、特性、代替、または修正のうちのいずれかもまた、本明細書に記載される任意の他の実施形態とともに適用され、使用され、または組み込まれ得ることが理解されるべきである。さらに、図３、６、および８に示されるフローチャートを含むがこれらに限定されない、本明細書に記載される本開示の１つ以上の方法またはプロセスに関して、方法またはプロセスのステップが列挙される順序は、特許請求される発明への制約と解釈されることを意図せず、任意の数の方法またはプロセスのステップが、本明細書に記載される方法またはプロセスを実装するために任意の順序で、および／または並行して組み合わせられ得る。また、本明細書の図面は、一定の比率の縮尺で描かれていない。
【０１１２】
条件付き文言、数ある中でも「できる（ｃａｎ）」、「できる（ｃｏｕｌｄ）」、「できる（ｍｉｇｈｔ）」、または「できる（ｍａｙ）」などは、特に具体的に記載されないか、または使用されるときに特に文脈内で理解されない限り、一般に、ある特定の実施形態がある特定の特徴、要素、および／またはステップを含むがこれらを必要としないことを伝えることを意図する。したがって、そのような条件付き文言は一般に、特徴、要素、および／またはステップが１つ以上の実施形態にいかなる方法で必要とされるか、または１つ以上の実施形態がユーザ入力もしくはプロンプティングの有無にかかわらず、これらの特徴、要素、および／もしくはステップが任意の特定の実施形態に含まれるか、または実施されるかにかかわらず、決定するための論理を必然的に含むことを意味することを意図しない。
【０１１３】
本発明は、この例示的な実施形態に関して記載および図解されたが、本開示の趣旨および範囲から逸脱することなく、前述および様々な他の追加および省略がその中およびそれに行われ得る。
【図１】
0005985074.tif 000002
【図２】
0005985074.tif 000003
【図３】
0005985074.tif 000004
【図４】
0005985074.tif 000005
【図５】
0005985074.tif 000006
【図６】
0005985074.tif 000007
【図７Ａ】
0005985074.tif 000008
【図７Ｂ】
0005985074.tif 000009
【図８】
0005985074.tif 000010
【図９】
0005985074.tif 000011