
メタプロセス モデリングは、ソフトウェア エンジニアリングやシステム エンジニアリングで、いくつかの事前定義された問題に適用可能かつ有用なモデルの分析と構築に 使用されるメタモデリングの一種です。
メタプロセスモデリングは、柔軟なプロセスモデルを作成する取り組みをサポートします。プロセスモデルの目的は、プロセスを文書化して伝達し、プロセスの再利用を強化することです。これにより、プロセスをより適切に教え、実行することができます。メタプロセスモデルを使用することで、プロセスエンジニアの生産性が向上し、作成するモデルの品質が向上します。[2]
概要
メタプロセスモデリングは、プロセスモデルの構築プロセスに焦点を当て、それをサポートします。その主な関心は、プロセスモデルを改善し、進化させることです。これにより、システムの開発がサポートされます。[2]これは、「プロセスは時間とともに変化し、その基礎となるプロセスモデルも変化します。したがって、新しいプロセスとモデルを構築し、既存のものを改善する必要があります」という事実により重要です。 [2]「プロセス中心のソフトウェア環境での施行を可能にするために、プロセスモデルの形式性のレベルを高めることに重点が置かれてきました」。[3] [4]
プロセスメタモデルは、メタモデルであり、「プロセスモデルのタイプレベルでの記述です。したがって、プロセスモデルはプロセスメタモデルのインスタンス化です。[..] メタモデルは、さまざまなプロセスモデルを定義するために複数回インスタンス化できます。プロセスメタモデルは、プロセスに関してメタタイプレベルにあります。」[2]
いくつかのドメインに標準が存在します。
- ソフトウェアエンジニアリング
- オブジェクト管理グループによってプロファイル (UML)として定義されているソフトウェア プロセス エンジニアリング メタモデル (SPEM) 。
メタデータモデリングのトピック
プロセスモデルの構築にはさまざまな手法があります。「情報システム分野で使用される構築手法は、ソフトウェアエンジニアリングの手法とは独立して開発されてきました。情報システムでは、構築手法はメタモデルの概念を活用し、インスタンス化とアセンブリという2つの主要な手法が使用されています。ソフトウェアエンジニアリングで現在使用されている主な構築手法は言語ベースです。ただし、情報システムとソフトウェアエンジニアリングの両方の初期の手法は、プロセスエンジニアの経験に基づいていたため、本質的にアドホックなものでした。」[2]
このために
「従来のプロセス モデルは、開発者の経験の表現です。この経験は形式化されておらず、結果として知識の蓄積として利用できないため、これらのプロセス モデルはアドホックな構築手法の結果であると言えます。これには 2 つの大きな結果があります。これらのプロセス モデルがどのように生成されたかを知ることは不可能であり、経験の領域に依存することになります。プロセス モデルを領域に依存せず、迅速に生成および変更できるようにするには、経験に基づくプロセス モデルの構築から脱却する必要があります。明らかに、生成と変更可能性は、採用されたプロセス管理ポリシーに関連しています (使用の世界を参照)。インスタンス化とアセンブリは、モジュール化を促進することで、優れた実践の資本化と特定のプロセス モデルの改善を促進します。」[2]
組み立て
アセンブリ技術は、プロセスコンポーネントを選択できるプロセスリポジトリのアイデアに基づいています。Rolland(1998)は、2つの選択戦略を挙げています。[2]
- 偶発事象基準に基づいて、現在進行中のプロジェクトの全体的分析を促進する(例:Van Slooten 1996 [5])
- プロセスチャンクを記述する手段として記述子の概念[6]を使用する。これにより、ユーザーの要件を満たすコンポーネントや、手元の状況に一致するコンポーネントの検索が容易になります。[7] (例: NATURE [9]のPlihon 1995 [8]や、インターネットでアクセスできる CREWS プロジェクト[10] [11]のシナリオベースのアプローチのリポジトリ)
アセンブリ技術を成功させるには、プロセスモデルがモジュール化されている必要があります。アセンブリ技術をインスタンス化技術と組み合わせる場合は、メタモデル自体もモジュール化されている必要があります。[2]
インスタンス化
プロセスを再利用するために、メタプロセスモデルは「プロセスモデルの共通で一般的な特徴を識別し、それらを概念のシステムで表現します。このような表現は、これらの特徴を共有するすべてのプロセスモデルを「生成」する可能性があります。この可能性は、アプリケーションが目的のプロセスモデルを生成する生成手法が定義されたときに実現されます。」[2]
プロセスモデルは、インスタンス化を通じてプロセスメタモデルから派生します。Rollandは、インスタンス化アプローチにいくつかの利点があるとしています。[2]
- メタモデルを活用することで、幅広いプロセス モデルを定義することができます。
- プロセス モデルを定義するアクティビティを体系的かつ多目的なものにします。
- プロセス メタモデル内で、問題に対する一般的なソリューションを探して導入することが強制され、これにより派生したプロセス モデルがソリューションの特性を引き継ぐようになります。
「インスタンス化技術は、例えばNATURE、[9] Rolland 1993、[1] Rolland 1994、[12] Rolland 1996で使用されています。 [13]プロセスエンジニアは、対象のプロセスモデルを構成するコンテキストと関係のインスタンスを定義する必要があります。」[2]
言語
Rolland(1998)は、ソフトウェアエンジニアリングコミュニティで使用されるプロセスモデルを表現するための多数の言語を挙げている。[2]
- E3 [4]
- EPOS、 [14]、 Oikos、[15]、PEACE [4]のさまざまなProlog方言
- PWI用PS-Algol [4]
さらに他の計算パラダイム:
- EPOS [14]とSPADE [16]におけるペトリネット
- MERLINにおけるルールベースのパラダイム[17]
- アルフ[18]
- マーベル[19]
- エポス[14]
- ADELE [20]とMVP-L [4]のトリガー
言語は通常プロセスプログラムに関連していますが、インスタンス化技術はプロセススクリプトの構築に使用されています。[2]
ツールサポート
メタモデリングプロセスは、CAMEツール(コンピュータ支援メソッドエンジニアリング)またはMetaCASEツール(メタレベルコンピュータ支援ソフトウェアエンジニアリングツール)と呼ばれるソフトウェアツールによってサポートされることが多い。多くの場合、インスタンス化技術は「コンピュータ支援メソッドエンジニアリング環境のリポジトリを構築するために利用されてきた」。[2] [21] [22] [23] [24]
メタプロセスモデリングのためのツールの例は以下のとおりである: [25]
- マエストロII [23]
- メタエディット+ [21]
- メンター[24]
例: 「マルチモデルビュー」
Colette Rolland (1999) [3] は、インスタンス化とアセンブリの手法を利用したメタプロセス モデルの例を示しています。この論文では、このアプローチは「マルチモデル ビュー」と呼ばれ、CREWS-L'Ecritoire 法に適用されました。CREWS-L'Ecritoire 法は、要件エンジニアリング(「ユーザー コミュニティの問題と要件を調査し、将来のシステムの仕様、いわゆる概念スキーマを開発する IS 開発の一部」) に対する方法論的アプローチを表しています。[1] [26] [27]
CREWS-L'Ecritoireアプローチに加えて、マルチモデルビューは以下のものを表現する基礎として機能してきました。[3]
- (a)CREWSプロジェクトで開発された他の3つの要件エンジニアリングアプローチ、リアルワールドシーンアプローチ[28]、シナリオ例外検出のためのSAVREアプローチ[29] 、シナリオアニメーションアプローチ[30]
- (b)アプローチ[31]を他のアプローチと統合し、OOSEアプローチ[32]と統合する
さらに、CREWS-L'Ecritoire は、状況に応じて柔軟に対応できるよう、プロセス モデルとメタプロセス モデルを活用しています。このアプローチは、マップと呼ばれる意図と戦略のラベル付きグラフと、それに関連するガイドラインの概念に基づいています。[3]マップ (プロセス モデル) とガイドラインが一緒になって、この方法を形成します。この説明の主な情報源は、Rolland の詳細です。[3]
プロセスモデル/マップ
マップは「次に達成すべき意図とそれを達成するための適切な戦略の動的な選択をサポートするナビゲーション構造」であり、「意図と戦略の非決定論的な順序付けが組み込まれたプロセスモデルです。これは、意図をノード、戦略を意図間のエッジとするラベル付き有向グラフです。グラフの有向性は、どの意図がどの意図に従うことができるかを示します。」[3]
CREWS-L'Ecritoire 法のマップは次のようになります。

マップは、戦略(矢印で表されます)で結ばれた目標/意図(楕円でマークされます)で構成されています。意図とは、アプリケーションエンジニアが特定の時点で念頭に置いている目標、目的です。戦略とは、意図を達成するためのアプローチ、方法です。2つの目標と戦略の結びつきは、セクションとも呼ばれます。[3]
マップは「アプリケーション エンジニアが開始意図から停止意図までのパスを決定できるようにします。マップには有限数のパスが含まれており、それぞれが製品の開発方法を規定しています。つまり、それぞれがプロセス モデルです。したがって、マップはマルチ モデルです。マップは複数のプロセス モデルを具体化して、プロセスのクラスをモデル化するためのマルチ モデル ビューを提供します。マップに含まれるモデルの有限セットはどれも「事前に」推奨されていません。代わりに、このアプローチは、マップ内を移動することによって実際のパスを動的に構築することを提案します。この意味で、このアプローチは、プロセスで発生する特定の状況に敏感です。次の意図とそれを達成するための戦略は、マップによって提供されるいくつかの可能なものの中からアプリケーション エンジニアによって動的に選択されます。さらに、このアプローチは、マップ内のパスの動的な追加、つまり実際のプロセス過程での新しい戦略または新しいセクションの追加を可能にすることを目的としています。このような場合、特定の状況に対処するために利用可能なすべての選択肢を提供するガイドラインは非常に便利です。マップは、そのようなガイドラインに関連付けられています。」[3]
ガイドライン
ガイドラインは「選択された意図の実施化に役立つ」ものであり[3]、「目標を達成したり活動を行ったりするためにどのように進めるかについての一連の指示」である。[33]ガイドラインの説明は、NATUREプロジェクトの文脈的アプローチ[9] [34] [35]とそれに対応する制定メカニズムに基づいている。[24] ガイドラインには3つのタイプがある。
- 意図選択ガイドライン (ISG) は、次のステップで達成できる意図のセットを識別し、対応する IAG (意図に対して 1 つの選択肢のみ) または SSG (複数の可能な意図) のセットを選択します。
- 戦略選択ガイドライン (SSG) は戦略の選択をガイドし、対応する IAG の選択につながります。
- 意図達成ガイドライン (IAG) は、アプリケーション エンジニアが戦略に従って意図を達成できるようにサポートすることを目的とし、これらの戦略を実装するための戦術に関係し、複数の戦術を提供する可能性があり、意図を実現するための代替的な運用方法が含まれる場合があります。



