(57)【要約】【課題】サービス指向アーキテクチャ（ＳＯＡ）対応のアプリケーションを検証するための方法、システム及びコンピュータ・プログラムを提供する。【解決手段】本発明の実施形態では、ＳＯＡ対応のアプリケーションを検証するための方法を提供する。この方法は、ＳＯＡ対応のアプリケーション用の一のビジネス・プロセス・モデルを一の有向連結非巡回グラフに変換するステップと、前記ビジネス・プロセス・モデル用の複数のサービス・グルーピングを対応する複数の有向連結非巡回グラフにさらに変換するステップと、前記ビジネス・プロセス・モデル用の前記グラフにおけるルート・ノードからリーフ・ノードに至る全てのパスを計算するステップと、前記ビジネス・プロセス・モデル用の前記グラフにおいてループ又は閉路が存在しないことを保証することにより、前記ビジネス・プロセス・モデルを検証するとともに、前記複数のサービス・グルーピング用の前記複数のグラフ間に共有頂点が存在しないことを保証することにより、前記ビジネス・プロセス・モデルをさらに検証するステップとを有する。【選択図】  図２
2011509458.tif 000002
【特許請求の範囲】
【請求項１】
サービス指向アーキテクチャ（ＳＯＡ）対応のアプリケーションを検証するための方法であって、
ＳＯＡ対応のアプリケーション用の一のビジネス・プロセス・モデルを一の有向連結非巡回グラフに変換するステップと、
前記ビジネス・プロセス・モデル用の複数のサービス・グルーピングを対応する複数の有向連結非巡回グラフにさらに変換するステップと、
前記ビジネス・プロセス・モデル用の前記グラフにおけるルート・ノードからリーフ・ノードに至る全てのパスを計算するステップと、
前記ビジネス・プロセス・モデル用の前記グラフにおいてループ又は閉路が存在しないことを保証することにより、前記ビジネス・プロセス・モデルを検証するとともに、前記複数のサービス・グルーピング用の前記複数のグラフ間に共有頂点が存在しないことを保証することにより、前記ビジネス・プロセス・モデルをさらに検証するステップとを有する、方法。
【請求項２】
前記ビジネス・プロセス・モデルを検証するステップが、
前記計算されたパスのうち単一のパスが前記複数のサービス・グルーピングのうち単一のサービス・グルーピング用の全ての頂点を含むか否かを決定するステップと、
前記単一のパスが前記単一のサービス・グルーピング用の全ての頂点を含み且つ前記単一のパス内に含まれる全ての頂点が連結されていない場合は、前記単一のサービス・グルーピングが無効であると決定するステップとをさらに有する、請求項１記載の方法。
【請求項３】
前記ビジネス・プロセス・モデルを検証するステップが、
前記複数のサービス・グルーピングのうち対応するグラフ内に単一の頂点だけを含む各サービス・グルーピングが有効であると決定するステップをさらに有する、請求項１記載の方法。
【請求項４】
前記ビジネス・プロセス・モデルを検証するステップが、
前記計算されたパスのうち単一のパスと前記複数のサービス・グルーピングのうち単一のサービス・グルーピングとの間の交差を計算するステップと、
各交差が複数の頂点を含むか否かを決定するステップと、
任意の交差が連結されていない複数の頂点を含む場合は、前記単一のサービス・グルーピングが無効であると決定するステップとをさらに有する、請求項１記載の方法。
【請求項５】
サービス指向アーキテクチャ（ＳＯＡ）対応のアプリケーションを検証するためのデータ処理システムであって、
ＳＯＡ対応のアプリケーション用の一のビジネス・プロセス・モデルを一の有向連結非巡回グラフに変換するように構成されたモデル変換モジュールと、
前記ビジネス・プロセス・モデル用の複数のサービス・グルーピングを対応する複数の有向連結非巡回グラフにさらに変換するように構成されたサービス・グループ変換モジュールと、
前記ビジネス・プロセス・モデル用の前記グラフにおけるルート・ノードからリーフ・ノードに至る全てのパスを計算するように構成されたパス探索モジュールと、
プログラム・コードを有するモデル検証論理とを備え、
前記プログラム・コードが、前記ビジネス・プロセス・モデル用の前記グラフにおいてループ又は閉路が存在しないことを保証することにより、前記ビジネス・プロセス・モデルを検証するとともに、前記複数のサービス・グルーピング用の前記複数のグラフ間に共有頂点が存在しないことを保証することにより、前記ビジネス・プロセス・モデルをさらに検証するようにイネーブルされる、データ処理システム。
【請求項６】
前記プログラム・コードが、
前記計算されたパスのうち単一のパスが前記複数のサービス・グルーピングのうち単一のサービス・グルーピング用の全ての頂点を含むか否かを決定し、前記単一のパスが前記単一のサービス・グルーピング用の全ての頂点を含み且つ前記単一のパス内に含まれる全ての頂点が連結されていない場合は、前記単一のサービス・グルーピングが無効であると決定するようにさらにイネーブルされる、請求項５記載のシステム。
【請求項７】
前記プログラム・コードが、
前記複数のサービス・グルーピングのうち対応するグラフ内に単一の頂点だけを含む各サービス・グルーピングが有効であると決定するようにさらにイネーブルされる、請求項５記載のシステム。
【請求項８】
前記プログラム・コードが、
前記計算されたパスのうち単一のパスと前記複数のサービス・グルーピングのうち単一のサービス・グルーピングとの間の交差を計算し、各交差が複数の頂点を含むか否かを決定し、任意の交差が連結されていない複数の頂点を含む場合は、前記単一のサービス・グルーピングが無効であると決定するようにさらにイネーブルされる、請求項５記載のシステム。
【請求項９】
請求項１ないし請求項４の何れか１項に記載の方法の各ステップをコンピュータに実行させるためのコンピュータ・プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、サービス指向アーキテクチャ（ＳＯＡ）ベースのシステムを開発することに係り、さらに詳細に説明すれば、ＳＯＡ対応のアプリケーション（以下「ＳＯＡアプリケーション」とも称する）を検証することに係る。
【背景技術】
【０００２】
ビジネス及び消費者が、グローバル・インターネット及びローカル・イントラネットのようなコンピュータ通信を通して一層緊密に相互接続されるようになるにつれて、ビジネス及び消費者の間の電子商取引を統合するための電子商取引サイト及びコンパニオン計算アプリケーションも、これと同様に一層複雑になってきている。情報技術者は、ビジネス間の電子商取引及び一般消費者向き電子商取引の爆発に対処すべく、組み合わされたときにビジネスのライフ・サイクルを反映するような複数の異種アプリケーションを統合する代わりに、ビジネスの全ライフ・サイクルを反映すべき完全な電子商取引サイトのソリューションを設計し且つ実装することにますます焦点を合わせるようになっている。従って、最近の電子商取引サイトが大きくなり且つ分散されるにつれて、電子商取引システムは、できるだけシームレスな態様で完全な電子商取引システムを配備するように構成されてきた。
【０００３】
現在の普通の傾向は、異なるソリューション用のビジネス・プロセスを作成するために個々に再使用することができる１つ以上のコンポーネントから、通常の、独立型の、電子商取引アプリケーションを作成するというものである。これらのコンポーネントの各々は、１セットの再使用可能なビジネス機能としてそれ自体を公開することができる。これらの再使用可能なビジネス機能は、「サービス」とも呼ばれ、オープンなサービス指向アーキテクチャ（ＳＯＡ）を促進する、エンタープライズ・レベルの論理を配備するためのコンピューティング標準と適合する。公開された全てのビジネス及び技術的な機能が再使用可能なサービスの形式を有している場合、ＳＯＡは、本質的にシステムとして定義することができる。これらの再使用可能なサービスは、互いに通信することにより、複数のサービス間の簡単なデータ引き渡し又は複数のサービスによる活動調整の何れかに従事することができる。
【０００４】
ＳＯＡでは、一のクライアントは、一の機能を実行するために一のサービス上の一の動作を呼び出すことができ、また、オプションとして、一の応答を受け取ることができる。一般に、呼び出される諸サービスは、ビジネス顧客が個々の消費者又は他のビジネスであるか否かに拘わらず、これらのビジネス顧客のニーズを満たすように構成された諸ビジネス機能である。これらのビジネス機能は、種々のサービスにグループ化することができる。すなわち、各サービスを、カタログ管理、ショッピング・カート管理、クレジット・カードのトランザクション処理、消費税の計算等のような諸機能に専門化することができる。ＳＯＡを使用すると、一の電子商取引ソリューションにおける諸サービスは、１つ以上の別個のビジネス・エンティティ及び１つ以上の別個の消費者エンティティを包含するより大きな電子商取引ソリューションにおける他のビジネス・プロセスと相互運用することができる。
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ＳＯＡアプリケーションは、多数の利点を提供する。しかし、無計画に且つ無秩序にＳＯＡを採用すると、諸組織は、多くの潜在的リスクにさらされることになる。この点に関して、一の組織をＳＯＡに準拠するように変換する場合、所望のサービスが容易に探索可能であることを、エンタープライズ・アーキテクトがどのように保証するかを考慮しなければならない。また、諸サービスがテクノロジー及びビジネス・アプリケーションの標準に準拠することを、管理者がどのように保証できるかを考慮しなければならない。さらに、実行可能なエンドツーエンド・ソフトウェア・アプリケーションを構築するために諸サービスを再使用できることを、管理者がどのように保証できるかを考慮しなければならない。最後に、管理者の組織的な構造内で諸サービスの相互協調処理をどのように制御できるかを考慮しなければならない。
【課題を解決するための手段】
【０００６】
本発明は、ＳＯＡ対応のビジネス・プロセス・モデル（以下「ビジネス・プロセス・モデル」とも称する）の検証に係る従来技術の欠点を解消することを意図する。すなわち、本発明は、ＳＯＡ対応のアプリケーションを検証するための方法、システム及びコンピュータ・プログラムを提供する。本発明の一の実施形態では、ＳＯＡ対応のアプリケーションを検証するための方法が提供される。この方法は、ＳＯＡ対応のアプリケーション用の一のビジネス・プロセス・モデルを一の有向連結非巡回グラフ（directed and connected, acyclic graph）に変換するステップと、前記ビジネス・プロセス・モデル用の複数のサービス・グルーピングを対応する複数の有向連結非巡回グラフにさらに変換するステップと、前記ビジネス・プロセス・モデル用の前記グラフにおけるルート・ノードからリーフ・ノードに至る全てのパスを計算するステップと、前記ビジネス・プロセス・モデル用の前記グラフにおいてループ又は閉路（cycle）が存在しないことを保証することにより、前記ビジネス・プロセス・モデルを検証するとともに、前記複数のサービス・グルーピング用の前記複数のグラフ間に共有頂点（shared vertex）が存在しないことを保証することにより、前記ビジネス・プロセス・モデルをさらに検証するステップとを有する。
【０００７】
実施形態の１つの側面では、前記ビジネス・プロセス・モデルを検証するステップが、前記計算されたパスのうち単一のパスが前記複数のサービス・グルーピングのうち単一のサービス・グルーピング用の全ての頂点を含むか否かを決定するステップと、前記単一のパスが前記単一のサービス・グルーピング用の全ての頂点を含み且つ前記単一のパス内に含まれる全ての頂点が連結されていない場合は、前記単一のサービス・グルーピングが無効であると決定するステップとをさらに有する。実施形態の他の側面では、前記ビジネス・プロセス・モデルを検証するステップが、前記複数のサービス・グルーピングのうち対応するグラフ内に単一の頂点だけを含む各サービス・グルーピングが有効であると決定するステップをさらに有する。実施形態の他の側面では、前記ビジネス・プロセス・モデルを検証するステップが、前記計算されたパスのうち単一のパスと前記複数のサービス・グルーピングのうち単一のサービス・グルーピングとの間の交差（intersection）を計算するステップと、各交差が複数の頂点を含むか否かを決定するステップと、任意の交差が連結されていない複数の頂点を含む場合は、前記単一のサービス・グルーピングが無効であると決定するステップとをさらに有する。
【０００８】
本発明の他の実施形態では、ＳＯＡ対応のアプリケーションを検証するためのデータ処理システムが提供される。このシステムは、ＳＯＡ対応のアプリケーション用の一のビジネス・プロセス・モデルを一の有向連結非巡回グラフに変換するように構成されたモデル変換モジュールと、前記ビジネス・プロセス・モデル用の複数のサービス・グルーピングを対応する複数の有向連結非巡回グラフにさらに変換するように構成されたサービス・グループ変換モジュールと、前記ビジネス・プロセス・モデル用の前記グラフにおけるルート・ノードからリーフ・ノードに至る全てのパスを計算するように構成されたパス探索モジュールと、プログラム・コードを有するモデル検証論理とを備え、前記プログラム・コードが、前記ビジネス・プロセス・モデル用の前記グラフにおいてループ又は閉路が存在しないことを保証することにより、前記ビジネス・プロセス・モデルを検証するとともに、前記複数のサービス・グルーピング用の前記複数のグラフ間に共有頂点が存在しないことを保証することにより、前記ビジネス・プロセス・モデルをさらに検証するようにイネーブルされる。
【０００９】
本発明の追加の側面は、その一部が以下で記述され、他の一部は以下の記述から明らかであるか、又は本発明を実施することによって理解することができるであろう。本発明の諸側面は、請求項に明示された諸要素及び組み合わせによって実現されるであろう。前述の一般的な記述及び以下の詳細な記述は、説明のために例示されたものであるに過ぎず、請求項に係る発明の範囲を制限するものではないことに留意されたい。
【発明の効果】
【００１０】
本発明は、ビジネス・プロセス・モデルの複雑さに関わりなく、当該ビジネス・プロセス・モデル及びその指定されたサービス・グルーピングを検証することができるという効果を奏する。
【図面の簡単な説明】
【００１１】
【図１】ＳＯＡアプリケーションを検証するように構成されたデータ処理システムの概要を示す図である。
【図２】ＳＯＡアプリケーションを検証するためのプロセスを示すフローチャートである。
【図３】ビジネス・プロセス・モデル及びサービス・グルーピング用の有向連結非巡回グラフ、並びにビジネス・プロセス・モデル用の計算されたパスを通して、ＳＯＡビジネス・プロセス・モデルを検証するためのプロセスの第１段階を示すフローチャートである。
【図４】ビジネス・プロセス・モデル及びサービス・グルーピング用の有向連結非巡回グラフ、並びにビジネス・プロセス・モデル用の計算されたパスを通して、ＳＯＡビジネス・プロセス・モデルを検証するためのプロセスの第２段階を示すフローチャートである。
【図５】ビジネス・プロセス・モデル及びサービス・グルーピング用の有向連結非巡回グラフ、並びにビジネス・プロセス・モデル用の計算されたパスを通して、ＳＯＡビジネス・プロセス・モデルを検証するためのプロセスの静的パス解析段階を示すフローチャートである。
【発明を実施するための形態】
【００１２】
本発明は、ＳＯＡアプリケーションを検証するための方法、システム及びコンピュータ・プログラムを提供する。本発明の一の実施形態に従って、一のビジネス・プロセス・モデルは一の有向グラフに変換され、当該ビジネス・プロセス・モデル用の指定された複数のサービス・グルーピングは対応する複数の有向グラフに変換される。その後、無効サービス・グルーピングを示すループを検出するために、複数のサービス・グルーピングに対応する複数の有向グラフが、ビジネス・プロセス・モデル用の有向グラフと個別に比較される。さらに、ビジネス・プロセス・モデルの有向グラフをトラバースする全てのパスが、複数のサービス・グルーピング用の複数の有向グラフと個別に比較され、その結果、非連結頂点（disconnected vertex）を有するサービス・グルーピング及びパスが検出される。かかる非連結頂点を有するサービス・グルーピング及びパスは、無効なサービス・グルーピングを示す。このように、ＳＯＡ対応のビジネス・プロセス・モデルの複雑さに関わりなく、当該ビジネス・プロセス・モデル及びその指定されたサービス・グルーピングを検証することができる。
【００１３】
図１は、ＳＯＡアプリケーションを検証するように構成されたデータ処理システムの概要を示す図である。このシステムのホスト・コンピューティング・プラットフォーム１１０は、動作環境１２０の実行をサポートする。動作環境１２０は、オペレーティング・システム又は仮想計算機であり、検証フレームワーク１３０の動作をホストする。検証フレームワーク１３０は、ＳＯＡ対応のビジネス・プロセス・モデル１８０用の検証結果１９０を提供するように構成され、ＳＯＡ対応のビジネス・プロセス・モデル１８０の諸サービス・コンポーネントから定義された諸サブプロセスを含む。
【００１４】
具体的には、検証フレームワーク１３０は、モデル変換モジュール１４０と、サービス・グループ変換モジュール１５０と、パス探索モジュール１６０と、モデル検証論理１７０とを含む。モデル変換モジュール１４０は、ＳＯＡ対応のビジネス・プロセス・モデル１８０を一の有向連結非巡回グラフに変換するように構成される。同様に、サービス・グループ変換モジュール１５０は、ＳＯＡ対応のビジネス・プロセス・モデル１８０内に反映される諸サービスの異なるサブグルーピングをそれぞれの有向連結非巡回グラフに変換するように構成される。パス探索モジュール１６０は、ＳＯＡ対応のビジネス・プロセス・モデル１８０用の有向グラフをトラバースする全てのパスを計算するように構成される。
【００１５】
特に、モデル検証論理１７０に含まれるプログラム・コードは、ビジネス・プロセス・モデル１８０用の有向連結非巡回グラフ、諸サービスの複数のサービス・グルーピングに対応する複数の有向連結非巡回グラフ及び計算されたパスを処理することにより、無効サービス・グルーピングのリスト１９０を作成するようにイネーブルされる。すなわち、当該プログラム・コードは、ビジネス・プロセス・モデル１８０用のグラフが任意のループ又は閉路を含むか否かを決定するようにイネーブルされる。そうであれば、当該プログラム・コードは、無効のビジネス・プロセス・モデルを報告するようにイネーブルされる。さらに、当該プログラム・コードは、ビジネス・プロセス・モデル１８０用のグラフにおける所与の頂点が、複数のサービス・グルーピングに対応する複数のグラフ内に含まれるか否かを決定するようにイネーブルされる。そうであれば、当該プログラム・コードは、同じ頂点を含むサービス・グルーピングのリストを無効サービス・グルーピングのリストとして報告するようにイネーブルされる。
【００１６】
さらに、当該プログラム・コードは、各サービス・グルーピングに対応する各グラフを個別に処理することにより、複数の頂点を含むサービス・グルーピングであって、含まれる全ての頂点が同じパスに沿って連結されていないサービス・グルーピングを識別するようにイネーブルされる。同じパスに沿って連結されていない複数の頂点を含むサービス・グルーピングについては、当該プログラム・コードは、これらのサービス・グルーピングを無効として報告するようにイネーブルされる。最後に、当該プログラム・コードは、各パスを処理することにより、交差するサービス・グルーピングを識別して共通の頂点を指示するようにイネーブルされる。そのため、当該プログラム・コードは、交差する各サービス・グルーピングにおける非連結頂点を検出するようにイネーブルされる。一のサービス・グルーピングにおいて非連結頂点が検出される限り、当該プログラム・コードは、当該サービス・グルーピングを無効として報告するようにイネーブルされる。
【００１７】
図２は、ＳＯＡアプリケーションを検証するためのプロセスを示すフローチャートである。ブロック２１０で、一のビジネス・プロセス・モデルがロードされる。ブロック２２０で、ビジネス・プロセス・モデルが一の有向連結非巡回グラフに変換される。ブロック２３０で、ビジネス・プロセス・モデルの諸サブセットとしてのサービス・グルーピングの各セットが識別され、対応する複数の有向連結非巡回グラフにそれぞれ変換される。ブロック２４０で、ビジネス・プロセス・モデル用の有向連結非巡回グラフにおけるルート・ノードからリーフ・ノードに至る全てのパスが計算される。ブロック２５０で、ビジネス・プロセス・モデル及びサービス・グルーピング用の有向連結非巡回グラフ、並びに計算されたパスが検証され、ブロック２６０で、無効サービス・グルーピングのリストに加えて、無効ビジネス・プロセス・モデルの表示が報告される。
【００１８】
図３〜図５は、全体として、ビジネス・プロセス・モデル及びサービス・グルーピング用の有向連結非巡回グラフ、並びに当該ビジネス・プロセス・モデル用の計算されたパスを通して、当該ビジネス・プロセス・モデルを検証するためのプロセスを示す。先ず、図３を参照して説明する。ブロック３００で、ビジネス・プロセス・モデル用の有向連結非巡回グラフがロードされる。ブロック３０５で、ビジネス・プロセス・モデルの各サービス・グルーピングに対応する各有向連結非巡回グラフがロードされる。ブロック３１０で、ビジネス・プロセス・モデル用のグラフをトラバースすることにより、容認できないループ及び閉路が識別される。
【００１９】
ブロック３１５で、ビジネス・プロセス・モデル用のグラフにおいてループ又は閉路が存在するか否かが決定される。そうであれば、ブロック３２０で、ビジネス・プロセス・モデルそれ自体が無効であることが報告される。そうでなければ、ブロック３２５で、ビジネス・プロセス・モデル用のグラフにおいて各頂点を含む各サービス・グルーピングが識別される。ブロック３３０で、当該グラフにおける一の頂点が複数の異なるサービス・グルーピング間で共有されているか否かが決定される。そうであれば、ブロック３４０で、当該頂点を共有するサービス・グルーピングが無効として報告される。そうでなければ、ブロック３４５で、ビジネス・プロセス・モデルが検証の第１段階に合格する。
【００２０】
検証の第２段階では、各サービス・グルーピングが有効性について解析される。図４を参照して、単一のサービス・グルーピングの解析を具体的に説明する。ブロック３５０で、当該サービス・グルーピング用の一の有向連結非巡回グラフがロードされ、ブロック３５５で、当該ビジネス・プロセス・モデル用のグラフについて計算された全てのパスがロードされる。ブロック３６０で、当該サービス・グルーピングが単一の頂点だけを含むか否かが決定される。そうであれば、ブロック３６５で、当該サービス・グルーピングは有効であると決定される（図４のプロセスは、他のサービス・グルーピングの各々について繰り返すことができる）。そうでなければ、このプロセスは、ブロック３７０を通して継続される。
【００２１】
ブロック３７０で、前記計算されたパスのうち単一のパスが当該サービス・グルーピングの全ての頂点を含むか否かが決定される。そうであれば、ブロック３７５で、全ての頂点が当該パスにおいて連結されているか否かが決定される。そうであれば、ブロック３６５で、当該サービス・グルーピングは有効であると決定される。そうでなければ、ブロック３８０で、当該サービス・グルーピングは無効であると報告される（図４のプロセスは、他のサービス・グルーピングの各々について繰り返すことができる）。もし、前記計算されたパスのうち単一のパスが当該サービス・グルーピングの全ての頂点を含んでいなければ、ブロック３８５で、より詳細な静的パス解析が行われる。
【００２２】
図５を参照して、静的パス解析を具体的に説明する。ブロック３９０で、当該サービス・グルーピング用の一の有向連結非巡回グラフがロードされる。ブロック３９５で、当該ビジネス・プロセス・モデルのグラフについて計算された全てのパスがロードされる。ブロック４００で、前記全てのパスのうち最初のパスが処理のために選択される。ブロック４０５で、当該パス及び当該サービス・グルーピングの間の交差が決定される。すなわち、当該パスにおける当該サービス・グルーピングの共有頂点は交差である。ブロック４１０で、複数の頂点が当該交差に含まれるか否かが決定される。そうでなければ、ブロック４２０で、検討すべき追加のパスが残存しているか否かが決定される。そうであれば、このプロセスは、次のパスについてブロック４００を通して継続される。
【００２３】
ブロック４１０で、複数の頂点が当該交差に含まれることが決定される場合、ブロック４３０で、当該交差における全ての頂点が連結されているか否かが決定される。そうでなければ、ブロック４１５で、当該サービス・グルーピングは無効として報告される。そうであれば、ブロック４２０で、検討すべき追加のパスが残存しているか否かが決定される。そうであれば、このプロセスは、次のパスについてブロック４００を通して継続される。当該サービス・グルーピングについて検討すべき追加のパスが残存していなければ、当該サービス・グルーピングは、ブロック４２５において有効であると決定される。
【００２４】
本発明は、完全なハードウェア実施形態、完全なソフトウェア実施形態又はハードウェア及びソフトウェア要素の両方を含む実施形態の形式を取ることができる。好ましい実施形態では、本発明は、（ファームウェア、常駐ソフトウェア、マイクロコード等を含む）ソフトウェアの形式で実装される。さらに、本発明は、コンピュータ又は任意の命令実行システムによって或いはそれらに関連して使用するためのプログラム・コードを提供するコンピュータ使用可能媒体又はコンピュータ可読媒体からアクセス可能なコンピュータ・プログラムの形式を取ることができる。
【００２５】
この点に関連して、コンピュータ使用可能媒体又はコンピュータ可読媒体は、命令実行システム、装置又はデバイスによってあるいはそれらに関連して使用するためのプログラムを保持し、格納し、通信し、伝播し又は搬送することができる任意の装置とすることができる。かかる媒体は、電子的、磁気的、光学的、電磁的、赤外線、又は半導体システム（装置又はデバイス）或いは伝播媒体とすることができる。コンピュータ可読媒体の例は、半導体又は固体メモリ、磁気テープ、取り外し可能なフレキシブル・ディスク、ランダム・アクセス・メモリ（ＲＡＭ）、読み取り専用メモリ（ＲＯＭ）、固定磁気ディスク及び光ディスクを含む。光ディスクの現在の例は、コンパクト・ディスク・リード・オンリ・メモリ（ＣＤ−ＲＯＭ）、コンパクト・ディスク・リード／ライト（ＣＤ−Ｒ／Ｗ）及びＤＶＤを含む。
【００２６】
プログラム・コードを格納又は実行もしくはこれらの両方を行うための適切なデータ処理システムは、システム・バスを通してメモリ要素に直接的に又は間接的に結合された少なくとも１つのプロセッサを含むであろう。かかるメモリ要素は、プログラム・コードの実際の実行中に使用されるローカル・メモリと、バルク・ストレージ、及び実行中にコードがバルク・ストレージから検索されなければならない回数を減らすために、プログラム・コードの一時的ストレージを提供するキャッシュ・メモリとを含む。Ｉ／Ｏデバイス（キーボード、ディスプレイ、ポインティング・デバイス等を含む）は、直接的に又はＩ／Ｏコントローラを介してシステムに結合することができる。また、ネットワーク・アダプタをデータ処理システムに結合すると、当該データ処理システムを、プライベート・ネットワーク又は公衆ネットワークを介して、他のデータ処理システム、リモート・プリンタ、ストレージ装置等に結合することができる。モデム、ケーブル・モデム及びイーサネット（登録商標）カードは、現時点で使用可能なタイプのネットワーク・アダプタである。
【符号の説明】
【００２７】
１１０・・・ホスト・コンピューティング・プラットフォーム
１２０・・・動作環境
１３０・・・検証フレームワーク
１４０・・・モデル変換モジュール
１５０・・・サービス・グループ変換モジュール
１６０・・・パス探索モジュール
１７０・・・モデル検証論理
１８０・・・ビジネス・プロセス・モデル
１９０・・・無効サービス・グルーピングのリスト
【図１】
2011509458.tif 000003
【図２】
2011509458.tif 000004
【図３】
2011509458.tif 000005
【図４】
2011509458.tif 000006
【図５】
2011509458.tif 000007
【国際調査報告】
2011509458.tif 000008
2011509458.tif 000009