** コミュニケーション図から状態機械の合成 [#qbf41a3f]
合成手順は以下のようになります.
+ クラス図の作成
+ コミュニケーション図の作成
+ 状態機械の合成

*** 例題 [#e873c495]
#ref(purchaseordercol.png,right,around)
ここでは,[[BPEL-WS 2.0>http://docs.oasis-open.org/wsbpel/2.0/wsbpel-specification-draft.html]]仕様書にある例を使い説明したいと思います.

コレオグラフィを右図に示します.
右図はUML1.xのコラボレーション図の記法により書かれています.
この例では,Customer, Vendor, Shipping, Invoicing, Scheduling の5つのサービスが存在します.VendorはCustomerからorderを受け取ると,Shipping, Invoicing, Schedulingの各サービスに指令を出し,それらからの返答をまとめてCustomerにorderReplyとして返信します.

Shippingへの指令はshipReqで,返答はshipInfoです.

Invoicingへの指令はproductInfoとshipTypeで,返答はinvoiceです.ここで,productInfoはorderを受けるとすぐに送信しますが,shipTypeはshipTypeはshipReqを送信した後でないと送信してはいけません.InvoicingはproductInfoとshipTypeを受信した後に,何らかの処理を行い,invoiceを返信します.

Schedulingへの指令はproductScheduleとshipScheduleです.ここで,VendorはproductScheduleについてはorderを受けるとすぐに送信しますが,shipScheduleはshipInfoを受信した後に送信します.

VendorはshipInfoとinvoiceを受信して,shipScheduleを送信した後にorderReplyをCustomerに送信します.

*** クラス図の作成 [#pe69aaa6]
*** コミュニケーション図の作成 [#t120ba7a]
*** 状態機械の合成 [#r100e3cd]


[[CSCB]]

トップ   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS