[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

JP2005149332A - Workflow management system and program therefor - Google Patents

Workflow management system and program therefor Download PDF

Info

Publication number
JP2005149332A
JP2005149332A JP2003388652A JP2003388652A JP2005149332A JP 2005149332 A JP2005149332 A JP 2005149332A JP 2003388652 A JP2003388652 A JP 2003388652A JP 2003388652 A JP2003388652 A JP 2003388652A JP 2005149332 A JP2005149332 A JP 2005149332A
Authority
JP
Japan
Prior art keywords
scope
activity
belongs
completed
activities
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.)
Pending
Application number
JP2003388652A
Other languages
Japanese (ja)
Inventor
Yoko Seki
洋子 関
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.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2003388652A priority Critical patent/JP2005149332A/en
Publication of JP2005149332A publication Critical patent/JP2005149332A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Stored Programmes (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To give a scope function of a web service flow definition language to an existing work flow management technology by adding the function. <P>SOLUTION: A work flow management system is so configured that status information is stored in an activity information table 180 with respect to each activity. Status information is stored in a scope information table 190 with respect to each scope. When performance of an activity is completed, a scope monitor part 130 sets the status of a scope to which the activity belongs to completion in response to completion of all other activities belonging to the same scope which the activity belongs to. <P>COPYRIGHT: (C)2005,JPO&NCIPI

Description

本発明は、複数の作業ステップであるアクティビティから構成されるワークフローを定義に従い実行するワークフロー管理技術に関するものである。   The present invention relates to a workflow management technique for executing a workflow composed of activities as a plurality of work steps according to a definition.

SOAP(Simple Object Access Protocol)によりインターネット経由でサービスを利用するWebサービスの技術が開発されてきている。当初は、WebサービスをRPC(Remote Procedure Call)型で利用するパターンが主流であった。しかし近年では、複数のWebサービスを連続して実行し一つのワークフローを実現するパターンが出現し、フロー定義のための言語(以下、Webサービス・フロー定義言語と呼ぶ)が次々と開発されてきている。Webサービス・フロー定義言語として、http://www−106.ibm.com/developerworks/library/ws−bpel/で紹介される、Microsoft、IBM、BEAが提案するBPEL4WS(Business Process Execution Language for Web Services)が注目を集めている。   Web service technology that uses services via the Internet has been developed by SOAP (Simple Object Access Protocol). Initially, the pattern of using Web services in the RPC (Remote Procedure Call) type was mainstream. However, in recent years, a pattern has emerged in which a plurality of Web services are continuously executed to realize one workflow, and a language for flow definition (hereinafter referred to as Web service flow definition language) has been developed one after another. Yes. As a Web service flow definition language, http: // www-106. ibm. BPEL4WS (Business Process Language for Web Services) proposed by Microsoft, IBM, and BEA, introduced at com / developerworks / library / ws-bpel /, is attracting attention.

一方、Webサービス・フロー定義言語で記述したフローを実行するエンジンとして、既存のワークフロー技術によるものが有望視されている。   On the other hand, the engine based on the existing workflow technology is considered promising as an engine for executing a flow described in a Web service flow definition language.

なお既存のワークフロー技術として、非特許文献1に開示される技術が挙げられる。   As an existing workflow technique, a technique disclosed in Non-Patent Document 1 can be cited.

日立WorkCoordinator(船橋他、「NetComライブラリ―ネットベース・アプリケーション」裳華房、pp.114−118)Hitachi WorkCoordinator (Funabashi et al., “NetCom Library-Net-based Application” Yukabo, pp. 114-118)

Webサービス・フロー定義言語で記述するワークフローは、既存ワークフロー技術のフロー定義/制御能力により、ある程度実現可能である。前述のBPEL4WSと非特許文献1を例にとると、 “Switch”(条件分岐)、“Flow”(並行実行)などに代表されるBPEL4WSのフロー記述要素である構造化アクティビティは、WorkCoordinatorの分岐ノード/先着ノード、分業ノード/待合ノードなどの組み合わせにより対応が可能である。   The workflow described in the Web service flow definition language can be realized to some extent by the flow definition / control capability of the existing workflow technology. Taking the above-mentioned BPEL4WS and Non-Patent Document 1 as an example, structured activities that are flow description elements of BPEL4WS represented by “Switch” (conditional branch), “Flow” (parallel execution), etc. are branch nodes of WorkCoordinator. / A first-come-first-served node, a division of labor node / a waiting node, and the like can be supported.

しかしWebサービス・フロー定義言語に既存ワークフロー技術で対応する場合、以下のような問題があった。BPEL4WSなどのWebサービス・フロー定義言語は、ワークフローの一部をグループ化する“スコープ”の機能を備える。スコープは、フロー内で使用する変数や、失敗時、補償時などに実行するハンドラの有効範囲を定義/制御する機能であり、ワークフローの制御内容をより木目細かく指定できるといったユーザメリットがある。またスコープの状態により、ハンドラの実行を決定したりするなど、ワークフローの制御にも影響がある。一方、既存ワークフロー技術は、このスコープの機能を備えていないという問題があった。   However, when the existing workflow technology is used for the Web service flow definition language, there are the following problems. Web service flow definition languages such as BPEL4WS have a “scope” function for grouping parts of a workflow. The scope is a function for defining / controlling the variable used in the flow and the effective range of the handler executed at the time of failure or compensation, and has a user merit that the control content of the workflow can be specified more finely. In addition, the control of the workflow is affected, such as determining the execution of the handler depending on the state of the scope. On the other hand, the existing workflow technology has a problem that it does not have this scope function.

前記の課題を解決するための本発明は、ビジネスプロセスを構成するアクティビティの各々について状態情報を記憶するアクティビティ情報テーブルと、スコープの各々について状態情報を記憶するスコープ情報テーブルとを用いて、アクティビティの状態が実行完了となったとき、当該アクティビティが所属する同一スコープに所属する他のアクティビティがすべて完了した場合に当該アクティビティが所属するスコープの状態を完了に設定するワークフロー管理技術を特徴とする。   The present invention for solving the above problems uses an activity information table that stores state information for each of the activities that make up a business process, and a scope information table that stores state information for each of the scopes. It is characterized by a workflow management technology that sets the status of the scope to which the activity belongs to complete when all other activities that belong to the same scope to which the activity belongs are completed when the status is completed.

本発明によれば、既存ワークフロー管理システムへの機能追加によって、Webサービス・フロー定義言語のスコープ機能を実現できる。   According to the present invention, the scope function of the Web service flow definition language can be realized by adding a function to the existing workflow management system.

以下、本発明の実施形態について説明する。   Hereinafter, embodiments of the present invention will be described.

図1は、本発明の実施例を示すためのシステム構成図である。110はワークフローエンジンであり、アクティビティ間の遷移などのフロー制御を行う。140はビジネスプロセス定義であり、ワークフローエンジン110が制御するフローを定義する。ビジネスプロセス定義140は、作業ステップである複数のアクティビティ150と、フロー分岐/先着などを行う制御ノード160とから構成される。170はスコープであり、ワークフローの一部を構成する1つ以上のアクティビティ150をグループ化する。   FIG. 1 is a system configuration diagram for illustrating an embodiment of the present invention. A workflow engine 110 performs flow control such as transition between activities. Reference numeral 140 denotes a business process definition that defines a flow controlled by the workflow engine 110. The business process definition 140 includes a plurality of activities 150 that are work steps and a control node 160 that performs flow branching / first arrival. Reference numeral 170 denotes a scope, which groups one or more activities 150 constituting a part of the workflow.

120は状態監視部であり、アクティビティ150の状態変化を検知する。130はスコープ監視部であり、状態監視部120により起動され、アクティビティの状態変化に伴って発生するスコープの状態変化を監視する。   A state monitoring unit 120 detects a state change of the activity 150. Reference numeral 130 denotes a scope monitoring unit, which is activated by the state monitoring unit 120 and monitors a change in the state of the scope that occurs in response to a change in the state of the activity.

180は、アクティビティ150に関する情報を記憶するアクティビティ情報テーブルである。アクティビティ情報テーブル180は、アクティビティ識別子181、状態情報182およびスコープ情報183の3つの記憶領域を持つ。状態情報182は、そのアクティビティの実行状態を示す。アクティビティの実行状態は、「未実行」「実行中」「完了」「異常終了」「強制終了」のいずれかによって区分される。スコープ情報183は、アクティビティ識別子181で識別されるアクティビティ150が所属するスコープ170の識別子を記憶する。   Reference numeral 180 denotes an activity information table that stores information related to the activity 150. The activity information table 180 has three storage areas: an activity identifier 181, state information 182, and scope information 183. The state information 182 indicates the execution state of the activity. The activity execution state is classified by one of “not executed”, “running”, “completed”, “abnormal end”, and “forced end”. The scope information 183 stores the identifier of the scope 170 to which the activity 150 identified by the activity identifier 181 belongs.

190は、スコープ160に関する情報を記憶するスコープ情報テーブルである。スコープ情報テーブル190は、スコープ識別子191、状態情報192および親スコープ情報193の3つの記憶領域を持つ。状態情報192は、そのスコープの実行状態を示す。スコープの実行状態は、「活性」「完了」「異常終了」のいずれかによって区分される。「活性」は、そのスコープの処理が完了していないことを示す。親スコープ情報193は、スコープ識別子191で識別されるスコープ170が所属する上位のスコープ170が存在すればその識別子を記憶する。   Reference numeral 190 denotes a scope information table that stores information related to the scope 160. The scope information table 190 has three storage areas: a scope identifier 191, state information 192, and parent scope information 193. The status information 192 indicates the execution status of the scope. The execution state of the scope is classified by one of “active”, “completed”, and “abnormal end”. “Active” indicates that the processing of the scope is not completed. The parent scope information 193 stores an identifier of an upper scope 170 to which the scope 170 identified by the scope identifier 191 belongs.

なおアクティビティ情報テーブル180にスコープ情報183を設ける代わりに、スコープ情報テーブル190に繰り返しアクティビティ識別子181を設け、アクティビティ識別子181に対応してスコープ情報183、スコープ識別子191、状態情報192および親スコープ情報193のデータ項目を設けるようなスコープ情報テーブル190のデータ形式にしてもよい。   Instead of providing the scope information 183 in the activity information table 180, an activity identifier 181 is repeatedly provided in the scope information table 190, and the scope information 183, the scope identifier 191, the state information 192, and the parent scope information 193 are associated with the activity identifier 181. The data format of the scope information table 190 may be such that data items are provided.

ワークフローシステムのハードウェアは、CPU、メモリ、記憶装置、入力装置および出力装置を備える計算機(コンピュータ)によって実現される。ワークフローエンジン110、状態監視部120およびスコープ監視部130は、この計算機のメモリに格納され、CPUによって実行されるプログラムモジュールである。なお図示しないが、このほか業務依存の処理をするアプリケーションプログラムが存在する。アプリケーションプログラムは、API(アプリケーションプログラム・インタフェース)を介してワークフローエンジン110と通信する。ビジネスプロセス定義140、アクティビティ情報テーブル180およびスコープ情報テーブル190は、この計算機の記憶装置に格納される。アクティビティ情報テーブル180およびスコープ情報テーブル190は、案件、すなわちプロセス・インスタンスごとに管理される。本実施例では、プロセス・インスタンスを管理するテーブルなど、既存のワークフロー技術に関する説明を省略する。ワークフローシステムは、サーバ・クライアント・システムの形態でも実施可能である。この場合にクライアント計算機は、ユーザインタフェースのプログラムを備え、主としてユーザに対する入出力部分を受け持つ。本発明は、Webをベースとする分散環境にも適用できる。   The hardware of the workflow system is realized by a computer (computer) including a CPU, a memory, a storage device, an input device, and an output device. The workflow engine 110, the state monitoring unit 120, and the scope monitoring unit 130 are program modules that are stored in the memory of the computer and executed by the CPU. Although not shown, there are other application programs that perform business-dependent processing. The application program communicates with the workflow engine 110 via an API (Application Program Interface). The business process definition 140, the activity information table 180, and the scope information table 190 are stored in the storage device of this computer. The activity information table 180 and the scope information table 190 are managed for each case, that is, for each process instance. In the present embodiment, description of existing workflow technology such as a table for managing process instances is omitted. The workflow system can also be implemented in the form of a server / client system. In this case, the client computer is provided with a user interface program and is mainly responsible for the input / output portion for the user. The present invention can also be applied to a distributed environment based on the Web.

図2は、BPEL4WSによるフロー定義の記述例の一部を示すものである。図で<sequence>は、出現するアクティビティ又はスコープを順に実行するよう定義する。<flow>は、出現するアクティビティ又はスコープを並列して実行するよう定義する。このフロー定義を従来のワークフロー管理システムで実施する場合、図1に示す2つの制御ノード160をそれぞれ分業ノード、待合ノードとする場合のビジネスプロセス定義140により定義することができる。   FIG. 2 shows a part of a description example of the flow definition by BPEL4WS. In the figure, <sequence> defines the appearing activities or scopes to be executed in order. <Flow> defines an appearing activity or scope to be executed in parallel. When this flow definition is implemented by a conventional workflow management system, it can be defined by a business process definition 140 when the two control nodes 160 shown in FIG.

図1に示すビジネスプロセス定義140をワークフロー管理システムに登録するとき、システムは、アクティビティ情報テーブル180とスコープ情報テーブル190の初期設定を行う。システムは、アクティビティ情報テーブル180にビジネスプロセス定義140内に存在する各アクティビティ150についての情報を書き込む。すなわち各アクティビティ150の識別子181、状態情報182およびスコープ情報183が格納される。スコープ情報183には、そのアクティビティ150が所属する上位のスコープの識別子が書き込まれる。システムは、スコープ情報テーブル190にビジネスプロセス定義140内に存在する各スコープ170についての情報を書き込む。すなわち各スコープ170のスコープ識別子191、状態情報192および親スコープ情報193が格納される。親スコープ情報193には、そのスコープ170が所属する親スコープ170が存在すればその親スコープの識別子が書き込まれる。   When the business process definition 140 shown in FIG. 1 is registered in the workflow management system, the system performs initial setting of the activity information table 180 and the scope information table 190. The system writes information about each activity 150 existing in the business process definition 140 in the activity information table 180. That is, the identifier 181, state information 182, and scope information 183 of each activity 150 are stored. In the scope information 183, the identifier of the upper scope to which the activity 150 belongs is written. The system writes information about each scope 170 existing in the business process definition 140 in the scope information table 190. That is, the scope identifier 191, state information 192, and parent scope information 193 of each scope 170 are stored. If there is a parent scope 170 to which the scope 170 belongs, the parent scope identifier is written in the parent scope information 193.

図1に示すビジネスプロセス定義140について初期設定されたアクティビティ情報テーブル180とスコープ情報テーブル190の例を図3に示す。アクティビティ情報テーブル180内の各アクティビティ識別子181で示されるアクティビティの状態情報182は、そのアクティビィの実行が開始されていないことを示す“未実行”が設定される。スコープ情報テーブル190内の各スコープ識別子191で示されるスコープの状態情報192は、スコープの処理が完了してないことを示す“活性(アクティブ)”が設定される。なおアクティビティ情報テーブル180とスコープ情報テーブル190の初期設定は、定義ツールを利用して行っても良いし、ユーザが手作業にて行っても良い。   FIG. 3 shows an example of the activity information table 180 and the scope information table 190 that are initially set for the business process definition 140 shown in FIG. In the activity state information 182 indicated by each activity identifier 181 in the activity information table 180, “unexecuted” indicating that the execution of the activity has not started is set. The status information 192 of the scope indicated by each scope identifier 191 in the scope information table 190 is set to “active” indicating that the scope processing is not completed. The initial setting of the activity information table 180 and the scope information table 190 may be performed using a definition tool, or may be performed manually by a user.

図4〜図6は、スコープ監視部130の処理手順を示す図である。図に示すように、この手順は、処理ステップ41〜45、51〜54、および61〜65から構成される。   4 to 6 are diagrams illustrating a processing procedure of the scope monitoring unit 130. As shown in the figure, this procedure includes processing steps 41 to 45, 51 to 54, and 61 to 65.

以下、スコープ監視部130の処理手順について図1に示す他のプログラムモジュールの動作とともに図4〜図6に示すフローチャートを用いて説明する。ビジネスプロセス定義140として、図1に示す例を用いる。なお以下の説明において、アクティビティの状態情報182の終了状態とは、そのアクティビティの実行が正常終了したことを示す“完了”、エラーが発生し終了したことを示す“異常終了”、またはアプリケーションなどの指示により強制的に終了された“強制終了”のいずれかを示す。同様にスコープの状態情報192の終了状態とは、そのスコープ内の処理が正常に終了したことを示す“完了”、そのスコープ内のアクティビティ又は制御ノードの処理中にエラーが発生して終了したことを示す“異常終了”のいずれかを示す。   Hereinafter, a processing procedure of the scope monitoring unit 130 will be described with reference to flowcharts shown in FIGS. 4 to 6 together with operations of other program modules shown in FIG. The example shown in FIG. 1 is used as the business process definition 140. In the following description, the end state of the activity state information 182 refers to “complete” indicating that the execution of the activity has ended normally, “abnormal end” indicating that an error has occurred, or application, etc. Indicates either “forced termination” that was forcibly terminated by an instruction. Similarly, the end state of the scope state information 192 is “complete” indicating that the processing in the scope has ended normally, and that the processing has ended due to an error during the processing of the activity or control node in the scope. Indicates either “abnormal end”.

ビジネスプロセス定義140が定義するワークフローの実行が開始すると、ワークフローエンジン110は、アクティビティ“A”の状態情報182を“実行中”にする。あるいは、状態監視部120がワークフローエンジン110からアクティビティ“A”の状態を検知して、そのアクティビティの状態情報182を“実行中”に設定してもよい。状態監視部120は、アクティビティ“A”の状態変化を検知し、スコープ監視部130を起動して通知する(ステップ41)。スコープ監視部130は、アクティビティ情報テーブル180からアクティビティ“A”の状態情報182を取得するが、“実行中”であるため(ステップ42:その他)、処理を終了する。なおアクティビティの状態情報182が“実行中”のとき、状態監視部120は、スコープ監視部130を起動しないようにしてもよい。そうすれば、ステップ42:その他に分岐するケースはない。   When the execution of the workflow defined by the business process definition 140 starts, the workflow engine 110 sets the status information 182 of the activity “A” to “being executed”. Alternatively, the state monitoring unit 120 may detect the state of the activity “A” from the workflow engine 110 and set the state information 182 of the activity to “being executed”. The state monitoring unit 120 detects the state change of the activity “A”, and activates and notifies the scope monitoring unit 130 (step 41). The scope monitoring unit 130 acquires the status information 182 of the activity “A” from the activity information table 180, but since it is “in execution” (step 42: other), the process ends. When the activity status information 182 is “executing”, the status monitoring unit 120 may not activate the scope monitoring unit 130. Then, there is no case of branching to Step 42: others.

アクティビティ“A”の処理が正常終了すると、ワークフローエンジン110は、アクティビティ“A”の状態情報182を“完了”に変更する。あるいは、状態監視部120がワークフローエンジン110からアクティビティ“A”の状態を検知して、そのアクティビティの状態情報182を“完了”に変更してもよい。状態監視部120はアクティビティ“A”の状態変化を検知し、スコープ監視部130を起動して通知する(ステップ41)。スコープ監視部130は、アクティビティ情報テーブル180からアクティビティ“A”の状態情報182を取得する。その状態情報182が“完了”であるため(ステップ42:完了)、スコープ監視部130は、アクティビティ“A”のスコープ情報183に設定される所属するスコープ“S2”に所属する他のアクティビティまたは“S2”を親スコープとする下位のスコープの有無について、アクティビティ情報テーブル180およびスコープ情報テーブル190を検索する(ステップ43)。同一スコープ“S2”に所属する他のアクティビティ“D”が存在するため(ステップ43:Yes)、処理はステップ44に進む。同一スコープ“S2”に所属する全てのアクティビティまたはスコープの状態情報182、192を取得し、全ての状態情報182、192が終了状態であれば(ステップ44:Yes)、処理はステップ45に進む。そうでなければ(ステップ44:No)、処理を終了する。ここではアクティビティ“D”の状態情報182が“未実行”であるため(ステップ44:No)、処理を終了する。   When the process of the activity “A” is normally completed, the workflow engine 110 changes the status information 182 of the activity “A” to “completed”. Alternatively, the state monitoring unit 120 may detect the state of the activity “A” from the workflow engine 110 and change the state information 182 of the activity to “completed”. The state monitoring unit 120 detects a change in the state of the activity “A”, and activates and notifies the scope monitoring unit 130 (step 41). The scope monitoring unit 130 acquires the status information 182 of the activity “A” from the activity information table 180. Since the status information 182 is “completed” (step 42: completed), the scope monitoring unit 130 sets another activity belonging to the scope “S2” belonging to the scope “S2” set in the scope information 183 of the activity “A” or “ The activity information table 180 and the scope information table 190 are searched for the presence / absence of a lower scope having S2 ″ as the parent scope (step 43). Since there is another activity “D” belonging to the same scope “S2” (step 43: Yes), the process proceeds to step 44. If the status information 182 and 192 of all activities or scopes belonging to the same scope “S2” is acquired and all the status information 182 and 192 are in an end state (step 44: Yes), the process proceeds to step 45. Otherwise (step 44: No), the process is terminated. Here, since the status information 182 of the activity “D” is “unexecuted” (step 44: No), the processing is terminated.

実行中のワークフローは、次に制御ノード160である分業ノードにより、アクティビティ“B”および“C”が“実行中”になる。状態監視部120は、アクティビティ“B”および“C”の状態変化を検知し、スコープ監視部130を起動して通知する(ステップ41)。スコープ監視部130は、アクティビティ情報テーブル180からアクティビティ“B”および“C”の状態情報182を取得するが、“実行中”であるため(ステップ42:その他)、処理を終了する。   In the workflow being executed, the activities “B” and “C” are changed to “execution” by the division node which is the control node 160 next. The state monitoring unit 120 detects the state change of the activities “B” and “C”, and activates and notifies the scope monitoring unit 130 (step 41). The scope monitoring unit 130 acquires the status information 182 of the activities “B” and “C” from the activity information table 180, but ends the processing because it is “executing” (step 42: other).

次に“実行中”であるアクティビティ“B”および“C”のうち、“B”の処理が先に正常終了し、状態情報182が“完了”に変化したとする。この場合の状態監視部120およびスコープ監視部130の動作は、先に説明したアクティビティ“A”の正常終了時と同様になる。   Next, it is assumed that the processing of “B” among the activities “B” and “C” that are “being executed” normally ends first, and the status information 182 changes to “completed”. The operations of the state monitoring unit 120 and the scope monitoring unit 130 in this case are the same as those at the normal end of the activity “A” described above.

この時点におけるアクティビティ情報テーブル180とスコープ情報テーブル190の例を図7に示す。   An example of the activity information table 180 and the scope information table 190 at this time is shown in FIG.

次にアクティビティ“C”の処理が正常終了し、状態情報182が“完了”に変化したとする。状態監視部120は、アクティビティ“C”の状態変化を検知し、スコープ監視部130を起動して通知する(ステップ41)。スコープ監視部130は、アクティビティ情報テーブル180からアクティビティ“C”の状態情報182を取得するが、“完了”であるため(ステップ42:完了)、アクティビティ“C”のスコープ情報183に設定される所属するスコープ“S1”に所属する他のアクティビティまたは“S1”を親スコープとする下位のスコープの有無について、アクティビティ情報テーブル180を検索する(ステップ43)。同一スコープ“S1”に所属する他のアクティビティ“B”が存在するため(ステップ43:Yes)、ステップ44に進む。同一スコープ“S1”に所属する全てのアクティビティまたはスコープの状態情報182、192を取得し、全ての状態情報182、192が終了状態であれば(ステップ44:Yes)、処理はステップ45に進む。そうでなければ(ステップ44:No)、処理を終了する。ここではアクティビティ“B”の状態情報182が“完了”であるため(ステップ44:Yes)、ステップ45に進む。ステップ45では、スコープ監視部130は、スコープ識別子191が当該スコープであるスコープの状態情報192を“完了”にする。ここではスコープ“S1”の状態情報192を“完了”にし、ステップ61に進む。   Next, it is assumed that the processing of the activity “C” is normally completed and the status information 182 is changed to “completed”. The state monitoring unit 120 detects the state change of the activity “C”, and activates and notifies the scope monitoring unit 130 (step 41). The scope monitoring unit 130 acquires the status information 182 of the activity “C” from the activity information table 180, but since it is “completed” (step 42: completed), the affiliation set in the scope information 183 of the activity “C” The activity information table 180 is searched for the presence or absence of other activities belonging to the scope “S1” or the lower scope having “S1” as the parent scope (step 43). Since there is another activity “B” belonging to the same scope “S1” (step 43: Yes), the process proceeds to step 44. If the state information 182 and 192 of all activities or scopes belonging to the same scope “S1” is acquired and all the state information 182 and 192 are in the end state (step 44: Yes), the process proceeds to step 45. Otherwise (step 44: No), the process is terminated. Here, since the status information 182 of the activity “B” is “completed” (step 44: Yes), the process proceeds to step 45. In step 45, the scope monitoring unit 130 sets the status information 192 of the scope whose scope identifier 191 is the scope to “completed”. Here, the status information 192 of the scope “S1” is set to “completed”, and the process proceeds to step 61.

ステップ61では、スコープ監視部130は、当該スコープの親スコープの有無について、スコープ情報テーブル190を検索して判定する。親スコープが存在すれば(ステップ61:Yes)、処理はステップ62に進み、存在しなければ(ステップ61:No)、処理を終了する。ここではスコープ“S1”に親スコープ“S2”が存在するため(ステップ61:Yes)、処理はステップ62に進む。ステップ62では、この親スコープと同一の親スコープに所属するスコープまたは所属するスコープが当該親スコープであるようなアクティビティの有無について、アクティビティ情報テーブル180およびスコープ情報テーブル190を検索する。そのようなスコープまたはアクティビティが存在すれば(ステップ62:Yes)、処理はステップ63に進み、存在しなければ(ステップ62:No)、処理を終了する。ここでは所属するスコープが“S2”であるアクティビティ“A”および“D”が存在するため(ステップ62:Yes)、処理はステップ63に進む。ステップ63では、ステップ62で取得した全てのスコープまたはアクティビティの状態情報192または182が全て終了状態であれば(ステップ63:Yes)、ステップ64に進む。そうでなければ(ステップ63:No)、処理を終了する。ここではアクティビティ“A”の状態情報182は“完了”であるが“D”の状態情報182は“未実行”であるため、処理を終了する。   In step 61, the scope monitoring unit 130 searches the scope information table 190 to determine whether there is a parent scope of the scope. If the parent scope exists (step 61: Yes), the process proceeds to step 62, and if it does not exist (step 61: No), the process ends. Here, since the parent scope “S2” exists in the scope “S1” (step 61: Yes), the processing proceeds to step 62. In step 62, the activity information table 180 and the scope information table 190 are searched for the scope belonging to the same parent scope as this parent scope or the presence / absence of an activity whose belonging scope is the parent scope. If such a scope or activity exists (step 62: Yes), the process proceeds to step 63, and if it does not exist (step 62: No), the process ends. Here, there are activities “A” and “D” with the scope to which they belong “S2” (step 62: Yes), so the process proceeds to step 63. In step 63, if all the status information 192 or 182 of all the scopes or activities acquired in step 62 are in an end state (step 63: Yes), the process proceeds to step 64. Otherwise (step 63: No), the process is terminated. Here, the status information 182 of the activity “A” is “completed”, but the status information 182 of the “D” is “unexecuted”, so the processing ends.

この時点におけるアクティビティ情報テーブル180とスコープ情報テーブル190の例を図8に示す。   An example of the activity information table 180 and the scope information table 190 at this time is shown in FIG.

実行中のワークフローは、次に制御ノード160である待合ノードにより、アクティビティ“D”が“実行中”になる。状態監視部120は、アクティビティ“D”の状態変化を検知し、スコープ監視部130を起動して通知する(ステップ41)。スコープ監視部130は、アクティビティ情報テーブル180からアクティビティ“D”の状態情報182を取得するが、“実行中”であるため(ステップ42:その他)、処理を終了する。   In the workflow being executed, the activity “D” becomes “executed” by the waiting node which is the control node 160 next. The state monitoring unit 120 detects the state change of the activity “D”, and activates and notifies the scope monitoring unit 130 (step 41). The scope monitoring unit 130 acquires the status information 182 of the activity “D” from the activity information table 180, but since it is “in execution” (step 42: other), the process ends.

アクティビティ“D”の処理が正常終了し、状態情報182が“完了”に変化したとする。状態監視部120はアクティビティ“D”の状態変化を検知し、スコープ監視部1030を起動して通知する(ステップ41)。スコープ監視部130は、アクティビティ情報テーブル180からアクティビティ“D”の状態情報182を取得するが、“完了”であるため(ステップ42:完了)、ステップ43に進む。アクティビティ“D”のスコープ情報183に設定される所属するスコープ“S2”に所属する他のアクティビティ“A”およびスコープ“S1”が存在するため(ステップ43:Yes)、ステップ44に進む。アクティビティ“A”の状態情報182およびスコープ“S1”の状態情報192が“完了”であるので(ステップ44:Yes)、処理はステップ45に進む。次にスコープ監視部130は、スコープ“S2”の状態情報192を“完了”にしてステップ61に進む。スコープ“S2”の親スコープが存在しないため(ステップ61:No)、処理を終了する。   It is assumed that the process of activity “D” is normally completed and the status information 182 is changed to “completed”. The state monitoring unit 120 detects a change in the state of the activity “D” and activates and notifies the scope monitoring unit 1030 (step 41). The scope monitoring unit 130 acquires the status information 182 of the activity “D” from the activity information table 180, but since it is “completed” (step 42: completed), the scope monitoring unit 130 proceeds to step 43. Since there is another activity “A” and scope “S1” belonging to the scope “S2” belonging to the scope information 183 set in the scope information 183 of the activity “D” (step 43: Yes), the process proceeds to step 44. Since the status information 182 of the activity “A” and the status information 192 of the scope “S1” are “completed” (step 44: Yes), the processing proceeds to step 45. Next, the scope monitoring unit 130 sets the status information 192 of the scope “S2” to “completed” and proceeds to step 61. Since there is no parent scope of the scope “S2” (step 61: No), the process is terminated.

この時点におけるアクティビティ情報テーブル180とスコープ情報テーブル190の例を図9に示す。図9に示すように、ビジネスプロセス定義140の図1に示す範囲のワークフロー実行が終了したことが分かる。   An example of the activity information table 180 and the scope information table 190 at this time is shown in FIG. As shown in FIG. 9, it can be seen that the execution of the workflow in the range shown in FIG. 1 of the business process definition 140 is completed.

なおステップ43で、当該アクティビティの所属するスコープに所属する他のアクティビティまたは当該スコープを親スコープとする下位のスコープがいずれも存在しない場合(ステップ43:No)、当該スコープには当該アクティビティのみが所属するため、スコープ監視部130は、当該スコープの状態情報192を直ちに“完了”にする(ステップ45)。   In step 43, if there is no other activity belonging to the scope to which the activity belongs or a lower scope having the scope as a parent scope (step 43: No), only the activity belongs to the scope. Therefore, the scope monitoring unit 130 immediately sets the status information 192 of the scope to “completed” (step 45).

同様にステップ62で、当該親スコープと同一の親スコープに所属するスコープまたは所属するスコープが当該親スコープであるようなアクティビティがいずれも存在しない場合(ステップ62:No)、当該親スコープには当該スコープのみが所属するため、スコープ監視部130は、当該親スコープの状態情報192を直ちに“完了”にする(ステップ64)。   Similarly, in step 62, if there is no activity that belongs to the same parent scope as the parent scope or an activity in which the scope belongs to the parent scope (step 62: No), the parent scope includes the activity. Since only the scope belongs, the scope monitoring unit 130 immediately sets the status information 192 of the parent scope to “completed” (step 64).

さらにステップ64で、親スコープの状態を“完了”に書き換えた後に、スコープ識別子191が当該親スコープであるスコープについて、スコープ監視部130は、ステップ61以降の処理を繰り返す(ステップ65)。これにより、親スコープに所属するスコープまたはアクティビティがすべて終了するとその親スコープが“完了”するというBPEL4WSの仕様を実現できる。   Further, after rewriting the state of the parent scope to “completed” at step 64, the scope monitoring unit 130 repeats the processing after step 61 for the scope whose scope identifier 191 is the parent scope (step 65). As a result, the specification of BPEL4WS that the parent scope is “completed” when all the scopes or activities belonging to the parent scope are completed can be realized.

以上、ワークフローが正常に実行される場合の、図1に示す各プログラムモジュールの動作について説明した。   The operation of each program module shown in FIG. 1 when the workflow is normally executed has been described above.

次にワークフロー実行中にアクティビティ150が異常終了する場合の図1に示す各プログラムモジュールの動作について説明する。   Next, the operation of each program module shown in FIG. 1 when the activity 150 ends abnormally during workflow execution will be described.

ビジネスプロセス定義140で定義するワークフローの実行が開始され、アクティビティ“A”の状態が“未実行”、“実行中”、“完了”と変化したとする。実行中のワークフローは、次に制御ノード160である分業ノードにより、アクティビティ“B”および“C”が“実行中”になる。この場合の状態監視部120およびスコープ監視部130の動作は、前記のワークフロー正常終了時の処理手順と同様になる。   Assume that the execution of the workflow defined in the business process definition 140 is started, and the state of the activity “A” changes to “not executed”, “being executed”, and “completed”. In the workflow being executed, the activities “B” and “C” are changed to “execution” by the division node which is the control node 160 next. The operations of the state monitoring unit 120 and the scope monitoring unit 130 in this case are the same as the processing procedure at the time of normal completion of the workflow.

次に“実行中”であるアクティビティ“B”でエラーが発生し、アクティビティ“B”が“異常終了”したとする。このときワークフローエンジン110又は状態監視部120は、アクティビティ“B”の状態情報182を“異常終了”に変更する。状態監視部120はアクティビティ“B”の状態変化を検知し、スコープ監視部130を起動して通知する(ステップ41)。スコープ監視部130は、アクティビティ情報テーブル180からアクティビティ“B”の状態情報182を取得する。この状態情報182が“異常終了”であるため(ステップ42:異常)、スコープ監視部130は、アクティビティ“B”のスコープ情報183に設定される所属するスコープ“S1”に所属する他のアクティビティの有無についてアクティビティ情報テーブル180を検索する(ステップ51)。同一スコープ“S1”に所属するアクティビティ“C”が存在するため(ステップ51:Yes)、ステップ52に進み、取得したアクティビティの状態情報182が終了状態でないアクティビティを“強制終了”にする。ここではスコープ監視部130は、アクティビティ“C”を“強制終了”にし、ステップ53に進む。ステップ53では、スコープ識別子191がスコープ情報183で示されるスコープについてスコープ識別子191の状態情報192を“異常終了”にする。ここではスコープ“S1”の状態情報192を“異常終了”にし、ステップ54に進む。スコープ監視部130は、ステップ54で状態監視部120を経由してワークフローエンジン110に、スコープ“S1”の失敗ハンドラの実行を指示する。失敗ハンドラの処理内容は、ビジネスプロセス定義140であらかじめ定義される。ワークフローエンジン110から失敗の通知を受けたアプリケーションは、動的に処理ステップを生成するなどし、ワークフローエンジン110が失敗ハンドラを実行する。スコープ監視部130は、状態監視部120を経由してワークフローエンジン110から失敗ハンドラの実行終了を通知され、ステップ61に進む。   Next, it is assumed that an error occurs in the activity “B” that is “being executed” and the activity “B” is “abnormally ended”. At this time, the workflow engine 110 or the state monitoring unit 120 changes the state information 182 of the activity “B” to “abnormal end”. The state monitoring unit 120 detects a change in the state of the activity “B”, and activates and notifies the scope monitoring unit 130 (step 41). The scope monitoring unit 130 acquires the status information 182 of the activity “B” from the activity information table 180. Since this status information 182 is “abnormal end” (step 42: abnormal), the scope monitoring unit 130 sets other activities belonging to the scope “S1” to which the scope “S1” belonging to the activity “B” is set. The activity information table 180 is searched for presence / absence (step 51). Since the activity “C” belonging to the same scope “S1” exists (step 51: Yes), the process proceeds to step 52, and the activity whose status information 182 of the acquired activity is not in the end state is set to “forced end”. Here, the scope monitoring unit 130 sets the activity “C” to “forced termination”, and proceeds to step 53. In step 53, the status information 192 of the scope identifier 191 is set to “abnormal end” for the scope whose scope identifier 191 is indicated by the scope information 183. Here, the status information 192 of the scope “S1” is set to “abnormal end”, and the process proceeds to step. In step 54, the scope monitoring unit 130 instructs the workflow engine 110 to execute the failure handler of the scope “S 1” via the state monitoring unit 120. The processing content of the failure handler is defined in advance by the business process definition 140. The application that receives the failure notification from the workflow engine 110 dynamically generates a processing step, and the workflow engine 110 executes the failure handler. The scope monitoring unit 130 is notified of the execution end of the failure handler from the workflow engine 110 via the state monitoring unit 120, and proceeds to step 61.

ステップ61では、スコープ“S1”に親スコープが存在するため(ステップ61:Yes)、ステップ62に進み、その親スコープに所属するアクティビティ“A”および“D”が存在するため(ステップ62:Yes)、処理はステップ63に進む。ここでアクティビティ“A”の状態情報182は“完了”であるが、“D”の状態が“未実行”であるため処理を終了する。   In step 61, since the parent scope exists in the scope “S1” (step 61: Yes), the process proceeds to step 62, and activities “A” and “D” belonging to the parent scope exist (step 62: Yes). ), The process proceeds to step 63. Here, the status information 182 of the activity “A” is “completed”, but the processing is ended because the status of “D” is “unexecuted”.

