JP3906176B2 - 分散されたワークフローを管理するコンピュータ・ベースのシステム - Google Patents

分散されたワークフローを管理するコンピュータ・ベースのシステム Download PDF

Info

Publication number
JP3906176B2
JP3906176B2 JP2003099974A JP2003099974A JP3906176B2 JP 3906176 B2 JP3906176 B2 JP 3906176B2 JP 2003099974 A JP2003099974 A JP 2003099974A JP 2003099974 A JP2003099974 A JP 2003099974A JP 3906176 B2 JP3906176 B2 JP 3906176B2
Authority
JP
Japan
Prior art keywords
workflow
activity
management system
state
shadowing
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2003099974A
Other languages
English (en)
Other versions
JP2004005550A (ja
Inventor
セキ・グルク
イガル・ホフナー
ハイコ・ルードヴィッヒ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of JP2004005550A publication Critical patent/JP2004005550A/ja
Application granted granted Critical
Publication of JP3906176B2 publication Critical patent/JP3906176B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/063Operations research, analysis or management
    • G06Q10/0633Workflow analysis

Landscapes

  • Business, Economics & Management (AREA)
  • Human Resources & Organizations (AREA)
  • Engineering & Computer Science (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Strategic Management (AREA)
  • Economics (AREA)
  • Tourism & Hospitality (AREA)
  • Marketing (AREA)
  • Operations Research (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Game Theory and Decision Science (AREA)
  • Development Economics (AREA)
  • Educational Administration (AREA)
  • Data Mining & Analysis (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、一般にはデータ処理システムに関し、より詳細には、データ処理システム上で稼働するワークフロー管理システムに関する。
【0002】
【従来の技術】
新製品の開発製造や、既存の製品の変更または改造のプロセスは、プロダクト・マネージャやエンジニアが製品を低コストで期限内に、しかも製品の質を維持し、あるいは向上させて市場に出すのに、多くの難問を投げかける。多くの企業では、従来の製品設計プロセスではこれらの必要を十分に満たすことができないと認識している。したがって、このような企業では、製造エンジニアリング、コスト・エンジニアリング、ロジスティック計画、調達、製造、サービスおよびサポートを、設計作業の初期段階で行う必要がある場合がある。さらに、設計、発売、および製造を通じて一貫して製品データの立案と管理を行う場合がある。
【0003】
開発プロセスや製造プロセスなど、企業内での業務プロセスの正確で効率的な実行は、企業にとってきわめて重要であり、市場における企業の成功全体に多大な影響を及ぼす可能性がある。したがって、業務プロセスは、技術プロセスと同様に重視され、テスト、最適化、および監視の対象となっている。
【0004】
したがって、業務プロセスのモデリングと実行を支援する、コンピュータ・ベースのワークフロー管理システム(WfMS)が開発されている。
【0005】
【発明が解決しようとする課題】
しかし、現在のワークフロー管理システムには、以下のようないくつかの限界がある。
【0006】
業務プロセスの全部または一部が複数の関与組織(participating organisation)にわたって行われることがある。これは、たとえば、業務プロセスの実行の全体または一部が、1つの組織(顧客組織(customer organisation))から供給業者組織(provider organisation)に委託される場合などである。
【0007】
現在のワークフロー管理システムでは、異なる関与組織がプロセスを全体として、すなわち、局所的に行われるプロセスの各部分だけでなく他の組織で行われるプロセスの各部分にも及ぶ進捗状況を追跡することができない。たとえば、現在のワークフロー管理システムでは、供給業者組織で委託されているプロセスの進捗状況を顧客組織が追跡することはできない。
【0008】
【課題を解決するための手段】
上記のような現況技術に鑑みて、本発明の目的は、現在のワークフロー管理システムの限界を克服することである。
【0009】
具体的には、本発明の目的は共通の分散されたワークフローに関与する異なるエンティティ(entity)の連携を向上させることである。
【0010】
本発明によると、上記および他の目的は、それぞれのワークフロー管理システムが分散ワークフローの各ワークフロー部分を管理する、少なくとも2つの別個の関与エンティティに分散されたワークフローを各エンティティにおけるそれぞれのコンピュータ・ベースのワークフロー管理システムによって達成された。
【0011】
ワークフロー管理システムによって参照として使用される分散ワークフローの共通仕様を定義する。この共通ワークフロー仕様では、いずれのワークフロー管理システムがいずれのワークフロー部分の管理を担当するかを規定する。
【0012】
さらに、各ワークフロー管理システム内で分散ワークフローのそれぞれのイメージを作成する。
【0013】
共通ワークフロー仕様に基づいて、一方のエンティティのワークフロー管理システムに、他方のエンティティのワークフロー管理システムによって管理されているワークフロー部分の進捗状況が通知される。
【0014】
通知されたワークフロー管理システムでは、分散ワークフロー・イメージ上の進捗状況の表示が、他方のエンティティのワークフロー管理システムによって管理されているワークフロー部分の進捗状況に従って更新される。
【0015】
本発明の特徴および利点は、本発明の実施形態の詳細な説明を読めば明らかになろう。この実施形態は、非限定的な例として示すものであり、添付図面を参照しながら説明する。
【0016】
【発明の実施の形態】
図面を参照すると、図1には共通業務プロセスの実行に関与する2つの組織ORG1、ORG2の超高水準図が示されている。たとえば、この2つの組織は同じ企業または会社の対等組織であり、各組織は共通業務プロセスのそれぞれの部分の実行を担当している。あるいは、一方の組織、たとえば組織ORG1が顧客組織であり、業務プロセスの全部または一部の実行を供給業者組織である組織ORG2に委託している。説明を簡単にするためにこの例では2つの組織のみについて検討するが、本発明は共通業務プロセスの実行に関与する組織が3つ以上である場合にも容易に適用される。
【0017】
この業務プロセスの実行に関与する各組織ORG1、ORG2(以下、単に関与組織と呼ぶ)は、業務プロセスのそれぞれの部分の管理のためにそれぞれのワークフロー管理システムWfMS1、WfMS2を有する。具体的には、各関与組織ORG1、ORG2におけるそれぞれのワークフロー管理システムWfMS1、WfMS2はその組織のそれぞれのデータ処理システム上で稼働するコンピュータ・ベースの管理システムである。各組織ORG1、ORG2のデータ処理システムは、1台、またはより一般的には数台のパーソナル・コンピュータまたはワークステーションを含み、数台の場合にはローカル・エリア・ネットワーク(LAN)、ワイド・エリア・ネットワーク(WAN)などのデータ通信ネットワークを介して相互接続されており、組織が地理的に異なる場所に分散している場合にはインターネットを介して相互接続されている。
【0018】
各関与組織ORG1、ORG2のワークフロー管理システムWfMS1、WfMS2は、従来、ワークフロー管理システム・サーバWfMS1_S、WfMS2_Sを含み、これらを以下では単にワークフロー・サーバと呼ぶ。ワークフロー・サーバWfMS1_S、WfMS2_Sは、ワークフロー管理システムWfMS1、WfMS2のサーバとして動作するデータ処理システムの専用または汎用のパーソナル・コンピュータまたはワークステーション上で稼働するサーバ・コンピュータ・アプリケーションである。ワークフロー・サーバWfMS1_S、WfMS2_Sは、業務プロセスのそれぞれの部分の実行の状態に関する情報を更新し、永続的に維持する。状態変更はワークフローにおける操作によって決まる。
【0019】
ワークフロー管理システムにより、業務プロセスを、データ処理システムによって直接サポートされるように、統語構造単位(syntactical unit)としてモデリングすることができる。業務プロセスのモデルが作成された後は、企業内または会社内で行われる同様のプロセスのクラスのテンプレートを構成することになる。このプロセス・テンプレートは、データ処理システムによってインスタンス化し、解釈することができ、業務プロセスを行うのに必要な作業ステップの個々のシーケンスを判断することができる。作業ステップのシーケンスは、プロセス・テンプレートのインスタンス化のコンテキストに依存することになる。プロセス・テンプレートのインスタンスとその解釈が、個々のプロセスを表す。プロセス・テンプレートの基本要素をアクティビティと呼ぶ。アクティビティは、意味論的(semantical)エンティティとみなすことができる業務アクションを表す。プロセス・テンプレートは、ワークフロー・アクティビティと、その実行順序と割り当てられる資源とを記述する。図1に略図で示すように、ワークフロー・サーバWfMS1_S、WfMS2_Sは、(たとえば、ワークフロー管理システムのサーバとして機能するパーソナル・コンピュータまたはワークステーションのハード・ディスクに)複数のプロセス・テンプレートPT1、PT2、..を記憶する。プロセス・テンプレートPT1のプロセス・インスタンスPI1(PT1)が、ワークフロー・サーバWfMS1_S上で稼働している様子も略図で示されており、同じプロセス・テンプレートPT1の対応するプロセス・インスタンスPI1’(PT1)がワークフロー・サーバWfMS2_S上で稼働している。
【0020】
各関与組織ORG1、ORG2では、ワークフロー・サーバWfMS1_S、WfMS2_Sが、それぞれのデータ処理システム、たとえばワークフロー・サーバが稼働しているのと同じサーバ・コンピュータまたはワークステーション上で稼働しているそれぞれの状態シャドウイング・エンジンSSE1、SSE2と対話する。
【0021】
また、各関与組織ORG1、ORG2では、複数のワークフロー管理システム・クライアントWfMS1_C、WfMS2_C(以下、単にワークフロー・クライアントと呼ぶ)が、それぞれの状態シャドウイング・エンジンSSE1、SSE2が備えるインタフェースを介して、ワークフロー・サーバWfMS1_S、WfMS2_Sと対話している。ワークフロー・クライアントWfMS1_C、WfMS2_Cは、データ処理システムのパーソナル・コンピュータまたはワークステーションで稼働するクライアント・コンピュータ・アプリケーションである。組織ORG1、ORG2内のワークフロー管理システムWfMS1、WfMS2のユーザUa、Ub、Uc、Udは、ワークフロー・クライアントWfMS1_C、WfMS2_Cを使用して、所属する組織のワークフロー管理システムWfMS1、WfMS2と対話することができる。
【0022】
ワークフロー・サーバWfMS1_S、WfMS2_Sは、インタフェースWfMS1_S、WfMS2_Sを備え、それによって組織ORG1、ORG2内のユーザUa、Ub、Uc、Udがワークフロー・クライアントWfMS1_C、WfMS2_Cを介して操作して、それぞれのワークフロー・サーバにロンオンし、その組織で実行されているアクティビティの状態(たとえばSTART、TERMINATE、COMPLETE)を読み取り、場合によってはそれに変更を加えることができる。異なるユーザがそれぞれのユーザ識別子UIDa、UIDb、UIDc、UIDdを持ち、それによってワークフロー・クライアントWfMS1_C、WfMS2_Cがワークフロー・サーバWfMS1_S、WfMS2_Sと対話してワークフロー管理システムの状態の読取りと変更を行うことができる。これらの異なるユーザ識別子には異なる特権レベルを割り当てることができ、それによって異なるユーザが異なる特権レベルでワークフロー管理システムと対話することができる。たとえば、ユーザ識別子UIDaを持つユーザUaには、ワークフロー管理システムWfMS1の状態の読取りと変更を行う特権を割り当てることができ、識別子UIDbを持つユーザUbには、より低い特権が割り当てられ、ワークフロー管理システムWfMS1の状態の読取りのみを行うことができる。
【0023】
2つの組織ORG1、ORG2の状態シャドウイング・エンジンSSE1、SSE2は互いに対話する。この対話は、LAN、WAN、インターネットなど、2つの組織ORG1、ORG2のデータ処理システムに任意の好適なデータ通信インフラストラクチャDCIを接続することによって可能になる。
【0024】
各状態シャドウイング・エンジンSSE1、SSE2は、状態シャドウイング機構を実現し、それによって共通業務プロセスの実行に関与する組織のうちの1つの組織のユーザが他の関与組織内のワークフローの進展を追跡することができる。たとえば、状態シャドウイング機構によって、組織ORG1内のワークフロー管理システムWfMS1のユーザUa、Ubは、組織ORG2内のワークフローの進展を追跡することができ、また、その逆も可能である。
【0025】
具体的には、状態シャドウイング・エンジンSSE1、SSE2によって実現された状態シャドウイング機構によって、各関与組織ORG1、ORG2のワークフロー管理システムWfMS1、WfMS2内に、共通業務プロセスのうちの他の組織によって実行されている部分の内部複製、すなわちシャドウを作成することができる。
【0026】
共通業務プロセスのそれぞれの部分の実行中に、関与組織の1つ、たとえば組織ORG2によってアクションが行われると、ローカルのワークフロー管理システムが状態を変更し、それぞれの状態シャドウイング・エンジンを介して、他の関与組織、たとえば組織ORG1のワークフロー管理システムに、その状態変更を通知するメッセージを送る。この、他の関与組織の状態シャドウイング・エンジンはメッセージを受け取り、メッセージは、対応する状態変更を生じさせるのに適した形態に変換され、それによってローカル・ワークフロー管理システムは組織ORG2のワークフロー管理システムの状態を複製することができる。
【0027】
本発明の一実施形態では、状態シャドウイング・エンジンSSE1、SSE2は、付随するワークフロー・サーバWfMS1_S、WfMS2_Sの既存のインタフェースWfMS1_SI、WfMS2_SIを便宜上利用してそれらのサーバと対話する。このために、状態シャドウイング・エンジンSSE1、SSE2には、適切な高レベルの特権を持つそれぞれのユーザ識別子UIDx、UIDyが割り当てられる。状態シャドウイング・エンジンSSE1、SSE2は、それぞれのワークフロー・サーバWfMS1_S、WfMS2_Sにログオンするのにこのユーザ識別子UIDx、UIDyを使用する。したがって、状態シャドウイング・エンジンは、それぞれのワークフロー・サーバから見ればワークフロー・クライアントと見なされる。
【0028】
図2に、本発明の実施形態による、状態シャドウイング・エンジンの主構成要素の機能ブロック図を概略的に示す。
【0029】
総称的にSSEで示すワークフロー管理システムWfMSの一部である状態シャドウイング・エンジンは、状態シャドウイング・アルゴリズム実施部SH_ALGと、ワークフロー管理システム・インタフェース・シミュレーション部WfMS_ISCと、ワークフロー管理システム・インタフェース適応部WfMS_IAC、シャドウ・テーブル記憶部SH_TAB_STと、管理インタフェース部MG_INTと、通信部SE_SE_COMとを備える。
【0030】
ワークフロー管理システム・インタフェース・シミュレーション部WfMS_ISCによって、状態シャドウイング・エンジンSSEは、ワークフロー・クライアントの下で稼働する1つまたは複数のワークフロー・アプリケーションWf_APPとインタフェースすることができる。インタフェース・シミュレーション部WfMS_ISCは、図1のWfMS1_SI、WfMS2_SIなどの標準ワークフロー・サーバ・インタフェースを実現し、シミュレートする。このインタフェースにより、ワークフロー・アプリケーションWf_APPはワークフロー・サーバWfMS_Sと、従来のようにしてインタフェースすることができる。具体的には、インタフェース・シミュレーション部WfMS_ISCは、従来のワークフロー・サーバ・インタフェースと同じ標準機能を、同じ形態でサポートする。この機能セットには、たとえば、MQWF、FileNet、Staffwareなどの従来のワークフロー管理システムのWFMC IF2やOMG Workflow Facility、機能インタフェースなどの、標準機能セットが含まれる。
【0031】
ワークフロー管理システム・インタフェース適応部WfMS_IACは、状態シャドウイング・アルゴリズム実施部SH_ALGが使用するプロセス管理関数を、ワークフロー・サーバWfMS_Sがサポートする関数にマップする。具体的には、マップされた関数は、特定のワークフロー管理システムのものであるか、標準関数セットに属するものであるかのいずれかであることができる。
【0032】
状態シャドウイング・アルゴリズム実施部SH_ALGは、状態シャドウイング・エンジンの中核である。状態シャドウイング・アルゴリズム実施部SH_ALGは、シャドウ・テーブル記憶部SH_TAB_STにアクセスする。この記憶部にはシャドウ・テーブルが永続的に記憶され、このテーブルに基づいて状態シャドウイング・エンジンが動作する。シャドウ・テーブル記憶部SH_TAB_STは、たとえば、ワークフロー管理システムのサーバとして機能するパーソナル・コンピュータまたはワークステーションのハード・ディスクである。
【0033】
管理インタフェース部MG_INTは、状態シャドウイング・エンジンSSEの外部にある1つまたは複数の管理アプリケーション部MG_APPが、シャドウ・テーブルの読取りや書込みのためにシャドウ・テーブル記憶部SH_TAB_STにアクセスすることができるようにする。管理アプリケーション部MG_APPは、たとえば、ワークフロー管理システムのサーバとして機能するパーソナル・コンピュータまたはワークステーションと同一または別個のパーソナル・コンピュータまたはワークステーション上で稼働するコンピュータ・アプリケーションであり、許可されたユーザがシャドウ・テーブル記憶部SH_TAB_STにアクセスすることができるようにする。
【0034】
通信部SE_SE_COMは、状態シャドウイング・エンジンSSEが、他の関与組織のワークフロー管理システム内の他の状態シャドウイング・エンジンと、データ通信基盤DCIを介して対話することができるようにする。
【0035】
図3に、本発明の一実施形態によるシャドウ・テーブルの略図を示す。シャドウ・テーブルは、ワークフロー管理システムWfMS1、WfMS2内の所与のプロセス・タイプをモデリングするプロセス・テンプレートPT1、PT2がインスタンス化されるたびに、関与組織ORG1、ORG2のうちの1つの組織の状態シャドウイング・エンジンSSE1、SSE2の状態シャドウイング・アルゴリズム実施部SH_ALGによって生成される。生成された後は、シャドウ・テーブルはそれぞれのシャドウ・テーブル記憶部SH_TAB_STに記憶される。
【0036】
本発明の一実施形態では、各プロセス・テンプレートごとにシャドウ・テーブル・テンプレートが生成される。シャドウ・テーブル・テンプレートは、管理アプリケーション部MG_APPを使用して生成され、管理インタフェース部MG_INTを介してワークフロー管理システムWfMSにロードされてシャドウ・テーブル記憶部部SH_TAB_STに記憶される。シャドウ・テーブル・テンプレートには、所与のプロセス・テンプレートがインスタンス化されたことを検出したときに、状態シャドウイング・アルゴリズム実施部SH_ALGによってシャドウ・テーブル・テンプレートのインスタンス、すなわちシャドウ・テーブルがどのように生成されるかを表す記述が含まれる。
【0037】
具体的には、図3にSH_TAB1(PT1)で総称的に示されているシャドウ・テーブルは、ワークフロー管理システムWfMS1においてプロセス・テンプレートPT1がインスタンス化されると、状態シャドウイング・エンジンSSE1によって作成され、ぞれぞれのシャドウ・テーブル記憶部SH_TAB_STに記憶される。プロセス・テンプレートPT1のインスタンス化によって、プロセス・インスタンスPI1(PT1)が作成される。一例に過ぎないが、プロセス・インスタンスPI1(PT1)に対応する個別のプロセスが、A1、A2、A3、A41、A42、A5、A6、A7という名称の8個のアクティビティを含むものとする。A1、A2、A5、およびA7という名称のアクティビティは、組織ORG1内で行われ、A3、A41、A42、およびA6という名称のアクティビティは組織ORG2内で行われるものとする。アクティビティA41およびA42は、いずれかが選択されるものとする。また、プロセス・テンプレートPT1で指定されているアクティビティの実行順序は、A1−>A2−>A3−>A41またはA42−>A5−>A6−>A7であるものとする。プロセス・インスタンスPI1(PT1)を構成するアクティビティの数、タイプ、および実行順序は、通常はコンテキストに依存する。すなわち、プロセス・テンプレートPT1のインスタンス化のコンテキストに依存することに注目されたい。
【0038】
シャドウ・テーブルSH_TAB1(PT1)には、プロセス・インスタンスPI1(PT1)のアクティビティと同数の項目ENTRY1〜ENTRY8がある。シャドウ・テーブルSH_TAB1(PT1)のいずれの項目ENTRY1〜ENTRY8にも3つのフィールドACT_NA、SH_TYP、NOT_SEがある。第1のフィールドACT_NAには、、アクティビティのうちのそれぞれ1つのアクティビティの名称A1〜A8または一般にアクティビティ識別子が入れられる。第2のフィールドSH_TYPには、アクティビティ分類子NUL、LOC、REM、OUTが入れられ、それによって、アクティビティが属するクラスを状態シャドウイング・アルゴリズム実施部SH_ALGが識別することができる。第3のフィールドNOT_SEには、アクティビティが属するクラスに応じて、アクティビティ実行要求または通知を受け渡しする状態シャドウイング・エンジンまたは他の関与組織のいずれかのリストが入れられる。
【0039】
アクティビティの4つのクラスを示す。
この例のアクティビティA3、A41、A42、A6など、アクティビティ分類子REM(「リモート・シャドウ」)で識別されるアクティビティの第1のクラスには、リモートで実行される(以下、単にリモートと言う)アクティビティ、すなわち、他の関与組織ORG2内でそれぞれのワークフロー管理システムWfMS2の制御下で行われるアクティビティが含まれ、その実行の状態は、組織ORG1のワークフロー管理システムWfMS1でローカルにシャドウイングされる。アクティビティがリモートに分類される場合、第3のフィールドNOT_SEには、そのアクティビティの実行を管理するワークフロー管理システムWfMS2に関連づけられた状態シャドウイング・エンジンSSE2のアドレスADD(SSE2)を表す情報が入れられる。
【0040】
この例のアクティビティA5など、アクティビティ分類子LOC(「ローカル・シャドウ」)で識別されるアクティビティの第2のクラスには、ローカルで実行される(以下、単にローカルと言う)アクティビティ、すなわち、組織ORG1内でワークフロー管理システムWfMS1の制御下でローカルで行われるアクティビティが含まれる。このようなローカル・アクティビティの実行は、他方の関与組織ORG2内のワークフロー管理システムによってシャドウイングされる。アクティビティがローカルとして分類される場合、シャドウ・テーブルの対応する項目のフィールドNOT_SEには、状態シャドウイング・エンジンSSE1によって送信されるローカル・アクティビティの実行の結果による状態変更を通知するワークフロー管理システムWfMS2の状態シャドウイング・エンジンSSE2のアドレスADD(SSE2)を表す情報が入れられる。より一般的には、複数の関与組織がある場合、フィールドNOT_SEには、他のすべての関与組織の状態シャドウイング・エンジンのアドレスが入れられる。
【0041】
この例のアクティビティA1やA7など、アクティビティ分類子NUL(「ヌル・シャドウ」)で識別される第3のアクティビティ・クラスには、組織ORG1内でワークフロー管理システムWfMS1の制御下でローカルに実行され、他の関与組織ORG2のワークフロー管理システムWfMS2内ではシャドウイングされないアクティビティが含まれる。この場合、状態シャドウイング・エンジンSSE2(より一般的には、他のすべての関与組織の状態シャドウイング・エンジン)にはこれらのアクティビティの実行によって生じる状態変更を通知する必要がないため、フィールドNOT_SEは空(VOID)である。
【0042】
この例のアクティビティA2など、アクティビティ分類子OUT(「委託シャドウ」)によって識別される第4のアクティビティ・クラスには、シャドウイングされるプロセス部分の始めを決定するアクティビティが含まれる。対応するシャドウ・テーブル項目のフィールドNOT_SEには、共通業務プロセスの実行に関与する他の組織ORG2の状態シャドウイング・エンジンSSE2のアドレスADD(SSE2)が入れられる。このアドレスは、他の関与組織ORG2のワークフロー管理システムWfMS2に、プロセス・テンプレートPT1の新しいシャドウ・プロセス・インスタンスPI1(PT1)が生成されたことを通知するために使用される。
【0043】
図4に、シャドウ・テーブルSH_TAB2(PT1)を示す。このテーブルは、状態シャドウイング・エンジンSSE1から上記の通知を受け取ったときにワークフロー管理システムWfMS2がプロセス・テンプレートPT1をインスタンス化すると、状態シャドウイング・エンジンSSE2によって作成され、それぞれのシャドウ・テーブル記憶部SH_TAB_STに記憶される。シャドウ・テーブルSH_TAB2(PT1)には、組織ORG1で行われて組織ORG2でシャドウイングされるか、または組織ORG2で行われて組織ORG1でシャドウイングされるアクティビティ、すなわちこの例のA3、A41、A42、A5、およびA6のみが含まれている。A1やA7など、組織ORG1で行われ、組織ORG2のワークフロー管理システムWfMS2ではシャドウイングされないNULとして分類されるアクティビティは、シャドウ・テーブルSH_TAB2(PT1)には含まれない。プロセス・テンプレートPT1には、組織ORG2内で実行され、組織ORG1のワークフロー管理システムWfMS1ではシャドウイングされないアクティビティも含めることができることに注目されたい。また、シャドウ・テーブルSH_TAB1(PT1)でREM(リモート・アクティビティ)として分類され、組織ORG2に割り当てられているアクティビティ(シャドウ・テーブルの対応する項目のフィールドNOT_SE内のADD(SSE2))は、シャドウ・テーブルSH_TAB(PT1)ではLOC(ローカル・アクティビティ)として二様に分類され、その逆も行われることがわかる。
【0044】
プロセス・テンプレートPT1のプロセス・インスタンスPI1(PT1)のワークフローの略図を示す図5と、いずれかの状態シャドウイング・エンジンによって行われるアクションの流れの概略図を示す図7を参照しながら、状態シャドウイング機構について、以下に説明する。アクティビティA1はプロセスの開始アクティビティであり、アクティビティA7は終了アクティビティであるものとする。
【0045】
状態シャドウイング・エンジンSSE1は、割り当てられたユーザ識別子UIDxを使用して、ワークフロー・サーバWfMS1_Sに周期的にログオンし、組織ORG1のワークフロー管理システムWfMS1によってプロセス・テンプレートがインスタンス化されたか否かを管理し、個別のプロセス、またはプロセス・インスタンスを生成する(図7のブロック501、503、505、および507)。所与の時点で、状態シャドウイング・エンジンSSE1がプロセス・テンプレートPT1がインスタンス化され、それによってプロセス・インスタンスPT1(PT1)が生成されたことを検出するものとする。これに応答して、状態シャドウイング・エンジンSSE1の状態シャドウイング・アルゴリズム実施部SH_ALGが、図3のシャドウ・テーブルSH_TAB1(PT1)を生成し(ブロック509)、それぞれのシャドウ・テーブル記憶部SH_TAB_STに記憶する(ブロック511)。
【0046】
ワークフロー管理システムWfMS1のワークフロー・サーバWfMS1_Sの制御下で、開始アクティビティA1が探索され、それぞれの割当て資源(たとえば作業チーム)が判断され、アクティビティA1が、その作業チームのうちの選択された作業者の作業リストに登録される。選択された作業チームに属するユーザが(各自のワークフロー・クライアントWfMS1_Cを介して)このアクティビティを選択すると、アクティビティA1が実行され、作業リストから除去される。アクティビティA1の実行によって結果が生じ、アクティビティの終了条件となる。このアクティビティA1の終了条件は、ワークフロー・サーバWfMS1_Sによって評価され、適切であれば、アクティビティA1は完了したとみなされる。
【0047】
状態シャドウイング・エンジンSSE1は、ワークフロー・サーバWfMS1_Sに周期的にログオンしてプロセス・インスタンスPI1(PT1)の実行の状態を読み取り、状態変更が起こったか否か検証する(ブロック513、515、517、および519)。開始アクティビティA1は、シャドウ・テーブルSH_TAB1(PT1)ではNULと分類されているため、状態シャドウイング・エンジンSSE1は、アクティビティA1の実行に関係するワークフロー管理システムWfMS1の状態変更を、他方の関与組織ORG2のワークフロー管理システムWfMS2の状態シャドウイング・エンジンSSE2には通知しない(ブロック521)。
【0048】
状態シャドウイング・エンジンは、インスタンス化されたプロセスPI1(PT1)の実行の状態の読取りを続ける。アクティビティA1が完了した後は、ワークフロー管理システムWfMS1のワークフロー・サーバWfMS1_Sが、ワークフロー内で次に実行するアクティビティA2を探し出す。状態シャドウイング・エンジンSSE1内の状態シャドウイング・アルゴリズム実施部SH_ALGは、シャドウ・テーブルSH_TAB1(PT1)を参照し、アクティビティA2がOUTとして分類されていることを検知する(ブロック523)。これによって、状態シャドウイング・エンジンSSE1は、関与組織ORG2のワークフロー管理システムWfMS2内の状態シャドウイング・エンジンSSE2に、通知NSPI(PT1,PI1)(「プロセス・テンプレートPT1の新しいシャドウ・プロセス・インスタンスPI1」)を送る(ブロック525)。この通知は、アクティビティA2に対応するシャドウ・テーブルSH_TAB1(PT1)項目ENTRY2のフィールドNOT_SEに格納された状態シャドウイング・エンジンSSE2のアドレスADD(SSE2)を使用して、通信部SE−SE_COMを介し、2つの組織ORG1、ORG2内のデータ処理システムを接続するデータ通信基盤DCIを介して、送られる。
【0049】
状態シャドウイング・エンジンSSE1と同様に、状態シャドウイング・エンジンSSE2は、割り当てられたユーザ識別子UIDyを使用してワークフロー管理システムWfMS2のワークフロー・サーバWfMS1_Sに周期的にログオンする(ブロック501、503、および505)。状態シャドウイング・エンジンSSE2が通知NSPI(PT1,PI1)を受け取ると(ブロック527)、状態シャドウイング・エンジンSSE2は、ワークフロー・サーバWfMS2_Sにログオンし、プロセス・テンプレートPT1のプロセス・インスタンスPI1’(PT1)を生成させる(ブロック529、531、および533)。プロセス・インスタンスPI1’(PT1)には、業務プロセスのうち、組織ORG2内で実行し、組織ORG1ではシャドウイングする部分またはその逆の部分を構成するアクティビティと制御フローが含まれる。この例では、プロセス・インスタンスPI1’(PT1)は、アクティビティA3、A41、A42、A5、およびA6と、それに付随する制御フローを含む。
【0050】
ワークフロー・サーバWfMS2_Sによるプロセス・テンプレートPT1のインスタンス化PI1’(PT1)により、対応する状態シャドウイング・エンジンSSE2が、図4に示すシャドウ・テーブルSH_TAB2(PT1)を生成し(ブロック509)、それを各自のシャドウ・テーブル記憶部SH_TAB_STに記憶する(ブロック511)。
【0051】
このようにして、(図6に示す)業務プロセスのコモン・ビューCW(PI1)が定義され、両方の関与組織ORG1、ORG2のワークフロー管理システムWfMS1、WfMS2によって承認される。
【0052】
ワークフロー管理システムWfMS2は、プロセス・インスタンスPI1’(PT1)内の開始アクティビティA3を探索し、その実行に割り当てられた資源を探索して、アクティビティA3を選択された作業者チームの作業リストに登録する。
【0053】
状態シャドウイング・エンジンSSE2の状態シャドウイング・アルゴリズム実施部SH_ALGは、ワークフロー・サーバWfMS2_Sに周期的にログオンし続け(ブロック513〜519)、アクティビティA3の実行の開始に関するプロセス・インスタンスPI1’(PT1)の実行状態の変化を検出する。状態シャドウイング・エンジンSSE2内の状態シャドウイング・アルゴリズム実施部SH_ALGは、シャドウ・テーブルSH_TAB2(PT1)を参照して、アクティビティA3がLOCとして分類されていることを検出し(ブロック535)、状態シャドウイング・エンジンSSE1(シャドウ・テーブルSH_TAB2(PT1)の項目ENTRY1のフィールドNOT_SEにアドレスADD(SSE1)が格納されている)に、通知UPD(PI1,A3,START)(「更新:プロセス・インスタンスPI1(PT1)の開始済みアクティビティA3」)を送る。状態シャドウイング・エンジンSSE1は、通知UPD(PI1,A3、START)を受け取り(ブロック537)、割り当てられたユーザ識別子UIDxを使用してワークフロー管理システムWfMS1のワークフロー・サーバWfMS1_Sにユーザとしてログオンする(ブロック539)。ログオンされると、状態シャドウイング・エンジンSSE1は、ワークフロー・サーバWfMS1_Sに、それぞれのインタフェース・アダプタ部WfMS_IACを介してワークフロー・サーバWfMS1にアクティビティA3を開始させるような管理コマンドを送り、それによってワークフロー管理システムWfMS1の状態を変更する(ブロック541)。次に、状態シャドウイング・エンジンSSE1がログオフする(ブロック543)。
【0054】
組織ORG2のそのチームでアクティビティA3の実行を担当する人が、それぞれのワークフロー・クライアントWfMS2_Cを介してアクティビティA3の完了を宣言するか、またはアクティビティ実施アプリケーションが正常に完了すると、状態シャドウイング・エンジンSSE2は状態シャドウイング・エンジンSSE1に通知UPD(PI1,A3.COMPL)(「更新:プロセス・インスタンスPI1(PT1)の完了済みアクティビティA3」)を送る。状態シャドウイング・エンジンSSE1はこの通知UPD(PI1,A3,COMPL)を受け取り、割り当てられたユーザ識別子UIDxを使用してワークフロー・サーバWfMS1_Sにログオンし、インタフェース・アダプタ部WfMS_IACを介して送られる管理コマンドによってワークフロー・サーバWfMS1_SがアクティビティA3を完了状態にさせるようにし、それによってワークフロー管理システムWfMS1の状態が変更される。
【0055】
アクティビティA3の実行の結果に応じて、ワークフロー管理システムWfMS2はアクティビティA42を探索し、それを選択されたチームの作業リストに登録する。
【0056】
状態シャドウイング・エンジンSSE2の状態シャドウイング・アルゴリズム実施部SH_ALGが、シャドウ・テーブルSH_TAB2(PT1)を参照してアクティビティA42がLOCとして分類されていることを検知し、状態シャドウイング・エンジンSSE1に通知UPD(PI1,A42,START)を送る。状態シャドウイング・エンジンSSE1は、この通知UPD(PI1,A42,START)を受け取り、割り当てられたユーザ識別子UIDxを使用してワークフロー・サーバWfMS1_Sにログオンする。ログオンされると、状態シャドウイング・エンジンSSE1がワークフロー・サーバWfMS1_SにアクティビティA42を開始させ、それによってワークフロー管理システムWfMS1の状態が変更される。
【0057】
組織ORG2のそのチームでアクティビティA42の実行を担当する人が、それぞれのワークフロー・クライアントWfMS2_Cを介して、アクティビティA42が完了したことを宣言するか、または、アクティビティ実施アプリケーションが正常に完了すると、状態シャドウイング・エンジンSSE2は状態シャドウイング・エンジンSSE1に通知UPD(PI1,A42,COMPL)を送る。状態シャドウイング・エンジンSSE1は、この通知を受け取り、割り当てられたユーザ識別子UIDxを使用してワークフロー・サーバWfMS1_Sにログオンし、ワークフロー・サーバWfMS1_SにアクティビティA42を完了状態にさせ、それによってワークフロー管理システムWfMS1の状態が変更される。
【0058】
次に、ワークフローの制御はワークフロー管理システムWfMS1に渡り、ワークフロー管理システムWfMS1はアクティビティ42が完了したことを検知し、組織ORG1内で次に実行するアクティビティA5を探索する。アクティビティA5は、組織ORG1内でその実行を担当するチームの作業リストに登録される。状態シャドウイング・エンジンSSE1の状態シャドウイング実施アルゴリズムSH_ALGが、シャドウ・テーブルSH_TAB1(PT1)を参照して、LOCとして分類されているアクティビティA5を検知し、状態シャドウイング・エンジンSSE2に通知UPD(PI1,A5,START)を送る。状態シャドウイング・エンジンSSE2は、この通知を受け取り、割り当てられたユーザ識別子UIDyを使用してワークフロー・サーバWfMS2_Sにログオンする。ログオンされると、状態シャドウイング・エンジンSSE2が、それぞれのインタフェース・アダプタ部WfMS_IACを介して、ワークフロー・サーバWfMS2_Sに対し、ワークフロー・サーバWfMS2_SにアクティビティA5を開始状態にさせる管理コマンドを送り、それによってワークフロー管理システムWfMS2の状態が変更される。
【0059】
アクティビティA5が完了すると、状態シャドウイング・エンジンSSE1が状態シャドウイング・エンジンSSE2に通知UPD(PI1,A5,COMPL)を送る。状態シャドウイング・エンジンSSE2はこの通知を受け取り、割り当てられたユーザ識別子UIDyを使用してワークフロー・サーバWfMS2_Sにログオンし、ワークフロー・サーバWfMS2_SがアクティビティA5を完了状態にさせるようにし、それによってワークフロー管理システムWfMS2の状態が変更される。
【0060】
ワークフローの制御はワークフロー管理システムWfMS2に戻り、ワークフロー管理システムWfMS2は、アクティビティA5が完了したものとして識別し、組織ORG2内で次に実行するアクティビティA6を探索する。アクティビティA6は、組織ORG2でその実行を担当するチームの作業リストに登録される。状態シャドウイング・エンジンSSE2の状態シャドウイング・アルゴリズム実施部SH_ALGが、シャドウ・テーブルSH_TAB2(PT1)を参照し、アクティビティA6がLOCとして分類されていることを検知し、状態シャドウイング・エンジンSSE1に通知UPD(PI1,A6,START)を送る。状態シャドウイング・エンジンSSE1はこの通知を受け取り、割り当てられたユーザ識別子UIDxを使用してワークフロー・サーバWfMS1_Sにログオンする。ログオンされると、状態シャドウイング・エンジンSSE1がワークフロー・サーバWfMS1_SにアクティビティA6を開始させ、それによってワークフロー管理システムWfMS1の状態が変更される。
【0061】
アクティビティA6が完了すると、状態シャドウイング・エンジンSSE2が状態シャドウイング・エンジンSSE1に通知UPD(PI1,A6,COMPL)を送る。状態シャドウイング・エンジンSSE1はこの通知を受け取り、割り当てられたユーザ識別子UIDxを使用してワークフロー・サーバWfMS1_Sにログオンし、ワークフロー・サーバWfMS1_SにアクティビティA6を完了状態にさせ、それによってワークフロー管理システムWfMS1の状態が変更される。
【0062】
このようにして、業務プロセスのシャドウイングされた部分が実施される。ワークフローの制御は再びワークフロー管理システムWfMS1に戻され、ワークフロー管理システムWfMS1は、この業務プロセスの最後のアクティビティである次のアクティビティA7を、組織ORG1でその実行を担当するチームの作業リストに登録する。状態シャドウイング・エンジンSSE1の状態シャドウイング・アルゴリズム実施部SH_ALGが、シャドウ・テーブルSH_TAB1(PT1)を参照し、アクティビティA7がNULとして分類されていることを検知し、状態シャドウイング・エンジンSSE2にそれ以上通知を送らない。
【0063】
上記の説明では状態シャドウイング・エンジン間で各アクティビティについて2種類の更新通知(アクティビティの開始と完了)のみが交換されているが、実行を担当する組織内の活動に対して行われる動作にそれぞれ1つの通知が関連づけられた、3種類以上の通知も考えられることがわかる。各通知に応答して、他の関与組織の状態シャドウイング・エンジンが、それぞれのワークフロー・サーバにログオンし、受け取った通知に対応する管理コマンドを供給する。
【0064】
異なる関与組織の状態シャドウイング・エンジン間で状態変更の通知を交換することによって、1つのワークフロー管理システムの状態が他のワークフロー管理システムで複製される。共通の業務プロセスの所与の部分の実行を担当していなくても、任意の組織がこのようにプロセスのそれぞれのローカル・シャドウを参照することによって、他の関与組織内で行われるアクティビティを追跡することができる。具体的には、これによっていずれの関与組織でも、他の関与組織内のワークフローを管理することができ、異なる関与組内のワークフローを同期させることができる。
【0065】
さらに、1つの組織によるローカル・アクティビティの実行を、異なる関与組織で実行されているリモート・アクティビティの状態に依存させることができる。たとえば、図5に戻って参照すると、組織ORG1内でのアクティビティA5の実行を組織ORG2内でのアクティビティA42の実行に依存させ、組織ORG2内でのアクティビティA6の実行を組織ORG1内でのアクティビティA5の実行に依存させることができる。
【0066】
業務プロセスの一部を供給業者組織(組織ORG2)に委託(アウトソース)する顧客組織(たとえば組織ORG1)のコンテキストでは、状態シャドウイング機構を設けることによって、供給業者組織はいくつかのアクティビティ(たとえば図5のアクティビティA5)を顧客組織に委託し戻すことができる。これは、業務プロセスが長期にわたり、複雑な場合や、いくつかのアクティビティおよび決定を、プロセスの主要委託部分を続行する前に顧客組織に戻す必要がある場合に好都合であると考えられる。
【0067】
また、シャドウイング機構を設けることによって、アクティビティの遠隔管理も可能になる。すなわち、第1の関与組織で実行されているリモート・アクティビティを、第2の関与組織で、第2の組織でローカルに実行されるアクティビティを通常管理するのと同様にして管理することができる。図8および図9に概略図で示し、図10にフローチャートを示すように、組織ORG1内のユーザUa、Ubが、ワークフロー管理システムWfMS1内のワークフロー・クライアントWfMS1_C上で稼働しているそれぞれのワークフロー・アプリケーションWf_APPを介して、所与のプロセス・テンプレートのプロセス・インスタンスPIiのアクティビティAjに対して動作OPhを行いたいものとする。状態シャドウイング・エンジンSSE1の状態シャドウイング・アルゴリズム実施部SH_ALGに動作要求(PIi,Aj,OPh)が、インタフェース・シミュレーション部WfMS_ISCを介して供給される。状態シャドウイング・アルゴリズム実施部SH_ALGは、この動作要求を受け取り(図10のブロック701)、シャドウ・テーブル記憶部SH_TAB_STに記憶されているプロセス・インスタンスのシャドウ・テーブルを参照して(ブロック703)、アクティビティAjのクラスを識別する(ブロック705、707、および709)。アクティビティAjがLOCまたはNULと分類されている場合、状態シャドウイング・アルゴリズム実施部SH_ALGは、ワークフロー・アプリケーションWf_APPがワークフロー・サーバWfMS1_Sにログインすることができるようにし、それによって動作要求(PIi,Aj、OPh)がインタフェース適応部WfMS_IACを介してワークフロー・サーバWfMS1_Sに転送される(ブロック711または713)。その結果、ワークフロー・サーバWfMS1_Sはその状態を動作OPhに変更する。さらに、アクティビティAjがLOCとして分類されている場合、状態シャドウイング・アルゴリズム実施部SH_ALGは他の関与組織ORG2に状態の変更を通知し(UPD(PIi,Aj、OPh)−ブロック715)、それによってワークフロー管理システムWfMS2はそれに応じて更新される。一方、アクティビティがREMとして分類されている場合、状態シャドウイング・アルゴリズム実施部SH_ALGは、他方の関与組織ORG2のワークフロー管理システムWfMS2内の状態シャドウイング・エンジンSSE2に、リモート動作実行要求EXRQ(PIi,Aj,OPh)を送り(ブロック717)、その動作が実行されたことを示す状態更新の通知を待つ(ブロック719)。着信リモート動作実行要求を検出すると(ブロック721)、状態シャドウイング・エンジンSSE2内の状態シャドウイング・アルゴリズム実施部SH_ALGが、そのシャドウ・テーブル記憶部SH_TAB_STに記憶されているシャドウ・テーブルを参照し(ブロック723)、アクティビティAjがLOCとして分類されていること、すなわち、組織ORG2にとってローカルであることを検証する(ブロック725)。結果が否定の場合、このリモート動作実行要求EXRQ(PIi,Aj,OPh)は無視され、肯定の場合は、状態シャドウイング・エンジンSSE2がワークフロー・サーバWfMS2_Sにログインして(ブロック727)、このリモート動作要求(PIi,Aj,OPh)を供給し(ブロック729)、その後、ログオフする(ブロック731)。ワークフロー・サーバWfMS2_Sは、ワークフロー管理システムWfMS2のワークフロー・クライアントWfMS2_C上で稼働しているワークフロー・アプリケーションWf_APPの1つから送られたかのようにアクティビティAjにその動作を適用し、それによってワークフロー管理システムWfMS2の状態が変更され、状態シャドウイング・エンジンSSE2が状態の変更をワークフロー管理システムWfMS1に通知する(UPD(PIi,Aj,OPh))。起こり得る矛盾は、以下のようにして解消される。状態シャドウイング・エンジンSSE1が、リモート動作実行要求EXRQ(PIi,Aj,OPh)を受け取る前に、ローカル・ワークフロー・アプリケーションWf_APPの1つから同じアクティビティAjに対する動作実行要求を受け取り、それによって、リモート動作実行要求EXRQ(PIi,Aj,OPh)で指定されている動作OPhをそれ以上実行することができないようにワークフロー管理システムWfMS2の状態が変更された場合、リモート・コマンド実行要求EXRQ(PIi,Aj,OPh)は無視される。言い換えると、矛盾を解消するために、1つの関与組織のワークフロー管理システムにとってローカルの動作実行要求が、他の関与組織から発行されたリモート動作実行要求よりも優先されるような方策を採用する。
【0068】
したがって、各ワークフロー管理システム内の状態シャドウイング・エンジンは、ワークフロー・クライアントやその他の管理アプリケーションなどのアプリケーションにとって参照モニタとなり、ワークフロー・サーバの従来のインタフェースと同じ機能を備える。この参照モニタは、管理動作の実行対象となるアクティビティの場所を判断する。アクティビティが、管理動作要求が発行された組織にとってローカルである場合、参照モニタは、管理動作をローカル・ワークフロー管理システムで行うことができるようにする。ローカルでない場合は、管理動作要求は、そのアクティビティの実行を担当する組織のワークフロー管理システムの参照モニタに転送される。起こり得る矛盾を解消する方策により、アクティビティの実行を担当する組織内のワークフロー管理システムが、リモート組織のワークフロー管理システムから送られた管理動作要求を無効化する権利を有すると規定する。
【0069】
共通業務プロセスのうち、その共通業務プロセスに関与する組織のうちの1つの組織の責任の下に実行される部分は、アクティビティまたは実行順序あるいはその両方の点で、すべてのワークフロー管理システム間で一致したプロセスのコモン・ビューとは異なることがわかる。図5およ図6を参照すると、これはたとえば、組織ORG2のワークフロー管理システムWfMS2で生成されたプロセス・インスタンスPI1’(PT1)が図6に示すプロセスのコモン・ビューを構成するものとは、異なるアクティビティを、異なる実行順序で含むことができるということを意味する。このような状況の一例を、図11に示す。図11には、プロセスのコモン・ビューCW(PI1)とは異なるプロセス・インスタンスPI1’(PT1)が図示されている。具体的には、プロセス・インスタンスPII’(PT1)は、アクティビティA10〜A14を含むプロセスのコモン・ビューCW(PI1)の内部表現を形成する。ワークフロー管理システムWfMS2内の状態シャドウイング・エンジンSSE2は、組織ORG2内で実行される実際のプロセスPI1’(PT1)の、プロセスCW(PI1)のコモン・ビューに対する適切なマッピングMAP2を実現する。このマッピングは、2つの関与組織ORG1およびORG2間でワークフローの進捗状況を通知するために交換されるメッセージが、プロセスのコモン・ビューと一致するように保証する必要がある。このようなマッピングは、たとえば、状態シャドウイング・エンジンSSE2内の状態シャドウイング実施アルゴリズム部SH_ALGによって実現することができる。具体的には、図4に示すシャドウ・テーブルSH_TAB2(PT1)を修正して、プロセスのコモン・ビューのアクティビティA3、A41、A42、A5、およびA6を組織ORG2の責任下で実行される実際のアクティビティに変換することができるようにする。あるいは、ワークフロー管理システムWfMS1内の状態シャドウイング・エンジンSSE1によってマッピングを実現することもできる。
【0070】
より一般的には、各関与組織のワークフロー管理システムは、業務プロセスのコモン・ビューを表すそれぞれの内部表現を有することができ、それぞれの状態シャドウイング・エンジンは、それぞれの内部プロセス表現の、プロセスのコモン・ビューに対する適切なマッピング(図11のMAP1およびMAP2)を実現することができる。プロセスのコモン・ビューとマッピングを設けたことによって、いずれの関与組織も、各組織の内部の必要にとって最適になるように選定された共通業務プロセスのそれぞれの内部表現を持つことができると同時に、ワークフロー進捗状況に関する情報を異なる関与組織間で交換することができる。
【0071】
本発明は、コンピュータ・ベースのプロセス管理システムの制御下で業務プロセスの実行に複数の組織が関与する場合一般に適用可能である。状態シャドウイング機構によって、すべての関与組織が業務プロセスの進捗状況を追跡することができる。
【0072】
また、本発明は、組織内の異なるエンティティ、たとえば異なるチームまたは部門が、それぞれのワークフロー管理システムに依存して業務プロセスの実行に関与する単一の組織内での業務のプロセス管理にも適用可能である。より一般的には、業務プロセスの管理に関与する異なるエンティティは、同じ組織に属するエンティティと、異なる組織に属するエンティティとを含むことができる。
【0073】
本発明をいくつかの実施形態を用いて開示したが、特許請求の範囲で規定されている本特許の範囲から逸脱することなく、上述の実施形態に加えられるいくつかの修正および本発明の他の実施形態も可能であることは、当業者には明らかである。たとえば、これがすべてではないが、ワークフロー管理システムは、異なる通信プロトコルを採用することができる。また、異なるログインおよびログオフ方式も考えることができる。状態変更事象に関する情報は、それぞれの状態シャドウイング・アルゴリズム実施部がワークフロー・サーバを定期的にポーリングすることによって検出するのではなく、ワークフロー・サーバによってそれぞれの状態シャドウイング・アルゴリズム実施部に伝えることができる。
【図面の簡単な説明】
【図1】各エンティティが、状態シャドウイング機構を実現する本発明の一実施形態によるコンピュータ・ベースのワークフロー管理システムを有する、共通の業務プロセスの実行に関与する2つのエンティティ、例えば、2つの組織を示す概略図である。
【図2】状態シャドウイング機構を実現するために各ワークフロー管理システムに設けられた本発明の一実施形態による状態シャドウイング・エンジンの主構成要素を示す機能ブロック図である。
【図3】業務プロセスの一例の実行において状態シャドウイング機構を実現するための、図1に示す2つの組織のうちの一方の組織の状態シャドウイング・エンジンによって生成されたシャドウ・テーブルを示す概略図である。
【図4】他方の組織の状態シャドウイング・エンジンによって生成された、対応するシャドウ・テーブルを示す概略図である。
【図5】例示の業務プロセスの実行中の2つのワークフロー管理システムの状態の進展を示す図である。
【図6】状態シャドウイング機構により2つの関与組織のワークフロー管理システムが共有する例示の業務プロセスのコモン・ビューを示す図である。
【図7】状態シャドウイング・エンジンによって実施される状態シャドウイング・アルゴリズムを示すフローチャートである。
【図8】異なるワークフロー・システム管理操作の経路設定を示す概略図である。
【図9】異なるワークフロー・システム管理操作の経路設定を示す概略図である。
【図10】異なる管理操作を扱う場合の状態シャドウイング・エンジンの動作を示すフローチャートである。
【図11】各ワークフロー管理システムが、上記プロセス共通図とは異なる例示の業務プロセスの内部表現を有する状況を示す略図である。
【符号の説明】
ORG1 組織
ORG2 組織
WfMS1 ワークフロー管理システム
WfMS2 ワークフロー管理システム
WfMS1_S ワークフロー・サーバ
WfMS2_S ワークフロー・サーバ
PT2 プロセス・テンプレート
PT1 プロセス・テンプレート
PI1(PT1) プロセス・インスタンス
PI1’(PT1) プロセス・インスタンス
WfMS1_C ワークフロー管理システム・クライアント
WfMS2_C ワークフロー管理システム・クライアント
SSE1 状態シャドウイング・エンジン
SSE2 状態シャドウイング・エンジン
WfMS1_SI インタフェース
WfMS2_SI インタフェース
SH_ALG 状態シャドウイング・アルゴリズム実施部
WfMS_ISC ワークフロー管理システム・インタフェース・シミュレーション部
WfMS_IAC ワークフロー管理システム・インタフェース適応部
SH_TAB_ST シャドウ・テーブル記憶部
MG_INT 管理インタフェース部
SE−SE_COM 通信部
MG_APP 管理アプリケーション部
SH_TAB1(PT1) シャドウ・テーブル

Claims (3)

  1. 少なくとも第1および第2のエンティティの間で分散されたワークフローを管理するコンピュータ・ベースのシステムであって、
    前記分散ワークフローの第1のワークフロー部分を管理する前記第1のエンティティにおける第1のワークフロー管理システムと、
    前記分散ワークフローの第2のワークフロー部分を管理する前記第2のエンティティにおける第2のワークフロー管理システムとを含み、
    前記第1および第2のワークフロー管理システムが通信関係にあり、
    ワークフロー・サーバと少なくとも1つのワークフロー・クライアントとからそれぞれ構成される前記第1および第2のワークフロー管理システムの各々が、
    任意のワークフロー部分の管理を前記第1および第2のワークフロー管理システムのうちのいずれのワークフロー管理システムが担当するかを指定する、前記分散ワークフローの共通仕様を構成するアクティビティのテーブルと、
    前記分散ワークフローのイメージを生成する手段と、
    前記第1および第2のワークフロー管理システムの間で情報を交換し、前記第1および第2のエンティティのうちの一方のエンティティにおけるワークフロー管理システムに、それぞれの前記分散ワークフロー・イメージ上で、交換された前記情報に従って他方のエンティティにおけるワークフロー管理システムによって管理されている前記ワークフロー部分の進捗状況を更新させる手段とを含み、
    前記更新させる手段が、ワークフロー・クライアントとして前記ワークフロー・サーバと対話するように接続され、
    前記テーブルが、各アクティビティについて、当該アクティビティを当該テーブルに関連するワークフロー管理システムによってローカルで管理すべきローカル・アクティビティとしてまたは他のワークフロー管理システムによってリモートで管理すべきリモート・アクティビティとして分類するためのアクティビティ分類子を保持し、当該テーブルに関連する自ワークフロー管理システムによってローカルで管理すべき各ローカル・アクティビティについて、当該各ローカル・アクティビティの実行の状態に関する情報を伝達すべき他のワークフロー管理システムのアドレスを保持するとともに、当該他のワークフロー管理システムによってリモートで管理されるべき各リモート・アクティビティについて、当該各リモート・アクティビティの実行の管理を担当する当該他のワークフロー管理システムのアドレスを保持し、
    前記第1および第2のワークフロー管理システムの各々が、
    前記テーブルに保持されている前記アクティビティ分類子に従って前記ワークフロー・クライアントから発行されたアクティビティ管理コマンドを経路指定する監視手段をさらに含み、
    各アクティビティが前記監視手段に関連する前記テーブルにおいてローカル・アクティビティとして分類されている場合には、前記監視手段が前記アクティビティ管理コマンドを当該テーブルに関連する自ワークフロー管理システムにおける前記ワークフロー・サーバに経路指定し、それによって前記アクティビティ管理コマンドの実行が当該自ワークフロー管理システムにとってローカルで管理されるようにし、
    各アクティビティが前記監視手段に関連する前記テーブルにおいてリモート・アクティビティとして分類されている場合には、前記監視手段が前記アクティビティ管理コマンドを当該テーブルに保持されている前記アドレスに従って当該リモート・アクティビティの実行の管理を担当する前記他のワークフロー管理システムに転送する、コンピュータ・ベースのシステム。
  2. 前記第1および第2のワークフロー管理システムのうちの少なくとも1つが、前記共通ワークフロー仕様を前記分散ワークフローのそれぞれの前記分散ワークフロー・イメージにマッピングする手段をさらに含む、請求項1に記載のシステム。
  3. 前記第1および第2のエンティティが同じ組織または異なる組織に属する、請求項1に記載のシステム。
JP2003099974A 2002-04-11 2003-04-03 分散されたワークフローを管理するコンピュータ・ベースのシステム Expired - Fee Related JP3906176B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
EP02368039 2002-04-11

Publications (2)

Publication Number Publication Date
JP2004005550A JP2004005550A (ja) 2004-01-08
JP3906176B2 true JP3906176B2 (ja) 2007-04-18

Family

ID=28686029

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003099974A Expired - Fee Related JP3906176B2 (ja) 2002-04-11 2003-04-03 分散されたワークフローを管理するコンピュータ・ベースのシステム

Country Status (2)

Country Link
US (1) US20030195763A1 (ja)
JP (1) JP3906176B2 (ja)

Families Citing this family (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7814198B2 (en) * 2007-10-26 2010-10-12 Microsoft Corporation Model-driven, repository-based application monitoring system
US8417682B2 (en) * 2003-12-12 2013-04-09 International Business Machines Corporation Visualization of attributes of workflow weblogs
US20070061701A1 (en) * 2005-09-14 2007-03-15 Active Knowledge Ltd. Input suggestions based on prior business process consequences
JP2007299340A (ja) * 2006-05-08 2007-11-15 Hitachi Ltd 階層型ワークフローシステム
JP4395790B2 (ja) * 2006-11-07 2010-01-13 日本電気株式会社 ワークフロートラッキングシステム、統合管理装置、方法、プログラム及びそれを記録した情報記録媒体
US9183524B2 (en) * 2007-02-21 2015-11-10 Novell, Inc. Imaged-based method for transport and authentication of virtualized workflows
US20080201191A1 (en) * 2007-02-21 2008-08-21 Novell, Inc. Dynamic workflow resource authentication and discovery
US8024396B2 (en) * 2007-04-26 2011-09-20 Microsoft Corporation Distributed behavior controlled execution of modeled applications
JP2008305004A (ja) * 2007-06-05 2008-12-18 Ricoh Co Ltd 画像形成装置、アプリケーション実行方法及びアプリケーション実行プログラム
US7970892B2 (en) 2007-06-29 2011-06-28 Microsoft Corporation Tuning and optimizing distributed systems with declarative models
US8239505B2 (en) 2007-06-29 2012-08-07 Microsoft Corporation Progressively implementing declarative models in distributed systems
US8230386B2 (en) 2007-08-23 2012-07-24 Microsoft Corporation Monitoring distributed applications
US7926070B2 (en) 2007-10-26 2011-04-12 Microsoft Corporation Performing requested commands for model-based applications
US7974939B2 (en) 2007-10-26 2011-07-05 Microsoft Corporation Processing model-based commands for distributed applications
US8181151B2 (en) 2007-10-26 2012-05-15 Microsoft Corporation Modeling and managing heterogeneous applications
US8099720B2 (en) 2007-10-26 2012-01-17 Microsoft Corporation Translating declarative models
US8225308B2 (en) 2007-10-26 2012-07-17 Microsoft Corporation Managing software lifecycle
US20090327465A1 (en) * 2008-06-27 2009-12-31 Microsoft Corporation Distributed Configuration Orchestration for Network Client Management
EP2199960A1 (en) * 2008-12-17 2010-06-23 Accenture Global Services GmbH Manufacturing collaboration hub data exchange interface
SG166017A1 (en) * 2009-04-15 2010-11-29 Yokogawa Electric Corp Apparatus and method for configuring a workflow
US9715405B2 (en) 2013-09-23 2017-07-25 International Business Machines Corporation Efficient coordination across distributed computing systems
WO2016138615A1 (en) * 2015-03-02 2016-09-09 Microsoft Technology Licensing, Llc Table control for progressive workflow management
US10719365B2 (en) 2017-10-27 2020-07-21 International Business Machines Corporation Cognitive learning workflow execution
US10719795B2 (en) 2017-10-27 2020-07-21 International Business Machines Corporation Cognitive learning workflow execution
US10474977B2 (en) * 2017-10-27 2019-11-12 International Business Machines Corporation Cognitive learning workflow execution
US10713084B2 (en) 2017-10-27 2020-07-14 International Business Machines Corporation Cognitive learning workflow execution
US10552779B2 (en) 2017-10-27 2020-02-04 International Business Machines Corporation Cognitive learning workflow execution
US20190279126A1 (en) * 2018-03-07 2019-09-12 Optessa Inc. Generating a global workflow sequence for multiple workflow stages

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5923552A (en) * 1996-12-31 1999-07-13 Buildnet, Inc. Systems and methods for facilitating the exchange of information between separate business entities
US7039597B1 (en) * 1998-06-05 2006-05-02 I2 Technologies Us, Inc. Method and system for managing collaboration within and between enterprises
US7236939B2 (en) * 2001-03-31 2007-06-26 Hewlett-Packard Development Company, L.P. Peer-to-peer inter-enterprise collaborative process management method and system

Also Published As

Publication number Publication date
US20030195763A1 (en) 2003-10-16
JP2004005550A (ja) 2004-01-08

Similar Documents

Publication Publication Date Title
JP3906176B2 (ja) 分散されたワークフローを管理するコンピュータ・ベースのシステム
US6308163B1 (en) System and method for enterprise workflow resource management
US20120101866A1 (en) Service level agreement design and enforcement for outsourced call center
Muth et al. From centralized workflow specification to distributed workflow execution
US6006193A (en) Computer executable workflow control system
CN101454766A (zh) 组合软件服务的管理
US20030005406A1 (en) Method, system, and program for using objects in data stores during execution of a workflow
EP1577760A2 (en) Method and system for testing software development activity
US20020194045A1 (en) System and method for automatically allocating and de-allocating resources and services
US20070282782A1 (en) Method, system, and program product for managing information for a network topology change
US20100095268A1 (en) Managing complex dependencies in a file-based team environment
US9513874B2 (en) Enterprise computing platform with support for editing documents via logical views
KR20080080349A (ko) 복수의 워크플로 동시 지속 기법
US7877695B2 (en) Tailored object
US20120159424A1 (en) Distributed application manifest
US20130152106A1 (en) Managing events in a configuration of soa governance components
Montagut et al. The pervasive workflow: A decentralized workflow system supporting long-running transactions
Cheng An object-oriented organizational model to support dynamic role-based access control in electronic commerce applications
Pascalau et al. On maintaining consistency of process model variants
NZ539138A (en) Transaction processing system
Luo et al. CIMflow: a workflow management system based on integration platform environment
Chen et al. Reliable execution based on CPN and skyline optimization for web service composition
Guzek et al. Paramoise: Increasing capabilities of parallel execution and reorganization in an organizational model
Chowdhary et al. Enterprise integration and monitoring solution using active shared space
Kress et al. Introducing executable product models for the service industry

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20051209

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060110

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20060406

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20060411

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060428

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060606

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20060905

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20060911

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20061101

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20070109

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20070115

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100119

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110119

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120119

Year of fee payment: 5

LAPS Cancellation because of no payment of annual fees