(57)【特許請求の範囲】
【請求項１】
金融スイッチングエンジンを提供する金融取引システムであって、
それぞれ異なる物理的ロケーションに実装され、互いにプライベートネットワークを介して相互に接続されている、分散した複数の異なる物理的データセンタと、
前記金融取引システムのそれぞれ異なる機能を実行するようにそれぞれ構成された、複数のプラグインと、
取引を実行するために互いにメッセージを通信し合うよう構成された前記プラグインが動作するオペレーティングシステムと、
を含む金融取引システムにおいて、
前記オペレーティングシステムが、前述の物理的データセンタの一部または全部にわたって分散しており、
前記プラグインは、前記データセンタの一部または全部に分散しており、前記オペレーティングシステムは、前記プラグインが前述のデータセンタのうち特定のものを前記メッセージの宛先として指定する必要なく前記オペレーティングシステムを介して互いに前述のメッセージを通信し合うようにするとともに、前記オペレーティングシステムが前記プラグインに経路の可視性を必要とせずに前記プライベートネットワーク上における前記データセンタ間の前記メッセージの経路制御を行うことになるように、分散した前記データセンタから前記プラグインを取り込むように構成されている、
金融取引システム。
【請求項２】
金融スイッチングエンジンが、前述のプラグインの１つである、請求項１に記載の金融取引システム。
【請求項３】
プラグインが、前述の取引の１つ以上に対して暗号および／または１つ以上の他のセキュリティ手段を適用するように構成されたセキュリティモジュールを少なくとも１つ含む、請求項１または請求項２に記載の金融取引システム。
【請求項４】
セキュリティモジュールが、ハードウェアセキュリティモジュールを含む、請求項３に記載の金融取引システム。
【請求項５】
プラグインが、１つ以上の金融サービス・エンドポイント端末と連絡するようにそれぞれ構成された１つ以上のエンドポイント・インタフェースモジュールを含む、請求項１ないし請求項４のいずれか１項に記載の金融取引システム。
【請求項６】
１つ以上のエンドポイント・インタフェースモジュールが、１つ以上の販売時点管理端末と連絡するように構成された販売時点管理インタフェースモジュールを含む、請求項５に記載の金融取引システム。
【請求項７】
１つ以上のエンドポイント・インタフェースモジュールが、１つ以上の自動預入支払機と連絡するように構成されたＡＴＭインタフェースモジュールを含む、請求項５または請求項６に記載の金融取引システム。
【請求項８】
プラグインが、金融プロバイダシステムと連絡することによりデビットおよび／またはクレジットカード取引の処理を行うように構成されたクレジットおよび／またはデビットカード取引処理モジュールを含む、請求項１ないし請求項７のいずれか１項に記載の金融取引システム。
【請求項９】
プラグインが、オンライン取引処理モジュールを含む、請求項１ないし請求項８のいずれか１項に記載の金融取引システム。
【請求項１０】
プラグインが、前払い口座と連絡することにより前払い商品またはサービス用の前払い口座残高の補充および／または引き落とし取引の処理を行うように構成された前払い取引プラグインを含む、請求項１ないし請求項９のいずれか１項に記載の金融取引システム。
【請求項１１】
前払い取引プラグインが、プリペイド電話残高の補充または引き落とし取引の処理を行うように構成された前払い電話プラグインを含む、請求項１０に記載の金融取引システム。
【請求項１２】
プラグインが、前述のメッセージのフィルタリングを行うように構成されたメッセージフィルタリングプラグインを含む、請求項１ないし請求項１１のいずれか１項に記載の金融取引システム。
【請求項１３】
プラグインが、前述の取引の１つ以上についての報告および／または口座の状態についての報告を行うように構成された報告モジュールを含む、請求項１ないし請求項１２のいずれか１項に記載の金融取引システム。
【請求項１４】
プラグインが、データベース内の前述の取引の１つ以上を記録するための記録モジュールを含む、請求項１ないし請求項１３のいずれか１項に記載の金融取引システム。
【請求項１５】
オペレーティングシステムが、データセンタ間の負荷平衡化を行うように構成された負荷管理アルゴリズムを含む、請求項１ないし請求項１４のいずれか１項に記載の金融取引システム。
【請求項１６】
オペレーティングシステムが、前述のメッセージにとってデータセンタ間の最適な経路の決定を行うように構成された経路コストアルゴリズムを含む、請求項１ないし請求項１５のいずれか１項に記載の金融取引システム。
【請求項１７】
オペレーティングシステムが、プラグイン間で前述のメッセージの１つ以上の通信を行うための複数種の通信プロトコルに対応するように構成されている、請求項１ないし請求項１６のいずれか１項に記載の金融取引システム。
【請求項１８】
前述のプラグインが、プロトコル変換プラグインを含んでおり前述の変換を行うように構成されている、請求項１に記載の金融取引システム。
【請求項１９】
オペレーティングシステムが、複数種のプログラミング言語でプログラムされた複数種のプラグインを実行するために複数種のプログラミング言語を解釈するように構成されている、請求項１に記載の金融取引システム。
【請求項２０】
前述の取引の１つ以上の記録のための、および／または、システムの構成パラメータおよび／または取引ルールの保存のためのデータベースを含む、請求項１ないし請求項１９のいずれか１項に記載の金融取引システム。
【請求項２１】
複数のデータベース形式に対応するように構成されたデータ抽象化レイヤを含む、請求項２０に記載の金融取引システム。
【請求項２２】
データ抽象化レイヤが、前述のプラグインの１つである、請求項２１に記載の金融取引システム。
【請求項２３】
データセンタが、複数の建物、複数の町あるいは都市、および／または複数の国に存在する、請求項１ないし請求項２２のいずれか１項に記載の金融取引システム。
【請求項２４】
プライベートネットワークが、プライベートネットワークのインフラストラクチャを含む、請求項１ないし請求項２３のいずれか１項に記載の金融取引システム。
【請求項２５】
プライベートネットワークが、パブリックネットワークのインフラストラクチャ上に実装されるプライベートプロトコルを含む、請求項１ないし請求項２４のいずれか１項に記載の金融取引システム。
【請求項２６】
金融スイッチングエンジンを提供するコンピュータプログラム製品であって、
オペレーティングシステムとして動作して、それぞれ異なる物理的ロケーションに実装され、互いにプライベートネットワークを介して相互に接続されている、分散した複数の異なる物理的データセンタを含む金融取引システムのそれぞれ異なる機能を実行するように構成された複数のプラグインを実行し、
金融取引を実行するために前記プラグイン間でメッセージを通信する
という処理を１つ以上のプロセッサ上で実行されて行うように構成された、コンピュータ読み取り可能な記録媒体に組み込まれたコードであるコンピュータプログラム製品において、
前記オペレーティングシステムが、前述の物理的データセンタの一部または全部にわたって分散しており、
前記プラグインは、データセンタの一部または全部に分散しており、前記オペレーティングシステムは、前記プラグインが前述のデータセンタのうち特定のものを前記メッセージの宛先として指定する必要なく前記オペレーティングシステムを介して互いに前述のメッセージを通信し合うようにするとともに、前記オペレーティングシステムが前記プラグインに経路の可視性を必要とせずにプライベートネットワーク上における前記データセンタ間の前記メッセージの経路制御を行うことになるように、前記分散したデータセンタからプラグインを取り込むよう構成されている、
コンピュータプログラム製品。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、金融取引を行うための金融スイッチングエンジンの分野に関するものである。
【背景技術】
【０００２】
様々な要素間での金融取引、例えば自動預入支払機（ＡＴＭ）または販売時点管理（ポイントオブセールス、ＰｏＳ）端末を起点として金融サービスプロバイダの決済システムに対する取引の通信を行うことや、プリペイド電話の利用時間口座のような前払い口座へＡＴＭやＰｏＳ端末から補充を行うことについて、これらを行うための金融取引システムを提供することが知られている。このシステムは金融スイッチングエンジンを含んでおり、これは取引メッセージをシステムの１要素から受け取り、そのメッセージを他所へ振り向けるにあたっての一連のルールを有している。スイッチングエンジンはメッセージを受け取って、その内容を検査し、そのメッセージをどこへ転送するかについて決定するためにその内容へルールを適用する。
【０００３】
金融取引システムは、金融取引の実行に関係するその他の機能、例えば口座の収支を確認したり、その他レポートを作成したり、データベースに取引を記録したり、口座を監視して警報を発したりする機能も含んでいる。ユーロネットの出願である特許文献１は複数の、取換可能な、標準的なインタフェースの、モジュール式金融サービスのアプリケーションを含むシステムを開示しており、ここでアプリケーションはそれぞれが異なる金融サービスを提供し、例えば口座へのアクセス用のもの、口座の管理用のもの、取引の管理用のもの、イベントメッセージング用のものがある。
【０００４】
既存の取引システムにおいては、システムがスイッチ機能およびその他金融の機能を有しており、これらの機能は共に中央データセンタに実装されていて、中央データセンタは１つ以上のデータネットワークを介して自身の様々なエンドポイント（例えばＡＴＭ，ＰｏＳシステム，および／または金融プロバイダの決済システム）に向けて外部と繋がっている。データセンタは複数の異なる金融ネットワーク（例えば１つ以上のＡＴＭネットワーク，ＰｏＳネットワーク，および／または金融プロバイダ・ネットワーク）の間で取り次ぎを行う中央要素として配置されているとよい。メインのデータセンタが停止した場合に備えて、バックアップ用データセンタも用意されているとよい。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】国際公開第０２／１３１２９号
【発明の概要】
【発明が解決しようとする課題】
【０００６】
既存の方式は、“アクティブ−パッシブ”方式をとるものとして説明されることがあり、どの時点でも複数のデータセンタのうち１つだけがアクティブである。通常の動作では、メインのデータセンタがアクティブな一方で、バックアップ用データセンタは休止している；そして、メインのデータセンタに障害があった場合には、バックアップ用のデータセンタがアクティブな一方でメインのデータセンタは機能しない。
【０００７】
これに対し、本開示は“アクティブ−アクティブ”方式を提供するものであり、これはどの時点でも複数の異なるデータセンタがアクティブなものである。さらに、本開示はこの思想を、分散型の、クラウドベースの方式に発展し、これは複数の異なるモジュール式のプラグインアプリケーションが複数の異なるデータセンタ間で複数の物理的ロケーションにわたって分散するものである。
【課題を解決するための手段】
【０００８】
金融スイッチングエンジンを提供する金融取引システムが得られ、この金融取引システムは、それぞれ異なる物理的ロケーションに実装され、互いにプライベートネットワークを介して相互に接続されている、分散した複数の異なる物理的データセンタと、前記金融取引システムのそれぞれ異なる機能を実行するようにそれぞれ構成された、複数のプラグインと、取引を実行するために互いにメッセージを通信し合うよう構成された前記プラグインが動作するオペレーティングシステムと、を含み、前記オペレーティングシステムが、前述の物理的データセンタの一部または全部にわたって分散しており、前記プラグインは前記データセンタの一部または全部に分散しており、前記オペレーティングシステムは分散した前記データセンタから前記プラグインを取り込むように構成されており、これにより前記プラグインは前述のデータセンタのうち特定のものを前記メッセージの宛先として指定する必要なく前記オペレーティングシステムを介して互いに前述のメッセージを通信し合うようになっているとともに、前記オペレーティングシステムは前記プラグインに経路の可視性を必要とせずに前記プライベートネットワーク上における前記データセンタ間の前記メッセージの経路制御を行うようになっている。
【０００９】
実施形態によっては、金融スイッチングエンジンが、前述のプラグインの１つであると好ましい。
【００１０】
プラグインがデータセンタ間で分散していると述べたが、これは、いくつかの別々のプラグインがいくつかの別々のデータセンタで保存および／または実行され、かつ／または１つ以上のプラグインの１つ１つのインスタンスが複数のデータセンタで物理的に保存および／または実行されるということである（つまり、特定のプラグインが２つ以上のデータセンタで物理的に保存および／または実行されるということである）。後者の場合、特定のプラグインを保存および／または実行するにあたっての負担が複数のデータセンタで分担され、かつ／またはそのプラグインの複数のインスタンスが別々のデータセンタで保存および／または実行される、ということを意味し得る。
【００１１】
例えば、金融スイッチングエンジンが１つのデータセンタで保存および／または実行されるとよく、その一方で、スイッチングエンジン（例えば、クレジットカードの取引処理プラグイン、前払い口座プラグイン、あるいはＡＴＭや販売時点管理端末のインタフェースプラグイン）によってスイッチされる取引に関わるもう１つのプラグインが、もう１つのデータセンタで保存および／または実行されるとよい。これに代えて、またはこれに加えて、金融スイッチングエンジンなどのいずれかの特定のプラグインのインスタンスが、複数の異なるデータセンタで保存および／または実行されてもよい。
【００１２】
さらに、プラグインは自身がどのデータセンタに実装されているか、あるいは自身が通信している相手のプラグインがどのデータセンタに実装されているかを知る必要がなく、またシステムの下位層の分散性についての何らかの可視性や判断力を持つようにプログラムされる必要もない。むしろ、プラグインはオペレーティングシステムに対してメッセージを送信するだけであり、オペレーティングシステムはプラグインに対して不透明な方法で下位層の物理的なルート決定を制御する。したがってオペレーティングシステムはプラグインから見てシステムが１つの論理的データセンタとして働くように抽象層を提供し、システムは効率的に“プライベートクラウド”の一種として働く。
【００１３】
本開示の分散システムは以下の利点のうち１つ以上を得るために用いることができる。まず、１つのデータセンタに障害があった場合に、障害の生じたデータセンタにのみ実装されているモジュールまたはモジュールのインスタンスを除いては（これがあったとしても）、システムの他の部分は停止時間ゼロで動作し続けることができる。また、プラグインおよび／またはデータセンタは、システムの他の部分に対する停止時間ゼロでアップグレードを行うことができる。さらに、負荷平衡化の機会拡充および／または拡張性の向上も得られる。
【００１４】
実施形態によっては、プラグインが、前述の取引の１つ以上に対して暗号および／または１つ以上の他のセキュリティ手段を適用するように構成されたセキュリティモジュールを少なくとも１つ含むのが好ましい。
【００１５】
実施形態によっては、セキュリティモジュールが、ハードウェアセキュリティモジュールを含むのが好ましい。
【００１６】
実施形態によっては、プラグインが、１つ以上の金融サービス・エンドポイント端末と連絡するようにそれぞれ構成された１つ以上のエンドポイント・インタフェースモジュールを含むのが好ましい。
【００１７】
実施形態によっては、１つ以上のエンドポイント・インタフェースモジュールが、１つ以上の販売時点管理端末と連絡するように構成された販売時点管理インタフェースモジュールを含むのが好ましい。
【００１８】
実施形態によっては、１つ以上のエンドポイント・インタフェースモジュールが、１つ以上の自動預入支払機と連絡するように構成されたＡＴＭインタフェースモジュールを含むのが好ましい。
【００１９】
実施形態によっては、プラグインが、金融プロバイダ・システムと連絡することによりデビットおよび／またはクレジットカード取引の処理を行うように構成されたクレジットおよび／またはデビットカード取引処理モジュールを含むのが好ましい。
【００２０】
実施形態によっては、プラグインが、オンライン取引処理モジュールを含むのが好ましい。
【００２１】
実施形態によっては、プラグインが、前払い口座と連絡することにより前払い商品またはサービス用の前払い口座残高の補充および／または引き落とし取引の処理を行うように構成された前払い取引プラグインを含むのが好ましい。
【００２２】
実施形態によっては、前払い取引プラグインが、プリペイド電話残高の補充または引き落とし取引の処理を行うように構成された前払い電話プラグインを含むのが好ましい。
【００２３】
実施形態によっては、プラグインが、前述のメッセージのフィルタリングを行うように構成されたメッセージフィルタリングプラグインを含むのが好ましい。
【００２４】
実施形態によっては、プラグインが、前述の取引の１つ以上についての報告および／または口座の状態についての報告を行うように構成された報告モジュールを含むのが好ましい。
【００２５】
実施形態によっては、プラグインが、データベース内の前述の取引の１つ以上を記録するための記録モジュールを含むのが好ましい。
【００２６】
実施形態によっては、オペレーティングシステムが、データセンタ間の負荷平衡化を行うように構成された負荷管理アルゴリズムを含むのが好ましい。
【００２７】
実施形態によっては、オペレーティングシステムが、前述のメッセージにとってデータセンタ間の最適な経路の決定を行うように構成された経路コストアルゴリズムを含むのが好ましい。
【００２９】
実施形態によっては、オペレーティングシステムが、プラグイン間で前述のメッセージの１つ以上の通信を行うための複数種の通信プロトコルに対応するように構成されているのが好ましい。
【００３０】
実施例によっては、前述のプラグインが、プロトコル変換プラグインを含んでおり前述の変換を行うように構成されているのが好ましい。
【００３１】
実施形態によっては、オペレーティングシステムが、複数種のプログラミング言語でプログラムされた複数種のプラグインを実行するために複数種のプログラミング言語を解釈するように構成されているのが好ましい。
【００３２】
実施形態によっては、システムが、前述の取引の１つ以上の記録のための、および／または、構成パラメータおよび／またはシステムの処理ルールの保存のためのデータベースを含むのが好ましい。
【００３３】
実施形態によっては、システムが、複数のデータベース形式に対応するように構成されたデータ抽象化レイヤを含むのが好ましい。
【００３４】
実施形態によっては、データ抽象化レイヤが、前述のプラグインの１つであるのが好ましい。
【００３５】
実施形態によっては、データセンタが、複数の建物、複数の町あるいは都市、および／または複数の国に存在するのが好ましい。
【００３６】
実施形態によっては、プライベートネットワークが、プライベートネットワークのインフラストラクチャを含むのが好ましい。
【００３７】
実施形態によっては、プライベートネットワークが、パブリックネットワークのインフラストラクチャ上に実装されるプライベートプロトコルを含むのが好ましい。
【００３８】
ここで開示するもう１つの側面によれば、金融スイッチングエンジンを提供するコンピュータプログラム製品が得られ、このコンピュータプログラム製品は、オペレーティングシステムとして動作して、それぞれ異なる物理的ロケーションに実装され、互いにプライベートネットワークを介して相互に接続されている、分散した複数の異なる物理的データセンタを含む金融取引システムのそれぞれ異なる機能を実行するように構成された複数のプラグインを実行し、金融取引を実行するために前記プラグイン間でメッセージを通信するという処理を１つ以上のプロセッサ上で実行されて行うように構成された、コンピュータ読み取り可能な記録媒体に組み込まれたコードであり、前記オペレーティングシステムが、前述の物理的データセンタの一部または全部にわたって分散しており、前記プラグインはデータセンタの一部または全部に分散しており、オペレーティングシステムは前記分散したデータセンタからプラグインを取り込むよう構成されており、これにより前記プラグインは前述のデータセンタのうち特定のものを前記メッセージの宛先として指定する必要なく前記オペレーティングシステムを介して互いに前述のメッセージを通信し合うようになっているとともに、前記オペレーティングシステムは前記プラグインに経路の可視性を必要とせずにプライベートネットワーク上における前記データセンタ間の前記メッセージの経路制御を行うようになっている。
【図面の簡単な説明】
【００３９】
以下の説明の理解を補助するため、そして実施形態がどのように実施されるかを示すため、添付の図面に参照符号が例として付される。
【図１】金融取引システムの集中型実装方式および分散型実装方式を概略的に示す図。
【図２】金融取引システムの高レベルアーキテクチャを概略的に示す図。
【図３】金融取引システムの分散型実装を概略的に示す図。
【図４】複数のプラグインのインスタンスから形成される取引を概略的に示す図。
【発明を実施するための形態】
【００４０】
図１は、パッシブ−アクティブ方式と比較したアクティブ−アクティブ方式の概念と、完全分散型の、クラウドベースの方式にまでアクティブ−アクティブ思想を発展させたものを示す。
【００４１】
図１（ａ）は、メインのデータセンタ１０２およびバックアップ用のデータセンタ１０４を備えたアクティブ−パッシブ型の実装を示す。クライアントのリクエストがサービス・エンドポイント端末（例えばＰｏＳ端末またはＡＴＭ）から受信されるとき、そのリクエスト・メッセージは処理を受けるためにメインのデータセンタ１０２へ向けて経路決定される。メインのデータセンタ１０２が稼働しているという推定により、こうしたクライアント・リクエスト・メッセージはすべてメインのデータセンタ１０２のみに向けて経路決定される。メインのデータセンタが稼働していないという障害の場合にのみ、リクエスト・メッセージは処理を受けるため代わりにバックアップ用データセンタ１０４へ向けて経路決定される。したがって、どの時点においてもデータセンタ１０２，１０４のうち１つだけがアクティブである。
【００４２】
図１（ｂ）はアクティブ−アクティブ型の実装の思想を示しており、これは２つ（またはそれ以上）のデータセンタ１０６を備えていて、これらはいずれも「メインの」データセンタとみなされる必要がない。クライアントのリクエストがサービス・エンドポイント端末（例えばＰｏＳ端末またはＡＴＭ）から受信されるときには、リクエストに応じて、処理を受けるためにどちらのデータセンタ１０６に向けて経路決定されてもよい。したがって、クラアント・リクエスト・メッセージのいくつかはデータセンタ１０６の１つへ向けて経路決定され、こうしたメッセージの他のものは他のデータセンタ１０６へ向けて経路決定されて、両方のデータセンタは、実質的に同時にアクティブであり、異なるリクエストを処理することになる。
【００４３】
図１（ｃ）は、ここで示す実施形態に係り、アクティブ−アクティブ方式をクラウドシステムへと発展させたものを示す。このシステムは複数の物理的データセンタ１０６を有しており、これらは複数のロケーション、例えば別々の建物、別々の敷地、別々の町または都市、場合によっては別々の国にまでわたって分散している。この別々の物理的データセンタ１０６は複数のサービスおよび／または装置とそれぞれ関連付いているとよい。別々の物理的データセンタ１０６はプライベートネットワーク１１０を介して互いに接続される。プライベートネットワーク１１０は、プライベートな物理的ネットワークのインフラストラクチャにより、またはインターネットのようなパブリックな物理的ネットワークのインフラストラクチャ上に実装されるプライベートな（セキュアな）ネットワークプロトコルにより、あるいはこれらの組み合わせにより実装されるとよい。複数のサービス・エンドポイント端末１０８（例えばＰｏＳ端末および／またはＡＴＭ）もプライベートネットワーク１１０に接続されており、よってこれらは分散したデータセンタ１０６のいずれともプライベートネットワークを介して通信するよう動作可能である。どの時点においても、別々のデータセンタ１０６のうち２つ以上あるいは全てがアクティブであり、同時進行で取引を処理できる。サービス・エンドポイント１０８からサービス・リクエスト・メッセージが送信されるときには、リクエストの性質、システムの現在負荷、メッセージのルート決定のコストなどの要因に応じていずれかの１つ以上のデータセンタへと割り当てられる。クラウド方式においては、物理的な処理センタの複数が、論理的な処理センタにより代行され得る。実施形態の一例では、多くの物理的な処理センタが単一の、大きな論理的処理センタにより代行され得る。言い換えると、実施形態のいくつかにおいては、プライベートネットワークとし得るインターネット／イントラネット１１０を介して、使用中のエンドポイント端末１０８へ利用者が接続できる“クラウド”内に物理的な処理センタ１０６が含まれる。
【００４４】
図２は、ここに例示する実施形態に係る金融取引システムのアーキテクチャを示す。このシステムの主な機能は金融スイッチングエンジンを提供することであり、これは複数のサービス・エンドポイント端末１０８（ユーザー端末）と１つ以上の金融プロバイダ２１０（取引の別のエンドポイントにあるシステムで、ここで取引が最終的に処理される）との間で仲介として働く。この目的のため、システムは、金融スイッチングエンジン２０２（コアのスイッチ）と、インタフェースまたはデバイスハンドラとして働く複数のメッセージフィルタ２０８を備える。システムはさらに、取引と関わり得る追加要素を備える。図２では、これらは例えば少なくとも１つのセキュリティモジュール２０４およびデータベース２１８と連絡するためのデータ抽象化レイヤ（data abstraction layer, ＤＡＬ）を備える。
【００４５】
サービス・エンドポイント端末１０８は、例えば１つ以上の販売時点管理（ＰｏＳ）端末２１２、および／または、１つ以上の自動預入支払機（ＡＴＭ）を備えることがある。金融プロバイダ・システム２１０は、例えば１つ以上のクレジットまたはデビッドカードのプロバイダの決済システム、オンラインバンキングシステム、および／または１つ以上の前払い商品あるいはサービスのプロバイダの前払い口座システムを備え得る。金融スイッチングエンジン２０２は、１つ以上のメッセージフィルタ２０８を介してサービス・エンドポイント端末１０８と接続されるようになっており、例えば、少なくとも１つの各自のメッセージフィルタを介してサービス・エンドポイント端末２１２，２１４の各タイプに接続され、また、エンドポイント１０８のあらゆる各インフラストラクチャを介する。例えば図２においては、金融スイッチングエンジン２０２が、１つ以上のメッセージフィルタ２０８ｂおよびＥＦＴＳ（electronic funds transfer server，電子資金移動サーバ）２１６を含むＡＴＭネットワークを介してＡＴＭ２１４に接続されてもよいし、１つ以上のメッセージフィルタ２０８ｃ，２０８ｄおよび販売時点管理ネットワーク（図示せず）を介してＰｏＳ端末２１２に接続されてもよい。金融スイッチングエンジン２０２は、１つ以上のメッセージフィルタ２０８を介して１つ以上のプロバイダ・システム２１０にも接続されるものであり、例えば、少なくとも１つの各自のフィルター２０８ａを介して各プロバイダ２１０に接続される。
【００４６】
金融スイッチングエンジン２０２は、こうしてサービス・エンドポイント端末１０８とプロバイダ・システム２１０との間に配置される。金融スイッチングエンジン２０２はメッセージを受信し、その内容を検査し、その内容に基づいて、スイッチングの一連のルールに従い適切な要素へとメッセージをさらにスイッチするように構成されている。これには例えば、サービス・エンドポイント・デバイス１０８から各自のフィルター２０８ｂ，２０８ｃ，２０８ｄを介してサービス・リクエスト・メッセージを受信することと、その後リクエストの性質を判定するため少なくとも十分なメッセージを読み込むことと、処理を行うため適切なプロバイダ２１０へさらなるフィルタ２０８ａを介して転送することと、同時にメッセージまたはそれに関する情報を記録するためＤＡＬ２２０を介してメッセージや情報を場合によってはデータベース２１８へ転送すること、が含まれるとよい。もう１つの例として（例えば同じ取引の相補的部分として）、金融スイッチングエンジン２０２により行われるスイッチングには、（例えばリクエストに応答して）プロバイダ２１０から各自のフィルタ２０８ａを介して報告メッセージを受信することと、報告としてメッセージの性質を判定するため十分なメッセージを読み込むことと、各自のフィルタ２０８ｂ，２０８ｃ，２０８ｄを介して関連するエンドポイント端末１０８へ転送を行うことと、が含まれるとよい。さらに、記録を行うためにＤＡＬ２２０を介してメッセージに関する報告または情報をデータベース２１８へ送信するステップも含まれるとよい。
【００４７】
フィルタ２０８は、作業の特定部分単位（例えばＴＣＰ／ＩＰ通信、デバイスハンドラ、マスターカードオンライン・メッセージなど）を実行する構成要素である。実施形態によっては、フィルタ２０８はコアの金融スイッチングエンジン２０２には含まれない構成要素である。これはデバイスハンドラ（例えばＡＴＭ，ＰＯＳ）、ネットワークハンドラ（例えばマスターカード，ビザなど）、その他の特定の機能の処理といった特化した処理を備えることがある。フィルタ２０２および他の非コアの構成要素は取引を「事前に拒否」し得るが、それでも記録および引き続いてのルート決定を行うためコア部２０２へのルート決定を行うことが要求されることがある。コアのスイッチングエンジン２０２は、事前に拒否されたメッセージを検出して“拒否された決定木”をたどり、場合によっては事前に拒否された値を上書きすることがある。
【００４８】
実施形態によっては、複数種のフィルタ：スタンドアロン式フィルタ、チェイン式フィルタ、埋め込み式フィルタが存在する場合がある。スタンドアロン式のフィルタは、作業の一単位全体を扱う（例えばマスターカードフィルタなど）。チェイン式フィルタは、順々に連結されたものであるとよく、各フィルタが作業の一単位を遂行してはその結果を次のフィルタへと渡していく。埋め込み式フィルタについては、この考え方ではフィルタが他のフィルタに埋め込まれるようにして、“マスター”フィルタがスタンドアロン式フィルタとして効果的に振る舞うようにする。ただし、マスターフィルタは実際には他のフィルタの集積体を含んでいてよい。同様に、マスターフィルタに埋め込まれたフィルタもスタンドアロン式のフィルタとして機能することが可能である。
【００４９】
フィルタの考え方は、独特のネットワーク要件（例えばマスターカード，ビザなど）を扱うネットワーク固有フィルタと同じく、中央集中型および／または一般のネットワークフィルタの補助に用いることができる。例えば、フィルタ２０８はオンライン取引処理用のフィルタ、ネットワーク固有のオンラインフィルタ、ネットワーク清算処理用のフィルタ、および／またはネットワーク固有の清算フィルタを備えるとよい。
【００５０】
例えばオンライン取引の処理のために、一般のネットワークフィルタは、コアの金融スイッチングエンジン２０２とネットワーク固有のオンラインフィルタとの間のインタフェース層を扱えばよい一方で、ネットワーク固有のオンラインフィルタは、各ネットワークに固有のメッセージ要件を扱い、また、一般のネットワークフィルタと個々のネットワークとの間のインタフェース層を提供する。
【００５１】
ネットワーク清算処理に関して、分散したネットワークの清算処理は、典型的にはプロバイダ・ネットワークによって使用され、入力／出力ファイル処理のロジックおよび清算ユーザインタフェースを含む。ただし実施形態によっては、集中型の清算アプリケーションが用意されているとよく、この場合は入力／出力ファイルおよび清算ユーザインタフェースを扱う一般の清算アプリケーションを作成するように、新しいアーキテクチャが設計される。これは、全てのネットワークの間で共通する清算機能を同一に扱うことで実装され、集中型の清算アプリケーションは一般の方法でのこれらの要求に適合するように設計されるとよい。ネットワーク固有の清算要件を簡便にするため、ネットワーク固有の清算フィルタレイヤは、集中型の清算アプリケーションとネットワークとの間のレイヤを提供する。これらのフィルタは、ネットワークの供給するファイルと集中型の清算アプリケーションが扱うファイルとの間でネットワーク固有の再フォーマットを行う。実施形態によっては、これらのフィルターは集中型の清算アプリケーションに対する入出力について標準化されたフォーマットでデータの受け入れおよび送信を行う。このフィルタは、ネットワークおよび標準のメッセージングフォーマットに従って再フォーマットをする。
【００５２】
実施形態によってはこれらのフィルタは、例えばマスターカード（MasterCard），ビザ（Visa），アメリカンエクスプレス（American Express）といった特定のプロバイダに特化したフィルタを含むとよい。例えば、マスターカードに特化したフィルタは：マスターカード清算処理の差配に特化したフィルタ、マスターカード・メッセージング・フィルタ、および／またはマスターカード管理フィルタ、を含むとよい。マスターカード・メッセージング・フィルタは、マスターカードに特化したメッセージの取り扱いや再フォーマットを請け負い、実施形態によっては下流のマスターカード通信フィルタへのルート決定も行う。メッセージング・フィルタは、照合／報告の問題やノードの接続の問題に対し高位レベルにおいて下流のマスターカード通信フィルタを監視することもあるかもしれない。マスターカード管理フィルタは、マスターカードのＭＩＰ接続、管理上のメッセージング、および／または応答スレッドを照合するための柔軟なメッセージマッチング、を扱う。
【００５３】
実施形態によってはフィルタ２０８は、通信フィルタをさらに備えるとよく、これは以下の操作を行う：通信ラインからやってくるメッセージを読み出すこと、複数のメッセージを個別のメッセージに分割すること、メッセージが複パケットにわたって分割されている場合の取り扱いを行うこと、生メッセージを適切なフィルタおよび／またはコア部２０２へ誘導すること、応答メッセージを通信ラインへ乗せること、永続的接続を維持すること、および／または、どのスレッドがリクエストを送ったかを示すメッセージレベルの“スレッド拇印”の追跡を続けて通信フィルタが正しいスレッドへ応答を返すことができるようにすること。フィルタ２０８は、ＩＳＯ−８５８３メッセージフィルタをさらに備えるとよく、これは：ＩＴＭスーパーＤＣＭの概念に類似した一般のＩＳＯ−８５８３メッセージフィルタや、ホストからホストへ（Host-to-Host）および／またはＨ２ＨからＥＦＴＳへのインタフェースフィルタといったものである。
【００５４】
フィルタ２０８はこうして、オンライン取引処理および／またはデビットまたはクレジットカード取引を実行するための１つ以上の金融プロバイダ・システムの決済システムとのインタフェースを提供する。そして、既に述べたように、フィルタ２０８ｂ，２０８ｃ，２０８ｄは、関連するインフラストラクチャを介してＰｏＳ端末２１２，ＡＴＭ２１４と連絡するためのデバイスハンドラ・モジュールを含むとよい。さらに、前払い口座残高の補充または引き落としを行うためのフィルタ２０８が設けられることもあり、これは金融機関や前払い口座システムと連絡することにより補充または引き落としを行い、ここで前払い口座システムはプリペイド電話の利用時間口座といった前払い商品またはサービスのプロバイダのシステムである。金融スイッチングエンジン２０２は、これらサービス・エンドポイント端末１０８，２１２，２１４と、プロバイダ・システム２１０と、前払い口座（図示せず）との間に各自のフィルタ２０８を介して位置しており、これらの間でのメッセージを、当該メッセージにとって適切なようにスイッチするように用意されている。
【００５５】
図２のシステムはさらに、データベース２１８に接続された１つ以上のオペレータ・ユーザ端末２２４（サービス・エンドポイント１０８，２１２，２１４とは異なる）を備える。これらは、記録済みの取引のレコードへＤＡＬ２２０とスイッチングエンジン２０２を介してシステムのオペレータがアクセスできるようにするとともに、システムをオペレータがコントロールできるようにシステムの何らかの構成またはルールを設定する、ユーザインタフェースを提供する。実施形態によっては、これらユーザインタフェースは、広範囲にわたる多くのユーザインタフェースを提供することができ、これは例えば：システム構成、システム管理、システムの健全性監視、ネットワーククリアリング、監査および／または調査といったもののユーザインタフェースである。
【００５６】
さらに図２に示すように、システムは、実行される取引に関係する暗号処理を扱う１つ以上のセキュリティモジュール２０４という形でセキュリティ・サブシステムを備えるとともに、他のセキュリティ手段も備える。これは改ざん防止機能付きのセキュリティキー管理を提供するハードウェアセキュリティモジュール（ＨＳＭ）を備えているとよい。異なる物理的データセンタ間で伝送され、かつ何れかのサービス・エンドポイント端末１０８およびプロバイダ・システム２１０に対して出入りする何らかの外部接続の上で伝達されるメッセージに関係するあらゆる取引は、セキュリティのために、セキュリティキーを使用して暗号化される。セキュリティモジュール２０４は、メッセージの読み込みおよび／または伝送のためにスイッチングエンジンによって要求された通り必要な暗号化および復号化を実行する。
【００５７】
既述のように、システムの機能性は、複数のプラグイン２２２の形で実装される。プラグイン２２２は、ソフトウェアの部品を備えており、また性質的にモジュール式であり、クライアントが求める独自のおよび／またはカスタムされた特徴により能力が強化されるようにする。同様に、他の要素を変更することなく、既存の機能性を増大させる能力を支援する。実施形態によっては、全ては、コアの金融スイッチングエンジン２０２やＨＳＭでさえも、プラグイン２２２として実装される。
【００５８】
そのため、実施形態によっては、プラグイン２２２は以下のものを含み得る：コアの金融スイッチングエンジン２０２を実行するプラグインと、１つ以上のセキュリティモジュール２０４（例えばＨＳＭのソフトウェアを含む）の機能を実行する１つ以上のプラグインと、サービス・エンドポイント端末１０８と（ＰｏＳネットワークやＥＦＴＳサーバのような何らかの関連するインフラストラクチャを介して）連絡するための１つ以上のサービス・エンドポイント・インタフェースのプラグインと、１つ以上の取引処理プラグイン、例えばプロバイダ・システム２１０との連絡用のもの。サービス・エンドポイント・インタフェースのプラグインは、ＰｏＳネットワークを介してＰｏＳ端末２１２と連絡するＰｏＳプラグイン、および／またはＡＴＭネットワーク（ＥＦＴＳサーバ２１６を含む）を介してＡＴＭ２１４と連絡するＡＴＭプラグイン、を含むことがある。取引処理プラグインは、関係するプロバイダ・システム２１０と連絡することにより金融取引を処理するように構成される。プラグインには、オンライン取引および／または前払い口座の取引のためのプラグインもあるとよい。このように、プラグイン２２２は、前述のフィルタ２０８の機能の一部または全部を実現できる。
【００５９】
実施形態によっては、ＤＡＬ２２０は前述のプラグイン２２２の１つとして実装されてもよい。システムは１つ以上の他のプラグイン２２２（図示せず）を含んでいてもよく、例えば：ＤＡＬ２２０を介してデータベース２１８に取引を記録するための取引記録プラグイン、取引に関する報告（例えば、口座の入出金のレポート）を作成する報告プラグインと、システム全体にわたって使用される別々の通信プロトコル間での変換を行うプロトコル変換プラグインと、および／または、取引のライフサイクルを管理する取引ライフサイクル・プラグイン、を含んでいてもよい。
【００６０】
プラグイン２２２は、後で詳しく説明するように、取引を行うために互いに連結されるとよい。
【００６１】
ここで、図３にシステムの実際の物理的な実装、特に分散性を示す。システムは、複数の物理的なデータセンタ１０６の間に分散した複数のプラグイン２２２（上述してきたようなもの）を含む。物理的なデータセンタは、複数の異なる各自の物理的な場所、例えば別々の建物、別々の街、あるいは別々の国にさえも実装される。実施形態によっては、少なくとも３つのデータセンタがあるとよく、あるいは少なくとも１０つまたは数十のデータセンタがあってもよく、さらには１００個をも越えてデータセンタが存在してもよい。既述のように、データセンタ１０６はプライベートネットワーク１１０を介して互いに接続され、プライベートネットワークは、プライベートネットワークのインフラストラクチャ、および／または、インターネットのようなパブリックネットワーク上に実装される（仮想プライベートネットワークと呼ばれることがある）プライベートプロトコルを含んでいるとよい。
【００６２】
プラグイン２２２が別々のデータセンタ１０６の間に分散していると述べたが、これは以下の２つのうち片方のことを意味することがあり、あるいは両方のことを意味することもある：第１には、プラグインの別々の種類が別々のデータベースに実装されることを意味することがある（例えば、コア部２０２は１つのデータセンタ１０６に、ＡＴＭインタフェースは別のところに、など）；および／または第２には、あるプラグインの別々のインスタンスが別々のデータセンタで並列的に実装され得ることを意味することがある（例えば、コア部２０２のインスタンスは複数のデータセンタ１０６で実装されることがあり、ＡＴＭインタフェース２０８ｂのインスタンスは複数のデータセンタ１０６で実装されることがある、など）。つまり、各プラグイン２２２が１つ以上のデータセンタ１０６で物理的に保存および／または実行されるとともに、別々のプラグイン２２２が別々のデータセンタで少なくとも部分的に保存および／または実行され、あるいは、場合によっては各プラグインが全てのデータセンタ１０６に分散する。特定のプラグイン２２２の複数のインスタンスが特定のデータセンタ１０６上で並行して実行されてもよいことにも留意されたい。ここでインスタンスは、別々のデータセンタ１０６に保存された同一の（または実質的に同等の）プラグイン２２２の別々のコピー、または特定のデータセンタにおいて動作する同一のコピーの別々のインスタンス（すなわち、別々の取引で並行して働く同一のコピー）に係るものといえる。
【００６３】
プラグイン２２２と物理的データセンタ１０６との間には、データセンタ１０６の基盤となる、物理的な、分散した実体からプラグイン２２２を取り込むように構成されたオペレーティングシステム３０２が設けられる。これはプラグイン２２２が、システムの物理的実装の分散構造について何ら可視性を持たず、必要としないことを意味する。特定のプラグイン２２２が別のプラグイン２２２宛てのメッセージを送信する場合、オペレーティングシステムにのみメッセージを発行し、何らデータセンタ１０６の物理的アドレスを指定しない（また、何らこれを行う必要もない）。ソースおよび宛先プラグイン２２２（あるいはプラグインのソースおよび宛先インスタンス）を実行するデータセンタ１０６間のメッセージの物理的な経路決定は、プラグイン２２２がそれを知る必要はなく、オペレーティングシステム３０２によって処理される――むしろプラグインはＯＳを介して別のプラグインへメッセージを送るだけであり、プラグイン２２２は、別々の分散型データセンタ１０６の識別を必要としない。こうしてオペレーティングシステムがネットワーク１１０を介した基盤の物理的ルーティングを処理する一方で、プラグイン２２２はビジネスロジックを処理する。
【００６４】
オペレーティングシステム３０２自体は、データセンタの一部または全部の間で分散された形式で実装されてもよい。これには、プラグインまたはプラグインのインスタンスをデータセンタにマッピングするプラグイン・ルックアップテーブルを実装すること、および／またはどのプラグインが利用可能であるかを記録することを含めてもよく、このときルックアップテーブルはデータセンタの一部または全部に分散される。これに代えて、ルックアップを集中的に実装してもよい。いずれにしても、プラグイン２２２からメッセージを受信すると、オペレーティングシステム３０２はこうして処理のためにメッセージが送られるべき実際の物理的宛先を探索することができる。
【００６５】
オペレーティングシステム３０２は、システム全体で使用されるメモリおよび／または処理リソースの負担を１つのデータセンタ１０６が過度に負わないように、別々のプラグイン２２２またはプラグイン２２２のインスタンスの保存および／または実行の負荷を別々のデータセンタ１０６間で最適に釣り合わせるべく負荷平衡化を実行するよう構成されるとよい。負荷平衡化の仕組みは、以下のようなパラメータを考慮する：ＣＰＵ使用量やメモリなどのデータセンタ１０６の内部リソース、そしてＴＣＰ接続やデータベース接続やネットワーク遅延時間などの外部リソース。プラグイン・インスタンス数の実行時増減が必要に応じて可能であり、これは手動または自動で行うことができる。組み込みのインテリジェント負荷平衡化機能は手動の構成変更を行わなくても動作することができるが、実施形態によっては、オペレータにより以下のような明示的な手引きを与えることができる：設定キューの閾値、優先度の設定、応答タイムアウトの設定、スループット時間の設定、および／またはメモリ消費量閾値の設定。負荷平衡化は、インテリジェント・メッセージ・ルーティングの一形態と考えることができる。
【００６６】
さらに、オペレーティングシステムは、データセンタ１０６間での取引のメッセージにとってネットワーク１１０を介した最良の経路を見つけるために最良コスト・ルーティングを実行するように構成されるとよい。このインテリジェント・ディスパッチは、経路の遅延時間、メッセージキューのサイズ、処理速度、優先度、プラグイン可用性、および／またはプラグイン応答に基づいて最適な経路コストを自動的に計算する（例えば、プラグインは、それ自身のノードを欠陥として定義することができる）。上記の属性は、構成の変更によって手動で制御することも、自動的に制御することもできる。
【００６７】
好ましくは、オペレーティングシステムは（スクリプト言語として使用される）Ｊａｖａ、ＬＵＡおよび／またはＣ＋＋などの複数種のスクリプト言語を解釈できるように構成され、これによりこうした複数種の言語でプログラムされたプラグイン２２２をサポートするように構成される。また好ましくは、システムはプラグイン２２２のうち別々のもの同士の間、および／またはコアのスイッチングエンジン２０２とプラグイン２２２との間で通信を行うための、異なる通信プロトコルをサポートするように構成される。例えば、通信プロトコルはＳＯＡＰ、ＲＥＳＴ、ＡＮＳ．１および／またはＨ２Ｈプロトコルを含むことがある。実施形態によっては、プロトコル変換は、１つ以上のプラグイン２２２によって実装され得る。
【００６８】
さらにシステムは、複数のデータベース形式、例えばＳＱＬ、ＭｙＳＱＬ、ＰｏｓｔＧｒｅＳＱＬ、ＭＳ−ＳＱＬ、ＤＢ２、および／またはＯｒａｃｌｅをサポートするデータ抽象化レイヤ（ＤＡＬ）２２０を含み、データベース非依存のものであることが好ましい。実施形態によってはＤＡＬ２２０は前述のプラグインの１つであってもよいし、そうでなくといもよい。実施形態によっては、データベースはデータセンタの一部または全部に分散されていてもよいし、集中的に実装されていてもよい。
【００６９】
図４は、取引を形成するために互いに連結される複数のプラグイン２２２の一例を示しており、ここでの取引はＡＴＭ２１４とクレジットまたはデビットカード・プロバイダ２１０との間でのクレジットまたはデビットカード取引である。取引は以下のものを用いて形成される：取引ライフサイクル・プラグイン４１０、コアの金融スイッチングエンジン・プラグイン２０２のインスタンス、セキュリティ・プラグイン２０４のインスタンス、記録プラグイン４０８のインスタンス、通信プラグイン４０４およびＥＦＴ Ｈ２Ｈフィルタプラグイン２２２の形態をとる２つのサービス・エンドポイント・プラグインのインスタンス、そしてクレジットまたはデビットカード・フィルタ２０８ａおよび通信フィルタ４０６の形態をとる２つの取引処理プラグインのインスタンス。プラグインは接続ごとに動的にロードされる。実施形態によっては、特定の取引のためのプラグイン２２２のインスタンスは、取引ライフサイクル・プラグイン４１０によってそのライフサイクルにわたって一括りにされて管理される。
【００７０】
ＡＴＭ２１４は、ＥＦＴＳ２１６およびサービス・エンドポイント・プラグイン４０４，２０８ａを介してスイッチングコア２０２へリクエスト・メッセージを発行する。スイッチングエンジン２０２は、メッセージを検査してそれがクレジットまたはデビットカード取引のリクエストであることを判定し、これによりメッセージが決済のためにクレジットまたはデビットカード・プロバイダのシステム２１０宛てとするべきと判定する。したがって、スイッチングエンジン２０２は、プロバイダ・インタフェース・プラグイン２０８ａ，４０６を介して、クレジットまたはデビットカード決済システム２１０にメッセージを転送する。こうして取引がカードプロバイダ・システム２１０によって決済される（または拒否される）と、スイッチ２０２、インタフェース４０６，２０８ａ，２０８ｂ，４０４０、およびＥＴＦＳ２１６を介して、ＡＴＭ２１４に応答を返す。取引の１つ以上のステージの各々も、ＤＡＬ２２０を介して記録プラグイン４０８によりデータベース２１８に記録されるとよい。セキュリティ・プラグイン２０４は、ＨＳＭのハードウェア４１２を介して、物理データセンタ１０６間で通信される任意のメッセージが適切に暗号化されるように、メッセージの暗号化処理を行う。
【００７１】
説明してきたシステムは、取引やインタフェースやデータフォーマットのいずれか特定の種別に限定されない、一般的かつ普遍的なリアルタイムスイッチを提供する。上記のクレジットカード取引またはデビットカード取引の例は、一般的なアーキテクチャの一例に過ぎず、オンライン取引、前払い口座取引、口座の閲覧、および／または自動的アラート発生のための口座の監視などといった、他の多くの機能にも使用できる。
【００７２】
モジュール式プラグインまたは複数のプラグインの別々のインスタンスが複数の分散データセンタ間に分散しているということは、複数の物理的な処理センタが１つの論理的な処理センタに混ざり合うことを意味する。これには多くの利点がある。例えば、障害やメンテナンスの状況であっても停止時間をゼロにすることができる。欠陥が単一ならば、別のロケーションにおける他のプラグインで自動的に置き換えることができる。さらに、このクラウド設計によれば、１つのデータセンタ１０６でアップグレードを実施することにより、システムの残りの部分を変更またはシャットダウンすることなく、リアルタイムのアップグレードおよび構成が可能になる。プラグイン２２２は、接続を失うこともなく、実行時間中に更新またはアップデートすることができ、例えばプラグインの新しいバージョンに置き換えたり、プラグイン・テーブル内のバージョン管理名を変更したり、プラグインに更新メッセージを送信したりできる。また、この設計は高い性能と拡張性をもたらし、コンフィギュレーションを行うだけで、あるいは場合によっては自動的に追加のプラグインやプラグインのインスタンスおよび/またはデータセンタを追加することによって、システムの残りの部分をシャットダウンおよび／または再稼働させることなく、システムを拡張することができる。
【００７３】
このシステムは柔軟性があり、拡張が容易で、プラグインは第三者によって開発および交換が可能である。これはアクセスまたはデータ操作のための複数のインタフェース、例えばＳＯＡＰ、ＲＥＳＴ、および／またはＡＳＮ．１を提供し、ＬＵＡをも含む複数のスクリプト言語を許容する。さらにこのシステムは、自動負荷平衡化や、メモリ管理や、インテリジェントな「経路のコスト」計算を提供する。
【００７４】
このシステムは、金融情報の他にも情報を取り扱うことができることが理解されよう。よってこのシステムは、あらゆる種類の電子メッセージを取り扱うことができる点で「普遍的」であると考えることができる。
【００７５】
上述したように、集中型のオペレーティングシステムおよびプラグインの方式は、機能の分散を可能にする。オペレーティングシステムは、例えば、メッセージ配信、マルチスレッド、プラグインの取り扱い、データベース抽象化レイヤ、メモリ管理、パフォーマンス制御などを扱うことができる。プラグインは、例えばビジネスロジックを実施することができ、他のプラグインと連結する機能もある。さらにこのシステムは、クラウドベースのシステムとして容易に実現できる。
【００７６】
実施形態はオペレーティングシステムの特定の種類に何ら限定されない。オペレーティングシステムは例えば、Ｌｉｎｕｘ、Ｗｉｎｄｏｗｓなどとすることができる。いずれのオペレーティングシステムを使用しても、実施形態によっては、プラグインにビジネスロジックなどの機能を取り込むことができる。
【００７７】
以上の実施形態は単に例示として記載されたものと理解されたい。当業者には本明細書の開示から他の変形例が明らかになるであろう。本開示の範囲は、記載の実施形態に限定されるものではなく、添付の特許請求の範囲によってのみ限定されるものである。
【図１】
0006590914.tif 000002
【図２】
0006590914.tif 000003
【図３】
0006590914.tif 000004
【図４】
0006590914.tif 000005