この時点におけるアクティビティ情報テーブル180とスコープ情報テーブル190の例を図10に示す。   An example of the activity information table 180 and the scope information table 190 at this time is shown in FIG.

実行中のワークフローは、次に制御ノード160である待合ノードにより、アクティビティ “D”が“実行中”になる。これ以降、アクティビティ “D”が“完了”するまでの状態監視部120およびスコープ監視部130の処理手順は、前記のワークフロー正常終了時の処理手順と同様になる。   In the workflow being executed, the activity “D” becomes “executed” by the waiting node which is the control node 160 next. Thereafter, the processing procedure of the state monitoring unit 120 and the scope monitoring unit 130 until the activity “D” is “completed” is the same as the processing procedure when the workflow is normally completed.

アクティビティ“D”が“完了”した時点におけるアクティビティ情報テーブル180とスコープ情報テーブル190の例を図11に示す。図11に示すように、ビジネスプロセス定義140の図1に示す範囲のワークフロー実行が終了したことが分かる。   An example of the activity information table 180 and the scope information table 190 when the activity “D” is “completed” is shown in FIG. As shown in FIG. 11, it can be seen that the execution of the workflow in the range shown in FIG. 1 of the business process definition 140 is completed.

なおステップ51で、当該アクティビティの所属スコープに所属する他のアクティビティが存在しない場合(ステップ51:No)、当該スコープには当該アクティビティのみが所属するため、スコープ監視部130は、当該スコープの状態を直ちに“異常終了”にする(ステップ53)。   In step 51, when there is no other activity belonging to the scope to which the activity belongs (step 51: No), since only the activity belongs to the scope, the scope monitoring unit 130 displays the status of the scope. Immediately, "abnormal end" is set (step 53).

