ビジネス・オブジェクト

コラボレーションとコネクターは、InterChange Server Express 経由でビジネス・オブジェクトを送受信して対話を行います。

ビジネス・オブジェクトは、データ・エンティティー (1 つの動作単位として扱われ るデータの集合) を反映します。例えば、データ・エンティティーがフォームと同 等であり、フォームのフィールドをすべて含める場合があります。フォームは通常、ア プリケーション内または Web 上で使用され、顧客、従業員、または送り状に ついてのビジネス情報が取り込まれます。

ビジネス・オブジェクトは、コラボレーションの実行中に高速アクセスのためにメ モリーにキャッシュされます。また、トランザクション状態の永続的ストアにも格 納され、障害後のサーバーの再始動の際に耐久力のあるリカバリー、ロールバック、およびコラボレーションの再実行を提供します。

IBM WebSphere Business Integration Server Express システムは、エンティティー内に含まれている情報を反映するビジネス・オブジェクトを作成します。本書では、データ・エンティティーという用語は そこに含まれるビジネス情報の関連でよく使用されます。例えば、従業員エンティティー または顧客エンティティー などがあります。

このセクションでは、ビジネス・オブジェクトについて簡単に説明します。詳細は、「ビジネス・オブジェクト開発ガイド」で説明しています。

ビジネス・オブジェクトの役割

ビジネス・オブジェクトは、イベント、要求、または応答として動作できます。

イベント

ビジネス・オブジェクトは、アプリケーション内のデータ・エンティティーに影響を与える操作であるアプリケーション・イベントの発生を報告できます。アプリケーション・イベントとしては、データ集合の値の作成、削除、または変更などがあります。コネクターがアプリケーション・イベントを検出して、ビジネス・オブジェクトを 関連するコラボレーションに送信するとき、ビジネス・オブジェクトはイベントの 役割を務めるので、IBM WebSphere Business Integration Server Express システムでは、イベントと呼ばれます。

例えば、コネクターがコラボレーションのために新しい従業員エンティティーのア プリケーションをポーリングすることがあります。アプリケーションが新しい従業 員エンティティーを作成する場合、コネクターはイベント・ビジネス・オブジェク トをコラボレーションに送信します。

要求

要求は通常、次の 2 つの方法のうちどちらかで生成されます。

応答

コネクターは、要求の処理を終了すると、通常、応答を戻します。例えば、コネクターがアプリケーションから従業員データを検索する要求を受信すると、従業員データを含むビジネス・オブジェクトを送信します。

ビジネス・オブジェクトの構造

ビジネス・オブジェクトとは、タイプ (その名前)、処理命令 (動詞)、およびデータ (属性値) を含む自己記述的ユニットです。図 5 に、単純なビジネス・オブジェクトの例として、そのタイプ、動詞、および属性値を示します。

図 5. ビジネス・オブジェクトのコンポーネント

次のセクションで、このコンポーネントについて説明します。

ビジネス・オブジェクト・タイプ

各ビジネス・オブジェクトには、IBM WebSphere Business Integration Server Express システム内で識別するためのタイプ名があります。このタイプは、ビジネス・オブジェクト定義によって定義されます。例えば、Customer、Employee、Item、Contract などのタイプがあります。

ビジネス・オブジェクトの動詞

ビジネス・オブジェクトの動詞は、属性値に関連する操作を指定します。動詞は、ビジネス・オブジェクトの役割に応じて、さまざまなタイプの操作を指示することができます。表 1 は、3 つのビジネス・オブジェクトの役割を示し、各役割を持つビジネス・オブジェクトの動詞の意味を説明しています。

表 1. ビジネス・オブジェクトの動詞の意味
ビジネス・オブジェクトの役割 動詞の意味
イベント アプリケーション内で発生したことを説明します。例えば、イベントでは、Create 動詞は、ソース・アプリケーションが新規データ・エンティティーを作成したことを示します。
要求 ビジネス・オブジェクトを処理するためにアプリケーションと対話する方法をコネクターに伝えます。例えば、Update 動詞は、コネクターにデータ・エンティティーを更新させる要求です。
応答 直前の要求の結果を提供します。例えば、応答では、Retrieve 動詞は、コネクターがアプリケーションから属性値を取得したことを示します。

