連載第16-1回
UMLの基礎と応用

(株)NTTデータ 技術開発本部 副本部長
山本修一郎

 前回まで、エリクソンとペンカーの「UMLによるビジネス・モデリング」[1]に基づいて、ビジネス・モデリングの概要[2]と、ビジネス・ルール[3]について説明した。今回は、同書で紹介されているビジネス・パターンについて説明しよう。

ビジネス・パターン

 ビジネス・モデリングで繰り返し出現する共通性の高いビジネス・モデルを再利用可能な形でまとめたものが、ビジネス・パターンである。ビジネス・パターンを効率的に再利用するためには、ビジネス・パターンがどんなビジネスの状況で適用できるのかを説明する一般的な問題の文脈(コンテクスト)も併せて示す必要がある。

 このようなパターンは、ビジネス・モデリングだけでなく、分析工程、設計工程、試験工程など、システム開発のあらゆる工程で考えられる。オブジェクト指向では、最初にプログラミングに近いデザイン・パターン[4]、ついで、より上位の設計構造に関するアーキテクチャーパターン[5]などが提案されてきた。開発組織や開発プロセスに関するパターンも提案されてきている。どのようなパターンがあるのかを調べるには、Hillsideグループのパターンに関するホームページが参考になるだろう[6]

 エリクソンとペンカーによるビジネス・パターンには、資源とルール・パターン、ゴール・パターン、ビジネス・プロセス・パターンがある。資源とルール・パターンでは、構造面から、資源やルールに関するビジネス・パターンを記述する。たとえば、製品や組織、契約文書などの構造を規定する。ゴール・パターンでは、ビジネス・ゴールの設定、階層的な分割、問題構造について、構造的な側面からパターン化する。プロセス・パターンでは、機能面と振舞い面から、ビジネス・プロセスをパターン化する。ビジネス・プロセス・パターンにはプロセス・モデリング・パターン、プロセスの実行形態に関するプロセス・インスタンス・パターン、ビジネス・プロセスの運用を支援するためのプロセス支援パターンがある。

 表1にビジネス・パターンの概要をまとめた。ビジネス・パターンの個数は、資源とルール・パターンが13個、ゴール・パターンが3個、プロセス・パターンが10個である。以下では、これらのパターンの代表的な具体例を示す。

表1 Eriksson&Penkerのビジネスパターン
表1 Eriksson&Penkerのビジネスパターン

資源とルール・パターン

 資源とルール・パターンには、表2に示すような13個がある。

表2 資源とルールのパターン
表2 資源とルールのパターン

 これらのパターンを整理してみると、意味的な関係で分類する方法と、パターン化の方法で分類する方法の2つがありそうである。意味的な分類では、組織や従業員に関するパターン(RR 1,RR 7,RR 9)、ビジネスや契約文書に関するパターン(RR3,RR4, RR5, RR6, RR10, RR12)、資源が持つ一般的な性質に関するパターン(RR8, RR11, RR13)、用語に関するビジネス定義パターン(RR2)に分類できるだろう。

 組織に関するパターンには、アクタ・ロール・パターン(RR1)、雇用パターン(RR7)、組織・集団パターン(RR9)がある。ビジネスや契約文書に関するパターンには、ビジネス・イベント結果・履歴パターン(RR3)、契約パターン(RR4)、コア表現パターン(RR5)、文書パターン(RR6)、製品データ管理パターン(RR10)、題名・項目パターン(RR12)がある。資源が持つ一般的な性質に関するパターンには、地理的位置パターン(RR8)、モノ情報パターン(RR11)、型オブジェクト値パターン(RR13)がある。ビジネス定義パターン(RR2)は、ビジネス用語に関する一般的な用語辞書の構造モデルである。これらのパターンは必ずしも独立ではなく、他のパターンを要素として持つ拡張されたパターンもある。たとえば、図1に示したビジネス・イベント結果・履歴パターンでは、ビジネスイベントの追跡管理をするために、その前提になる契約を管理する必要があり、内部に契約パターンを持っている。

図1 ビジネスイベント・結果履歴パターン
図1 ビジネスイベント・結果履歴パターン

 パターン化の方法では、表現と実体の分離という方法と、実体間の関係の一般化という2つの方法がある。たとえばアクタ・ロール・パターン(RR1)では、アクタとアクタの役割であるロールとを分離し、コンテクストごとに、同じアクタが異なるロールを持つことができるだけでなく、その条件をアクタ・ロール接続関係と、アクタ・ロール接続ルールによって制御できるようにしている。このようなオブジェクトの実体とその表現を分離するパターンには、RR1,RR5,RR11,RR12,RR13の5個がある。残りの8個は、オブジェクト間の関係を管理するためのパターンである。

ゴール・パターン


 ゴール・パターンは、ビジネス・プロセスとその目的であるゴールとを対応付けるためのビジネス・ゴール設定パターン(BG 1)、ビジネス・ゴールを、階層的に分割するためのビジネス・ゴール分解パターン(BG2)、ビジネス・ゴールが関連するビジネスが直面する問題を明らかにするためのビジネス・ゴール問題パターン(BG3)がある。

 ビジネス・ゴール設定パターンの例を図2に示す。この図に示したように、ビジネス・プロセスと、ビジネス・プロセスが出力する出力オブジェクトの上にそれぞれビジネス・ゴールとして、プロセス・ゴールと、出力オブジェクトゴールを記述し、なぜ、このビジネス・プロセスや出力オブジェクトが必要となるのかを、それが達成すべきビジネス・ゴールを明示的に設定することで明らかにすることができる。このビジネス・ゴール設定パターンは、後述するビジネス・プロセスの基本プロセス構造パターンと類似する構造を持ち、従来のSADT(Structure Analysis and Design Technique)やIDEF 0 (Integration Definition for Function)などの構造化手法で提案された方法をオブジェクト指向に焼きなおしたものであると考えられる。

図2 ビジネス・ゴール設定パターン
図2 ビジネス・ゴール設定パターン

表3 ビジネスゴールパターン
表3 ビジネスゴールパターン


 ビジネス・ゴール分解パターンでは、ゴールをサブゴールに階層的に分解していくことをパターン化したものであり、オブジェクト指向固有のパターンというわけではない。ビジネス・ゴール問題パターンも、ビジネス・ゴールとそれが解決すべき問題との関係を明示的に記述するためのパターンであり、通常の問題解決手法の方法を取り入れている。このようにゴール・パターンは、少数だが、従来から実績のある手法を着実に採用しているといえるだろう。

NEXT >> 

・連載第1回

・連載第2回

・連載第3回

・連載第4回

・連載第5回

・連載第6回

・連載第7回

・連載第8回

・連載第9回

・連載第10回

・連載第11回

・連載第12回

・連載第13回

・連載第14回

・連載第15回

・連載第16回

・連載第17回