以上、ワークフローが正常に実行される場合と、ワークフロー実行中にスコープ内のアクティビティが異常終了する場合の図1に示す各プログラムモジュールの動作について説明した。   The operation of each program module shown in FIG. 1 when the workflow is executed normally and when the activity in the scope ends abnormally during the workflow execution has been described above.

上記実施例によれば、スコープ内でエラーが発生した場合、同一スコープに所属するアクティビティのみを直ちに終了し、当該スコープの失敗ハンドラで定義した処理を実行することができる。   According to the above embodiment, when an error occurs in a scope, only the activities belonging to the same scope can be immediately terminated, and the process defined by the failure handler of the scope can be executed.

また上記実施例によれば、スコープの終了状態が“完了”であるか“異常終了”のいずれであるか記憶されるため、APIなどにより終了したスコープの補償ハンドラの実行が指示された場合、そのスコープが“完了”であれば補償ハンドラを実行し、“異常終了”であれば実行しないなどの制御を行うことができる。   Further, according to the above embodiment, since the end state of the scope is “completed” or “abnormal end”, it is stored. If the scope is “complete”, the compensation handler is executed, and if it is “abnormal end”, control such as not being executed can be performed.

さらに上記実施例によれば、スコープ情報テーブルからスコープの範囲を知ることができるため、BPEL4WSの仕様で定めるように、使用されるワークフロー変数をスコープ内でのみ有効にすることができる。   Furthermore, according to the above embodiment, since the scope range can be known from the scope information table, the workflow variable to be used can be validated only within the scope as defined by the specification of BPEL4WS.

実施例のワークフロー管理システムの構成図である。It is a block diagram of the workflow management system of an Example. BPEL4WSによるフロー記述例の一部を示す図である。It is a figure which shows a part of example of a flow description by BPEL4WS. アクティビティ情報テーブルとスコープ情報テーブルの初期設定の例を示す図である。It is a figure which shows the example of the initial setting of an activity information table and a scope information table. スコープ監視部の実施手順を説明する図である。It is a figure explaining the implementation procedure of a scope monitoring part. スコープ監視部の実施手順を説明する図(続き)である。It is a figure explaining the implementation procedure of a scope monitoring part (continuation). スコープ監視部の実施手順を説明する図(続き)である。It is a figure explaining the implementation procedure of a scope monitoring part (continuation). アクティビティ “A”、“B”が完了した時点におけるアクティビティ情報テーブルとスコープ情報テーブルの例を示す図である。It is a figure which shows the example of the activity information table and scope information table at the time of completing activity "A" and "B". アクティビティ “A”、“B”、“C”が完了した時点におけるアクティビティ情報テーブルとスコープ情報テーブルの例を示す図である。It is a figure which shows the example of the activity information table and scope information table at the time of completing activity "A", "B", and "C". アクティビティ “A”、“B”、“C”、“D”が完了した時点におけるアクティビティ情報テーブルとスコープ情報テーブルの例を示す図である。It is a figure which shows the example of the activity information table and scope information table at the time of completing activity "A", "B", "C", "D". アクティビティ “A”が完了し、“B”が異常終了した時点におけるアクティビティ情報テーブルとスコープ情報テーブルの例を示す図である。FIG. 10 is a diagram illustrating an example of an activity information table and a scope information table at the time when an activity “A” is completed and “B” is abnormally terminated. アクティビティ “A”が完了し、“B”が異常終了した後、“D”が完了した時点におけるアクティビティ情報テーブルとスコープ情報テーブルの例を示す図である。It is a figure which shows the example of an activity information table and a scope information table at the time of completing "D" after activity "A" was completed and "B" ended abnormally.