私たちの場合、上に表示されたマップに対応する次のガイドラインを定義する必要があります。
- 意図選択ガイドライン (ISG)
- ISG-1 目標の引き出しからの進捗
- ISG-2 シナリオの概念化からの進捗
- ISG-3 シナリオ作成からの進捗
- ISG-4 開始からの進捗
- 戦略選択ガイドライン(SSG)
- SSG-1 目標を引き出すための進捗
- SSG-2 シナリオ概念化の進捗
- SSG-3 シナリオ作成の進捗
- SSG-4 目標を引き出すための進捗
- SSG-5の進捗停止
- 意図達成ガイドライン (IAG)
- IAG-1 事例に基づく戦略で目標を引き出す
- IAG-2 構成戦略で目標を引き出す
- IAG-3 代替戦略で目標を引き出す
- IAG-4 改善戦略で目標を引き出す
- IAG-5 言語戦略で目標を引き出す
- IAG-6 テンプレート駆動戦略で目標を引き出す
- IAG-7 テンプレート駆動戦略でシナリオを書く
- IAG-8 自由散文でシナリオを書く
- IAG-9 コンピュータサポート戦略によるシナリオの概念化
- IAG-10 シナリオを手動で概念化する
- IAG-11 完全性戦略で停止
次のグラフは、意図達成ガイドライン 8 (IAG-8) の詳細を示しています。
メタプロセスマップ
C. Rolland の論文で提示されたマルチモデル ビューでは、メタプロセス (メタプロセス モデルのインスタンス) は、「マップからパスを生成し、それを手元のアプリケーションに瞬時に実行するプロセス」です。[3]メタプロセス モデルはさまざまな方法で表現できますが、その手段として再びマップが選択されました。これは、上で提示したプロセス モデルのマップと混同しないでください。

