特許第6590914号(P6590914)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ ユーロネット ユーエスエー エルエルシーの特許一覧

<>
  • 特許6590914-金融取引システム 図000002
  • 特許6590914-金融取引システム 図000003
  • 特許6590914-金融取引システム 図000004
  • 特許6590914-金融取引システム 図000005
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6590914
(24)【登録日】2019年9月27日
(45)【発行日】2019年10月16日
(54)【発明の名称】金融取引システム
(51)【国際特許分類】
   G06Q 40/02 20120101AFI20191007BHJP
【FI】
   G06Q40/02
【請求項の数】26
【全頁数】18
(21)【出願番号】特願2017-513343(P2017-513343)
(86)(22)【出願日】2015年5月21日
(65)【公表番号】特表2017-520067(P2017-520067A)
(43)【公表日】2017年7月20日
(86)【国際出願番号】EP2015061320
(87)【国際公開番号】WO2015177305
(87)【国際公開日】20151126
【審査請求日】2018年5月16日
(31)【優先権主張番号】1409051.8
(32)【優先日】2014年5月21日
(33)【優先権主張国】GB
(73)【特許権者】
【識別番号】516347916
【氏名又は名称】ユーロネット ユーエスエー エルエルシー
(74)【代理人】
【識別番号】110001298
【氏名又は名称】特許業務法人森本国際特許事務所
(72)【発明者】
【氏名】ブルックナー、マーチン
【審査官】 山崎 誠也
(56)【参考文献】
【文献】 特開2002−108683(JP,A)
【文献】 特表2005−523505(JP,A)
【文献】 特表2007−518175(JP,A)
【文献】 米国特許出願公開第2008/0299947(US,A1)
【文献】 米国特許出願公開第2010/0063895(US,A1)
【文献】 特許第4150425(JP,B2)
【文献】 ハイパフォーマンスな金融システムを低コストで実現,Java WORLD,日本,(株)IDGジャパン,2003年 1月 1日,第7巻 第1号,資料請求No.058
【文献】 Web系システム開発の困難を乗り越える,[online],2007年10月 6日,p.18-24,[令和1年5月15日検索], インターネット<URL:https://web.archive.org/web/20071006154423/https://www.cac.co.jp/softechs/pdf/st2502_04.pdf>
(58)【調査した分野】(Int.Cl.,DB名)
G06Q 10/00−99/00
(57)【特許請求の範囲】
【請求項1】
金融スイッチングエンジンを提供する金融取引システムであって、
それぞれ異なる物理的ロケーションに実装され、互いにプライベートネットワークを介して相互に接続されている、分散した複数の異なる物理データセンタと、
前記金融取引システムのそれぞれ異なる機能を実行するようにそれぞれ構成された、複数のプラグインと、
取引を実行するために互いにメッセージを通信し合うよう構成された前記プラグインが動作するオペレーティングシステムと、
を含む金融取引システムにおいて、
前記オペレーティングシステムが、前述の物理的データセンタの一部または全部にわたって分散しており、
前記プラグインは、前記データセンタの一部または全部に分散しており、前記オペレーティングシステムは、前記プラグインが前述のデータセンタのうち特定のものを前記メッセージの宛先として指定する必要なく前記オペレーティングシステムを介して互いに前述のメッセージを通信し合うようにするとともに、前記オペレーティングシステムが前記プラグインに経路の可視性を必要とせずに前記プライベートネットワーク上における前記データセンタ間の前記メッセージの経路制御を行うことになるように、分散した前記データセンタから前記プラグインを取り込むように構成されている、
金融取引システム。
【請求項2】
金融スイッチングエンジンが、前述のプラグインの1つである、請求項1に記載の金融取引システム。
【請求項3】
プラグインが、前述の取引の1つ以上に対して暗号および/または1つ以上の他のセキュリティ手段を適用するように構成されたセキュリティモジュールを少なくとも1つ含む、請求項1または請求項2に記載の金融取引システム。
【請求項4】
セキュリティモジュールが、ハードウェアセキュリティモジュールを含む、請求項3に記載の金融取引システム。
【請求項5】
プラグインが、1つ以上の金融サービス・エンドポイント端末と連絡するようにそれぞれ構成された1つ以上のエンドポイント・インタフェースモジュールを含む、請求項1ないし請求項4のいずれか1項に記載の金融取引システム。
【請求項6】
1つ以上のエンドポイント・インタフェースモジュールが、1つ以上の販売時点管理端末と連絡するように構成された販売時点管理インタフェースモジュールを含む、請求項5に記載の金融取引システム。
【請求項7】
1つ以上のエンドポイント・インタフェースモジュールが、1つ以上の自動預入支払機と連絡するように構成されたATMインタフェースモジュールを含む、請求項5または請求項6に記載の金融取引システム。
【請求項8】
プラグインが、金融プロバイダシステムと連絡することによりデビットおよび/またはクレジットカード取引の処理を行うように構成されたクレジットおよび/またはデビットカード取引処理モジュールを含む、請求項1ないし請求項7のいずれか1項に記載の金融取引システム。
【請求項9】
プラグインが、オンライン取引処理モジュールを含む、請求項1ないし請求項8のいずれか1項に記載の金融取引システム。
【請求項10】
プラグインが、前払い口座と連絡することにより前払い商品またはサービス用の前払い口座残高の補充および/または引き落とし取引の処理を行うように構成された前払い取引プラグインを含む、請求項1ないし請求項9のいずれか1項に記載の金融取引システム。
【請求項11】
前払い取引プラグインが、プリペイド電話残高の補充または引き落とし取引の処理を行うように構成された前払い電話プラグインを含む、請求項10に記載の金融取引システム。
【請求項12】
プラグインが、前述のメッセージのフィルタリングを行うように構成されたメッセージフィルタリングプラグインを含む、請求項1ないし請求項11のいずれか1項に記載の金融取引システム。
【請求項13】
プラグインが、前述の取引の1つ以上についての報告および/または口座の状態についての報告を行うように構成された報告モジュールを含む、請求項1ないし請求項12のいずれか1項に記載の金融取引システム。
【請求項14】
プラグインが、データベース内の前述の取引の1つ以上を記録するための記録モジュールを含む、請求項1ないし請求項13のいずれか1項に記載の金融取引システム。
【請求項15】
オペレーティングシステムが、データセンタ間の負荷平衡化を行うように構成された負荷管理アルゴリズムを含む、請求項1ないし請求項14のいずれか1項に記載の金融取引システム。
【請求項16】
オペレーティングシステムが、前述のメッセージにとってデータセンタ間の最適な経路の決定を行うように構成された経路コストアルゴリズムを含む、請求項1ないし請求項15のいずれか1項に記載の金融取引システム。
【請求項17】
オペレーティングシステムが、プラグイン間で前述のメッセージの1つ以上の通信を行うための複数種の通信プロトコルに対応するように構成されている、請求項1ないし請求項16のいずれか1項に記載の金融取引システム。
【請求項18】
前述のプラグインが、プロトコル変換プラグインを含んでおり前述の変換を行うように構成されている、請求項に記載の金融取引システム。
【請求項19】
オペレーティングシステムが、複数種のプログラミング言語でプログラムされた複数種のプラグインを実行するために複数種のプログラミング言語を解釈するように構成されている、請求項1に記載の金融取引システム。
【請求項20】
前述の取引の1つ以上の記録のための、および/または、システムの構成パラメータおよび/または取引ルールの保存のためのデータベースを含む、請求項1ないし請求項19のいずれか1項に記載の金融取引システム。
【請求項21】
複数のデータベース形式に対応するように構成されたデータ抽象化レイヤを含む、請求項20に記載の金融取引システム。
【請求項22】
データ抽象化レイヤが、前述のプラグインの1つである、請求項21に記載の金融取引システム。
【請求項23】
データセンタが、複数の建物、複数の町あるいは都市、および/または複数の国に存在する、請求項1ないし請求項22のいずれか1項に記載の金融取引システム。
【請求項24】
プライベートネットワークが、プライベートネットワークのインフラストラクチャを含む、請求項1ないし請求項23のいずれか1項に記載の金融取引システム。
【請求項25】
プライベートネットワークが、パブリックネットワークのインフラストラクチャ上に実装されるプライベートプロトコルを含む、請求項1ないし請求項24のいずれか1項に記載の金融取引システム。
【請求項26】
金融スイッチングエンジンを提供するコンピュータプログラム製品であって、
オペレーティングシステムとして動作して、それぞれ異なる物理的ロケーションに実装され、互いにプライベートネットワークを介して相互に接続されている、分散した複数の異なる物理的データセンタを含む金融取引システムのそれぞれ異なる機能を実行するように構成された複数のプラグインを実行し、
金融取引を実行するために前記プラグイン間でメッセージを通信する
という処理を1つ以上のプロセッサ上で実行されて行うように構成された、コンピュータ読み取り可能な記録媒体に組み込まれたコードであるコンピュータプログラム製品において、
前記オペレーティングシステムが、前述の物理的データセンタの一部または全部にわたって分散しており、
前記プラグインは、データセンタの一部または全部に分散しており、前記オペレーティングシステムは、前記プラグインが前述のデータセンタのうち特定のものを前記メッセージの宛先として指定する必要なく前記オペレーティングシステムを介して互いに前述のメッセージを通信し合うようにするとともに、前記オペレーティングシステムが前記プラグインに経路の可視性を必要とせずにプライベートネットワーク上における前記データセンタ間の前記メッセージの経路制御を行うことになるように、前記分散したデータセンタからプラグインを取り込むよう構成されている、
コンピュータプログラム製品。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、金融取引を行うための金融スイッチングエンジンの分野に関するものである。
【背景技術】
【0002】
様々な要素間での金融取引、例えば自動預入支払機(ATM)または販売時点管理(ポイントオブセールス、PoS)端末を起点として金融サービスプロバイダの決済システムに対する取引の通信を行うことや、プリペイド電話の利用時間口座のような前払い口座へATMやPoS端末から補充を行うことについて、これらを行うための金融取引システムを提供することが知られている。このシステムは金融スイッチングエンジンを含んでおり、これは取引メッセージをシステムの1要素から受け取り、そのメッセージを他所へ振り向けるにあたっての一連のルールを有している。スイッチングエンジンはメッセージを受け取って、その内容を検査し、そのメッセージをどこへ転送するかについて決定するためにその内容へルールを適用する。
【0003】
金融取引システムは、金融取引の実行に関係するその他の機能、例えば口座の収支を確認したり、その他レポートを作成したり、データベースに取引を記録したり、口座を監視して警報を発したりする機能も含んでいる。ユーロネットの出願である特許文献1は複数の、取換可能な、標準的なインタフェースの、モジュール式金融サービスのアプリケーションを含むシステムを開示しており、ここでアプリケーションはそれぞれが異なる金融サービスを提供し、例えば口座へのアクセス用のもの、口座の管理用のもの、取引の管理用のもの、イベントメッセージング用のものがある。
【0004】
既存の取引システムにおいては、システムがスイッチ機能およびその他金融の機能を有しており、これらの機能は共に中央データセンタに実装されていて、中央データセンタは1つ以上のデータネットワークを介して自身の様々なエンドポイント(例えばATM,PoSシステム,および/または金融プロバイダの決済システム)に向けて外部と繋がっている。データセンタは複数の異なる金融ネットワーク(例えば1つ以上のATMネットワーク,PoSネットワーク,および/または金融プロバイダ・ネットワーク)の間で取り次ぎを行う中央要素として配置されているとよい。メインのデータセンタが停止した場合に備えて、バックアップ用データセンタも用意されているとよい。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】国際公開第02/13129号
【発明の概要】
【発明が解決しようとする課題】
【0006】
既存の方式は、“アクティブ−パッシブ”方式をとるものとして説明されることがあり、どの時点でも複数のデータセンタのうち1つだけがアクティブである。通常の動作では、メインのデータセンタがアクティブな一方で、バックアップ用データセンタは休止している;そして、メインのデータセンタに障害があった場合には、バックアップ用のデータセンタがアクティブな一方でメインのデータセンタは機能しない。
【0007】
これに対し、本開示は“アクティブ−アクティブ”方式を提供するものであり、これはどの時点でも複数の異なるデータセンタがアクティブなものである。さらに、本開示はこの思想を、分散型の、クラウドベースの方式に発展し、これは複数の異なるモジュール式のプラグインアプリケーションが複数の異なるデータセンタ間で複数の物理的ロケーションにわたって分散するものである。
【課題を解決するための手段】
【0008】
金融スイッチングエンジンを提供する金融取引システムが得られ、この金融取引システムは、それぞれ異なる物理的ロケーションに実装され、互いにプライベートネットワークを介して相互に接続されている、分散した複数の異なる物理データセンタと、前記金融取引システムのそれぞれ異なる機能を実行するようにそれぞれ構成された、複数のプラグインと、取引を実行するために互いにメッセージを通信し合うよう構成された前記プラグインが動作するオペレーティングシステムと、を含み、前記オペレーティングシステムが、前述の物理的データセンタの一部または全部にわたって分散しており、前記プラグインは前記データセンタの一部または全部に分散しており、前記オペレーティングシステムは分散した前記データセンタから前記プラグインを取り込むように構成されており、これにより前記プラグインは前述のデータセンタのうち特定のものを前記メッセージの宛先として指定する必要なく前記オペレーティングシステムを介して互いに前述のメッセージを通信し合うようになっているとともに、前記オペレーティングシステムは前記プラグインに経路の可視性を必要とせずに前記プライベートネットワーク上における前記データセンタ間の前記メッセージの経路制御を行うようになっている。
【0009】
実施形態によっては、金融スイッチングエンジンが、前述のプラグインの1つであると好ましい。
【0010】
プラグインがデータセンタ間で分散していると述べたが、これは、いくつかの別々のプラグインがいくつかの別々のデータセンタで保存および/または実行され、かつ/または1つ以上のプラグインの1つ1つのインスタンスが複数のデータセンタで物理的に保存および/または実行されるということである(つまり、特定のプラグインが2つ以上のデータセンタで物理的に保存および/または実行されるということである)。後者の場合、特定のプラグインを保存および/または実行するにあたっての負担が複数のデータセンタで分担され、かつ/またはそのプラグインの複数のインスタンスが別々のデータセンタで保存および/または実行される、ということを意味し得る。
【0011】
例えば、金融スイッチングエンジンが1つのデータセンタで保存および/または実行されるとよく、その一方で、スイッチングエンジン(例えば、クレジットカードの取引処理プラグイン、前払い口座プラグイン、あるいはATMや販売時点管理端末のインタフェースプラグイン)によってスイッチされる取引に関わるもう1つのプラグインが、もう1つのデータセンタで保存および/または実行されるとよい。これに代えて、またはこれに加えて、金融スイッチングエンジンなどのいずれかの特定のプラグインのインスタンスが、複数の異なるデータセンタで保存および/または実行されてもよい。
【0012】
さらに、プラグインは自身がどのデータセンタに実装されているか、あるいは自身が通信している相手のプラグインがどのデータセンタに実装されているかを知る必要がなく、またシステムの下位層の分散性についての何らかの可視性や判断力を持つようにプログラムされる必要もない。むしろ、プラグインはオペレーティングシステムに対してメッセージを送信するだけであり、オペレーティングシステムはプラグインに対して不透明な方法で下位層の物理的なルート決定を制御する。したがってオペレーティングシステムはプラグインから見てシステムが1つの論理的データセンタとして働くように抽象層を提供し、システムは効率的に“プライベートクラウド”の一種として働く。
【0013】
本開示の分散システムは以下の利点のうち1つ以上を得るために用いることができる。まず、1つのデータセンタに障害があった場合に、障害の生じたデータセンタにのみ実装されているモジュールまたはモジュールのインスタンスを除いては(これがあったとしても)、システムの他の部分は停止時間ゼロで動作し続けることができる。また、プラグインおよび/またはデータセンタは、システムの他の部分に対する停止時間ゼロでアップグレードを行うことができる。さらに、負荷平衡化の機会拡充および/または拡張性の向上も得られる。
【0014】
実施形態によっては、プラグインが、前述の取引の1つ以上に対して暗号および/または1つ以上の他のセキュリティ手段を適用するように構成されたセキュリティモジュールを少なくとも1つ含むのが好ましい。
【0015】
実施形態によっては、セキュリティモジュールが、ハードウェアセキュリティモジュールを含むのが好ましい。
【0016】
実施形態によっては、プラグインが、1つ以上の金融サービス・エンドポイント端末と連絡するようにそれぞれ構成された1つ以上のエンドポイント・インタフェースモジュールを含むのが好ましい。
【0017】
実施形態によっては、1つ以上のエンドポイント・インタフェースモジュールが、1つ以上の販売時点管理端末と連絡するように構成された販売時点管理インタフェースモジュールを含むのが好ましい。
【0018】
実施形態によっては、1つ以上のエンドポイント・インタフェースモジュールが、1つ以上の自動預入支払機と連絡するように構成されたATMインタフェースモジュールを含むのが好ましい。
【0019】
実施形態によっては、プラグインが、金融プロバイダ・システムと連絡することによりデビットおよび/またはクレジットカード取引の処理を行うように構成されたクレジットおよび/またはデビットカード取引処理モジュールを含むのが好ましい。
【0020】
実施形態によっては、プラグインが、オンライン取引処理モジュールを含むのが好ましい。
【0021】
実施形態によっては、プラグインが、前払い口座と連絡することにより前払い商品またはサービス用の前払い口座残高の補充および/または引き落とし取引の処理を行うように構成された前払い取引プラグインを含むのが好ましい。
【0022】
実施形態によっては、前払い取引プラグインが、プリペイド電話残高の補充または引き落とし取引の処理を行うように構成された前払い電話プラグインを含むのが好ましい。
【0023】
実施形態によっては、プラグインが、前述のメッセージのフィルタリングを行うように構成されたメッセージフィルタリングプラグインを含むのが好ましい。
【0024】
実施形態によっては、プラグインが、前述の取引の1つ以上についての報告および/または口座の状態についての報告を行うように構成された報告モジュールを含むのが好ましい。
【0025】
実施形態によっては、プラグインが、データベース内の前述の取引の1つ以上を記録するための記録モジュールを含むのが好ましい。
【0026】
実施形態によっては、オペレーティングシステムが、データセンタ間の負荷平衡化を行うように構成された負荷管理アルゴリズムを含むのが好ましい。
【0027】
実施形態によっては、オペレーティングシステムが、前述のメッセージにとってデータセンタ間の最適な経路の決定を行うように構成された経路コストアルゴリズムを含むのが好ましい。
【0029】
実施形態によっては、オペレーティングシステムが、プラグイン間で前述のメッセージの1つ以上の通信を行うための複数種の通信プロトコルに対応するように構成されているのが好ましい。
【0030】
実施例によっては、前述のプラグインが、プロトコル変換プラグインを含んでおり前述の変換を行うように構成されているのが好ましい。
【0031】
実施形態によっては、オペレーティングシステムが、複数種のプログラミング言語でプログラムされた複数種のプラグインを実行するために複数種のプログラミング言語を解釈するように構成されているのが好ましい。
【0032】
実施形態によっては、システムが、前述の取引の1つ以上の記録のための、および/または、構成パラメータおよび/またはシステムの処理ルールの保存のためのデータベースを含むのが好ましい。
【0033】
実施形態によっては、システムが、複数のデータベース形式に対応するように構成されたデータ抽象化レイヤを含むのが好ましい。
【0034】
実施形態によっては、データ抽象化レイヤが、前述のプラグインの1つであるのが好ましい。
【0035】
実施形態によっては、データセンタが、複数の建物、複数の町あるいは都市、および/または複数の国に存在するのが好ましい。
【0036】
実施形態によっては、プライベートネットワークが、プライベートネットワークのインフラストラクチャを含むのが好ましい。
【0037】
実施形態によっては、プライベートネットワークが、パブリックネットワークのインフラストラクチャ上に実装されるプライベートプロトコルを含むのが好ましい。
【0038】
ここで開示するもう1つの側面によれば、金融スイッチングエンジンを提供するコンピュータプログラム製品が得られ、このコンピュータプログラム製品は、オペレーティングシステムとして動作して、それぞれ異なる物理的ロケーションに実装され、互いにプライベートネットワークを介して相互に接続されている、分散した複数の異なる物理的データセンタを含む金融取引システムのそれぞれ異なる機能を実行するように構成された複数のプラグインを実行し、金融取引を実行するために前記プラグイン間でメッセージを通信するという処理を1つ以上のプロセッサ上で実行されて行うように構成された、コンピュータ読み取り可能な記録媒体に組み込まれたコードであり前記オペレーティングシステムが、前述の物理的データセンタの一部または全部にわたって分散しており、前記プラグインはデータセンタの一部または全部に分散しており、オペレーティングシステムは前記分散したデータセンタからプラグインを取り込むよう構成されており、これにより前記プラグインは前述のデータセンタのうち特定のものを前記メッセージの宛先として指定する必要なく前記オペレーティングシステムを介して互いに前述のメッセージを通信し合うようになっているとともに、前記オペレーティングシステムは前記プラグインに経路の可視性を必要とせずにプライベートネットワーク上における前記データセンタ間の前記メッセージの経路制御を行うようになっている。
【図面の簡単な説明】
【0039】
以下の説明の理解を補助するため、そして実施形態がどのように実施されるかを示すため、添付の図面に参照符号が例として付される。
図1】金融取引システムの集中型実装方式および分散型実装方式を概略的に示す図。
図2】金融取引システムの高レベルアーキテクチャを概略的に示す図。
図3】金融取引システムの分散型実装を概略的に示す図。
図4】複数のプラグインのインスタンスから形成される取引を概略的に示す図。
【発明を実施するための形態】
【0040】
図1は、パッシブ−アクティブ方式と比較したアクティブ−アクティブ方式の概念と、完全分散型の、クラウドベースの方式にまでアクティブ−アクティブ思想を発展させたものを示す。
【0041】
図1(a)は、メインのデータセンタ102およびバックアップ用のデータセンタ104を備えたアクティブ−パッシブ型の実装を示す。クライアントのリクエストがサービス・エンドポイント端末(例えばPoS端末またはATM)から受信されるとき、そのリクエスト・メッセージは処理を受けるためにメインのデータセンタ102へ向けて経路決定される。メインのデータセンタ102が稼働しているという推定により、こうしたクライアント・リクエスト・メッセージはすべてメインのデータセンタ102のみに向けて経路決定される。メインのデータセンタが稼働していないという障害の場合にのみ、リクエスト・メッセージは処理を受けるため代わりにバックアップ用データセンタ104へ向けて経路決定される。したがって、どの時点においてもデータセンタ102,104のうち1つだけがアクティブである。
【0042】
図1(b)はアクティブ−アクティブ型の実装の思想を示しており、これは2つ(またはそれ以上)のデータセンタ106を備えていて、これらはいずれも「メインの」データセンタとみなされる必要がない。クライアントのリクエストがサービス・エンドポイント端末(例えばPoS端末またはATM)から受信されるときには、リクエストに応じて、処理を受けるためにどちらのデータセンタ106に向けて経路決定されてもよい。したがって、クラアント・リクエスト・メッセージのいくつかはデータセンタ106の1つへ向けて経路決定され、こうしたメッセージの他のものは他のデータセンタ106へ向けて経路決定されて、両方のデータセンタは、実質的に同時にアクティブであり、異なるリクエストを処理することになる。
【0043】
図1(c)は、ここで示す実施形態に係り、アクティブ−アクティブ方式をクラウドシステムへと発展させたものを示す。このシステムは複数の物理的データセンタ106を有しており、これらは複数のロケーション、例えば別々の建物、別々の敷地、別々の町または都市、場合によっては別々の国にまでわたって分散している。この別々の物理的データセンタ106は複数のサービスおよび/または装置とそれぞれ関連付いているとよい。別々の物理的データセンタ106はプライベートネットワーク110を介して互いに接続される。プライベートネットワーク110は、プライベートな物理的ネットワークのインフラストラクチャにより、またはインターネットのようなパブリックな物理的ネットワークのインフラストラクチャ上に実装されるプライベートな(セキュアな)ネットワークプロトコルにより、あるいはこれらの組み合わせにより実装されるとよい。複数のサービス・エンドポイント端末108(例えばPoS端末および/またはATM)もプライベートネットワーク110に接続されており、よってこれらは分散したデータセンタ106のいずれともプライベートネットワークを介して通信するよう動作可能である。どの時点においても、別々のデータセンタ106のうち2つ以上あるいは全てがアクティブであり、同時進行で取引を処理できる。サービス・エンドポイント108からサービス・リクエスト・メッセージが送信されるときには、リクエストの性質、システムの現在負荷、メッセージのルート決定のコストなどの要因に応じていずれかの1つ以上のデータセンタへと割り当てられる。クラウド方式においては、物理的な処理センタの複数が、論理的な処理センタにより代行され得る。実施形態の一例では、多くの物理的な処理センタが単一の、大きな論理的処理センタにより代行され得る。言い換えると、実施形態のいくつかにおいては、プライベートネットワークとし得るインターネット/イントラネット110を介して、使用中のエンドポイント端末108へ利用者が接続できる“クラウド”内に物理的な処理センタ106が含まれる。
【0044】
図2は、ここに例示する実施形態に係る金融取引システムのアーキテクチャを示す。このシステムの主な機能は金融スイッチングエンジンを提供することであり、これは複数のサービス・エンドポイント端末108(ユーザー端末)と1つ以上の金融プロバイダ210(取引の別のエンドポイントにあるシステムで、ここで取引が最終的に処理される)との間で仲介として働く。この目的のため、システムは、金融スイッチングエンジン202(コアのスイッチ)と、インタフェースまたはデバイスハンドラとして働く複数のメッセージフィルタ208を備える。システムはさらに、取引と関わり得る追加要素を備える。図2では、これらは例えば少なくとも1つのセキュリティモジュール204およびデータベース218と連絡するためのデータ抽象化レイヤ(data abstraction layer, DAL)を備える。
【0045】
サービス・エンドポイント端末108は、例えば1つ以上の販売時点管理(PoS)端末212、および/または、1つ以上の自動預入支払機(ATM)を備えることがある。金融プロバイダ・システム210は、例えば1つ以上のクレジットまたはデビッドカードのプロバイダの決済システム、オンラインバンキングシステム、および/または1つ以上の前払い商品あるいはサービスのプロバイダの前払い口座システムを備え得る。金融スイッチングエンジン202は、1つ以上のメッセージフィルタ208を介してサービス・エンドポイント端末108と接続されるようになっており、例えば、少なくとも1つの各自のメッセージフィルタを介してサービス・エンドポイント端末212,214の各タイプに接続され、また、エンドポイント108のあらゆる各インフラストラクチャを介する。例えば図2においては、金融スイッチングエンジン202が、1つ以上のメッセージフィルタ208bおよびEFTS(electronic funds transfer server,電子資金移動サーバ)216を含むATMネットワークを介してATM214に接続されてもよいし、1つ以上のメッセージフィルタ208c,208dおよび販売時点管理ネットワーク(図示せず)を介してPoS端末212に接続されてもよい。金融スイッチングエンジン202は、1つ以上のメッセージフィルタ208を介して1つ以上のプロバイダ・システム210にも接続されるものであり、例えば、少なくとも1つの各自のフィルター208aを介して各プロバイダ210に接続される。
【0046】
金融スイッチングエンジン202は、こうしてサービス・エンドポイント端末108とプロバイダ・システム210との間に配置される。金融スイッチングエンジン202はメッセージを受信し、その内容を検査し、その内容に基づいて、スイッチングの一連のルールに従い適切な要素へとメッセージをさらにスイッチするように構成されている。これには例えば、サービス・エンドポイント・デバイス108から各自のフィルター208b,208c,208dを介してサービス・リクエスト・メッセージを受信することと、その後リクエストの性質を判定するため少なくとも十分なメッセージを読み込むことと、処理を行うため適切なプロバイダ210へさらなるフィルタ208aを介して転送することと、同時にメッセージまたはそれに関する情報を記録するためDAL220を介してメッセージや情報を場合によってはデータベース218へ転送すること、が含まれるとよい。もう1つの例として(例えば同じ取引の相補的部分として)、金融スイッチングエンジン202により行われるスイッチングには、(例えばリクエストに応答して)プロバイダ210から各自のフィルタ208aを介して報告メッセージを受信することと、報告としてメッセージの性質を判定するため十分なメッセージを読み込むことと、各自のフィルタ208b,208c,208dを介して関連するエンドポイント端末108へ転送を行うことと、が含まれるとよい。さらに、記録を行うためにDAL220を介してメッセージに関する報告または情報をデータベース218へ送信するステップも含まれるとよい。
【0047】
フィルタ208は、作業の特定部分単位(例えばTCP/IP通信、デバイスハンドラ、マスターカードオンライン・メッセージなど)を実行する構成要素である。実施形態によっては、フィルタ208はコアの金融スイッチングエンジン202には含まれない構成要素である。これはデバイスハンドラ(例えばATM,POS)、ネットワークハンドラ(例えばマスターカード,ビザなど)、その他の特定の機能の処理といった特化した処理を備えることがある。フィルタ202および他の非コアの構成要素は取引を「事前に拒否」し得るが、それでも記録および引き続いてのルート決定を行うためコア部202へのルート決定を行うことが要求されることがある。コアのスイッチングエンジン202は、事前に拒否されたメッセージを検出して“拒否された決定木”をたどり、場合によっては事前に拒否された値を上書きすることがある。
【0048】
実施形態によっては、複数種のフィルタ:スタンドアロン式フィルタ、チェイン式フィルタ、埋め込み式フィルタが存在する場合がある。スタンドアロン式のフィルタは、作業の一単位全体を扱う(例えばマスターカードフィルタなど)。チェイン式フィルタは、順々に連結されたものであるとよく、各フィルタが作業の一単位を遂行してはその結果を次のフィルタへと渡していく。埋め込み式フィルタについては、この考え方ではフィルタが他のフィルタに埋め込まれるようにして、“マスター”フィルタがスタンドアロン式フィルタとして効果的に振る舞うようにする。ただし、マスターフィルタは実際には他のフィルタの集積体を含んでいてよい。同様に、マスターフィルタに埋め込まれたフィルタもスタンドアロン式のフィルタとして機能することが可能である。
【0049】
フィルタの考え方は、独特のネットワーク要件(例えばマスターカード,ビザなど)を扱うネットワーク固有フィルタと同じく、中央集中型および/または一般のネットワークフィルタの補助に用いることができる。例えば、フィルタ208はオンライン取引処理用のフィルタ、ネットワーク固有のオンラインフィルタ、ネットワーク清算処理用のフィルタ、および/またはネットワーク固有の清算フィルタを備えるとよい。
【0050】
例えばオンライン取引の処理のために、一般のネットワークフィルタは、コアの金融スイッチングエンジン202とネットワーク固有のオンラインフィルタとの間のインタフェース層を扱えばよい一方で、ネットワーク固有のオンラインフィルタは、各ネットワークに固有のメッセージ要件を扱い、また、一般のネットワークフィルタと個々のネットワークとの間のインタフェース層を提供する。
【0051】
ネットワーク清算処理に関して、分散したネットワークの清算処理は、典型的にはプロバイダ・ネットワークによって使用され、入力/出力ファイル処理のロジックおよび清算ユーザインタフェースを含む。ただし実施形態によっては、集中型の清算アプリケーションが用意されているとよく、この場合は入力/出力ファイルおよび清算ユーザインタフェースを扱う一般の清算アプリケーションを作成するように、新しいアーキテクチャが設計される。これは、全てのネットワークの間で共通する清算機能を同一に扱うことで実装され、集中型の清算アプリケーションは一般の方法でのこれらの要求に適合するように設計されるとよい。ネットワーク固有の清算要件を簡便にするため、ネットワーク固有の清算フィルタレイヤは、集中型の清算アプリケーションとネットワークとの間のレイヤを提供する。これらのフィルタは、ネットワークの供給するファイルと集中型の清算アプリケーションが扱うファイルとの間でネットワーク固有の再フォーマットを行う。実施形態によっては、これらのフィルターは集中型の清算アプリケーションに対する入出力について標準化されたフォーマットでデータの受け入れおよび送信を行う。このフィルタは、ネットワークおよび標準のメッセージングフォーマットに従って再フォーマットをする。
【0052】
実施形態によってはこれらのフィルタは、例えばマスターカード(MasterCard),ビザ(Visa),アメリカンエクスプレス(American Express)といった特定のプロバイダに特化したフィルタを含むとよい。例えば、マスターカードに特化したフィルタは:マスターカード清算処理の差配に特化したフィルタ、マスターカード・メッセージング・フィルタ、および/またはマスターカード管理フィルタ、を含むとよい。マスターカード・メッセージング・フィルタは、マスターカードに特化したメッセージの取り扱いや再フォーマットを請け負い、実施形態によっては下流のマスターカード通信フィルタへのルート決定も行う。メッセージング・フィルタは、照合/報告の問題やノードの接続の問題に対し高位レベルにおいて下流のマスターカード通信フィルタを監視することもあるかもしれない。マスターカード管理フィルタは、マスターカードのMIP接続、管理上のメッセージング、および/または応答スレッドを照合するための柔軟なメッセージマッチング、を扱う。
【0053】
実施形態によってはフィルタ208は、通信フィルタをさらに備えるとよく、これは以下の操作を行う:通信ラインからやってくるメッセージを読み出すこと、複数のメッセージを個別のメッセージに分割すること、メッセージが複パケットにわたって分割されている場合の取り扱いを行うこと、生メッセージを適切なフィルタおよび/またはコア部202へ誘導すること、応答メッセージを通信ラインへ乗せること、永続的接続を維持すること、および/または、どのスレッドがリクエストを送ったかを示すメッセージレベルの“スレッド拇印”の追跡を続けて通信フィルタが正しいスレッドへ応答を返すことができるようにすること。フィルタ208は、ISO−8583メッセージフィルタをさらに備えるとよく、これは:ITMスーパーDCMの概念に類似した一般のISO−8583メッセージフィルタや、ホストからホストへ(Host-to-Host)および/またはH2HからEFTSへのインタフェースフィルタといったものである。
【0054】
フィルタ208はこうして、オンライン取引処理および/またはデビットまたはクレジットカード取引を実行するための1つ以上の金融プロバイダ・システムの決済システムとのインタフェースを提供する。そして、既に述べたように、フィルタ208b,208c,208dは、関連するインフラストラクチャを介してPoS端末212,ATM214と連絡するためのデバイスハンドラ・モジュールを含むとよい。さらに、前払い口座残高の補充または引き落としを行うためのフィルタ208が設けられることもあり、これは金融機関や前払い口座システムと連絡することにより補充または引き落としを行い、ここで前払い口座システムはプリペイド電話の利用時間口座といった前払い商品またはサービスのプロバイダのシステムである。金融スイッチングエンジン202は、これらサービス・エンドポイント端末108,212,214と、プロバイダ・システム210と、前払い口座(図示せず)との間に各自のフィルタ208を介して位置しており、これらの間でのメッセージを、当該メッセージにとって適切なようにスイッチするように用意されている。
【0055】
図2のシステムはさらに、データベース218に接続された1つ以上のオペレータ・ユーザ端末224(サービス・エンドポイント108,212,214とは異なる)を備える。これらは、記録済みの取引のレコードへDAL220とスイッチングエンジン202を介してシステムのオペレータがアクセスできるようにするとともに、システムをオペレータがコントロールできるようにシステムの何らかの構成またはルールを設定する、ユーザインタフェースを提供する。実施形態によっては、これらユーザインタフェースは、広範囲にわたる多くのユーザインタフェースを提供することができ、これは例えば:システム構成、システム管理、システムの健全性監視、ネットワーククリアリング、監査および/または調査といったもののユーザインタフェースである。
【0056】
さらに図2に示すように、システムは、実行される取引に関係する暗号処理を扱う1つ以上のセキュリティモジュール204という形でセキュリティ・サブシステムを備えるとともに、他のセキュリティ手段も備える。これは改ざん防止機能付きのセキュリティキー管理を提供するハードウェアセキュリティモジュール(HSM)を備えているとよい。異なる物理的データセンタ間で伝送され、かつ何れかのサービス・エンドポイント端末108およびプロバイダ・システム210に対して出入りする何らかの外部接続の上で伝達されるメッセージに関係するあらゆる取引は、セキュリティのために、セキュリティキーを使用して暗号化される。セキュリティモジュール204は、メッセージの読み込みおよび/または伝送のためにスイッチングエンジンによって要求された通り必要な暗号化および復号化を実行する。
【0057】
既述のように、システムの機能性は、複数のプラグイン222の形で実装される。プラグイン222は、ソフトウェアの部品を備えており、また性質的にモジュール式であり、クライアントが求める独自のおよび/またはカスタムされた特徴により能力が強化されるようにする。同様に、他の要素を変更することなく、既存の機能性を増大させる能力を支援する。実施形態によっては、全ては、コアの金融スイッチングエンジン202やHSMでさえも、プラグイン222として実装される。
【0058】
そのため、実施形態によっては、プラグイン222は以下のものを含み得る:コアの金融スイッチングエンジン202を実行するプラグインと、1つ以上のセキュリティモジュール204(例えばHSMのソフトウェアを含む)の機能を実行する1つ以上のプラグインと、サービス・エンドポイント端末108と(PoSネットワークやEFTSサーバのような何らかの関連するインフラストラクチャを介して)連絡するための1つ以上のサービス・エンドポイント・インタフェースのプラグインと、1つ以上の取引処理プラグイン、例えばプロバイダ・システム210との連絡用のもの。サービス・エンドポイント・インタフェースのプラグインは、PoSネットワークを介してPoS端末212と連絡するPoSプラグイン、および/またはATMネットワーク(EFTSサーバ216を含む)を介してATM214と連絡するATMプラグイン、を含むことがある。取引処理プラグインは、関係するプロバイダ・システム210と連絡することにより金融取引を処理するように構成される。プラグインには、オンライン取引および/または前払い口座の取引のためのプラグインもあるとよい。このように、プラグイン222は、前述のフィルタ208の機能の一部または全部を実現できる。
【0059】
実施形態によっては、DAL220は前述のプラグイン222の1つとして実装されてもよい。システムは1つ以上の他のプラグイン222(図示せず)を含んでいてもよく、例えば:DAL220を介してデータベース218に取引を記録するための取引記録プラグイン、取引に関する報告(例えば、口座の入出金のレポート)を作成する報告プラグインと、システム全体にわたって使用される別々の通信プロトコル間での変換を行うプロトコル変換プラグインと、および/または、取引のライフサイクルを管理する取引ライフサイクル・プラグイン、を含んでいてもよい。
【0060】
プラグイン222は、後で詳しく説明するように、取引を行うために互いに連結されるとよい。
【0061】
ここで、図3にシステムの実際の物理的な実装、特に分散性を示す。システムは、複数の物理的なデータセンタ106の間に分散した複数のプラグイン222(上述してきたようなもの)を含む。物理的なデータセンタは、複数の異なる各自の物理的な場所、例えば別々の建物、別々の街、あるいは別々の国にさえも実装される。実施形態によっては、少なくとも3つのデータセンタがあるとよく、あるいは少なくとも10つまたは数十のデータセンタがあってもよく、さらには100個をも越えてデータセンタが存在してもよい。既述のように、データセンタ106はプライベートネットワーク110を介して互いに接続され、プライベートネットワークは、プライベートネットワークのインフラストラクチャ、および/または、インターネットのようなパブリックネットワーク上に実装される(仮想プライベートネットワークと呼ばれることがある)プライベートプロトコルを含んでいるとよい。
【0062】
プラグイン222が別々のデータセンタ106の間に分散していると述べたが、これは以下の2つのうち片方のことを意味することがあり、あるいは両方のことを意味することもある:第1には、プラグインの別々の種類が別々のデータベースに実装されることを意味することがある(例えば、コア部202は1つのデータセンタ106に、ATMインタフェースは別のところに、など);および/または第2には、あるプラグインの別々のインスタンスが別々のデータセンタで並列的に実装され得ることを意味することがある(例えば、コア部202のインスタンスは複数のデータセンタ106で実装されることがあり、ATMインタフェース208bのインスタンスは複数のデータセンタ106で実装されることがある、など)。つまり、各プラグイン222が1つ以上のデータセンタ106で物理的に保存および/または実行されるとともに、別々のプラグイン222が別々のデータセンタで少なくとも部分的に保存および/または実行され、あるいは、場合によっては各プラグインが全てのデータセンタ106に分散する。特定のプラグイン222の複数のインスタンスが特定のデータセンタ106上で並行して実行されてもよいことにも留意されたい。ここでインスタンスは、別々のデータセンタ106に保存された同一の(または実質的に同等の)プラグイン222の別々のコピー、または特定のデータセンタにおいて動作する同一のコピーの別々のインスタンス(すなわち、別々の取引で並行して働く同一のコピー)に係るものといえる。
【0063】
プラグイン222と物理的データセンタ106との間には、データセンタ106の基盤となる、物理的な、分散した実体からプラグイン222を取り込むように構成されたオペレーティングシステム302が設けられる。これはプラグイン222が、システムの物理的実装の分散構造について何ら可視性を持たず、必要としないことを意味する。特定のプラグイン222が別のプラグイン222宛てのメッセージを送信する場合、オペレーティングシステムにのみメッセージを発行し、何らデータセンタ106の物理的アドレスを指定しない(また、何らこれを行う必要もない)。ソースおよび宛先プラグイン222(あるいはプラグインのソースおよび宛先インスタンス)を実行するデータセンタ106間のメッセージの物理的な経路決定は、プラグイン222がそれを知る必要はなく、オペレーティングシステム302によって処理される――むしろプラグインはOSを介して別のプラグインへメッセージを送るだけであり、プラグイン222は、別々の分散型データセンタ106の識別を必要としない。こうしてオペレーティングシステムがネットワーク110を介した基盤の物理的ルーティングを処理する一方で、プラグイン222はビジネスロジックを処理する。
【0064】
オペレーティングシステム302自体は、データセンタの一部または全部の間で分散された形式で実装されてもよい。これには、プラグインまたはプラグインのインスタンスをデータセンタにマッピングするプラグイン・ルックアップテーブルを実装すること、および/またはどのプラグインが利用可能であるかを記録することを含めてもよく、このときルックアップテーブルはデータセンタの一部または全部に分散される。これに代えて、ルックアップを集中的に実装してもよい。いずれにしても、プラグイン222からメッセージを受信すると、オペレーティングシステム302はこうして処理のためにメッセージが送られるべき実際の物理的宛先を探索することができる。
【0065】
オペレーティングシステム302は、システム全体で使用されるメモリおよび/または処理リソースの負担を1つのデータセンタ106が過度に負わないように、別々のプラグイン222またはプラグイン222のインスタンスの保存および/または実行の負荷を別々のデータセンタ106間で最適に釣り合わせるべく負荷平衡化を実行するよう構成されるとよい。負荷平衡化の仕組みは、以下のようなパラメータを考慮する:CPU使用量やメモリなどのデータセンタ106の内部リソース、そしてTCP接続やデータベース接続やネットワーク遅延時間などの外部リソース。プラグイン・インスタンス数の実行時増減が必要に応じて可能であり、これは手動または自動で行うことができる。組み込みのインテリジェント負荷平衡化機能は手動の構成変更を行わなくても動作することができるが、実施形態によっては、オペレータにより以下のような明示的な手引きを与えることができる:設定キューの閾値、優先度の設定、応答タイムアウトの設定、スループット時間の設定、および/またはメモリ消費量閾値の設定。負荷平衡化は、インテリジェント・メッセージ・ルーティングの一形態と考えることができる。
【0066】
さらに、オペレーティングシステムは、データセンタ106間での取引のメッセージにとってネットワーク110を介した最良の経路を見つけるために最良コスト・ルーティングを実行するように構成されるとよい。このインテリジェント・ディスパッチは、経路の遅延時間、メッセージキューのサイズ、処理速度、優先度、プラグイン可用性、および/またはプラグイン応答に基づいて最適な経路コストを自動的に計算する(例えば、プラグインは、それ自身のノードを欠陥として定義することができる)。上記の属性は、構成の変更によって手動で制御することも、自動的に制御することもできる。
【0067】
好ましくは、オペレーティングシステムは(スクリプト言語として使用される)Java、LUAおよび/またはC++などの複数種のスクリプト言語を解釈できるように構成され、これによりこうした複数種の言語でプログラムされたプラグイン222をサポートするように構成される。また好ましくは、システムはプラグイン222のうち別々のもの同士の間、および/またはコアのスイッチングエンジン202とプラグイン222との間で通信を行うための、異なる通信プロトコルをサポートするように構成される。例えば、通信プロトコルはSOAP、REST、ANS.1および/またはH2Hプロトコルを含むことがある。実施形態によっては、プロトコル変換は、1つ以上のプラグイン222によって実装され得る。
【0068】
さらにシステムは、複数のデータベース形式、例えばSQL、MySQL、PostGreSQL、MS−SQL、DB2、および/またはOracleをサポートするデータ抽象化レイヤ(DAL)220を含み、データベース非依存のものであることが好ましい。実施形態によってはDAL220は前述のプラグインの1つであってもよいし、そうでなくといもよい。実施形態によっては、データベースはデータセンタの一部または全部に分散されていてもよいし、集中的に実装されていてもよい。
【0069】
図4は、取引を形成するために互いに連結される複数のプラグイン222の一例を示しており、ここでの取引はATM214とクレジットまたはデビットカード・プロバイダ210との間でのクレジットまたはデビットカード取引である。取引は以下のものを用いて形成される:取引ライフサイクル・プラグイン410、コアの金融スイッチングエンジン・プラグイン202のインスタンス、セキュリティ・プラグイン204のインスタンス、記録プラグイン408のインスタンス、通信プラグイン404およびEFT H2Hフィルタプラグイン222の形態をとる2つのサービス・エンドポイント・プラグインのインスタンス、そしてクレジットまたはデビットカード・フィルタ208aおよび通信フィルタ406の形態をとる2つの取引処理プラグインのインスタンス。プラグインは接続ごとに動的にロードされる。実施形態によっては、特定の取引のためのプラグイン222のインスタンスは、取引ライフサイクル・プラグイン410によってそのライフサイクルにわたって一括りにされて管理される。
【0070】
ATM214は、EFTS216およびサービス・エンドポイント・プラグイン404,208aを介してスイッチングコア202へリクエスト・メッセージを発行する。スイッチングエンジン202は、メッセージを検査してそれがクレジットまたはデビットカード取引のリクエストであることを判定し、これによりメッセージが決済のためにクレジットまたはデビットカード・プロバイダのシステム210宛てとするべきと判定する。したがって、スイッチングエンジン202は、プロバイダ・インタフェース・プラグイン208a,406を介して、クレジットまたはデビットカード決済システム210にメッセージを転送する。こうして取引がカードプロバイダ・システム210によって決済される(または拒否される)と、スイッチ202、インタフェース406,208a,208b,4040、およびETFS216を介して、ATM214に応答を返す。取引の1つ以上のステージの各々も、DAL220を介して記録プラグイン408によりデータベース218に記録されるとよい。セキュリティ・プラグイン204は、HSMのハードウェア412を介して、物理データセンタ106間で通信される任意のメッセージが適切に暗号化されるように、メッセージの暗号化処理を行う。
【0071】
説明してきたシステムは、取引やインタフェースやデータフォーマットのいずれか特定の種別に限定されない、一般的かつ普遍的なリアルタイムスイッチを提供する。上記のクレジットカード取引またはデビットカード取引の例は、一般的なアーキテクチャの一例に過ぎず、オンライン取引、前払い口座取引、口座の閲覧、および/または自動的アラート発生のための口座の監視などといった、他の多くの機能にも使用できる。
【0072】
モジュール式プラグインまたは複数のプラグインの別々のインスタンスが複数の分散データセンタ間に分散しているということは、複数の物理的な処理センタが1つの論理的な処理センタに混ざり合うことを意味する。これには多くの利点がある。例えば、障害やメンテナンスの状況であっても停止時間をゼロにすることができる。欠陥が単一ならば、別のロケーションにおける他のプラグインで自動的に置き換えることができる。さらに、このクラウド設計によれば、1つのデータセンタ106でアップグレードを実施することにより、システムの残りの部分を変更またはシャットダウンすることなく、リアルタイムのアップグレードおよび構成が可能になる。プラグイン222は、接続を失うこともなく、実行時間中に更新またはアップデートすることができ、例えばプラグインの新しいバージョンに置き換えたり、プラグイン・テーブル内のバージョン管理名を変更したり、プラグインに更新メッセージを送信したりできる。また、この設計は高い性能と拡張性をもたらし、コンフィギュレーションを行うだけで、あるいは場合によっては自動的に追加のプラグインやプラグインのインスタンスおよび/またはデータセンタを追加することによって、システムの残りの部分をシャットダウンおよび/または再稼働させることなく、システムを拡張することができる。
【0073】
このシステムは柔軟性があり、拡張が容易で、プラグインは第三者によって開発および交換が可能である。これはアクセスまたはデータ操作のための複数のインタフェース、例えばSOAP、REST、および/またはASN.1を提供し、LUAをも含む複数のスクリプト言語を許容する。さらにこのシステムは、自動負荷平衡化や、メモリ管理や、インテリジェントな「経路のコスト」計算を提供する。
【0074】
このシステムは、金融情報の他にも情報を取り扱うことができることが理解されよう。よってこのシステムは、あらゆる種類の電子メッセージを取り扱うことができる点で「普遍的」であると考えることができる。
【0075】
上述したように、集中型のオペレーティングシステムおよびプラグインの方式は、機能の分散を可能にする。オペレーティングシステムは、例えば、メッセージ配信、マルチスレッド、プラグインの取り扱い、データベース抽象化レイヤ、メモリ管理、パフォーマンス制御などを扱うことができる。プラグインは、例えばビジネスロジックを実施することができ、他のプラグインと連結する機能もある。さらにこのシステムは、クラウドベースのシステムとして容易に実現できる。
【0076】
実施形態はオペレーティングシステムの特定の種類に何ら限定されない。オペレーティングシステムは例えば、Linux、Windowsなどとすることができる。いずれのオペレーティングシステムを使用しても、実施形態によっては、プラグインにビジネスロジックなどの機能を取り込むことができる。
【0077】
以上の実施形態は単に例示として記載されたものと理解されたい。当業者には本明細書の開示から他の変形例が明らかになるであろう。本開示の範囲は、記載の実施形態に限定されるものではなく、添付の特許請求の範囲によってのみ限定されるものである。
図1
図2
図3
図4