TOPプロジェクト管理> CRMシステムとの連携
実践!BPI
実践!ビジネス・プロセス・インテグレーション

第4回:他システムとの連携の追加
著者:日本アイ・ビー・エム  小倉 弘敬、佐藤 泉、津田 佳一
2006/3/8
前のページ  1  2  3   4  次のページ
CRMシステムとの連携

   表2の1のCRMシステムへの注文情報更新処理について詳しく見ていく。CRMシステムとの連携処理が追加されたことにより、従来のビジネスプロセスにはCRMシステムへの連携処理を行う"Invoke"アクティビティーが追加される(図2)。
CRMシステムへの注文情報更新処理
図2:CRMシステムへの注文情報更新処理

   この追加された"Invoke"アクティビティーからCRMシステムが提供する注文情報更新処理用のサービス呼び出しを行うことになる。

   サービス呼び出しの設計ではビジネスプロセスから直接CRMシステムが提供しているインターフェースを呼び出しても構わないが、ビジネスプロセスをより柔軟にするためには連携するシステム固有のデータ構造やシグニチャがビジネスプロセス自身には含まれないほうが都合がよい。

   ビジネスプロセスは一般的なインターフェースに対して処理を行い、システム固有の具体的なインターフェースへのマッピングはビジネスプロセスの外部で実装するようにしておけば、プロセスの汎用性が高くなり、同種のデータを扱う多くのシステムとの連携や連携対象システムの変更などが容易になる。

サービス呼び出しの設計
図3:サービス呼び出しの設計


データ構造とマッピング

   そこで、今回の例ではもともと注文情報の入力に使用していたデータ構造を一般的なものと想定し、CRMシステムが提供するインターフェースで定義されているデータ構造へのマッピングをビジネスプロセスの外部で実装することを考える。

   ビジネスプロセスで使用している一般的なデータ構造、およびCRMシステムが提供するインターフェースで定義されているデータ構造は次のとおりである。

データ構造名 項目 説明
Order orderNumber int 注文番号
orderedDate date 注文日
deliveredDate date 配送日
customer Customer 顧客情報
orderedProduct OrderedProduct (配列) 注文商品情報
Customer id int お客様番号
name string 名前
address string 住所
mailAddress string メールアドレス
OrderedProduct id int 商品番号
name string 名前
price string 価格
quantity string 注文数

表3:ビジネスプロセス内でのデータ構造

データ構造名 項目 説明
CRMCustomer custID int 顧客ID
custName String 顧客名
custAddress String 顧客住所
custEmail String メールアドレス
orderInfo CRMOrderInfo 注文情報
CRMOrderInfo orderID int 注文番号
orderDate date 注文日
orderProduct CRMProduct 商品
orderStatus String 注文状況
CRMProduct productID int 商品番号
quantity int 注文数

表4:CRMシステムが要求するデータ構造

   このとき、マッピングの仕様は以下のようになる。なお、表5ではOrderオブジェクトのorderNumber項目であればOrder.orderNumber、のようにオブジェクトとその項目をドットでつなげてどのオブジェクトのどの項目であるかをあらわしている。

マッピング元 マッピング先 備考
Order.orderNumber CRMOrderInfo.orderID  
Order.orderedDate CRMOrderInfo.orderDate  
N/A CRMOrderInfo.orderStatus ステータスを設定
Customer.id CRMCustomer.custID  
Customer.name Customer.name  
Customer.address CRMCustomer.custAddress  
Customer.mailAddress CRMCustomer.custEmail  
OrderedProduct.id CRMProduct.productID  
OrderedProduct.quantity CRMProduct.quantity  

表5:マッピング仕様

   従って、注文情報更新処理では、表3に定義されるデータを用いてビジネスプロセス内からサービスの呼び出しを行い、外部のマッピング処理により表5の仕様に基づいて表4のデータへ変換を行う。その後、変換されたデータをCRMシステムへ渡すことにより処理を実現することになる。

前のページ  1  2  3   4  次のページ


日本アイ・ビー・エム株式会社 小倉 弘敬
著者プロフィール
日本アイ・ビー・エム株式会社  小倉 弘敬
日本アイ・ビー・エムソリューション開発 インテグレーション所属
ソフトウェア・エバンジェリスト。担当分野は、ビジネス・プロセス・インテグレーション(BPI:Business Process Integration)。WebSphere Business Integration(WBI)ソリューションセンターで、BPIソリューションの開発/提供に従事する。


日本アイ・ビー・エム株式会社 佐藤 泉
著者プロフィール
日本アイ・ビー・エム株式会社  佐藤 泉
入社以来、ワークフロー、ビジネスプロセスエンジン、ビジネスプロセスモニターなどのソフトウェア製品の開発やそれらの製品をベースとしたソリューションの提案活動に従事。
特に、SOAに則ったBPI(Business Process Integration)やBIO(Business Innovation and Optimization)を得意分野とする。


日本アイ・ビー・エム株式会社 津田 佳一
著者プロフィール
日本アイ・ビー・エム株式会社  津田 佳一
日本アイ・ビー・エム ソリューション開発 インテグレーション所属
BPIソリューションの開発/提供に従事する。


INDEX
第4回:他システムとの連携の追加
  前回より
  O社のネット注文システム用ビジネスプロセスの修正案
CRMシステムとの連携
  GUIでの実装