JP2015185014A - workflow control program, workflow control method, and workflow system - Google Patents
workflow control program, workflow control method, and workflow system Download PDFInfo
- Publication number
- JP2015185014A JP2015185014A JP2014062272A JP2014062272A JP2015185014A JP 2015185014 A JP2015185014 A JP 2015185014A JP 2014062272 A JP2014062272 A JP 2014062272A JP 2014062272 A JP2014062272 A JP 2014062272A JP 2015185014 A JP2015185014 A JP 2015185014A
- Authority
- JP
- Japan
- Prior art keywords
- data
- node
- information
- information indicating
- data item
- 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.)
- Granted
Links
Images
Abstract
Description
開示の技術は、ワークフロー制御プログラム、ワークフロー制御方法、及びワークフローシステムに関する。 The disclosed technology relates to a workflow control program, a workflow control method, and a workflow system.
業務に含まれる複数の作業の各々をノードとして、各ノードにおける処理内容及び各ノードの順序を定義して、各ノードの順序に従って処理を進めるワークフローシステムが知られている。ワークフローシステムでは、例えばシステム障害への対応として、現在のノードより前のノードにおける状態に復旧できるように、各ノードにおけるデータを記録する場合がある。 2. Description of the Related Art A workflow system is known in which each of a plurality of tasks included in a business is a node, processing contents in each node and the order of each node are defined, and the processing is advanced according to the order of each node. In the workflow system, for example, in response to a system failure, data in each node may be recorded so that the state in the node before the current node can be recovered.
例えば、ワークフローシステムで、データが更新されたときに更新結果のデータを記録し、指定されたノードのデータを取り出して、現在のノードより前のノードにおける状態に復旧する技術が知られている。また、更新されるデータを管理する技術の一例として、更新されたことを示す更新フラグをファイル毎に対応づけた管理テーブルを記憶し、管理テーブルを参照して公開中のファイルに更新フラグが設定された場合にファイルの公開を禁止する技術がある。さらに、ファイルの作成日時、ユーザ名、及びバージョンの値等の更新履歴を用いてファイルのバージョン管理を行う技術も知られている。 For example, a technique is known in which, in a workflow system, data of an update result is recorded when data is updated, data of a specified node is taken out, and a state in a node before the current node is restored. In addition, as an example of a technique for managing data to be updated, a management table in which an update flag indicating that the data has been updated is associated with each file is stored, and an update flag is set for a file that is open by referring to the management table There is a technology that prohibits the disclosure of files in the event that they are released. In addition, a technique for performing file version management using update history such as file creation date and time, user name, and version value is also known.
ところで、ワークフローシステムでは、各ノードの順序に従って処理を進める経路は、ノードにおける条件分岐処理、及び現在のノードより前のノードへ戻す処理等があり、予め決定することが困難な場合がある。従って、システム障害への対応を想定すると、ワークフローシステムによる各ノードの処理を進めつつ、各ノードにおけるデータを記録することで、データを退避する。ところが、各ノードにおけるデータを記録する場合、処理を進めるノード毎に記録するデータ量が増加する。また、ノードにおける条件分岐処理、及び現在のノードより前のノードへ戻す処理等により、ノードにおけるデータを重複して記録する場合もある。 By the way, in the workflow system, there are a condition branching process in the node, a process of returning to the node before the current node, and the like as a route for proceeding the process according to the order of each node, and it may be difficult to determine in advance. Therefore, assuming a response to a system failure, data is saved by recording data at each node while proceeding with processing of each node by the workflow system. However, when data is recorded in each node, the amount of data to be recorded increases for each node that proceeds with the processing. In addition, there is a case where data in a node is recorded redundantly by a conditional branch process in the node and a process of returning to a node before the current node.
1つの側面では、ワークフローにより所定順序に従って複数のノードの処理を進める場合に、退避するデータ量を削減することを目的とする。 In one aspect, an object is to reduce the amount of data to be saved when processing of a plurality of nodes is performed according to a workflow in a predetermined order.
開示の技術は、所定順序に従って複数のノードの処理を進めるワークフローにおいて、複数のノード毎に、管理情報が記憶部に記憶される。管理情報は、ノードを示す情報を、ノードで用いるデータ項目を示す情報に対応付けたバージョン情報と、ノードで少なくとも一部のデータが更新されたことを示すフラグ情報とを含む。ノードの処理を進める場合に、管理情報のうち、バージョン情報と、対象ノードより前の参照ノードのフラグ情報とに基づいて、対象ノードにおけるデータ項目のデータを退避するか否かを判定する。バージョン情報は、対象ノードのデータ項目に対応する対象ノードより前の参照ノードのデータ項目に対応付けられる。データを退避するか否かを示す判定結果に基づいて、対象ノードにおけるデータ項目のデータが退避される。 In the disclosed technique, management information is stored in a storage unit for each of a plurality of nodes in a workflow in which processing of the plurality of nodes is performed according to a predetermined order. The management information includes version information in which information indicating a node is associated with information indicating a data item used in the node, and flag information indicating that at least a part of data has been updated in the node. When the processing of the node proceeds, it is determined whether or not to save the data item data in the target node based on the version information and the flag information of the reference node before the target node in the management information. The version information is associated with the data item of the reference node before the target node corresponding to the data item of the target node. Based on the determination result indicating whether to save the data, the data of the data item in the target node is saved.
1つの態様では、ワークフローの各ノードにおいてデータを退避するときに、退避するデータ量を削減することができる、という効果を有する。 One aspect has an effect that the amount of data to be saved can be reduced when data is saved in each node of the workflow.
以下、図面を参照して開示の技術の実施形態の一例を詳細に説明する。本実施形態は、多数のノードを複数の情報処理装置で実行することで、全体の処理時間を短縮する場合に開示の技術を適用するものである。 Hereinafter, an example of an embodiment of the disclosed technology will be described in detail with reference to the drawings. In the present embodiment, the disclosed technique is applied when the overall processing time is shortened by executing a large number of nodes with a plurality of information processing apparatuses.
図1に、本実施形態に係るワークフローシステム10の一例を示す。ワークフローシステム10は、ワークフロー制御装置11を備えており、ワークフロー制御装置11は各種の指示を出力する操作装置26に接続される。ワークフロー制御装置11はCPU12及びメモリ14を含んでおり、メモリ14にはワークフロー制御プログラム16が記憶される。CPU12は、メモリ14に記憶されるワークフロー制御プログラム16を実行することによって、判定部18、退避部20、及び復元部22として動作する。CPU12には、記憶部24が接続される。記憶部24には、所定順序に従って複数のノードの処理を進めるワークフローの管理情報29が記憶される。管理情報29は、ノード毎に、ノードを示す情報を、ノードで用いるデータ項目を示す情報に対応付けたバージョン情報と、ノードで少なくとも一部のデータが更新されたことを示すフラグ情報とを含む。また、記憶部24には、ノードにおけるデータ項目のデータ27、及びデータ項目のデータ27を退避した退避データ28が記憶される。
FIG. 1 shows an example of a
ワークフローシステム10は、業務に対応するワークフローに含まれる複数のノードの処理を進める。複数のノードの処理を進める場合、次のノードへ処理を進めるための現在のノードを対象ノードとする。また、対象ノードより前のノードのうち該対象ノードのデータ項目を示す情報に対応づけられたバージョン情報に値を有するノードを参照ノードとする。ワークフローシステム10では、CPU12がワークフロー制御プログラム16を実行することにより、判定部18、退避部20、及び復元部22による処理が実行される。判定部18は、記憶部24に記憶された管理情報29のうち、参照ノードのデータ項目を示す情報に対応付けられたバージョン情報と、参照ノードのフラグ情報とに基づいて、対象ノードにおけるデータ項目のデータ27を退避するか否かを判定する。また、退避部20は、判定部18の判定結果に基づいて、対象ノードにおけるデータ項目のデータ27を退避データ28として退避する。復元部は、ワークフロー上で復元するノードとして入力された復元ポイントで、退避データ28をデータ27として復元する。
The
なお、ワークフローシステム10は開示の技術におけるワークフローシステムの一例であり、判定部18、退避部20、及び復元部22は開示の技術における判定部、退避部、及び復元部の一例である。また、ワークフロー制御プログラム16は開示の技術におけるワークフロー制御プログラムの一例である。
The
図2に、ワークフローシステム10に含まれるワークフロー制御装置11及び操作装置26をコンピュータで実現可能なシステムの一例としてコンピュータシステム30の一例を示す。また、図3に、図2に示すコンピュータシステム30を機能的なブロックにより表現した一例を示す。図2及び図3に示すワークフローシステム10としてのコンピュータシステム30は、ワークフロー制御装置11としてのサーバ装置32、及び操作装置26としての複数(図2及び図3では3台)の端末装置70を備える。
FIG. 2 shows an example of a
サーバ装置32はCPU34、メモリ36、及び不揮発性の格納部42を備える。CPU34、メモリ36、及び格納部42は、バス64を介して互いに接続される。また、サーバ装置32では、記録媒体39に対して読み書きするための装置(IO装置)38がバス64に接続される。さらに、サーバ装置32はコンピュータネットワーク69に接続するためのインタフェースを含む通信制御部40を備える。なお、格納部42はHDD(Hard Disk Drive)やフラッシュメモリ等によって実現できる。
The
格納部42には、OS(Operating System)44、サーバ装置32をワークフロー制御装置11として機能させるための制御プログラム46、及びデータベース(以下、DBと略記する。)52が記憶される。格納部42に格納された制御プログラム46は、ワークフロー制御プロセス48、及びデータ退避復元管理プロセス50を含む。CPU34は、制御プログラム46を格納部42から読み出してメモリ36に展開し、制御プログラム46が有する各プロセスを実行する。
The
サーバ装置32のCPU34が制御プログラム46を格納部42から読み出してメモリ36に展開し、制御プログラム46を実行することで、サーバ装置32が図1に示すワークフロー制御装置11として動作する。また、CPU34が制御プログラム46を格納部42から読み出してメモリ36に展開し、制御プログラム46に含まれるワークフロー制御プロセス48を実行することで、サーバ装置32は図3に示すワークフロー制御部68として動作する。さらに、CPU34が制御プログラム46のデータ退避復元管理プロセス50を実行することで、サーバ装置32は図3に示すデータ退避復元管理部66として動作する。
The
サーバ装置32で動作するワークフロー制御部68(図3)は、ワークフローに含まれるノードの処理を進める制御、つまりノードの移動制御、及びノードで用いるデータの更新等の時期の制御、つまりワークフローにおける処理のタイミング制御を行う。また、サーバ装置32で動作するデータ退避復元管理部66(図3)は、ワークフロー制御部68からの要請に応じて、ノードにおけるデータを退避したり、指示されたノードまでデータを復元(リカバリ)したりする制御を行う。
The workflow control unit 68 (FIG. 3) operating on the
なお、CPU34がデータ退避復元管理プロセス50を実行することで、サーバ装置32は図1に示す判定部18、退避部20、及び復元部22として動作する。つまり、制御プログラム46に含まれるデータ退避復元管理プロセス50は、図1に示すワークフロー制御プログラム16の一例である。
When the
図2及び図3では、コンピュータシステム30に、単体のサーバ装置32を含む一例を示すが、サーバ装置32は複数のサーバ装置を含んでもよい。例えば、サーバ装置32として、詳細を後述するデータ退避復元管理部66及びワークフロー制御部68の各々のを独立したサーバ装置で提供してもよい。
2 and 3 show an example in which the
また、サーバ装置32はコンピュータネットワーク69に接続することに限定されない。例えば、サーバ装置32は、端末装置70に有線接続または無線接続により直接接続してもよい。
Further, the
図2に示すように、サーバ装置32の格納部42に記憶されるDB52は、ワークフロー制御情報DB54、実行履歴情報DB56、データ項目情報DB58、退避データ情報DB60、及び退避データ管理情報DB62を含む。
As shown in FIG. 2, the
図4〜図10に、DB70に格納される各種DBの一例を示す。図4に、ワークフロー制御情報DB54の一例を示す。ワークフロー制御情報DB54は、ワークフローを示す情報80と、ワークフローのノードの各々で用いるデータ項目を示す情報82とを含む。本実施形態は、ワークフローを示す情報80の一例として、ワークフローが第1ノード〜第4ノードの4個のノードを含み、第1ノード〜第4ノードの順に処理が進められる場合を説明する。図4に示す一例は、ワークフローとして申請から承認までの一連の処理を示す。第1ノード80−1は、「申請」のノードであり、ワークフロー制御情報は、第1ノード80−1に、第1ノード80−1のデータ項目82−1が対応づけられて登録される。第2ノード80−2は、「チェック」のノードであり、ワークフロー制御情報は、第2ノード80−2に、第2ノード80−2のデータ項目82−2が対応づけられて登録される。同様に、第3ノード80−3は、「承認」のノードであり、ワークフロー制御情報は、第3ノード80−3に、第3ノード80−3のデータ項目82−3が対応づけられて登録される。また、第4ノードは、「確定」のノードであり、ワークフロー制御情報は、第4ノード80−4に、第4ノード80−4のデータ項目82−4が対応づけられて登録される。
4 to 10 show examples of various DBs stored in the
図5に、実行履歴情報DB56の一例を示す。実行履歴情報DB56には、ワークフロー制御部68が実行するワークフローの実行履歴を示す情報が蓄積される。図5では実行履歴情報DB56に、「実行順序」、「ノード名」、「実行日時」、及び「処理ID」の情報の各々が対応付けて登録されるワークフローの実行履歴を示す情報の一例を示す。「実行順序」を示す情報は、ワークフローにおいて実行されるノードの順序を示す情報であり、「ノード名」を示す情報は、ノードを識別するためのノードの名称を示す情報である。また、「実行日時」を示す情報はノードの実行開始時刻を示す情報であり、「処理ID」を示す情報はノードの実行を識別するための識別情報である。
FIG. 5 shows an example of the execution
図6に、データ項目の定義情報57の一例を示す。データ項目の定義情報57は、ワークフローのノードで用いるデータ項目の定義を示す情報が登録される。図6ではデータ項目の定義情報57に、「データ項目」、「名称」、及び「データ型」の情報の各々が対応付けて登録される一例を示す。「データ項目」に示す情報は、ノードのデータ項目を識別するための識別情報であり、「名称」に示す情報は、ノードの内容等を示すノードの名称を示す情報である。「データ型」に示す情報は、「名称」に示す情報を登録するときのデータの型を示す情報である。
FIG. 6 shows an example of the data
図7に、データ項目情報DB58の一例を示す。データ項目情報DB58には、ノードで用いるデータ項目の具体的内容を示す情報が登録される。図7ではデータ項目情報DB58に、「データ項目」、「名称」、及び、「値」の情報の各々が対応付けて登録されるデータ項目情報の一例を示す。「データ項目」を示す情報は、データ項目の定義情報57で定義されるノードのデータ項目を識別するための識別情報であり、「名称」に示す情報は、ノードの内容等を示すノードの名称を示す情報である。また、「値」を示す情報は、「名称」に示す情報の内容を示す情報である。なお、「名称」の情報は、「データ項目」の情報を兼ねてもよい。
FIG. 7 shows an example of the data
図8及び図9に、退避データ情報DB60の一例を示す。退避データ情報DB60には、ノードで退避するデータを示す情報が蓄積される。ここで、ノードにおいて退避するデータは、ノードで用いるデータから退避用のデータを再作成して、退避データとすることが一般的である。本実施形態では、退避データを再作成する処理の負荷を軽減するために、各ノードのデータ項目の定義情報から、各ノードの変更対象のデータ項目に対応するデータ保持オブジェクトを生成して、退避データとする。つまり、ノードのデータ項目の定義情報から生成したデータ保持オブジェクトを退避データの形式に転用する。具体的には、ノードのデータ項目の定義情報によるデータ保持オブジェクトを直列化した情報をノードで退避するデータを示す情報(退避データ)として退避データ情報DB60に登録する(詳細は後述)。
8 and 9 show an example of the saved
図8に、ノードのデータ項目に対応する退避用データの一例として、「データ項目」及び「値」の各情報が対応付けて登録される退避用データDB60Aを示す。「データ項目」を示す情報は、データ項目の定義情報57で定義されるノードのデータ項目を識別するための識別情報であり、「値」を示す情報は、データ項目の内容を示す情報である。図9には、退避データの一例として、「処理ID」及び「退避データ」の各情報が対応付けて登録されるデータ保持オブジェクトDB60Bを示す。「処理ID」を示す情報はノードの実行を識別するための識別情報であり、「退避データ」を示す情報は、データ保持オブジェクトを示す情報である。データ保持オブジェクトを示す情報は、ノードのデータ項目の名称と値とを、ノードで用いるデータ項目について、直列化したデータである。図8に示す退避用データから生成されるデータ保持オブジェクトは、「D1」、「Value−1−1」、「D2」、「Value−2−1」、・・・、となる。なお、図8に退避用データDB60Aを示し、図9にデータ保持オブジェクトDB60Bを示したが、両方のDBを退避データ情報DB60として登録することに限定されない。つまり、データ項目の定義情報57で定義されるノードのデータ項目と値からデータ保持オブジェクトを生成することができる。従って、本実施形態では、各ノードの変更対象のデータ項目に対応するデータ保持オブジェクトをノードのデータ項目定義情報から生成されるデータ保持オブジェクトを用いて、データを操作することができる。
FIG. 8 shows a
図10に、退避データ管理情報DB62の一例を示す。退避データ管理情報DB62には、データを退避するための判定に用いる情報が登録される。図10では退避データ管理情報DB62に、「処理ID」、「データ項目バージョン」及び「更新フラグ」の情報の各々が対応付けて登録される退避データ管理情報の一例を示す。「処理ID」を示す情報はノードの実行を識別するための識別情報である。「データ項目バージョン」を示す情報には対象ノードで利用するデータ項目に、データのバージョンを示す情報が格納される。「更新フラグ」には、対象ノードでデータが更新されるときにONの文字情報が格納される(セットされる)。なお、「データ項目バージョン」の情報は、ワークフローで用いるデータ項目の各々(図10では、D1,D2,D3,D4)に対応して情報が登録される。
FIG. 10 shows an example of the saved data
図2に示すように、サーバ装置32は、複数の端末装置70の各々に、コンピュータネットワーク69を介して接続される。なお、図2では、コンピュータシステム30に、3台の端末装置70を含む一例を示すが、端末装置70は3台に限定されるものではなく、詳細を後述するクライアント機能を実行できればよく、1台以上の端末装置70を含めばよい。
As shown in FIG. 2, the
端末装置70の各々はCPU71、メモリ72、及び操作プログラム74が記録された不揮発性の記録部73を備える。CPU71、メモリ72、及び記録部73は、バス79を介して互いに接続される。また、端末装置70は、ディスプレイ等の表示部75、キーボード及びマウス等の入力部76を備え、表示部75及び入力部76はバス79に接続される。また、端末装置70は、記録媒体39に対して読み書きするためのIO装置77がバス79に接続される。さらに、端末装置70はコンピュータネットワーク69に接続するためのインタフェースを含む通信制御部78を備える。なお、記録部73はHDDやフラッシュメモリ等によって実現できる。
Each
以下の説明で、複数の端末装置70又は端末装置70に含まれる要素について個別に対象とする場合は、端末装置70A,70B,70Cで示すように、符号に記号を付与して表記し、端末装置70同士又は計算機に含まれる要素同士を区別して扱う。本実施形態では、ワークフローを操作する操作者が利用する端末装置70を、ワークフロークライアント側の端末装置70Aとして説明する。また、ワークフロー制御部68に対して入出力を実行するユーザシステムを、ユーザシステム側の端末装置70Bとして説明する。さらに、ワークフローの運用管理を実行する操作者が利用する端末装置70を、運用管理クライアント側の端末装置70Cとして説明する。
In the following description, when individually targeting a plurality of
次に、本実施形態の作用を説明する。以下の説明では、申請から承認までのノードを含むワークフローの一例を説明する。図11に、ワークフローのノードとして申請から承認までの一連の流れ一例を示す。図11に示す一例では、「申請」の第1ノード80−1で、データ項目82−1のデータが更新される更新処理80−1A、及び「確定」の第4ノードで、データ項目82−4が更新される更新処理80−4Aを含む。 Next, the operation of this embodiment will be described. In the following description, an example of a workflow including nodes from application to approval will be described. FIG. 11 shows an example of a series of flow from application to approval as a workflow node. In the example illustrated in FIG. 11, the update process 80-1A in which the data of the data item 82-1 is updated in the first node 80-1 of “application”, and the data item 82- in the fourth node of “confirmed”. 4 includes an update process 80-4A in which 4 is updated.
図12に、ワークフローシステム10をコンピュータシステム30で実現する場合におけるサーバ装置32で動作するワークフロー制御部68の処理の流れの一例を示す。ワークフロー制御部68では、図12に示す処理ルーチンが所定時間ごとに実行される。つまり、サーバ装置32のCPU34は、制御プログラム46に含まれるワークフロー制御プロセス48を実行することで、ワークフロー制御部68として動作し、図12に示す処理ルーチンを所定時間ごとに実行する。
FIG. 12 shows an example of the processing flow of the
ワークフロー制御部68は、ステップ100で、端末装置70から送信される情報を受信したか否かを判断する。端末装置70から送信される情報は、ワークフローを示す情報80における処理を、現在のノードから次のノードへ移動する指示を示す情報、及びリカバリポイントへデータを復元する指示を示す情報を含む。ワークフロー制御部68は、ステップ100で、否定判断した場合にはそのまま本処理ルーチンを終了する。一方、ステップ100で肯定判断されると、ワークフロー制御部68は、ステップ102で、受信した情報がノード移動指示を示す情報か否かを判断する。ワークフロー制御部68は、ノード移動指示を示す情報を受信した場合、ステップ102で肯定判断し、現在のノードから次のノードへ移動する場合におけるノード移動処理(詳細は後述)を実行した後に、本処理ルーチンを終了する。
In
また、リカバリポイントへデータを復元する指示を示す情報を受信した場合、ワークフロー制御部68は、ステップ102で否定判断した後に、ステップ106で、肯定判断する。ワークフロー制御部68は、ステップ106で、肯定判断した場合、ステップ108で、指示されたリカバリポイントへ復元する復元処理(詳細は後述)を実行した後に、本処理ルーチンを終了する。なお、ステップ100で受信した情報がノード移動指示を示す情報及びリカバリ指示を示す情報の何れでもない場合、ワークフロー制御部68は、ステップ102及びステップ106の両方で否定判断し、本処理ルーチンを終了する。
If the information indicating the instruction to restore data to the recovery point is received, the
次に、図12に示すステップ104のノード移動処理をさらに説明する。図12に示すステップ104のノード移動処理では、図13に示す処理ルーチンが実行される。
Next, the node movement process in
ワークフロー制御部68は、ステップ110で、端末装置70から送信される情報を受け取る。端末装置70から送信される情報の一例には、ワークフロークライアント側の端末装置70Aから送信されるデータ項目のデータを変更する内容を含む変更の指示、及びワークフローにおける処理を、現在のノードから次のノードへ移動する指示を示す情報がある。変更の指示、及びノード移動の指示を示す情報は、ユーザシステム側の端末装置70Bから送信される場合もある。また、ワークフロー制御部68は、ステップ110で、端末装置70、つまり、ワークフロークライアント側の端末装置70Aまたはユーザシステム側の端末装置70Bが応答を要求することを示す情報も受け取る。
The
また、ワークフロー制御部68は、ステップ112で、既存の処理IDより大小比較で大きい値の新規のIDを割り当てる。つまり、ノード移動指示がなされた現在のノードから移動する次のノードの処理IDとして、新規の処理IDを割り当てる。処理IDの一例には、1から1づつインクリメントする数値を示す情報がある。次に、ワークフロー制御部68は、ステップ114で、データ退避復元管理部66へデータ退避処理の実行を要求する。データ退避復元管理部66は、データ退避処理を実行し、完了すると完了を示す情報を返信する(詳細は後述)。ワークフロー制御部68は、データ退避復元管理部66から完了を示す情報を受信するまで、ステップ116で否定判断を繰り返し、受信するとステップ118へ処理を移行する。ステップ118では、ワークフロー制御部68は、ステップ110で受け取った指示内容に従って、ワークフロー制御情報、実行履歴情報及びデータ項目情報を変更する。次に、ワークフロー制御部68は、ステップ120において、端末装置70から応答を要求することを示す情報を受け取ったか否かを判別することにより、処理結果の応答が要求されたか否かを判断する。ワークフロー制御部68は、ステップ120で否定判断した場合、そのまま本処理ルーチンを終了し、肯定判断した場合、ステップ122で端末装置70へ処理結果を返信する応答を行った後に本処理ルーチンを終了する。
In
次に、データ退避復元管理部66の動作を説明する。
Next, the operation of the data save / restore
図14に、ワークフローシステム10をコンピュータシステム30で実現する場合におけるサーバ装置32で動作するデータ退避復元管理部66の処理の流れの一例を示す。データ退避復元管理部66では、図14に示す処理ルーチンが所定時間ごとに実行される。つまり、サーバ装置32のCPU34は、制御プログラム46に含まれるデータ退避復元管理プロセス50を実行することで、データ退避復元管理部66として動作し、図14に示す処理ルーチンを所定時間ごとに実行する。
FIG. 14 shows an example of the processing flow of the data save / restore
データ退避復元管理部66は、ステップ200で、ワークフロー制御部68から送信される要求を示す情報を受信したか否かを判断する。ワークフロー制御部68から送信される情報は、ノードのデータを退避するデータ退避処理の実行を要求する情報、及びリカバリポイントへデータを復元するリカバリ処理の実行を要求する情報を含む。データ退避復元管理部66は、ステップ200で、否定判断した場合にはそのまま本処理ルーチンを終了する。一方、ステップ200で肯定判断されると、データ退避復元管理部66は、ステップ202で、受信した要求情報がデータ退避処理の実行を要求する情報か否かを判断する。データ退避復元管理部66は、データ退避処理の実行を要求する情報を受信した場合、ステップ202で肯定判断し、ノードを移動する場合における現在のノードのデータを退避するデータ退避処理(詳細は後述)を実行した後に、本処理ルーチンを終了する。
In
また、リカバリポイントへデータを復元するリカバリ処理の実行を要求する情報を受信した場合、データ退避復元管理部66は、ステップ202で否定判断した後に、ステップ206で、肯定判断する。データ退避復元管理部66は、ステップ206で、肯定判断した場合、ステップ208で、指示されたリカバリポイントへ復元するリカバリ処理(詳細は後述)を実行した後に、本処理ルーチンを終了する。なお、ステップ200で受信した情報がデータ退避処理の実行要求を示す情報及びリカバリ処理の実行要求を示す情報の何れでもない場合、データ退避復元管理部66は、ステップ202及びステップ206の両方で否定判断し、本処理ルーチンを終了する。
When receiving information requesting execution of recovery processing for restoring data to a recovery point, the data save / restore
次に、図14に示すステップ204のデータ退避処理をさらに説明する。ステップ204のデータ退避処理では、退避データ管理情報は、ノードの処理毎にデータ項目バージョンと更新フラグを保持する。つまり、退避データ管理情報は、ワークフローの処理毎に1個を保持する。また、データ退避処理では、データ項目バージョンは、データが退避されたタイミングで格納される。そして、データ退避処理では、更新フラグは、現ノードから次ノードへ移動するタイミングでノードのデータ項目が更新された場合に値「ON」が設定される。なお、更新フラグは、ノードでデータが非更新の場合は、データが更新されていないことを示す情報、例えば値「OFF」を設定することができる。なお、ノードでデータが非更新の場合、更新フラグをリセット(値をセットしない)してもよい。さらに、データ退避処理では、現ノードから次ノードに移動するタイミングにおいて、現ノードのデータ項目に対応するデータ項目バージョンについて、退避データ管理情報を参照して求める。データ項目バージョンの一例には、処理IDと同じ値を持つ情報がある。また、データ退避処理では、ノード毎にノードのデータ項目を退避データ管理情報が持つバージョン情報と更新フラグに基づいて、データを退避するか否かを判断し、判断結果に基づいてデータを退避する処理、またはデータを退避しない処理を行う。なお、データを退避しない処理とは、データを退避する処理を行うことなく次処理へ移行する、何もしない処理である。
Next, the data saving process in
ノードにおけるデータを退避するか否かの判定条件の一例を示す。第1判定条件は、データ項目バージョンが存在しない初期状態であれば、データ退避を実行すると判定する条件である。第2判定条件は、現ノードのデータ項目の各々に対応する最新のデータ項目バージョンが、データ項目間で異なるバージョンである場合、データ退避を実行すると判定する条件である。第3判定条件は、最新のデータ項目バージョンの更新フラグが設定されている場合、データ退避を実行すると判定する条件である。第4判定条件は、第1判定条件、第2判定条件、および第3判定条件に該当しない場合、データ退避は不要とし、データ退避を実行しないと判定する条件である。 An example of conditions for determining whether to save data in a node is shown. The first determination condition is a condition for determining that data saving is to be executed if there is no data item version in the initial state. The second determination condition is a condition for determining that data saving is executed when the latest data item version corresponding to each data item of the current node is a different version among the data items. The third determination condition is a condition for determining that data saving is to be executed when the update flag of the latest data item version is set. The fourth determination condition is a condition for determining that data evacuation is not necessary and data evacuation is not executed when the first determination condition, the second determination condition, and the third determination condition are not met.
詳細には、図14に示すステップ204のデータ退避処理では、図15に示す処理ルーチンが実行される。
Specifically, in the data saving process in
データ退避復元管理部66は、ステップ210で、退避データ管理情報を参照し、現ノードのデータ項目に対応する最新のデータ項目バージョンをデータ項目毎に求める。つまり、データ退避復元管理部66は、現ノードのデータ項目に対応する現ノードよりより前でかつ最新のデータ項目のデータ項目バージョンを、現ノードのデータ項目の各々について求める。
In
次に、データ退避復元管理部66は、ステップ212で、求めたデータ項目バージョンは全て存在するか否かを判断する。つまり、データ退避復元管理部66は、現ノードのデータ項目の各々に対応する最新のデータ項目バージョンが全て存在するか否かを判断する。データ退避復元管理部66は、ステップ212で肯定判断すると、ステップ214へ処理を移行し、否定判断すると、ステップ224へ処理を移行する。
Next, in
ステップ212で肯定判断すると、データ退避復元管理部66は、ステップ214で、求めたデータ項目バージョンが全て同じデータ項目バージョンの値であるか否かを判断する。データ退避復元管理部66は、ステップ214で肯定判断すると、ステップ216へ処理を移行し、否定判断すると、ステップ224へ処理を移行する。
If an affirmative determination is made in
ステップ214で肯定判断すると、データ退避復元管理部66は、ステップ216で、退避データ管理情報を参照し、データ項目毎のデータ項目バージョンに対応する更新フラグを求める。つまり、データ退避復元管理部66は、ステップ210で求めた現ノードのデータ項目毎の最新のデータ項目バージョンに対応する更新フラグを求める。
If an affirmative determination is made in
次に、データ退避復元管理部66は、ステップ218において、ステップ216で求めた更新フラグが全てオフか否かを判断する。データ退避復元管理部66は、ステップ218で肯定判断すると、ステップ220へ処理を移行し、否定判断すると、ステップ224へ処理を移行する。
Next, in
ステップ218で肯定判断すると、データ退避復元管理部66は、ステップ220で、データ項目のデータの変更が指示されているか否かを判断する。データ退避復元管理部66は、ステップ220で肯定判断すると、ステップ222で、ステップ216で求めた更新フラグをオン(「ON])に設定した後に、本処理ルーチンを終了し、否定判断すると、そのまま本処理ルーチンを終了する。なお、ステップ222では、データ退避処理の完了を示す情報を、ワークフロー制御部68へ返信する。
If the determination in
また、データ退避復元管理部66は、ステップ224で、退避データ管理情報に、新しい処理IDの値をキーとする現ノードの情報として、データ項目バージョンと更新フラグとを含むデータを追加する。つまり、退避データ管理情報に、新しい処理IDの値をキーとする情報を含むデータを追加する。新しい処理IDの値をキーとする情報は、現ノードのデータ項目に対応するデータ項目バージョンに、新しい処理IDの値または一意の値を有する情報を含む。また、新しい処理IDの値をキーとする情報は、データ項目のデータが更新される場合、更新フラグの値がオンである情報も含む。
In
さらに、データ退避復元管理部66は、ステップ226で、退避データ情報に、新しい処理IDの値をキーとする現ノードのデータ項目の値を有するデータを追加する。本実施形態では、退避データ情報は、ノードのデータ項目定義情報から、各ノードの変更対象のデータ項目に対応するデータ保持オブジェクトを生成したデータである。なお、ステップ226では、データ退避処理の完了を示す情報を、ワークフロー制御部68へ返信する。
Further, in
次に、データ退避復元管理部66で実行されるデータ退避処理について具体的に説明する。図16及び図17に、第1ノード80−1〜第4ノード80−4における各種データの関係を示す。
Next, the data saving process executed by the data saving / restoring
まず、第1ノード80−1では、退避データ管理情報が参照され、現ノードのデータ項目に対応する最新のデータ項目バージョンがデータ項目毎に求められ(工程L01)、第1ノード80−1におけるデータを退避するか否かが判定される(工程L02)。第1ノード80−1は、ワークフローの最初のノードであるため、第1ノード80−1より最新のデータ項目バージョンは存在しない。従って、第1判定条件によりデータを退避すると判定され、退避データ管理情報に、新しい処理IDの値をキーとする情報を含むデータが追加される(工程L03)。第1ノード80−1では、データ項目のデータが更新されるので、更新フラグの値がオンである情報も追加される。また、第1ノード80−1では、退避するデータとして、第1ノード80−1のデータ項目定義情報から定まるデータ保持オブジェクトである退避データ情報が生成され、記憶される(工程L04)。 First, in the first node 80-1, the saved data management information is referred to, the latest data item version corresponding to the data item of the current node is obtained for each data item (step L01), and the first node 80-1 It is determined whether or not to save data (step L02). Since the first node 80-1 is the first node in the workflow, there is no latest data item version from the first node 80-1. Therefore, it is determined to save the data according to the first determination condition, and data including information with the new process ID value as a key is added to the saved data management information (step L03). Since the data of the data item is updated in the first node 80-1, information in which the value of the update flag is on is also added. In the first node 80-1, saved data information that is a data holding object determined from the data item definition information of the first node 80-1 is generated and stored as saved data (step L04).
第2ノード80−2でも同様に、退避データ管理情報が参照され、最新のデータ項目バージョンが求められ(工程L01)、第2ノード80−2におけるデータを退避するか否かが判定される(工程L02)。第2ノード80−2では、最新のデータ項目バージョンが同一であるが、更新フラグの値がオンであるため、第3判定条件によりデータを退避すると判定され、退避データ管理情報に、新しい処理IDの値をキーとする情報を含むデータが追加される(工程L03)。第2ノード80−2では、データ項目のデータが更新されないので、更新フラグは設定されない。また、第2ノード80−2でも、退避するデータとして、第2ノード80−2のデータ項目定義情報から定まるデータ保持オブジェクトである退避データ情報が生成され、記憶される(工程L04)。 Similarly, in the second node 80-2, the saved data management information is referred to, the latest data item version is obtained (step L01), and it is determined whether or not to save the data in the second node 80-2 ( Step L02). In the second node 80-2, the latest data item version is the same, but since the value of the update flag is on, it is determined that the data is to be saved according to the third determination condition, and a new process ID is included in the saved data management information. Data including information with the value of as a key is added (step L03). In the second node 80-2, the data item data is not updated, so the update flag is not set. Also, in the second node 80-2, saved data information that is a data holding object determined from the data item definition information of the second node 80-2 is generated and stored as the saved data (step L04).
また、第3ノード80−3でも、退避データ管理情報が参照され、最新のデータ項目バージョンが求められ(工程L01)、第3ノード80−3におけるデータを退避するか否かが判定される(工程L02)。第3ノード80−3では、最新のデータ項目バージョンが同一であるため、第4判定条件によりデータを退避しないと判定され、退避データ管理情報に、データは追加されない(工程L03)。また、第3ノード80−3では、データ保持オブジェクトである退避データ情報も生成されない(工程L04)。 In the third node 80-3, the saved data management information is also referred to, the latest data item version is obtained (step L01), and it is determined whether or not the data in the third node 80-3 is to be saved (step S01). Step L02). In the third node 80-3, since the latest data item version is the same, it is determined not to save the data according to the fourth determination condition, and no data is added to the saved data management information (step L03). Further, the third node 80-3 does not generate saved data information that is a data holding object (step L04).
さらに、第4ノード80−4でも同様に、退避データ管理情報が参照され、最新のデータ項目バージョンが求められ(工程L01)、第4ノード80−4におけるデータを退避するか否かが判定される(工程L02)。第4ノード80−4では、最新のデータ項目バージョンが相違するため、第2判定条件によりデータを退避すると判定され、退避データ管理情報に、新しい処理IDの値をキーとする情報を含むデータが追加される(工程L03)。第4ノード80−4では、データ項目のデータが更新されるので、更新フラグの値がオンである情報も追加される。また、第4ノード80−4でも、退避するデータとして、第4ノード80−4のデータ項目定義情報から定まるデータ保持オブジェクトである退避データ情報が生成され、記憶される(工程L04)。 Further, similarly in the fourth node 80-4, the saved data management information is referred to, the latest data item version is obtained (step L01), and it is determined whether or not to save the data in the fourth node 80-4. (Step L02). In the fourth node 80-4, since the latest data item version is different, it is determined that the data is to be saved according to the second determination condition, and the data including information with the new process ID value as a key is included in the saved data management information. It is added (step L03). Since the data of the data item is updated in the fourth node 80-4, information whose update flag value is ON is also added. Also, in the fourth node 80-4, saved data information that is a data holding object determined from the data item definition information of the fourth node 80-4 is generated and stored as the saved data (step L04).
次に、ワークフローシステム10をコンピュータシステム30で実現する場合における情報の流れについて具体的に説明する。図18及び図19に、ワークフロークライアント側の端末装置70A、データ退避復元管理部66、及びワークフロー制御部68の間における情報の流れの一例を示す。なお、図18及び図19では、第2ノード80−2においてデータ項目のデータの変更を指示する場合における情報の流れの一例を示す。
Next, the flow of information when the
申請者は、ワークフロークライアント側の端末装置70Aを操作して、ワークフロー制御部68へ変更を指示する(工程L10)。図18に示す例では、データ項目「D2」である「宿泊場所」を「XYZホテル」に変更する指示、データ項目「D3」である「宿泊費」を「\18,500-」に変更する指示、データ項目「D4」である「払出日」を「2013/12/19」に変更する指示が含まれる。また、工程L10における指示には、次のノードへ進める指示も含まれる。ワークフロー制御部68は、端末装置70Aからの指示に応じて、ワークフロー制御情報とデータ項目情報とに基づく、データ退避復元管理部66へデータ退避処理の実行を要求する(工程L11)。データ退避復元管理部66は、ワークフロー制御部68からの要求に応じて、退避データ管理情報のデータに基づき、データ退避が必要か否かを判定し、データを退避すると判定した場合、退避データ情報にデータ項目の値を格納する(工程L12)。
The applicant operates the
次に、データ退避復元管理部66は、退避データ管理情報を追加または変更する(工程L13)。ワークフロー制御部68は、ワークフロー制御情報およびデータ項目情報を変更し、またワークフロー処理の実行を、実行履歴情報に追加する(工程L14)。さらに、ワークフロー制御部68は、ワークフロークライアント側の端末装置70Aから応答要求がなされている場合、ワークフロークライアント側の端末装置70Aへ処理結果を通知する(工程L15)。
Next, the data save / restore
次に、ワークフロー制御部68で実行される図12に示すステップ108の復元処理をさらに説明する。図12に示すステップ108の復元処理では、図20に示す処理ルーチンが実行される。
Next, the restoration process in
ワークフロー制御部68は、ステップ130で、端末装置70から送信される情報を受け取る。リカバリ指示を示す情報の一例には、運用管理クライアント側の端末装置70Cから送信されるリカバリポイントへデータを復元する指示を示す情報がある。また、ワークフロー制御部68は、ステップ130で、端末装置70、つまり、運用管理クライアント側の端末装置70Cが応答を要求することを示す情報も受け取る。
In
また、ワークフロー制御部68は、ステップ132で、実行履歴情報を参照し、リカバリ指示に対応する処理IDを復元処理IDとして求める。次に、ワークフロー制御部68は、ステップ134で、データ退避復元管理部66へリカバリ処理の実行を要求する。データ退避復元管理部66は、リカバリ処理を実行し、完了すると完了を示す情報を返信する(詳細は後述)。ワークフロー制御部68は、データ退避復元管理部66から完了を示す情報を受信するまで、ステップ136で否定判断を繰り返し、受信するとステップ138へ処理を移行する。ステップ138では、ワークフロー制御部68は、リカバリ処理から返されたリカバリ用退避データと、リカバリ指示とを基にして、ワークフロー制御情報、実行履歴情報及びデータ項目情報を変更する。次に、ワークフロー制御部68は、ステップ140において、端末装置70から応答を要求することを示す情報を受け取ったか否かを判別することにより、処理結果の応答が要求されたか否かを判断する。ワークフロー制御部68は、ステップ140で否定判断した場合、そのまま本処理ルーチンを終了し、肯定判断した場合、ステップ142で端末装置70へ処理結果を返信する応答を行った後に本処理ルーチンを終了する。
In
次に、データ退避復元管理部66で実行される図14に示すステップ208のリカバリ処理をさらに説明する。図14に示すステップ208のリカバリ処理では、図21に示す処理ルーチンが実行される。
Next, the recovery process in
データ退避復元管理部66は、ステップ230で、リカバリ用退避データがそろったことを判断するための、データ項目の各々に対応する判定フラグの値をOFFする。つまり、ステップ230では、データ項目の各々に判定フラグを対応付けて、判定フラグの値がOFFに設定される。
In
次に、データ退避復元管理部66は、ステップ232で、退避データ管理情報から、処理IDが復元処理IDの値以上のデータを順番に探索する。次に、データ退避復元管理部66は、ステップ234で、探索結果のデータから、1つのデータを抽出し、次のステップ236で、データの内容が有るか否かを判断する。データ退避復元管理部66は、ステップ236で否定判断すると、ステップ248へ処理を移行する。
Next, in
ステップ236で肯定判断すると、データ退避復元管理部66は、ステップ238で、抽出したデータのデータ項目バージョンのうち、値が設定されている全てのデータ項目について、判定フラグの状態を確認する。次に、データ退避復元管理部66は、ステップ240で、状態がオフである判定フラグが有るか否かを判断し、肯定判断すると、ステップ242へ処理を移行し、否定判断すると、ステップ234へ処理を戻す。
If an affirmative determination is made in
ステップ240で肯定判断すると、データ退避復元管理部66は、ステップ242で、退避データ情報を参照し、抽出したデータの処理IDに対応するデータを取り出し、リカバリ用退避データとして保持する。次に、データ退避復元管理部66は、抽出したデータのデータ項目バージョンのうち、値が設定されているデータ項目について、判定フラグの値をONに設定する。また、データ退避復元管理部66は、ステップ246で、全てのデータ項目の判定フラグがONであるか否かを判断し、否定判断した場合にはステップ234へ処理を戻し、肯定判断した場合には、ステップ248へ処理を移行する。
If an affirmative determination is made in
データ退避復元管理部66は、ステップ248で、退避データ管理情報と、退避データ情報とに基づき、処理IDの値が復元処理IDの値以上のデータを削除する。また、データ退避復元管理部66は、ステップ250で、保持したリカバリ用退避データを、ワークフロー制御部68へ返信する。
In
次に、ワークフローシステム10をコンピュータシステム30で実現する場合における情報の流れについて具体的に説明する。図22及び図23に、運用管理クライアント側の端末装置70C、データ退避復元管理部66、及びワークフロー制御部68の間における情報の流れの一例を示す。なお、図22及び図23では、運用管理者が、故障が発生したワークフロー処理に対して実行順序が第2ノード80−2の状態に戻すリカバリ処理を指示する場合における情報の流れの一例を示す。
Next, the flow of information when the
運用管理者は、運用管理クライアント側の端末装置70Cを操作して、故障が発生したワークフロー処理に対して実行順序が第2ノード80−2の状態に戻すリカバリ処理を指示する(工程L20)。ワークフロー制御部68は、実行履歴情報から実行順序2に対応する処理IDを求めて、データ退避復元管理部66へリカバリに必要な退避データの抽出を依頼する(工程L21)。データ退避復元管理部66は、退避データ管理情報からリカバリに必要な退避データを判断し、退避データ情報に格納されている退避データを取り出してワークフロー制御部68に渡す(工程L22)。なお、工程L22では、退避データ管理情報と退避データ情報とに基づいて、リカバリ対象の処理ID以降のデータを削除する。
The operation administrator operates the
次に、ワークフロー制御部68は、リカバリに必要な退避データを使ってワークフロー制御情報およびデータ項目情報を変更する(工程L23)。また、工程L23では、ワークフロー制御部68は、リカバリ処理の実行を、実行履歴情報に追加する。さらに、ワークフロー制御部68は、運用管理クライアント側の端末装置70Cから応答要求がなされている場合、運用管理クライアント側の端末装置70Cへ処理結果を通知する(工程L24)。
Next, the
なお、CPU34により実行されるステップ212〜ステップ220の処理は、サーバ装置32がワークフローシステムとして動作する場合における判定部の処理に対応する一例である。また、CPU34により実行されるステップ224及びステップ226の処理は、サーバ装置32がワークフローシステムとして動作する場合における退避部の処理に対応する一例である。さらに、CPU34により実行されるステップ248及びステップ250の処理は、サーバ装置32がワークフローシステムとして動作する場合における復元部の処理に対応する一例である。
Note that the processing of
以上説明したように、本実施形態は、ノード毎にノードのデータ項目のデータを、退避データ管理情報に含まれるバージョン情報と更新フラグとに基づいて、退避するか否かを判断するので、最小限のデータを退避すればよく、退避データ量を削減できる。また、データを退避しない場合に、データを退避する処理を削減でき、処理コストを抑制できる。 As described above, this embodiment determines whether to save the data of the node data item for each node based on the version information and the update flag included in the save data management information. It is only necessary to save a limited amount of data, and the amount of saved data can be reduced. Further, when the data is not saved, the process for saving the data can be reduced, and the processing cost can be suppressed.
また、本実施形態では、バージョン情報と更新フラグとに基づいて、データを退避することを判定するので、ノード毎にデータを退避することに比べて、退避データ量を削減できる。 In this embodiment, since it is determined to save data based on the version information and the update flag, the saved data amount can be reduced compared to saving data for each node.
また、本実施形態では、ワークフローに含まれる最初のノードについて、データ項目のデータを退避するので、最初のノードから確実にデータを退避できる。 Further, in the present embodiment, the data item data is saved for the first node included in the workflow, so that the data can be reliably saved from the first node.
また、本実施形態では、現在のノードより前のノードのデータ項目に対応付けられたバージョン情報が同じでかつ、データが更新されていない場合、データを退避しないので、重複したデータを退避することを抑制できる。 In this embodiment, if the version information associated with the data item of the node before the current node is the same and the data has not been updated, the data is not saved, so the duplicate data is saved. Can be suppressed.
また、本実施形態では、ノード毎に、ノードで用いるデータ項目を示す情報に対応付けたバージョン情報と、ノードで少なくとも一部のデータが更新されたことを示すフラグ情報とを含む情報を、退避データ管理情報に追加して記憶する。従って、退避データ管理情報を参照することにより、ノードにおけるデータ項目のバージョンとノードでデータが更新されたこととを確認できる。 In this embodiment, for each node, information including version information associated with information indicating data items used in the node and flag information indicating that at least a part of data has been updated in the node is saved. Add to data management information and store. Therefore, by referring to the saved data management information, it is possible to confirm that the version of the data item in the node and that the data has been updated in the node.
また、本実施形態では、ノードで退避するデータ項目のデータは、ノードで用いるデータ項目のデータを組み合わせて生成したデータであるので、退避データを再作成する処理を抑制できる。 Further, in the present embodiment, the data item data saved at the node is data generated by combining the data item data used at the node, and therefore the process of recreating the saved data can be suppressed.
さらに、本実施形態では、入力されたノードの位置を示す情報と、退避データ管理情報と、退避したデータとに基づいて、入力されたノードのデータを復元する。退避データ管理情報によって、入力されたノードの位置に対応するノードのデータを復元するためのデータ項目を含むノードを迅速に特定できる。また、退避データ管理情報によって、退避されるデータも迅速に特定できる。 Further, in the present embodiment, the input node data is restored based on the information indicating the position of the input node, the saved data management information, and the saved data. Based on the saved data management information, it is possible to quickly identify a node including a data item for restoring the data of the node corresponding to the input node position. Further, the saved data can be quickly identified by the saved data management information.
さらに、本実施形態では、ノード毎に、退避する個々のデータをつなげて保持するので、退避したデータからデータ項目のデータを抽出することで、容易にデータを復元できる。 Furthermore, in the present embodiment, the individual data to be saved is connected and held for each node, so that data can be easily restored by extracting data item data from the saved data.
なお、上記ではワークフローシステム10をサーバ装置32により実現する一例を説明した。しかし、これらの構成に限定されるものではなく、上記説明した要旨を逸脱しない範囲において、各種の改良及び変更を行っても良いのはもちろんである。
In the above description, an example in which the
また、上記ではプログラムが記憶部に予め記憶(インストール)されている態様を説明したが、これに限定されるものではない。例えば、開示の技術におけるプログラムは、CD−ROMやDVD−ROM等の記録媒体に記録されている形態で提供することも可能である。 Moreover, although the aspect by which the program was previously memorize | stored (installed) in the memory | storage part was demonstrated above, it is not limited to this. For example, the program in the disclosed technology can be provided in a form recorded on a recording medium such as a CD-ROM or a DVD-ROM.
以上の実施形態に関し、更に以下の付記を開示する。 Regarding the above embodiment, the following additional notes are disclosed.
(付記1)
ワークフローにより所定順序に従って複数のノードの処理を進める場合に、複数のノード毎に、前記ノードを示す情報を、前記ノードで用いるデータ項目を示す情報に対応付けたバージョン情報と、前記ノードで少なくとも一部のデータが更新されたことを示すフラグ情報とを含む管理情報が記憶部に記憶され、前記記憶部に記憶された前記管理情報のうち、次のノードへ処理を進める場合の現在のノードを対象ノードとし、かつ該対象ノードより前のノードのうち該対象ノードのデータ項目を示す情報に対応づけられたバージョン情報に値を有するノードを参照ノードとし、該参照ノードのデータ項目を示す情報に対応付けられたバージョン情報と、前記参照ノードのフラグ情報とに基づいて、前記対象ノードにおけるデータ項目のデータを退避するか否かを判定し、
判定結果に基づいて、前記対象ノードにおけるデータ項目のデータを退避する
ことを含む処理をコンピュータに実行させるためのワークフロー制御プログラム。
(Appendix 1)
When processing a plurality of nodes according to a workflow in a predetermined order, for each of the plurality of nodes, information indicating the node is associated with information indicating a data item used in the node and at least one of the nodes. Management information including flag information indicating that the data of the unit has been updated is stored in the storage unit, and the current node when processing proceeds to the next node among the management information stored in the storage unit A node having a value in the version information associated with the information indicating the data item of the target node among the nodes prior to the target node is set as a reference node, and the information indicating the data item of the reference node Data of the data item in the target node based on the associated version information and the flag information of the reference node It determines whether to retreat,
A workflow control program for causing a computer to execute processing including saving data of data items in the target node based on a determination result.
(付記2)
前記参照ノードのデータ項目を示す情報に対応付けられたバージョン情報が設定されていない場合、または、前記参照ノードのデータ項目を示す情報に対応付けられたバージョン情報の間で相違するバージョン情報の値が設定されている場合、または、前記参照ノードで少なくとも一部のデータが更新されたことを示すフラグ情報が設定されている場合、前記対象ノードにおけるデータ項目のデータを退避することを判定する
付記1に記載のワークフロー制御プログラム。
(Appendix 2)
If version information associated with the information indicating the data item of the reference node is not set, or the version information value differs between the version information associated with the information indicating the data item of the reference node Is set, or when flag information indicating that at least a part of data has been updated in the reference node is set, it is determined to save the data of the data item in the target node. The workflow control program according to 1.
(付記3)
対象ノードがワークフローに含まれる最初のノードである場合に、前記参照ノードのデータ項目を示す情報に対応付けられたバージョン情報が設定されていない場合として、前記対象ノードにおけるデータ項目のデータを退避することを判定する
付記2に記載のワークフロー制御プログラム。
(Appendix 3)
If the target node is the first node included in the workflow and the version information associated with the information indicating the data item of the reference node is not set, the data of the data item in the target node is saved. The workflow control program according to
(付記4)
前記参照ノードのデータ項目を示す情報に対応付けられたバージョン情報の間でバージョン情報の値が同じでかつ、前記参照ノードでデータが更新されていないことを示すフラグ情報が設定されている場合、前記対象ノードにおけるデータ項目のデータを退避しないことを判定する
付記1〜付記3の何れか1項に記載のワークフロー制御プログラム。
(Appendix 4)
When the flag information indicating that the version information value is the same between the version information associated with the information indicating the data item of the reference node and the data is not updated in the reference node is set, The workflow control program according to any one of
(付記5)
前記対象ノードを示す情報を、前記対象ノードで用いるデータ項目を示す情報に対応付けたバージョン情報と、前記対象ノードで少なくとも一部のデータが更新されたことを示すフラグ情報とを含む前記対象ノードの情報を、前記管理情報に含めて前記記憶部に記憶する
付記1〜付記4の何れか1項に記載のワークフロー制御プログラム。
(Appendix 5)
The target node including version information in which information indicating the target node is associated with information indicating a data item used in the target node, and flag information indicating that at least a part of data is updated in the target node The workflow control program according to any one of
(付記6)
対象ノードで退避するデータ項目のデータは、対象ノードで退避するデータ項目のデータを組み合わせて生成したデータである
付記1〜付記5の何れか1項に記載のワークフロー制御プログラム。
(Appendix 6)
The workflow control program according to any one of
(付記7)
前記ワークフローにおいてデータを復元する場合に入力されたノードの位置を示す情報と、前記管理情報と、前記退避したデータとに基づいて、入力されたノードのデータを復元する
付記1〜付記6の何れか1項に記載のワークフロー制御プログラム。
(Appendix 7)
The data of the input node is restored based on the information indicating the position of the node inputted when restoring the data in the workflow, the management information, and the saved data. The workflow control program according to
(付記8)
前記退避したデータの一部を抽出して前記データを復元する
付記7に記載のワークフロー制御プログラム。
(Appendix 8)
The workflow control program according to
(付記9)
コンピュータが、
ワークフローにより所定順序に従って複数のノードの処理を進める場合に、複数のノード毎に、前記ノードを示す情報を、前記ノードで用いるデータ項目を示す情報に対応付けたバージョン情報と、前記ノードで少なくとも一部のデータが更新されたことを示すフラグ情報とを含む管理情報が記憶部に記憶され、前記記憶部に記憶された前記管理情報のうち、次のノードへ処理を進める場合の現在のノードを対象ノードとし、かつ該対象ノードより前のノードのうち該対象ノードのデータ項目を示す情報に対応づけられたバージョン情報に値を有するノードを参照ノードとし、該参照ノードのデータ項目を示す情報に対応付けられたバージョン情報と、前記参照ノードのフラグ情報とに基づいて、前記対象ノードにおけるデータ項目のデータを退避するか否かを判定し、
判定結果に基づいて、前記対象ノードにおけるデータ項目のデータを退避する
ことを含むワークフロー制御方法。
(Appendix 9)
Computer
When processing a plurality of nodes according to a workflow in a predetermined order, for each of the plurality of nodes, information indicating the node is associated with information indicating a data item used in the node and at least one of the nodes. Management information including flag information indicating that the data of the unit has been updated is stored in the storage unit, and the current node when processing proceeds to the next node among the management information stored in the storage unit A node having a value in the version information associated with the information indicating the data item of the target node among the nodes prior to the target node is set as a reference node, and the information indicating the data item of the reference node Data of the data item in the target node based on the associated version information and the flag information of the reference node It determines whether to retreat,
A workflow control method including saving data of a data item in the target node based on a determination result.
(付記10)
前記参照ノードのデータ項目を示す情報に対応付けられたバージョン情報が設定されていない場合、または、前記参照ノードのデータ項目を示す情報に対応付けられたバージョン情報の間で相違するバージョン情報の値が設定されている場合、または、前記参照ノードで少なくとも一部のデータが更新されたことを示すフラグ情報が設定されている場合、前記対象ノードにおけるデータ項目のデータを退避することを判定する
付記9に記載のワークフロー制御方法。
(Appendix 10)
If version information associated with the information indicating the data item of the reference node is not set, or the version information value differs between the version information associated with the information indicating the data item of the reference node Is set, or when flag information indicating that at least a part of data has been updated in the reference node is set, it is determined to save the data of the data item in the target node. 10. The workflow control method according to 9.
(付記11)
前記参照ノードのデータ項目を示す情報に対応付けられたバージョン情報の間でバージョン情報の値が同じでかつ、前記参照ノードでデータが更新されていないことを示すフラグ情報が設定されている場合、前記対象ノードにおけるデータ項目のデータを退避しないことを判定する
付記9または付記10に記載のワークフロー制御方法。
(Appendix 11)
When the flag information indicating that the version information value is the same between the version information associated with the information indicating the data item of the reference node and the data is not updated in the reference node is set, The workflow control method according to appendix 9 or
(付記12)
前記ワークフローにおいてデータを復元する場合に入力されたノードの位置を示す情報と、前記管理情報と、前記退避したデータとに基づいて、入力されたノードのデータを復元する
付記9〜付記11の何れか1項に記載のワークフロー制御方法。
(Appendix 12)
Any one of appendix 9 to appendix 11 that restores the data of the input node based on the information indicating the position of the node input when restoring the data in the workflow, the management information, and the saved data The workflow control method according to
(付記13)
ワークフローにより所定順序に従って複数のノードの処理を進める場合に、複数のノード毎に、前記ノードを示す情報を、前記ノードで用いるデータ項目を示す情報に対応付けたバージョン情報と、前記ノードで少なくとも一部のデータが更新されたことを示すフラグ情報とを含む管理情報が記憶される記憶部と、
前記記憶部に記憶された前記管理情報のうち、次のノードへ処理を進める場合の現在のノードを対象ノードとし、かつ該対象ノードより前のノードのうち該対象ノードのデータ項目を示す情報に対応づけられたバージョン情報に値を有するノードを参照ノードとし、該参照ノードのデータ項目を示す情報に対応付けられたバージョン情報と、前記参照ノードのフラグ情報とに基づいて、前記対象ノードにおけるデータ項目のデータを退避するか否かを判定する判定部と、
判定結果に基づいて、前記対象ノードにおけるデータ項目のデータを退避する退避部と、
を備えたワークフロー制御システム。
(Appendix 13)
When processing a plurality of nodes according to a workflow in a predetermined order, for each of the plurality of nodes, information indicating the node is associated with information indicating a data item used in the node and at least one of the nodes. A storage unit for storing management information including flag information indicating that the data of the unit has been updated;
Among the management information stored in the storage unit, the current node when processing proceeds to the next node is set as the target node, and the information indicating the data item of the target node among the nodes before the target node Based on the version information associated with the information indicating the data item of the reference node and the flag information of the reference node based on the node having a value in the associated version information as a reference node, the data in the target node A determination unit for determining whether to save the data of the item;
Based on the determination result, a saving unit for saving data of the data item in the target node;
Workflow control system with
(付記14)
前記判定部は、前記参照ノードのデータ項目を示す情報に対応付けられたバージョン情報が設定されていない場合、または、前記参照ノードのデータ項目を示す情報に対応付けられたバージョン情報の間で相違するバージョン情報の値が設定されている場合、または、前記参照ノードで少なくとも一部のデータが更新されたことを示すフラグ情報が設定されている場合、前記対象ノードにおけるデータ項目のデータを退避することを判定する
付記13に記載のワークフロー制御システム。
(Appendix 14)
The determination unit is different when version information associated with information indicating the data item of the reference node is not set or between version information associated with information indicating the data item of the reference node. When the value of version information to be set is set, or when flag information indicating that at least a part of data has been updated in the reference node is set, the data of the data item in the target node is saved. The workflow control system according to attachment 13, wherein:
(付記15)
前記判定部は、前記参照ノードのデータ項目を示す情報に対応付けられたバージョン情報の間でバージョン情報の値が同じでかつ、前記参照ノードでデータが更新されていないことを示すフラグ情報が設定されている場合、前記対象ノードにおけるデータ項目のデータを退避しないことを判定する
付記13または付記14に記載のワークフロー制御システム。
(Appendix 15)
The determination unit sets flag information indicating that the version information value is the same among the version information associated with the information indicating the data item of the reference node, and that the data is not updated in the reference node. If it is, the workflow control system according to appendix 13 or
(付記16)
前記ワークフローにおいてデータを復元する場合に入力されたノードの位置を示す情報と、前記管理情報と、前記退避したデータとに基づいて、入力されたノードのデータを復元する
付記13〜付記15の何れか1項に記載のワークフロー制御システム。
(Appendix 16)
The node data is restored based on the information indicating the position of the node input when restoring the data in the workflow, the management information, and the saved data. The workflow control system according to
10 ワークフローシステム
12 CPU
14 メモリ
16 ワークフロー制御プログラム
18 判定部
20 退避部
22 復元部
24 記憶部
32 サーバ装置
34 CPU
36 メモリ
39 記録媒体
42 格納部
46 制御プログラム
48 ワークフロー制御プロセス
50 データ退避復元管理プロセス
10
14
36
Claims (6)
判定結果に基づいて、前記対象ノードにおけるデータ項目のデータを退避する
ことを含む処理をコンピュータに実行させるためのワークフロー制御プログラム。 When processing a plurality of nodes according to a workflow in a predetermined order, for each of the plurality of nodes, information indicating the node is associated with information indicating a data item used in the node and at least one of the nodes. Management information including flag information indicating that the data of the unit has been updated is stored in the storage unit, and the current node when processing proceeds to the next node among the management information stored in the storage unit A node having a value in the version information associated with the information indicating the data item of the target node among the nodes prior to the target node is set as a reference node, and the information indicating the data item of the reference node Data of the data item in the target node based on the associated version information and the flag information of the reference node It determines whether to retreat,
A workflow control program for causing a computer to execute processing including saving data of data items in the target node based on a determination result.
請求項1に記載のワークフロー制御プログラム。 If version information associated with the information indicating the data item of the reference node is not set, or the version information value differs between the version information associated with the information indicating the data item of the reference node Is set, or when flag information indicating that at least a part of data has been updated in the reference node is set, it is determined to save data of the data item in the target node. Item 4. The workflow control program according to item 1.
請求項1または請求項2に記載のワークフロー制御プログラム。 When the flag information indicating that the version information value is the same between the version information associated with the information indicating the data item of the reference node and the data is not updated in the reference node is set, The workflow control program according to claim 1, wherein it is determined not to save data of the data item in the target node.
請求項1〜請求項3の何れか1項に記載のワークフロー制御プログラム。 The input node data is restored based on the information indicating the position of the node inputted when restoring the data in the workflow, the management information, and the saved data. The workflow control program according to any one of the above.
ワークフローにより所定順序に従って複数のノードの処理を進める場合に、複数のノード毎に、前記ノードを示す情報を、前記ノードで用いるデータ項目を示す情報に対応付けたバージョン情報と、前記ノードで少なくとも一部のデータが更新されたことを示すフラグ情報とを含む管理情報が記憶部に記憶され、前記記憶部に記憶された前記管理情報のうち、次のノードへ処理を進める場合の現在のノードを対象ノードとし、かつ該対象ノードより前のノードのうち該対象ノードのデータ項目を示す情報に対応づけられたバージョン情報に値を有するノードを参照ノードとし、該参照ノードのデータ項目を示す情報に対応付けられたバージョン情報と、前記参照ノードのフラグ情報とに基づいて、前記対象ノードにおけるデータ項目のデータを退避するか否かを判定し、
判定結果に基づいて、前記対象ノードにおけるデータ項目のデータを退避する
ことを含むワークフロー制御方法。 Computer
When processing a plurality of nodes according to a workflow in a predetermined order, for each of the plurality of nodes, information indicating the node is associated with information indicating a data item used in the node and at least one of the nodes. Management information including flag information indicating that the data of the unit has been updated is stored in the storage unit, and the current node when processing proceeds to the next node among the management information stored in the storage unit A node having a value in the version information associated with the information indicating the data item of the target node among the nodes prior to the target node is set as a reference node, and the information indicating the data item of the reference node Data of the data item in the target node based on the associated version information and the flag information of the reference node It determines whether to retreat,
A workflow control method including saving data of a data item in the target node based on a determination result.
前記記憶部に記憶された前記管理情報のうち、次のノードへ処理を進める場合の現在のノードを対象ノードとし、かつ該対象ノードより前のノードのうち該対象ノードのデータ項目を示す情報に対応づけられたバージョン情報に値を有するノードを参照ノードとし、該参照ノードのデータ項目を示す情報に対応付けられたバージョン情報と、前記参照ノードのフラグ情報とに基づいて、前記対象ノードにおけるデータ項目のデータを退避するか否かを判定する判定部と、
判定結果に基づいて、前記対象ノードにおけるデータ項目のデータを退避する退避部と、
を備えたワークフロー制御システム。 When processing a plurality of nodes according to a workflow in a predetermined order, for each of the plurality of nodes, information indicating the node is associated with information indicating a data item used in the node and at least one of the nodes. A storage unit for storing management information including flag information indicating that the data of the unit has been updated;
Among the management information stored in the storage unit, the current node when processing proceeds to the next node is set as the target node, and the information indicating the data item of the target node among the nodes before the target node Based on the version information associated with the information indicating the data item of the reference node and the flag information of the reference node based on the node having a value in the associated version information as a reference node, the data in the target node A determination unit for determining whether to save the data of the item;
Based on the determination result, a saving unit for saving data of the data item in the target node;
Workflow control system with
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014062272A JP6233130B2 (en) | 2014-03-25 | 2014-03-25 | Workflow control program, workflow control method, and workflow system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014062272A JP6233130B2 (en) | 2014-03-25 | 2014-03-25 | Workflow control program, workflow control method, and workflow system |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2015185014A true JP2015185014A (en) | 2015-10-22 |
JP6233130B2 JP6233130B2 (en) | 2017-11-22 |
Family
ID=54351443
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014062272A Expired - Fee Related JP6233130B2 (en) | 2014-03-25 | 2014-03-25 | Workflow control program, workflow control method, and workflow system |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6233130B2 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110717739A (en) * | 2019-10-15 | 2020-01-21 | 深圳前海微众银行股份有限公司 | Workflow issuing method, device, equipment and computer readable storage medium |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0991402A (en) * | 1995-09-20 | 1997-04-04 | Hitachi Ltd | Image data management equipment |
JPH10143583A (en) * | 1996-11-15 | 1998-05-29 | Hitachi Ltd | Work flow management system |
JP2001356946A (en) * | 2000-06-14 | 2001-12-26 | Nippon Telegr & Teleph Corp <Ntt> | Method, device for executing work flow and recording medium in which work flow execution program is recorded |
JP2009200963A (en) * | 2008-02-22 | 2009-09-03 | Canon Inc | Image forming apparatus, data processing method, program, and storage medium |
US20140279919A1 (en) * | 2013-03-15 | 2014-09-18 | Silicon Graphics International Corp. | Hierarchical system manager rollback |
-
2014
- 2014-03-25 JP JP2014062272A patent/JP6233130B2/en not_active Expired - Fee Related
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0991402A (en) * | 1995-09-20 | 1997-04-04 | Hitachi Ltd | Image data management equipment |
JPH10143583A (en) * | 1996-11-15 | 1998-05-29 | Hitachi Ltd | Work flow management system |
JP2001356946A (en) * | 2000-06-14 | 2001-12-26 | Nippon Telegr & Teleph Corp <Ntt> | Method, device for executing work flow and recording medium in which work flow execution program is recorded |
JP2009200963A (en) * | 2008-02-22 | 2009-09-03 | Canon Inc | Image forming apparatus, data processing method, program, and storage medium |
US20140279919A1 (en) * | 2013-03-15 | 2014-09-18 | Silicon Graphics International Corp. | Hierarchical system manager rollback |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110717739A (en) * | 2019-10-15 | 2020-01-21 | 深圳前海微众银行股份有限公司 | Workflow issuing method, device, equipment and computer readable storage medium |
CN110717739B (en) * | 2019-10-15 | 2024-03-22 | 深圳前海微众银行股份有限公司 | Workflow publishing method, device, equipment and computer readable storage medium |
Also Published As
Publication number | Publication date |
---|---|
JP6233130B2 (en) | 2017-11-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5971420B2 (en) | State restoration program, apparatus, and support method | |
JP5970617B2 (en) | Development support system | |
JP5428581B2 (en) | Virtual machine management program and virtual machine management method | |
JP2014142678A (en) | Virtual server transfer plan generation method and system | |
US10931749B2 (en) | Efficient configuration combination selection in migration | |
CN111625498B (en) | Data migration method, system, electronic equipment and storage medium | |
JP6233130B2 (en) | Workflow control program, workflow control method, and workflow system | |
WO2014136172A1 (en) | Database device, program, and data processing method | |
CN108959548B (en) | Service request processing method and device | |
JP5943753B2 (en) | Virtual machine management system, virtual machine management method and program | |
JP2006350411A (en) | Recovery method, recovery system and recovery program for distributed database | |
CN109144967B (en) | Maintenance system and method for improving distributed computing system | |
JP2010225109A (en) | Method and system for managing virtual appliance server, program for virtual appliance server management system, and recording medium for virtual appliance server management system with the same stored therein | |
JP6467298B2 (en) | Server operation work history management device, system, method, and program | |
JP2016115223A (en) | Database management system, database management method, and program | |
JP2007226733A (en) | Normality check method for database, normality check program and normality check device | |
JP5352310B2 (en) | Batch processing execution system and method | |
WO2022239060A1 (en) | System verification device, system verification method, and system verification program | |
JP2009211413A (en) | File management system, file management method, and file management program | |
JP2018073099A (en) | Scale-in processing program, scale-in processing method, and information processing system | |
JP2017162256A (en) | Operation procedure manual management method, operation procedure manual management program and information processing device | |
JP2004046826A (en) | Information processing system, and work support method for the system | |
JP2016122481A (en) | Virtual machine management system, virtual machine management method, and program | |
JP6481463B2 (en) | Management support program, method and apparatus | |
US10235438B2 (en) | Removal of invisible data packages in data warehouses |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20161206 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20170915 |
|
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: 20170926 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20171009 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6233130 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |