付録D.1 ビジネスプロセスの概要を設計する
業務の基本フローをハイレベル・ビジネスプロセスとして作成し,作成したハイレベル・ビジネスプロセスを具体化します。
(1) ハイレベル・ビジネスプロセスを作成する
上流設計ツールでハイレベル・ビジネスプロセスを作成します。商品手配サンプルプログラムのビジネスプロセスの場合,システム化する業務は在庫引当と配送手配の2つのタスクなので,これを基本フローとして記述します。
商品手配サンプルプログラムのハイレベル・ビジネスプロセスの記述例を次に示します。
(2) ミドルレベル・ビジネスプロセスを作成する
作成したハイレベル・ビジネスプロセスを具体化し,業務全体の流れが把握できるミドルレベル・ビジネスプロセスを作成します。ここでは,在庫引当タスクのあとに排他ゲートウェイを追加し,手配を受けた商品の在庫がない場合の業務エラーフローを追加します。作成したビジネスプロセスに対して顧客と検討を繰り返し,検討不足の業務フローや改善点があればブラッシュアップします。
商品手配サンプルプログラムのミドルレベル・ビジネスプロセスの記述例を次に示します。
商品手配サンプルプログラムでは,次の表に示す要素でビジネスプロセスを実現することにします。
項番 |
名前 |
要素の種類 |
備考 |
---|---|---|---|
1 |
受付 |
開始ノード |
|
2 |
在庫引当 |
タスク |
|
3 |
− |
排他ゲートウェイ |
在庫引当の結果を判定 |
4 |
配送手配 |
タスク |
|
5 |
応答_手配成功 |
終了ノード |
配送手配が成功したときの終了ノード |
6 |
応答_在庫なしエラー |
終了ノード |
在庫がなかったときの終了ノード |
また,この段階でサービスの粒度も検討します。ここでは,次の表に示すように在庫引当タスクと配送手配タスクをそれぞれ1つのサービスで実現することにします。
項番 |
タスク |
サービス(実装時のサービス名) |
---|---|---|
1 |
在庫引当 |
在庫引当サービス(InventoryManager) |
2 |
配送手配 |
配送手配サービス(Delivery) |