符号の説明Explanation of symbols

110…ワークフローエンジン、120…状態監視部、130…スコープ監視部、140…ビジネスプロセス定義、150…アクティビティ、170…スコープ、180…アクティビティ情報テーブル、190…スコープ情報テーブル。   DESCRIPTION OF SYMBOLS 110 ... Workflow engine 120 ... State monitoring part 130 ... Scope monitoring part 140 ... Business process definition 150 ... Activity 170 ... Scope 180 ... Activity information table 190 ... Scope information table

Claims (10)

複数のアクティビティの実行手順と前記アクティビティをグループ化するスコープの実行手順が定義されるビジネスプロセス定義を格納する記憶装置と、
前記アクティビティの各々について状態情報と前記アクティビティが所属するスコープの識別子を記憶するアクティビティ情報テーブルと、
前記スコープの各々について状態情報を記憶するスコープ情報テーブルと、
前記ビジネスプロセス定義に従って前記アクティビティを実行し、前記アクティビティの実行状態を変更するワークフローエンジンと、
前記アクティビティの状態を監視する状態監視部と、
前記アクティビティの状態が変化したとき起動され、当該アクティビティが完了したとき当該アクティビティが所属する同一スコープに所属する他のアクティビティがすべて完了した場合に当該アクティビティが所属する前記スコープの状態を完了に設定する手段を有するスコープ監視部とを有することを特徴とするワークフロー管理システム。
A storage device for storing a business process definition in which an execution procedure of a plurality of activities and an execution procedure of a scope for grouping the activities are defined;
An activity information table storing status information for each of the activities and an identifier of a scope to which the activity belongs;
A scope information table for storing state information for each of the scopes;
A workflow engine that executes the activity according to the business process definition and changes an execution state of the activity;
A state monitoring unit for monitoring the state of the activity;
Fired when the activity status changes, and when the activity is completed, sets all the other activities belonging to the same scope to which the activity belongs to the completion status of the scope to which the activity belongs A workflow management system comprising a scope monitoring unit having means.
前記スコープ情報テーブルは、前記スコープの各々について状態情報と所属する親スコープの識別子を記憶し、
前記スコープ監視部は、前記アクティビティの状態が変化したとき起動され、当該アクティビティが完了したとき当該アクティビティが所属する同一スコープに所属する他のアクティビティまたはスコープがすべて完了した場合に当該アクティビティが所属する前記スコープの状態を完了に設定する手段と、当該アクティビティが所属する前記スコープが所属する親スコープに所属するスコープまたは他のアクティビティがすべて完了した場合に当該親スコープの状態を完了に設定する手段とを有することを特徴とする請求項1記載のワークフロー管理システム。
The scope information table stores state information and an identifier of a parent scope to which each scope belongs.
The scope monitoring unit is activated when the state of the activity changes, and when the activity is completed, the other activity or scope belonging to the same scope to which the activity belongs is completed when the activity belongs to the activity Means for setting the status of the scope to complete, and means for setting the status of the parent scope to complete when the scope belonging to the parent scope to which the scope to which the activity belongs belongs or all other activities are completed. The workflow management system according to claim 1, further comprising:
前記スコープの状態情報は、スコープの処理が完了していないことを示す「活性」、当該スコープの正常終了を示す「完了」及び「異常終了」を含むことを特徴とする請求項1記載のワークフロー管理システム。   2. The workflow according to claim 1, wherein the status information of the scope includes “active” indicating that the processing of the scope is not completed, “completed” indicating that the scope is normally completed, and “abnormal termination”. Management system. 前記アクティビティ情報テーブルは、前記アクティビティの各々について状態情報を記憶し、前記スコープ情報テーブルは、前記アクティビティの各々について所属するスコープの識別子および前記所属するスコープの状態情報を記憶することを特徴とする請求項1又は2記載のワークフロー管理システム。   The activity information table stores state information for each of the activities, and the scope information table stores an identifier of a scope to which each of the activities belongs and state information of the scope to which the activity belongs. Item 3. The workflow management system according to item 1 or 2. 前記スコープ監視部は、さらに前記アクティビティが異常終了したとき当該アクティビティが所属する同一スコープに所属する他の完了していないアクティビティの状態を強制終了に設定する手段と、当該アクティビティが所属するスコープの状態を異常終了に設定する手段とを有することを特徴とする請求項1記載のワークフロー管理システム。   The scope monitoring unit further includes means for setting the status of other uncompleted activities belonging to the same scope to which the activity belongs to forced termination when the activity is abnormally terminated, and the status of the scope to which the activity belongs. The workflow management system according to claim 1, further comprising: a unit configured to set abnormal termination. コンピュータに、
複数のアクティビティの実行手順と前記アクティビティをグループ化するスコープの実行手順が定義されるビジネスプロセス定義に従って前記アクティビティを実行し、前記アクティビティの実行状態を変更するワークフローエンジン機能、
前記アクティビティの状態を監視する状態監視機能、および
前記アクティビティの状態が変化したとき起動され、当該アクティビティが完了したとき、前記アクティビティの各々について状態情報と前記アクティビティが所属するスコープの識別子を記憶するアクティビティ情報テーブルと、前記スコープの各々について状態情報を記憶するスコープ情報テーブルとを参照し、当該アクティビティが所属する同一スコープに所属する他のアクティビティがすべて完了した場合に当該アクティビティが所属する前記スコープの状態を完了に設定するスコープ監視機能
を実現させるためのワークフロープログラム。
On the computer,
A workflow engine function for executing the activity according to a business process definition in which an execution procedure of a plurality of activities and an execution procedure of a scope for grouping the activities are defined, and changing an execution state of the activity;
A state monitoring function that monitors the state of the activity, and an activity that is activated when the state of the activity changes, and stores state information and an identifier of a scope to which the activity belongs for each of the activities when the activity is completed Referring to the information table and the scope information table that stores state information for each of the scopes, when all other activities belonging to the same scope to which the activity belongs are completed, the status of the scope to which the activity belongs A workflow program for realizing the scope monitoring function that sets the status to complete.
前記スコープ情報テーブルは、前記スコープの各々について状態情報と所属する親スコープの識別子を記憶し、
前記スコープ監視機能として、前記コンピュータに、前記アクティビティの状態が変化したとき起動され、当該アクティビティが完了したとき当該アクティビティが所属する同一スコープに所属する他のアクティビティまたはスコープがすべて完了した場合に当該アクティビティが所属する前記スコープの状態を完了に設定する機能、および当該アクティビティが所属する前記スコープが所属する親スコープに所属するスコープまたは他のアクティビティがすべて完了した場合に当該親スコープの状態を完了に設定する機能を実現させるための請求項6記載のワークフロープログラム。
The scope information table stores state information and an identifier of a parent scope to which each scope belongs.
As the scope monitoring function, the activity is started when all other activities or scopes belonging to the same scope to which the activity belongs are completed when the activity is completed on the computer and the activity is completed. A function that sets the status of the scope to which the activity belongs, and the status of the parent scope to completion when all the scopes or other activities that belong to the parent scope to which the activity belongs belong to the parent scope. The workflow program according to claim 6 for realizing the function to perform.
前記スコープの状態情報は、スコープの処理が完了していないことを示す「活性」、当該スコープの正常終了を示す「完了」及び「異常終了」を含むことを特徴とする請求項6記載のワークフロープログラム。   7. The workflow according to claim 6, wherein the status information of the scope includes “active” indicating that the processing of the scope is not completed, “completed” indicating that the scope is normally completed, and “abnormal termination”. program. 前記アクティビティ情報テーブルは、前記アクティビティの各々について状態情報を記憶し、前記スコープ情報テーブルは、前記アクティビティの各々について所属するスコープの識別子および前記所属するスコープの状態情報を記憶することを特徴とする請求項6又は7記載のワークフロープログラム。   The activity information table stores state information for each of the activities, and the scope information table stores an identifier of a scope to which each of the activities belongs and state information of the scope to which the activity belongs. Item 8. The workflow program according to item 6 or 7. 前記スコープ監視機能として、前記コンピュータに、さらに前記アクティビティが異常終了したとき当該アクティビティが所属する同一スコープに所属する他の完了していないアクティビティの状態を強制終了に設定する機能、および当該アクティビティが所属するスコープの状態を異常終了に設定する機能を実現させるための請求項6記載のワークフロープログラム。   As the scope monitoring function, when the activity is abnormally terminated, a function for setting the status of other uncompleted activities belonging to the same scope to which the activity belongs to forced termination to the computer, and the activity belongs The workflow program according to claim 6, which realizes a function of setting a state of a scope to be abnormally ended.
JP2003388652A 2003-11-19 2003-11-19 Workflow management system and program therefor Pending JP2005149332A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003388652A JP2005149332A (en) 2003-11-19 2003-11-19 Workflow management system and program therefor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003388652A JP2005149332A (en) 2003-11-19 2003-11-19 Workflow management system and program therefor

