(57)【特許請求の範囲】
【請求項１】
トポロジを比較するためのコンピュータ化された方法であって、
第１のトポロジおよび第２のトポロジを取得するステップであって、各トポロジがノード・セットを含み、各ノードがアイテム属性のセットを有するアイテムを表す、前記取得するステップと
前記アイテム属性のセットに基づいて、前記アイテム属性のうちの１つまたは複数の任意の組みあわせを使用して、第１のトポロジのノードと第２のトポロジのノードとを突き合わせ、前記第１のトポロジと前記第２のトポロジの間の相違のセットを取得するステップと、
前記相違のセット（第１のトポロジと第２のトポロジとの間の特定の時点におけるもの）のうちのユーザが定義したサブセットの選択を取得するステップと、
前記相違のセットのうちのユーザが定義したサブセットのうちの少なくとも１つをグラフィカルに表示するユーザ・インタフェースを生成するステップであって、前記ユーザ・インタフェースが前記第１のトポロジの第１のサブセットおよび前記第２のトポロジの第２のサブセットをグラフィカルに表示し、前記第１および第２のサブセットが前記相違のセットのうちのユーザが定義したサブセットのうちの前記少なくとも１つに対応しており、前記ユーザ・インタフェースはズーム・コントロール、スクロール・コントロールのうちの少なくとも１つのコントロールを含む、前記生成するステップと、
を備える方法。
【請求項２】
前記第１のトポロジおよび前記第２のトポロジに対する比較要求を受け取るステップをさらに備え、前記生成するステップが前記比較要求に応答して実行される、請求項１に記載の方法。
【請求項３】
ユーザに表示するための前記ユーザ・インタフェースを提供するステップをさらに備える、請求項１に記載の方法。
【請求項４】
前記相違のセットのうちのユーザが定義した第２のサブセットの選択を受け取るステップと、
前記相違のセットのうちのユーザが定義した第２のサブセットのうちの少なくとも１つを表示するように前記ユーザ・インタフェースを更新するステップと、
をさらに備える、請求項１に記載の方法。
【請求項５】
前記相違のセットを取得するステップは、
対応する前記アイテムに基づいて、前記第１のトポロジ内の第１のノードを前記第２のトポロジ内の第２のノードと突き合わせるステップと、
前記第１のノードと前記第２のノードとの間の相違を、対応する前記アイテム属性のセットのうちの少なくとも１つに基づいて識別するステップと、
を含む、請求項１に記載の方法。
【請求項６】
各トポロジはコネクタのセットをさらに含み、各コネクタは関連性属性のセットを有する関連性を表し、前記相違のセットを取得する前記ステップは、さらに前記関連性属性のセットに基づく、請求項１に記載の方法。
【請求項７】
前記相違のセットを取得する前記ステップは、
対応する前記関連性に基づいて、前記第１のトポロジ内の第１のコネクタを前記第２のトポロジ内の第２のコネクタと突き合わせるステップと、
前記第１のコネクタと前記第２のコネクタとの間の相違を、対応する前記関連性属性のセットのうちの少なくとも１つに基づいて識別するステップと、
を含む、請求項６に記載の方法。
【請求項８】
前記ユーザ・インタフェースは、
前記第１のトポロジの前記第１のサブセットのグラフィカル表現を表示するための第１の表示領域と、
前記第２のトポロジの前記第２のサブセットのグラフィカル表現を表示するための、前記第１の表示領域とは異なる第２の表示領域であって、前記第１および第２のサブセットのうちの少なくとも１つは、前記相違のセットのうちの前記少なくとも１つに対応するノードまたはコネクタのうちの少なくとも１つを強調表示する、第２の表示領域と、
を含む、請求項６に記載の方法。
【請求項９】
トポロジを比較するためのシステムであって、
第１のトポロジおよび第２のトポロジを取得するためのシステムであって、各トポロジは、
各ノードがアイテム属性のセットを有するアイテムを表す、ノード・セットと、
各コネクタが関連性属性のセットを有する関連性を表す、コネクタ・セットと、
を含む、システムと、
前記アイテム属性のセットまたは前記関連性属性のセットのうちの少なくとも１つに基づいて、前記アイテム属性または前記関連性属性のうちの１つまたは複数の任意の組みあわせを使用して、第１のトポロジのノードと第２のトポロジのノードとを突き合わせ、前記第１のトポロジと前記第２のトポロジとの間の相違のセットを取得するためのサブシステムと、
前記相違のセット（第１のトポロジと第２のトポロジとの間の特定の時点におけるもの）のうちのユーザが定義したサブセットの選択を取得する、サブシステムと、
前記相違のセットのうちのユーザが定義したサブセットのうちの少なくとも１つをグラフィカルに表示するユーザ・インタフェースを生成するためのサブシステムであって、前記ユーザ・インタフェースが前記第１のトポロジの第１のサブセットおよび前記第２のトポロジの第２のサブセットをグラフィカルに表示し、前記第１および第２のサブセットは前記相違のセットのうちのユーザが定義したサブセットのうちの前記少なくとも１つに対応しており、前記ユーザ・インタフェースはズーム・コントロール、スクロール・コントロールのうちの少なくとも１つのコントロールを含む、サブシステムと、
を備えるシステム。
【請求項１０】
前記ユーザ・インタフェースは、ユーザが前記相違のセットのうちのユーザが定義したサブセットのうちの前記少なくとも１つを選択することができるようにするユーザ・インタフェース・コントロールを含む、請求項９に記載のシステム。
【請求項１１】
前 記ユーザ・インタフェースは、前記相違に対応する前記アイテム属性のセットまたは前記関連性属性のセットのうちの１つに基づいての選択のために、前記相違
のセットのサブセットをユーザが選択することができるようにするユーザ・インタフェース・コントロールを含む、請求項９に記載のシステム。
【請求項１２】
実行された場合、コンピュータ・インフラストラクチャがトポロジを比較することができるようにする、プログラムであって、
第１のトポロジおよび第２のトポロジを取得するステップであって、各トポロジは、
各ノードがアイテム属性のセットを有するアイテムを表す、ノード・セットと、
各コネクタが関連性属性のセットを有する関連性を表す、コネクタ・セットと、
を含む、前記取得するステップと、
前記アイテム属性のセットまたは前記関連性属性のセットのうちの少なくとも１つに基づいて、前記アイテム属性または前記関連性属性のうちの１つまたは複数の任意の組みあわせを使用して、第１のトポロジのノードと第２のトポロジのノードとを突き合わせ、前記第１のトポロジと前記第２のトポロジとの間の相違のセットを取得するステップと、
前記相違のセット（第１のトポロジと第２のトポロジとの間の特定の時点におけるもの）のうちのユーザが定義したサブセットの選択を取得するステップと、
前記相違のセットのうちのユーザが定義したサブセットのうちの少なくとも１つをグラフィカルに表示するユーザ・インタフェースを生成するステップであって、前記ユーザ・インタフェースが前記第１のトポロジの第１のサブセットおよび前記第２のトポロジの第２のサブセットをグラフィカルに表示し、前記第１および第２のサブセットは前記相違のセットのうちのユーザが定義したサブセットのうちの前記少なくとも１つに対応しており、前記ユーザ・インタフェースはズーム・コントロール、スクロール・コントロールのうちの少なくとも１つのコントロールを含む、前記生成するステップと、
を前記コンピュータ・インフラストラクチャに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、概して、トポロジの比較に関し、特に２つ以上のトポロジ間の相違を表示するためのソリューションに関する。
【背景技術】
【０００２】
トポロジは、多くのノードおよびノード間の種々の関連性を定義する多くのコネクタを含むことができる。トポロジの使用の問題点は、ノードおよびコネクタの数が急速に増加する可能性があることである。この点で、トポロジがユーザ・インタフェース内に表示できるよりもかなり多くのノードおよびコネクタを含む場合に、トポロジの表示が問題となる可能性がある。ソリューションの１つは、ユーザ・インタフェース内に全体として表示できるようにトポロジを減らすことである。しかし、より大きなトポロジの場合、このソリューションは結果としてノード／コネクタを非常に小さくレンダリングすることになり、それらの選択またはビューイングあるいはその両方を困難にしてしまう可能性がある。他のソリューションは、受け入れ可能なサイズでノード／コネクタをレンダリングする一方で、ユーザがトポロジの異なる領域にスクロールできるようにする。しかし、トポロジの限られた部分しか見えないため、ユーザは表示された部分のコンテキストを容易に理解できなくなる可能性がある。
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しばしばユーザは、２つ以上のトポロジを比較しようとする。特にユーザは、２つのトポロジ間で異なる、および／または欠落した任意のノード／コネクタを識別しようとする場合がある。この比較を支援するために、１つのソリューションではトポロジを並べて表示する。しかし、このソリューションでは、ユーザが両方のトポロジを全体として視覚的にスキャンし、何らかの相違を知的に判定する必要がある。このプロセスは時間がかかり、エラーも発生しやすい。例えば、ユーザは、トポロジ間の相違をうっかり見落とす場合がある。さらにトポロジの１つまたは複数の側面がこの判定を困難にする場合もある。例えば、トポロジは、対応するノードを異なる場所にレンダリングする場合がある。他のソリューションでは、２つのトポロジを互いに重ね合わせる。種々のフォント、装飾、および／または彩度を使用して、ユーザがトポロジ間の相違を見分けるのを助けることができる。しかし、このソリューションは依然として時間がかかり、ユーザが１つまたは複数の相違を見落としやすい。
【課題を解決するための手段】
【０００４】
本発明の例示としての態様は、本明細書に記載した問題および／または説明していない他の問題を解決するように設計されている。
【０００５】
本発明は、トポロジを比較するためのソリューションを提供する。本発明の実施形態では、２つ以上のトポロジのノード間および／またはコネクタ間の相違のセットが取得される。各相違は、欠落したノード／コネクタまたはアイテム／関連性属性あるいはその両方における相違を含むことができる。相違に対応する各トポロジのサブセットを表示することによって１つまたは複数の相違を表示するユーザ・インタフェースが生成される。本発明の実施形態では、各サブセットを固有の表示領域内に表示し、ユーザが相違を選択し、および／または相違のタイプに基づいて選択可能な相違を制限することができるようにするトポロジを比較するためのユーザ・インタフェースが提供される。
【０００６】
本発明の第１の態様は、トポロジを比較するためのコンピュータ化された方法を提供する。この方法は、第１のトポロジおよび第２のトポロジを取得するステップであって、各トポロジがノード・セットを含み、各ノードがアイテム属性のセットを有するアイテムを表すことを特徴とする、ステップと、アイテム属性のセットに基づいて、第１のトポロジと第２のトポロジの間の相違のセットを取得するステップと、相違のセットのうちの少なくとも１つを表示するユーザ・インタフェースを生成するステップであって、ユーザ・インタフェースが第１のトポロジの第１のサブセットおよび第２のトポロジの第２のサブセットを表示し、第１および第２のサブセットが相違のセットのうちの少なくとも１つに対応することを特徴とする、ステップとを備える。
【０００７】
本発明の第２の態様は、トポロジを比較するためのシステムを提供する。このシステムは、第１のトポロジおよび第２のトポロジを取得するためのシステムであって、各トポロジは、各ノードがアイテム属性のセットを有するアイテムを表す、ノード・セットと、各コネクタが関連性属性のセットを有する関連性を表す、コネクタ・セットとを含むシステムと、アイテム属性のセットまたは関連性属性のセットのうちの少なくとも１つに基づいて、第１のトポロジと第２のトポロジとの間の相違のセットを取得するためのシステムと、相違のセットのうちの少なくとも１つを表示するユーザ・インタフェースを生成するためのシステムであって、ユーザ・インタフェースが第１のトポロジの第１のサブセットおよび第２のトポロジの第２のサブセットを表示し、第１および第２のサブセットは相違のセットのうちの少なくとも１つに対応する、システムとを備える。
【０００８】
本発明の第３の態様は、実行された場合、コンピュータ・インフラストラクチャがトポロジを比較することができるようにする、コンピュータ読み取り可能媒体上に格納されたプログラム製品を提供する。このプログラム製品は、第１のトポロジおよび第２のトポロジを取得するステップであって、各トポロジは、各ノードがアイテム属性のセットを有するアイテムを表す、ノード・セットと、各コネクタが関連性属性のセットを有する関連性を表す、コネクタ・セットとを含む、ステップと、アイテム属性のセットまたは関連性属性のセットのうちの少なくとも１つに基づいて、第１のトポロジと第２のトポロジの間の相違のセットを取得するステップと、相違のセットのうちの少なくとも１つを表示するユーザ・インタフェースを生成するステップであって、ユーザ・インタフェースが第１のトポロジの第１のサブセットおよび第２のトポロジの第２のサブセットを表示し、第１および第２のサブセットは相違のセットのうちの前記少なくとも１つに対応する、ステップとをコンピュータ・インフラストラクチャに実行させる。
【０００９】
本発明の第４の態様は、トポロジを比較するためのシステムを生成する方法を提供する。この方法は、第１のトポロジおよび第２のトポロジを取得するステップであって、各トポロジは、各ノードがアイテム属性のセットを有するアイテムを表す、ノード・セットと、各コネクタが関連性属性のセットを有する関連性を表す、コネクタ・セットとを含む、ステップと、アイテム属性のセットまたは関連性属性のセットのうちの少なくとも１つに基づいて、第１のトポロジと第２のトポロジとの間の相違のセットを取得するステップと、相違のセットのうちの１つを表示するユーザ・インタフェースを生成するステップであって、ユーザ・インタフェースが第１のトポロジの第１のサブセットおよび第２のトポロジの第２のサブセットを表示し、第１および第２のサブセットは相違のセットのうちの前記少なくとも１つに対応する、ステップとを実行するように動作可能なコンピュータ・インフラストラクチャを提供するステップを備える。
【００１０】
本発明の第５の態様は、トポロジを比較するためのユーザ・インタフェースを提供する。このユーザ・インタフェースは、第１のトポロジの第１のサブセットを表示するための第１の表示領域と、第２のトポロジの第２のサブセットを表示するための第２の表示領域とを含み、この第１および第２のサブセットは第１のトポロジと第２のトポロジとの間の相違のセットのうちの少なくとも１つに対応し、さらに、このユーザ・インタフェースは、ユーザが相違のセットのうちの少なくとも１つを選択することができるようにする第１のユーザ・インタフェース・コントロールと、相違に対応するアイテム属性のセットまたは関連性属性のセットのうちの１つに基づいて、ユーザが第１のユーザ・インタフェース・コントロールを使用して選択するために相違のセットのサブセットを選択することができるようにする第２のユーザ・インタフェース・コントロールとを備える。
【００１１】
本発明の第６の態様は、トポロジを管理および／または比較するためのビジネス方法を提供する。このビジネス方法は、本明細書に記載したプロセスを実行するコンピュータ・インフラストラクチャを管理することと、管理に基づいて支払いを受け取ることとを含む。
【００１２】
本発明の例示としての態様は、本明細書に記載した問題のうちの１つまたは複数、および／または説明していない１つまたは複数の他の問題を解決するように設計されている。
【００１３】
本発明の種々の実施形態を示す添付の図面を参照しながら、本発明の種々の態様についての以下の詳細な説明を読めば、本発明の上記および他の特徴をより容易に理解することができるだろう。
【発明を実施するための最良の形態】
【００１４】
図面は正確な縮尺ではないことに留意されたい。図面は、本発明の典型的な態様のみを示すことが意図されているため、本発明の範囲を制限するものとみなすべきではない。全図面を通して、図面間で類似の番号は類似の要素を表す。
【００１５】
前述のように、本発明はトポロジを比較するためのソリューションを提供する。本発明の実施形態では、２つ以上のトポロジのノード間および／またはコネクタ間の相違のセットが取得される。各相違は、欠落したノード／コネクタまたはアイテム／関連性属性あるいはその両方における相違を含むことができる。相違に対応する各トポロジのサブセットを表示することによって相違のうちの１つまたは複数を表示するユーザ・インタフェースが生成される。本発明の実施形態では、各サブセットを固有の表示領域内に表示し、ユーザが相違を選択すること、および／または、相違のタイプに基づいて選択可能な相違を制限することを可能にするトポロジを比較するためのユーザ・インタフェースが提供される。本明細書で使用される場合、特に注記のない限り、「セット」という用語は１つまたは複数を意味する。
【００１６】
図面について説明すると、図１は、本発明の実施形態のトポロジ５０を管理および／または比較するための例示としての環境１０を示す図である。この点で、環境１０は、トポロジ５０を比較するために本明細書に記載したプロセスを実行することができるコンピュータ・インフラストラクチャ１２を含む。詳細には、図面では、コンピュータ・インフラストラクチャ１２は、本明細書に記載したプロセスを実行することによって、トポロジ５０を管理および比較するようにコンピューティング・デバイス１４を動作させる管理システム３０を備えるコンピューティング・デバイス１４を含むように示されている。
【００１７】
図面では、コンピューティング・デバイス１４は、プロセッサ２０、メモリ２２Ａ、入出力（Ｉ／Ｏ）インタフェース２４、およびバス２６を含むように示されている。さらに、図面では、コンピューティング・デバイス１４は、外部Ｉ／Ｏデバイス／リソース２８およびストレージ・システム２２Ｂと通信するように示されている。当分野で周知のように、一般に、プロセッサ２０は、メモリ２２Ａまたはストレージ・システム２２Ｂあるいはその両方に格納された管理システム３０のようなコンピュータ・プログラム・コードを実行する。コンピュータ・プログラム・コードを実行する一方で、プロセッサ２０は、トポロジ５０のようなデータを、メモリ２２Ａ、ストレージ・システム２２Ｂ、および／またはＩ／Ｏインタフェース２４から読み取り、および／またはこれらへ書き込むことができる。バス２６は、コンピューティング・デバイス１４内の各コンポーネント間に通信リンクを提供する。Ｉ／Ｏデバイス２８は、任意のタイプの通信リンクを使用して、個々がコンピューティング・デバイス１４と対話できるようにする任意のデバイス、または、コンピューティング・デバイス１４が１つまたは複数の他のコンピューティング・デバイスと通信できるようにする任意のデバイスを備えることができる。
【００１８】
任意のイベントにおいて、コンピューティング・デバイス１４は、その上にインストールされたコンピュータ・プログラム・コードを実行することができる任意の汎用コンピューティング物品（例えば、パーソナル・コンピュータ、サーバ、ハンドヘルド・デバイスなど）を備えることができる。しかし、コンピューティング・デバイス１４および管理システム３０は、本明細書に記載したプロセスを実行することができる種々の可能な等価のコンピューティング・デバイスを代表しているに過ぎないことを理解されたい。この点で、他の実施形態では、コンピューティング・デバイス１４および管理システム３０によって提供される機能は、任意の組み合わせの汎用および／または特定用途向けのハードウェアおよび／またはコンピュータ・プログラム・コードを含むコンピューティング物品によって実施可能である。各実施形態において、プログラム・コードおよびハードウェアは、それぞれ標準のプログラミングおよびエンジニアリング技法を使用して作成することができる。
【００１９】
同様に、コンピュータ・インフラストラクチャ１２は、本発明を実施するための種々のタイプのコンピュータ・インフラストラクチャの例示に過ぎない。例えば、一実施形態では、コンピュータ・インフラストラクチャ１２は、本明細書に記載したプロセスを実行するために、ネットワーク、共有メモリなどの任意のタイプの通信リンクを介して通信する２つ以上のコンピューティング・デバイス（例えば、サーバ・クラスタ）を備える。さらに、本明細書に記載したプロセスを実行する一方で、コンピュータ・インフラストラクチャ１２内の１つまたは複数のコンピューティング・デバイスは、任意のタイプの通信リンクを使用して、コンピュータ・インフラストラクチャ１２の外部にある１つまたは複数の他のコンピューティング・デバイスと通信することができる。いずれの場合も、通信リンクは、種々のタイプの有線および／または無線リンクの任意の組み合わせを含むこと、１つまたは複数のタイプのネットワーク（例えば、インターネット、ワイド・エリア・ネットワーク、ローカル・エリア・ネットワーク、仮想プライベート・ネットワークなど）の任意の組み合わせを含むこと、および／または種々のタイプの伝送技法およびプロトコルの任意の組み合わせを利用することが可能である。
【００２０】
本明細書に説明するように、管理システム３０は、コンピュータ・インフラストラクチャ１２がトポロジ５０を管理および／または比較することができるようにする。この点で、図面では、管理システム３０は、インタフェース・システム３２、トポロジ・システム３４、比較システム３６、およびグラフィカル・ユーザ・インタフェース（ＧＵＩ）システム３８を含むように示されている。これらの各システムの操作をさらに本明細書に説明する。しかし、図１に示す種々のシステムのうちのいくつかを、コンピュータ・インフラストラクチャ１２に含まれる１つまたは複数の別々のコンピューティング・デバイス用に独立して組み合わせて、および／またはメモリ内に格納して実施することができることを理解されたい。さらに、システムまたは機能あるいはその両方のうちのいくつかが実施できないこと、あるいは追加のシステムまたは機能あるいはその両方をコンピュータ・インフラストラクチャ１２の一部として含めることができることを理解されたい。
【００２１】
それにもかかわらず、本発明は、２つ以上のトポロジ５０を比較するためのソリューションを提供する。周知のように、各トポロジ５０は、ノードのセットまたはコネクタのセットあるいはその両方を使用して表すことができる任意のタイプのデータ／情報を含む。この点で、トポロジ５０の典型的なレンダリングは、そのそれぞれが、トポロジ５０が表す特定タイプのデータ／情報に基づいて選択された特定のアイテムを表すノードのセットを含む。さらに、トポロジ５０のレンダリングは、そのそれぞれが２つ以上のノード間の関連性を表す１つまたは複数のコネクタを含むことができる。通常、各ノードは対応するアイテムに関するアイテム属性のセットをカプセル化することになり、各コネクタは対応する関連性に関する関連性属性のセットをカプセル化することになる。
【００２２】
例えば、トポロジ５０はネットワーク・トポロジを含むことができる。この場合、トポロジ５０は、ノードのセットまたはコネクタのセットあるいはその両方を使用して表すことができるネットワーク上のデータ／情報を含むことができる。詳細には、各ノードはネットワーク内のコンピューティング・デバイスを表し、各コネクタは２つのコンピューティング・デバイス間の通信リンク（例えば、接続）を表すことができる。この点で、トポロジ５０内の各ノードは、アイテム・タイプ、ラベル、オペレーティング状況、通信アドレス等のような種々のアイテム属性を含むことができる。同様に、各コネクタは、接続タイプ、可用度状況、方向等のような種々の関連性属性を含むことができる。さらにアイテム属性は、接続数などの対応するアイテムの接続に関する追加情報も含むことができる。さらに、２つ以上のトポロジ５０を比較する場合、アイテム／関連性属性は、対応するノード／コネクタが、それぞれの他のトポロジ５０における他のノード／コネクタと一致しているかどうかの指標を含むことができる。それにもかかわらず、このネットワークは、例えば、鉄道システム、家庭用娯楽システム等のようなトポロジ５０を使用して表すことが可能な種々のタイプの環境の例示に過ぎないことを理解されたい。
【００２３】
任意のイベントにおいて、管理システム３０はトポロジ５０のセットを管理することができる。詳細には、インタフェース・システム３２は、任意の周知の様式で１つまたは複数のトポロジ５０を取得することができる。この点で、インタフェース・システム３２は、ユーザ・インタフェースを生成すること、アプリケーション・プログラム・インタフェース（ＡＰＩ）を提供すること等が可能であり、これによってユーザ１６（人間または他のシステム）が各トポロジ５０を追加、削除、表示、修正等を実行することができるようになる。例えば、インタフェース・システム３２は、ユーザ１６に表示された場合、ユーザ１６がトポロジ５０に関するデータ／情報を定義および／または修正できるようにするユーザ・インタフェース・コントロールを含むユーザ・インタフェースを生成することができる。さらにユーザ１６は、例えば、トポロジ５０をインタフェース・システム３２に提供するためのＡＰＩ、トポロジ５０への１つまたは複数の修正等を使用する任意のタイプの通信リンクを介して、インタフェース・システム３２と通信する他のシステムを含むことができる。さらにインタフェース・システム３２は、トポロジ５０を、ファイル、データベース・レコード等のような１つまたは複数のデータ・オブジェクト内に格納するストレージ・システム２２Ｂからトポロジ５０を読み取ることができる。
【００２４】
ユーザ・インタフェース内にトポロジ５０をレンダリングするために、トポロジ・システム３４はトポロジ５０内のデータ／情報を分析すること、およびこれをノードまたはコネクタのセットあるいはその両方にマッピングすることが可能であり、これがその後ユーザ・インタフェース内にレンダリングされる。この点で、トポロジ・システム３４は、特定のノード／コネクタがトポロジ５０内でどのように識別されるか、およびノード／コネクタがどのように表示されるかを定義するレンダリング規則のセットを含むことができる。さらに、レンダリング規則のセットは、１つまたは複数のアイテム／関連性属性を視覚的に表すために使用可能な任意の装飾（例えば、色、陰影付け、矢印など）を定義することができる。
【００２５】
例えば、図２〜図３は、それぞれ一対の例示としてのトポロジ５０Ａ〜Ｂを示す。トポロジ５０Ａなどの各トポロジは、異なる陰影付けまたは装飾あるいはその両方を使用してレンダリングされた複数のノードＮ１〜８、および異なる線スタイルまたは矢印あるいはその両方を使用してレンダリングされた対応するコネクタを含む。トポロジ５０Ａ〜Ｂのレンダリングを生成する場合、トポロジ・システム３４は、各トポロジ５０Ａ〜Ｂによって定義されたデータ／情報にレンダリング規則のセットを適用することができる。この点で、トポロジ５０Ａ〜Ｂがネットワーク・トポロジを含む場合、トポロジ・システム３４は、特定タイプのコンピューティング・デバイスに対応する各ノードに対する固有の陰影付け、コンピューティング・デバイスに関する種々のオペレーティング状況を示すための固有の装飾等を使用することができる。同様に、トポロジ・システム３４は、通信リンクの可用度を示すための固有の線スタイル、通信リンクの方向を示すための矢印等を使用することができる。図示および説明した種々の装飾は、当分野で周知の数多くのタイプの装飾の例示に過ぎないことを理解されたい。
【００２６】
ユーザ１６は、２つ以上のトポロジ５０を比較しようとすることが多い。この点で、インタフェース・システム３２は、図２〜図３のトポロジ５０Ａ〜Ｂのような２つ以上のトポロジを比較するための比較要求を受け取ることができる。これに応答して、比較システム３６は、トポロジ５０Ａ〜Ｂ間の相違５２のセットを判定することができる。図１および図２〜図３を参照すると、比較システム３６は、トポロジ５０Ａ内のノードＮ１のようなノードをトポロジ５０Ｂ内のノードＮ１と突き合わせる。比較システム３６は、ノードＮ１の突き合わせのために、任意の周知のソリューションを実施することができる。この点で、ユーザ１６は、比較システム３６を使用して一致を識別するための１つまたは複数の規則を定義することができる。例えば、比較システム３６は、対応するアイテムに関するアイテム属性のうちの１つまたは複数の任意の組み合わせを使用して、２つのノードＮ１を突き合わせることができる。この場合、比較システム３６は、一致を識別するためにアイテム属性が使用される優先順序を使用することができる。例えば、比較システム３６は、第１に同じアイテム・ラベルを有するノードＮ１を突き合わせ、次に異なるラベルを有するが同じアイテム・タイプを表し、同じ関連性属性を有するなどのノードＮ１を突き合わせることができる。
【００２７】
比較システム３６は、ノードＮ１などの２つの突き合わされたノード間で、相違５２のセットがあれば、これを識別することができる。詳細には、比較システム３６は、突き合わされたノードに関するアイテム属性の対応するセットを比較して、それらの間の任意の相違を識別することができる。相違が識別されると、比較システム３６は、この相違に関するデータ（例えば、ノード、異なるアイテム属性、値）を相違５２として相違５２のセットに格納することができる。２つの突き合わされたノード間の相違を識別することに加えて、比較システム３６は、一方のトポロジ５０Ａには存在するが他方のトポロジ５０Ｂには存在しない、ノードＮ８などの任意のノードを識別することができる。ノードＮ８に関するデータも、相違５２のセット内に相違として格納することができる。
【００２８】
同様に、比較システム３６は、トポロジ５０Ａ内のコネクタをトポロジ５０Ｂ内の対応するコネクタと突き合わせ、この２つのコネクタ間に相違のセットがあれば、これを識別することができる。詳細には、比較システム３６は、各コネクタに関する対応する関連性属性のセットを比較して、何らかの相違があるかどうかを判定することができる。相違がある場合、比較システム３６は、この相違に関するデータ（例えば、コネクタ、異なる関連性属性、値）を相違５２として相違５２のセットに格納することができる。さらに、比較システム３６は、トポロジ５０Ａまたはトポロジ５０Ｂあるいはその両方内の任意の一致しないコネクタを識別し、この一致しないコネクタに関するデータを相違５２として相違５２のセットに格納することができる。
【００２９】
比較システム３６が、トポロジ５０Ａ〜Ｂ間に１つまたは複数の相違５２を識別した場合、ＧＵＩシステム３８は、相違５２のセットを表示するために、比較インタフェース５４のようなユーザ・インタフェースを生成することができる。そうでない場合、インタフェース・システム３２は、トポロジ５０Ａ〜Ｂ間に相違が見つからなかったことをユーザ１６に通知する、メッセージまたはユーザ・インタフェースあるいはその両方を生成することができる。比較インタフェース５４は、トポロジ５０Ａ〜Ｂ間の１つまたは複数の相違５２に対応する、各トポロジ５０Ａ〜Ｂのサブセットを表示することができる。例えば、相違５２のセットはリストとして格納することが可能であり、比較インタフェース５４を生成する場合、ＧＵＩシステム３８は、リスト内の第１の相違５２に対応するトポロジ５０Ａ〜Ｂのサブセットをユーザ・インタフェース内に表示することができる。表示された相違が、トポロジ５０Ａ〜Ｂの両方に存在するノード／コネクタに対応する場合、トポロジ５０Ａ〜Ｂのサブセットを選択して、対応するノード／コネクタを各トポロジ５０Ａ〜Ｂ内に表示することができる。別の方法としては、表示された相違がトポロジ５０Ａ〜Ｂのうちの１つにおける欠落ノード／コネクタに対応する場合、トポロジ５０Ａ内のノードＮ８などの一方のトポロジに存在するノード／コネクタ、および、欠落ノード／コネクタに関係するトポロジ５０Ａ内のノード、例えば、トポロジ５０Ｂ内のノードＮ６に対応する他方のトポロジ５０Ｂ内のノードを表示するために、トポロジ５０Ａ〜Ｂのサブセットを選択することができる。
【００３０】
任意のイベントにおいて、本発明の一態様は、２つ以上のトポロジ間の１つまたは複数の相違を表示するために、ユーザ・インタフェースを提供する。この点で、図４〜図５は、本発明の実施形態による、図２〜図３のトポロジ５０Ａ〜Ｂのような一対のトポロジ間の１つまたは複数の相違を示す例示としての比較インタフェース５４を示す図である。比較インタフェース５４は一対の表示領域６０Ａ〜Ｂを含み、そのそれぞれがトポロジ５０Ａ〜Ｂのうちの１つのサブセットを表示する。表示領域６０Ａ〜Ｂ内に表示される各トポロジ５０Ａ〜Ｂのサブセットは、選択された相違に対応する。例えば、図４では、各表示領域６０Ａ〜Ｂは、それぞれ、ノードＮ１とＮ６との間のコネクタの方向の相違に対応する、対応するトポロジ５０Ａ〜Ｂのサブセットを表示するように示され、図５では、各表示領域６０Ａ〜Ｂは、欠落ノードＮ８に対応するサブセットを表示するように示されている。
【００３１】
１つまたは複数の選択された相違を表示する場合、トポロジ５０Ａ〜Ｂ（図２〜図３）のサブセットのうちの１つまたは両方のレンダリングは、相違に対応するノードまたはコネクタあるいはその両方を強調表示するように変更することができる。例えば、図４に示されるように、ノードＮ１とＮ６との間のコネクタは表示領域６０Ａ〜Ｂの両方で強調表示されるが、図５に示されるように、欠落ノードＮ８およびその対応するコネクタは表示領域６０Ａ内で強調表示される。強調表示は、色の変更、アウトライニングなどの任意のソリューションを使用して実施することができることを理解されたい。さらに、強調表示は、例えば、「ゴースト発生」などの相違に関係しないノード／コネクタの表示特徴を減らすことによって実行することができることも理解されたい。
【００３２】
比較インタフェース５４は、ユーザ１６（図１）が表示用の１つまたは複数の相違５２（図１）を選択することができるようにする種々のユーザ・インタフェース・コントロールを含む。詳細には、比較インタフェース５４は、ユーザ１６が相違５２のセットのサブセットを選択することができるようにするユーザ・インタフェース・コントロール６２と、ユーザ１６が特定の相違５２を選択することができるようにするユーザ・インタフェース・コントロール６４と、ユーザ１６が相違５２をスルーできるようにする一対のユーザ・インタフェース・コントロール６６Ａ〜Ｂとを含む。一般的に、ユーザ１６は、ユーザ・インタフェース・コントロール６２を使用して、ユーザ・インタフェース・コントロール６４、６６Ａ〜Ｂを使用する選択に使用可能な相違５２を制限することができる。サブセットは、相違に対応する突き合わせアイテム／関連性の有無を含む特定のアイテム属性または関連性属性あるいはその両方に基づいて定義することができる。したがって、ユーザ１６は、表示用の特定の相違５２を選択するためにユーザ・インタフェース・コントロール６４を使用すること、および／または相違５２をスルーするためにユーザ・インタフェース・コントロール６６Ａ〜Ｂを使用することができる。
【００３３】
図５に示されるように、ユーザ・インタフェース・コントロール６２は任意の相違５２、アイテム関係の相違のサブセット、または接続関係の相違のサブセットの選択を実行することができる。さらに、アイテム関係の相違または接続関係の相違あるいはその両方は、異なるアイテム・ラベル、アイテム・タイプ、アイテム状況、欠落アイテム等のようなアイテム関係の相違に関する相違５２の１つまたは複数のサブセットにさらに分割することができる。特定のアイテム／関連性属性に対応する相違５２がない場合、ユーザ・インタフェース・コントロール６２は、ユーザ１６が対応するサブセットを選択する機能を使用不可にする（例えば、オプションのグレイアウト、オプションを含めない等）ことができる。
【００３４】
ユーザ・インタフェース・コントロール６２、６４、６６Ａ〜Ｂは、同様の機能を提供するために実施可能な多数のタイプのユーザ・インタフェース・コントロールの例示に過ぎないことを理解されたい。さらに、ユーザ・インタフェース・コントロール６２が相違のセットの複数のサブセットを選択することができること、および／またはユーザ・インタフェース・コントロール６４、６６Ａ〜Ｂが複数の相違５２を選択することができることも理解されたい。後者の場合、表示領域６０Ａ〜Ｂ内に表示されるトポロジ５０Ａ〜Ｂ（図２〜図３）のサブセットは、選択されたすべての相違５２に対応するノード／コネクタを含むように選択することができる。さらに、比較インタフェース５４は、ユーザ１６が、トポロジ５０Ａ〜Ｂに対するズームのレベル（例えば、ノード／コネクタのサイズの増大／縮小）の選択、表示されたトポロジ５０Ａ〜Ｂのサブセットのスクロール（例えば、トポロジの表示される部分を上／下、左／右へ移動）等のような種々の追加の操作を実行することができるようにする、種々の追加のユーザ・インタフェース・コントロールを含むことができることも理解されたい。
【００３５】
図１に戻ると、ＧＵＩシステム３８が比較インタフェース５４を生成した後、インタフェース・システム３２は、ユーザ１６に表示するために比較インタフェース５４を提供することができる。例えば、インタフェース・システム３２は、比較インタフェース５４を表示デバイス上にレンダリングすること、他のシステム上にレンダリングするために比較インタフェース５４を（例えば、インターネットなどのネットワークを介して）送ることなどを実行することができる。その後、ユーザ１６は、比較インタフェース５４内の１つまたは複数のユーザ・インタフェース・コントロールを使用して、表示用の１つまたは複数の相違５２を選択することができる。インタフェース・システム３２は選択された相違５２を受け取ることが可能であり、ＧＵＩシステム３８は、インタフェース・システム３２が表示用にユーザ１６に提供できる選択された相違５２を表示するように比較インタフェース５４を更新することができる。詳細には、ＧＵＩシステム３８は、選択された相違５２に関する対応するトポロジ５０のサブセットを表示するように、表示領域６０Ａ〜Ｂ（図４）を更新することができる。この点で、比較インタフェース５４の表示を更新する場合、インタフェース・システム３２は、新しいバージョンの比較インタフェース５４または表示領域６０Ａ〜Ｂなどの比較インタフェース５４に関する部分的な表示データあるいはその両方を提供することができることを理解されたい。
【００３６】
本発明の一態様は、２つ以上のトポロジ５０を比較する方法を提供する。この点で、図６は、本発明の実施形態のトポロジ５０を比較するための、例えば、図１のコンピュータ・インフラストラクチャ１２によって実施可能な例示としてのプロセスを示す。図１および４を参照すると、ステップＳ１で、インタフェース・システム３２はユーザ１６から比較要求を受け取る。ステップＳ２で、インタフェース・システム３２は比較されるトポロジ５０を取得する。ステップＳ３で、比較システム３６はトポロジ５０間の相違５２のセットを取得する。ステップＳ４で、ＧＵＩシステム３８は、相違５２のセットのうちの１つまたは複数を表示するための比較インタフェース５４のようなユーザ・インタフェースを生成する。ステップＳ５で、インタフェース・システム３２は、ユーザ１６に表示するための比較インタフェース５４を提供する。ステップＳ６で、インタフェース・システム３２は、比較インタフェース５４で表示するための１つまたは複数の選択された相違５２を受け取る。ステップＳ７で、ＧＵＩシステム３８は、選択された相違５２を表示するように比較インタフェース５４を更新する。その後、流れはステップＳ５に戻る。このプロセスは、ユーザ１６が比較インタフェース５４を閉じるように選択するまで続行可能である。図６に示されたステップおよび対応する順序は、例示に過ぎないことを理解されたい。この点で、本明細書に記載した本発明から逸脱することなく、２つ以上のステップを同時に実行することが可能であり、この順序は変更可能であり、１つまたは複数の追加のステップが実行可能であり、および／または１つまたは複数のステップを除去することが可能である。この点で、記載した本発明は、本明細書に図示および記載したステップの特定の構成によって制限されることはない。
【００３７】
本発明は、トポロジ５０（図１）を管理および／または比較するための方法およびシステムとして本明細書に図示および説明したが、さらに種々の代替実施形態を提供することを理解されたい。例えば、一実施形態では、本発明は、実行された場合、コンピュータ・インフラストラクチャがトポロジ５０を管理および／または比較することができるようにする、コンピュータ読み取り可能媒体上に格納されたプログラム製品を提供する。この点で、コンピュータ読み取り可能媒体は、本明細書に記載したプロセスを実施する管理システム３０（図１）のようなプログラム・コードを含む。「コンピュータ読み取り可能媒体」という用語は、プログラム・コードの１つまたは複数の任意のタイプの物理的実施形態を含むことを理解されたい。詳細には、コンピュータ読み取り可能媒体は、１つまたは複数のポータブル・ストレージ物品（例えば、コンパクト・ディスク、磁気ディスク、テープなど）上で、メモリ２２Ａ（図１）またはストレージ・システム２２Ｂ（図１）あるいはその両方のようなコンピューティング・デバイスの１つまたは複数のデータ・ストレージ部分（例えば、固定ディスク、読み取り専用メモリ、ランダム・アクセス・メモリ、キャッシュ・メモリなど）上で、および／またはネットワークを介して移動するデータ信号（例えば、プログラム製品の有線／無線電子配信中など）として実施される、プログラム・コードを含むことができる。
【００３８】
他の実施形態では、本発明は、トポロジ５０（図１）を管理および／または比較するためのシステムを生成するための方法を提供する。この場合、コンピュータ・インフラストラクチャ１２（図１）のようなコンピュータ・インフラストラクチャが取得（例えば、作成、維持、使用可能化など）可能であり、本明細書に記載したプロセスを実行するための１つまたは複数のシステムを取得（例えば、作成、購入、使用、修正など）し、コンピュータ・インフラストラクチャに展開することができる。この点で、各システムの展開には、（１）コンピュータ読み取り可能媒体からコンピューティング・デバイス１４（図１）のようなコンピューティング・デバイス上へのプログラム・コードのインストール、（２）コンピュータ・インフラストラクチャへの１つまたは複数のコンピューティング・デバイスの追加、および（３）コンピュータ・インフラストラクチャが本発明のプロセス・ステップを実行することができるようにするためのコンピュータ・インフラストラクチャの１つまたは複数の既存システムの組み込みおよび／または修正、のうちの１つまたは複数を含むことができる。
【００３９】
他の実施形態では、本発明は、本明細書に記載したプロセスを加入、広告、および／または料金ベースで実行するビジネス方法を提供する。すなわち、アプリケーション・サービス・プロバイダ（ＡＳＰ）のようなサービス・プロバイダは、本明細書に記載したようなトポロジ５０（図１）の管理または比較あるいはその両方を提供することができる。この場合、サービス・プロバイダは、１人または複数の顧客に対して本明細書に記載したプロセスを実行するコンピュータ・インフラストラクチャ１２（図１）のようなコンピュータ・インフラストラクチャを管理（例えば、作成、維持、サポートなど）することができる。次に、サービス・プロバイダは、加入または料金契約あるいはその両方の下で顧客からの支払いを受け取ることが可能であり、サービス・プロバイダは１人または複数の第三者への広告の販売から支払いを受け取ることなどが可能である。
【００４０】
本明細書で使用される場合、「プログラム・コード」および「コンピュータ・プログラム・コード」という用語は同義であり、情報処理機能を有するコンピューティング・デバイスが特定の機能を、直接、あるいは（ａ）他の言語、コード、または表記法への変換、（ｂ）異なる材料形式での再作成、および／または（ｃ）圧縮解除のうちの任意の組み合わせの後に実行することができるようにする命令セットの任意の言語、コード、または表記法での任意の表現を意味するものであることを理解されたい。この点で、プログラム・コードは、アプリケーション／ソフトウェア・プログラム、コンポーネント・ソフトウェア／機能ライブラリ、オペレーティング・システム、特定のコンピューティングおよび／またはＩ／Ｏデバイス用の基本Ｉ／Ｏシステム／ドライバ等のような１つまたは複数のタイプのプログラム製品として実施することができる。
【００４１】
以上、本発明の種々の態様について例示および説明の目的で説明してきた。本発明を網羅すること、または本発明を開示された精密な形に限定することは意図されておらず、多くの修正および変形が可能であることは明らかである。当業者であれば明らかなこうした修正および変形は、添付の特許請求の範囲によって定義された本発明の範囲内に含まれる。
【図面の簡単な説明】
【００４２】
【図１】本発明の実施形態のトポロジを比較するための例示としての環境を示す図である。
【図２】一対の例示としてのトポロジを示す図である。
【図３】一対の例示としてのトポロジを示す図である。
【図４】本発明の実施形態の一対のトポロジ間の相違を示す例示としての比較インタフェースを示す図である。
【図５】本発明の実施形態の一対のトポロジ間の相違を示す例示としての比較インタフェースを示す図である。
【図６】本発明の実施形態のトポロジを比較するための例示としてのプロセスを示す図である。
【符号の説明】
【００４３】
１０  環境
１２  コンピュータ・インフラストラクチャ
１４  コンピューティング・デバイス
１６  ユーザ
２０  プロセッサ
２２Ａ  メモリ
２２Ｂ  ストレージ・システム
２４  入出力（Ｉ／Ｏ）インタフェース
２６  バス
２８  外部Ｉ／Ｏデバイス／リソース
３０  管理システム
３２  インタフェース・システム
３４  トポロジ・システム
３６  比較システム
３８  グラフィカル・ユーザ・インタフェース（ＧＵＩ）システム
５０  トポロジ
５０Ａ〜Ｂ  トポロジ
５２  相違
５４  比較インタフェース
６０Ａ〜Ｂ  表示領域
６２，６４，６６Ａ〜Ｂ  ユーザ・インタフェース・コントロール
Ｎ８  欠落ノード
【図１】
0005489391.tif 000002
【図２】
0005489391.tif 000003
【図３】
0005489391.tif 000004
【図４】
0005489391.tif 000005
【図５】
0005489391.tif 000006
【図６】
0005489391.tif 000007