(57)【要約】【課題】プローブ・ポイント、ＫＰＩ（主要業績評価指標）、およびビジネス・コミットメントを介してビジネス・レベルＳＬＡ（サービス・レベル・アグリーメント）を監視し、制御するシステムおよび方法を提供すること。【解決手段】たとえば、システム（１０）に、ＸＭＬフォーマットの１つまたは複数のＢＰＣＬ文書（１２）を作成するＢＰＣＬコンポーザ（１１）が含まれ、このＢＰＣＬコンポーザ（１１）は、プローブ・ポイント、ＫＰＩ、およびビジネス・プロセス・コミットメントの間の関係を表示する（ＧＵＩを介して）。システム（１０）に、ＢＰＣＬコンフィギュレータ（１３）、アクチュエータ（１４）、条件エバリュエータ（１５）、ＫＰＩカリキュレータ（１６）、および評価トリガ（１７）などの実行時コンポーネントが含まれる。ＢＰＣＬコンフィギュレータ（１３）は、ＢＰＣＬ文書および他の構成ファイルを処理して、システム・コンポーネント（１４〜１７）を構成する。アクチュエータ（１４）は、ジェネリック通知を送るか、動作中のビジネス・プロセス（１８）の実行を変更することができる管理ディレクティブを呼び出す。ＫＰＩカリキュレータ（１６）は、ＫＰＩ値を判定し、条件エバリュエータ（１５）は、論理条件を評価する。評価トリガ（１７）は、条件エバリュエータ（１５）を呼び出すための「トリガ」を決定する（たとえば、アラームベース・トリガまたはイベントベース・トリガ）。実行時中に、ＳＬＡ監視は、動作中のビジネス・プロセス（１８）の実行中にプローブ・ポイントがアクティブ化された時に行われる。プローブ・ポイントがアクティブ化された時に、ＫＰＩ値が計算され、次に、（論理）条件が評価される。条件評価からの結果によって、ＳＬＡ違反が発生したか否かが判定される。そのような違反がある場合に、ジェネリック通知が適当な当事者に送られるか、管理ディレクティブがビジネス・プロセスにルート・バックされて、ビジネス・プロセスの実行が操作される。【選択図】図２
2007529048.tif 000002
【特許請求の範囲】
【請求項１】
複数のエンティティの間の相互作用を可能にするアプリケーションの統合された組を含むビジネス・プロセスを実行するステップと、
前記エンティティの間の１つまたは複数のビジネス・コミットメントを記述したビジネス・コミットメント指定を使用して前記ビジネス・プロセスの前記実行を管理するステップであって、前記ビジネス・コミットメントが、ＫＰＩ（主要業績評価指標）を使用して定義され、ＫＰＩが、プローブ・ポイントを使用して定義される、ステップと
を含む、ビジネス・プロセスを管理する方法。
【請求項２】
前記ビジネス・コミットメント指定が、ＸＭＬ（ｅＸｔｅｎｓｉｂｌｅ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）構文を使用して記述される、請求項１に記載の方法。
【請求項３】
管理する前記ステップが、
前記ビジネス・プロセスに関連するプローブ・ポイントを監視するステップと、
ＫＰＩに関連するプローブ・ポイントがアクティブ化された時に前記ＫＰＩの値を判定するステップと、
前記ビジネス・コミットに違反しているかどうかを判定するために、前記ＫＰＩの前記判定された値に基づいて前記ＫＰＩに関連するビジネス・コミットメントを評価するステップと
を含む、請求項１に記載の方法。
【請求項４】
ＫＰＩの値を判定する前記ステップが、少なくとも１つの他のＫＰＩの値に基づいて前記ＫＰＩの前記値を判定することを含む、請求項３に記載の方法。
【請求項５】
ＫＰＩの値を判定する前記ステップが、前記ＫＰＩの前記値を判定するために関数を呼び出すことを含む、請求項３に記載の方法。
【請求項６】
ＫＰＩの値を判定する前記ステップが、プローブ・ポイントから抽出された値に基づいて前記ＫＰＩの前記値を判定することを含む、請求項３に記載の方法。
【請求項７】
ビジネス・コミットメントを評価する前記ステップが、前記ＫＰＩの前記判定された値を使用して、前記ビジネス・コミットメントによって指定された条件を評価することを含む、請求項３に記載の方法。
【請求項８】
前記ビジネス・コミットメントに違反していると判定された場合にアクションを開始するステップをさらに含む、請求項３に記載の方法。
【請求項９】
アクションを開始する前記ステップが、前記ビジネス・コミットメントに関連するエンティティに前記違反の通知を提供することを含む、請求項８に記載の方法。
【請求項１０】
アクションを開始する前記ステップが、前記ビジネス・プロセスの前記実行を変更するために管理ディレクティブを呼び出すことを含む、請求項８に記載の方法。
【請求項１１】
ビジネス・プロセスを管理するためのプログラムであって、該プログラムが、
複数のエンティティの間の相互作用を可能にするアプリケーションの統合された組を含むビジネス・プロセスを実行するステップと、
前記エンティティの間の１つまたは複数のビジネス・コミットメントを記述したビジネス・コミットメント指定を使用して前記ビジネス・プロセスの前記実行を管理するステップであって、前記ビジネス・コミットメントが、ＫＰＩ（主要業績評価指標）を使用して定義され、ＫＰＩが、プローブ・ポイントを使用して定義される、ステップを
コンピュータに実行させるプログラム。
【請求項１２】
前記ビジネス・コミットメント指定が、ＸＭＬ（ｅＸｔｅｎｓｉｂｌｅ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）構文を使用して記述される、請求項１１に記載のプログラム。
【請求項１３】
前記ビジネス・プロセスに関連するプローブ・ポイントを監視するステップと、
ＫＰＩに関連するプローブ・ポイントがアクティブ化された時に前記ＫＰＩの値を判定するステップと、
前記ビジネス・コミットに違反しているかどうかを判定するために、前記ＫＰＩの前記判定された値に基づいて前記ＫＰＩに関連するビジネス・コミットメントを評価するステップと
を含む、請求項１１に記載のプログラム。
【請求項１４】
前記ＫＰＩの値を判定するステップが、少なくとも１つの他のＫＰＩの値に基づいて前記ＫＰＩの前記値を判定するステップを含む、請求項１３に記載のプログラム。
【請求項１５】
前記ＫＰＩの値を判定するステップが、前記ＫＰＩの前記値を判定するために関数を呼び出すステップを含む、請求項１３に記載のプログラム。
【請求項１６】
前記ＫＰＩの値を判定するステップが、プローブ・ポイントから抽出された値に基づいて前記ＫＰＩの前記値を判定するステップを含む、請求項１３に記載のプログラム。
【請求項１７】
前記ビジネス・コミットメントを評価するステップが、前記ＫＰＩの前記判定された値を使用して、前記ビジネス・コミットメントによって指定された条件を評価するステップを含む、請求項１３に記載のプログラム。
【請求項１８】
前記ビジネス・コミットメントに違反していると判定された場合にアクションを開始するステップをさらに含む、請求項１３に記載のプログラム。
【請求項１９】
前記アクションを開始するステップが、前記ビジネス・コミットメントに関連するエンティティに前記違反の通知を提供するステップを含む、請求項１８に記載のプログラム。
【請求項２０】
前記アクションを開始するステップが、前記ビジネス・プロセスの前記実行を変更するために管理ディレクティブを呼び出すステップを含む、請求項１８に記載のプログラム。
【請求項２１】
ｂｕｓｉｎｅｓｓ  ｐｒｏｃｅｓｓ  ｃｏｍｍｉｔｍｅｎｔ  ｌａｎｇｕａｇｅ（ＢＰＣＬ）コンフィギュレータを有するように適合された少なくとも１つのホスト・コンピュータを提供するステップと、
管理ディレクティブを実装するためにアクチュエータを構成するように前記ＢＰＣＬコンフィギュレータを動作させるステップと、
論理条件を評価するために条件エバリュエータを構成するように前記ＢＰＣＬコンフィギュレータを動作させるステップと、
ＫＰＩ（主要業績評価指標）値を計算するためにＫＰＩカリキュレータを構成するように前記ＢＰＣＬコンフィギュレータを動作させるステップであって、前記少なくとも１つのホスト・コンピュータが、ビジネス・ディレクティブに基づいてＳＬＡ（サービス・レベル・アグリーメント）を制御するためにビジネス・プロセスのプローブ・ポイントを判定する、ステップと、
を含む、前記プローブ・ポイントを介してビジネス・レベルＳＬＡを監視し、制御する方法。
【請求項２２】
ＳＬＡ違反の通知を提供するためにアクチュエータを構成するように前記ＢＰＣＬコンフィギュレータを動作させるステップをさらに含む、請求項２１に記載の方法。
【請求項２３】
前記ＳＬＡが、複数のエンティティについてグローバルにモデル化されたビジネス・コミットメントに基づく、請求項２１に記載の方法。
【請求項２４】
ＢＰＣＬが、ＸＭＬ構文を使用して記述される、請求項２１に記載の方法。
【請求項２５】
動的ビジネス・プロセスに関連する複数のエンティティの間のビジネス関係を記述した文書を生成するビルド時コンポーネントと、
前記動的ビジネス・プロセスのビジネス・レベルＳＬＡ（サービス・レベル・アグリーメント）管理を提供するために前記文書の指定を処理する実行時コンポーネントと
を含む、ビジネス・プロセス・マネージメントを提供するシステム。
【請求項２６】
前記ビルド時コンポーネントが、プローブ・ポイント、ＫＰＩ（主要業績評価指標）、およびビジネス・コミットメントの間の関係を指定するＢＰＣＬ（ｂｕｓｉｎｅｓｓ  ｐｒｏｃｅｓｓ  ｃｏｍｍｉｔｍｅｎｔ  Ｌａｎｇｕａｇｅ）文書を作成するツールを含み、前記実行時コンポーネントが、ＢＰＣＬ文書の指定を使用してビジネス・レベルＳＬＡを監視し、制御するコンポーネントを含む、請求項２５に記載のシステム。
【請求項２７】
前記ツールが、ＢＰＣＬ文書のプローブ・ポイント、ＫＰＩ、およびビジネス・コミットメントの間の階層関係を表示するＥｃｌｉｐｓｅベースのビジュアル開発ツールを含む、請求項２６記載のシステム。
【請求項２８】
前記実行時コンポーネントが、ＢＰＣＬ文書に対する動的変更および前記変更の前記実行時コンポーネントへの自動伝搬を可能にするＢＰＣＬコンフィギュレータを含む、請求項２６に記載のシステム。
【請求項２９】
前記実行時コンポーネントが、ＫＰＩ値を判定するＫＰＩカリキュレータを含む、請求項２８に記載のシステム。
【請求項３０】
前記実行時コンポーネントが、前記ＫＰＩ値を使用してビジネス・コミットメントの論理条件を評価する条件エバリュエータを含む、請求項２９に記載のシステム。
【請求項３１】
前記実行時コンポーネントが、前記条件エバリュエータを呼び出すトリガを判定する評価トリガを含み、前記トリガが、アラームベースまたはイベントベースであり、アラームベース・トリガの指示が、ＢＰＣＬ文書を読み取る時に前記ＢＰＣＬコンフィギュレータによって提供される、請求項３０に記載のシステム。
【請求項３２】
前記実行時コンポーネントが、ジェネリック通知を送るか、前記ビジネス・プロセスの前記実行を変更できる管理ディレクティブを呼び出すアクチュエータを含む、請求項２９に記載のシステム。
【請求項３３】
プローブ・ポイント、ＫＰＩ、およびビジネス・コミットメントの間の依存性を自動的に検出し、使用不能なプローブ・ポイントによって影響されるＫＰＩおよびビジネス・コミットメントを判定する手段をさらに含む、請求項２６に記載のシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ビジネス・レベルＳＬＡ（サービス・レベル・アグリーメント）を監視し、制御するシステムおよび方法に関し、具体的には、プローブ・ポイント、ＫＰＩ（主要業績評価指標）、およびビジネス・コミットメントを使用してビジネス・レベルＳＬＡを監視し、制御するシステムおよび方法に関する。本発明は、さらに、ビジネス・コミットメントを記述するのに使用される、ＢＰＣＬ（Ｂｕｓｉｎｅｓｓ  Ｐｒｏｃｅｓｓ  Ｃｏｍｍｉｔｍｅｎｔ  Ｌａｎｇｕａｇｅ）と称するＸＭＬ（ｅｘｔｅｎｓｉｂｌｅ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）ベースの仕様に関する。ＢＰＣＬ仕様は、ビジネス・プロセス・マネージメント（ＢＰＭ）システムによって、ビジネス・コミットメントに基づいてビジネス・プロセスを構成し、監視し、制御するのに使用される。ビジネス・コミットメントおよびＢＰＣＬは、動的ｅ−ビジネス・ソリューションに関するモデルベース管理への道を提供する。
【背景技術】
【０００２】
ネットワーク・コンピューティング・テクノロジおよびネットワーク・コンピューティング・アプリケーションの革新に起因して、多くの会社、商店、および組織が、現在、ＷＷＷ（ワールド・ワイド・ウェブ）およびインターネットなどのグローバル通信ネットワークでｅ−ビジネス・サービスを提供している。そのようなサービスは、通常、あるエンティティのウェブ・サイトを介して提供される。しかし、ほとんどの組織が、それ自体のウェブ・サイトを保守するか、そのようなウェブ・サイトをコスト効率のよい形で保守するのに必要なＩＴ専門家を有しない。さらに、動的ｅ−ビジネス・テクノロジのすばやい進歩に伴って、組織は、もはや、分離されたｅ−ビジネス・アプリケーションに満足せず、アプリケーション統合という重荷を有する。会社の顧客は、彼らの必要に合わせてカスタマイズされ、使用の準備ができているインダストリ・ソリューションを好む。その結果、多くの組織が、セキュア・ウェブ・サイトの管理を含むそのＩＴサービスを、ＩＢＭ  Ｇｌｏｂａｌ  Ｓｅｒｖｉｃｅｓなど、間に合って低コストでドメイン固有ｅ−ビジネス・ソリューションを引き渡すと期待されるＩＴサービス・プロバイダにアウトソーシングしている。
【０００３】
さまざまなシステムおよび方法が、ＳＬＭ（サービス・レベル管理）を提供するために開発または提案されてきた。ＳＬＭは、適切なレベルのサービスがサービス・リクエスタに送達されることを保証するのに使用される、整理され先を見越した方法および手順である。ＳＬＭの基礎は、サービス・レベル・アグリーメント（ＳＬＡ）である。ＳＬＡは、サービス・リクエスタとサービス・プロバイダの間の、サービスの最低限の許容可能なレベルを指定する契約である。そのようなＳＬＡに、たとえば、サービス品質（ＱｏＳ）およびセキュリティの要件を含めることができる。ＳＬＭシステムは、サービス・プロバイダとサービス・リクエスタの間の２当事者関係を管理する重要なツールである。
【０００４】
従来の契約管理ツールまたはサービス・レベル管理ツールの大多数は、外部当事者（たとえば、取引先）に個別に焦点を合わせ、したがって、グローバル・ビューが欠けている。たとえば、Ｉｎｔｅｒｎａｔｉｏｎａｌ  Ｂｕｓｉｎｅｓｓ  Ｍａｃｈｉｎｅｓ  Ｃｏｒｐｏｒａｔｉｏｎ社の提案されたＷＳＬＡ（Ｗｅｂ  Ｓｅｒｖｉｃｅ  Ｌｅｖｅｌ  Ａｇｒｅｅｍｅｎｔ）仕様およびｔｐａＭＬ（Ｔｒａｄｉｎｇ  Ｐａｒｔｎｅｒ  Ａｇｒｅｅｍｅｎｔ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）仕様は、外部関係を管理するという問題に対処している。しかし、そのような仕様の焦点は、１対１の個々の関係にあり、たとえば当事者間の相互依存性を考慮に入れた１対多関係を管理するソリューションを提供しない。
【０００５】
さらに、ビジネス・プロセス・マネージメントのさまざまな態様に対処するために提案された他の標準規格または仕様がある。これらを、下で短く説明する。
【０００６】
ｅｂＸＭＬ（ｅｌｅｃｔｒｏｎｉｃ  ｂｕｓｉｎｅｓｓ  ＸＭＬ  ｉｎｉｔｉａｔｉｖｅ）のＢＰＳＳ（Ｂｕｓｉｎｅｓｓ  Ｐｒｏｃｅｓｓ  Ｓｐｅｃｉｆｉｃａｔｉｏｎ  Ｓｃｈｅｍａ）は、ビジネス・トランザクションからなるビジネス・コラボレーションの実行をサポートするためにビジネス・システムをそれによって構成できる標準フレームワークを提供する。ＢＰＳＳは、ビジネス・トランザクションの仕様と、ビジネス・コラボレーションへのビジネス・トランザクションのコレオグラフィ（ｃｈｏｒｅｏｇｒａｐｈｙ）をサポートする。各ビジネス・トランザクションを、ｅｂＸＭＬからの多数の使用可能な標準パターンの１つを使用して実施することができる。これらのパターンは、必要な電子商取引を達成するためのパートナの間のビジネス文書およびビジネス・シグナルの実際の交換を決定する。
【０００７】
Ｂｕｓｉｎｅｓｓ  Ｐｒｏｃｅｓｓ  Ｍａｎａｇｅｍｅｎｔ  ＩｎｉｔｉａｔｉｖｅのＢＰＭＬ（Ｂｕｓｉｎｅｓｓ  Ｐｒｏｃｅｓｓ  Ｍｏｄｅｌｉｎｇ  Ｌａｎｇｕａｇｅ）は、ビジネス・プロセスをモデル化するためのメタ言語である。ＢＰＭＬは、トランザクショナル有限状態機械という概念に基づく、コラボレーション的トランザクション的ビジネス・プロセスの抽象実行モデルを提供する。ＢＰＭＬでは、ｅ−ビジネス・プロセスを、共通のパブリック・インターフェースおよびプロセス参加者と同数のプライベート実装からなるものと考える。これによって、ＢＰＭＬプロセスのパブリック・インターフェースを、プライベート実装と独立のｅｂＸＭＬビジネス・プロセスまたはＲｏｓｅｔｔａＮｅｔ  Ｐａｒｔｎｅｒ  Ｉｎｔｅｒｆａｃｅ  Ｐｒｏｃｅｓｓとして記述できるようになる。
【０００８】
ＷｆＭＣ（Ｗｏｒｋｆｌｏｗ  Ｍａｎａｇｅｍｅｎｔ  Ｃｏａｌｉｔｉｏｎ）のＸＰＤＬ（ＸＭＬ−ｂａｓｅｄ  Ｐｒｏｃｅｓｓ  Ｄｅｆｉｎｉｔｉｏｎ  Ｌａｎｇｕａｇｅ）は、ビジネス・プロセスを定義するためのＸＭＬベース言語である。ＸＰＤＬの主要な要素の１つが、さまざまなツールによって使用される情報を処理するための拡張性である。というのは、ＸＰＤＬが、すべてのツールのすべての追加の情報要件をサポートすることができない可能性があるからである。ＸＰＤＬの最も重要な要素の１つが、共通表現での使用のためのベンダ固有属性をサポートする包括的構成である。
【０００９】
ＢＰＥＬ４ＷＳは、会社が、複数のウェブ・サービスを含むビジネス・プロセスを記述し、内部およびパートナ間のメッセージ交換を標準化することを可能にする。ＢＰＥＬ４ＷＳでは、ビジネス・プロセスを２つの形で記述することができる。実行可能ビジネス・プロセスは、ビジネス相互作用への参加者の実際の挙動をモデル化する。対照的に、ビジネス・プロトコルは、その内部挙動を明らかにせずに、プロトコルに参加する当事者のそれぞれの相互に可視のメッセージ交換挙動を指定するプロセス記述を使用する。ビジネス・プロトコルのプロセス記述を、抽象プロセスと呼ぶ。ＢＰＥＬ４ＷＳは、ビジネス・プロセスおよびビジネス相互作用プロトコルの形式仕様の言語を提供する。それを行うことによって、ＢＰＥＬ４ＷＳは、ウェブ・サービス相互作用モデルを拡張し、ビジネス・トランザクションをサポートすることを可能にする。ＢＰＥＬ４ＷＳは、会社内および産業間空間の両方での自動化プロセス統合の拡張を容易にするインターオペラブル統合モデルを定義する。
【００１０】
ＢＯｐＳ（Ｂｕｓｉｎｅｓｓ  Ｏｐｅｒａｔｉｏｎａｌ  Ｓｐｅｃｉｆｉｃａｔｉｏｎ）は、ビジネスの動作ビューを指定する表記を定義する。この表記は、Ｂｕｓｉｎｅｓｓ  Ｏｐｅｒａｔｉｏｎａｌ  Ｓｐｅｃｉｆｉｃａｔｉｏｎ（ＢＯｐＳ）と呼ばれ、ＸＭＬスキーマ定義として表される。ビジネス・システム・モデル化の階層化ビューが使用される。このビューでは、ビジネス・システムが、３つの層すなわち、戦略、計画、および実行からなる。ＢＯｐＳは、ビジネス・システムの計画層のモデル化に対処する。それを行うことによって、ＢＯｐＳは、戦略と実行の間のギャップに橋を渡し、実行モデルの自動化された生成を可能にし、戦略に対する実行の追跡を容易にする。
【００１１】
前述の諸言語は、主に、ビジネス・プロセスの定義態様および実行態様に対処するものである。しかし、これらの仕様は、ビジネス・レベルＳＬＡおよび当事者間の関係を監視し、制御する機構を提供しない。
【発明の開示】
【発明が解決しようとする課題】
【００１２】
本発明の目的は、プローブ・ポイント、ＫＰＩ（主要業績評価指標）、およびビジネス・コミットメントを介してビジネス・レベルＳＬＡ（サービス・レベル・アグリーメント）を監視し、制御するシステムおよび方法を提供することである。
【課題を解決するための手段】
【００１３】
本発明は、ｅ−ビジネス・プロセス・マネージメントを提供するシステムおよび方法に関する。ｅ−ビジネス・プロセス・マネージメントを提供する本発明によるシステムおよび方法は、プローブ・ポイント、ＫＰＩ（主要業績評価指標）、およびビジネス・コミットメントを使用してビジネス・レベルＳＬＡを監視し、制御する機構を使用することが好ましい。本発明の実施形態によるＢＰＣＬ（Ｂｕｓｉｎｅｓｓ  Ｐｒｏｃｅｓｓ  Ｃｏｍｍｉｔｍｅｎｔ  Ｌａｎｇｕａｇｅ）は、外部当事者および内部当事者の間の関係を宣言的にモデル化し、ビジネス・コミットメントを指定するのに使用される。ＢＰＣＬは、ビジネス・コミットメントに基づいてビジネス・プロセスを構成し、監視し、制御するのに、ビジネス・プロセス・マネージメント（ＢＰＭ）システムによって使用することができる。
【００１４】
本発明の一実施形態では、ビジネス・プロセス・マネージメントを提供するモデルであって、ビジネス・プロセスに関連する外部当事者および内部当事者を含む、動的ビジネス・プロセスに関連する複数のエンティティの間のビジネス関係をグローバルに記述するビジネス・コミットメント指定を使用して記述されたモデルが説明される。このモデルは、エンティティの間の指定されたビジネス・コミットメントに基づいてビジネス・レベルＳＬＡ（サービス・レベル・アグリーメント）を監視し、制御するのに使用される。たとえば、ビジネス・コミットメントは、ＫＰＩ（主要業績評価指標）を使用して定義され、ＫＰＩは、プローブ・ポイントを使用して定義される。ビジネス・コミットメントは、ＸＭＬ（ｅＸｔｅｎｓｉｂｌｅ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）構文を使用して記述されることが好ましい。
【００１５】
本発明のもう１つの実施形態では、ビジネス・プロセス・マネージメントを提供するシステムに、動的ビジネス・プロセスに関連する複数のエンティティの間のビジネス関係を記述した文書を生成するビルド時コンポーネントと、動的ビジネス・プロセスのビジネス・レベルＳＬＡ管理を提供するために文書の指定を処理する実行時コンポーネントとが含まれる。ビルド時コンポーネントが、プローブ・ポイント、ＫＰＩ、およびビジネス・コミットメントの間の関係を指定するＢＰＣＬ文書を作成する開発ツールを含み、実行時コンポーネントが、ＢＰＣＬ文書の指定を使用してビジネス・レベルＳＬＡを監視し、制御するコンポーネントを含むことが好ましい。一実施形態で、開発ツールが、ＢＰＣＬ文書のプローブ・ポイント、ＫＰＩ、およびビジネス・コミットメントの間の階層関係を表示するＥｃｌｉｐｓｅベースのビジュアル開発ツールを含む。
【００１６】
もう１つの実施形態で、実行時コンポーネントは、ＢＰＣＬ文書に対して行われる動的変更および変更の実行時コンポーネントへの自動伝搬を可能にするＢＰＣＬコンフィギュレータ・モジュールを含む。実行時コンポーネントが、ジェネリック通知を送るか、ビジネス・プロセスの実行を変更できる管理ディレクティブを呼び出すアクチュエータと、ＫＰＩ値を判定するＫＰＩカリキュレータと、ＫＰＩ値を使用してビジネス・コミットメントの論理条件を評価する条件エバリュエータと、条件エバリュエータを呼び出すトリガを判定する評価トリガとを含む。トリガは、アラームベースまたはイベントベースとすることができ、アラームベース・トリガの指示が、ＢＰＣＬ文書を読み取る時にＢＰＣＬコンフィギュレータによって提供される。
【００１７】
本発明のもう１つの実施形態では、プローブ・ポイント、ＫＰＩ、およびビジネス・コミットメントの間の依存性を自動的に検出し、使用不能なプローブ・ポイントによって影響されるＫＰＩおよびビジネス・コミットメントを判定する機構が提供される。
【００１８】
本発明のもう１つの実施形態では、ビジネス・プロセスを管理する方法に、複数のエンティティの間の相互作用を可能にするアプリケーションの統合された組を含むビジネス・プロセスを実行するステップと、前記エンティティの間の１つまたは複数のビジネス・コミットメントを記述したビジネス・コミットメント指定を使用してビジネス・プロセスの実行を管理するステップであって、ビジネス・コミットメントが、ＫＰＩを使用して定義され、ＫＰＩが、プローブ・ポイントを使用して定義される、ステップとが含まれる。
【００１９】
もう１つの実施形態では、ビジネス・プロセスの実行を管理するステップが、ビジネス・プロセスに関連するプローブ・ポイントを監視するステップと、ＫＰＩに関連するプローブ・ポイントがアクティブ化された時にＫＰＩの値を判定するステップと、ビジネス・コミットに違反しているかどうかを判定するために、ＫＰＩの判定された値に基づいてＫＰＩに関連するビジネス・コミットメントを評価するステップとを含む。ＫＰＩの値は、たとえば、少なくとも１つの他のＫＰＩの値に基づいて、ＫＰＩの値を判定するために関数を呼び出すことによって、またはプローブ・ポイントから抽出された値に基づいて判定することができる。ビジネス・コミットメントを評価する処理は、ＫＰＩ値を使用して、ビジネス・コミットメントによって指定された条件を評価することを含む。評価結果に基づいてビジネス・コミットメントに違反していると判定された場合に、アクションを開始することができる。アクションを開始するステップは、ビジネス・コミットメントに関連するエンティティに違反の通知を提供することまたはビジネス・プロセスの実行を変更するために管理ディレクティブを呼び出すことを含む。
【００２０】
本発明の上記および他の実施形態、態様、特徴、および利益は、添付図面と共に読まれるべき好ましい実施形態の次の詳細な説明で説明されるか、これから明白になる。
【発明を実施するための最良の形態】
【００２１】
本発明は、ｅ−ビジネス・プロセス・マネージメントを提供するシステムおよび方法に関する。ｅ−ビジネス・プロセス・マネージメントを提供する本発明によるシステムおよび方法は、プローブ・ポイント、ＫＰＩ（主要業績評価指標）、およびビジネス・コミットメントを使用してビジネス・レベルＳＬＡを監視し、制御する機構を使用することが好ましい。本発明の実施形態によるＢＰＣＬ（Ｂｕｓｉｎｅｓｓ  Ｐｒｏｃｅｓｓ  Ｃｏｍｍｉｔｍｅｎｔ  Ｌａｎｇｕａｇｅ）は、外部当事者および内部当事者の間の関係を宣言的にモデル化し、ビジネス・コミットメントを指定するのに使用される。ＢＰＣＬは、ビジネス・コミットメントに基づいてビジネス・プロセスを構成し、監視し、制御するのに、ビジネス・プロセス・マネージメント（ＢＰＭ）システムによって使用することができる。
【００２２】
好ましい実施形態の次の詳細な説明は、参照を簡単にするために次のセクションに分割されている。
【００２３】
セクションＩでは、本発明によるビジネス・プロセス・マネージメントのシステムおよび方法の一般的な概要を説明する。
【００２４】
セクションＩＩでは、本発明によるビジネス・コミットメントの概念を説明する。
【００２５】
セクションＩＩＩでは、本発明の実施形態による、ビジネス・コミットメントを指定するための概念レベルに対するＢＰＣＬならびに、ＢＰＣＬの好ましい構造およびコンポーネントと、ＢＰＣＬの内容モデルを定義する例示的なＸＭＬスキーマ定義（ＸＳＤ）を説明する。
【００２６】
セクションＩＶでは、ビジネス・プロセス・マネージメント・プラットフォームを実装するために使用することができる、プローブ・ポイント、ＫＰＩ（主要業績評価指標）、およびビジネス・コミットメントを使用してビジネス・レベルＳＬＡを監視し、制御する本発明のさまざまな実施形態によるシステムおよび方法を説明する。
【００２７】
セクションＶでは、本発明によるビジネス・コミットメントを使用して実装できる複数の例示的なビジネス・プロセスを説明する。
【００２８】
セクションＩ−概要
一般に、本発明は、「動的ｅ−ビジネス」に関連するさまざまなｅ−サービスを管理するために実装できるビジネス・プロセス・マネージメントのシステムおよび方法を対象とする。「動的ｅ−ビジネス」は、たとえばカスタマ・リレーションシップ・マネージメント（ＣＲＭ）およびサプライ・チェーン・マネージメント（ＳＣＭ）などのクロスエンタープライズ・ビジネス・プロセスを構成するアプリケーションおよび手順の統合された組を指す。ビジネス・エンティティは、複数のｅ−サービスを使用してその事業を運営することができるので、そのようなｅ−サービスを均一な形で管理することが好ましい。本発明によるビジネス・プロセス・マネージメントのシステムおよび方法は、複数のアプリケーションの実行を効果的に調整することができ、そのようなアプリケーションから生成された監査証跡および例外が、ビジネス・レベル・ビューから管理されることが好ましい。
【００２９】
本発明の好ましい実施形態では、ビジネス・レベルでのビジネス・プロセス・マネージメントに、サービス・プロバイダ、サービス・コンシューマ、および内部部署などのビジネス・エンティティの間のビジネス関係の集中管理が含まれ、ビジネス・コミットメントが、ｅ−サービスでのビジネス関係の本質を取り込むために定義される。下でさらに詳細に説明するように、ビジネス・コミットメントとは、サービス契約のサービス・レベルおよび調達契約の諸条件などのビジネス問題に関係するコミットメントである。ビジネス・コミットメントは、本明細書でＢＰＣＬ（Ｂｕｓｉｎｅｓｓ  Ｐｒｏｃｅｓｓ  Ｃｏｍｍｉｔｍｅｎｔ  Ｌａｎｇｕａｇｅ）と呼ばれるＸＭＬベース言語を使用して指定されることが好ましく、ｅ−サービスの実行状況を監視し、制御するのに使用される。
【００３０】
有利なことに、本発明の実施形態によるビジネス・コミットメントおよびＢＰＣＬは、動的ｅ−ビジネス・ソリューションのモデルベース管理の機構を提供する。具体的にいうと、ビジネス・コミットメントおよびＢＰＣＬは、さまざまな取引先の間のビジネス関係と、内部当事者間の相互作用を効果的にモデル化し、複数の当事者との間のビジネス・コミットメントを集中管理する機構を提供する。言い換えると、ビジネス・コミットメントおよびＢＰＣＬは、さまざまなビジネス関係のグローバル／統合されたビューを管理できるようにし、したがって、ビジネス・リレーションシップ・マネージメントの最適ソリューションにつながる。
【００３１】
セクションＩＩ−ビジネス・コミットメント
このセクションでは、本発明によるビジネス・コミットメントの概念を説明する。一般に、コミットメントは、将来にある限度内であることを行う（または行わない）ことの合意または誓約である。本発明によれば、ビジネス・コミットメントは、ビジネス問題に関するコミットメントと広義に定義される。ビジネス・コミットメントは、ビジネス・パートナ、サービス・リクエスタ、およびサービス・プロバイダなどの取引先または外部パートナの間（外部コミットメント）またはビジネス・エンタープライズ内の内部当事者の間（内部コミットメント）とすることができる。ビジネス・コミットメントは、２つのビジネス・パートナの間のビジネス契約、サービス・プロバイダとサービス・リクエスタの間のサービス・レベル・アグリーメント（ＳＬＡ）、または部署によって指定される内部ＳＬＡあるいはこれらの組合せなど、多数の形で存在することができる（２つの主要な当事者だけがかかわる従来のＳＬＡ手法と対照的である）。
【００３２】
本発明によるビジネス・コミットメントは、ビジネス・プロセス・マネージメントの文脈で見られることが好ましい。ビジネス・プロセスは、ビジネス目的またはポリシ目標を集合的に実現する直列および並列のアクティビティの完全に調整されたスレッドである。その結果、ビジネス・プロセスは、内部顧客および外部顧客の両方に価値を引き渡すことができる。ビジネス・プロセス・マネージメント（ＢＰＭ）は、エンドツーエンド・プロセスを発見し、設計し、シミュレートし、展開し、実行し、最適化し、分析する機能である。
【００３３】
ビジネス・コミットメントの組は、ビジネス・プロセス・レベルでのＢＰＭ（ビジネス・プロセス・マネージメント）プラットフォームの管理合意を確立し、ここで、明示的な「アクション」が、ビジネス・コミットメントに関連付けられる。実行時に、合意／保証（ビジネス・コミットメントによって定義される）に違反した場合に、一方の当事者が、関連する当事者に通知するか違反を「直す」のどちらかのために、あるアクションを実行することを約束する。ＢＰＭは、本発明に従ってＢＰＣＬを使用して定義されたビジネス・コミットメントに基づいてビジネス・プロセスを構成し、制御し、監視する。
【００３４】
ビジネス・コミットメント、契約、ＳＬＡの概念は、関係するが、異なる焦点を有する。契約またはＳＬＡには、すべての当事者が相互に合意しなければならない諸条件が含まれる。コミットメントは、通常、方向性があり、これは、コミットメントが１つのイニシエータと１つのレシーバを有することを意味する。たとえば、出荷ＳＬＡでは、運送会社が、Ｘ日以内に商品を出荷することを（サービス・リクエスタに）約束する。その一方で、サービス・リクエスタは、Ｙ日以内に勘定を払うことを（運送会社に）約束する。実行中に、さまざまな理由からコミットメントに違反する場合がある（予測不能な事象または一方の当事者が故意に違反する）。したがって、両方の当事者が、相互コミットメントが満足されない時にある「アクション」を行うことに合意することが一般的である。したがって、本発明によれば、「アクション」が主要な焦点である。合意（ビジネス・コミットメントによって実施される）が監視され、違反が検出される。下で説明するように、本発明によるビジネス・コミットメントの監視および制御は、当事者を監視する、ビジネス・データ懸念に対する論理式（条件）に基づく。
【００３５】
セクションＩＩＩ−Ｂｕｓｉｎｅｓｓ  Ｐｒｏｃｅｓｓ  Ｃｏｍｍｉｔｍｅｎｔ  Ｌａｎｇｕａｇｅ（ＢＰＣＬ）
次のセクションで、本発明の実施形態による、ビジネス・コミットメントを指定するための概念レベルに対するＢＰＣＬ、ＢＰＣＬの好ましい構造およびコンポーネント、ならびにＢＰＣＬの内容モデルを定義する例示的なＸＭＬスキーマ定義（ＸＳＤ）を説明する。
【００３６】
ビジネス・コミットメントは、ビジネス・プロセス所有者と、ビジネス・プロセスが実行されるＢＰＭプラットフォームの所有者によって共同で定義される。本発明によるＢＰＭシステムは、個々の契約の実行だけではなく、これらの契約の間の関係も監視する。複数の契約／ＳＬＡの間の関係を、本明細書では「インターコントラクト／ＳＬＡクローズ（ｉｎｔｅｒ−ｃｏｎｔｒａｃｔ／ＳＬＡ  ｃｌａｕｓｅ）と呼ぶ。インターコントラクト／ＳＬＡクローズの管理は、従来の単一のビジネス・プロセス・マネージメント・システムの範囲を超えるものである。
【００３７】
図１を参照すると、図に、ＢＰＣＬを作成する方法が示されている。当事者１（Ｐ１）が、主当事者であり、複数の当事者（Ｐ２、Ｐ３、およびＰ４）と交渉すると仮定する。Ｐ１とＰ４の間の交渉の結果が、ＳＬＡ１（１）である（Ｐ１およびＰ４がサービス契約を取り決めたと仮定する）。Ｐ１とＰ３の間の交渉の結果が契約２（２）であり、Ｐ１とＰ２の間の交渉の結果が契約３（３）である（そのような交渉が、一般的なビジネス契約に基づくと仮定する）。Ｐ１は、さまざまな内部部署の義務を記述した内部ＳＬＡ／コミットメント（４）を有することができる。ＳＬＡ１（１）、契約２（２）、および契約３（３）は、別々の交渉の結果なので、そのような結果は、インターコントラクト／ＳＬＡ分析（５）を介して処理されて、可能なインターコントラクト／ＳＬＡクローズが生成される。その後、図１に示されているように、結果のインターコントラクト／ＳＬＡクローズが、内部ＳＬＡ／コミットメント（４）、ＳＬＡ１、契約２、および契約３（これらは、すべてがＰ１の展望からのものである）と組み合わされて、ＢＰＣＬ（６）が形成される。図１に記載の方法を、手動または自動とすることができることを理解されたい。
【００３８】
本発明の好ましい実施形態によれば、ＢＰＣＬは、ビジネス・コミットメントを指定するためにＸＭＬ構文に基づくことが好ましい。さらに、ＢＰＣＬは、ＥＣＡ（Ｅｖｅｎｔ−Ｃｏｎｄｉｔｉｏｎ−Ａｃｔｉｏｎ）パラダイムに基づくことが好ましく、ここで、「イベント」が発生したならば、「条件」が評価され、「条件」が真と評価された場合に、１つまたは複数の「アクション」が行われる。ＢＰＣＬは、さまざまな形でＥＣＡモデルを拡張したものである。一般に、ＥＣＡモデルの「条件」部分に、ＫＰＩ（主要業績評価指標）およびコミットメント変数に基づく論理式が含まれる。コミットメント変数に、一般に、ビジネス・アナリストが動的にセットすることができる閾値が含まれる。さらに、ＢＰＣＬに、条件マッチング変数およびコミットメント変数の値を提供する「コミットメント・プロファイル」が含まれる。「コミットメント・プロファイル」は、ビジネス・コミットメントの論理部分をビジネス・コミットメントのデータ部分から分離する形を提供する。さらに、ＥＣＡモデルの「アクション」部分は、「アクション・セット」に拡張され、関連するアクションの集合を順次または並列のいずれかで実行することができる。
【００３９】
具体的にいうと、本発明の実施形態によれば、ＢＰＣＬを指定し、ＢＰＣＬを介してビジネス・コミットメントを監視するシステムおよび方法は、ＫＰＩ（主要業績評価指標）およびプローブ・ポイントによってサポートされる。通常のｅ−サービスの実行中に、サービス・プロバイダとサービス・コンシューマの間で交換される多数のデータがある。ＫＰＩは、ビジネス・コミットメント監視をｅ−サービス実装の低水準詳細から分離する機構を提供する。ＫＰＩは、ｅ−サービスの状況を明示するのに使用できるｅ−サービスの指定されたパラメータである。言い換えると、ＫＰＩは、ビジネス・プロセスのパフォーマンス（または状況）の表示を提供するビジネス・プロセス・データの１つである。本発明によれば、ＫＰＩは、ＢＰＣＬ準拠システムによって監視され、制御される。ビジネス・プロセスによって生成されるすべてのデータがＫＰＩと見なされるわけではないことを理解されたい。ＫＰＩの選択および定義は、ビジネス（またはサービス）を詳細に理解しているビジネス・アナリストによって決定されることが好ましい。
【００４０】
たとえば、ＫＰＩは、契約から直接に与えることができる。たとえば、運送会社とサービス・リクエスタの間の出荷契約で、出荷スケジュールおよび支払いスケジュールをＫＰＩとすることができる。さらに、ＫＰＩが、下位メトリックスに基づく追加計算を要求することができる。たとえば、ＩＴサービスで、システム可用性を、ある時間期間にわたるシステムの継続的プロービングに基づいて計算することができる。さらに、ＫＰＩを、ビジネス・コンテキストからの情報収集から導出することができ、このビジネス・コンテキストは、ビジネス・プロセスの所有者によって意図的に外部化されたビジネス環境の一部とすることができる。
【００４１】
ＫＰＩという概念は、エンタープライズ・プロセスおよびビジネス・プロセスのパフォーマンスを測定するのに使用できるメトリックを指定するために、バランス・スコアカード、ビジネス・インテリジェンス、およびサプライ・チェーン・マネージメントなどの領域で定義された。バランス・スコアカードの例では、ＫＰＩが、ビジネス・メトリック（すなわち、パフォーマンス測定）の４つの展望すなわち、財政と、顧客満足度と、内部プロセスと、改革および改善に付属する。ＫＰＩは、好ましくは測定可能であり、そうでない場合、ＫＰＩを、監視し、計算し、制御することができない。サプライ・チェーン・ドメインでの測定可能なメトリック、したがってＫＰＩの例に、在庫レベルと、ビジネス・プロセスのサイクル・タイムが含まれる。本発明によれば、ビジネス・プロセスから抽出されるＫＰＩを判定したならば、そのＫＰＩを使用して、ビジネス・エンティティの間の意味のある関係を構成することができる。仮定のビジネス・コミットメントは、たとえば、「ビジネス・プロセス１からのＫＰＩ１がビジネス・プロセス２からのＫＰＩ２より大きい場合に、管理者に通知する」とすることができる。
【００４２】
さらに、本発明によれば、「プローブ・ポイント」は、ビジネス・プロセス・モデル化／実行言語とＢＰＣＬの間のリンケージを提供する。プローブ・ポイントに、関連するプロセス・データをプロセス監視／制御システムに報告する論理ロケータ（具体的なビジネス・プロセスの内部）が含まれる。
【００４３】
次の宣言的フラグメントに、本発明の実施形態による例示的なＸＭＬベースＢＰＣＬ文書のコンポーネントおよび構造を定義する例示的なＸＭＬスキーマ定義（ＸＳＤ）を示す。
【００４４】
具体的にいうと、次のＸＳＤフラグメントに、本発明の実施形態によるＢＰＣＬ文書の要素の例示的な型定義を示す。
<!-- BPCLType定義 -->
<xsd:complexTypename="BPCLType">
<xsd:sequence>
<xsd:element name="Party"type="bpcl:PartyType"
minOccurs="0"maxOccurs="unbounded"/>
<xsd:element name="BusinessProcess"type="bpcl:BPType"
minOccurs="0"maxOccurs="unbounded"/>
<xsd:element name="KPI"type="bpcl:KPIType"
minOccurs="0"maxOccurs="unbounded"/>
<xsd:element name="BusinessEvent"type="bpcl:BEType"
minOccurs="0"maxOccurs="unbounded"/>
<xsd:element name="BC"type="bpcl:BCType"
minOccurs="0" maxOccurs="unbounded"/>
<xsd:elementname="CommitmentProfile"
type="bpcl:CommitmentProfileTypes"
minOccurs="0"maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
<xsd:elementname="BusinessSLA" type="bpcl: BPCLType/>
【００４５】
一般に、上の例示的なＸＳＤフラグメントに示されているように、型ＢＰＣＬＴｙｐｅの要素ＢｕｓｉｎｅｓｓＳＬＡが、ＢＰＣＬ定義のルート要素である。ＢｕｓｉｎｅｓｓＳＬＡには、Ｐａｒｔｙ、ＢｕｓｉｎｅｓｓＰｒｏｃｅｓｓ、ＫＰＩ、ＢｕｓｉｎｅｓｓＥｖｅｎｔ、およびＢＣという名前の要素が含まれる。規約として、ＢＰＣＬの要素および型は、名前空間ｂｐｃｌで定義される。
【００４６】
Ｐａｒｔｙ要素は、説明的情報を、ビジネス・プロセス・マネージメント（ＢＰＭ）システムのビジネス・プロセスに参加している当事者に関するＢＰＣＬ文書に含めることを可能にする。ＢｕｓｉｎｅｓｓＰｒｏｃｅｓｓ要素は、ＢＰＣＬ文書内のターゲットにされたビジネス・プロセスの抽象記述を可能にする。ＫＰＩ要素は、ビジネス・プロセスの状況を示すキー・パフォーマンス・インジケータまたはパラメータをＢＰＣＬ文書に含めることを可能にする。ＢｕｓｉｎｅｓｓＥｖｅｎｔ要素は、個々のビジネス・コミットメントの内部の論理式を評価するトリガリング・ポイントを提供するイベントをＢＰＣＬ文書に含めることを可能にする。ＢＣ要素（Ｂｕｓｉｎｅｓｓ  Ｃｏｍｍｉｔｍｅｎｔ）は、ＢＰＣＬのキー要素である。ＢＣ要素は、ＢＣＩｄｅｎｔｉｆｉｅｒ、ＴｒｉｇｇｅｒｉｎｇＥｖｅｎｔ、ＣｏｍｍｉｔｍｅｎｔＬｅｖｅｌ、Ｖａｌｉｄｉｔｙ、ＫＰＩに対する論理式、Ｉｎｉｔｉａｔｏｒ、Ｒｅｃｅｉｖｅｒ、Ａｃｔｉｏｎ、およびＡｌｔＡｃｔｉｏｎなどのさまざまな網法をＢＰＣＬ文書で指定することを可能にし、ここで、ＢＣＩｄｅｎｔｉｆｉｅｒは、コミットメントの識別であり、ＴｒｉｇｇｅｒｉｎｇＥｖｅｎｔは、どのイベントがコミットメントの評価をトリガするかを示す。要素Ａｃｔｉｏｎは、論理式が真と評価された時に行われるアクションを記述するのに使用され、ＡｌｔＡｃｔｉｏｎは、論理Ｅｘｐｒｅｓｓｉｏｎが偽と評価された時に行われる代替アクションを示す。
【００４７】
例示的なＢＰＣＬＴｙｐｅ  ＸＳＤ定義内の上で名前を示した要素のそれぞれに、要素を定義するのに使用される複合型の名前を参照（ポイント）するｔｙｐｅ属性が含まれる。たとえば、次の例示的なＸＳＤフラグメントは、複合型ＰａｒｔｙＴｙｐｅを定義し、これは、上のＢＰＣＬＴｙｐｅ定義のＰａｒｔｙ要素によってポイントされる。
<xsd:complexTypename="PartyType">
<xsd:sequence>
<xsd:element name="PartyIdentifier"
type="bpcl:PartyIdentifierType"
maxOccurs="unbounded"/>
<xsd:element name="Contact"
type="bpcl:ContactInformationType"/>
<xsd:element name="RolePlayer"type="xsd:string"
minOccurs="0"maxOccurs="unbounded"/>
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string"/>
</xsd:complexType>
【００４８】
リストに示されているように、複合型ＰａｒｔｙＴｙｐｅは、ＰａｒｔｙＩｄｅｎｔｉｆｉｅｒ（識別子情報）、Ｃｏｎｔａｃｔ（連絡先情報）、およびＲｏｌｅＰｌａｙｅｒの０個以上の出現という宣言された順序での子要素のシーケンスを有するものとして定義されている。さらに、任意選択のｎａｍｅ属性が、文字ストリング型を有するものとして定義されている。ビジネス・コミットメント・ハブを所有する１つの主当事者がある。ビジネス・コミットメント・ハブのアクティビティに参加している１つ以上の当事者がある。
【００４９】
次に、次の例示的なＸＳＤフラグメントは、複合要素ＢＰＴｙｐｅを定義し、このＢＰＴｙｐｅは、上のＢＰＣＬＴｙｐｅ定義のＢｕｓｉｎｅｓｓＰｒｏｃｅｓｓ要素によってポイントされる。
<!-- 抽象ビジネス・プロセス・モデル -->
<xsd:complexTypename="BPType">
<xsd:sequence>
<xsd:element name= "ProcessID"type="xsd:string"/>
<xsd:element name= "Activity" type="bpcl:ActivityType"
minOccurs="0" maxOccurs="unbounded"/>
<xsd:element name= "ControlFlow"
type="bpcl:ControlFlowType" minOccurs="0"
maxOccurs="unbounded"/>
<xsd:element name= "DataFlow"type="bpcl:DataFlowType"
minOccurs="0" maxOccurs="unbounded"/>
<xsd:element name="Description"type="xsd:string"/>
<xsd:element name="OverviewURL"type="xsd:anyURI"/>
<xsd:element name="ProcessOwner"type="xsd:string"/>
<xsd:elementname="ParticipantParty" type="xsd:string"
maxOccurs="unbounded"/>
<xsd:element name="BPM"type="bpcl:BPMType"/>
</xsd:sequence>
</xsd:complexType>
【００５０】
リストに示されているように、複合要素ＢＰＴｙｐｅは、ＰｒｏｃｅｓｓＩＤ、Ａｃｔｉｖｉｔｙの０個以上の出現、ＣｏｎｔｒｏｌＦｌｏｗの０個以上の出現、ＤａｔａＦｌｏｗの０個以上の出現、Ｄｅｓｃｒｉｐｔｉｏｎ、ＯｖｅｒｖｉｅｗＵＲＬ、ＰｒｏｃｅｓｓＯｗｎｅｒ（プロセスを所有する当事者）、ＰａｒｔｉｃｉｐａｎｔＰａｒｔｙの１個以上の出現、およびＢＰＭ（ＢＰＭシステムの型を指定するため）という宣言された順序での子要素のシーケンスを有するものとして定義されている。
【００５１】
次に、次の例示的なＸＳＤフラグメントは、複合要素ＫＰＩＴｙｐｅを定義し、このＫＰＩＴｙｐｅは、上のＢＰＣＬＴｙｐｅ定義のＫＰＩ要素によってポイントされる。
<xsd:complexTypename="KPIType">
<xsd:sequence>
<xsd:element name="KPIName"type="xsd:string"/>
<xsd:element name="KPIType"type="xsd:string"/>
<xsd:element name="KPICategory"
type="bpcl:KPICategoryType"
minOccurs="0"maxOccurs="unbounded"/>
<xsd:choice>
<!-- ビジネス・プロセスから値を得た -->
<xsd:elementname="ProcessAssociation"
type="bpcl:ProcessAssociationType"/>
<xsd:elementname="EventName" type="xsd:string"/>
<xsd:elementname="InvocationURL"
type="xsd:anyURI"/>
<xsd:elementname="ObjectMethodName"
type="xsd:string"/>
<xsd:elementname="QueryString" type="xsd:string"/>
<!-- 他のKPIに基づいて値を計算する-->
<xsd:elementname="Computation"
type="bpcl:FunctionType"/>
<!-- 基本KPIから値を導出する -->
<xsd:elementname="ValueDerivation"
type="bpcl:ValueDerivationType"/>
</xsd:choice>
</xsd:sequence>
</xsd:complexType>
【００５２】
複合要素ＫＰＩＴｙｐｅの上の例に示されているように、ＫＰＩの値を得る３つの異なる形すなわち、ビジネス・プロセスから直接に、他のＫＰＩに基づいて値を計算する、および基本ＫＰＩから値を導出するがある。
【００５３】
次に、次の例示的なＸＳＤフラグメントは、複合型ＢＥＴｙｐｅを定義し、このＢＥＴｙｐｅは、上のＢＰＣＬＴｙｐｅ定義のＢｕｓｉｎｅｓｓＥｖｅｎｔ要素によってポイントされる。
<xsd:complexTypename="BEType">
<xsd:sequence>
<xsd:element name="EventName"type="xsd:string"/>
<xsd:element name="EventType"type="xsd:string"/>
<xsd:element name="ProcessID"type="xsd:string"/>
<!-- イベント・ソース:Sender（送出側から直接に来る）
またはTimer（タイマから来る）のいずれか-->
<xsd:choice>
<xsd:elementname="Sender" type="xsd:string"/>
<xsd:elementname="Timer"
type="bpcl:TimerType"/>
</xsd:choice>
<xsd:element name="Receiver"type="xsd:string"
minOccurs="0"/>
<xsd:element name="EventAttributes"
type="bpcl:EventAttributesType" minOccurs="0"
maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
【００５４】
リストに示されているように、複合型ＢＥＴｙｐｅは、ＥｖｅｎｔＮａｍｅ、ＥｖｅｎｔＴｙｐｅ、ＰｒｏｃｅｓｓＩＤ、ＳｅｎｄｅｒまたはＴｉｍｅｒ（イベント・ソースの選択）、Ｒｅｃｅｉｖｅｒの０個以上の出現、およびＥｖｅｎｔＡｔｔｒｉｂｕｔｅｓの０個以上の出現という宣言された順序での子要素のシーケンスを有するものとして定義されている。例示的実施形態では、イベント・モードに、複数のイベント・ソースすなわち、Ｓｅｎｄｅｒ（送出側から直接に来る）またはＴｉｍｅｒ（タイマから来る）が含まれる。あるイベントに固有の情報は、ＥｖｅｎｔＡｔｔｒｉｂｕｔｅｓに保管される。
【００５５】
次に、次の例示的なＸＳＤフラグメントは、複合型ＢＣＴｙｐｅを定義し、このＢＣＴｙｐｅは、上のＢＰＣＬＴｙｐｅ定義のＢＣ（ビジネス・コミットメント）要素によってポイントされる。
<xsd:complexTypename="BCType">
<xsd:sequence>
<xsd:element name="BCIdentifier"type="xsd:string"/>
<xsd:element name="TriggeringEvent"type="xsd:string"/>
<xsd:element name="CommitmentLevel"
type="bpcl:CommitmentLevelType"/>
<xsd:element name="Validity"type="bpcl:PeriodType"/>
<xsd:element name="Expression"
type="bpcl:LogicExpressionType"/>
<xsd:element name="Initiator"type="xsd:string"/>
<xsd:element name="Receiver"type="xsd:string"/>
<xsd:element name="Action"type="bpcl:ActionType"
minOccurs="0"maxOccurs="unbounded"/>
<xsd:element name="AltAction"type="bpcl:ActionType"
minOccurs="0"maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
【００５６】
リストに示されているように、複合型ＢＣＴｙｐｅは、ＢＣＩｄｅｎｔｉｆｉｅｒ、ＴｒｉｇｇｅｒｉｎｇＥｖｅｎｔ、ＣｏｍｍｉｔｍｅｎｔＬｅｖｅｌ、Ｖａｌｉｄｉｔｙ、（論理）Ｅｘｐｒｅｓｓｉｏｎ、Ｉｎｉｔｉａｔｏｒ、Ｒｅｃｅｉｖｅｒ、Ａｃｔｉｏｎの０個以上の出現、およびＡｌｔＡｃｔｉｏｎの０個以上の出現という宣言された順序での子要素のシーケンスを有するものとして定義されている。
【００５７】
Ａｃｔｉｏｎは、論理Ｅｘｐｒｅｓｓｉｏｎが真と評価された時に行われる１つまたは複数のアクションを定義する。ＡｌｔＡｃｔｉｏｎは、論理Ｅｘｐｒｅｓｓｉｏｎが偽と評価された時に行われる１つまたは複数のアクションを定義する。コミットメントは、方向性があり、したがって、ＩｎｉｔｉａｔｏｒおよびＲｅｃｅｉｖｅｒを示すことが好ましい。個々のレベル（トランザクション・インスタンスごとのコミットメント）およびプロセス・レベル（ある時間期間にわたって集約された結果に基づく）を含むＣｏｍｍｉｔｍｅｎｔＬｅｖｅｌの複数の可能な値があることが好ましい。
【００５８】
次に、次の例示的なＸＳＤフラグメントは、複合型ＡｃｔｉｏｎＴｙｐｅを定義し、このＡｃｔｉｏｎＴｙｐｅは、ＢＣＴｙｐｅ型定義のＡｃｔｉｏｎ要素およびＡｌｔＡｃｔｉｏｎ要素の両方によってポイントされる。
<xsd:complexTypename="ActionType">
<xsd:sequence>
<xsd:element name="ActionCategory"
type="bpcl:ActionCategoryType"/>
<xsd:element name="ProcessID"type="xsd:string"/>
<xsd:element name="ActivityName"
type="xsd:string"/>
<xsd:element name="Parameter"
type="bpcl:NameValueType"minOccurs="0"
maxOccurs="unbounded"/>
<xsd:element name="ExecutionMode"
type ="bpcl:ExecutionModeType"/>
</xsd:sequence>
</xsd:complexType>
【００５９】
リストに示されているように、複合要素ＡｃｔｉｏｎＴｙｐｅは、ＡｃｔｉｏｎＣａｔｅｇｏｒｙ、ＰｒｏｃｅｓｓＩＤ、ＡｃｔｉｖｉｔｙＮａｍｅ、Ｐａｒａｍｅｔｅｒの０個以上の出現、およびＥｘｅｃｕｔｉｏｎＭｏｄｅという宣言された順序での子要素のシーケンスを有するものとして定義されている。要素ＥｘｅｃｕｔｉｏｎＭｏｄｅＴｙｐｅは、そのような要素の内容を「Ｓｅｑｕｅｎｔｉａｌｌｙ」（Ａｃｔｉｏｎの順次実行）および「ＩｎＰａｒａｌｌｅｌ」（Ａｃｔｉｏｎの並列実行）を含む複数の有効な値に制限するために列挙制約を使用して定義されることが好ましい。
【００６０】
次に、次の例示的なＸＳＤフラグメントは、複合要素ＣｏｍｍｉｔｍｅｎｔＰｒｏｆｉｌｅＴｙｐｅを定義し、このＣｏｍｍｉｔｍｅｎｔＰｒｏｆｉｌｅＴｙｐｅは、上のＢＰＣＬＴｙｐｅ定義のＣｏｍｍｉｔｍｅｎｔＰｒｏｆｉｌｅ要素によってポイントされる。
<xsd:complexTypename="CommitmentProfileType">
<xsd:sequence>
<xsd:element name="ConditionMatchingVariable"
type="bpcl:NameValueType"minOccurs="0"
maxOccurs="unbounded"/>
<xsd:elementname="CommitmentVariable"
type="bpcl:NameValueType"minOccurs="0"
maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
【００６１】
リストに示されているように、複合要素ＣｏｍｍｉｔｍｅｎｔＰｒｏｆｉｌｅＴｙｐｅは、ＣｏｎｄｉｔｉｏｎＭａｔｃｈｉｎｇＶａｒｉａｂｌｅの０個以上の出現およびＣｏｍｍｉｔｍｅｎｔＶａｒｉａｂｌｅの０個以上の出現という宣言された順序での子要素のシーケンスを有するものとして定義されている。
【００６２】
上で注記したように、ＣｏｍｍｉｔｍｅｎｔＰｒｏｆｉｌｅは、条件マッチング変数およびコミットメント変数を記述する。コミットメント・プロファイルは、コミットメントの論理部分をコミットメントのデータ部分から分離し、これによって、大きいＢＰＣＬ文書を組み立てる際のスケーラビリティを可能にする。コミットメントの論理部分に、ＫＰＩおよびパラメータに対する論理式が含まれる。コミットメントのデータ部分に、そのようなパラメータの値が含まれ、データ部分に、コミットメント・プロファイルと呼ばれるデータの集合が含まれる。データ部分は、データベース・テーブルまたは他の別々のＸＭＬ文書に存在することができる。この形で、ＢＰＣＬのコア部分を小さくし、理解しやすくすることができる。各コミットメント・プロファイルに、（ｉ）識別情報および（ｉｉ）閾値情報を含む複数のコンポーネントが含まれる。識別情報を、ＣｏｎｄｉｔｉｏｎＭａｔｃｈｉｎｇＶａｒｉａｂｌｅと称し、閾値情報を、ＣｏｍｍｉｔｍｅｎｔＶａｒｉａｂｌｅと称する。名前によって暗示されるように、ＣｏｎｄｉｔｉｏｎＭａｔｃｈｉｎｇＶａｒｉａｂｌｅの値は、ＣｏｍｍｉｔｍｅｎｔＶａｒｉａｂｌｅの値を取り出すための条件として使用される。ＣｏｍｍｉｔｍｅｎｔＶａｒｉａｂｌｅｓは、コミットメントの論理部分の評価に参加する。そのような評価の結果によって、１つまたは複数のアクションを行うべきかどうかが決定される。
【００６３】
セクションＩＶ−ＢＰＭのシステムおよび方法
次のセクションでは、ビジネス・プロセス・マネージメント・プラットフォームを実装するために使用することができる、プローブ・ポイント、ＫＰＩ（主要業績評価指標）、およびビジネス・コミットメントを使用してビジネス・レベルＳＬＡを監視し、制御する本発明のさまざまな実施形態によるシステムおよび方法を説明する。
【００６４】
本明細書で説明する、本発明によるシステムおよび方法を、さまざまな形のハードウェア、ソフトウェア、ファームウェア、特殊目的プロセッサ、またはその組合せで実装できることを理解されたい。本発明は、１つまたは複数のプログラム保管デバイス（たとえば、ハード・ディスク、磁気フロッピ・ディスク、ＲＡＭ、ＣＤ  Ｒｏｍ、ＤＶＤ、ＲＯＭ、およびフラッシュ・メモリ）で有形に実施され、適切なアーキテクチャを含むデバイスまたは機械によって実行可能なプログラム命令を含むアプリケーションとしてソフトウェアで実装されることが好ましい。
【００６５】
さらに、添付図面に示された構成システム・モジュールおよび方法ステップが、ソフトウェアで実施されることが好ましいので、システム・コンポーネントの間の実際の接続（または処理ステップの流れ）が、アプリケーションがプログラムされる形に応じて異なる可能性があることを理解されたい。本明細書の教示を与えられれば、当業者は、本発明のこれらのおよび類似する実装または構成を企図することができる。
【００６６】
図２を参照すると、図に、本発明の実施形態による、プローブ・ポイント、ＫＰＩ、およびビジネス・コミットメント介してビジネス・レベルＳＬＡを監視し、制御するシステムおよび方法が示されている。図２に、本発明の実施形態による、ビジネス・レベルＳＬＡを監視し、制御する方法の高水準流れ図も示されていることを理解されたい。一般に、システム（１０）アーキテクチャに、（ｉ）ビルド時システム・コンポーネントおよび（ｉｉ）実行時システム・コンポーネントを含むコンポーネントの複数の統合されたシステムが含まれる。
【００６７】
ビルド時中に、ＢＰＣＬコンポーザ（１１）が、１つまたは複数のＢＰＣＬ文書（１２）の作成に使用される。ビジネス・アナリストは、コンポーザ（１１）ツールを使用してＢＰＣＬ文書を組み立てる。ＢＰＣＬコンポーザ（１１）に、有効なＢＰＣＬ文書を組み立てるためのビジュアル編集ツールが含まれることが好ましい。好ましい実施形態では、ＢＰＣＬコンポーザ（１１）に、プローブ・ポイント、ＫＰＩ、およびビジネス・プロセス・コミットメントの間の関係を表示する（ＧＵＩを介して）Ｅｃｌｉｐｓｅベースのビジュアル開発ツールが含まれる。編集の最終結果が、ＢＰＣＬ文書としてＸＭＬフォーマットで保管されることが好ましい。
【００６８】
システム（１０）実行時コンポーネントに、ＢＰＣＬコンフィギュレータ（１３）、アクチュエータ（１４）、条件エバリュエータ（１５）、ＫＰＩカリキュレータ（１６）、および評価トリガ（１７）が含まれる。ＢＰＣＬコンフィギュレータ（１３）は、ＢＰＣＬ文書および他の構成ファイルを処理して、システム・コンポーネント（１４〜１７）を構成する。コンフィギュレータ（１３）に、ＢＰＣＬ文書を読み取り、構成情報を適当なシステム・コンポーネントに渡すプログラムが含まれることが好ましい。アクチュエータ（１４）に、ジェネリック通知を送るか、動作中のビジネス・プロセス（１８）の実行を変更することができる管理ディレクティブを呼び出すプログラムが含まれる。ＫＰＩカリキュレータ（１６）に、ＫＰＩ値を判定するプログラムが含まれ、条件エバリュエータ（１５）に、論理条件を評価するプログラムが含まれる。評価トリガ（１７）は、条件エバリュエータ（１５）を呼び出すための「トリガ」を決定する。「アラームベース」トリガおよび「イベントベース」トリガを含む複数のタイプのトリガが実装されることが好ましい。アラームベース・トリガについて、命令は、ＢＰＣＬ文書を読むＢＰＣＬコンフィギュレータ（１３）からであるが、イベントベース・トリガは、プローブ・メッセージに基づく。
【００６９】
システム（１０）の実行時中に、動作中のビジネス・プロセス（１８）の実行中にプローブ・ポイントがアクティブ化された時に、ＳＬＡ監視が行われる。具体的にいうと、監視されるビジネス・プロセスに挿入されたプローブ・ポイントが、アクティブ化され、ＫＰＩカリキュレータ（１６）にメッセージを送る。ＫＰＩカリキュレータ（１６）は、ＫＰＩ値を判定する。それと同時に、プローブ・ポイントは、評価トリガ（１７）にもメッセージを送り、評価トリガ（１７）は、関連する論理条件を評価するように条件エバリュエータ（１５）に要求する。条件エバリュエータ（１５）は、ＫＰＩカリキュレータ（１６）にＫＰＩ値を要求し、ＫＰＩカリキュレータ（１６）は、そのデータを条件エバリュエータ（１５）に送る。次に、条件エバリュエータ（１５）は、適当なアクションを行うようにアクチュエータ（１４）に指示する。アクチュエータ（１４）は、ジェネリック通知機構を呼び出し、このジェネリック通知機構は、通知の実際の実装、たとえば電子メール、インスタント・メッセージなどを呼び出す。アクチュエータ（１４）は、基礎になるビジネス・プロセスの実行を変更できる１つまたは複数の管理ディレクティブを呼び出すことができる。
【００７０】
したがって、要約すると、プローブ・ポイントがアクティブ化された時に、ＫＰＩ値が計算され、その後、（論理）条件が評価される。条件評価からの結果によって、ＳＬＡ違反が発生したか否かが判定される。そのような違反がある場合に、ジェネリック通知が適当な当事者に送られるか、管理ディレクティブがビジネス・プロセスにルート・バックされて、ビジネス・プロセスの実行が操作される。
【００７１】
図３は、本発明の実施形態による、ＢＰＣＬコンポーザを使用して組み立てられるＢＰＣＬ文書の例示的な図である。上で注記したように、ＢＰＣＬコンポーザは、ビジネス・アナリストがＢＰＣＬ文書の異なるコンポーネントをビジュアルに定義し、ＢＰＣＬ文書の異なるコンポーネントの間の関係を示すことを可能にするＥｃｌｉｐｓｅベースの開発ツールであることが好ましい。当技術分野で周知のように、Ｅｃｌｉｐｓｅ  Ｐｌａｔｆｏｒｍは、ｅ−ビジネス・アプリケーションなどのさまざまなタイプのアプリケーションを作成するのに使用できる統合開発環境（ＩＤＥ）を作成するために設計された、Ｊａｖａベースのオープンソース・ソフトウェア・プラットフォームである。Ｅｃｌｉｐｓｅ  Ｐｌａｔｆｏｒｍは、プラグインと呼ばれるモジュールを発見し、統合し、実行する機構に基づいて作られている。ツール・プロバイダは、Ｅｃｌｉｐｓｅ「ワークスペース」でファイルを操作し、Ｅｃｌｉｐｓｅ「ワークベンチ」でツール固有ＵＩを明示する別々のプラグインとしてツールを開発することができる。Ｅｃｌｉｐｓｅワークベンチは、その上でツール・ビルダが製品を開発できるプラットフォームを提供するオープン・ソース・イニシアティブである。ワークベンチ内で使用可能なすべての共通の機能性を用いて、ツール・ビルダは、コア・ビジネス・ロジックだけを含むプラグインの開発に集中することができる。Ｅｃｌｉｐｓｅプラットフォームは、開発者が複数のサプライヤからのソフトウェア・ツールを一緒に使用することを可能にし、開発者がｅ−ビジネス・アプリケーションを作成するのに使用するビジネス・プロセスを統合することを可能にする。
【００７２】
図３の例示的な図では、３つの基本的な層すなわち、プローブ・ポイント層（Ｌ１）、ＫＰＩ層（Ｌ２）、およびビジネス・コミットメント層（Ｌ３）が、ＢＰＣＬ定義について示されている。ＫＰＩ定義は、再帰的なので、ＫＰＩ層（Ｌ２）は、実際には複数の物理層を有する場合がある。たとえば、図３で、ＫＰＩ層（Ｌ２）について３つのＫＰＩ層が示されている。一番上のＫＰＩ層（３１）で定義されるＫＰＩは、ビジネス・コミットメント（３０）の構成に使用され、一番上のＫＰＩ層（３１）の下で定義されるＫＰＩ（３２、３３、３４）は、一番上のＫＰＩ層（３１）の「平均ベース要求応答時間」値を計算するのに使用される。例示的な文書に、それぞれ「ベース要求開始時刻」および「ベース要求終了時刻」の監視をアクティブ化するために定義された２つのプローブ・ポイント（３５、３６）が含まれる。したがって、図３に示されているように、ビジネス・コミットメント定義は、ＫＰＩに依存し、ＫＰＩの定義は、プローブ・ポイントに依存する。依存性チェーン、たとえば「プローブ・ポイント−＞ＫＰＩ−＞ビジネス・コミットメント」がある。複数のプローブ・ポイント、ＫＰＩ、およびビジネス・コミットメントがある時に、その相互作用が、グラフ構造を形成する。
【００７３】
図４は、本発明の実施形態による評価トリガ（１７）のアーキテクチャを示す図である。図４には、さらに、本発明による評価トリガ（１７）の動作のモードが示されている。上で注記したように、アラーミング指示（４１）およびプローブ・ポイントからのメッセージ（４２）など、信号の複数のソースがあることが好ましい。アラーミング指示に、あるイベントの周期的発生に関する時間ベースの指定が含まれる。たとえば、毎週の終り（たとえば、毎金曜日の午後６時０分）または毎月の始め（たとえば、毎月１日の午前９時０分）までに、システムが、サイクル・タイムの平均値を判定し、これを事前定義の閾値と比較することができる。アラーミング・プロセッサ（４３）に、アラーミング指示（４１）を処理し、信号ジェネレータ（４５）を介して信号を実際に生成するために適当なシステム／コンポーネントをセットするプログラムが含まれる。
【００７４】
さらに、評価トリガ（４２）をプローブ・ポイントから受け取ることができる。この場合に、プローブ・ポイントが、基礎になるビジネス・プロセスから情報を受け取った時に、必ず、これらのメッセージが、イベント・プロセッサ（４４）に渡される。イベント・プロセッサ（４４）は、イベント集約を実行する（たとえば、指定された時間期間内に何個のメッセージが受け取られたかを判定する）。イベント・プロセッサ（４４）は、信号ジェネレータ（４５）に信号を送って、適当なトリガリング信号を生成する。
【００７５】
図５は、本発明の実施形態によるＫＰＩ値を判定する方法を示す流れ図である。図５の流れ図には、図２のＫＰＩカリキュレータ（１６）の動作のモードが示されている。まず、条件エバリュエータからＫＰＩ値に関する要求を受け取った時に（ステップ５０）、ＫＰＩカリキュレータ（１６）は、コンフィギュレータ（１３）によって供給された構成情報を処理し（ステップ５１）、ＫＰＩタイプを判定する（ステップ５２）。ＫＰＩが、合成された型と判定される場合（ステップ５３の肯定の判定）、演算子を判定し、オペランドの値を再帰的に計算し（ステップ５４）、処理フローは、ステップ５２に戻る。
【００７６】
その一方で、ＫＰＩが合成された型でない場合（ステップ５３の否定の判定）、ＫＰＩが外部関数に基づくかどうかに関する判定を行う（ステップ５５）。ＫＰＩが外部関数に基づく場合（ステップ５５の肯定の判定）、たとえばＷＳＤＬ（Ｗｅｂ  Ｓｅｒｖｉｃｅ  Ｄｅｓｃｒｉｐｔｉｏｎ  Ｌａｎｇｕａｇｅ）動作で定義された関数を呼び出し（ステップ５６）、最終的なＫＰＩ値を集約する（ステップ５８）。その一方で、ＫＰＩが外部関数に基づかない場合（ステップ５５の否定の判定）、ＫＰＩ値をプローブ・ポイントから抽出し（ステップ５７）、最終的な値を集約する（ステップ５８）。その後、最終的な値を条件エバリュエータに返す（ステップ５９）。
【００７７】
図６は、本発明の実施形態による、ビジネス・プロセスの実行中にアクティブ化されたプローブ・ポイントに応答して論理条件（ビジネス・コミットメントに関連する）を評価する方法を示す流れ図である。図６の流れ図には、図２の条件エバリュエータ（１５）の動作のモードが示されている。まず、ＫＰＩカリキュレータからＫＰＩ値を受け取った時に、条件エバリュエータ（１５）は、コンフィギュレータ（１３）によって供給された構成情報を処理し（ステップ６０）、論理式に含まれるブール・リテラルごとにプリミティブ評価エンジンを呼び出す（ステップ６１）。その後、各ブール・リテラルの評価からの結果を集約し（ステップ６２）、その結果をアクチュエータに返す（ステップ６３）。
【００７８】
図７は、ビジネス・レベルＳＬＡ違反に応答して行われるアクションを判定する方法を示す流れ図である。図７には、図２のアクチュエータ（１４）の動作のモードが示されている。上で注記したように、条件評価の結果に基づいて、条件エバリュエータ（１５）は、適当なアクションを行うようにアクチュエータ（１４）に指示する。アクチュエータ（１４）は、コンフィギュレータ（１３）によって供給された構成情報を処理し（ステップ７０）、条件エバリュエータ（１５）からの要求に応答して、行うべきアクションのタイプを判定する（ステップ７１）。ジェネリック通知が指定された場合（ステップ７２の肯定の判定）、評価結果を検査し、適当な当事者に通知する（ステップ７３）。ジェネリック通知が指定されていない場合（ステップ７４の否定の判定）評価結果を検査し、適当な管理ディレクティブを呼び出す（ステップ７４）。
【００７９】
上で図３に関して述べたように、ビジネス・コミットメント定義は、ＫＰＩに基づき、ＫＰＩは、プローブ・ポイントによって定義される。「プローブ・ポイント−＞ＫＰＩ−＞ビジネス・コミットメント」などの依存性チェーンがある。複数のプローブ・ポイントがある場合に、ＫＰＩおよびビジネス・コミットメントとこれらの相互作用とが、グラフ構造を形成する。プローブ・ポイントが、なんらかの理由で（すなわち、ビジネス・プロセスの一部の部分的故障）使用不能である場合には、影響を受けるＫＰＩおよびビジネス・コミットメントを検出する形を有する必要がある。
【００８０】
図８は、本発明の実施形態による、プローブ・ポイントが使用不能な時にＫＰＩとビジネス・コミットメントの間の依存性を検出する方法を示す流れ図である。そのような方法では、入力に、（一時的にまたは永久的に）使用不能なプローブ・ポイントのリストが含まれ、出力に、それ相応に影響を受けるＫＰＩおよびビジネス・コミットメントのリストが含まれる。まず、ＢＰＣＬ文書で定義されたビジネス・コミットメントごとに、定義の条件部分を分析し、各ビジネス・コミットメントの関連するＫＰＩの組を返す（ステップ８０）。この組を、ＫＰＩＢＣ１、ＫＰＩＢＣ２、…、ＫＰＩＢＣｎなどと呼ぶものとする。
【００８１】
次に、ＢＰＣＬ文書で定義されたＫＰＩごとに、子ノードをトラバースし、すべてのサポートするプローブ・ポイントの組を、ＫＰＩごとに返す（ステップ８１）。この組を、ＰＰＫＰＩ１、ＰＰＫＰＩ２、…ＰＰＫＰＩｎなどと呼ぶものとする。
【００８２】
次に、入力リストから１つのプローブ・ポイントを得る（リストから除去する）（ステップ８２）。そのプローブ・ポイントが、プローブ・ポイントの組ＰＰＫＰＩ１、ＰＰＫＰＩ２、…ＰＰＫＰＩｎなどのいずれかのメンバであるかどうかに関する判定を行う（ステップ８３）。プローブ・ポイントが、そのようなプローブ・ポイント組の１つのメンバである場合（ステップ８３の肯定の判定）、ＫＰＩ名を「出力ＫＰＩリスト」に追加する（ステップ８４）。入力リストにまだプローブ・ポイントがある場合（ステップ８５の肯定の判定）、入力リストが空になるまで（ステップ８５の否定の判定）この処理を繰り返す（ステップ８２、８３、および８４）。
【００８３】
プローブ・ポイントの入力リストが空になった時に、「出力ＫＰＩリスト」のコピーＫＰＩｏｕｔｐｕｔを作る（ステップ８６）。次に、１つのＫＰＩをＫＰＩｏｕｔｐｕｔから入手し、ＫＰＩｏｕｔｐｕｔから除去する（ステップ８７）。出力リストから入手したＫＰＩが、ステップ８０で得られたＫＰＩ組のいずれかのメンバであるかどうかに関する判定を行う（ステップ８８）。ＫＰＩが組のメンバである場合（ステップ８８の肯定の判定）、対応するビジネス・コミットメント名を「出力ＢＣリスト」に追加する（ステップ８９）。出力リストＫＰＩｏｕｔｐｕｔにまだプローブＫＰＩがある場合（ステップ９０の肯定の判定）、出力リストが空になるまで（ステップ９０の否定の判定）この処理を繰り返し（ステップ８７、８８、および８９）、空になった場合には、「出力ＫＰＩリスト」および「出力ＢＣリスト」を返す（ステップ９１）。
【００８４】
セクションＶ−ケース・スタディ
次のセクションでは、本発明によるビジネス・コミットメントを使用して実装できる複数の例示的なビジネス・プロセスを説明する。
【００８５】
１．保険ハブ
保険産業では、小さい会社が、独立の代理店を介して保険証券を購入することができる。これらの独立の代理人は、保険証券を実際に発行する保険業者に連絡する。独立の代理人が、潜在的に異なる証券を有する多数の保険業者を扱うことは時間がかかるので、複数の保険業者から返された結果を集約でき、独立の代理人に均一なインターフェースを提供できる保険ハブ（本明細書に記載のビジネス・プロセス・マネージメントのシステムおよび方法を使用する）を開発することが、コスト効率がよい。保険ハブと保険業者の間のビジネス相互作用中に、保険ハブが、保険業者によって提供される証券ルールが実世界の情況と一致しないことを見つける可能性がある。保険ハブは、ルール・セット改訂要求を保険業者に送ることができる。証券ルール変更は、人間の介入を必要とするので、保険業者は、ルール・セットを処理し、結果をハブに送り返すのに、数時間または数日を要する可能性がある。保険ハブの観点からは、各保険業者が、合意された時間期間内に対応する結果を返すことができるならば有益である。そのような時間期間の価値は、保険ハブと保険業者の間のＳＬＡ／契約の一部とすることができる。
【００８６】
本発明によれば、複数のコミットメントを上の例で定義することができる。１つのコミットメントは、保険業者から保険ハブへであり、この場合に、保険業者は、指定された時間期間のうちに結果を返さなければならず、保険ハブは、結果を監視する。もう１つのコミットメントは、保険ハブから保険業者へであり、この場合に、各報告期間の終りに、保険ハブは、平均ターンアラウンド・タイムを保険業者に報告する。
【００８７】
２．サプライ・チェーン・マネージメント
大手の製造企業では、製造施設が、効率のために在庫センタと別々である場合がある。製造施設は、さまざまなチャネルを扱い、これらのチャネルは、製造企業の実際の顧客である。在庫センタは、供給業者に生材料を注文する。本発明によれば、この４つのエンティティ（製造施設、在庫センタ、顧客、および供給業者）の間の相互作用が、ｅ−サービスとしてモデル化され、そのようなエンティティの間のビジネス関係が、そのようなｅ−サービスの上のビジネス・コミットメントとしてモデル化される。この例では、さまざまなコミットメントを定義することができる。たとえば、１つのコミットメントを、「顧客サービス可能性」として定義することができ、これは、製造施設からチャネルへのコミットメントである。チャネル／顧客クラスに応じて、オン時間パーセンテージを９５％にセットすることができる。さらに、配送が、３日または４日など、事前定義の配送時間内に完了する場合に、配送を「オン時間」と見なすことができる。
【００８８】
もう１つのコミットメントを、「供給業者補充」として定義することができ、これは、供給業者から在庫センタへのコミットメントである。供給業者名、部品名、または部品ファミリ名に応じて、在庫センタは、サイクル・タイムを２日未満にしなければならないこと、標準偏差を４時間未満にしなければならないこと、および誤差許容範囲を２時間未満にしなければならないことを要求することができる。
【００８９】
もう１つのコミットメントを、「予測精度」として定義することができる。部品名または部品ファミリ名に応じて、「予測精度」を８０％超としなければならない。
【００９０】
上の例では、ＫＰＩ、条件マッチング変数、およびコミットメント変数は明白である。たとえば、３番目のコミットメントでは、「ＦｏｒｅｃａｓｔＡｃｃｕｒａｃｙ」がＫＰＩであり、ＰａｒｔＮａｍｅまたはＰａｒｔＦａｍｉｌｙＮａｍｅが、ＣｏｎｄｉｔｉｏｎＭａｔｃｈｉｎｇＶａｒｉａｂｌｅであり、８０％が、ＣｏｍｍｉｔｍｅｎｔＶａｒｉａｂｌｅの値（たとえば、＄ＦＡなど）である。実行時中に、＄ＦＡの値を動的に変更することができ、したがって、効果的にコミットメントをオン・ザ・フライで変更することができる。
【００９１】
例示的実施形態を、添付図面を参照して本明細書で説明したが、本発明が、本明細書に記載の正確なシステムおよび方法に制限されないことと、本発明の範囲および趣旨から外れずに当業者がさまざまな他の変更および修正をもたらすことができることを理解されたい。そのような変更および修正のすべてが、請求項によって定義される本発明の範囲に含まれることが意図されている。
【図面の簡単な説明】
【００９２】
【図１】本発明の実施形態によるＢＰＣＬ文書を作成する方法を示す流れ図である。
【図２】本発明の実施形態による、プローブ・ポイント、ＫＰＩ、およびビジネス・コミットメントを介してビジネス・レベルＳＬＡを監視し、制御するシステムおよび方法を示す図である。
【図３】本発明の実施形態による、ＢＰＣＬコンポーザを使用して組み立てられるＢＰＣＬ文書を示す例示的な図である。
【図４】本発明の実施形態による、評価トリガ・モジュールによってトリガリング信号を生成する方法を示す流れ図である。
【図５】本発明の実施形態によるＫＰＩ（主要業績評価指標）値を判定する方法を示す流れ図である。
【図６】本発明の実施形態による、ビジネス・プロセスの実行中にアクティブ化されたプローブ・ポイントに応答して論理条件（ビジネス・コミットメントに関連する）を評価する方法を示す流れ図である。
【図７】ビジネス・レベルＳＬＡ違反に応答して行われるアクションを判定する方法を示す流れ図である。
【図８】本発明の実施形態による、プローブ・ポイントが使用不能な時にＫＰＩとビジネス・コミットメントの間の依存性を検出する方法を示す流れ図である。
【符号の説明】
【００９３】
１  ＳＬＡ１
２  契約２
３  契約３
４  内部ＳＬＡ／コミットメント
５  インターコントラクト／ＳＬＡ分析
６  ＢＰＣＬ
Ｐ１  当事者１
Ｐ２  当事者２
Ｐ３  当事者３
Ｐ４  当事者４
１０  システム
１１  ＢＰＣＬコンポーザ
１２  ＢＰＣＬ文書
１３  ＢＰＣＬコンフィギュレータ
１４  アクチュエータ
１５  条件エバリュエータ
１６  ＫＰＩカリキュレータ
１７  評価トリガ
１８  ビジネス・プロセス
３０  ビジネス・コミットメント
３１  ＫＰＩ層
３２  ＫＰＩ
３３  ＫＰＩ
３４  ＫＰＩ
３５  プローブ・ポイント
３６  プローブ・ポイント
４１  アラーミング指示
４２  プローブ・ポイントからのメッセージ
４３  アラーミング・プロセッサ
４４  イベント・プロセッサ
４５  信号ジェネレータ
【図１】
2007529048.tif 000003
【図２】
2007529048.tif 000004
【図３】
2007529048.tif 000005
【図４】
2007529048.tif 000006
【図５】
2007529048.tif 000007
【図６】
2007529048.tif 000008
【図７】
2007529048.tif 000009
【図８】
2007529048.tif 000010
【手続補正書】
【提出日】平成19年6月28日(2007.6.28)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
複数のエンティティの間の相互作用を可能にするアプリケーションの統合された組を含むビジネス・プロセスを実行するステップと、  前記エンティティの間の１つまたは複数のビジネス・コミットメントを記述したビジネス・コミットメント指定を使用して前記ビジネス・プロセスの前記実行を管理するステップであって、前記ビジネス・コミットメントが、ＫＰＩ（主要業績評価指標）を使用して定義され、ＫＰＩが、プローブ・ポイントを使用して定義される、ステップと  を含む、ビジネス・プロセスを管理する方法。
【請求項２】
前記ビジネス・コミットメント指定が、ＸＭＬ（ｅＸｔｅｎｓｉｂｌｅ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）構文を使用して記述される、請求項１に記載の方法。
【請求項３】
管理する前記ステップが、  前記ビジネス・プロセスに関連するプローブ・ポイントを監視するステップと、  ＫＰＩに関連するプローブ・ポイントがアクティブ化された時に前記ＫＰＩの値を判定するステップと、  前記ビジネス・コミットに違反しているかどうかを判定するために、前記ＫＰＩの前記判定された値に基づいて前記ＫＰＩに関連するビジネス・コミットメントを評価するステップと  を含む、請求項１に記載の方法。
【請求項４】
ＫＰＩの値を判定する前記ステップが、少なくとも１つの他のＫＰＩの値に基づいて前記ＫＰＩの前記値を判定することを含む、請求項３に記載の方法。
【請求項５】
ＫＰＩの値を判定する前記ステップが、前記ＫＰＩの前記値を判定するために関数を呼び出すことを含む、請求項３に記載の方法。
【請求項６】
ＫＰＩの値を判定する前記ステップが、プローブ・ポイントから抽出された値に基づいて前記ＫＰＩの前記値を判定することを含む、請求項３に記載の方法。
【請求項７】
ビジネス・コミットメントを評価する前記ステップが、前記ＫＰＩの前記判定された値を使用して、前記ビジネス・コミットメントによって指定された条件を評価することを含む、請求項３に記載の方法。
【請求項８】
前記ビジネス・コミットメントに違反していると判定された場合にアクションを開始するステップをさらに含む、請求項３に記載の方法。
【請求項９】
アクションを開始する前記ステップが、前記ビジネス・コミットメントに関連するエンティティに前記違反の通知を提供することを含む、請求項８に記載の方法。
【請求項１０】
アクションを開始する前記ステップが、前記ビジネス・プロセスの前記実行を変更するために管理ディレクティブを呼び出すことを含む、請求項８に記載の方法。
【請求項１１】
ビジネス・プロセスを管理するためのプログラムであって、該プログラムが、複数のエンティティの間の相互作用を可能にするアプリケーションの統合された組を含むビジネス・プロセスを実行するステップと、  前記エンティティの間の１つまたは複数のビジネス・コミットメントを記述したビジネス・コミットメント指定を使用して前記ビジネス・プロセスの前記実行を管理するステップであって、前記ビジネス・コミットメントが、ＫＰＩ（主要業績評価指標）を使用して定義され、ＫＰＩが、プローブ・ポイントを使用して定義される、ステップを  コンピュータに実行させるプログラム。
【請求項１２】
前記ビジネス・コミットメント指定が、ＸＭＬ（ｅＸｔｅｎｓｉｂｌｅ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）構文を使用して記述される、請求項１１に記載のプログラム。
【請求項１３】
前記ビジネス・プロセスに関連するプローブ・ポイントを監視するステップと、  ＫＰＩに関連するプローブ・ポイントがアクティブ化された時に前記ＫＰＩの値を判定するステップと、  前記ビジネス・コミットに違反しているかどうかを判定するために、前記ＫＰＩの前記判定された値に基づいて前記ＫＰＩに関連するビジネス・コミットメントを評価するステップと  を含む、請求項１１に記載のプログラム。
【請求項１４】
前記ＫＰＩの値を判定するステップが、少なくとも１つの他のＫＰＩの値に基づいて前記ＫＰＩの前記値を判定するステップを含む、請求項１３に記載のプログラム。
【請求項１５】
前記ＫＰＩの値を判定するステップが、前記ＫＰＩの前記値を判定するために関数を呼び出すステップを含む、請求項１３に記載のプログラム。
【請求項１６】
前記ＫＰＩの値を判定するステップが、プローブ・ポイントから抽出された値に基づいて前記ＫＰＩの前記値を判定するステップを含む、請求項１３に記載のプログラム。
【請求項１７】
前記ビジネス・コミットメントを評価するステップが、前記ＫＰＩの前記判定された値を使用して、前記ビジネス・コミットメントによって指定された条件を評価するステップを含む、請求項１３に記載のプログラム。
【請求項１８】
前記ビジネス・コミットメントに違反していると判定された場合にアクションを開始するステップをさらに含む、請求項１３に記載のプログラム。
【請求項１９】
前記アクションを開始するステップが、前記ビジネス・コミットメントに関連するエンティティに前記違反の通知を提供するステップを含む、請求項１８に記載のプログラム。
【請求項２０】
前記アクションを開始するステップが、前記ビジネス・プロセスの前記実行を変更するために管理ディレクティブを呼び出すステップを含む、請求項１８に記載のプログラム。
【国際調査報告】
2007529048.tif 000011