コレット・ロランドはメタモデルを次のように説明しています。[3] (メタ意図は太字、メタ戦略は斜体で、マップでは緑色で示されています。)
「Startメタインテンションは、ソースとしてマップ インテンション Start を持つメソッド マップ内のセクションを選択することで、プロセスの構築を開始します。Choose Sectionメタインテンションは、メソッド マップ セクションの選択をもたらします。Enact Section メタインテンションは、 Choose Sectionから生じるメソッド マップ セクションの実行を引き起こします。最後に、Stopメタインテンションは、アプリケーション プロセスの構築を停止します。これは、Enact Sectionメタインテンションが、Stop をターゲットとするメソッド マップ セクションの制定につながる場合に発生します。前のセクションですでに説明したように、メソッド マップのセクションを選択するには、インテンションを選択する方法と戦略を選択する方法の 2 つの方法があります。したがって、メタインテンションChoose Sectionには、それぞれselect intentionとselect strategy という2 つのメタ戦略が関連付けられています。Choose Sectionによってメソッド マップ セクションが選択されると、その制定をサポートする IAG を取得する必要があります。これは、メタ戦略の自動サポートをメタインテンションEnact Sectionに関連付けることで [グラフ] に表されます。」
サンプルプロセス
サンプル プロセス「リサイクル マシンの要件の抽出」は、リサイクル施設の要件を設計する方法に関するものです。リサイクル施設は、スーパーマーケットの顧客を対象としています。適切な方法は、プロセス モデル上でメタプロセス モデルをインスタンス化することによって得られます。
次の表は、リサイクルマシンの要件を引き出すプロセスの段階的なトレースを示しています([3]より)。
参照
- 自動プログラミング
- クラス責任コラボレーションカード(CRC)
- データマッピング
- データ変換
- ドメイン固有言語(DSL)
- ドメイン固有モデリング(DSM)
- Eclipse (ソフトウェア)
- 生成プログラミング(GP)
- 統一モデリング言語用語集
- 意図的プログラミング(IP)
- KM3
- 言語指向プログラミング(LOP)
- UMLツールのリスト
- メタデータ
- メタモデリング技術
- メタオブジェクト機能
- メソッドエンジニアリング
- モデル駆動エンジニアリング(MDE)
- モデル変換言語(MTL)
- モデルベーステスト(MBT)
- モデル駆動型アーキテクチャ (MDA)
- モデリング言語
- モデリングの視点
- オブジェクト制約言語(OCL)
- オブジェクト指向分析と設計(OOAD)
- MOF クエリ/ビュー/変換(QVT)
- 意味スペクトル
- 意味翻訳
- ソフトウェア工場
- 変換言語(TL)
- UMLツール
- 統一モデリング言語
- 語彙ベースの変換
- XMI
- XML 変換言語(XTL)
参考文献
- ^ abc Colette Rolland (1993 年 6 月)。「要件エンジニアリング プロセスのモデリング」。第 3 回情報モデリングと知識ベースに関する欧州 - 日本セミナー。ブダペスト、ハンガリー。CiteSeerX 10.1.1.29.8738 。
- ^ abcdefghijklmn Colette Rolland (1998)。「プロセスエンジニアリングの包括的視点」。第 10 回国際高度情報システム工学会議議事録、目次。ロンドン: Springer-Verlag。pp. 1–24。ISBN 978-3-540-64556-6。
- ^ abcdefghijklmnopq Rolland, C.; Prakash, N.; Benjamen, A. (1999). 「プロセスモデリングのマルチモデルビュー」(PDF) .要件エンジニアリング. 4 (4): 169. doi :10.1007/s007660050018. S2CID 6988662.
- ^ abcde A. Finkelstein、J. Kramer、B. Nuseibeh 編 (1994)。ソフトウェアプロセスモデリングとテクノロジー。ニューヨーク: Wiley。ISBN 978-0-471-95206-0。
- ^ K. Van Slooten、B. Hodes (1996)。「IS 開発プロジェクトの特徴づけ」。IFIP WG 8.1 メソッド エンジニアリング会議。ロンドン: Chapman and Hall。pp. 29–44。ISBN 978-0-412-79750-7。
- ^ V. De Antonellis、B. Pernici、P. Samarati。F-ORM メソッド: 仕様の再利用方法。情報システムにおけるオブジェクト指向アプローチ。Van Assche F.、Moulin B.、C Rolland (編)、North Holland、1991
- ^ Rolland, Colette & Prakash, Naveen (1996)。「コンテキスト固有のメソッドエンジニアリングの提案」。メソッドエンジニアリングに関する IFIP TC8、WG8.1/8.2 ワーキングカンファレンスの議事録。メソッドエンジニアリング: メソッド構築とツールサポートの原則。ロンドン: Chapman & Hall。pp. 191–208。ISBN 978-0-412-79750-7。
- ^ V. Plihon、C. Rolland (1995)。「高度情報システム工学」。高度情報システム工学 (CAISE) に関する第 7 回国際会議の議事録。コンピュータサイエンスの講義ノート。第 932 巻。Springer Verlag。pp. 126–139。doi : 10.1007 /3-540-59498-1。ISBN 978-3-540-59498-7. S2CID 35242104。
- ^ abc NATURE プロジェクトのホームページ (要件エンジニアリングの基礎となる理論への新しいアプローチ)
- ^ CREWS プロジェクトのホームページ (シナリオを使用した協調要件エンジニアリング)
- ^ C. Rolland、C. Ben Achour、C. Cauvet、J. Ralyté、A. Sutcliffe、NAM Maiden、M. Jarke、P. Haumer、K. Pohl、Dubois、P. Heymans (1998)。 「シナリオ分類フレームワークの提案」。要件エンジニアリング ジャーナル。3 (1): 23-47。CiteSeerX 10.1.1.30.5360。土井:10.1007/BF02802919。S2CID 1889956。
{{cite journal}}: CS1 maint: 複数の名前: 著者リスト (リンク) - ^ C. Rolland (1994 年 6 月)。「要件エンジニアリング プロセスをモデリングするためのコンテキスト アプローチ」。第 6 回ソフトウェア エンジニアリングおよび知識エンジニアリング国際会議。ラトビア、ユールマラ。CiteSeerX 10.1.1.52.9389。
- ^ Rolland, C.; Plihon, V. (1996). 「汎用メソッド チャンクを使用したプロセス モデル フラグメントの生成」。第2 回国際要件エンジニアリング会議の議事録。pp. 173–180。doi : 10.1109 /ICRE.1996.491442。ISBN 978-0-8186-7252-1.S2CID 2500090 。
- ^ abc Letizia Jaccheri、Jens-otto Larsen、Reidar Conradi (1992)。「EPOS におけるソフトウェア プロセス モデリングと進化」(PDF) 。IEEE Transactions on Software Engineering。19 ( 12 ): 1145–1156。CiteSeerX 10.1.1.53.493。doi : 10.1109/32.249660 。
- ^ V. Ambriola、ML Jaccheri、「Oikos ソフトウェア エンティティの定義と制定」、ソフトウェア プロセス モデリングに関する第 1 回ヨーロッパ ワークショップの議事録、ミラノ、イタリア、1991 年
- ^ S. Bandinelli、A. Fugetta、S. Grigoli (1993) 。「SLANG による大規模プロセスモデリング (1993)」。第 2 回ソフトウェアプロセス国際会議の議事録。ベルリン。pp. 75–93。CiteSeerX 10.1.1.31.9650。
{{cite book}}: CS1 maint: location missing publisher (link) - ^ W. Emmerich、G. Junkermann、W Schafer、「MERLIN: 知識ベースのプロセスモデリング」、ソフトウェアプロセスモデリングに関する第 1 回ヨーロッパワークショップの議事録、ミラノ、イタリア、1991 年。
- ^ Derniame, JC, Benali, K., Charoy, F., Boudjlida, N., Godart, C. (1989). 「ALF プロジェクトのプレゼンテーション、Proceedings Conference ソフトウェア開発環境およびファクトリー」ベルリン. hdl :10068/43710.
{{cite journal}}:ジャーナルを引用するには|journal=(ヘルプ)が必要ですCS1 maint: multiple names: authors list (link) - ^ GE Kaiser; et al. (1988). 「知識ベースエンジニアリング環境のためのデータベースサポート」IEEE Expert . 3 (2): 18–32. doi :10.1109/64.2102. S2CID 12499409.
- ^ N. Belkhatir; WL Melo (1994). 「Adele2 におけるソフトウェア開発プロセスのサポート」. Computer Journal . 37 (7): 621–628. doi : 10.1093/comjnl/37.7.621 .
- ^ ab 高度情報システム工学。コンピュータサイエンスの講義ノート。第1080巻。ハイデルベルグ:シュプリンガー。1996年。pp. 1–21。doi : 10.1007 / 3-540-61292-0。ISBN 978-3-540-61292-6. S2CID 27968437。
- ^ Harmsen, F.; Brinkkemper, S. (1995). 「状況依存 CASE 環境向けメソッド ベース管理システムの設計と実装」 Proceedings 1995 Asia Pacific Software Engineering Conference. pp. 430–438. doi :10.1109/APSEC.1995.496992. ISBN 978-0-8186-7171-5. S2CID 16914451。
- ^ ab G. メルベス。 Maestro II- das intergrierte CASE-system von Softlab、CASE systeme and Werkzeuge (H. Balzert 編) BI Wissenschaftsverlag、pp 319-336、1991
- ^ abc Si-Said, Samira; Rolland, Colette (1997). 「要件エンジニアリング プロセスのガイダンス」. データベースおよびエキスパート システム アプリケーション( PDF) . コンピュータ サイエンスの講義ノート。第 1308 巻。ハイデルベルク: Springer。pp. 643–652。doi :10.1007/BFb0022072。ISBN 978-3-540-63478-2。
- ^ C. ローランド(1997 年 6 月 10 日 - 13 日)。 「メソッドエンジニアリングの入門書」。INFORSID 会議 (INFormatique des Organisation et Systemes d'Information et de Decision) の議事録 (フランス、トゥールーズ)。チャップマン&ホール。 1 ~ 7 ページ。ISBN 978-0-412-79750-7。
- ^ Hagelstein, J (1988). 「情報システム要件への宣言的アプローチ」.知識ベースシステム. 1 (4): 211–220. doi :10.1016/0950-7051(88)90031-7.
- ^ E. デュボア; J. ヘーゲルシュタイン; A. リフォー (1989)。 「ERAEを使用した形式要件エンジニアリング」。フィリップスジャーナルリサーチ。43(4)。
- ^ Haumer, P.; Pohl, K.; Weidenhaupt, K. (1998). 「現実世界のシーンによる要件の抽出と検証」. IEEE Transactions on Software Engineering . 24 (12): 1036. doi :10.1109/32.738338.
- ^ Sutcliffe, AG; Maiden, NAM; Minocha, S.; Manuel, D. (1998). 「シナリオベースの要件エンジニアリングのサポート」. IEEE Transactions on Software Engineering . 24 (12): 1072. doi :10.1109/32.738340.
- ^ E. Dubois 、 P. Heymans ( 1998)。「形式要件の詳細化と検証をサポートするシナリオベースの手法」。Requirement Eng J. 3 ( 3–4): 202–218。CiteSeerX 10.1.1.45.4151。doi : 10.1007/s007660050005。S2CID 2471719。
- ^ J. Ralyté、C. Rolland、V. Plihon (1999 年 6 月)。「シナリオ ベース テクニックによるメソッド強化」。ドイツ、ハイデルベルクで開催された第 11 回高度情報システム工学会議の議事録。ロンドン: Springer- Verlag。pp . 103–118。ISBN 978-3-540-66157-3。
- ^ Jacobson, Ivar (1992). オブジェクト指向ソフトウェアエンジニアリング: ユースケース主導アプローチ。ACM Press。ISBN 978-0-201-54435-0。
- ^ Le Petit Robert フランス語辞典、Dictionnaires Le Robert、フランス、1995
- ^ Rolland, C (1995). 「働き方を定義するためのアプローチ」.情報システム. 20 (4): 337–359. doi :10.1016/0306-4379(95)00018-Y.
- ^ G. Grosz、C. Rolland、S. Schwer; et al. (1997). 「要件エンジニアリング プロセスのモデリングとエンジニアリング: NATURE アプローチの概要」. Requirements Eng J. 2 ( 3): 115–131. doi :10.1007/BF02802771. S2CID 7672233.
{{cite journal}}: CS1 maint: multiple names: authors list (link)
