(57)【特許請求の範囲】
【請求項１】
仮想機械配管システムの共同開発システム（１００）であって、
該システム（１００）は、少なくとも１つのプロセッサ（１０２）を有しており、該少なくとも１つのプロセッサ（１０２）は、少なくとも１つの入力デバイス（１１０）を介して供給される入力に応答して、複数の要素から成る１つのセットにより構成された配管経路（１２０）の設計を生成し、該配管経路に対応する分散型配管パス（１２２）をデータストア（１１２）に格納させるように、コンフィギュレーションされており、前記分散型配管パスは、２つの終端要素（５０２，５０８）と、複数の配管パスリンク（６０４，６０６）を指定するデータから成り、前記配管パスリンクは、複数の中間要素（５０４，５０６）間の接続、および各終端要素と前記中間要素のうちのそれぞれ１つとの間の接続を指定し、
前記少なくとも１つのプロセッサは、前記データストアに格納された前記分散型配管パスと、該分散型配管パスの前記配管パスリンクにより指定された前記終端要素および前記中間要素の物理的構造（１１６）を表すデータとに少なくとも部分的に基づき、前記配管経路の三次元（３Ｄ）表現（８００）をディスプレイデバイス（１０８）に出力するように、コンフィギュレーションされている、
仮想機械配管システムの共同開発システム（１００）。
【請求項２】
前記終端要素および前記中間要素の物理的構造を表す前記データは、コンピュータ支援設計（ＣＡＤ）データを含み、
前記システムは、前記少なくとも１つのプロセッサにより実行可能な命令を有するアプリケーションソフトウェアコンポーネントを含み、該アプリケーションソフトウェアコンポーネントによって前記プロセッサは、前記分散型配管パスの少なくともいくつかの要素に対応するＣＡＤデータを前記データストアからロードして、前記配管パスリンクと前記ＣＡＤデータの少なくとも一部分に少なくとも部分的に基づき、前記配管経路の前記３Ｄ表現の少なくとも一部分を形成するために統合されて配置されたロードされた前記要素の物理的構造の３Ｄ表現を、前記ディスプレイデバイスが出力するようにし、
前記アプリケーションソフトウェアコンポーネントは、前記システムのメモリ（１０６）内に３Ｄジオメトリ制約ネットワークを形成するように、コンフィギュレーションされており、該３Ｄジオメトリ制約ネットワークを介して、前記少なくとも１つの入力デバイスを介した入力によって、前記配管経路の要素の形状およびポジションを変更可能であり、
前記アプリケーションソフトウェアコンポーネントは、前記要素に対する変更に基づき前記要素間の配管パスリンクを生成、消去および／または更新し、前記配管パスリンクおよびＣＡＤデータに対する変更を前記データストアに格納するように、コンフィギュレーションされている、
請求項１記載のシステム。
【請求項３】
前記アプリケーションソフトウェアコンポーネントは、該アプリケーションソフトウェアコンポーネントにより前記配管経路の要素すべてのＣＡＤデータを前記メモリにロードする必要なく、前記配管経路の要素のサブセットのＣＡＤデータをロードして、該ＣＡＤデータに設計変更を加えるように、コンフィギュレーションされており、
前記アプリケーションソフトウェアコンポーネントは、前記設計変更により該設計変更とロードされなかった要素との整合性について前記配管経路の評価が必要とされるか否かを表す各配管パスリンクにおけるデータを、前記データストアに格納するように、コンフィギュレーションされている、
請求項２記載のシステム。
【請求項４】
前記設計変更により整合性について前記配管経路の評価が必要とされるか否かを表す前記データストア内の各配管パスリンクにおける前記データは、任意の２つの要素間の前記配管パスリンクが無効であるか否かをプロセッサが判定する際に使用するデータを含む、
請求項３記載のシステム。
【請求項５】
各配管パスリンクはハンドルデータを含み、該ハンドルデータは、各配管パスリンクにおいて指定された要素ペアについて、ＣＡＤデータ中のいずれのＣＡＤオブジェクトが互いに接続されるのかを指定し、
前記アプリケーションソフトウェアコンポーネントは、前記配管経路の仮想３Ｄ表現をダイナミックに組み立てるために、前記配管パスリンクにおいて指定された前記要素ペアと、前記配管パスリンクに含まれる前記ハンドルデータと、前記配管パスリンクにより指定された前記要素のＣＡＤデータ中で定義された前記要素のコンフィギュレーションとに基づき、いずれの要素をロードし、いずれの場所に当該要素を配置して、いずれの場所で要素ペアを接続するのか、を決定する、
請求項２から４までのいずれか１項記載のシステム。
【請求項６】
前記ＣＡＤデータは、前記分散型配管パスのリンクにより指定された前記中間要素および前記終端要素各々についてそれぞれＣＡＤファイルを含み、
前記配管経路は、パイプライン装備（２１４）の形態の前記終端要素間で流体を移動させるパイプライン（２１０）を含み、
さらに当該システムはコンピュータシステム（１００）を有しており、該コンピュータシステム（１００）は、メモリ（１０６）と、アプリケーションソフトウェアコンポーネント（１０４）と、前記少なくとも１つのプロセッサと、前記少なくとも１つの入力デバイスと、前記ディスプレイデバイスと、前記データストアとを含み、
前記アプリケーションソフトウェアコンポーネントは以下の命令によって構成されており、すなわち該命令は、前記メモリに含まれ前記少なくとも１つのプロセッサにより実行されると、前記少なくとも１つのプロセッサが、前記少なくとも１つの入力デバイスを介した入力に応答して、前記配管経路の前記設計を生成し、前記分散型配管パスを決定して前記データストアに格納するようにする、
請求項２から５までのいずれか１項記載のシステム。
【請求項７】
前記少なくとも１つのプロセッサは、前記少なくとも１つの入力デバイスを介して供給される入力に応答して、前記配管経路の論理的表現（１３０２）の設計を生成するように、コンフィギュレーションされており、前記論理的表現によって、前記配管経路の実装に使用するための論理的コンポーネントが指定され、
前記プロセッサは、前記少なくとも１つの入力デバイスを介して供給される入力に応答して、前記論理的表現を表すデータを前記データストアに格納するように、コンフィギュレーションされており、前記論理的表現を表すデータは、前記論理的コンポーネントと、前記分散型配管パスにより指定された前記終端要素および前記中間要素との関連づけにより達成される、
請求項１から６までのいずれか１項記載のシステム。
【請求項８】
仮想機械配管システムの共同開発方法（１４００）であって、
当該方法は以下を含む、すなわち、
少なくとも１つのプロセッサ（１０２）のオペレーションによって、少なくとも１つの入力デバイス（１１０）を介して供給される入力に応答して、複数の要素から成る１つのセットにより構成された配管経路（１２０）の設計を生成し、該配管経路に対応する分散型配管パス（１２２）をデータストア（１１２）に格納させるようにし、前記分散型配管パスは、２つの終端要素（５０２，５０８）と、複数の配管パスリンク（６０４，６０６，６０８）を指定するデータから成り、前記配管パスリンクは、複数の中間要素（５０４，５０６）間の接続、および各終端要素と前記中間要素のうちのそれぞれ１つとの間の接続を指定し、
前記少なくとも１つのプロセッサのオペレーションによって、前記データストアに格納された前記分散型配管パスと、該分散型配管パスの前記配管パスリンクにより指定された前記終端要素および前記中間要素の物理的構造（１１６）を表すデータとに少なくとも部分的に基づき、前記配管経路の三次元（３Ｄ）表現（８００）をディスプレイデバイス（１０８）に出力させる、
仮想機械配管システムの共同開発方法（１４００）。
【請求項９】
前記終端要素および前記中間要素の物理的構造を表す前記データは、コンピュータ支援設計（ＣＡＤ）データを含み、当該方法はさらに以下を含む、すなわち、
前記少なくとも１つのプロセッサのオペレーションによって、前記分散型配管パスの少なくともいくつかの要素に対応するＣＡＤデータを前記データストアからロードして、前記配管パスリンクと前記ＣＡＤデータの少なくとも一部分に少なくとも部分的に基づき、前記配管経路の前記３Ｄ表現の少なくとも一部分を形成するために統合されて配置されたロードされた前記要素の物理的構造の３Ｄ表現を、前記ディスプレイデバイスが出力するようにし、
前記少なくとも１つのプロセッサのオペレーションによって、メモリ（１０６）内に３Ｄジオメトリ制約ネットワークを形成し、該３Ｄジオメトリ制約ネットワークを介して、前記少なくとも１つの入力デバイスを介した入力によって、前記配管経路の要素の形状およびポジションを変更可能であり、
前記少なくとも１つのプロセッサのオペレーションによって、前記要素に対する変更に基づき前記要素間の配管パスリンクを生成、消去および／または更新し、前記配管パスリンクおよびＣＡＤデータに対する変更を前記データストアに格納する、
請求項８記載の方法。
【請求項１０】
当該方法はさらに以下を含む、すなわち、
前記少なくとも１つのプロセッサのオペレーションによって、前記配管経路の要素すべてのＣＡＤデータを前記メモリにロードする必要なく、前記配管経路の複数の要素から成る１つのサブセットのＣＡＤデータをロードし、該ＣＡＤデータに設計変更を加え、
前記少なくとも１つのプロセッサのオペレーションによって、前記設計変更により該設計変更とロードされなかった要素との間の整合性について前記配管経路の評価が必要とされるか否かを表す各配管パスリンクにおけるデータを前記データストアに格納し、
前記少なくとも１つのプロセッサのオペレーションによって、前記設計変更により整合性について前記配管経路の評価が必要とされるか否かを表す前記データストア内の前記配管パスリンクにおける前記データに少なくとも部分的に基づき、何らかの２つの要素間の配管パスリンクが無効であるか否かを判定する、
請求項９記載の方法。
【請求項１１】
各配管パスリンクはハンドルデータを含み、該ハンドルデータは、各配管パスリンクにおいて指定された要素ペアについて、ＣＡＤデータ中のいずれのＣＡＤオブジェクトが互いに接続されるのかを指定し、当該方法はさらに以下を含む、すなわち、
前記少なくとも１つのプロセッサのオペレーションによって、前記配管経路の仮想３Ｄ表現をダイナミックに組み立てるために、前記配管パスリンクにおいて指定された前記要素ペアと、前記配管パスリンクに含まれる前記ハンドルデータと、前記配管パスリンクにより指定された前記要素のＣＡＤデータ中で定義された前記要素のコンフィギュレーションとに基づき、いずれの要素をロードし、いずれの場所に当該要素を配置して、いずれの場所で要素ペアを接続するのか、を決定する、
請求項９または１０記載の方法。
【請求項１２】
前記ＣＡＤデータは、前記分散型配管パスのリンクによって指定された前記中間要素と前記終端要素の各々についてそれぞれＣＡＤファイルを含み、前記配管経路は、パイプライン装備（２１４）の形態の前記終端要素間で流体を移動させるパイプライン（２１０）を含み、当該方法はさらに以下を含む、すなわち、
前記分散型配管パスデータと前記ＣＡＤデータとに少なくとも部分的に基づき、前記配管経路に対応するパイプラインを構築する、
請求項９から１１までのいずれか１項記載の方法。
【請求項１３】
当該方法はさらに以下を含む、すなわち、
前記少なくとも１つのプロセッサのオペレーションよって、前記少なくとも１つの入力デバイスを介して供給される入力に応答して、前記配管経路の論理的表現（１３０２）の設計を生成し、前記論理的表現によって、前記配管経路の実装に使用するための論理的コンポーネントを指定し、
前記少なくとも１つのプロセッサのオペレーションによって、前記少なくとも１つの入力デバイスを介して供給される入力に応答して、前記論理的表現を表すデータを前記データストアに格納し、前記論理的表現を表すデータは、前記論理的コンポーネントと、前記分散型配管パスにより指定された前記終端要素および前記中間要素との関連づけにより達成される、
請求項８から１２までのいずれか１項記載の方法。
【請求項１４】
前記少なくとも１つのプロセッサは、第１および第２のプロセッサを含み、当該方法はさらに以下を含む、すなわち、
前記第１および第２のプロセッサのオペレーションによって、前記配管経路の複数の要素から成るそれぞれ異なるサブセットを同時に並行してロードして該サブセットに設計変更を加え、前記分散型配管経路に対する相応の変更を同じデータストアに格納する、
請求項８から１３までのいずれか１項記載の方法。
【請求項１５】
実行可能な命令によってコーディングされた非一時的なコンピュータ読み取り可能媒体であって、前記命令が実行されると、少なくとも１つのプロセッサが請求項８から１４までのいずれか１項記載の方法を実行する、
非一時的なコンピュータ読み取り可能媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、全般的にいえば、コンピュータ支援設計（ＣＡＤ）、視覚化および製造システム、製品データマネージメント（ＰＤＭ）システム、製品ライフサイクルマネージメント（ＰＬＭ）システム、ならびに製品および他の項目のデータを生成および管理するために用いられる同等のシステム（これらをまとめて製品システムと称する）に関する。
【０００２】
背景
ＰＬＭシステムには、製品構造の設計を容易にするコンポーネントを含めることができる。かかるコンポーネントは、改善によって恩恵を受けることができる。
【０００３】
概要
多様に開示された実施形態には、３次元（３Ｄ）の仮想機械配管システムを共同開発するために用いることができるシステムおよび方法が含まれている。１つの例によれば、システムは少なくとも１つのプロセッサを有することができ、このプロセッサは、少なくとも１つの入力デバイスを介して供給される入力に応答して、複数の要素から成る１つのセットにより構成された配管経路の設計を生成し、この配管経路に対応する分散型配管パスをデータストアに格納させる。分散型配管パスを、２つの終端要素を指定するデータと、複数の配管パスリンクとによって構成することができ、これらの配管パスリンクは、複数の中間要素間の接続、および各終端要素と複数の中間要素のうち個々の１つとの間の接続を指定する。これに加え、少なくとも１つのプロセッサを以下のようにコンフィギュレーションすることができる。すなわち、データストアに格納された分散型配管パスと、分散型配管パスの配管パスリンクにより指定された終端要素および中間要素の物理的構造を表すデータとに少なくとも部分的に基づき、配管経路の３Ｄ表現をディスプレイデバイスに出力させるように、コンフィギュレーションすることができる。
【０００４】
別の例によれば、少なくとも１つのプロセッサのオペレーションによって実施される様々なアクションを、１つの方法に含めることができる。かかる方法は、以下を含むことができる。すなわち、少なくとも１つのプロセッサのオペレーションによって、少なくとも１つの入力デバイスを介して供給される入力に応答して、複数の要素から成る１つのセットにより構成された配管経路の設計を生成し、この配管経路に対応する分散型配管パスをデータストアに格納させ、この分散型配管パスを、２つの終端要素を指定するデータと、複数の中間要素間の接続、および各終端要素と複数の中間要素のうち個々の１つとの間の接続を指定する複数の配管パスリンクとによって、構成することができる。この方法は、以下を含むこともできる。すなわち、少なくとも１つのプロセッサのオペレーションによって、データストアに格納された分散型配管パスと、分散型配管パスの配管パスリンクにより指定された終端要素および中間要素の物理的構造を表すデータとに少なくとも部分的に基づき、配管経路の３Ｄ表現をディスプレイデバイスに出力させる。
【０００５】
さらに別の例は、（たとえばストレージデバイスにおけるソフトウェアコンポーネントなどのように）実行時に少なくとも１つのプロセッサに上述の方法を実施させる実行可能な命令によってコーディングされた、非一時的なコンピュータ読み取り可能媒体を含むことができる。
【０００６】
これまでの記載は、以下の詳細な説明を当業者がよりよく理解できるよう、本開示の技術的特徴をどちらかといえば大雑把に略述したものである。各請求項の要旨を成す本開示のその他の特徴および利点については、以下で述べることにする。当業者であれば理解できるように、当業者は開示された着想および特定の実施形態を、本開示と同じ目的を成し遂げるための変更または他の構造の設計のベースとして、ただちに使用することができる。さらに当業者であれば、かかる等価の構造が最も広い形態での本開示の着想および範囲を逸脱しないことを理解するであろう。
【０００７】
以下の発明の詳細な説明に入る前に、本明細書全体を通して用いられる可能性のあるいくつかの用語や表現について、ここで定義しておくのがよいと思われる。たとえば用語「含む」および「有する」ならびにそれらの派生語は、制限なく含有を意味する。単数形である「１つの」および「前記の」は複数形も同様に含むことを意図しており、このことは文脈によって明らかにそうではないことを指さないかぎりあてはまる。さらにここで用いられる用語「および／または」は、関連する一覧項目のうちの１つまたは複数のありとあらゆる可能な組み合わせのことを指し、かつそれらを包含するものである。用語「または」は、文脈によって明らかに別のことを指さないかぎり、「および／または」の意味を含む。表現「に関連づけられた」および「それに関連づけられた」ならびにそれらの派生語は、含む、中に含まれている、相互接続されている、含有する、中に含有されている、に接続されている、または、と接続されている、に結合されている、または、と結合されている、と通信可能である、と共同する、交互配置する、並置する、に近接している、に結び付けられている、または、と結び付けられている、有する、を所有している、または同等のものを意味することができる。
【０００８】
同様に、様々な要素、機能またはアクションを表すために、ここでは「第１の」、「第２の」、「第３の」といった用語が使われる場合もあるが、これらの用語によってそれらの要素、機能またはアクションが限定されるものではない。むしろこれらの数形容詞は、それぞれ異なる要素、機能またはアクションを互いに区別するために用いられる。たとえば、本開示の範囲から逸脱することなく、第１の要素、機能またはアクションを、第２の要素、機能またはアクションと称してもいいし、同様に第２の要素、機能またはアクションを、第１の要素、機能またはアクションと称してもよい。
【０００９】
これらに加え、１つまたは複数の機能またはプロセスを実施するように「プロセッサがコンフィギュレーションされている」といった表現は、ソフトウェア、ファームウェアおよび／または結線された回路を介して、それらの機能またはプロセスを実施するように、プロセッサの動作がコンフィギュレーションされている、ということを意味することができる。たとえば、ある機能／プロセスを実施するようにコンフィギュレーションされたプロセッサを、その機能／プロセスをプロセッサに実行させるようにプログラミングされたソフトウェア／ファームウェアを能動的に実行するプロセッサに対応するものとすることができ、またはその機能／プロセスを実施するためにプロセッサにより実行されるように使用可能なメモリまたはストレージデバイス内に、ソフトウェア／ファームウェアを有するプロセッサに対応するものとすることができる。さらにここで述べておくと、１つまたは複数の機能またはプロセスを実施するように「コンフィギュレーションされている」プロセッサを、それらの機能またはプロセスを実施するために特別に製造されたまたは「配線された」プロセッサ回路に対応するものとすることもできる（たとえばＡＳＩＣまたはＦＰＧＡ設計）。さらに、１つの機能よりも多くの機能を実施するようにコンフィギュレーションされた１つの要素（たとえば１つのプロセッサ）の前に記載された「少なくとも１つの」なる表現を、各々が機能を実行する１つまたは複数の要素（たとえばプロセッサ）に対応させることができ、また、１つまたは複数の種々の機能のうちそれぞれ異なる１つの機能を個々に実施する２つまたはそれよりも多くの要素（たとえばプロセッサ）に対応させることもできる。
【００１０】
用語「に隣接する」は、ある要素が別の要素と相対的に近いが、その要素とは接触していないこと、または文脈により明らかに別のことを指していないかぎり、その要素が別の部分と接触していないこと、を意味する。
【００１１】
いくつかの用語および表現に対する定義は、本明細書全体にわたって規定されるものであり、当業者であれば理解できるように、かかる定義は、大部分の事例ではないにしても数多くの事例において、ここで定義した用語および表現の以前の使用にも将来の使用にも適用される。いくつかの用語は、幅広い種類の実施形態を含むことができるけれども、添付の特許請求の範囲は、それらの用語を特定の実施形態に明確に限定している場合もある。
【図面の簡単な説明】
【００１２】
【図１】３Ｄ仮想機械配管システムの共同開発を容易にする例示的なシステムを示す機能ブロック図である。
【図２】例示的なパイプライン機械配管システムのイメージを示す図である。
【図３】単一のパイプライン配管経路を有する例示的な機械配管システムの３Ｄ表現を示す図である。
【図４】パイプライン配管経路のＣＡＤアセンブリファイルの一例を概略的に示す図である。
【図５】例示的な機械配管経路の概略的表現を示す図である。
【図６】例示的な機械配管経路について分散型配管パスを含むことができるオブジェクトおよびデータレコードを示す図である。
【図７】例示的な機械配管経路について分散型配管パスを含むことができるオブジェクトおよびデータレコードを示す図である。
【図８】２つのパイプライン配管経路を含む改訂された機械配管システムの３Ｄ表現を示す図である。
【図９】元の機械配管システムと改訂された機械配管システムの複数の分散型配管パスについて、データストア内のオブジェクトセットを示す図である。
【図１０】分散型配管パスに加えられる可能性のある例示的な改訂を示す図である。
【図１１】分散型配管パスに加えられる可能性のある例示的な改訂を示す図である。
【図１２】分散型配管パスに加えられる可能性のある例示的な改訂を示す図である。
【図１３】論理的配管設計パスの一例を示す図である。
【図１４】３Ｄ仮想機械配管システムの共同開発を容易にする例示的な方法を示すフローチャートである。
【図１５】１つの実施形態を実現可能なデータ処理システムを示すブロック図である。
【００１３】
詳細な説明
次に、機械配管システムを開発するためのシステムおよび方法に属する様々な技術について、図面を参照しながら説明する。それらの図中、同様の構成要素は全体を通じて同じ参照符号によって表されている。本明細書において本開示の基本原理を記述するために、以下で説明する図面および種々の実施形態が用いられているが、これらは例示の目的で用いたにすぎず、いかなるかたちであっても本開示の範囲の限定を意図したものではない。当業者であれば理解できるように、本開示の基本原理を、適切に構成された任意の装置において実現することができる。ここで理解されたいのは、特定のシステム要素によって実行されるものと記載された機能を、複数の要素によって実施することができる、という点である。同様にたとえば、複数の要素によって実行されるものと記載された機能を実施するように、１つの要素をコンフィギュレーションしてもよい。本願の数多くの革新的な着想について、例示的かつ非限定的な実施形態を参照しながら説明する。
【００１４】
図１を参照すると、仮想機械配管システムの共同開発を容易にする例示的なシステム１００が示されている。システム１００は少なくとも１つのプロセッサ１０２を含むことができ、このプロセッサは、本明細書で説明する種々の特徴を実施するために、メモリ１０６から１つまたは複数のアプリケーションソフトウェアコンポーネント１０４を実行するように、コンフィギュレーションされている。共同開発を実施するアプリケーションソフトウェアコンポーネント１０４は、１つまたは複数の要素から成る１つの独立したアプリケーションに相応するものとすることができ、かつ／または他の機能を実行するソフトウェアに統合／含めることができる。
【００１５】
たとえば、本明細書で説明する特徴を実施する上述のアプリケーションソフトウェアコンポーネント１０４を、ＣＡＤ／ＣＡＭ／ＣＡＥ（コンピュータ支援設計／コンピュータ支援製造／コンピュータ支援工学）ソフトウェア、および／またはＰＬＭソフトウェアならびに建築用ソフトウェア、および／または機械配管システムの開発に用いることのできる他のタイプのソフトウェアに相応させることができ、またはそれらに組み込むことができる。仮想機械配管システムの共同開発のために、本明細書で説明する機能の少なくともいくつかを含むように適合可能なＰＬＭソフトウェアおよび／またはＣＡＤ／ＣＡＭ／ＣＡＥソフトウェアの一例として、Siemens Product Lifecycle Management Software Inc. (Plano, Texas)から市販されているTeamcenter PLMおよび／またはNX suites of applicationsが挙げられる。
【００１６】
既述のシステムは、少なくとも１つの（表示画面などのような）ディスプレイデバイス１０８と、少なくとも１つの入力デバイス１１０とを含むことができる。たとえばプロセッサは、ＰＣ、ノートブックコンピュータ、ワークステーション、サーバ、タブレット、モバイルフォン、または他の任意のタイプのコンピュータシステムの一部分として含まれるものとすることができる。ディスプレイデバイスはたとえば、ＬＣＤディスプレイ、モニタおよび／またはプロジェクタを含むことができる。入力デバイスはたとえば、マウス、ポインタ、タッチスクリーン、タッチパッド、ドローイングタブレット、トラックボール、ボタン、キーパッド、キーボード、ゲームコントローラ、カメラ、ジェスチャ動作をキャプチャするモーションセンシングデバイス、または本明細書書で説明する入力を供給可能な他の任意のタイプの入力デバイスを含むことができる。同様にタブレットなどのデバイスのためにもプロセッサ１０２を、入力デバイスとディスプレイデバイスの双方として用いられるタッチスクリーンを含むハウジング内に組み込むことができる。さらに、（ゲームコントローラなどのような）いくつかの入力デバイスは、異なる複数のタイプの入力デバイス（アナログスティック、ｄパッドおよびボタン）を含むことができる、という点も理解されたい。
【００１７】
同様にここで述べておくと、本明細書で説明するプロセッサを、本明細書で説明するディスプレイデバイスおよび入力デバイスとは離れた場所にあるサーバ内に配置してもよい。かかる例によれば、既述のディスプレイデバイスおよび入力デバイスを、クライアントデバイス内に含めてもよく、このクライアントデバイスは、（インターネットを含むことのできる）有線または無線のネットワークを介してサーバ（および／またはサーバ上で実行される仮想マシン）と通信する。いくつかの実施形態によれば、かかるクライアントデバイスはたとえば、入力デバイスからサーバへ入力を送信し、かつサーバから視覚情報を受信してディスプレイデバイスにより表示する目的で、リモートデスクトップアプリケーションを実行することができ、またはサーバと共にリモートデスクトッププロトコルを実行することができる。かかるリモートデスクトッププロトコルの例として、Teradici社のPCoIP、Microsoft社のRDPおよびRFBプロトコルが挙げられる。かかる例によれば、本明細書で説明するプロセッサを、サーバの物理的プロセッサにおいて実行される仮想マシンの仮想プロセッサに対応させることができる。
【００１８】
いくつかの例示的な実施形態によれば、システムはさらにデータストア１１２を含むことができる。データストアは、（１つの構造の要素および各要素間の関係を指定する）オブジェクトデータ１１４、ＣＡＤデータ１１６（たとえば要素の構造の３Ｄの物理的形状およびコンフィギュレーションを指定するＣＡＤファイルなど）、および機械配管システムの開発に役立つ可能性のある他の任意のデータを含むことができる。本明細書で説明する１つまたは複数のデータストアとして使用することのできるデータベースの例として、Oracle, Microsoft SQL Serverまたはデータレコードを格納するように動作する他の任意のタイプのデータストアが挙げられる。
【００１９】
これに加え、既述のアプリケーションソフトウェアコンポーネント１０４は、ディスプレイデバイス１０８を介して、インタラクティブなグラフィカルユーザインタフェース（ＧＵＩ）１１８を生成することができる。ユーザはＧＵＩを用いて、少なくとも１つの配管経路１２０およびこの配管経路を有する要素を含む機械配管システムの三次元（３Ｄ）表現を生成、変更および表示することができる。さらにＧＵＩを用いて、配管経路（ならびに他の構造）を含む機械配管システムのためのオブジェクトデータ１１４およびＣＡＤデータ１１６に対応するデータを、データストア１１２に格納することができ、かつデータストア１１２から取り出すことができる。たとえば既述のＧＵＩ １１８は、データストアに格納されたオブジェクトおよびＣＡＤデータを介して機械配管システムを設計および閲覧しながら使用するための、ＣＡＤソフトウェアのＧＵＩを含むことができる。
【００２０】
図２には、ある船舶の船体に組み込まれている例示的な機械配管システム２００のイメージが描かれている。かかる機械配管システムは、複数のパイプライン配管経路２０２，２０４，２０６，２０８を含むことができ、これらは（タンクやエンジンなどのような）設備２１４を接続するパイプ２１０，２１２またはダクトといった要素を通して、流体（たとえば水、油、燃料、ガスおよび他の化学物質）の流れを生じさせる。かかるパイプライン配管経路には、継手２１６（たとえばフランジ／エルボ／Ｔ字管）およびそれらのパイプラインの構造において用いられるインライン設備（たとえばバルブ／ポンプ）などのような要素も含むことができる。これらに加えパイプライン配管経路には、センサ（たとえば温度計／圧力計）および様々な場所でパイプラインに取り付けまたは適用可能なインシュレーションを含むことができる。さらに配管経路周囲の周辺環境スペースは、壁、床２１８、手すり２２０、支持部材、および他の構造を含むことができる。海洋、航空宇宙、プラントおよびエネルギーといったいくつかの産業においては、配管システムの設計が、新たな船舶、ロケット、ビルディング、化学プラントまたは原子力エネルギープラントのための設計活動全体のうち、かなりの割合を占める可能性がある。
【００２１】
図３には、単一のパイプライン配管経路３２４を有する機械配管システム３２６の物理的構造の３Ｄ表現３００が示されている。この３Ｄ表現３００を、既述の少なくとも１つのプロセッサにおいて実行されるＣＡＤソフトウェアを含むアプリケーションソフトウェアコンポーネントを介して、ディスプレイデバイスにより出力することができる。この例の場合、配管経路には、ポンプ３０２およびタンク３２２などのような装備品に相応する２つの終端要素が含まれている。これら２つの終端要素の間に複数の中間要素が存在しており、これらは２つの終端要素間で流体を連通させることができる。この例によれば中間要素に含まれるのは、第１のフランジ３０４、第１のパイプ３０６、第１のエルボ３０８、第２のパイプ３１０、第２のフランジ３１２、第３のフランジ３１４、第３のパイプ３１６、第２のエルボ３１８、さらに複数の付加的な要素３２０である。
【００２２】
かかる構造を、配管アセンブリＣＡＤファイルを用いて管理することができる。図４には、図３に示したパイプライン配管経路３２４のかかるＣＡＤファイル４００の概略的表現が示されている。単一のＣＡＤファイルは個々のＣＡＤデータ４０２〜４２２を含むことができ、これらのデータによって、図３に示した機械配管経路３２４の個々の物理的要素３０２〜３２２各々について、３Ｄビジュアル表現がそれぞれ定義される。この例では、配管アセンブリＣＡＤファイル４００は、パイプラインの形状を具体的に定義する別個のワイヤフレームパス４２４を含むことができる。ＣＡＤファイル４００内のパイプラインの３Ｄ要素の個々のＣＡＤデータ４０２〜４２２を、このファイル内でワイヤフレームパスに沿ったポジションに関連づけることができる。したがってＣＡＤソフトウェアは、ファイルをオープンしてパイプライン配管アセンブリのレンダリングを生成することができ、その際、ワイヤフレームパスと関連づけられた３Ｄ要素各々がレンダリングされ、レンダリングされた要素がファイル内で指定されたとおりにワイヤフレームに沿って特定のポジションに配置される。
【００２３】
ここで理解されたいのは、かかる配管アセンブリの改訂中、ワイヤフレームパスを変更する目的で、配管アセンブリＣＡＤファイル４００をロックしなければならない場合もあり、そうなった場合には他のユーザに対しアクセスが阻止される、ということである。それぞれ異なるアプリケーション（たとえばそれぞれ異なる船舶設計）のために、（たとえば第２のタンクを含む）変更されたパスを有する機械配管システムの第２のコンフィギュレーションが必要とされるならば、配管アセンブリＣＡＤファイルの改訂バージョンを生成することができ、これには変更されたパスの付加的な要素および／または変更された要素が含まれる。かかる改訂ＣＡＤファイルは、変更されていない要素すべての複製を含むこともできる（配管システムに対し若干の改訂がなされただけであれば、それらが要素の大半となり得る）。
【００２４】
複数のユーザが、かかる機械配管システムのそれぞれ異なる部位を改訂する必要があるときに、フレキシビリティを高める目的で、図１に示されているように、データストア１１２に格納されている分散型配管パス１２２を生成および操作するように、１つの実施形態を構成することができる。このアプローチによれば、既述の配管アセンブリＣＡＤファイルの場合のように、制御要素において定義される明示的なワイヤフレーム配管パスは存在し得ない。その代わりに、分散型配管パス１２２は、データストア１１２に格納されたデータにおいて個々に相互にリンクされている要素自体のコンフィギュレーションに、（レンダリング時に）ダイナミックに基づく動的形状を有することができる。配管パスを定義するためのかかる分散型アプローチによって、複数の大規模な機械配管システムを同時に設計できるようになり、ユーザが配管パスの形状を明示的に管理しなくてもよくなる。むしろ、設計変更は要素自体に対して実施され、パスはそれらの要素から構成された結果として生じることになる。
【００２５】
たとえば図１を参照すると、システム１００の少なくとも１つのプロセッサ１０２は、第１および第２のコンピュータシステム（たとえばワークステーション）それぞれに含まれている第１および第２のプロセッサを含むことができる。（たとえばＣＡＤソフトウェアを含む）アプリケーションソフトウェアコンポーネントの第１および第２のインスタンスを以下のように実行するように、これらのプロセッサ各々をコンフィギュレーションすることができる。すなわち、第１および第２のコンピュータシステムによってそれぞれ異なるユーザが同時に、配管経路における要素のそれぞれ異なるサブセットをロードして、これに設計変更を加え、分散型配管パスに対する相応の変更を同じデータストアに格納できるようにするのである。
【００２６】
１つの実施形態によれば、分散型配管パスを定義する個々の要素を、（ＰＬＭシステムのリレーショナルデータベースなどのような）データストア１１２内に個々のビジネスオブジェクトとして格納されたコンポーネントおよびコンポーネントに対する改訂に対応させることができる。要素各々は、それら固有の独立したライフサイクルを有することができ、部品表においてコンフィギュレーション可能である。本明細書で説明する配管システムのビジネスオブジェクトを管理するために使用可能なＰＬＭフレームワークの例として、２０１３年９月１２日公開の米国特出願公開第２０１３２３８５０８号明細書（US Publication No. 2013238508）を挙げることができる。ここでこの文献を参照したことにより、その開示内容全体が本明細書に取り込まれたものとする。
【００２７】
いくつかの例示的な実施形態によれば、分散型配管パスをデータとしてデータストアに格納するために、データストアは（テーブルなどのような）複数のデータ構造を含むことができ、それら複数のデータ構造をひとまとめにして使用することにより、分散型配管パスを生成（および決定）するために使用すべき関係を格納することができる。図５には、例示的な配管経路５００の概略的表現が示されており、これを既述の分散型配管パスによるデータとして表すことができる。この例の場合、配管経路５００は、２つの終端要素５０２、５０８（ＲＤＥ１／Ａ，ＲＤＥ２／Ａ）と、これらの終端要素に接続されかつ相互に接続された２つの中間要素５０４，５０６（ＳＤＥ１／Ａ，ＳＤＥ２／Ａ）とを含んでいる。この例によれば、２つの終端要素を（既述のポンプやタンクなどの）装備に相応するものとすることができ、中間要素をフランジ、パイプまたは他のパイプライン部品に相応するものとすることができる。
【００２８】
図６は、図５に示した配管経路５００のための分散型配管パス６００の一例を示す。この図には、データストアに格納された１つまたは複数のテーブルおよびテーブルレコードにより表すことのできる上位レベルのオブジェクトセット６１０によって、分散型配管パスが示されている。この例によれば、分散型配管パスの終端要素５０２，５０８（ＲＤＥ１／Ａ，ＲＤＥ２／Ａ）を指定する配管パスグループ６０２（Ｇ１）を格納するように、データストアをコンフィギュレーションすることができる。これに加え、分散型配管パスに含めるべき要素ペア間の関連づけを定義する配管パスリンク６０４，６０６，６０８（Ｌ１，Ｌ２，Ｌ３）を格納するように、データストアをコンフィギュレーションすることができる。かかる要素ペアは、終端要素５０２，５０８（ＲＤＥ１／Ａ，ＲＤＥ２／Ａ）と、１つまたは複数の（一般的にはもっと多くの）中間要素５０４，５０６（ＳＤＥ１／Ａ，ＳＥＤ２／Ａ）とを含むことができる。リンク６０４，６０６，６０８（Ｌ１，Ｌ２，Ｌ３）各々は、これらが関連づけられた特定の配管パスグループ６０２（Ｇ１）を指定することもできる。
【００２９】
したがって、このような既述のデータから分散型配管パスを再生成するために、所望の機械配管経路５００の配管パスグループ６０２（Ｇ１）およびこの配管パスグループに関連づけられた配管パスリンク６０４，６０６，６０８（Ｌ１，Ｌ２，Ｌ３）を、データストアから取り出すように、（ＣＡＤソフトウェアなどのような）アプリケーションソフトウェアコンポーネントをコンフィギュレーションすることができる。アプリケーションソフトウェアは、取り出されたこのデータを使用して、分散型配管パスの終端要素５０２，５０８（ＲＤＥ１／Ａ，ＲＤＥ２／Ａ）と、中間要素５０４，５０６（ＳＤＥ１／Ａ，ＳＤＥ２／Ａ）とを決定することができる。
【００３０】
決定された要素各々についてアプリケーションソフトウェアコンポーネントは、これらの要素の物理的構造の３Ｄ表現を生成するために使用可能な相応のＣＡＤデータ（ＣＡＤファイルなど）をデータストアから取り出すように、動作することもできる。いくつかの例示的な実施形態によればデータストアは、ＣＡＤファイルなどのＣＡＤデータをデータストアのデータレコードに格納することができる。ただし他の実施形態において、データストアを以下のような分散型システムに対応させることができる、ということを理解されたい。すなわちこの分散型システムは、リレーショナルデータベースとファイルサーバとを含み、この場合、リレーショナルデータベースに格納されたＣＡＤデータが、ファイルサーバ（または他のタイプのデータストア）から取り出す特定のＣＡＤファイルを指定するのである。さらにいくつかの例示的な実施形態によれば、配管経路の個々の要素各々についてＣＡＤデータを別個のＣＡＤファイルおよび／またはデータレコードに配置できる、ということを理解されたい。しかしながら他のコンフィギュレーションによれば、それぞれ異なる要素のＣＡＤデータを、同じＣＡＤファイルおよび／またはＣＡＤデータレコードから別個に取り出すことができる。
【００３１】
これに加え配管パスリンクは、指定された要素ペアのＣＡＤデータ中、いずれのオブジェクト（たとえば終端、ポート、接続ポイント）を互いに接続すべきであるのかを指定する情報（たとえばハンドルデータ）を含むことができる。例示的なアプリケーションソフトウェアコンポーネントは、要素のＣＡＤデータおよび配管パスリンクにおけるデータに応答して、機械配管経路５００の３Ｄ表現をディスプレイデバイスを介してダイナミックにレンダリングすることができる。ここでアプリケーションソフトウェアは、配管経路の仮想３Ｄ表現をダイナミックに組み立てるために、配管パスリンクと、（要素のいずれの部分を互いに接続するのかを指定する）ハンドルデータと、要素のＣＡＤデータ中で定義された要素のコンフィギュレーション／形状とに基づき、いずれの要素をロードし、いずれの場所にそれらの要素を配置し、いずれの場所で要素ペアを接続するのか、を決定する。配管パスリンクがＰＬＭシステムのデータストアに格納されている例示的な実施形態によれば、かかる配管パスリンクを、（たとえばＣＡＤソフトウェアを含むことができる）既述のアプリケーションソフトウェアコンポーネントによって管理されるＰＬＭシステムに格納されたオブジェクトに相応するものとすることができる。
【００３２】
図７には、図５に示した機械配管経路５００の分散型配管パス６００を格納する目的で、ＰＬＭシステムのデータストア内の複数のテーブルに格納可能なデータレコード７００の一部分のセットが示されている。この例によれば、既述の配管パスグループ６０２（Ｇ１）を接続グループレコード７０２に格納することができ、この接続グループレコード７０２によって、終端要素のデータストアに格納されたコンポーネントレコード７０４，７０６に対する特定の参照を介して、２つの既述の終端要素（ＲＤＥ１／Ａ，ＲＤＥ２／Ａ）が指定される。かかるコンポーネントレコードは、要素の物理的構造の３Ｄ表現のレンダリングに用いるために、特定のＣＡＤデータを（データストア内の他のレコードに対する関連づけを介して）参照することができる。
【００３３】
この例の場合にも、既述の配管パスリンク６０４，６０６，６０８（Ｌ１，Ｌ２，Ｌ３）を、複数の関連づけられたリンクレコードの組み合わせとして、データストアに格納することができる。かかる関連づけられたリンクレコードは、グループレコード７０２を参照するグループリンクレコード７０８，７１０，７１２を含むことができる。さらにかかる関連づけられたリンクレコードは、リンク要素レコード７１４〜７２４（リンクＬ１，Ｌ２，Ｌ３ごとに２つ）を含むこともでき、これらのリンク要素レコード７１４〜７２４は、データストアに格納された終端コンポーネント（ＲＤＥ１／Ａ，ＲＤＥ２／Ａ）のコンポーネントレコード７０４，７０６に対する特定の参照と、中間コンポーネント（ＳＤＥ１／Ａ，ＳＤＥ２／Ａ）のコンポーネント参照７２６，７２８とを介して、分散型配管パスの要素すべてをそれぞれ指定する。
【００３４】
分散型配管パスの要素が、アプリケーションソフトウェアコンポーネントによって（たとえばＣＡＤソフトウェアなどによって）コンフィギュレーションされてロードされる場合には、配管パスリンクのハンドルデータを処理して、ランタイム３Ｄジオメトリ制約ネットワークをメモリに生成することができる。このネットワークによってアプリケーションソフトウェアコンポーネントは、（ＧＵＩを介した）要素とのユーザインタラクションを、形状およびポジションの変化に変換することができ、さらに各要素間の配管パスリンクに対する変更を捕捉することもできる。
【００３５】
生成／消去／更新されたすべての配管パスリンクおよびＣＡＤデータを、アプリケーションソフトウェアコンポーネントによってＰＬＭシステムのデータストアに戻して存続させることができる（すなわち格納することができる）。次いでユーザは、分散型配管パスの接続された複数の要素から成るそのつど一時的な任意の集合（たとえばサブセット）を、アプリケーションソフトウェアコンポーネントにロードすることができ、設計変更を加えることができる。それらの要素は、上述のようにデータストア内に分散されているので、アプリケーションソフトウェアコンポーネントは、分散型配管パス全体ではなくその一部の部位のみをロードして操作することができる。
【００３６】
ただしここで理解されたいのは、分散型配管パスの一部の部位だけが１つまたは複数の設計変更を有する場合に、分散型配管パスのうちロードされていない他の部位に対し、かかる設計変更が影響を及ぼす可能性もあるし、または及ぼさない可能性もある、ということである。設計変更により分散型配管パスの他の部位に及ぼされた可能性のある影響を評価するために、配管パスリンクの例示的な実施形態は整合性データを含むことができる。たとえばアプリケーションソフトウェアコンポーネントを、データストア内の関連づけられたリンクレコードに（最終変更日時などのような）整合性データを格納するように、コンフィギュレーションすることができる。この場合、ロードされた要素のうち１つまたは複数の要素に対する何らかの設計変更によって、何らかの２つの要素間のリンクが無効とされ、したがって設計変更とロードされなかった要素との間の整合性について分散型配管パスの評価が必要とされるか否かを、上述の整合性データを使用して判定することができる。
【００３７】
以下でさらに詳しく述べるように、リンクにより指定された要素ペアのうちの一方が、アプリケーションソフトウェアコンポーネントよって改訂された場合には、配管パスリンクについてかかる整合性データが変化する可能性がある。配管パスリンクにおける整合性情報の比較によって、上述のアプリケーションソフトウェアコンポーネントは、以下のように動作することができる。すなわち、リンクおよび対応する要素のすべてが動作する機械配管構造を定義し続けている、ということを検証するために、分散型配管パスの再評価がいつ必要になり得るのかを決定し、定義し続けていないのであれば、いくつかの要素に加えられた変更に合わせて要素に対し付加的に改訂が必要になり得ることを、ユーザにフラグで通知するのである。
【００３８】
図８には、図３に示した機械配管システム３２６の改訂により生成可能な機械配管システム８１８の物理的構造の３Ｄ表現８００が示されている。この第２の改訂はたとえば、配管システムが必要とされる周辺環境スペースの異なるバリエーションに対して、必要とされる可能性がある。たとえば図３に示した配管システム３２６を、第１のタイプの船舶の船体に関するものすることができる一方、図８に示した配管システム８１８を、第２のタイプの船舶のための、上述の船体の１つのバリエーションに関するものとすることができる。
【００３９】
この改訂によれば、（図３に示した）単一のパイプライン配管経路３２４が、アプリケーションソフトウェアコンポーネントを介して、２つのパイプライン配管経路８１４，８１６を含むように変更されている。これら２つのパイプライン配管経路８１４，８１６は、ポンプ３０２の共通の終端要素から出発しているが、これらは分岐して２つの異なる終端要素のところに別々に延在し、これら２つの異なる終端要素は元の第１のタンク３２２および新たな第２のタンク８１２を個々に含んでいる。
【００４０】
この改訂をアプリケーションソフトウェアコンポーネントによって達成する目的で、ユーザは、両方のバリエーションに適用可能な元の配管システム３２６のできるかぎり多くの部分を維持する、ということを選択できる。したがって両方の配管経路８１４，８１６は、ポンプ３０２と、第１のフランジ３０４から第２のフランジ３１４までの中間要素とを維持することができる。同様に元の第２のエルボ３１８、第１のタンク３２２および付加的な中間要素３２０も、新たな改訂において維持することができる。しかしながら第２の配管経路８１６に合わせるために、（図３に示した）元の第３のパイプ３１６を、（第２のタイプの船舶についてのみ）それよりも短い２つの新たな第７および第８のパイプ８０２，８０６およびそれらの間のＴ字管８０４から成るセットと置き換えることができる。次いで、第２の配管経路８１６をＴ字管８０４から継続させることができ、ユーザはアプリケーションソフトウェアコンポーネントを使用して、第９のパイプ８０８と複数の付加的な中間要素８１０と第２のタンク８１２とを追加することができる。
【００４１】
この例によれば、ユーザが新たな配管システム８１８を生成するときに、アプリケーションソフトウェアコンポーネントは、第１および第２の経路８１４，８１６各々のための新たな分散型配管パスに対応する新たなデータオブジェクトおよび相応のデータレコードを、データストア内に生成するように動作可能である。かかる新たな分散型配管パスは、元の配管経路３２４から変更されないまま存続している配管パスリンクのデータオブジェクトを含むことができる。ただしかかる新たな分散型配管パスは、新たな中間要素８０２〜８１０と新たな終端要素８１２すべての接続に関する新たなリンク、ならびに古い中間要素（たとえば第３のフランジ３１４および第２のエルボ３１８）と新たな中間構造（第７および第８のパイプ８０２，８０６）との間の接続に関する新たなリンクを含むことになる。
【００４２】
図９には、データストアに格納可能なオブジェクトセットが示されており、これは以下のような例示的手法を示している。すなわちこれによれば、図３に示した元の配管システム３２４の単一のパイプライン配管経路３２４と、図８に示した新たな配管システム８１８の２つのパイプライン配管経路８１４，８１６の双方を表現できるように、分散型配管パス９００を組織化することができる。
【００４３】
この例の場合、データストアを、図３および図８に示された要素を表現する各オブジェクト間の配管パスリンク９０２〜９２６（Ｌ１〜Ｌ１９）を格納するためのものとすることができる。また、データストアを、図３および図８に示したパイプライン配管経路３２４，８１４，８１６に対応する３つの配管パスグループ９２８，９３０，９３２（Ｇ１，Ｇ２，Ｇ３）を格納するためのものとすることができる。リンク９０２〜９１２（Ｌ１〜Ｌ６）は３つの経路すべてに共通であり、したがってこれらのリンクを、データストアに格納されるためのものである３つのグループ９２８，９３０，９３２（Ｇ１，Ｇ２，Ｇ３）すべてに関連づけることができる。リンク９１８，９２０（Ｌ１５，Ｌ１６）は、（図８に示した）２つの新しい方の経路８１４，８１６に共通であり、データストア内においてグループ９３０，９３２（Ｇ２，Ｇ３）のみに関連づけることができる。ただしリンク９１４，９１６（Ｌ７，Ｌ８）はたとえば、第１の配管パスグループ９２８（Ｇ１）のみに関連づけることができる。同様にリンク９２２，９２４（Ｌ１７，Ｌ１８）は、第２の配管パスグループ９３０（Ｇ２）のみに関連づけることができる。さらに同様にリンク９２６（Ｌ１９）は、第３の配管パスグループ９３２（Ｇ３）のみに関連づけることができる。
【００４４】
（図８に示した）配管システム８１８のために新たなデータを追加することに伴い、第１のタイプの船舶にとっては有効であっても、第２のタイプの船舶にとっては有効でないというように、（図３に示した）元の配管システム３２６の「有効性」が縮小される可能性がある。その結果、第３のパイプ３１６などのような要素のためのデータは、第１のタイプの船舶にしか適用できない可能性がある一方、新たな配管システムの要素のために追加されたデータ（たとえば第２のタンク８１２）は、第２のタイプの船舶のためにしか適用できない可能性がある。同様に、両方の設計は多くの要素と配管パスリンクを共有しているにもかかわらず、第２の配管システム８１２の追加によっても、元の配管システム３２６を再確認する必要がない場合もある。このような結果が生じる理由は、元の要素のいずれも改訂されてはおらず、元の配管システム３２６のための分散型配管パスの配管パスリンクのいずれも無効にはならず、またはデータストアに対する新たな配管システム８１２の追加と不整合になることがないからである。
【００４５】
オブジェクトをデータストアに格納するためのこの例示的なフレームワークは、高水準の同時設計活動のサポートすることができる。たとえば船舶などのような大規模な製品の場合、配管システムはその全長にわたり広がっている可能性がある。この例示的なフレームワークによれば、複数のユーザ（たとえば設計エンジニア）が互いに干渉し合うことなく同時に３Ｄ設計に取り組むことができる。さらにこの例示的なフレームワークによれば、ある１人のユーザは、多数の設計バリエーション間で共有されている要素をロードする必要なく、ある１つの特定のバリエーションに固有の設計部位に取り組むこともできる。
【００４６】
これらの特徴を実施するため、例示的なアプリケーションソフトウェアコンポーネントによってシステムの一部の部位を「ゾーン」によって、またはサブシステムによって、種々のユーザに対して分散させることができ、これによって複数のユーザが設計中の配管パスの一部分に含まれるべき要素を細分化できるようになる。たとえば、図３に示した既述の配管経路３２４を、第１の船体設計に関連づけることができる一方、図８に示した第２および第３の配管経路８１４，８１６を、第２の船体設計に関連づけることができる。この例示的なフレームワークによって、それぞれ異なるユーザが、第２の船体の第２および第３の配管経路に関連づけられた種々の要素をロードすることができ、その際に第３のユーザが第１の船体と第２の船体の双方に共通する要素をロードおよび改訂する能力が排除されることがない。かかる特徴によって、データ管理および設計変更の検証にかかるコストを低減することができ、したがって生産性が高まり、かつ製品開発プロセスのコスト全体を低減することができる。
【００４７】
１つの例示的な実施形態によれば、既述のアプリケーションソフトウェアコンポーネントを、ユーザがＧＵＩ（たとえばＣＡＤソフトウェアのＧＵＩなど）を介して、設計中のパイプライン配管経路に関してデータストアに格納された分散型配管パスを生成および変更できるように、コンフィギュレーションすることができる。かかるソフトウェアによってユーザは、配管経路について名称および説明を規定することができ、さらにどの終端要素が進路の境界を成すのかを定義することができる。これに加えソフトウェアによってユーザは、データストアに格納されたＣＡＤデータに基づき画面を通して、各終端要素間に３Ｄ表現を有する中間要素をグラフィックで挿入および／または描画することができる。図３および図８には、設計中の配管経路の要素について表示可能なかかる３Ｄ表現の例示的な表示が描かれている。同様にこのソフトウェアは、終端要素と中間要素の選択および配置に応答して、データストアにデータレコードとして格納されるオブジェクトとして、既述の配管パスグループおよびリンクを生成することもできる。
【００４８】
以降の時点で、アプリケーションソフトウェアコンポーネントによってユーザは、配管パスの要素のすべてまたは一部分をロードすることができ、このケースではアプリケーションソフトウェアコンポーネントは、データストア内のデータに応答して、画面を介して配管パスの要素の３Ｄ表現を再生成することができる。アプリケーションソフトウェアコンポーネントによってユーザはさらに、いくつかの要素の外観たとえばそれらのサイズや形状などを変更することができ、それを配管パスの改訂バージョンとしてデータストアに戻して保存することができる。かかる改訂が生成された場合、アプリケーションソフトウェアコンポーネントは以下のように動作することができる。すなわち、それらの要素に対する改訂に関して新たなオブジェクトを生成してデータストアに格納し、さらに配管パスの以前のバージョンから変更されていない要素のいずれかに戻るように、改訂された新たな要素を接続する新たな配管パスリンクを生成するのである。
【００４９】
ただし既述のようにユーザは、複数の要素から成る１つのサブセットだけを配管パスの元のバージョンからロードして変更する、ということを選択してもよい。ロードされたかかる要素に対する改訂は、ロードされていない配管パスの要素の外観に影響を及ぼすかもしれないし、または及ぼさないかもしれない。図１０〜図１２に示されている例示的なプロセスにおいて、かかる改訂を既述のアプリケーションソフトウェアコンポーネントによって処理することができる。
【００５０】
たとえば図１０には、図６に示した分散型配管パス６００のオブジェクトに対応する上位レベルのオブジェクトセット１０００が示されている。この例によればユーザは、アプリケーションソフトウェアコンポーネントを使用して、終端要素５０２（ＲＤＥ１／Ａ）のみをロードし、この要素に対し改訂を加えて、改訂された終端要素１００２（ＲＤＥ１／Ｂ）を生成する、ということを選択できる。この図の場合、実線のブロックはロードされた要素を表す一方、破線のブロックはロードされていない要素を示す。第１の中間要素５０４（ＳＤＥ１／Ａ）はロードされていないので、第１の配管パスリンク６０４（Ｌ１）は、改訂された第１の中間要素１００２（ＳＤＥ１／Ｂ）と整合しないおそれのある接続を、または問題を引き起こすおそれのある接続を、表す可能性がある。たとえば、第１の中間要素が改訂された終端要素と物理的に接続される個所であるポートの一部分が動かされてしまった可能性があり、したがって中間要素の目下の形状および／または長さであると、改訂された第１の終端要素と第２の中間要素５０６（ＳＤＥ２／Ａ）の双方に接続できない可能性がある。
【００５１】
第１のリンク６０４（Ｌ１）が有効である（すなわち接続された要素ペア間で整合している）か否かを検証するためには、改訂された第１の終端要素１００２（ＲＤＥ１／Ｂ）と、第１の中間要素５０４（ＳＤＥ１／Ａ）の両方とも、ユーザがアプリケーションソフトウェアコンポーネント（たとえばＣＡＤソフトウェア）にロードすることが必要となる可能性がある。これが実施されたならば、ソフトウェアコンポーネントは、改訂された第１の終端要素と第１の中間要素の双方に関連づけられたリンクについて最終変更日時を比較するように動作可能である。この例の場合には、改訂が加えられたときに第１の終端要素だけしかロードされなかったので、改訂された第１の終端要素に関連づけられた第１のリンクの最終変更日時は、第１の中間要素に関連づけられた第１のリンクの最終変更日時よりも新しい、ということになる。アプリケーションソフトウェアコンポーネントは、より新しい日時を検出し、改訂された第１の終端要素と第１の中間要素との間の接続を有効にしなければならない可能性がある、という何らかの視覚的インジケータをＧＵＩに供給させるように、動作することができる。
【００５２】
図１１には、第１の改訂された終端要素１００２（ＲＤＥ１／Ｂ）と中間要素５０４（ＳＤＥ１／Ａ）の双方が、アプリケーションソフトウェアコンポーネントにロードされた後の、分散型配管パスのオブジェクトの例１１００が示されている。ただしここでは、第２の中間要素５０６（ＳＤＥ２Ａ）はロードされていないままである。この例によればユーザは、改訂された第１の終端要素と第１の中間要素との間のリンクが良好である、ということを検証することができ、第１のリンク６０４（Ｌ１）を更新させることができ、その結果、それらの最終日時が等しくなり、それらの要素間で整合性のある良好な接続を表すことになる。
【００５３】
同様にこの例によればユーザは、第１の中間要素５０４（ＳＤＥ１／Ａ）を改訂し（たとえばそれが長くなるようにし）、それにより改訂された第１の中間要素１１０２（ＳＤＥ１／Ｂ）が生成される、ということも選択できる。この場合、改訂された第１の終端要素１００２（ＲＤＥ１／Ｂ）と、改訂された第１の中間要素（ＳＤＥ１／Ｂ）の両方がロードされるので、ユーザはこれらの要素間の接続を検証することができ、第１のリンク６０４（Ｌ１）の最終変更日時が一致して、良好な接続を表すことになる。ただし、第２の中間要素５０６（ＳＤＥ２／Ａ）はロードされないので、第２のリンク６０６（Ｌ２）は有効であるかもしれないし、有効でないかもしれない。よって、第２のリンクを有効にするために、ユーザは第２の中間要素５０６（ＳＤＥ２／Ａ）をロードすることができる。
【００５４】
図１２には、改訂された第１の終端要素１００２（ＲＤＥ１／Ｂ）と、改訂された第１の中間要素１１０２（ＳＤＥ１／Ｂ）と、第２の中間要素５０６（ＳＤＥ２／Ａ）が、アプリケーションソフトウェアコンポーネントにロードされた後の、分散型配管パスのオブジェクトの例１２００が示されている。この例によればユーザは、改訂された第１の中間要素と第２の中間要素との間のリンクが整合性について問題を有している（たとえば整列されていない）、という判定を下すことができる。このためユーザは、第２の中間要素を改訂して、改訂された第１の中間要素１１０２（ＳＤＥ１／Ｂ）と両立性のある改訂された第２の中間要素１２０２（ＳＤＥ２／Ｂ）を生成する、ということを選択できる。アプリケーションソフトウェアコンポーネントの１つの例示的な実施形態は、（最終変更日時の不一致を介して）第２のリンク６０６（Ｌ２）が良好でないことを検出し、かつ（第２のリンクの一部である）第２の中間要素が改訂されたことを検出するように、動作可能である。この判定に応答して、改訂された第１の中間要素１１０２（ＳＤＥ１／Ｂ）と改訂された第２の中間要素１２０２（ＳＤＥ２／Ｂ）との間に、新たな第４のリンク１２０４（Ｌ４）を自動的に生成するように、アプリケーションソフトウェアコンポーネントをコンフィギュレーションすることができる。
【００５５】
なお、アプリケーションソフトウェアコンポーネントによってユーザは１つの配管パスを、１つまたは複数の改訂された要素を含む改訂された新たな配管パスとして保存できる、ということを理解されたい。この状況において、改訂された何らかの新たな要素と、改訂されていない（元の配管パスにも存続している）古い要素との間に、新たな配管パスリンクを自動的に生成するように、アプリケーションソフトウェアコンポーネントをコンフィギュレーション可能である。
【００５６】
大規模なプロジェクトであると、それぞれ異なるユーザが１つの構造のそれぞれ異なる設計範囲の設計を担当する場合もある、ということを理解されたい。たとえば設計マネージャは、上位レベルにおいて、機械配管経路の汎用的なコンポーネントの論理的表現に対応する論理的設計を指定することができ、論理的設計の実装に必要とされる固有の３Ｄ構造の設計に関する詳細を、他のユーザに任せることができる。既述のアプリケーションソフトウェアコンポーネントの１つの例示的な実施形態は、以下のようなコンポーネントを含むことができる。すなわちこのコンポーネントによってユーザは（入力デバイスによる入力を介して）、（論理的デザイナコンポーネントによる）論理的配管経路と、（３Ｄ ＣＡＤソフトウェアコンポーネントによる）論理的経路のための３Ｄ機械設計の双方を、生成できるようになる。
【００５７】
図１３には、ＧＵＩからの出力１３００の一例が示されている。この出力は、アプリケーションソフトウェアコンポーネントにより生成可能であり、このアプリケーションソフトウェアコンポーネントを用いて生成された論理的配管設計１３０２に相応する。かかる論理的設計を、図３に示したパイプライン配管経路３２４に対応する論理的経路のためのものとすることができる。かかる論理的設計により、２Ｄシンボルおよびグラフィックスを介してたとえば、ポンプ１３０４などのような第１の装備、タンク１３０６などのような第２の装備、およびそれらの間の汎用的な接続１３０８（Ｃ１／Ａ）に対する要求を、幅広く定義することができる。かかる論理的設計１３０２をデータストアに保存するように、アプリケーションソフトウェアコンポーネントをコンフィギュレーションすることができる。アプリケーションソフトウェアコンポーネントの一部分を介して物理的パイプライン配管経路３２４を設計するユーザは、論理的設計１３０２をテンプレートおよび／またはチェックリストとして使用して、論理的設計を達成するために必要とされるコンポーネントの形状を指定する物理的設計において、論理的設計から上位レベルの特徴のすべてを、捕捉することができる。
【００５８】
アプリケーションソフトウェアのいくつかの例示的な実施形態によれば、ユーザは、データストアに分散型配管パスとして格納された物理的要素（すなわちデータオブジェクト）と、論理的設計において指定された対応する論理的コンポーネントと間の関連づけを、データストアに格納することによって、論理的設計が達成されたことを指示することもできる。アプリケーションソフトウェアコンポーネントは、論理的コンポーネントと物理的要素との間のかかる相互関係を使用することができ、それによってユーザは、ある１つのプロジェクトのために設計作業の検討および検証を実施するときに、対応する論理的設計コンポーネントの対応する物理的設計要素を選択および閲覧することができる。
【００５９】
次に図１４を参照しながら、種々の例示的な方法について呈示し説明する。これらの方法を、１つのシーケンス内で実施される一連のアクションとして説明するけれども、これらの方法はこのシーケンスの順序によって限定されるものではない、という点を理解されたい。たとえばいくつかのアクションを、ここで説明するのとは異なる順序で生じさせてもよい。これに加え、あるアクションを他のアクションと同時に生じさせてもよい。しかもいくつかの事例においては、ここで説明する方法を実現するために、すべてのアクションが必要とされるわけでもない。
【００６０】
ここで特に述べておきたいのは、本開示には、完全に機能的なシステムおよび／または一連のアクションに関連した説明が含まれているけれども、当業者であれば理解できるように、本開示におけるメカニズムおよび／または説明するアクションの少なくとも一部分は、機械で使用可能な、コンピュータで使用可能な、またはコンピュータで読み取り可能な、非一時的な媒体内に含まれるコンピュータにより実行可能な命令として、任意の種類の形態で配布可能であり、さらに本開示は、そのような配布物を実際に実行するために、特定のタイプの命令または信号担体または記憶媒体が使用されようとも、等しく適用される。機械で使用可能／読み取り可能またはコンピュータで使用可能／読み取り可能な非一時的媒体の例を以下に挙げておく：ＲＯＭ、ＥＰＲＯＭ、磁気テープ、フロッピーディスク、ハードディスクドライブ、ＳＳＤ、フラッシュメモリ、ＣＤ、ＤＶＤおよびブルーレイディスク。コンピュータで実行可能な命令として、ルーチン、サブルーチン、プログラム、アプリケーション、モジュール、ライブラリ、実行スレッド、および／またはこれらと同等のもの、を挙げることができる。さらに、方法のアクションの結果を、コンピュータ読み取り可能媒体に記憶することができ、ディスプレイデバイスに表示することができ、および／または同等のことを実施することができる。
【００６１】
図１４を参照すると、ここには仮想機械配管の共同開発を容易にする方法１４００が示されている。この方法を、ステップ１４０２から開始させることができ、この方法は、少なくとも１つのプロセッサのオペレーションによって実施される複数のアクションを含むことができる。これらのアクションは、以下のようなアクション１４０４を含んでいる。すなわちこのアクション１４０４は、少なくとも１つの入力デバイスを介して供給される入力に応答して、複数の要素から成る１つのセットにより構成された配管経路の設計を生成し、この配管経路に対応する分散型配管パスをデータストアに格納させる。この例によれば、分散型配管パスを、２つの終端要素を指定するデータと、複数の配管パスリンクとによって構成することができ、これらの配管パスリンクによって、複数の中間要素間の接続、および各終端要素と複数の中間要素のうち個々の１つの中間要素との間の接続が指定される。
【００６２】
これに加えてこの方法は、以下のようなアクション１４０６を含むことができる。すなわちこのアクション１４０６は、データストアに格納された分散型配管パスと、分散型配管パスの配管パスリンクにより指定された終端要素および中間要素の物理的構造を表すデータとに少なくとも部分的に基づき、配管経路の３Ｄ表現をディスプレイデバイスに出力させる。ステップ１４０８において、この方法を終了させることができる。
【００６３】
さらにこの方法１４００は、システム１００に関してこれまで説明してきた他のアクションおよび特徴を含むことができる、ということを理解されたい。たとえば、終端要素と中間要素の物理的構造を表すデータは、ＣＡＤデータを含むことができる。さらにこの方法は、以下を含むことができる。すなわちプロセッサが、分配型配管パスの少なくともいくつかの要素に対応するデータからＣＡＤデータをロードし、それによって、配管パスリンクとＣＡＤデータの少なくとも一部分に少なくとも部分的に基づき、配管経路の３Ｄ表現の少なくとも一部分が形成されるように統合されて配置された、ロードされた複数の要素から成る物理的構造の３Ｄ表現を、ディスプレイデバイスに出力させるようにする。
【００６４】
同様にこの方法は、以下を含むことができる。すなわち、プロセッサがメモリ内で３Ｄジオメトリ制約ネットワークを形成し、この制約ネットワークを介して配管経路の要素の形状およびおポジションを、少なくとも１つの入力デバイスを介した入力によって変更可能である。さらにこの方法は、以下を含むことができる。すなわちプロセッサが、要素に対する変更に基づき各要素間の配管パスリンクを生成、消去および／または更新し、配管パスリンクとＣＡＤデータとに対する変更をデータストアに格納する。
【００６５】
いくつかの例示的な実施形態によれば、この方法は以下を含むことができる。すなわちプロセッサが、配管経路の複数の要素から成る１つのサブセットのＣＡＤデータをロードしてそれに設計変更を加え、その際、配管経路の要素すべてのＣＡＤデータをメモリにロードする必要がない。同様にこの方法は、以下を含むことができる。すなわち設計変更により、設計変更とロードされなかった要素との間の整合性について配管経路の評価が必要とされるか否かを表す各配管パスリンクにおけるデータを、プロセッサがデータストアに格納する。さらにこの方法は、以下を含むことができる。すなわち、設計変更により整合性について配管経路の評価が必要とされるか否かを表すデータストア内の配管パスリンクにおけるデータに少なくとも部分的に基づき、何らかの２つの要素間の配管パスリンクが無効であるか否かを判定する。
【００６６】
かかるアクションによってこの例示的な方法は、以下のようなアクションを実施することができる。すなわちそれらのアクションによれば、第１および第２のプロセッサが、配管経路の複数の要素から成るそれぞれ異なるサブセットを同時にロードして、それらに設計変更を加え、分散型配管経路に対する相応の変更を同じデータストアに格納するのである。
【００６７】
これに加えいくつかの例示的な実施形態によれば、ＣＡＤデータは、分散型配管パスのリンクによって指定された中間要素と終端要素の各々について個々に、ＣＡＤファイルを含むことができる。さらにこれに加え、各配管パスリンクはハンドルデータを含むことができ、このハンドルデータによって、各配管パスリンクにおいて指定された要素ペアについて、ＣＡＤデータ中のいずれのＣＡＤオブジェクトが互いに接続されるのか、が指定される。
【００６８】
既述のこの例によればこの方法は、以下を含むことができる。すなわち、配管経路の仮想３Ｄ表現をダイナミックに組み立てるために、配管パスリンクにおいて指定された要素ペアと、配管パスリンクに含まれるハンドルデータと、配管パスリンクにより指定された要素のＣＡＤデータ中で定義された要素のコンフィギュレーションとに基づき、いずれの要素をロードし、いずれの場所にそれらの要素を配置して、いずれの場所で要素ペアを接続するのか、を決定するのである。
【００６９】
同様にこの例示的な方法は、以下を含むことができる。すなわちプロセッサは、少なくとも１つの入力デバイスを介して供給される入力に応答して、配管経路の実装に使用するための論理的コンポーネントを指定する配管経路の論理的表現の設計を生成する。これに加えこの方法は、以下を含むことができる。すなわちプロセッサは、少なくとも１つの入力デバイスを介して供給される入力に応答して、論理的コンポーネントと、分散型配管パスにより指定された終端要素および中間要素との関連づけにより達成される論理的表現を表すデータを、データストアに格納する。
【００７０】
既述のように、これら上述のアクションを介して設計中の配管経路は、パイプライン装備の形態の各終端要素間で流体を移動させるパイプラインを含むことができる。設計が生成されてデータストアに格納されると、例示的な方法はさらに、設計された配管経路を使用するアクションを実施することができる。
【００７１】
かかるアクションとして、（データストア内の分散型配管パスとＣＡＤデータとに基づき）製品図面および／またはＢＯＭの生成を挙げることができる。この場合、ＢＯＭによって、船舶、航空機、ビルディングまたは他の構造物などのような物理的構造上に／物理的構造内に配管経路を構築するために使用可能な特定のコンポーネント（およびそれらの量）が指定される。かかる製品図面および／またはＢＯＭを、プリンタによって紙に印刷することができ、Microsoft ExcelファイルまたはAcrobat PDFなどのような電子形態で生成することができ、ディスプレイデバイスを介して表示することができ、電子メールで通信することができ、データストアに格納することができ、あるいはそうでなければ、設計された配管経路に対応するパイプラインを構築するため個人が使用可能な形態で、生成することができる。さらにこの方法は、製品図面および／またはＢＯＭに基づき、個人が手動でパイプライン配管経路を構築する、ということを含むことができる。
【００７２】
既述のように、（配管経路を手動で構築する上述のアクション以外）これらの方法に関連づけられたアクションを、１つまたは複数のプロセッサによって実行することができる。かかる１つまたは複数のプロセッサを、１つまたは複数のデータ処理システムに含めることができ、このデータ処理システムはたとえば、上述のアクションが１つまたは複数のプロセッサによって実施されるように動作するソフトウェアコンポーネントを実行する。１つの例示的な実施形態によれば、かかるソフトウェアコンポーネントを、Java, JavaScript, Python, C, C#, C++などのようなソフトウェア環境／言語／フレームワークにおいて、またはここで説明したアクションおよび特徴を実行するようにコンフィギュレーションされたコンポーネントおよびグラフィカルユーザインタフェースを生成可能な他の任意のソフトウェアツールにおいて、記述することができる。
【００７３】
図１５には、データ処理システム１５００（コンピュータシステムとも称する）のブロック図が示されている。このシステムに、たとえば本明細書で説明したプロセスを実行するためにソフトウェアまたは他の何らかの手段によって動作がコンフィギュレーションされたＰＬＭ、ＣＡＤおよび／または他のシステムの一部分として、１つの実施形態を実装することができる。この図に描かれたデータ処理システムは、少なくとも１つのプロセッサ１５０２（たとえばＣＰＵ）を含んでおり、これを１つまたは複数のブリッジ／コントローラ／バス１５０４（たとえばノースブリッジ、サウスブリッジ）と接続することができる。バス１５０４の１つとして、PCI Expressバスなどのような１つまたは複数のＩ／Ｏバスを挙げることができる。図示の例によれば、様々なバスに接続されるものとして、メインメモリ１５０６（ＲＡＭ）およびグラフィックスコントローラ１５０８を挙げることができる。グラフィックスコントローラ１５０８を、１つまたは複数のディスプレイデバイス１５１０と接続することができる。同様にここで述べておきたいのは、いくつかの実施形態によれば、１つまたは複数のコントローラ（たとえばグラフィックス、サウスブリッジ）を（同じチップまたはダイにおける）ＣＰＵと統合できる、という点である。ＣＰＵアーキテクチャの例には、ＩＡ−３２、ｘ８６−６４およびＡＲＭプロセッサアーキテクチャが含まれる。
【００７４】
１つまたは複数のバスに接続される他の周辺機器として、ローカルエリアネットワーク（ＬＡＮ）、ワイドエリアネットワーク（ＷＡＮ）、セルラネットワークおよび／または他の有線または無線のネットワーク１５１４と接続するように動作する通信コントローラ１５１２（イーサネットコントローラ、ＷｉＦｉコントローラ、セルラコントローラ）、または通信機器を挙げることができる。
【００７５】
種々のバスに接続されるさらに別のコンポーネントとして、１つまたは複数のＩ／Ｏコントローラ１５１６、たとえばＵＳＢコントローラ、ブルートゥースコントローラ、および／または（スピーカおよび／またはマイクロフォンと接続される）専用オーディオコントローラなどを挙げることができる。同様に、様々な周辺機器を（種々のＵＳＢポートを介して）ＵＳＢコントローラに接続することができる、という点も理解されたい。それらの周辺機器として、入力デバイス１５１８（たとえばキーボード、マウス、タッチスクリーン、トラックボール、ゲームパッド、カメラ、マイクロフォン、スキャナ、モーションセンシングデバイス）、出力デバイス１５２０（たとえばプリンタ、スピーカ）、あるいは入力を供給するまたはデータ処理システムからの出力を受信するように動作する他の任意のタイプのデバイスが挙げられる。さらに、入力デバイスまたは出力デバイスと呼ばれる多くのデバイスが、入力を供給することができ、かつデータ処理システムとの通信の出力を受信することができる、という点を理解されたい。さらに理解されたいのは、Ｉ／Ｏコントローラ１５１６に接続される他の周辺ハードウェア１５２２として、データ処理システムと通信するようにコンフィギュレーションされた任意のタイプのデバイス、機械またはコンポーネントを挙げることができる、という点である。
【００７６】
種々のバスに接続される付加的なコンポーネントとして、１つまたは複数のストレージコントローラ１５２４（たとえばＳＡＴＡ）を挙げることができる。ストレージコントローラをストレージデバイス１５２６と接続することができ、たとえば１つまたは複数のストレージドライブ、および／または機械で使用可能または機械で読み取り可能な任意の適切な非一時的ストレージ媒体とすることができる任意の対応するリムーバル媒体、などと接続することができる。例として挙げられるのは、不揮発性デバイス、揮発性デバイス、リードオンリーデバイス、書き込み可能デバイス、ＲＯＭ、ＥＰＲＯＭ、磁気テープストレージ、フロッピーディスクドライブ、ハードディスクドライブ、ソリッドステートドライブ（ＳＳＤ）、フラッシュメモリ、光ディスクドライブ（ＣＤ、ＤＶＤ、ブルーレイ）、および他の公知の光学的、電気的、または磁気的なストレージデバイスドライブおよび／またはコンピュータ媒体である。いくつかの例によれば、ＳＳＤなどのようなストレージデバイスを、PCI ExpressバスなどのようなＩ／Ｏバス１５０４へ、ダイレクトに接続することもできる。
【００７７】
本開示の１つの実施形態によるデータ処理システムとして、オペレーティングシステム１５２８、ソフトウェア／ファームウェア１５３０、およびデータストア１５３２（これらをストレージデバイス１５２６および／またはメモリ１５０６に記憶させることができる）を挙げることができる。かかるオペレーティングシステムは、コマンドラインインタフェース（ＣＬＩ）シェルおよび／またはグラフィカルユーザインタフェース（ＧＵＩ）シェルを採用することができる。ＧＵＩシェルは、複数のディスプレイウィンドウをグラフィカルユーザインタフェースにおいて同時に表示させることができ、各ディスプレイウィンドウによって、それぞれ異なるアプリケーションに対するインタフェースが提供され、または同じアプリケーションの異なるインスタンスに対するインタフェースが提供される。マウスまたはタッチスクリーンなどのようなポインティングデバイスによって、ユーザはグラフィカルユーザインタフェースのカーソルまたはポインタを操作することができる。この場合、カーソル／ポインタのポジションを変更することができ、かつ／または、望ましいレスポンスを生じさせるために、マウスボタンのクリックまたはタッチスクリーンのタッチといったイベントを発生させることができる。データ処理システムにおいて使用することのできるオペレーティングシステムの例として、Microsoft Windows, Linux, UNIX, iOSおよびAndroidオペレーティングシステムを挙げることができる。同様にデータストアの例として、データファイル、データテーブル、リレーショナルデータベース（たとえばOracle, Microsoft SQL Server）、データベースサーバー、またはプロセッサによって取り出し可能なデータを格納することができる任意の他の構造および／またはデバイスも挙げられる。
【００７８】
通信コントローラ１５１２を（データ処理システム１５００の一部ではない）ネットワーク１５１４に接続することができ、このネットワークを、インターネットを含め当業者に周知の任意のパブリックまたはプライベートのデータ処理システムネットワークまたはそれらのネットワークの組み合わせとすることができる。データ処理システム１５００はネットワーク１５１４を介して、（やはりデータ処理システム１５００の一部ではない）サーバ１５３４などのような１つまたは複数の他のデータ処理システムと通信することができる。ただし、１つの択一的なデータ処理システムを、分散システムの一部として実装された複数のデータ処理システムに対応させることができ、そのような分散システムにおいて、複数のデータ処理システムに対応づけられた複数のプロセッサを、１つまたは複数のネットワークコネクションを介して通信状態にすることができ、それらのプロセッサは、単一のデータ処理システムによって実施されるものとして説明したタスクを、共同で実施することができる。よって、１つのデータ処理システムについて言及するときには、かかるシステムを、ネットワークを介して互いに通信状態にある分散システム内に構築された複数のデータ処理システム全体にわたって実装されたものとしてもよい、という点を理解されたい。
【００７９】
なお、用語「コントローラ」とは、このデバイスがハードウェア、ファームウェア、ソフトウェア、またはそれらのうち少なくとも２つの何らかの組み合わせとして実現されていようが、少なくとも１つのオペレーションをコントロールする任意のデバイス、システムまたはそれらの一部分のことを意味する。さらにここで述べておきたいのは、いずれかの特定のコントローラと結び付けられた機能を、ローカルであろうとリモートであろうと、集中させてもよいし分散させてもよい、という点である。
【００８０】
これらに加え、データ処理システムを、仮想マシンアーキテクチャまたはクラウド環境において仮想マシンとして実装することができる、という点を理解されたい。たとえばプロセッサ１５０２および付随するコンポーネントを、１つまたは複数のサーバの仮想マシン環境において実行される１つの仮想マシンに対応させることができる。仮想マシンアーキテクチャの例として挙げられるのは、VMware ESCi, Microsoft Hyper- V, Xenおよび KVMである。
【００８１】
当業者であれば理解できるように、データ処理システムについて図示したハードウェアを、特定の実装形態に合わせて変更することができる。たとえばこの例におけるデータ処理システム１５００を、コンピュータ、ワークステーションおよび／またはサーバに対応させることができる。ただしここで理解されたいのは、データ処理システムの択一的な実施形態を、相応のコンポーネントまたは択一的なコンポーネントによってコンフィギュレーションすることができる、という点であり、たとえば携帯電話、タブレット、コントローラボード、またはデータを処理しかつデータ処理システム、コンピュータ、プロセッサおよび／または本明細書で説明したコントローラのオペレーションと対応づけられた、本明細書で説明した機能および特徴を実施するように動作する他の任意のシステムの形態として、コンフィギュレーションすることができる。図示されている実施例は、例示目的で示されているにすぎず、本開示に関して構造上の制限を意図したものではない。
【００８２】
本明細書で用いた用語「コンポーネント」および「システム」は、ハードウェア、ソフトウェアまたはハードウェアとソフトウェアの組み合わせを包含することを意図している。したがってたとえば、システムまたはコンポーネントをプロセス、プロセッサ上で実行されるプロセス、またはプロセッサとすることができる。これらに加え、コンポーネントまたはシステムを、単一のデバイス上に局所化してもよいし、複数のデバイスにわたって分散させてもよい。
【００８３】
同様に、ここで用いられているプロセッサは、データを処理するためにハードウェア回路、ソフトウェアおよび／またはファームウェアを介してコンフィギュレーションされた任意の電子デバイスに相応する。たとえば、本明細書で説明したプロセッサを、マイクロプロセッサ、ＣＰＵ、ＦＰＧＡ、ＡＳＩＣ、あるいは、コントローラボード、コンピュータ、サーバ、携帯電話、および／または他の任意のタイプの電子デバイスを有することができるデータ処理システムにおいてデータを処理可能である他の任意の集積回路（ＩＣ）または他のタイプの回路、のうちの１つまたは複数（またはこれらの組み合わせ）に対応させることができる。
【００８４】
さらに当業者に理解できるとおり、簡単かつ明瞭にするため、本発明による使用に適したあらゆるデータ処理システムの構造およびオペレーションを、本明細書においてすべて描いたまたは説明したわけではない。そうではなく、データ処理システムのうち、本発明に特有のところだけを、または本発明の理解に必要なところだけを描いて説明したにすぎない。データ処理システム１５００の構造およびオペレーションのその他の部分は、この分野で周知の現在行われている様々な実装形態および実施手法の任意のものに適合させることができる。
【００８５】
これまで本発明の実施例について詳しく説明してきたが、当業者であれば理解できるように、最も広い形態で開示した本発明の着想および範囲を逸脱することなく、様々な変更、置き換え、変形ならびに本明細書で開示した改善を行うことができる。
【００８６】
本願の記載内容のいずれも、何らかの特定の部材、ステップまたは機能が特許請求の範囲に含まれなければならない必須の要素である、という趣旨で読まれるべきではなく、本発明の範囲は、特許付与された請求項によってのみ定められるものである。しかも、厳密な語「のための手段」の次に分詞が続かないのであれば、これらの請求項のいずれも、ミーンズ・プラス・ファンクション・クレーム（means plus function claim）の構造が適用されることを意図したものではない。
【図１】
0006567164.tif 000002
【図２】
0006567164.tif 000003
【図３】
0006567164.tif 000004
【図４】
0006567164.tif 000005
【図５】
0006567164.tif 000006
【図６】
0006567164.tif 000007
【図７】
0006567164.tif 000008
【図８】
0006567164.tif 000009
【図９】
0006567164.tif 000010
【図１０】
0006567164.tif 000011
【図１１】
0006567164.tif 000012
【図１２】
0006567164.tif 000013
【図１３】
0006567164.tif 000014
【図１４】
0006567164.tif 000015
【図１５】
0006567164.tif 000016