注:
命名規則は、フォーマット business-object-type.verb を使用して、特定のタイプのビジネス・オブジェクトと特定の動詞を表すものです。例えば、Customer.Create は、Customer ビジネス・オブジェクトと Create 動詞を表します。

ビジネス・オブジェクト属性値

ビジネス・オブジェクトには、Last Name、First Name、Employee ID、Invoice Status などのデータ・エンティティーに関連するデータ・フィールドを表す属性値が含まれます。

データの代わりに、子ビジネス・オブジェクトまたは子ビジネス・オブジェクトの配列を含む属性もあります。図 6 に、Contract ビジネス・オブジェクトの構造を示します。 契約内の Line Item 情報は、子ビジネス・オブジェクトの配列内に存在します。

図 6. 子ビジネス・オブジェクトを持つビジネス・オブジェクト

子ビジネス・オブジェクトまたは子ビジネス・オブジェクトの配列を含むビジネス・オブジェクトは、階層ビジネス・オブジェクトといいます。 その属性がデータのみを含むビジネス・オブジェクトは、フラット・ビジネス・オブジェクトといいます。

アプリケーション固有のビジネス・オブジェクトと汎用ビジネス・オブジェクト

IBM WebSphere Business Integration Server Express システムには、アプリケーション固有のビジネス・オブジェクトと汎用ビジネス・オブジェクトという 2 種類のビジネス・オブジェクトがあります。

コネクター・エージェントが (そのアプリケーション固有のコンポーネントを介して) 更新などのアプリケーション・イベントを検出すると、アプリケーションから適切なデータ・エンティティーを検索して、それをアプリケーション固有のビジネス・オブジェクトに変換します。

注:
本書では、Oracle_Customer のように、その名前にアプリケーション名が含まれているビジネス・オブジェクトは、アプリケーション固有のビジネス・オブジェクトを指します。例えば、Oracle_Customer ビジネス・オブジェクトには、Oracle アプリケーションが格納している顧客に関する一連の情報が含まれます。別のアプリケーションでは、顧客エンティティーに一連の異なる情報が 保管されていたり、異なる順序またはフォーマットで情報が保管されていたり、異なる名前 が付けられていたりする可能性があります。

コネクター・エージェントがアプリケーション固有のビジネス・オブジェクトの作成 を終了すると、そのビジネス・オブジェクトを InterChange Server Express 内のコネクター・ コントローラーに送信します。

コネクター・コントローラーは、コラボレーションとコネクター・エージェント間でビジネス・オブジェクトを交換します。コラボレーションは、一般的に、アプリケーションに中立なので、コネクター・コントローラーがコラボレーションとの間で交換するビジネス・オブジェクトは、汎用ビジネス・オブジェクトである必要があります。汎用ビジネス・オブジェクトのビジネス・ロジックは特定のアプリケーションの特定のバージョンにバインドされていないので、汎用ビジネス・オブジェクトを 使用するとコラボレーションの再使用可能性が高まります。

注:
汎用ビジネス・オブジェクト名には、会社名や製品名は含まれません。例えば、Contact、Employee、Customer などです。

図 7 は、IBM WebSphere Business Integration Server Express システム内で 2 種類のビジネス・オブジェクトが置か れる場所を示しています。コラボレーションは汎用ビジネス・オブジェクトを使用して対話し、コネクター・エージェントは固有のアプリケーション用に設計されたビジネス・オブ ジェクトをサポートします。

図 7. 汎用ビジネス・オブジェクトとアプリケーション固有のビジネス・オブジェクト

複数のタイプのコラボレーションを実行する場合、コネクターがそれらのコラボレーションによって使用されるビジネス・オブジェクトをサポートする限り、同一のコネクターを使用することができます。

Copyright IBM Corp. 2004, 2005