Publications (1)

Publication Number Publication Date
JP2005149332A true JP2005149332A (en) 2005-06-09

Family

ID=34695617

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003388652A Pending JP2005149332A (en) 2003-11-19 2003-11-19 Workflow management system and program therefor

Country Status (1)

Country Link
JP (1) JP2005149332A (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007018122A (en) * 2005-07-06 2007-01-25 Hitachi Software Eng Co Ltd Web service customization system
CN100383731C (en) * 2005-08-25 2008-04-23 复旦大学 Real time dynamic synthesis method of web services
JP2009087093A (en) * 2007-09-28 2009-04-23 Bank Of Tokyo-Mitsubishi Ufj Ltd Application development support device and program
JP2014154120A (en) * 2013-02-14 2014-08-25 Nci Systems Integration Inc Workflow system

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007018122A (en) * 2005-07-06 2007-01-25 Hitachi Software Eng Co Ltd Web service customization system
JP4702835B2 (en) * 2005-07-06 2011-06-15 株式会社日立ソリューションズ Web service customization system
CN100383731C (en) * 2005-08-25 2008-04-23 复旦大学 Real time dynamic synthesis method of web services
JP2009087093A (en) * 2007-09-28 2009-04-23 Bank Of Tokyo-Mitsubishi Ufj Ltd Application development support device and program
JP2014154120A (en) * 2013-02-14 2014-08-25 Nci Systems Integration Inc Workflow system

Similar Documents

Publication Publication Date Title
US20210117895A1 (en) Systems and Methods for Cross-Platform Scheduling and Workload Automation
US7779298B2 (en) Distributed job manager recovery
US10146599B2 (en) System and method for a generic actor system container application
JP4980792B2 (en) Virtual machine performance monitoring method and apparatus using the method
CN113228020B (en) Scheduling robots for robot process automation
US9942353B2 (en) Management of connections within a messaging environment based on the statistical analysis of server responsiveness
US20070118414A1 (en) Business process system management method
CN111506412A (en) Distributed asynchronous task construction and scheduling system and method based on Airflow
US10592296B2 (en) Maintaining state information in a multi-component, event-driven state machine
JPH11306244A (en) Work management system
US20090204949A1 (en) System, method and program product for dynamically adjusting trace buffer capacity based on execution history
CN111258565B (en) Method, system, server and storage medium for generating applet
US11507479B2 (en) High availability for a relational database management system as a service in a cloud platform
US6226694B1 (en) Achieving consistency and synchronization among multiple data stores that cooperate within a single system in the absence of transaction monitoring
Ganga et al. A fault tolerent approach in scientific workflow systems based on cloud computing
CN108845954A (en) Method for testing pressure, system and storage medium
CN111858007A (en) Task scheduling method and device based on message middleware
CN112787999B (en) Cross-chain calling method, device, system and computer readable storage medium
EP2492805A1 (en) Computer network, computer system, computer-implemented method, and computer program product for controlling application landscapes
JP2005149332A (en) Workflow management system and program therefor
JP2009169793A (en) Service management method, system, and program
JP6540287B2 (en) INFORMATION PROCESSING SYSTEM, INFORMATION PROCESSING METHOD, AND PROGRAM
US8595349B1 (en) Method and apparatus for passive process monitoring
JP2007018091A (en) Information processor, information processing system, application development support method and program
JP4911324B2 (en) Business construction infrastructure system and business system construction method