TOP
>
プロジェクト管理
> CRMシステムとの連携
実践!ビジネス・プロセス・インテグレーション
第4回:他システムとの連携の追加
著者:
日本アイ・ビー・エム 小倉 弘敬、佐藤 泉、津田 佳一
2006/3/8
前のページ
1
2
3
4
次のページ
CRMシステムとの連携
表2の1のCRMシステムへの注文情報更新処理について詳しく見ていく。CRMシステムとの連携処理が追加されたことにより、従来のビジネスプロセスにはCRMシステムへの連携処理を行う"Invoke"アクティビティーが追加される(図2)。
図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での実装