(57)【特許請求の範囲】
【請求項１】
１又は複数のコンピュータ装置により、
第１のユーザにユーザ・インタフェースを提示する段階であって、該ユーザ・インタフェースは該第１のユーザにユーザ入力を提供させるよう構成される、段階、
１又は複数のセッション中に前記第１のユーザからの１又は複数のユーザ入力を受ける段階、
前記第１のユーザから受けた各ユーザ入力に応答して、前記第１のユーザに対して１又は複数の動作を実行する段階、
を有し、
前記ユーザ入力は、
第１のウェブ・アプリケーション、該第１のウェブ・アプリケーションに関する動作探索仕様、該第１のウェブ・アプリケーションのための複数のウェブ・ブラウザ及び該第１のウェブ・アプリケーションのための比較規則セットを指定し、
前記第１のウェブ・アプリケーションに関する前記動作探索仕様に基づき、前記ウェブ・ブラウザに関して前記ウェブ・アプリケーションの複数のモデルが構築されることを要求し、
前記第１のウェブ・アプリケーションのための前記比較規則セットに基づき、前記第１のウェブ・アプリケーションのモデルが互いに比較されることを要求し、
前記第１のウェブ・アプリケーションのモデルに対して実行された比較の１又は複数の結果が提示されることを要求し、該結果は前記第１のウェブ・アプリケーションの２以上のモデルの間に１又は複数の実質的な差があるか否かを示す、
ことを特徴とする方法。
【請求項２】
前記第１のユーザが前記第１のウェブ・アプリケーションのモデルが構築されることを要求するのに応答して、前記第１のウェブ・アプリケーションのための前記ブラウザのそれぞれに対して、前記第１のウェブ・アプリケーションに関する前記動作探索仕様に基づき、前記ウェブ・ブラウザに関する前記第１のウェブ・アプリケーションのモデルを構築する段階、
前記第１のユーザが前記第１のウェブ・アプリケーションのモデルが互いに比較されることを要求するのに応答して、前記第１のウェブ・アプリケーションの比較規則セットに基づき、前記第１のウェブ・アプリケーションのモデルを互いに比較する段階、
前記第１のユーザが前記第１のウェブ・アプリケーションのモデルに対して実行された比較の結果が提示されることを要求するのに応答して、前記第１のユーザに前記第１のウェブ・アプリケーションのモデルに対して実行された比較の結果を提示する段階、
を更に有する請求項１に記載の方法。
【請求項３】
前記ユーザ・インタフェースは、前記第１のユーザに前記第１のウェブ・アプリケーションに関する情報が保存されることを要求するユーザ入力を提供させるよう更に構成され、
当該方法は、
前記第１のユーザが前記第１のウェブ・アプリケーションに関する情報が保存されることを要求するのに応答して、前記第１のウェブ・アプリケーション、前記第１のウェブ・アプリケーションに関する動作探索仕様、前記第１のウェブ・アプリケーションのためのウェブ・ブラウザの識別子、及び前記第１のウェブ・アプリケーションのための比較規則セットを前記第１のユーザに関連して保存する段階、
を更に有する請求項２に記載の方法。
【請求項４】
前記ユーザ・インタフェースは、前記第１のユーザに、
前記第１のウェブ・アプリケーションの保存された情報が読み出されることを要求し、
前記第１のウェブ・アプリケーションの保存された情報が削除されることを要求する、
ユーザ入力を提供させるよう更に構成され、
当該方法は、
前記第１のユーザが前記第１のウェブ・アプリケーションの保存された情報が読み出されることを要求するのに応答して、前記保存された第１のウェブ・アプリケーション、前記第１のウェブ・アプリケーションに関する前記保存された動作探索仕様、前記第１のウェブ・アプリケーションのためのウェブ・ブラウザの前記保存された識別子、及び前記第１のユーザの前記第１のウェブ・アプリケーションのための前記保存された比較規則セットを読み出す段階、
前記第１のユーザが前記第１のウェブ・アプリケーションの保存された情報が削除されることを要求するのに応答して、前記保存された第１のウェブ・アプリケーション、前記第１のウェブ・アプリケーションに関する前記保存された動作探索仕様、前記第１のウェブ・アプリケーションのためのウェブ・ブラウザの前記保存された識別子、及び前記第１のユーザの前記第１のウェブ・アプリケーションのための前記保存された比較規則セットを削除する段階、
を更に有する請求項３に記載の方法。
【請求項５】
前記ユーザ・インタフェースは、前記第１のユーザに、
前記第１のウェブ・アプリケーションのモデルが保存されることを要求し、
前記第１のウェブ・アプリケーションのモデルがコピーされることを要求する、
ユーザ入力を提供させるよう更に構成され、
当該方法は、
前記第１のユーザが前記第１のウェブ・アプリケーションのモデルが保存されることを要求するのに応答して、前記第１のウェブ・アプリケーションのモデルを前記第１のユーザに関連して保存する段階、
前記第１のユーザが前記第１のウェブ・アプリケーションのモデルがコピーされることを要求するのに応答して、前記第１のユーザのための前記第１のウェブ・アプリケーションのモデルをコピーする段階、
を更に有する請求項１に記載の方法。
【請求項６】
１又は複数のプロセッサにより実行可能な命令を有するメモリ、
該メモリに結合され該命令を実行するよう動作する該１又は複数のプロセッサ、
を有し、
前記１又は複数のプロセッサは、前記命令を実行しているとき、
第１のユーザにユーザ・インタフェースを提示し、前記ユーザ・インタフェースは前記第１のユーザにユーザ入力を提供させるよう構成され、
１又は複数のセッション中に前記第１のユーザから１又は複数のユーザ入力を受け、
前記第１のユーザから受けた各ユーザ入力に応答して、前記第１のユーザのための１又は複数の動作を実行する、
よう動作し、
前記ユーザ入力は、
第１のウェブ・アプリケーション、該第１のウェブ・アプリケーションに関する動作探索仕様、該第１のウェブ・アプリケーションのための複数のウェブ・ブラウザ、及び該第１のウェブ・アプリケーションのための比較規則セットを指定し、
前記第１のウェブ・アプリケーションに関する動作探索仕様に基づき、前記ウェブ・ブラウザに関して、前記第１のウェブ・アプリケーションの複数のモデルが構築されることを要求し、
前記第１のウェブ・アプリケーションのための比較規則セットに基づき、前記第１のウェブ・アプリケーションのモデルが互いに比較されることを要求し、
前記第１のウェブ・アプリケーションのモデルに対して実行された比較の１又は複数の結果が提示されることを要求し、該結果は前記第１のウェブ・アプリケーションの２以上のモデルの間に１又は複数の実質的な差があるか否かを示す、
ことを特徴とするシステム。
【請求項７】
ソフトウェアを具現化する１又は複数のコンピュータ可読非一時的記憶媒体であって、
前記ソフトウェアは、実行されるとき、
第１のユーザにユーザ・インタフェースを提示し、前記ユーザ・インタフェースは、前記第１のユーザにユーザ入力を提供させるよう構成され、
１又は複数のセッション中に前記第１のユーザから１又は複数のユーザ入力を受け、
前記第１のユーザから受けた各ユーザ入力に応答して、前記第１のユーザのための１又は複数の動作を実行する、
よう動作し、
前記ユーザ入力は、
第１のウェブ・アプリケーション、該第１のウェブ・アプリケーションに関する動作探索仕様、該第１のウェブ・アプリケーションのための複数のウェブ・ブラウザ、及び該第１のウェブ・アプリケーションのための比較規則セットを指定し、
前記第１のウェブ・アプリケーションに関する動作探索仕様に基づき、前記ウェブ・ブラウザに関して、前記第１のウェブ・アプリケーションの複数のモデルが構築されることを要求し、
前記第１のウェブ・アプリケーションのための比較規則セットに基づき、前記第１のウェブ・アプリケーションのモデルが互いに比較されることを要求し、
前記第１のウェブ・アプリケーションのモデルに対して実行された比較の１又は複数の結果が提示されることを要求し、該結果は前記第１のウェブ・アプリケーションの２以上のモデルの間に１又は複数の実質的な差があるか否かを示す、
ことを特徴とする媒体。
【請求項８】
第１のユーザにユーザ・インタフェースを提示する手段であって、前記ユーザ・インタフェースは前記第１のユーザにユーザ入力を提供させるよう構成される、手段、
１又は複数のセッション中に前記第１のユーザから１又は複数のユーザ入力を受ける手段、
前記第１のユーザから受けた各ユーザ入力に応答して、前記第１のユーザのための１又は複数の動作を実行する手段、
を有し、
前記ユーザ入力は、
第１のウェブ・アプリケーション、該第１のウェブ・アプリケーションに関する動作探索仕様、該第１のウェブ・アプリケーションのための複数のウェブ・ブラウザ、及び該第１のウェブ・アプリケーションのための比較規則セットを指定し、
前記第１のウェブ・アプリケーションに関する動作探索仕様に基づき、前記ウェブ・ブラウザに関して、前記第１のウェブ・アプリケーションの複数のモデルが構築されることを要求し、
前記第１のウェブ・アプリケーションのための比較規則セットに基づき、前記第１のウェブ・アプリケーションのモデルが互いに比較されることを要求し、
前記第１のウェブ・アプリケーションのモデルに対して実行された比較の１又は複数の結果が提示されることを要求し、該結果は前記第１のウェブ・アプリケーションの２以上のモデルの間に１又は複数の実質的な差があるか否かを示す、
ことを特徴とするシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、概して、異なるクライアント層環境でアクセスされるイベント駆動アプリケーションの差を決定することに関し、より詳細には、異なる種類のウェブ・ブラウザからアクセスされるウェブ・アプリケーションの互換性をチェックするウェブ・ベース・サービスに関する。
【背景技術】
【０００２】
イベント駆動アプリケーションは、標準的に異なるクライアント層環境でアクセスされる。しかしながら、多くの場合、第１のクライアント層環境は、第２のクライアント層環境と異なるイベント駆動アプリケーションのエンド・ユーザ経験を提供しうる。例えば、ウェブ・アプリケーションが異なる種類のウェブ・ブラウザを通じてアクセスされるとき、ウェブ・アプリケーションのユーザは異なる種類のウェブ・ブラウザで異なる経験を有しうる。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
本発明は、ウェブ・アプリケーションのブラウザに依存しない自動互換性チェックのためのウェブ・サービスを提供する。
【図面の簡単な説明】
【０００４】
【図１】例であるウェブ・アプリケーションのブラウザに依存しない互換性チェック・サービスの３つの段階を示す。
【図２】例であるウェブ・アプリケーションのブラウザに依存しない互換性チェック・サービスのワークフローを示す。
【図３】例であるウェブ・アプリケーションのブラウザに依存しない互換性チェック・サービスによるユーザ・データの編成を示す。
【図４】例であるウェブ・アプリケーションの例であるモデルを示す。
【図５Ａ】例であるウェブ・アプリケーションの、２つのウェブ・ブラウザに対応する２つのモデル間の例であるトレース・レベルの差を示す。
【図５Ｂ】例であるウェブ・アプリケーションの、２つのウェブ・ブラウザに対応する２つのモデル間の例であるトレース・レベルの差を示す。
【図５Ｃ】例であるウェブ・アプリケーションの、２つのウェブ・ブラウザに対応する２つのモデル間の例である状態レベルの差を示す。
【図６】例であるネットワーク環境を示す。
【図７】コンピュータ・システムの例を示す。
【発明を実施するための形態】
【０００５】
ウェブ・アプリケーションは、一般的にインターネット又はイントラネットのようなコンピュータ・ネットワークを介してアクセスされるアプリケーションを表す。標準的に、ウェブ・アプリケーションはサーバに存在しサーバで実行し、各ユーザはクライアントに存在しクライアントで実行するウェブ・ブラウザを通じてウェブ・アプリケーションにアクセスしうる。ウェブ・アプリケーションのユーザ・インタフェースは、例えばウェブ・ブラウザにロードされた多数のウェブ・ページとして各ユーザに提示される。ユーザは、特定のウェブ・ページを通じてウェブ・アプリケーションに入力を供給してもよい。同様に、ウェブ・アプリケーションの出力は、特定のウェブ・ページを通じてユーザに提示されてもよい。現在、Ｍｉｃｒｏｓｏｆｔ  Ｉｎｔｅｒｎｅｔ  Ｅｘｐｌｏｒｅｒ、Ｍｏｚｉｌｌａ、Ｆｉｒｅｆｏｘ又はＧｏｏｇｌｅ  Ｃｈｒｏｍｅのような多くの種類のウェブ・ブラウザが存在する。ウェブ・アプリケーションの異なるユーザは、異なる種類のウェブ・ブラウザを通じてウェブ・アプリケーションにアクセスすることを選択してもよい。又は、ウェブ・アプリケーションの特定のユーザは、異なる時間に異なる種類のウェブ・ブラウザを通じてウェブ・アプリケーションにアクセスすることを選択してもよい。従って、ウェブ・アプリケーションは、どの種類のウェブ・ブラウザを通じてユーザがウェブ・アプリケーションにアクセスするかに拘わらず、同一の外観及び感覚、配置、書式及び動作を有することが望ましい。ユーザは、Ｍｉｃｒｏｓｏｆｔ  Ｉｎｔｅｒｎｅｔ  Ｅｘｐｌｏｒｅｒ、Ｍｏｚｉｌｌａ、Ｆｉｒｅｆｏｘ、Ｇｏｏｇｌｅ  Ｃｈｒｏｍｅ又は他の種類のウェブ・ブラウザを通じてウェブ・アプリケーションにアクセスしてもよい。また、ユ―ザはこれら全てのウェブ・ブラウザで基本的に同一の経験を有するべきである。
【０００６】
異なる種類のウェブ・ブラウザにわたり一貫したウェブ・アプリケーションの機能を保証するために、特定の実施形態は、異なる種類のウェブ・ブラウザを通じてアクセスされるウェブ・アプリケーションの互換性及び整合性を自動的にチェックするサービス、つまりウェブ・アプリケーションのブラウザに依存しない互換性チェック・サービスを提供する。特定の実施形態では、サービスはウェブ・ベースのサービスである。換言すると、ウェブ・ベースのサービスは、それ自体がサーバに存在しサーバで実行するウェブ・アプリケーションである。サービスの各ユーザは、ユーザに関連するクライアントに存在し該クライアントで実行するウェブ・ブラウザを通じてサービスにアクセスし該サービスを用いてもよい。
【０００７】
特定の実施形態では、ブラウザに依存しない互換性チェック・サービスは、如何なる数のユーザにも対応してもよい。複数のユーザは、同時に又は異なる時間にサービスにアクセスし該サービスを使用してもよい。特定の実施形態では、サービスにアクセスし該サービスを使用して、如何なる数のウェブ・アプリケーションに対して、ブラウザに依存しない互換性チェックを実行してもよい。特定の実施形態では、ユーザ毎に、ユーザにより開始されたブラウザに依存しないチェックの固有のインスタンスと関連して実行された動作及びデータは、単一のセッションに編成される。換言すると、ユーザ毎に、ユーザの開始するブラウザに依存しない互換性チェックの各インスタンスに対応するセッションが存在する。このようなインスタンスは、該インスタンスを開始する特定のユーザ、ユーザが該インスタンスを開始した特定のクライアントは、及び該インスタンスが開始された時間に固有である。従って、ブラウザに依存しないチェックに関連して実行される動作及びデータは、ユーザ毎、セッション毎に編成される。
【０００８】
特定の実施形態では、ブラウザに依存しない互換性チェック・サービスは、サーバに存在し該サーバで実行するウェブ・ベースのサービスである。アプリケーション・データ及びユーザ・データを含む全てのデータは、サーバ側に格納される（例えば、ウェブ・ベースのブラウザに依存しない互換性チェック・サービス）。特定の実施形態では、ユーザ・データは、サービスの各ユーザのために、ユーザ毎、セッション毎にサーバ側に格納される。
【０００９】
特定の実施形態では、ブラウザに依存しない互換性チェック・サービスは、３つの段階、つまりモデル抽出、等価チェック、エラー表示及び診断を有する。図１は、ウェブ・アプリケーションのブラウザに依存しない互換性チェック・サービスの３つの段階を示す。特定の実施形態では、ブラウザに依存しない互換性についてウェブ・アプリケーションをチェックする各セッションは、これら３つの段階を有する。つまり、特定のウェブ・アプリケーションについてブラウザに依存しない互換性チェックを完全に実行するために、サービスは、ウェブ・アプリケーションについて少なくとも１回、これら３つの段階を通る。特定の実施形態では、各段階中、サービスは、ユーザから幾つかの入力を受け、幾つかの動作を実行し、又は幾つかの出力をユーザに提示してもよい。
【００１０】
特定の実施形態では、モデル抽出段階中に、ユーザは、ブラウザに依存しない互換性について試験されチェックされるべきウェブ・アプリケーションを指定し、チェックされるべきウェブ・ブラウザのリストを識別してもよい。特定の実施形態では、試験されるべきウェブ・アプリケーションは、該ウェブ・アプリケーションの対応するＵＲＬ（Uniform  Resource  Locator）を用いて指定されてもよい。従って、ユーザは、試験されるべきウェブ・アプリケーションのソース・コードをブラウザに依存しない互換性チェック・サービスにアップロードする必要はない。代わりに、ウェブ・アプリケーションが展開され又は実行可能である限り、ブラウザに依存しない互換性チェック・サービスは、ＵＲＬを用いて該ウェブ・アプリケーションにアクセスしてもよい。特定の実施形態では、ブラウザに依存しない互換性チェック・サービスは、現在存在しているウェブ・ブラウザの規定リストをユーザに提示してもよい。また、ユーザは、該規定リストから、チェックされるべきブラウザのリストを選択してもよい。代替として、特定の実施形態では、ユーザは、チェックされるべきブラウザのリストを識別し、該リストをブラウザに依存しない互換性チェック・サービスに提供してもよい。特定の実施形態では、任意的に、ユーザは、利用可能な場合には、ウェブ・アプリケーションのモデルを構築するために用いられてもよい追加情報を指定してもよい。例えば、ユーザは、ウェブ・アプリケーションに関する動作探査仕様を指定してもよい。動作探査仕様は、ウェブ・アプリケーションの動作がどのように探索されるべきかに関する指針、従って暗にモデルが示すべきウェブ・アプリケーションの動作の特定のサブセットに関する指針を有してもよい。別の例として、ユーザは、ウェブ・アプリケーション又はその動作に適用されるべき資源の制限を指定してもよい。
【００１１】
特定の実施形態では、ユーザにより識別される各ウェブ・ブラウザに対して、ブラウザに依存しない互換性チェック・サービスは、該ウェブ・ブラウザに関するウェブ・アプリケーションのモデルを構築してもよい。モデルは、該特定のウェブ・ブラウザを通じてアクセスされるので、ウェブ・アプリケーションの動作を示してもよい。特定の実施形態では、ユーザにより識別される各ウェブ・ブラウザに対して、サービスは、ウェブ・アプリケーションを自動的且つ動的に実行し、ウェブ・ブラウザの観察された動作のモデルを抽出してもよい。ユーザが、ウェブ・アプリケーションに適用されるウェブ・アプリケーション又は資源の制約の動作探索仕様を供給している場合、モデルは、ユーザの供給した動作探索仕様又は資源制約に基づき構築される。
【００１２】
ウェブ・アプリケーション及びウェブ・ブラウザのリストが与えられた場合、特定の実施形態では、各ウェブ・ブラウザに関してウェブ・アプリケーションのモデルを構築するために、ブラウザに依存しない互換性チェック・サービスは、各ブラウザ環境で所与のウェブ・アプリケーションを自動的且つ動的に実行し、該ブラウザの有限状態機械のナビゲーション・モデルとして観察された動作をキャプチャし格納する。クローリングは、各ブラウザについて実質的に同一の方法で行われ、各ブラウザ環境でウェブ・アプリケーションを有する可能性のあるユーザ相互作用シーケンスの正確に同一のセットをシミュレートする。特定の実施形態では、各特定のウェブ・ブラウザについて、ウェブ・アプリケーションをクローリングすることにより生成されたナビゲーション・モデルは、有限状態機械である。状態はエンド・ユーザによりウェブ・ブラウザで観察されたスクリーンを示し、遷移はウェブ・アプリケーションをあるスクリーンから別のスクリーンへ遷移させるユーザの活動（例えば、ボタンのクリック）を示す。各遷移は、該遷移を引き起こしたユーザの活動でラベル付けされる。各状態（スクリーン）は、ウェブ・ブラウザにより見える該スクリーンの裏に潜んだプログラム表現、及び特定のブラウザでレンダリングされるスクリーンのスクリーン・ショット（つまり、画像）により示される。
【００１３】
特定の実施形態では、複数のナビゲーション・モデル（例えば、複数のウェブ・ブラウザに関して構築されたモデル）を意味のあるように及び効率的に比較する目的で、各ナビゲーション・モデルを階層的に閲覧し分析することが有用でありうる。最上位層は、名称のない頂点として表現された状態（スクリーン）を有する有限状態機械のグラフ表現である。このグラフは、状態グラフとして表されてもよい。第２のレベルは、各状態（スクリーン）の完全なプログラム表現であり、状態のスクリーン・モデルとして表されてもよい。概念的に、状態グラフは、各スクリーンの詳細を参照せずに、トレースのセット−ユーザの活動及びスクリーン遷移の交互に生じるシーケンス−をキャプチャする。一方で、各スクリーンのスクリーン・モデルは、該スクリーンに至る又は該スクリーンから作り出される遷移の如何なる知識も有さずに、この詳細を正確にキャプチャする。特定の実施形態では、スクリーン・モデルは、基本的に、ウェブ・ブラウザで表示された所与のスクリーンのＤＯＭツリーの要約版である。モデルは、ＪａｖａＳｃｒｉｐｔ(登録商標)変数値又はＣＳＳ（Cascading  Style  Sheets）プロパティ又は特定のブラウザでレンダリングされたスクリーンのスクリーン・ショット画像のような、クライアント側の状態の他の特徴を有し比較するために一般化されてもよい。図４は、状態グラフ及びスクリーン・モデルを有するウェブ・アプリケーションの例であるモデルを示す。
【００１４】
特定の実施形態では、等価チェック段階中に、ユーザは、ウェブ・アプリケーションのモデルを比較するために用いられるべき比較規則セットを指定してもよい。該モデルは、モデル抽出段階中に個々のウェブ・ブラウザについて構築されたものである。例えば、ある比較規則は、白色空間について何をすべきかを示してもよい（例えば、２つのモデル間の白色空間内の差は、２つの対応するブラウザ間の実際の差として考えられて無視されるべきか否か）。また別の比較規則は、言葉の上付き及び下付きスペルについて何をすべきかを示してもよい（例えば、言葉の上付き文字は同一の言葉の下付き文字と同一として又は異なるとして考えられるのか）。特定の実施形態では、規定の比較規則セットがユーザに提示され、該セットからユーザは比較規則セットを選択してもよい。ユーザが比較規則セットを選択しない場合、規定の比較規則セットが用いられてもよい。１又は複数の比較規則は、ユーザ入力及びユーザ・データに基づき設定可能であってもよい。例えば、特定の比較規則は、異なるブラウザからの２つのスクリーン・モデルを比較するとき、特定のＨＴＭＬタグ又は特定のＨＴＭＬタグの特定の属性に関する差を無視するために設けられてもよい。そして、ユーザは、比較の際にどのタグ又はどの属性を無視するかを指定することにより、この規則を設定してもよい。
【００１５】
特定の実施形態では、ブラウザに依存しない互換性チェック・サービスは、比較規則セットに基づきウェブ・アプリケーションのモデルを互いに比較し、モデル間に実質的な差が存在する場合にはそれを決定してもよい。特定の実施形態では、サービスは、比較規則セットに基づきモデルの各対を比較し、２つのモデル間に実質的な差が存在するかどうかを決定してもよい。特定の実施形態では、ウェブ・アプリケーションの２つのモデル間の差は、状態レベル（スクリーン・レベルとしても参照される）の差又はトレース・レベルの差を有してもよい。
【００１６】
特定の実施形態では、（モデル抽出段階中に構築される）ナビゲーション・モデルの等価チェックは、それらの階層的見解を映し出す。特定の実施形態では、比較はモデルの各対の間で行われる。２つのモデルが与えられた場合、ブラウザに依存しない互換性チェック・サービスは、先ず、各ナビゲーション・モデルから２つの状態グラフ・モデルを抽出し、それらをトレース・レベルで比較する。これは、２つのモデル間のトレース・レベルの差のセット（つまり、１つのモデル内に存在し他のモデル内にはないトレースの差、逆も同様）を提供する。これは、第１のモデル内の各スクリーンを、第２のモデル内で該第１のモデル内のスクリーンと最も類似する対応物と対にする。次に、第１の段階により生成された、スクリーンの一致する対の候補が、それらの基礎を成すＤＯＭ表現の観点から比較される。これは、影響が個々のスクリーンに限定されうる又はトレース・レベルの差として再生される詳細な状態レベルの差を明らかにする。特定の実施形態では、等価チェック処理は、一部の実証可能な良性の差を取り除こうと試みる。
【００１７】
特定の実施形態では、エラー表示及び診断段階中に、比較の結果がユーザに表示され、従ってユーザは、ウェブ・アプリケーションが異なる種類のウェブ・ブラウザ間で互換性があるか否かを決定してもよい。特定の実施形態では、実質的に差を有する各モデル対に対し、ブラウザに依存しない互換性チェック・サービスは、状態レベルの差又はトレース・レベルの差をユーザに表示してもよい。図５Ａ及び５Ｂは、例であるウェブ・アプリケーションの２つのモデル間の例であるトレース・レベルの差を示す。図５Ｃは、例であるウェブ・アプリケーションの２つのモデル間の例である状態レベルの差を示す。
【００１８】
異なる種類のウェブ・ブラウザでアクセスされたウェブ・アプリケーションの差を決定するシステムは、米国特許出願番号１２／７２３，５６８、２０１０年３月１２日出願、名称「Determining  Differences  in  an  Event-Driven  Application  Accessed  in  Different  Client-TierEnvironments」に開示されている。特定の実施形態では、本願明細書に開示されたブラウザに依存しない互換性チェック・サービスは、米国特許出願番号１２／７２３，５６８に開示されたシステムの種々の特徴を組み込む。
【００１９】
特定の実施形態では、幾つかの段階は前の段階の結果を必要としうるが、各段階は、他の段階と独立して及び異なる時間に実行されてもよい。例えば、等価チェック段階中にモデル比較を実行するために、ウェブ・アプリケーションのモデルは、モデル抽出段階中に構築されている必要がある。しかしながら、ユーザは、ある日にウェブ・アプリケーションのモデルを構築させるために選択し、該モデルを有するセッションを保存し、そして後日に該モデルを比較させるために戻ってもよい。ウェブ・アプリケーションのモデルが比較される前に構築されている限り、ユーザは、ブラウザに依存しない互換性チェック・サービスとの相互作用の単一の位置でモデル抽出段階及び等価チェック段階を実行するために選択する必要がない。別の例では、エラー表示及び診断段階中にウェブ・アプリケーションの２つのモデル間の差を表示するために、２つのモデル間の状態レベル及びトレース・レベルの差は、等価チェック段階中に決定されている必要がある。しかしながら、ユーザは、ある日にウェブ・アプリケーションのモデルを比較するために選択し、該比較結果を有するセッションを保存し、そして後日に差を表示させるために戻ってもよい。
【００２０】
特定の実施形態では、各段階で、ユーザは以下の選択肢を有してもよい。つまり、（１）該段階中に提供された入力を変更する又は該段階の動作を繰り返す、（２）前の段階の動作を繰り返すために前の段階に戻る、又は（３）次の段階に進むことである。例えば、ユーザは、第１の比較規則セットを指定し、等価チェック段階中に該第１の比較規則セットに基づきウェブ・アプリケーションのモデルを比較させ、エラー表示及び診断段階中に第１の比較の結果を閲覧してもよい。次に、ユーザは、等価チェック段階に戻り、第２の比較規則セットを指定し、該第２の比較規則セットに基づきモデルを比較させ、再びエラー表示及び診断段階に戻って第２の比較の結果を閲覧してもよい。ユーザは必要に応じて処理を繰り返してもよい。
【００２１】
特定の実施形態では、各段階で、ユーザは現在のセッションを選択して保存してもよい。この例では、現在のセッションに関連付けられた全ての利用可能なユーザ・データは、ユーザと関連して及び現在のセッションと関連してサーバ側に保存される。例えば、ウェブ・アプリケーションのＵＲＬ、ユーザにより指定されたウェブ・ブラウザの識別子、必要に応じて構築されているモデル、必要に応じて比較規則セット、及び必要に応じてモデルに対して実行された比較の結果は、ユ―ザの現在のセッションと共に保存されてもよい。次に、ユーザは、保存されたセッションに戻り、ブラウザに依存しない互換性チェック・サービスを再開し続けてもよい。
【００２２】
特定の実施形態では、ブラウザに依存しない互換性チェック・サービスはユーザ・インタフェースを有してもよく、該ユーザ・インタフェースを通じて、該サービスのユーザが該サービスに入力を提供してもよく、該サービスの出力が該ユーザに提示されてもよい。特定の実施形態では、サービスはウェブ・ベースのサービス（例えば、サーバに存在しサーバで実行するウェブ・アプリケーション）であり、該サービスのユーザ・インタフェースはクライアントに存在しクライアントで実行するウェブ・ブラウザにロードされうる如何なる数のウェブ・ページを有してもよい。サービスの各ユーザは、これらのウェブ・ページを解してウェブ・ベースのサービスと相互作用してもよい。
【００２３】
図２は、ブラウザに依存しない互換性チェック・サービスの例であるワークフローを示す。ワークフローは、説明を簡単にするために単一のユーザに関して説明される。実際には、サービスは、同時に如何なる数のユーザによりアクセスされ使用されてもよく、各ユーザは同時に又は異なる時間に該サービスを使用する他のユーザに干渉されることなく同様に図２に示されたワークフローに従ってもよい。
【００２４】
特定の実施形態では、ブラウザに依存しない互換性チェック・サービスは、該サービスのユーザのそれぞれのアカウントを維持してもよい。特定のユーザから生じた全てのデータは、該ユーザに関連して格納される。特定の実施形態では、特定のユーザに対して、該ユーザは、該サービスを使用して、如何なる数のウェブ・アプリケーションについてブラウザに依存せずに互換性をチェックしてもよい。特定のユーザにより特定のクライアントから特定の時間に開始されたブラウザに依存しない互換性チェックの相互作用の各インスタンスは、それ自体のワーク・セッションを有し、特定のセッションから生じた全てのデータは該セッションに関連付けられて格納される。従って、全てのデータはユーザ毎、セッション毎に編成される。
【００２５】
特定の実施形態では、ブラウザに依存しない互換性チェック・サービスを使い始めるために、ユーザは彼のウェブ・ブラウザに該サービスのＵＲＬをロードしてもよい。そうすることにより、ユーザは、段階２０２に示されたようにログイン・スクリーンを提示される。ユーザは、彼のアカウントにログインし、サービスを使用するために、ログイン名とパスワードの正しい組合せ、又は他の認証情報を提供することを要求されてもよい。特定の実施形態では、ユーザが彼のアカウントにログインするためのログイン名とパスワードの正しい組合せを提供した場合に、段階２０４に示されたように、ユーザは彼のユーザ・ホームに導かれる。各ユーザは、自身のユーザ・ホームを有し、従って彼のアカウントへのログインに成功した後に、各ユーザは彼自身のユーザ・ホームに導かれる。ユーザ・ホームから、ユーザはどのように次に進むかについて多くの選択肢を有する。
【００２６】
第１に、前述のように、ユーザは、如何なる数のウェブ・アプリケーションについてブラウザに依存せずに互換性をチェックすることに対応する如何なる数のセッションを有してもよい。これらのセッションは、保存され、検索され、修正され、削除され、コピーされる等されてもよい。全ての予め保存されたセッションは、ユーザのためにサーバ側に格納されてもよい。特定の実施形態では、段階２０６に示されるように、ユーザ・ホームから、ユーザは、ユーザが現在有する全てのセッションを閲覧するために前のセッションのリストにアクセスすることを選択してもよい。このリストから、ユーザは、前に保存されたセッションのうちの任意の１つを選択し、コピーし、又は削除してもよい。ユーザが前に保存されたセッションのうちの１つを選択すると仮定すると、段階２０８に示されるように、前のセッションのリストの中で選択されたセッションがユーザに示されてもよい。選択されたセッションはユーザのためにロードされてもよく、従ってユーザは選択されたセッションのワークフローを再開してもよい（例えば、ユーザが前に中止したところからセッションを続けるか、又はセッションの幾つかの部分に修正を行う）。例えば、ユーザが前に保存されたセッションを選択すると仮定すると、ユーザが該セッションを保存したとき、ウェブ・アプリケーションのモデルが構築されている。従って、ユーザは、このセッションのワークフローを継続し、比較規則セットの指定に進み、比較規則セットに基づきモデルを互いに比較させてもよい。
【００２７】
代替として、ユーザは、前に保存されたセッションを削除し、該セッションをユーザのアカウントから除去してもよい。セッションが削除された場合、該セッションに関する全てのデータは削除されてもよい。ユーザは、前に保存されたセッションを別の新しいセッションとしてコピーしてもよい。セッションがコピーされた場合、該セッションに関する全ての利用可能なデータは新しいセッションのために複製されてもよい。従って、２つのセッションは互いに独立しているので、ユーザがコピーされた新しいセッションに如何なる変更を行った場合も、元のセッションに影響を与えない。逆も同様である。各セッションはウェブ・アプリケーションに対応するが、複数のセッションは同一のウェブ・アプリケーションに対応してもよいことに留意する。
【００２８】
第２に、ユーザは新しいセッションを開始することを選択してもよい。この場合には、ユーザは図１に示された一部の又は全ての段階を通ってもよい。段階２１２、２１４、２１６、２１８及び２２０は、図１に示された３つの段階を反映していることに留意する。モデル抽出段階中に、段階２１２に示されるように、ユーザは、試験されるべきウェブ・アプリケーションのＵＲＬ及び互換性チェックのためのブラウザのリストを入力してもよい。段階２１２みに示されるように、ユーザは、ウェブ・アプリケーションの動作又は資源の制約を探索することに関する具体的情報を更に提供してもよい。段階２１４に示されるように、段階２１２からのユーザ入力に基づき、ウェブ・アプリケーションのモデルがウェブ・ブラウザに関して生成されてもよい。特定の実施形態では、サービスは、各ウェブ・ブラウザでウェブ・アプリケーションを自動的且つ動的に実行し、該ウェブ・ブラウザに関してモデルを生成してもよい。
【００２９】
モデルが生成された後、等価チェック段階中に、段階２１６で、ユーザは比較規則セットを提供してもよい。特定の実施形態では、ユーザは規定の比較規則セットを提示され、該セットからユーザはこのウェブ・アプリケーションのための比較規則セットを選択してもよい。ユーザがこのウェブ・アプリケーションのために彼自身の比較規則セットを選択しない場合、規定の比較規則セットが用いられてもよい。段階２１８に示されるように、ブラウザに依存しない互換性チェック・サービスは、比較規則セットに基づきウェブ・アプリケーションのモデルを互いに比較し、任意の２つのモデル間に実質的な差が存在するかどうか決定してもよい。特定の実施形態では、サービスは、比較規則セットにより定められた特定の基準の下でモデルの各対を比較し、モデル対について状態レベル及びトラベル・レベルの差を生成してもよい。
【００３０】
特定の実施形態では、エラー表示及び診断段階中に、モデルについて実行された比較の結果は、ユーザに提示される。特定の実施形態では、状態レベル及びトレース・レベルの差は別個に編成され、異なる種類の差がより簡単な分析のために色分けされる。図５Ａ乃至５Ｃは、２つのモデル間の状態レベル及びトレース・レベルの差の例を示す。
【００３１】
特定の実施形態では、各セッション中に、任意の段階で（例えば、段階２１２、２１４、２１６、２１８）、ユーザは、現在のセッションを保存してユーザ・ホームに戻ることを選択してもよい。従って、ユーザはシステムからログアウトし、又は別の新しいセッションを開始し、又は別の（例えば前に保存された）セッションに従事できる。例えば、段階２１４でウェブ・アプリケーションのモデルを生成した後に、ユーザは現在のセッションを保存することを選択してもよい。ウェブ・ベースのサービスは、この特定のセッションと関連付けて及びこの特定のユーザと関連付けて、現在のセッションのモデルを保存するとともに、現在のセッションに関する全ての他の現在利用可能なユーザ・データも保存する。
【００３２】
特定の実施形態では、各セッション中に、任意の段階で（例えば、段階２１２、２１４、２１６、２１８）、ユーザは前の段階に戻って修正を行い特定の段階を繰り返すことを選択してもよい。例えば、段階２１２でウェブ・アプリケーションの互換性をチェックするためにウェブ・ブラウザのリストを提出した後に、任意の後続の段階から、ユーザは段階２１２に戻り、ブラウザに依存しない互換性チェックのために用いられたブラウザの選択を修正するために、ウェブ・ブラウザのリストを編集してもよい。ユーザがブラウザの新しいリストを提出した場合、ウェブ・アプリケーションのモデルは、修正されたブラウザのリストに関して再構築されてもよい。同様に、段階２１６でモデルを比較する比較規則セットを提出した後に、如何なる後続の段階から、ユーザは段階２１６に戻り、比較規則セットを修正しうる。ユーザが新しい比較規則セットを提出した場合、ウェブ・アプリケーションのモデルは、修正された比較規則セットに基づき再比較されてもよい。
【００３３】
特定の実施形態では、任意の段階で、ユーザは、完了に遠い全てのワークを保存することを選択し、彼のアカウントからログアウトしてもよい。ユーザがログアウトした場合、段階２０２に示されるように、ユーザはログイン・スクリーンに戻されてもよい。ログイン・スクリーンから、ユーザは、サービスを一時離れること又は再び彼のアカウントにログインして戻ることを選択してもよい。
【００３４】
特定の実施形態では、ブラウザに依存しない互換性チェック・サービスは、如何なる数のユーザに対応してもよく、各ユーザは如何なる数のワーク・セッションを有し、各セッションは特定のウェブ・アプリケーションのブラウザに依存しない互換性チェックに対応し、特定の選択肢で特定のクライアントから特定の時間に開始されてもよい。複数のユーザは、同時に又は異なる時間にブラウザに依存しない互換性チェック・サービスを使用してもよい。特定の実施形態では、２人のユーザがブラウザに依存しない互換性チェック・サービスを同時に使用するとき、一方のユーザがサービスに行ったことは、如何様にも別のユーザがサービスに行ったことに影響を与えない。
【００３５】
特定の実施形態では、ユーザ・データ（例えば、ウェブ・アプリケーションのＵＲＬ、ウェブ・ブラウザのリスト、比較規則セット、ウェブ・アプリケーションのモデル、又は比較結果）は、ユーザ毎、セッション毎に編成される。図３は、例であるブラウザに依存しない互換性チェック・サービスによるユーザ・データの編成を示す。特定の実施形態では、各ユーザの各セッションは、ブラウザに依存しない互換性チェックの特定のインスタンスに対して存在する。このインスタンスに対してブラウザに依存しない互換性チェックを実行することに関する全てのデータは、対応するセッション内で編成される。特定の実施形態では、セッション毎に、データはウェブ・アプリケーションのＵＲＬ、ブラウザに依存しない互換性チェックのためのウェブ・ブラウザのリスト、ウェブ・アプリケーションの動作探索仕様、ウェブ・アプリケーションの資源制約、異なるウェブ・ブラウザに関して構築されたウェブ・アプリケーションのモデル、比較規則セット、モデルの各対の間のトラベル・レベル及び状態レベルの差、等を有してもよい。特定の実施形態では、全てのユーザ・データは、データ・ストア内又はブラウザに依存しないチェック・サービスにアクセス可能なサーバのようなサーバ側に格納される。
【００３６】
特定の実施形態では、同一ユーザの又は２人の異なるユーザの２つのセッションは、２つの異なるウェブ・アプリケーションのブラウザに依存しない互換性チェックのため、又は同一のウェブ・アプリケーションのブラウザに依存しない互換性チェックのために存在してもよい。特定の実施形態では、２つのセッションが同一のウェブ・アプリケーションのブラウザに依存しない互換性チェックのために存在するとき、動作探索仕様又は比較規則セットのような他のユーザ・データは、２つのセッション間で異なってもよい。特定の実施形態では、ユーザが１つのセッションで行うことは、如何なる他のセッションにも影響を与えない。セッションは、必要に応じて保存され、検索され、再開され、削除され、又はコピーされてもよく、各セッション内のデータは必要に応じて保存され、検索され、削除され又は修正されてもよい。
【００３７】
特定の実施形態は、ネットワーク環境で実施されてもよい。図６は、ブラウザに依存しない互換性チェックをウェブ・ベースのサービスとして提供するのに適した例であるネットワーク環境６００を示す。ネットワーク環境６００は、１又は複数のサーバ６２０及び１又は複数のクライアント６３０を互いに結合するネットワーク６１０を有する。
【００３８】
特定の実施形態では、ネットワーク６１０は、イントラネット、エクストラネット、仮想私設ネットワーク（ＶＰＮ）、ローカル・エリア・ネットワーク（ＬＡＮ）、無線ＬＡＮ（ＷＬＡＮ）、広域ネットワーク（ＷＡＮ）、都市域ネットワーク（ＭＡＮ）、インターネットの一部、又は別のネットワーク６１０又は２以上のこのようなネットワーク６１０の組合せである。本開示は、如何なる適切なネットワーク６１０をも包含する。
１又は複数のリンク６５０は、サーバ６２０又はクライアント６３０をネットワーク６１０に結合する。特定の実施形態では、１又は複数のリンク６５０は、それぞれ、１又は複数の有線、無線又は光リンク６５０を有する。特定の実施形態では、１又は複数のリンク６５０は、それぞれ、イントラネット、エクストラネット、ＶＰＮ、ＬＡＮ、ＷＬＡＮ、ＷＡＮ、ＭＡＮ、インターネットの一部又は別のリンク６５０又はこのようなリンク６５０の２以上の組合せを有する。本開示は、サーバ６２０及びクライアント６３０をネットワーク６１０に結合する如何なる適切なリンク６５０をも包含する。
【００３９】
特定の実施形態では、各サーバ６２０は、単一のサーバであってもよく、複数のコンピュータ又は複数のデータセンタに及ぶ分散型サーバであってもよい。サーバ６２０は、例えば及び限定ではなく、ウェブ・サーバ、ニュース・サーバ、メール・サーバ、メッセージ・サーバ、アドバタイジング・サーバ、ファイル・サーバ、アプリケーション・サーバ、交換サーバ、データベース・サ―バ、又はプロキシ・サーバのような様々な種類であってもよい。特定の実施形態では、各サーバ６２０は、サーバ６２０により実施又はサポートされる適切な機能を実行するためのハードウェア、ソフトウェア、又は内蔵ロジック構成要素若しくはこのような構成要素の２以上の組合せを有してもよい。例えば、ウェブ・サーバは、通常、ウェブ・ページ又はウェブ・ページの特定の要素を有するウェブ・サイトをホスティング可能である。より詳細には、ウェブ・サーバは、ＨＴＭＬファイル又は他のファイル種類をホストし、又は要求に応じて動的にファイルを生成又は構成してもよく、及びクライアント６３０からのＨＴＴＰ又は他の要求に応じてクライアント６３０に該ファイルを通信してもよい。メール・サーバは、通常、種々のクライアント６３０に電子メール・サービスを提供できる。データベース・サーバは、通常、１又は複数のデータ・ストアに格納されたデータを管理するインタフェースを提供できる。
【００４０】
特定の実施形態では、１又は複数のデータ記憶６４０は、１又は複数のリンク６５０を介して、１又は複数のサーバ６２０に通信可能に接続されてもよい。特定の実施形態では、データ記憶６４０は、様々な種類の情報を格納するために用いられてもよい。特定の実施形態では、データ記憶６４０に格納された情報は、特定のデータ構造に従い編成されてもよい。特定の実施形態では、各データ記憶６４０は関係型データベースであってもよい。特定の実施形態は、サーバ６２０又はクライアント６３０にデータ記憶６４０に格納された情報を管理、例えば検索、修正、追加又は削除させるインタフェースを提供してもよい。
【００４１】
特定の実施形態では、各クライアント６３０は、クライアント６３０により実施又はサポートされる適切な機能を実行可能なハードウェア、ソフトウェア、又は内蔵ロジック構成要素若しくはこのような構成要素の２以上の組合せを有する電子機器であってもよい。例えば及び限定でなく、クライアント６３０は、デスクトップ・コンピュータ・システム、ノートブック・コンピュータ・システム、ハンドヘルド電子機器、又は携帯電話機であってもよい。本開示は、如何なる適切なクライアント６３０をも包含する。クライアント６３０は、クライアント６３０でネットワーク・ユーザにネットワーク６１０にアクセスさせてもよい。クライアント６３０は、他のクライアント６３０で自身のユーザに他のユーザと通信させてもよい。
【００４２】
クライアント６３０は、MICROSOFT  INTERNET  EXPLORER、GOOGLE  CHROME又はMOZILLA  FIREFOXのようなウェブ・ブラウザ６３２を有してもよく、TOOLBAR又はYAHOO  TOOLBARのような１又は複数のアドオン、プラグイン、又は他の拡張を有してもよい。クライアント６３０のユーザは、ＵＲＬ（Uniform  Resource  Locator）又はウェブ・ブラウザ６３２をサーバ６２０に導く他のアドレスを入力してもよく、ウェブ・ブラウザ６３２はＨＴＴＰ（Hyper  Text  Transfer  Protocol）リクエストを生成しＨＴＴＰリクエストをサーバ６２０に通信してもよい。サーバ６２０は、ＨＴＴＰリクエストを受け付け、該ＨＴＴＰリクエストに応答してクライアント６３０に１又は複数のＨＴＭＬ（Hyper  Text  Markup  Language）ファイルを通信してもよい。クライアント６３０は、ユーザに提示するためにサーバ６２０からのＨＴＭＬファイルに基づきウェブ・ページを再生してもよい。本開示は、如何なる適切なウェブ・ページ・ファイルをも包含する。例として及び限定でなく、ウェブ・ページは、ＨＴＭＬファイル、ＸＨＴＭＬ（Extensible  Hyper  Text  Markup  Language）ファイル、又はＸＭＬ（Extensible  Markup  Language）ファイルから、特定の必要に従い再生してもよい。このようなページは、例えば限定ではなく、JAVASCRIPT、JAVA(登録商標)、MICROSOFT  SILVERLIGHT、マークアップ言語の組合せで書かれたスクリプト、及びAJAX(Asynchronous  Javascript  and  XML)のようなスクリプト等のようなスクリプトを実行してもよい。ここで、ウェブ・ページへの参照は、（ブラウザがウェブ・ページを再生するために用いうる）１又は複数の対応するウェブ・ページ・ファイルを包含し、適切な場合には逆も同様である。
【００４３】
特定の実施形態では、ブラウザに依存しない互換性チェック・サービスは、サーバ６２０に存在しサーバ６２０で実行してもよい。サービスのユーザは、該ユーザに関連するクライアント６３０に存在し該クライアントで実行するウェブ・ブラウザ６３２を通じて該サービスにアクセスしてもよい。
【００４４】
特定の実施形態は、１又は複数のコンピュータ・システムで実施されてもよい。図７は、コンピュータ・システム７００の例を示す。特定の実施形態では、１又は複数のコンピュータ・システム７００は、本願明細書に記載された１又は複数の方法の１又は複数の段階を実行する。特定の実施形態では、１又は複数のコンピュータ・システム７００は、本願明細書に記載又は説明された機能を提供する。特定の実施形態では、１又は複数のコンピュータ・システム７００で実行されるソフトウェアは、本願明細書に記載された１又は複数の方法の１又は複数の段階を実行するか、本願明細書に記載された機能を提供する。特定の実施形態は、１又は複数のコンピュータ・システム７００の１又は複数の部分を有する。
【００４５】
本開示は、如何なる適切な数のコンピュータ・システム７００をも包含する。本開示は、如何なる適切な物理形式のコンピュータ・システム７００をも包含する。例として且つ限定的でなく、コンピュータ・システム７００は、組み込み型コンピュータ・システム、システム・オン・チップ（ＳＯＣ）、単一基板コンピュータ・システム（ＳＢＣ）（例えば、コンピュータ・オン・モジュール（ＣＯＭ）又はシステム・オン・モジュール（ＳＯＭ）のような）、デスクトップ・コンピュータ・システム、ラップトップ又はノートブック・コンピュータ・システム、対話型キオスク、メインフレーム、コンピュータ・システムのメッシュ、携帯電話機、パーソナル・デジタル・アシスタント（ＰＤＡ）、サーバ又はこれらの２以上の如何なる組み合わせであってもよい。適切な場合には、コンピュータ・システム７００は、１又は複数のコンピュータ・システム７００を有し、中央集中型若しくは分散型であってよく、複数の場所に渡ってよく、複数の装置に渡ってよく、１又は複数のネットワーク内の１又は複数の集団コンポーネントを有する集団の中に存在してもよい。適切な場合には、１又は複数のコンピュータ・システム７００は、本願明細書に記載された１又は複数の方法の１又は複数の段階を実質的に空間的又は時間的制限なしに実行してもよい。例として且つ限定的でなく、１又は複数のコンピュータ・システム７００は、本願明細書に記載された１又は複数の方法の１又は複数の段階を実時間で又はバッチ・モードで実行してもよい。１又は複数のコンピュータ・システム７００は、適切な場合には、本願明細書に記載された１又は複数の方法の１又は複数の段階を異なる時間に又は異なる場所で実行してもよい。
【００４６】
特定の実施形態では、コンピュータ・システム７００は、プロセッサ７０２、メモリ７０４、記憶装置７０６、入力／出力（Ｉ／Ｏ）インタフェース７０８、通信インタフェース７１０及びバス７１２を有する。本願明細書は特定の数の特定のコンポーネントを特定の構成で有する特定のコンピュータ・システムを記載し説明したが、本開示は、如何なる適切な数の如何なる適切なコンポーネントを如何なる適切な構成で有する如何なる適切なコンピュータ・システムも包含する。
【００４７】
特定の実施形態では、プロセッサ７０２は、コンピュータ・プログラムを構成する命令のような命令を実行するハードウェアを有する。例として且つ限定的でなく、命令を実行するために、プロセッサ７０２は、命令を内部レジスタ、内部キャッシュ、メモリ７０４又は記憶装置７０６から読み出し（又はフェッチし）、該命令をデコードして実行し、次に１又は複数の結果を内部レジスタ、内部キャッシュ、メモリ７０４又は記憶装置７０６に書き込んでよい。特定の実施形態では、プロセッサ７０２は、データ、命令又はアドレスのために１又は複数の内部キャッシュを有してもよい。本願明細書は、適切な場合には如何なる適切な数の如何なる適切な内部キャッシュを有するプロセッサ７０２も包含する。例として且つ限定的でなく、プロセッサ７０２は、１又は複数の命令キャッシュ、１又は複数のデータ・キャッシュ、及び１又は複数のトランスレーション・ルックアサイド・バッファ（ＴＬＢ）を有してもよい。命令キャッシュ内の命令は、メモリ７０４又は記憶装置７０６内の命令のコピーであってよい。命令キャッシュは、該命令のプロセッサ７０２による読み出しを高速化してよい。データ・キャッシュ内のデータは、プロセッサ７０４で実行され命令のためのメモリ７０６又は記憶装置７０２内の処理されるべきデータ、次にプロセッサ７０２で実行される命令によりアクセスされるために又はメモリ７０２又は記憶装置７０４への書き込みのために前にプロセッサ７０６で実行された命令の結果、又は他の適切なデータのコピーであってよい。データ・キャッシュは、プロセッサ７０２による読み出し又は書き込み動作を高速化しうる。ＴＬＢは、プロセッサ７０２のために仮想アドレス・トランスレーションを高速化しうる。特定の実施形態では、プロセッサ７０２は、データ、命令又はアドレスのために１又は複数の内部レジスタを有してもよい。本願明細書は、適切な場合には如何なる適切な数の如何なる適切な内部レジスタを有するプロセッサ７０２も包含する。適切な場合には、プロセッサ７０２は、１又は複数の演算論理装置（ＡＬＵ）を有し、マルチ・コア・プロセッサであり、又は１又は複数のプロセッサ７０２を有してもよい。本願明細書は特定のプロセッサを記載し説明したが、本開示は如何なる適切なプロセッサも包含する。
【００４８】
特定の実施形態では、メモリ７０４はプロセッサ７０２のために実行されるべき命令又はプロセッサ７０２のために処理されるべきデータを格納する主メモリを有する。例として且つ限定的でなく、コンピュータ・システム７００は、記憶装置７０６又は別の情報源（例えば、別のコンピュータ・システム７００のような）からメモリ７０４へ命令をロードする。プロセッサ７０２は、次に、命令をメモリ７０４から内部レジスタ又は内部キャッシュへロードする。命令を実行するために、プロセッサ７０２は、命令を内部レジスタ又は内部キャッシュから読み出し、該命令をデコードする。命令の実行後又は実行中、プロセッサ７０２は、１又は複数の結果を内部レジスタ又は内部キャッシュに書き込んでよい。プロセッサ７０２は、次に、１又は複数の結果をメモリ７０４に書き込んでよい。特定の実施形態では、プロセッサ７０２は、１又は複数の内部レジスタ又は内部キャッシュ又はメモリ７０４内の命令だけを実行し（記憶装置７０６又はその他の場所とは対照的に）、１又は複数の内部レジスタ又は内部キャッシュ又はメモリ７０４内のデータのみを処理してよい（記憶装置７０６又はその他の場所とは対照的に）。１又は複数のバス（それぞれアドレス・バス及びデータ・バスを有してよい）は、プロセッサ７０２をメモリ７０４に結合してよい。バス７１２は、以下に説明する１又は複数のメモリ・バスを有してよい。特定の実施形態では、１又は複数のメモリ管理部（ＭＭＵ）は、プロセッサ７０２とメモリ７０４との間に存在し、プロセッサ７０４により要求されたメモリ７０２へのアクセスを実現する。特定の実施形態では、メモリ７０４は、ランダム・アクセス・メモリ（ＲＡＭ）であってもよい。このＲＡＭは、適切な場合には揮発性メモリであってよい。適切な場合には、このＲＡＭはダイナミックＲＡＭ（ＤＲＡＭ）又はスタティックＲＡＭ（ＳＲＡＭ）であってもよい。更に、適切な場合には、このＲＡＭは単一ポート又は複数ポートＲＡＭであってもよい。本願明細書は、如何なる適切なＲＡＭをも包含する。メモリ７０４は、適切な場合には１又は複数のメモリ７０４を有してもよい。本願明細書は特定のメモリを記載し説明したが、本開示は如何なる適切なメモリも包含する。
【００４９】
特定の実施形態では、記憶装置７０６はデータ又は命令のための大容量記憶装置を有する。例として且つ限定的でなく、記憶装置７０６は、ＨＤＤ、プロッピー・ディスク・ドライブ、フラッシュ・メモリ、光ディスク、光磁気ディスク、磁気テープ、又はユニバーサル・シリアル・バス（ＵＳＢ）ドライブ、又はこれらの２以上の組み合わせを有してもよい。記憶装置７０６は、適切な場合には取り外し可能な又は取り外し不可能な（又は固定の）媒体を有してもよい。記憶装置７０６は、適切な場合にはコンピュータ・システム７００に内蔵又は外付けであってよい。特定の実施形態では、記憶装置７０６は不揮発性、固体メモリである。特定の実施形態では、記憶装置７０６は、読み出し専用メモリ（ＲＯＭ）であってもよい。適切な場合には、このＲＯＭは、マスク・プログラムＲＯＭ、プロブラマブルＲＯＭ（ＰＲＯＭ）、消去可能なＰＲＯＭ（ＥＰＲＯＭ）、電気的に消去可能なＰＲＯＭ（ＥＥＰＲＯＭ）、電気的に消去再書き込み可能なＲＯＭ（ＥＡＲＯＭ）、又はフラッシュ・メモリ又はこれらの２以上の組み合わせであってもよい。本開示は、如何なる適切な物理形式の大容量記憶装置７０６をも包含する。記憶装置７０６は、適切な場合には、プロセッサ７０２と記憶装置７０６との間の通信を実現する１又は複数の記憶制御部を有してもよい。記憶装置７０６は、適切な場合には１又は複数の記憶装置７０６を有してもよい。本願明細書は特定の記憶装置を記載し説明したが、本開示は如何なる適切な記憶装置も包含する。
【００５０】
特定の実施形態では、Ｉ／Ｏインタフェース７０８は、コンピュータ・システム７００と１又は複数のＩ／Ｏ装置との間の通信のための１又は複数のインタフェースを提供するハードウェア、ソフトウェア又はこれらの両方を有する。コンピュータ・システム７００は、適切な場合には、１又は複数のこれらのＩ／Ｏ装置を有してもよい。１又は複数のこれらのＩ／Ｏ装置は、人とコンピュータ・システム７００との間の通信を可能にしうる。例として且つ限定的でなく、Ｉ／Ｏ装置は、キーボード、キーパッド、マイクロホン、モニタ、マウス、プリンタ、スピーカ、カメラ、スタイラス、タブレット、タッチスクリーン、トラックボール、ビデオカメラ、他の適切なＩ／Ｏ装置又はこれらの２つ以上の組み合わせを有してもよい。Ｉ／Ｏ装置は１又は複数のセンサを有してもよい。本開示は如何なる適切なＩ／Ｏ装置及びそのための如何なる適切なＩ／Ｏインタフェース７０８も包含する。適切な場合には、Ｉ／Ｏインタフェース７０８は、プロセッサ７０２に１又は複数のＩ／Ｏ装置を駆動させる１又は複数の装置又はソフトウェア・ドライバを有してよい。Ｉ／Ｏインタフェース７０８は、適切な場合には、１又は複数のこれらのＩ／Ｏインタフェース７０８を有してもよい。本願明細書は特定のＩ／Ｏインタフェースを記載し説明したが、本開示は如何なる適切なＩ／Ｏインタフェースも包含する。
【００５１】
特定の実施形態では、通信インタフェース７１０は、コンピュータ・システム７００と１又は複数のコンピュータ・システム７００又は１又は複数のネットワークとの間の通信（例えば、パケットベースの通信のような）のための１又は複数のインタフェースを提供するハードウェア、ソフトウェア又はこれらの両方を有する。例として且つ限定的でなく、通信インタフェース７１０は、イーサネット(登録商標)又は他の有線ネットワークと通信するためのネットワーク・インタフェース制御部（ＮＩＣ）又はネットワーク・アダプタ又はＷＩ−ＦＩネットワークのような無線ネットワークと通信するための無線ＮＩＣ（ＷＮＩＣ）又は無線アダプタを有してもよい。本開示は如何なる適切なネットワーク及びそのための如何なる適切な通信インタフェース７１０も包含する。例として且つ限定的でなく、コンピュータ・システム７００は、アドホック・ネットワーク、個人域ネットワーク（ＰＡＮ）、ローカル・エリア・ネットワーク（ＬＡＮ）、広域ネットワーク（ＷＡＮ）、都市域ネットワーク（ＭＡＮ）、又はインターネットの１又は複数の部分又はこれらの２つ以上の組み合わせと通信してもよい。１又は複数のこれらのネットワークの１又は複数の部分は、有線又は無線であってもよい。例として、コンピュータ・システム７００は、無線ＰＡＮ（ＷＰＡＮ）（例えばＢｌｕｅｔｏｏｔｈ(登録商標)  ＷＰＡＮのような）、ＷＩ−ＦＩネットワーク、Ｗｉ−ＭＡＸネットワーク、携帯電話網（例えば、移動通信網（ＧＳＭ(登録商標)）のような）、又は他の適切な無線ネットワーク又はこれらの２つ以上の組み合わせと通信してもよい。コンピュータ・システム７００は、適切な場合には、如何なる適切なネットワークの如何なる適切な通信インタフェース７１０を有してもよい。通信インタフェース７１０は、適切な場合には１又は複数の通信インタフェース７１０を有してもよい。本願明細書は特定の通信インタフェースを記載し説明したが、本開示は如何なる適切な通信インタフェースも包含する。
【００５２】
特定の実施形態では、バス７１２は、コンピュータ・システム７００のコンポーネントを相互に結合するハードウェア、ソフトウェア又は両方を有する。例として且つ限定的でなく、バス７１２は、グラフィック専用高速バス（ＡＧＰ）又は他のグラフィック・バス、拡張工業標準アーキテクチャ（ＥＩＳＡ）バス、フロント・サイド・バス（ＦＳＢ）、ＨＹＰＥＲＴＲＡＮＳＰＯＲＴ（ＨＴ）相互接続、工業標準アーキテクチャ（ＩＳＡ）バス、ＩＮＦＩＮＩＢＡＮＤ相互接続、Ｌｏｗ−Ｐｉｎ−Ｃｏｕｎｔ（ＬＰＣ）バス、メモリ・バス、マイクロ・チャネル・アーキテクチャ（ＭＣＡ）バス、ペリフェラル・コンポーネント相互接続（ＰＣＩ）バス、ＰＣＩ−Ｅｘｐｒｅｓｓ（ＰＣＩ−Ｘ）バス、シリアル・アドバンスト・テクノロジ・アタッチメント（ＳＡＴＡ）バス、ビデオ・エレクトロニクス・スタンダード・アソシエーション・ローカル（ＶＬＢ）バス、又は他の適切なバス又はこれらの２つ以上の組み合わせを有してもよい。バス７１２は、適切な場合には１又は複数のバス７１２を有してもよい。本願明細書は特定のバスを記載し説明したが、本開示は如何なる適切なバスも包含する。
【００５３】
ここで、コンピュータ可読記憶媒体という表現は、１又は複数の非一時的な有形のコンピュータ可読記憶媒体処理構造を包含する。例として且つ限定的でなく、コンピュータ可読記憶媒体は、半導体に基づく又は他の集積回路（ＩＣ）（例えば、フィールド・プログラマブル・ゲート・アレイ（ＦＰＧＡ）又は特定用途向け集積回路（ＡＳＩＣ））、ハ―ドディスク、ＨＤＤ、ハイブリッド・ハードドライブ（ＨＨＤ）、光ディスク、光ディスク・ドライブ（ＯＤＤ）、光磁気ディスク、光磁気ドライブ、フロッピー(登録商標)・ディスク、フロッピー・ディスク・ドライブ（ＦＤＤ）、磁気テープ、ホログラフィック記憶媒体、固体ドライブ（ＳＳＤ）、ＲＡＭドライブ、ＳＥＣＵＲＥ  ＤＩＧＩＴＡＬカード、ＳＥＣＵＲＥ  ＤＩＧＩＴＡＬドライブ、又は他の適切なコンピュータ可読記憶媒体、又はこれらの２つ以上の組み合わせを有してもよい。ここで、コンピュータ可読記憶媒体の表現は、３５Ｕ．Ｓ．Ｃ．１０１に基づき特許保護に適切でない如何なる媒体も除外する。ここで、コンピュータ可読記憶媒体の表現は、３５Ｕ．Ｓ．Ｃ．１０１に基づき特許保護に適切でない一時的な信号伝送形式を除外する（例えば、電気又は電磁気信号自体の伝搬）。コンピュータ可読非一時的記憶媒体は、適切な場合には、揮発性、不揮発性又は揮発性と不揮発性との組合せであってもよい。
【００５４】
本願明細書は、如何なる適切な記憶装置を実施する１又は複数のコンピュータ可読記憶媒体を包含する。特定の実施形態では、適切な場合には、コンピュータ可読記憶媒体は、１又は複数のプロセッサ７０２（例えば、１又は複数の内部レジスタ又はキャッシュのような）、メモリ７０４の１又は複数の部分、記憶装置７０６の１又は複数の部分、又はこれらの組み合わせを実施する。特定の実施形態では、コンピュータ可読記憶媒体は、ＲＡＭ又はＲＯＭを実施してもよい。特定の実施形態では、コンピュータ可読記憶媒体は、揮発性又は永久メモリを実施してもよい。特定の実施形態では、１又は複数のコンピュータ可読記憶媒体はソフトウェアを具現化する。ここで、ソフトウェアの表現は、適切な場合には、１又は複数のアプリケーション、バイトコード、１又は複数のコンピュータ・プログラム、１又は複数の実行ファイル、１又は複数の命令、ロジック、機械コード、１又は複数のスクリプトを包含する。逆も同様である。特定の実施形態では、ソフトウェアは、１又は複数のアプリケーション・プログラミング・インタフェース（ＡＰＩ）を有する。本開示は、如何なる適切な記載されたソフトウェア又は如何なる適切なプログラミング言語で又はプログラミング言語の組み合わせで他の表現されたソフトウェアも包含する。特定の実施形態では、ソフトウェアは、ソース・コード又はオブジェクトコードとして表現される。特定の実施形態では、ソフトウェアは、例えば、Ｃ、Ｐｅｒｌ、又はこれらの適切な拡張のような高レベルのプログラミング言語で表現される。特定の実施形態では、ソフトウェアは、アセンブリ言語（又は機械コード）のような低レベルのプログラミング言語で表現される。特定の実施形態では、ソフトウェアはＪＡＶＡ(登録商標)で表現される。特定の実施形態では、ソフトウェアは、ハイパーテキスト・マークアップ言語（ＨＴＭＬ）、拡張マークアップ言語（ＸＭＬ）、又は他の適切なマークアップ言語で表現される。
【００５５】
本願明細書で、「又は」は、他に明示的に示されない限り又は文脈上特に示されない限り、包括的であり、排他的ではない。従って、本願明細書では、特に明示的に示されない限り又は文脈上別に示されない限り、「Ａ又はＢ」は「Ａ、Ｂ、又は両方」を意味する。更に、「及び」は、他に明示的に示されない限り又は文脈上特に示されない限り、結合及び幾つかの両方である。従って、本願明細書では、特に明示的に示されない限り又は文脈上別に示されない限り、「Ａ及びＢ」は「Ａ及びＢ、一緒に又は別々に」を意味する。
【００５６】
本開示は、当業者が考え得る、本願明細書に記載された例である実施形態の全ての変更、代替、変形、選択肢、及び修正を包含する。同様に、適切な場合には、特許請求の範囲は、当業者が考え得る、本願明細書に記載された例である実施形態の全ての変更、代替、変形、選択肢、及び修正を包含する。更に、特定の機能を実行するよう、適応され、配置され、可能にされ、構成され、実行可能なように、動作可能なように、又は機能するようにされた装置又はシステム又は採用されている装置若しくはシステムの構成要素への添付の特許請求の範囲中の参照は、それ又は該特定の機能が作動され、オンに切り替えられ、又は解除されているか否かに拘わらず、該装置、システム又は構成要素がそのように適応され、配置され、可能にされ、構成され、使用可能にされ、動作可能にされ又は機能するようにされている限り、該装置、システム、構成要素を包含する。
【００５７】
以上の実施形態に関し、更に以下の付記を開示する。
（付記１）  １又は複数のコンピュータ装置により、
第１のユーザにユーザ・インタフェースを提示する段階であって、該ユーザ・インタフェースは該第１のユーザにユーザ入力を提供させるよう構成される、段階、
１又は複数のセッション中に前記第１のユーザからの１又は複数のユーザ入力を受ける段階、
前記第１のユーザから受けた各ユーザ入力に応答して、前記第１のユーザに対して１又は複数の動作を実行する段階、
を有し、
前記ユーザ入力は、
第１のウェブ・アプリケーション、該第１のウェブ・アプリケーションに関する動作探索仕様、該第１のウェブ・アプリケーションのための複数のウェブ・ブラウザ及び該第１のウェブ・アプリケーションのための比較規則セットを指定し、
前記第１のウェブ・アプリケーションに関する前記行動探索仕様に基づき、前記ウェブ・ブラウザに関して前記ウェブ・アプリケーションの複数のモデルが構築されることを要求し、
前記第１のウェブ・アプリケーションのための前記比較規則セットに基づき、前記第１のウェブ・アプリケーションのモデルが互いに比較されることを要求し、
前記第１のウェブ・アプリケーションのモデルに対して実行された比較の１又は複数の結果が提示されることを要求し、該結果は前記第１のウェブ・アプリケーションの２以上のモデルの間に１又は複数の実質的な差があるか否かを示す、
ことを特徴とする方法。
（付記２）  前記第１のユーザが前記第１のウェブ・アプリケーションのモデルが構築されることを要求するのに応答して、前記第１のウェブ・アプリケーションのための前記ブラウザのそれぞれに対して、前記第１のウェブ・アプリケーションに関する前記行動探索仕様に基づき、前記ウェブ・ブラウザに関する前記第１のウェブ・アプリケーションのモデルを構築する段階、
前記第１のユーザが前記第１のウェブ・アプリケーションのモデルが互いに比較されることを要求するのに応答して、前記第１のウェブ・アプリケーションの比較規則セットに基づき、前記第１のウェブ・アプリケーションのモデルを互いに比較する段階、
前記第１のユーザが前記第１のウェブ・アプリケーションのモデルに対して実行された比較の結果が提示されることを要求するのに応答して、前記第１のユーザに前記第１のウェブ・アプリケーションのモデルに対して実行された比較の結果を提示する段階、
を更に有する付記１に記載の方法。
（付記３）  前記ユーザ・インタフェースは、前記第１のユーザに前記第１のウェブ・アプリケーションに関する情報が保存されることを要求するユーザ入力を提供させるよう更に構成され、
当該方法は、
前記第１のユーザが前記第１のウェブ・アプリケーションに関する情報が保存されることを要求するのに応答して、前記第１のウェブ・アプリケーション、前記第１のウェブ・アプリケーションに関する行動探索仕様、前記第１のウェブ・アプリケーションのためのウェブ・ブラウザの識別子、及び前記第１のウェブ・アプリケーションのための比較規則セットを前記第１のユーザに関連して保存する段階、
を更に有する付記２に記載の方法。
（付記４）  前記ユーザ・インタフェースは、前記第１のユーザに、
前記第１のウェブ・アプリケーションの保存された情報が読み出されることを要求し、
前記第１のウェブ・アプリケーションの保存された情報が削除されることを要求する、
ユーザ入力を提供させるよう更に構成され、
当該方法は、
前記第１のユーザが前記第１のウェブ・アプリケーションの保存された情報が読み出されることを要求するのに応答して、前記保存された第１のウェブ・アプリケーション、前記第１のウェブ・アプリケーションに関する前記保存された行動探索仕様、前記第１のウェブ・アプリケーションのためのウェブ・ブラウザの前記保存された識別子、及び前記第１のユーザの前記第１のウェブ・アプリケーションのための前記保存された比較規則セットを読み出す段階、
前記第１のユーザが前記第１のウェブ・アプリケーションの保存された情報が削除されることを要求するのに応答して、前記保存された第１のウェブ・アプリケーション、前記第１のウェブ・アプリケーションに関する前記保存された行動探索仕様、前記第１のウェブ・アプリケーションのためのウェブ・ブラウザの前記保存された識別子、及び前記第１のユーザの前記第１のウェブ・アプリケーションのための前記保存された比較規則セットを削除する段階、
を更に有する付記３に記載の方法。
（付記５）  前記ユーザ・インタフェースは、前記第１ユーザに、
前記第１のウェブ・アプリケーションのモデルが保存されることを要求し、
前記第１のウェブ・アプリケーションのモデルがコピーされることを要求する、
ユーザ入力を提供させるよう更に構成され、
当該方法は、
前記第１ユーザが前記第１のウェブ・アプリケーションのモデルが保存されることを要求するのに応答して、前記第１のウェブ・アプリケーションのモデルを前記第１のユーザに関連して保存する段階、
前記第１ユーザが前記第１のウェブ・アプリケーションのモデルがコピーされることを要求するのに応答して、前記第１のユーザのための前記第１のウェブ・アプリケーションのモデルをコピーする段階、
を更に有する付記１に記載の方法。
（付記６）  前記ユーザ・インタフェースは、前記第１のユーザに、
前記保存された第１のウェブ・アプリケーションのモデルが読み出されることを要求し、
前記保存された第１のウェブ・アプリケーションのモデルが削除されることを要求する、
ユーザ入力を提供させるよう更に構成され、
当該方法は、
前記第１のユーザが前記保存された第１のウェブ・アプリケーションのモデルが読み出されることを要求するのに応答して、前記第１のユーザの前記保存された第１のウェブ・アプリケーションのモデルを読み出す段階、
前記第１のユーザが前記保存された第１のウェブ・アプリケーションのモデルが削除されることを要求するのに応答して、前記第１のユーザのための前記保存された第１のウェブ・アプリケーションのモデルを削除する段階、
を更に有する付記５に記載の方法。
（付記７）  前記ユーザ・インタフェースは、前記第１のユーザに、前記第１のウェブ・アプリケーションのモデルに対して実行された比較の結果が保存されることを要求するユーザ入力を提供させるよう更に構成され、
当該方法は、
前記第１ユーザが前記第１のウェブ・アプリケーションのモデルに対して実行された比較の結果が保存されることを要求するのに応答して、前記第１のウェブ・アプリケーションのモデルに対して実行された比較の結果を前記第１のユーザに関連して保存する段階、
を更に有する付記１に記載の方法。
（付記８）  前記ユーザ・インタフェースは、前記第１のユーザに、
前記保存された第１のウェブ・アプリケーションのモデルに対して実行された比較の結果が読み出されることを要求し、
前記保存された第１のウェブ・アプリケーションのモデルに対して実行された比較の結果が削除されることを要求する、
ユーザ入力を提供させるよう更に構成され、
当該方法は、
前記第１のユーザが前記保存された第１のウェブ・アプリケーションのモデルに対して実行された比較の結果が読み出されることを要求するのに応答して、前記第１のユーザの前記保存された第１のウェブ・アプリケーションのモデルに対して実行された比較の結果を読み出す段階、
前記第１のユーザが前記保存された第１のウェブ・アプリケーションのモデルに対して実行された比較の結果が削除されることを要求するのに応答して、前記第１のユーザのための前記保存された第１のウェブ・アプリケーションのモデルに対して実行された比較の結果を削除する段階、
を更に有する付記７に記載の方法。
（付記９）  前記ユーザ・インタフェースは、前記第１のユーザに、
前記第１のウェブ・アプリケーションに関する行動探索仕様を修正し、
前記第１のウェブ・アプリケーションのためのウェブ・ブラウザの選択を修正し、
前記第１のウェブ・アプリケーションのための比較規則セットを修正する、
ユーザ入力を提供させるよう更に構成される、
ことを特徴とする付記１に記載の方法。
（付記１０）  前記第１のユーザに規定の比較規則セットを提示する段階、
を更に有し、
前記ユーザ・インタフェースは、前記第１のユーザに、前記規定の比較規則セットから、前記第１のウェブ・アプリケーションのための比較規則セットを選択するユーザ入力を提供させるよう更に構成される、
ことを特徴とする付記１に記載の方法。
（付記１１）  前記ユーザ・インタフェースは、前記第１のユーザに、
第２のウェブ・アプリケーション、該第２のウェブ・アプリケーションに関する動作探索仕様、該第２のウェブ・アプリケーションのための複数のウェブ・ブラウザ及び該第２のウェブ・アプリケーションのための比較規則セットを指定し、
前記第２のウェブ・アプリケーションに関する前記行動探索仕様に基づき、前記第２のウェブ・アプリケーションのためのウェブ・ブラウザに関して前記ウェブ・アプリケーションの複数のモデルが構築されることを要求し、
前記第２のウェブ・アプリケーションのための前記比較規則セットに基づき、前記第２のウェブ・アプリケーションのモデルが互いに比較されることを要求し、
前記第２のウェブ・アプリケーションのモデルに対して実行された比較の１又は複数の結果が提示されることを要求し、該結果は前記第２のウェブ・アプリケーションの２以上のモデルの間に１又は複数の実質的な差があるか否かを示す、
ことを特徴とする付記１に記載の方法。
（付記１２）  前記ユーザ・インタフェースは、前記第１のユーザに、
第２のウェブ・アプリケーションを指定し、
前記第１のウェブ・アプリケーションに関する行動探索仕様を前記第２のウェブ・アプリケーションに関する行動探索仕様としてコピーし、
前記第１のウェブ・アプリケーションのためのウェブ・ブラウザを前記第２のウェブ・アプリケーションのための複数のウェブ・ブラウザとしてコピーし、
前記第１のウェブ・アプリケーションのための比較規則セットを前記第２のウェブ・アプリケーションのための比較規則セットとしてコピーする、
ユーザ入力を提供させるよう更に構成される、
ことを特徴とする付記１に記載の方法。
（付記１３）  前記ユーザ・インタフェースを第２のユーザに提示する段階であって、該ユーザ・インタフェースは該第２のユーザにユーザ入力を提供させるよう更に構成される、段階、
１又は複数のセッション中に前記第２のユーザから１又は複数のユーザ入力を受ける段階、
前記第２のユーザから受けた各ユーザ入力に応答して、前記第２のユーザのための１又は複数の動作を実行する段階、
を有し、
前記ユーザ入力は、
第２のウェブ・アプリケーション、該第２のウェブ・アプリケーションに関する行動探索仕様、該第２のウェブ・アプリケーションのための複数のウェブ・ブラウザ、及び該第２のウェブ・アプリケーションのための比較規則セットを指定し、
前記第２のウェブ・アプリケーションに関する行動探索仕様に基づき、前記第２のウェブ・アプリケーションのためのウェブ・ブラウザに関して前記第２のウェブ・アプリケーションの複数のモデルが構築されることを要求し、
前記第２のウェブ・アプリケーションのための比較規則セットに基づき、前記第２のウェブ・アプリケーションのモデルが互いに比較されることを要求し、
前記第２のウェブ・アプリケーションのモデルに対して実行された比較の１又は複数の結果が提示されることを要求し、該結果は前記第２のウェブ・アプリケーションの２以上のモデルの間の１又は複数の実質的な差があるか否かを示す、
ことを特徴とする付記１に記載の方法。
（付記１４）  前記第２のユーザが前記第２のウェブ・アプリケーションのモデルが構築されることを要求するのに応答して、前記第２のウェブ・アプリケーションのための前記ブラウザのそれぞれに対して、前記第２のウェブ・アプリケーションに関する前記行動探索仕様に基づき、前記ウェブ・ブラウザに関する前記第２のウェブ・アプリケーションのモデルを構築する段階、
前記第２のユーザが前記第２のウェブ・アプリケーションのモデルが互いに比較されることを要求するのに応答して、前記第２のウェブ・アプリケーションの比較規則セットに基づき、前記第２のウェブ・アプリケーションのモデルを互いに比較する段階、
前記第２のユーザが前記第２のウェブ・アプリケーションのモデルに対して実行された比較の結果が提示されることを要求するのに応答して、前記第２のユーザに前記第２のウェブ・アプリケーションのモデルに対して実行された比較の結果を提示する段階、
を更に有する付記１３に記載の方法。
（付記１５）  前記ユーザ・インタフェースは、前記第２のユーザにユーザ入力を提供させるよう更に構成され、
前記ユーザ入力は、
前記第２のウェブ・アプリケーションに関する情報が保存されることを要求し、
前記第２のウェブ・アプリケーションのモデルが保存されることを要求し、
前記第２のウェブ・アプリケーションのモデルに対して実行された比較の結果が保存されることを要求し、
前記保存された第２のウェブ・アプリケーションのモデルが読み出されることを要求し、
前記保存された第２のウェブ・アプリケーションのモデルに対して実行された比較の結果が読み出されることを要求し、
当該方法は、
前記第２のユーザが前記第２のウェブ・アプリケーションに関する情報が保存されることを要求するのに応答して、前記第２のウェブ・アプリケーション、前記第２のウェブ・アプリケーションに関する行動探索仕様、前記第２のウェブ・アプリケーションのためのウェブ・ブラウザ、及び前記第２のウェブ・アプリケーションのための比較規則セットを前記第２のユーザに関連して保存する段階、
前記第２のユーザが前記第２のウェブ・アプリケーションのモデルが保存されることを要求するのに応答して、前記第２のウェブ・アプリケーションのモデルを前記第２のユーザに関連して保存する段階、
前記第２のユーザが前記第２のウェブ・アプリケーションのモデルに対して実行された比較の結果が保存されることを要求するのに応答して、前記第２のウェブ・アプリケーションのモデルに対して実行された比較の結果を前記第２のユーザに関連して保存する段階、
前記第２のユーザが前記保存された第２のウェブ・アプリケーションのモデルが読み出されることを要求するのに応答して、前記第２のユーザのための前記保存された第２のウェブ・アプリケーションのモデルを読み出す段階、
前記第２のユーザが前記保存された第２のウェブ・アプリケーションのモデルに対して実行された比較の結果が読み出されることを要求するのに応答して、前記第２のユーザのための前記保存された第２のウェブ・アプリケーションのモデルに対して実行された比較の結果を読み出す段階、
を更に有する付記１３に記載の方法。
（付記１６）  前記第１のユーザ及び前記第２のユーザのアカウントを維持する段階、
を更に有する付記１３に記載の方法。
（付記１７）  前記ユーザ・インタフェースは、前記第１のユーザ及び前記第２のユーザに、個々のアカウントにログインするためのユーザ入力を提供させるよう更に構成され、
当該方法は、
前記第１のユーザが対応するアカウントにログインするのに応答して、前記第１のユーザに関連する前記アカウントに保存された情報を読み出す段階、
前記第２のユーザが対応するアカウントにログインするのに応答して、前記第２のユーザに関連する前記アカウントに保存された情報を読み出す段階、
を更に有する付記１６に記載の方法。
（付記１８）  １又は複数のプロセッサにより実行可能な命令を有するメモリ、
該メモリに結合され該命令を実行するよう動作する該１又は複数のプロセッサ、
を有し、
前記１又は複数のプロセッサは、前記命令を実行しているとき、
第１のユーザにユーザ・インタフェースを提示し、前記ユーザ・インタフェースは前記第１のユーザにユーザ入力を提供させるよう構成され、
１又は複数のセッション中に前記第１のユーザから１又は複数のユーザ入力を受け、
前記第１のユーザから受けた各ユーザ入力に応答して、前記第１のユーザのための１又は複数の動作を実行する、
よう動作し、
前記ユーザ入力は、
第１のウェブ・アプリケーション、該第１のウェブ・アプリケーションに関する行動探索仕様、該第１のウェブ・アプリケーションのための複数のウェブ・ブラウザ、及び該第１のウェブ・アプリケーションのための比較規則セットを指定し、
前記第１のウェブ・アプリケーションに関する行動探索仕様に基づき、前記ウェブ・ブラウザに関して、前記第１のウェブ・アプリケーションの複数のモデルが構築されることを要求し、
前記第１のウェブ・アプリケーションのための比較規則セットに基づき、前記第１のウェブ・アプリケーションのモデルが互いに比較されることを要求し、
前記第１のウェブ・アプリケーションのモデルに対して実行された比較の１又は複数の結果が提示されることを要求し、該結果は前記第１のウェブ・アプリケーションの２以上のモデルの間に１又は複数の実質的な差があるか否かを示す、
ことを特徴とするシステム。
（付記１９）  前記１又は複数のプロセッサは、前記命令を実行しているとき、
前記第１のユーザが前記第１のウェブ・アプリケーションのモデルが構築されることを要求するのに応答して、前記第１のウェブ・アプリケーションのためのウェブ・ブラウザのそれぞれに対して、前記第１のウェブ・アプリケーションに関する行動探索仕様に基づき、前記ウェブ・ブラウザに関して前記第１のウェブ・アプリケーションのモデルを構築し、
前記第１のユーザが前記第１のウェブ・アプリケーションのモデルが互いに比較されることを要求するのに応答して、前記第１のウェブ・アプリケーションのための比較規則セットに基づき、前記第１のウェブ・アプリケーションのモデルを互いに比較し、
前記第１のユーザが前記第１のウェブ・アプリケーションのモデルに対して実行された比較の結果が提示されることを要求するのに応答して、前記第１のユーザに前記第１のウェブ・アプリケーションのモデルに対して実行された比較の結果を提示する、
よう更に動作する、
ことを特徴とする付記１８に記載のシステム。
（付記２０）  前記ユーザ・インタフェースは、前記第１のユーザに、前記第１のウェブ・アプリケーションに関する情報が保存されることを要求するユーザ入力を提供させるよう更に構成され、
前記１又は複数のプロセッサは、前記命令を実行しているとき、
前記第１のユーザが前記第１のウェブ・アプリケーションに関する情報が保存されることを要求するのに応答して、前記第１のウェブ・アプリケーション、前記第１のウェブ・アプリケーションに関する行動探索仕様、前記第１のウェブ・アプリケーションのためのウェブ・ブラウザの識別子、及び前記第１のウェブ・アプリケーションのための比較規則セットを前記第１のユーザに関連して保存する、
よう更に動作する、
ことを特徴とする付記１８に記載のシステム。
（付記２１）  前記ユーザ・インタフェースは、前記第１のユ―ザにユーザ入力を提供させるよう更に構成され、
前記ユーザ入力は、
前記保存された第１のウェブ・アプリケーションの情報が読み出されることを要求し、
前記保存された第１のウェブ・アプリケーションの情報が削除されることを要求し、
前記１又は複数のプロセッサは、前記命令を実行しているとき、
前記第１のユーザが前記保存された第１のウェブ・アプリケーションの情報が読み出されることを要求するのに応答して、前記第１のユーザのための前記保存された第１のウェブ・アプリケーション、前記保存された第１のウェブ・アプリケーションに関する行動探索仕様、前記保存された第１のウェブ・アプリケーションのためのウェブ・ブラウザの識別子、及び前記保存された第１のウェブ・アプリケーションのための比較規則セットを読み出し、
前記第１のユーザが前記保存された第１のウェブ・アプリケーションの情報が削除されることを要求するのに応答して、前記第１のユーザのための前記保存された第１のウェブ・アプリケーション、前記保存された第１のウェブ・アプリケーションに関する行動探索仕様、前記保存された第１のウェブ・アプリケーションのためのウェブ・ブラウザの識別子、及び前記保存された第１のウェブ・アプリケーションのための比較規則セットを削除する、
よう更に動作する、
ことを特徴とする付記２０に記載のシステム。
（付記２２）  前記ユーザ・インタフェースは、前記第１のユーザにユーザ入力を提供させるよう更に構成され、
前記ユーザ入力は、
前記第１のウェブ・アプリケーションのモデルが保存されることを要求し、
前記第１のウェブ・アプリケーションのモデルがコピーされることを要求し、
前記１又は複数のプロセッサは、前記命令を実行しているとき、
前記第１のユーザが前記第１のウェブ・アプリケーションのモデルが保存されることを要求するのに応答して、前記第１のウェブ・アプリケーションのモデルを前記第１のユーザに関連して保存し、
前記第１のユーザが前記第１のウェブ・アプリケーションのモデルがコピーされることを要求するのに応答して、前記第１のユーザのための前記第１のウェブ・アプリケーションのモデルをコピーする、
よう更に動作する、
ことを特徴とする付記１８に記載のシステム。
（付記２３）  前記ユーザ・インタフェースは、前記第１のユーザにユーザ入力を提供させるよう更に構成され、
前記ユーザ入力は、
前記保存された第１のウェブ・アプリケーションのモデルが読み出されることを要求し、
前記保存された第１のウェブ・アプリケーションのモデルが削除されることを要求し、
前記１又は複数のプロセッサは、前記命令を実行しているとき、
前記第１のユーザが前記保存された第１のウェブ・アプリケーションのモデルが読み出されることを要求するのに応答して、前記第１のユーザのための前記保存された第１のウェブ・アプリケーションのモデルを読み出し、
前記第１のユーザが前記保存された第１のウェブ・アプリケーションのモデルが削除されることを要求するのに応答して、前記第１のユーザのための前記保存された第１のウェブ・アプリケーションのモデルを削除する、
よう更に動作する、
ことを特徴とする付記２２に記載のシステム。
（付記２４）  前記ユーザ・インタフェースは、前記第１のユーザにユーザ入力を提供させるよう更に構成され、
前記ユーザ入力は、
前記第１のウェブ・アプリケーションのモデルに対して実行された比較の結果が保存されることを要求し、
前記１又は複数のプロセッサは、前記命令を実行しているとき、
前記第１のユーザが前記第１のウェブ・アプリケーションのモデルに対して実行された比較の結果が保存されることを要求するのに応答して、前記第１のウェブ・アプリケーションのモデルに対して実行された比較の結果を前記第１のユーザに関連して保存する、
よう更に動作する、
ことを特徴とする付記１８に記載のシステム。
（付記２５）  前記ユーザ・インタフェースは、前記第１のユーザにユーザ入力を提供させるよう更に構成され、
前記ユーザ入力は、
前記保存された第１のウェブ・アプリケーションのモデルに対して実行された比較の結果が読み出されることを要求し、
前記保存された第１のウェブ・アプリケーションのモデルに対して実行された比較の結果が削除されることを要求し、
前記１又は複数のプロセッサは、前記命令を実行しているとき、
前記第１のユーザが前記保存された第１のウェブ・アプリケーションのモデルに対して実行された比較の結果が読み出されることを要求するのに応答して、前記第１のユーザのための前記保存された第１のウェブ・アプリケーションのモデルに対して実行された比較の結果を読み出し、
前記第１のユーザが前記保存された第１のウェブ・アプリケーションのモデルに対して実行された比較の結果が削除されることを要求するのに応答して、前記第１のユーザのための前記保存された第１のウェブ・アプリケーションのモデルに対して実行された比較の結果を削除する、
よう更に動作する、
ことを特徴とする付記２４に記載のシステム。
（付記２６）  前記ユーザ・インタフェースは、前記第１のユーザにユーザ入力を提供させるよう更に構成され、
前記ユーザ入力は、
前記第１のウェブ・アプリケーションに関する行動探索仕様を修正し、
前記第１のウェブ・アプリケーションのためのウェブ・ブラウザの選択を修正し、
前記第１のウェブ・アプリケーションのための比較規則セットを修正する、
ことを特徴とする付記１８に記載のシステム。
（付記２７）  前記１又は複数のプロセッサは、前記命令を実行しているとき、前記第１のユーザに規定の比較規則セットを提示するよう更に動作し、
前記ユーザ・インタフェースは、前記第１のユーザにユーザ入力を提供させるよう更に構成され、
前記ユーザ入力は、
前記規定の比較規則セットから、前記第１のウェブ・アプリケーションのめの比較規則セットを選択する、
よう更に構成される、
ことを特徴とする付記１８に記載のシステム。
（付記２８）  前記ユーザ・インタフェースは、前記第１のユーザにユーザ入力を提供させるよう更に構成され、
前記ユーザ入力は、
第２のウェブ・アプリケーション、該第２のウェブ・アプリケーションに関する行動探索仕様、該第２のウェブ・アプリケーションのための複数のウェブ・ブラウザ、該第２のウェブ・アプリケーションのための比較規則セットを指定し、
前記第２のウェブ・アプリケーションに関する行動探索仕様に基づき、前記第２のウェブ・アプリケーションのためのウェブ・ブラウザに関し、前記第２のウェブ・アプリケーションの複数のモデルが構築されることを要求し、
前記第２のウェブ・アプリケーションのための比較規則セットに基づき、前記第２のウェブ・アプリケーションのモデルが互いに比較されることを要求し、
前記第２のウェブ・アプリケーションのモデルに対して実行された比較の１又は複数の結果が提示されることを要求し、該結果は前記第２のウェブ・アプリケーションの２以上のモデルの間に１又は複数の実質的な差があるか否かを示す、
ことを特徴とする付記１８に記載のシステム。
（付記２９）  前記ユーザ・インタフェースは、前記第１のユーザにユーザ入力を提供させるよう更に構成され、
前記ユーザ入力は、
第２のウェブ・アプリケーションを指定し、
前記第１のウェブ・アプリケーションに関する行動探索仕様を、前記第２のウェブ・アプリケーションに関する行動探索仕様としてコピーし、
前記第１のウェブ・アプリケーションのためのウェブ・ブラウザを、前記第２のウェブ・アプリケーションのための複数のウェブ・ブラウザとしてコピーし、
前記第１のウェブ・アプリケーションのための比較規則セットを、前記第２のウェブ・アプリケーションのための比較規則セットとしてコピーする、
ことを特徴とする付記１８に記載のシステム。
（付記３０）  前記１又は複数のプロセッサは、前記命令を実行しているとき、
第２のユーザにユーザ・インタフェースを提示し、
１又は複数のセッション中に前記第２のユーザから１又は複数のユーザ入力を受け、
前記第２のユーザから受けた各ユーザ入力に応答して、前記第２のユーザのための１又は複数の動作を実行する、
よう動作し、
前記ユーザ・インタフェースは、前記第２のユーザにユーザ入力を提供させるよう更に構成され、
前記ユーザ入力は、
第２のウェブ・アプリケーション、該第２のウェブ・アプリケーションに関する行動探索仕様、該第２のウェブ・アプリケーションのための複数のウェブ・ブラウザ、及び該第２のウェブ・アプリケーションのための比較規則セットを指定し、
前記第２のウェブ・アプリケーションに関する行動探索仕様に基づき、前記第２のウェブ・アプリケーションのためのウェブ・ブラウザに関して、前記第２のウェブ・アプリケーションの複数のモデルが構築されることを要求し、
前記第２のウェブ・アプリケーションのための比較規則セットに基づき、前記第２のウェブ・アプリケーションのモデルが互いに比較されることを要求し、
前記第２のウェブ・アプリケーションのモデルに対して実行された比較の１又は複数の結果が提示されることを要求し、該結果は前記第２のウェブ・アプリケーションの２以上のモデルの間に１又は複数の実質的な差があるか否かを示す、
ことを特徴とする付記１８に記載のシステム。
（付記３１）  前記１又は複数のプロセッサは、前記命令を実行しているとき、
前記第２のユーザが前記第２のウェブ・アプリケーションのモデルが構築されることを要求するのに応答して、前記第２のウェブ・アプリケーションのためのウェブ・ブラウザのそれぞれに対して、前記第２のウェブ・アプリケーションに関する行動探索仕様に基づき、前記ウェブ・ブラウザに関して前記第２のウェブ・アプリケーションのモデルを構築し、
前記第２のユーザが前記第２のウェブ・アプリケーションのモデルが互いに比較されることを要求するのに応答して、前記第２のウェブ・アプリケーションのための比較規則セットに基づき、前記第２のウェブ・アプリケーションのモデルを互いに比較し、
前記第２のユーザが前記第２のウェブ・アプリケーションのモデルに対して実行された比較の結果が提示されることを要求するのに応答して、前記第２のユーザに前記第２のウェブ・アプリケーションのモデルに対して実行された比較の結果を提示する、
よう更に動作する、
ことを特徴とする付記３０に記載のシステム。
（付記３２）  前記ユーザ・インタフェースは、前記第２のユーザにユーザ入力を提供させるよう更に構成され、
前記ユーザ入力は、
前記第２のウェブ・アプリケーションに関する情報が保存されることを要求し、
前記第２のウェブ・アプリケーションのモデルが保存されることを要求し、
前記第２のウェブ・アプリケーションのモデルに対して実行された比較の結果が保存されることを要求し、
前記保存された第２のウェブ・アプリケーションのモデルが読み出されることを要求し、
前記保存された第２のウェブ・アプリケーションのモデルに対して実行された比較の結果が読み出されることを要求し、
前記１又は複数のプロセッサは、前記命令を実行しているとき、
前記第２のユーザが前記第２のウェブ・アプリケーションに関する情報が保存されることを要求するのに応答して、前記第２のウェブ・アプリケーション、前記第２のウェブ・アプリケーションに関する行動探索仕様、前記第２のウェブ・アプリケーションのためのウェブ・ブラウザ、及び前記第２のウェブ・アプリケーションのための比較規則セットを前記第２のユーザに関連して保存し、
前記第２のユーザが前記第２のウェブ・アプリケーションのモデルが保存されることを要求するのに応答して、前記第２のウェブ・アプリケーションのモデルを前記第２のユーザに関連して保存し、
前記第２のユーザが前記第２のウェブ・アプリケーションのモデルに対して実行された比較の結果が保存されることを要求するのに応答して、前記第２のウェブ・アプリケーションのモデルに対して実行された比較の結果を前記第２のユーザに関連して保存し、
前記第２のユーザが前記保存された第２のウェブ・アプリケーションのモデルが読み出されることを要求するのに応答して、前記第２のユーザのための前記保存された第２のウェブ・アプリケーションのモデルを読み出し、
前記第２のユーザが前記保存された第２のウェブ・アプリケーションのモデルに対して実行された比較の結果が読み出されることを要求するのに応答して、前記第２のユーザのための前記保存された第２のウェブ・アプリケーションのモデルに対して実行された比較の結果を読み出す、
よう更に動作する、
ことを特徴とする付記３０に記載のシステム。
（付記３３）  前記１又は複数のプロセッサは、前記命令を実行しているとき、
前記第１のユーザ及び前記第２のユーザのためのアカウントを維持する、
よう更に動作する、
ことを特徴とする付記３０に記載のシステム。
（付記３４）  前記ユーザ・インタフェースは、前記第１のユーザ及び前記第２のユーザに、個々のアカウントにログインするためのユーザ入力を提供させるよう更に構成され、
前記１又は複数のプロセッサは、前記命令を実行しているとき、
前記第１のユーザが対応するアカウントにログインするのに応答して、前記第１のユーザに関連する前記アカウントに保存された情報を読み出し、
前記第２のユーザが対応するアカウントにログインするのに応答して、前記第２のユーザに関連する前記アカウントに保存された情報を読み出す、
よう更に動作する、
ことを特徴とする付記３３に記載のシステム。
（付記３５）  ソフトウェアを具現化する１又は複数のコンピュータ可読非一時的記憶媒体であって、
前記ソフトウェアは、実行されるとき、
第１のユーザにユーザ・インタフェースを提示し、前記ユーザ・インタフェースは、前記第１のユーザにユーザ入力を提供させるよう構成され、
１又は複数のセッション中に前記第１のユーザから１又は複数のユーザ入力を受け、
前記第１のユーザから受けた各ユーザ入力に応答して、前記第１のユーザのための１又は複数の動作を実行する、
よう動作し、
前記ユーザ入力は、
第１のウェブ・アプリケーション、該第１のウェブ・アプリケーションに関する行動探索仕様、該第１のウェブ・アプリケーションのための複数のウェブ・ブラウザ、及び該第１のウェブ・アプリケーションのための比較規則セットを指定し、
前記第１のウェブ・アプリケーションに関する行動探索仕様に基づき、前記ウェブ・ブラウザに関して、前記第１のウェブ・アプリケーションの複数のモデルが構築されることを要求し、
前記第１のウェブ・アプリケーションのための比較規則セットに基づき、前記第１のウェブ・アプリケーションのモデルが互いに比較されることを要求し、
前記第１のウェブ・アプリケーションのモデルに対して実行された比較の１又は複数の結果が提示されることを要求し、該結果は前記第１のウェブ・アプリケーションの２以上のモデルの間に１又は複数の実質的な差があるか否かを示す、
ことを特徴とする媒体。
（付記３６）  前記ソフトウェアは、１又は複数のコンピュータ・システムにより実行されているとき、
前記第１のユーザが前記第１のウェブ・アプリケーションのモデルが構築されることを要求するのに応答して、前記第１のウェブ・アプリケーションのためのウェブ・ブラウザのそれぞれに対して、前記第１のウェブ・アプリケーションに関する行動探索仕様に基づき、前記ウェブ・ブラウザに関して前記第１のウェブ・アプリケーションのモデルを構築し、
前記第１のユーザが前記第１のウェブ・アプリケーションのモデルが互いに比較されることを要求するのに応答して、前記第１のウェブ・アプリケーションのための比較規則セットに基づき、前記第１のウェブ・アプリケーションのモデルを互いに比較し、
前記第１のユーザが前記第１のウェブ・アプリケーションのモデルに対して実行された比較の結果が提示されることを要求するのに応答して、前記第１のユーザに前記第１のウェブ・アプリケーションのモデルに対して実行された比較の結果を提示する、
よう更に動作する、
ことを特徴とする付記３５に記載の媒体。
（付記３７）  前記ユーザ・インタフェースは、前記第１のユーザに、前記第１のウェブ・アプリケーションに関する情報が保存されることを要求するユーザ入力を提供させるよう更に構成され、
前記ソフトウェアは前記１又は複数のコンピュータ・システムにより実行されるとき、
前記第１のユーザが前記第１のウェブ・アプリケーションに関する情報が保存されることを要求するのに応答して、前記第１のウェブ・アプリケーション、前記第１のウェブ・アプリケーションに関する行動探索仕様、前記第１のウェブ・アプリケーションのためのウェブ・ブラウザの識別子、及び前記第１のウェブ・アプリケーションのための比較規則セットを前記第１のユーザに関連して保存する、
よう更に動作する、
ことを特徴とする付記３５に記載の媒体。
（付記３８）  前記ユーザ・インタフェースは、前記第１のユーザにユーザ入力を提供させるよう更に構成され、
前記ユーザ入力は、
前記保存された第１のウェブ・アプリケーションの情報が読み出されることを要求し、
前記保存された第１のウェブ・アプリケーションの情報が削除されることを要求し、
前記ソフトウェアは、前記１又は複数のコンピュータ・システムにより実行されるとき、
前記第１のユーザが前記保存された第１のウェブ・アプリケーションの情報が読み出されることを要求するのに応答して、前記第１のユーザのための前記保存された第１のウェブ・アプリケーション、前記保存された第１のウェブ・アプリケーションに関する行動探索仕様、前記保存された第１のウェブ・アプリケーションのためのウェブ・ブラウザの識別子、及び前記保存された第１のウェブ・アプリケーションのための比較規則セットを読み出し、
前記第１のユーザが前記保存された第１のウェブ・アプリケーションの情報が削除されることを要求するのに応答して、前記第１のユーザのための前記保存された第１のウェブ・アプリケーション、前記保存された第１のウェブ・アプリケーションに関する行動探索仕様、前記保存された第１のウェブ・アプリケーションのためのウェブ・ブラウザの識別子、及び前記保存された第１のウェブ・アプリケーションのための比較規則セットを削除する、
よう更に動作する、
ことを特徴とする付記３７に記載の媒体。
（付記３９）  前記ユーザ・インタフェースは、前記第１のユーザにユーザ入力を提供させるよう更に構成され、
前記ユーザ入力は、
前記第１のウェブ・アプリケーションのモデルが保存されることを要求し、
前記第１のウェブ・アプリケーションのモデルがコピーされることを要求し、
前記ソフトウェアは、前記１又は複数のコンピュータ・システムにより実行されるとき、
前記第１のユーザが前記第１のウェブ・アプリケーションのモデルが保存されることを要求するのに応答して、前記第１のウェブ・アプリケーションのモデルを前記第１のユーザに関連して保存し、
前記第１のユーザが前記第１のウェブ・アプリケーションのモデルがコピーされることを要求するのに応答して、前記第１のユーザのための前記第１のウェブ・アプリケーションのモデルをコピーする、
よう更に動作する、
ことを特徴とする付記３５に記載の媒体。
（付記４０）  前記ユーザ・インタフェースは、前記第１のユーザにユーザ入力を提供させるよう更に構成され、
前記ユーザ入力は、
前記保存された第１のウェブ・アプリケーションのモデルが読み出されることを要求し、
前記保存された第１のウェブ・アプリケーションのモデルが削除されることを要求し、
前記ソフトウェアは、前記１又は複数のコンピュータ・システムにより実行されるとき、
前記第１のユーザが前記保存された第１のウェブ・アプリケーションのモデルが読み出されることを要求するのに応答して、前記第１のユーザのための前記保存された第１のウェブ・アプリケーションのモデルを読み出し、
前記第１のユーザが前記保存された第１のウェブ・アプリケーションのモデルが削除されることを要求するのに応答して、前記第１のユーザのための前記保存された第１のウェブ・アプリケーションのモデルを削除する、
よう更に動作する、
ことを特徴とする付記３９に記載の媒体。
（付記４１）  前記ユーザ・インタフェースは、前記第１のユーザにユーザ入力を提供させるよう更に構成され、
前記ユーザ入力は、
前記第１のウェブ・アプリケーションのモデルに対して実行された比較の結果が保存されることを要求し、
前記ソフトウェアは、前記１又は複数のコンピュータ・システムにより実行されるとき、
前記第１のユーザが前記第１のウェブ・アプリケーションのモデルに対して実行された比較の結果が保存されることを要求するのに応答して、前記第１のウェブ・アプリケーションのモデルに対して実行された比較の結果を前記第１のユーザに関連して保存する、
よう更に動作する、
ことを特徴とする付記３５に記載の媒体。
（付記４２）  前記ユーザ・インタフェースは、前記第１のユーザにユーザ入力を提供させるよう更に構成され、
前記ユーザ入力は、
前記保存された第１のウェブ・アプリケーションのモデルに対して実行された比較の結果が読み出されることを要求し、
前記保存された第１のウェブ・アプリケーションのモデルに対して実行された比較の結果が削除されることを要求し、
前記ソフトウェアは、前記１又は複数のコンピュータ・システムにより実行されるとき、
前記第１のユーザが前記保存された第１のウェブ・アプリケーションのモデルに対して実行された比較の結果が読み出されることを要求するのに応答して、前記第１のユーザのための前記保存された第１のウェブ・アプリケーションのモデルに対して実行された比較の結果を読み出し、
前記第１のユーザが前記保存された第１のウェブ・アプリケーションのモデルに対して実行された比較の結果が削除されることを要求するのに応答して、前記第１のユーザのための前記保存された第１のウェブ・アプリケーションのモデルに対して実行された比較の結果を削除する、
よう更に動作する、
ことを特徴とする付記４１に記載の媒体。
（付記４３）  前記ユーザ・インタフェースは、前記第１のユーザにユーザ入力を提供させるよう更に構成され、
前記ユーザ入力は、
前記第１のウェブ・アプリケーションに関する行動探索仕様を修正し、
前記第１のウェブ・アプリケーションのためのウェブ・ブラウザの選択を修正し、
前記第１のウェブ・アプリケーションのための比較規則セットを修正する、
ことを特徴とする付記３５に記載の媒体。
（付記４４）  前記ソフトウェアは、前記１又は複数のコンピュータ・システムにより実行されるとき、前記第１のユーザに規定の比較規則セットを提示するよう更に動作し、
前記ユーザ・インタフェースは、前記第１のユーザにユーザ入力を提供させるよう更に構成され、
前記ユーザ入力は、
前記規定の比較規則セットから、前記第１のウェブ・アプリケーションのめの比較規則セットを選択する、
よう更に構成される、
ことを特徴とする付記３５に記載の媒体。
（付記４５）  前記ユーザ・インタフェースは、前記第１のユーザにユーザ入力を提供させるよう更に構成され、
前記ユーザ入力は、
第２のウェブ・アプリケーション、該第２のウェブ・アプリケーションに関する行動探索仕様、該第２のウェブ・アプリケーションのための複数のウェブ・ブラウザ、該第２のウェブ・アプリケーションのための比較規則セットを指定し、
前記第２のウェブ・アプリケーションに関する行動探索仕様に基づき、前記第２のウェブ・アプリケーションのためのウェブ・ブラウザに関し、前記第２のウェブ・アプリケーションの複数のモデルが構築されることを要求し、
前記第２のウェブ・アプリケーションのための比較規則セットに基づき、前記第２のウェブ・アプリケーションのモデルが互いに比較されることを要求し、
前記第２のウェブ・アプリケーションのモデルに対して実行された比較の１又は複数の結果が提示されることを要求し、該結果は前記第２のウェブ・アプリケーションの２以上のモデルの間に１又は複数の実質的な差があるか否かを示す、
ことを特徴とする付記３５に記載の媒体。
（付記４６）  前記ユーザ・インタフェースは、前記第１のユーザにユーザ入力を提供させるよう更に構成され、
前記ユーザ入力は、
第２のウェブ・アプリケーションを指定し、
前記第１のウェブ・アプリケーションに関する行動探索仕様を、前記第２のウェブ・アプリケーションに関する行動探索仕様としてコピーし、
前記第１のウェブ・アプリケーションのためのウェブ・ブラウザを、前記第２のウェブ・アプリケーションのための複数のウェブ・ブラウザとしてコピーし、
前記第１のウェブ・アプリケーションのための比較規則セットを、前記第２のウェブ・アプリケーションのための比較規則セットとしてコピーする、
ことを特徴とする付記３５に記載の媒体。
（付記４７）  前記ソフトウェアは、前記１又は複数のコンピュータ・システムにより実行されるとき、
第２のユーザにユーザ・インタフェースを提示し、前記ユーザ・インタフェースは前記第２のユーザにユーザ入力を提供させるよう更に構成され、
１又は複数のセッション中に前記第２のユーザから１又は複数のユーザ入力を受け、
前記第２のユーザから受けた各ユーザ入力に応答して、前記第２のユーザのための１又は複数の動作を実行する、
よう更に動作し、
前記ユーザ入力は、
第２のウェブ・アプリケーション、該第２のウェブ・アプリケーションに関する行動探索仕様、該第２のウェブ・アプリケーションのための複数のウェブ・ブラウザ、及び該第２のウェブ・アプリケーションのための比較規則セットを指定し、
前記第２のウェブ・アプリケーションに関する行動探索仕様に基づき、前記第２のウェブ・アプリケーションのためのウェブ・ブラウザに関して、前記第２のウェブ・アプリケーションの複数のモデルが構築されることを要求し、
前記第２のウェブ・アプリケーションのための比較規則セットに基づき、前記第２のウェブ・アプリケーションのモデルが互いに比較されることを要求し、
前記第２のウェブ・アプリケーションのモデルに対して実行された比較の１又は複数の結果が提示されることを要求し、該結果は前記第２のウェブ・アプリケーションの２以上のモデルの間に１又は複数の実質的な差があるか否かを示す、
ことを特徴とする付記３５に記載の媒体。
（付記４８）  前記ソフトウェアは、前記１又は複数のコンピュータ・システムにより実行されるとき、
前記第２のユーザが前記第２のウェブ・アプリケーションのモデルが構築されることを要求するのに応答して、前記第２のウェブ・アプリケーションのためのウェブ・ブラウザのそれぞれに対して、前記第２のウェブ・アプリケーションに関する行動探索仕様に基づき、前記ウェブ・ブラウザに関して前記第２のウェブ・アプリケーションのモデルを構築し、
前記第２のユーザが前記第２のウェブ・アプリケーションのモデルが互いに比較されることを要求するのに応答して、前記第２のウェブ・アプリケーションのための比較規則セットに基づき、前記第２のウェブ・アプリケーションのモデルを互いに比較し、
前記第２のユーザが前記第２のウェブ・アプリケーションのモデルに対して実行された比較の結果が提示されることを要求するのに応答して、前記第２のユーザに前記第２のウェブ・アプリケーションのモデルに対して実行された比較の結果を提示する、
よう更に動作する、
ことを特徴とする付記４７に記載の媒体。
（付記４９）  前記ユーザ・インタフェースは、前記第２のユーザにユーザ入力を提供させるよう更に構成され、
前記ユーザ入力は、
前記第２のウェブ・アプリケーションに関する情報が保存されることを要求し、
前記第２のウェブ・アプリケーションのモデルが保存されることを要求し、
前記第２のウェブ・アプリケーションのモデルに対して実行された比較の結果が保存されることを要求し、
前記保存された第２のウェブ・アプリケーションのモデルが読み出されることを要求し、
前記保存された第２のウェブ・アプリケーションのモデルに対して実行された比較の結果が読み出されることを要求し、
前記ソフトウェアは、前記１又は複数のコンピュータ・システムにより実行されるとき、
前記第２のユーザが前記第２のウェブ・アプリケーションに関する情報が保存されることを要求するのに応答して、前記第２のウェブ・アプリケーション、前記第２のウェブ・アプリケーションに関する行動探索仕様、前記第２のウェブ・アプリケーションのためのウェブ・ブラウザ、及び前記第２のウェブ・アプリケーションのための比較規則セットを前記第２のユーザに関連して保存し、
前記第２のユーザが前記第２のウェブ・アプリケーションのモデルが保存されることを要求するのに応答して、前記第２のウェブ・アプリケーションのモデルを前記第２のユーザに関連して保存し、
前記第２のユーザが前記第２のウェブ・アプリケーションのモデルに対して実行された比較の結果が保存されることを要求するのに応答して、前記第２のウェブ・アプリケーションのモデルに対して実行された比較の結果を前記第２のユーザに関連して保存し、
前記第２のユーザが前記保存された第２のウェブ・アプリケーションのモデルが読み出されることを要求するのに応答して、前記第２のユーザのための前記保存された第２のウェブ・アプリケーションのモデルを読み出し、
前記第２のユーザが前記保存された第２のウェブ・アプリケーションのモデルに対して実行された比較の結果が読み出されることを要求するのに応答して、前記第２のユーザのための前記保存された第２のウェブ・アプリケーションのモデルに対して実行された比較の結果を読み出す、
よう更に動作する、
ことを特徴とする付記４７に記載の媒体。
（付記５０）  前記ソフトウェアは、前記１又は複数のコンピュータ・システムにより実行されるとき、
前記第１のユーザ及び前記第２のユーザのためのアカウントを維持する、
よう更に動作する、
ことを特徴とする付記４７に記載の媒体。
（付記５１）  前記ユーザ・インタフェースは、前記第１のユーザ及び前記第２のユーザに、個々のアカウントにログインするためのユーザ入力を提供させるよう更に構成され、
前記ソフトウェアは、前記１又は複数のコンピュータ・システムにより実行されるとき、
前記第１のユーザが対応するアカウントにログインするのに応答して、前記第１のユーザに関連する前記アカウントに保存された情報を読み出し、
前記第２のユーザが対応するアカウントにログインするのに応答して、前記第２のユーザに関連する前記アカウントに保存された情報を読み出す、
よう更に動作する、
ことを特徴とする付記５０に記載の媒体。
（付記５２）  第１のユーザにユーザ・インタフェースを提示する手段であって、前記ユーザ・インタフェースは前記第１のユーザにユーザ入力を提供させるよう構成される、手段、
１又は複数のセッション中に前記第１のユーザから１又は複数のユーザ入力を受ける手段、
前記第１のユーザから受けた各ユーザ入力に応答して、前記第１のユーザのための１又は複数の動作を実行する手段、
を有し、
前記ユーザ入力は、
第１のウェブ・アプリケーション、該第１のウェブ・アプリケーションに関する行動探索仕様、該第１のウェブ・アプリケーションのための複数のウェブ・ブラウザ、及び該第１のウェブ・アプリケーションのための比較規則セットを指定し、
前記第１のウェブ・アプリケーションに関する行動探索仕様に基づき、前記ウェブ・ブラウザに関して、前記第１のウェブ・アプリケーションの複数のモデルが構築されることを要求し、
前記第１のウェブ・アプリケーションのための比較規則セットに基づき、前記第１のウェブ・アプリケーションのモデルが互いに比較されることを要求し、
前記第１のウェブ・アプリケーションのモデルに対して実行された比較の１又は複数の結果が提示されることを要求し、該結果は前記第１のウェブ・アプリケーションの２以上のモデルの間に１又は複数の実質的な差があるか否かを示す、
ことを特徴とするシステム。
【符号の説明】
【００５８】
６１０  ネットワーク
６２０  サーバ
６３０  クライアント
６３２  ウェブ・ブラウザ
６４０  データ記憶
６５０  リンク
７０２  プロセッサ
７０４  メモリ
７０６  記憶
７０８  Ｉ／Ｏインタフェース
７１０  プロセッサ
【図１】
0005821678.tif 000002
【図２】
0005821678.tif 000003
【図３】
0005821678.tif 000004
【図４】
0005821678.tif 000005
【図５Ａ】
0005821678.tif 000006
【図５Ｂ】
0005821678.tif 000007
【図５Ｃ】
0005821678.tif 000008
【図６】
0005821678.tif 000009
【図７】
0005821678.tif 000010