プロセスモデル

プロセスモデル(英: process model)とは、何らかのプロセス(過程、工程)の模型(モデル)である。 化学工学はプロセス産業と呼ぶように、プロセスモデルが処理モデルである。 ビジネスプロセスモデルとは、企業の仕事の仕方のモデルである。 コンピュータでは、処理方法がプロセスモデルである。並列処理の方式などがある。 ソフトウェアプロセスは、ソフトウェアを設計し、利用し、廃棄する流れの一つの視点を提供するものであり、人の作業とコンピュータの処理を含む。

コレット・ローランドはプロセスモデルを次のように定義している:

同じ性質を持つプロセスは1つのプロセスモデルに分類する。つまり、プロセスモデルはプロセスの抽象記述である。プロセスモデルが抽象的であるとすれば、個々のプロセスは実体化したものである。

プロセスモデルは様々な開発に繰り返し利用するため、その実体は多数存在する。 […] プロセスモデルは「物事をどのようにするか(するべきか/しなければならないか)」を記述したものである。

プロセスモデルは、プロセスがどのようになるかを仮定し、予測するものである。仮定を立てるためには、前提条件が必要となり、時間的な条件、論理的な条件または空間的条件を設定する。時間的条件には初期条件,終了条件がある。論理的な条件には事前条件,事後条件,不変条件がある。空間的条件には、境界条件がある。 プロセスがこうあるべきだという方針は、常に状況(前提条件の変化)に応じて改善していくものである。
プロセスモデルの分類:
①適用分野による分類

[Dowson1988]は、以下の4つの異なる意味でプロセスモデルという用語が使われているとした:

活動指向: ある製品を定義する目的の下で関連する活動群。目標達成までの半順序的ステップ群。[Feiler1993][5]
製品指向: 製品を目標のレベルにするための一連の活動。
決定指向: 特定の製品定義のために必要な決定の集合。
文脈指向: 製品の改良をもたらす一連の文脈(コンテキスト)の集合。

②レベルによる分類

ローランドによれば、プロセスは以下のように分類され、それぞれモデル化手法が異なる。

戦略的プロセス
代替案を検討し、それを実行する計画を立案することもある。
高度な活動であり、代替案の選択も重要な選択となる。
戦術的プロセス
計画の実行を支援する。
実際の計画実行により近く、計画の詳細化を行う。
実装プロセス
最も下位のプロセス。
計画を実施するための詳細を扱う。

③粒度による分類

粒度とは、プロセスモデルの詳細さのレベルを意味する。

「粒度は提供すべき手引き、説明、手順の種類に影響を与える。粒度が粗い場合、あまり具体化しない。粒度が細かい場合、より詳細なものを提供する。必要とされる粒度は状況に依存する」[Rolland1998]

顧客や経営者は粗い粒度のプロセス記述を要求する傾向があり、意思決定のための概略的情報を必要とする。一方、ソフトウェア技術者やユーザーは細かい粒度のプロセスモデルを必要とし、それによって具体的手順を知ったり、個々の人々の依存関係が明らかになる。

細かい粒度のモデル記述法もあるが、粗い粒度のモデル記述法の方が古くから存在する。プロセスモデルは理想的にはあらゆる粒度に対応できるのが望ましい(例えば、Process Weaver [Fernström1991])[Rolland1998]。
④柔軟性による分類

プロセスモデルは何らかの予測を行うが、実際に起きることは予測通りではない[Rolland1999]。従って、フレームワークを実際の状況に合わせて修正することでモデルの価値が向上する。このようなフレームワークの研究を Situational Method Engineering と呼ぶ。

方式を構築する手法は柔軟性の低いものから高いものまである[Harmsen1994]。

[参考:Wikipedia]

用語

前の記事

CMMIの成熟度レベル
用語

次の記事

ISO/IEC 12207