JP3463020B2 - ワークフロー実行方法および装置とワークフロー実行プログラムを記録した記録媒体 - Google Patents
ワークフロー実行方法および装置とワークフロー実行プログラムを記録した記録媒体Info
- Publication number
- JP3463020B2 JP3463020B2 JP2000178668A JP2000178668A JP3463020B2 JP 3463020 B2 JP3463020 B2 JP 3463020B2 JP 2000178668 A JP2000178668 A JP 2000178668A JP 2000178668 A JP2000178668 A JP 2000178668A JP 3463020 B2 JP3463020 B2 JP 3463020B2
- Authority
- JP
- Japan
- Prior art keywords
- scenario
- data object
- activity
- execution
- instance
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Lifetime
Links
- 238000000034 method Methods 0.000 title claims description 23
- 230000000694 effects Effects 0.000 claims description 119
- 238000007726 management method Methods 0.000 description 102
- 230000006870 function Effects 0.000 description 66
- 238000013523 data management Methods 0.000 description 13
- 238000010586 diagram Methods 0.000 description 9
- 238000011084 recovery Methods 0.000 description 8
- 230000005856 abnormality Effects 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 3
- 230000002159 abnormal effect Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Retry When Errors Occur (AREA)
Description
現されるワークフロー実行方法および装置に関し、更に
詳しくは、ワークフローを記述したシナリオを解釈して
得られた実行順序に従ってアクティビティを実行するワ
ークフロー実行方法および装置とワークフロー実行プロ
グラムを記録した記録媒体に関する。
示すように、ワークフローを記述したシナリオ1をシナ
リオ実行機能部3で解釈して得られた実行順序に従って
アクティビティ11を実行している。そして、この実行
中におけるシナリオ実行機能部3における実行状態を実
行状態保存データベース21に記録するとともに、実行
結果を実行結果保存データベース23に記録するように
している。
て、障害回復機能は重要な機能である。これは、当該シ
ステムにおいてワークフローを記述したシナリオを実行
中に障害が発生した場合でも、処理したデータに対して
一貫性の保証を行うものである。
ルとして実装されており、システムの障害情報を検知
し、担当者への通知や、担当者による対応状況の管理や
処置履歴の保存、およびデータベースのロールバック処
理により実現している。ロールバックとは処理において
障害が発生した際に、状態をトランザクション開始時点
の状態に戻す障害回復操作である。
度シナリオを実行し、そこに記述されている実行すべき
アクティビティのすべてが再度実行されることが必要と
なる。
品としては、HP社のOpen Viewや日立製作所のJP1
などのシステム管理ツールと、Remedy Corporation社の
AR Systemなどに内包するトラブルチケット通知機能や
トラッキング機能との連携などが挙げられるが、これら
は障害の担当者への通知や、データベースのロールバッ
クを行うのみである。
は、障害の発生を単に担当者に通知するのみであった
り、データベースのロールバックを行うのみであった
り、また障害の復旧を通知するのみであり、実際の障害
復旧作業は担当者の作業に依存しているという問題があ
る。
においては、処理に必要なデータなどの環境が処理の契
機に依存しないアクティビティや、正常終了した処理ま
でもロールバックにより処理を取り消した上に再実行す
るというワークフロー実行資源の無駄が発生する。ま
た、データベースにおいてロールバックが不可能な処理
においてシナリオ実行前への復旧やシナリオ実行完了状
態までの処理はロールフォワード処理や手動で行ってい
るという問題がある。なお、ロールフォワード処理は、
処理履歴や処理データのバックアップファイルやワーク
フロー内に指定したチェックポイントまでの保存データ
を用いて障害発生以前の環境を復元し、更新処理を進め
ることである。
その目的とするところは、シナリオ実行途中に障害が発
生した場合でも処理データに対して一貫性をもってシナ
リオの再実行を可能とするワークフロー実行方法および
装置とワークフロー実行プログラムを記録した記録媒体
を提供することにある。
め、請求項1記載の本発明は、電子計算機上においてワ
ークフローを記述したシナリオに従ってアクティビティ
を実行するワークフロー実行方法であって、アクティビ
ティの実行順序関係、アクティビティに入出力されるデ
ータの組、およびデータのうちシナリオ実行後も保存す
るデータの組が記述されたシナリオを解釈して得られた
実行順序に従ってアクティビティを実行し、このアクテ
ィビティの実行時に前記シナリオのシナリオIDおよび
同一シナリオIDのシナリオ実行を一意に特定するシナ
リオインスタンスIDに対応して該シナリオインスタン
スの実行状態を表すシナリオステータスを組にしてシナ
リオステータス管理手段に格納し、前記アクティビティ
に入出力されるデータのうちシナリオにおいて保存が必
要であると指定されたデータオブジェクトをデータオブ
ジェクトIDと組にしてデータオブジェクト管理手段に
格納し、前記データオブジェクトのデータオブジェクト
IDをシナリオインスタンスIDおよびアクティビティ
IDと組にしてシナリオトランザクション管理手段に格
納し、シナリオ実行中に障害を検知した場合、アクティ
ビティをシナリオに記述された内容に従って処理し、前
記シナリオステータス管理手段のシナリオステータスカ
ラムを更新して未完終了フラグを設定し、シナリオの再
実行時には新規シナリオインスタンスIDを発行し前記
未完終了フラグが設定されているシナリオステータス管
理手段のシナリオインスタンスIDを取得し、この取得
したシナリオインスタンスIDをキーに前記シナリオト
ランザクション管理手段および前記データオブジェクト
管理手段を検索して、保存されているデータオブジェク
トを取得し、このデータオブジェクトに付与されている
データオブジェクトIDを新たなシナリオインスタンス
IDに関連付けて採番される新しいデータオブジェクト
IDに書き換えてシナリオを再実行することを要旨とす
る。
オを解釈して得られた実行順序に従ったアクティビティ
の実行時にシナリオインスタンスの実行状態を表すシナ
リオステータスをシナリオステータス管理手段に格納
し、保存が必要であると指定されたデータオブジェクト
をデータオブジェクトIDと組にしてデータオブジェク
ト管理手段に格納し、データオブジェクトID、シナリ
オインスタンスIDおよびアクティビティIDと組にし
てシナリオトランザクション管理手段に格納し、シナリ
オの実行中に障害を検知した場合、アクティビティをシ
ナリオに記述された内容に従って処理し、シナリオステ
ータス管理手段のシナリオステータスカラムを更新して
未完終了フラグを設定し、シナリオの再実行時には新規
シナリオインスタンスIDを発行し、未完終了フラグが
設定されているシナリオステータス管理手段のシナリオ
インスタンスIDを取得し、この取得したシナリオイン
スタンスIDをキーにシナリオトランザクション管理手
段およびデータオブジェクト管理手段を検索して、保存
されているデータオブジェクトを取得し、このデータオ
ブジェクトに付与されているデータオブジェクトIDを
新たなシナリオインスタンスIDに関連付けて採番され
る新しいデータオブジェクトIDに書き換えてシナリオ
を再実行するため、データオブジェクトを再利用でき、
データオブジェクトの作成のための計算コストを削減で
きるとともに、障害発生時に最低限保存すべきデータを
明示的に指定し、障害復旧時に不足するデータの認知お
よび再実行時の自動処理が可能となり、フォールトトレ
ラント性に優れたワークフローシステムを構築すること
ができる。
機上においてワークフローを記述したシナリオに従って
アクティビティを実行するワークフロー実行装置であっ
て、アクティビティの実行順序関係、アクティビティに
入出力されるデータの組、およびデータのうちシナリオ
実行後も保存するデータの組が記述されたシナリオを解
釈して得られた実行順序に従ってアクティビティを実行
するシナリオ実行手段と、前記シナリオ実行手段による
アクティビティの実行時に前記シナリオのシナリオID
およびシナリオインスタンスIDに対応して該シナリオ
インスタンスの実行状態を表すシナリオステータスを組
にして格納するシナリオステータス管理手段と、前記ア
クティビティに入出力されるデータのうちシナリオにお
いて保存が必要であると指定されたデータオブジェクト
をデータオブジェクトIDと組にして格納するデータオ
ブジェクト管理手段と、前記データオブジェクトのデー
タオブジェクトIDをシナリオインスタンスIDおよび
アクティビティIDと組にして格納するシナリオトラン
ザクション管理手段と、シナリオの実行中に障害を検知
した場合、アクティビティをシナリオに記述された内容
に従って処理し、前記シナリオステータス管理手段のシ
ナリオステータスカラムを更新して未完終了フラグを設
定する未完終了フラグ設定手段と、シナリオの再実行時
には新規シナリオインスタンスIDを発行し、前記未完
終了フラグが設定されているシナリオステータス管理手
段のシナリオインスタンスIDを取得し、この取得した
シナリオインスタンスIDをキーに前記シナリオトラン
ザクション管理手段および前記データオブジェクト管理
手段を検索して、保存されているデータオブジェクトを
取得し、このデータオブジェクトに付与されているデー
タオブジェクトIDを新たなシナリオインスタンスID
に関連付けて採番される新しいデータオブジェクトID
に書き換えてシナリオを再実行する再実行手段とを有す
ることを要旨とする。
オを解釈して得られた実行順序に従ったアクティビティ
の実行時にシナリオインスタンスの実行状態を表すシナ
リオステータスをシナリオステータス管理手段に格納
し、保存が必要であると指定されたデータオブジェクト
をデータオブジェクトIDと組にしてデータオブジェク
ト管理手段に格納し、データオブジェクトID、シナリ
オインスタンスIDおよびアクティビティIDと組にし
てシナリオトランザクション管理手段に格納し、シナリ
オの実行中に障害を検知した場合、アクティビティをシ
ナリオに記述された内容に従って処理し、シナリオステ
ータス管理手段のシナリオステータスカラムを更新して
未完終了フラグを設定し、シナリオの再実行時には未完
終了フラグが設定されているシナリオステータス管理手
段のシナリオインスタンスIDを取得し、このシナリオ
インスタンスIDをキーにシナリオトランザクション管
理手段およびデータオブジェクト管理手段を検索して、
保存されているデータオブジェクトを取得し、この取得
したデータオブジェクトに付与されているデータオブジ
ェクトIDを新たなシナリオインスタンスIDに関連付
けて採番される新しいデータオブジェクトIDに書き換
えてシナリオを再実行するため、データオブジェクトを
再利用でき、データオブジェクトの作成のための計算コ
ストを削減できるとともに、障害発生時に最低限保存す
べきデータを明示的に指定し、障害復旧時に不足するデ
ータの認知および再実行時の自動処理が可能となり、フ
ォールトトレラント性に優れたワークフローシステムを
構築することができる。
機上においてワークフローを記述したシナリオに従って
アクティビティを実行するワークフロー実行プログラム
を記録した記録媒体であって、アクティビティの実行順
序関係、アクティビティに入出力されるデータの組、お
よびデータのうちシナリオ実行後も保存するデータの組
が記述されたシナリオを解釈して得られた実行順序に従
ってアクティビティを実行し、このアクティビティの実
行時に前記シナリオのシナリオIDおよびシナリオイン
スタンスIDに対応して該シナリオインスタンスの実行
状態を表すシナリオステータスを組にしてシナリオステ
ータス管理手段に格納し、前記アクティビティに入出力
されるデータのうちシナリオにおいて保存が必要である
と指定されたデータオブジェクトをデータオブジェクト
IDと組にしてデータオブジェクト管理手段に格納し、
前記データオブジェクトのデータオブジェクトIDをシ
ナリオインスタンスIDおよびアクティビティIDと組
にしてシナリオトランザクション管理手段に格納し、シ
ナリオの実行中に障害を検知した場合、アクティビティ
をシナリオに記述された内容に従って処理し、前記シナ
リオステータス管理手段のシナリオステータスカラムを
更新して未完終了フラグを設定し、シナリオの再実行時
には新規シナリオインスタンスIDを発行し、前記未完
終了フラグが設定されているシナリオステータス管理手
段のシナリオインスタンスIDを取得し、この取得した
シナリオインスタンスIDをキーに前記シナリオトラン
ザクション管理手段および前記データオブジェクト管理
手段を検索して、保存されているデータオブジェクトを
取得し、このデータオブジェクトに付与されているデー
タオブジェクトIDを新たなシナリオインスタンスID
に関連付けて採番される新しいデータオブジェクトID
に書き換えてシナリオを再実行するワークフロー実行プ
ログラムを記録媒体に記録することを要旨とする。
オを解釈して得られた実行順序に従ったアクティビティ
の実行時にシナリオインスタンスの実行状態を表すシナ
リオステータスをシナリオステータス管理手段に格納
し、保存が必要であると指定されたデータオブジェクト
をデータオブジェクトIDと組にしてデータオブジェク
ト管理手段に格納し、データオブジェクトID、シナリ
オインスタンスIDおよびアクティビティIDと組にし
てシナリオトランザクション管理手段に格納し、シナリ
オの実行中に障害を検知した場合、アクティビティをシ
ナリオに記述された内容に従って処理し、シナリオステ
ータス管理手段のシナリオステータスカラムを更新して
未完終了フラグを設定し、シナリオの再実行時には新規
シナリオインスタンスIDを発行し、未完終了フラグが
設定されているシナリオステータス管理手段のシナリオ
インスタンスIDを取得し、この取得したシナリオイン
スタンスIDをキーにシナリオトランザクション管理手
段およびデータオブジェクト管理手段を検索して、保存
されているデータオブジェクトを取得し、このデータオ
ブジェクトに付与されているデータオブジェクトIDを
新たなシナリオインスタンスIDに関連付けて採番され
る新しいデータオブジェクトIDに書き換えてシナリオ
を再実行するワークフロー実行プログラムを記録媒体に
記録しているため、該記録媒体を用いて、その流通性を
高めることができる。
の形態を説明する。図1は、本発明の一実施形態に係る
ワークフロー実行装置の構成を示す図である。同図に示
すワークフロー実行装置は、ワークフローを記述したシ
ナリオ1を解釈して得られた実行順序に従ってアクティ
ビティ11を実行するシナリオ実行機能部3と、シナリ
オステータス管理部71を含有していて、シナリオ実行
機能部3からのシナリオインスタンスIDの発行依頼に
対してシナリオインスタンスIDをシナリオ実行機能部
3に発行するとともに、該シナリオインスタンスIDと
アクティビティの実行状態を管理するシナリオ実行状態
管理機能部7と、データオブジェクト管理部91および
シナリオトランザクション管理部93を含有していて、
アクティビティデータを管理するアクティビティデータ
管理機能部9とから構成されている。なお、シナリオ実
行状態管理機能部7とアクティビティデータ管理機能部
9は、データ管理機能部5を構成している。
行順序関係、アクティビティに入力出されるデータの
組、およびデータのうちシナリオ実行後も保存するデー
タの組が記述されている。また、アクティビティ11は
Javaなどのプログラミング言語を用いて任意に記述
され、その実行には必要なデータと実行の結果得られる
出力データの組が記述されたシナリオ1を解釈すること
によりシナリオ実行機能部3が行い、得られるデータは
アクティビティデータ管理機能部9のデータオブジェク
ト管理部91に保管される。データオブジェクト管理部
91は、データオブジェクトをデータオブジェクトID
に対応して組にして1レコードとして格納しており、ア
クティビティに入出力されるデータのうちシナリオにお
いて保存が必要とされたデータのみを格納している。
態管理機能部7に対してシナリオインスタンスIDの発
行を依頼して、シナリオインスタンスIDをシナリオ実
行状態管理機能部7から取得した後、シナリオ1を解釈
することにより得られた実行順序に従ってアクティビテ
ィ11を実行する。この実行したアクティビティ11の
実行状態がシナリオステータスとしてシナリオインスタ
ンスIDに対応してシナリオステータス管理部71に蓄
積管理される。具体的には、シナリオ1に付与されたシ
ナリオIDおよびシナリオインスタンスIDは、シナリ
オインスタンスの実行状態を表すシナリオステータスと
組にされ、1レコードとしてシナリオステータス管理部
71に蓄積される。
リオトランザクション管理部93には、シナリオインス
タンスID、アクティビティID、およびデータオブジ
ェクトIDが組にされ、1レコードとして蓄積されてい
る。データオブジェクトIDは、アクティビティに入出
力されるデータのうちシナリオにおいて保存が必要なデ
ータのみに付与される。アクティビティIDは、アクテ
ィビティを一意に指定可能にするために付与されてい
る。
一のシナリオをシナリオ実行機能部3に投入することに
より初回実行時のシナリオインスタンスIDと関連付け
られたシナリオインスタンスIDが新規発行されるとと
もに、保管されたデータを基に必要最小限のアクティビ
ティの実行シナリオが生成される。
への初回実行時のデータオブジェクトIDを持ったデー
タオブジェクトの問い合わせの結果得られたデータを再
実行時に利用し、アクティビティ再実行の結果得られた
データオブジェクトに再実行時のシナリオインスタンス
IDと関連付けたデータオブジェクトIDを割り当て
る。
ンス図を参照して、図1に示した実施形態のワークフロ
ー実行装置の動作をそれぞれ正常実行時、異常発生時、
再実行時に分けて説明する。
実行時の動作について説明する。
ィビティの実行順序関係、アクティビティに入出力され
るデータの組、およびデータのうちシナリオ実行後も保
存するデータの組が記述されていて、シナリオ1は一意
に特定できるシナリオIDを有する。
オ1は、シナリオ実行機能部3に入力されると、該シナ
リオ実行機能部3により解釈されて、アクティビティの
実行順序を決定される。また、シナリオ実行機能部3
は、シナリオ1を入力されると、シナリオ実行状態管理
機能部7に対して該シナリオ1のシナリオインスタンス
IDの発行を依頼し、シナリオ実行タイミングを一意に
特定可能なシナリオインスタンスIDがシナリオ1に対
して付与される。
オ1に付与されたシナリオIDとシナリオインスタンス
IDは、シナリオインスタンスの実行状態を表すシナリ
オステータスを組にされて、1レコードとしてシナリオ
ステータス管理部71に格納される。
されて得られた実行順序に従ってアクティビティ11が
実行されると、シナリオステータス管理部71の当該レ
コードのシナリオステータスが更新される。
実行により起動されるアクティビティ11の入出力に使
用されるデータオブジェクトは、アクティビティデータ
管理機能部9のデータオブジェクト管理部91およびシ
ナリオトランザクション管理部93に格納される。
ィ11の実行において、アクティビティに入出力される
データのうちシナリオ実行後も保存が必要なデータは、
アクティビティデータ管理機能部9のデータオブジェク
ト管理部91にデータオブジェクトとしてデータオブジ
ェクトIDと組にされて格納されるとともに、またこの
データオブジェクトIDはシナリオトランザクション管
理部93にシナリオインスタンスID、アクティビティ
IDと組にされて格納される。
と、アクティビティ実行完了通知がシナリオ実行機能部
3に送られる。シナリオ実行機能部3は、この通知を受
けると、シナリオ実行状態管理機能部7のシナリオステ
ータス管理部71の当該レコードのシナリオステータス
を更新する。シナリオステータス管理部71の更新が完
了すると、シナリオ実行機能部3に実行状態更新完了通
知が送られる。このようにして、シナリオ1に記述され
たアクティビティの実行がすべて完了した時、シナリオ
ステータス管理部71のシナリオステータスカラムを更
新し、完了フラグを設定する。
ィビティ11の実行において、アクティビティに入出力
されるデータのうちシナリオ実行後、保存が不要なデー
タの場合には、データオブジェクト管理部91に格納さ
れることなく、またデータオブジェクトIDもシナリオ
トランザクション管理部93に格納されることなく、ア
クティビティ実行完了通知がシナリオ実行機能部3に送
られる。シナリオ実行機能部3は、この通知を受ける
と、シナリオステータス管理部71の当該レコードのシ
ナリオステータスを更新し、実行状態更新完了通知を受
け取る。そして、シナリオ1に記述されたアクティビテ
ィの実行がすべて完了した時、シナリオステータス管理
部71のシナリオステータスカラムを更新し、完了フラ
グを設定する。
て、本実施形態においてシナリオ実行中に異常を検知し
た場合である障害発生時の動作について説明する。
ってアクティビティ11を実行している最中に、アクテ
ィビティ11からの異常通知を検知して、障害の発生を
検出すると、シナリオ実行状態管理機能部7に障害情報
を通知し、シナリオ実行状態管理機能部7にアクティビ
ティ11をシナリオ1に記述された内容に従って処理
し、それからシナリオステータス管理部71のシナリオ
ステータスカラムを更新し、未完終了フラグを設定す
る。なお、シナリオに記述された未完終了状態まで処理
を進行できない場合には、異常終了フラグを設定する
が、この場合の復旧処理は従来と同様に担当者の手作業
で行われる。
アクティビティ11からの異常通知を検知すると、シナ
リオ実行状態管理機能部7への障害情報を通知すること
に加えて、アクティビティ11に対して復旧操作を実行
する。アクティビティ11はアクティビティデータ管理
機能部9のデータオブジェクト管理部91およびシナリ
オトランザクション管理部93にデータを保存する。ア
クティビティデータ管理機能部9はデータを保存する
と、データ保存完了通知をシナリオ実行機能部3に送
る。
データ管理機能部9からデータ保存完了通知を受ける
と、シナリオ実行状態管理機能部7に実行中のアクティ
ビティの状態をシナリオ1に記述された内容に従って行
って、シナリオの終了処理を行い、シナリオステータス
管理部71のシナリオステータスカラムを更新し、未完
終了フラグを設定する。そして、シナリオ実行状態管理
機能部7は、実行状態の更新およびフラグの設定を完了
すると、実行状態更新完了通知をシナリオ実行機能部3
に返送する。
て、本実施形態におけるシナリオ再実行時の動作につい
て説明する。
ナリオ実行機能部3は、シナリオ実行状態管理機能部7
に新規なシナリオインスタンスIDの発行依頼を行っ
て、再実行のために投入されたシナリオに対して新規に
シナリオインスタンスIDを付与し、再実行により取得
されるデータや、再実行の実行状態を初期実行時と区別
して管理する。また、シナリオ実行機能部3は、再投入
したユーザのユーザIDとシナリオIDをキーにしてシ
ナリオ実行状態管理機能部7のシナリオステータス管理
部71への問い合わせを行い、同一レコードのシナリオ
ステータスカラムにおいて未完終了フラグが設定されて
いるシナリオインスタンスIDを取得する。それから、
この取得したシナリオインスタンスIDをキーにしてデ
ータオブジェクト管理部91を検索し、このシナリオイ
ンスタンスIDに対応して保存されているデータオブジ
ェクトを取得する。
用いて、未完了のアクティビティ11の再実行を行う
が、この再実行では、まずシナリオインスタンスIDに
関連付けて該データオブジェクトに付与されたデータオ
ブジェクトIDを新規発行したシナリオインスタンスI
Dに関連付けて採番される新しいデータオブジェクトI
Dに書き換える。それから、未完了のアクティビティ1
1の再実行を行うが、この再実行において、アクティビ
ティ実行後も保存が必要なデータは、データオブジェク
ト管理部91に格納されるとともに、また、シナリオト
ランザクション管理部93にシナリオインスタンスI
D、アクティビティIDと組にされて格納される。
未完了のアクティビティの再実行が完了すると、アクテ
ィビティ実行完了通知がシナリオ実行機能部3に送られ
る。シナリオ実行機能部3は、この通知を受けると、シ
ナリオステータス管理部71の当該レコードのシナリオ
ステータスを更新する。シナリオステータス管理部71
の更新が完了すると、シナリオ実行機能部3に実行状態
更新完了通知が送られる。
行において、アクティビティ実行後、保存が不要なデー
タの場合には、データオブジェクト管理部91に格納さ
れることなく、またデータオブジェクトIDもシナリオ
トランザクション管理部93に格納されることなく、ア
クティビティ実行完了通知がシナリオ実行機能部3に送
られる。シナリオ実行機能部3は、この通知を受ける
と、シナリオステータス管理部71の当該レコードのシ
ナリオステータスを更新し、実行状態更新完了通知を受
け取る。
再利用可能であるアクティビティを再実行することな
く、シナリオを再実行することができるのである。
法の処理手順をプログラムとして記録媒体に記録して、
この記録媒体をコンピュータシステムに組み込むととも
に、該記録媒体に記録されたプログラムをコンピュータ
システムにダウンロードまたはインストールし、該プロ
グラムでコンピュータシステムを作動させることによ
り、ワークフロー実行方法を実施するワークフロー実行
装置として機能させることができることは勿論であり、
このような記録媒体を用いることにより、その流通性を
高めることができるものである。
アクティビティの実行時にシナリオインスタンスの実行
状態を表すシナリオステータスをシナリオステータス管
理手段に格納し、保存が必要であると指定されたデータ
オブジェクトをデータオブジェクトIDと組にしてデー
タオブジェクト管理手段に格納するとともに、データオ
ブジェクトID、シナリオインスタンスIDおよびアク
ティビティIDを組にしてシナリオトランザクション管
理手段に格納し、障害を検知した場合、実行中のアクテ
ィビティの状態をシナリオに記述された内容に従って終
了処理し、シナリオステータス管理手段のシナリオステ
ータスカラムを更新して未完終了フラグを設定し、シナ
リオの再実行時には未完終了フラグが設定されているシ
ナリオステータス管理手段のシナリオインスタンスID
を取得し、この取得したシナリオインスタンスIDをキ
ーにシナリオトランザクション管理手段およびデータオ
ブジェクト管理手段を検索して、保存されているデータ
オブジェクトを取得し、このデータオブジェクトに付与
されているデータオブジェクトIDを新たに発行したシ
ナリオインスタンスIDに関連付けて採番される新しい
データオブジェクトIDに書き換えてシナリオを再実行
するので、データオブジェクトを再利用でき、データオ
ブジェクトの作成のための計算コストを削減できるとと
もに、障害発生時に最低限保存すべきデータを明示的に
指定し、障害復旧時に不足するデータの認知および再実
行時の自動処理が可能となり、フォールトトレラント性
に優れたワークフローシステムを構築することができ
る。
置の構成を示す図である。
の動作を示すシーケンス図である。
の動作を示すシーケンス図である。
実行時の動作を示すシーケンス図である。
ある。
Claims (3)
- 【請求項1】 電子計算機上においてワークフローを記
述したシナリオに従ってアクティビティを実行するワー
クフロー実行方法であって、 アクティビティの実行順序関係、アクティビティに入出
力されるデータの組、およびデータのうちシナリオ実行
後も保存するデータの組が記述されたシナリオを解釈し
て得られた実行順序に従ってアクティビティを実行し、 このアクティビティの実行時に前記シナリオのシナリオ
IDおよび同一シナリオIDのシナリオ実行を一意に特
定するシナリオインスタンスIDに対応して該シナリオ
インスタンスの実行状態を表すシナリオステータスを組
にしてシナリオステータス管理手段に格納し、 前記アクティビティに入出力されるデータのうちシナリ
オにおいて保存が必要であると指定されたデータオブジ
ェクトをデータオブジェクトIDと組にしてデータオブ
ジェクト管理手段に格納し、 前記データオブジェクトのデータオブジェクトIDをシ
ナリオインスタンスIDおよびアクティビティIDと組
にしてシナリオトランザクション管理手段に格納し、 シナリオの実行中に障害を検知した場合、アクティビテ
ィをシナリオに記述された内容に従って処理し、前記シ
ナリオステータス管理手段のシナリオステータスカラム
を更新して未完終了フラグを設定し、 シナリオの再実行時には新規シナリオインスタンスID
を発行し、前記未完終了フラグが設定されているシナリ
オステータス管理手段のシナリオインスタンスIDを取
得し、この取得したシナリオインスタンスIDをキーに
前記シナリオトランザクション管理手段および前記デー
タオブジェクト管理手段を検索して、保存されているデ
ータオブジェクトを取得し、このデータオブジェクトに
付与されているデータオブジェクトIDを新たなシナリ
オインスタンスIDに関連付けて採番される新しいデー
タオブジェクトIDに書き換えてシナリオを再実行する
ことを特徴とするワークフロー実行方法。 - 【請求項2】 電子計算機上においてワークフローを記
述したシナリオに従ってアクティビティを実行するワー
クフロー実行装置であって、 アクティビティの実行順序関係、アクティビティに入出
力されるデータの組、およびデータのうちシナリオ実行
後も保存するデータの組が記述されたシナリオを解釈し
て得られた実行順序に従ってアクティビティを実行する
シナリオ実行手段と、 前記シナリオ実行手段によるアクティビティの実行時に
前記シナリオのシナリオIDおよび同一シナリオIDの
シナリオ実行を一意に特定するシナリオインスタンスI
Dに対応して該シナリオインスタンスの実行状態を表す
シナリオステータスを組にして格納するシナリオステー
タス管理手段と、 前記アクティビティに入出力されるデータのうちシナリ
オにおいて保存が必要であると指定されたデータオブジ
ェクトをデータオブジェクトIDと組にして格納するデ
ータオブジェクト管理手段と、 前記データオブジェクトのデータオブジェクトIDをシ
ナリオインスタンスIDおよびアクティビティIDと組
にして格納するシナリオトランザクション管理手段と、 シナリオの実行中に障害を検知した場合、アクティビテ
ィをシナリオに記述された内容に従って処理し、前記シ
ナリオステータス管理手段のシナリオステータスカラム
を更新して未完終了フラグを設定する未完終了フラグ設
定手段と、 シナリオの再実行時には新規シナリオインスタンスID
を発行し、前記未完終了フラグが設定されているシナリ
オステータス管理手段のシナリオインスタンスIDを取
得し、この取得したシナリオインスタンスIDをキーに
前記シナリオトランザクション管理手段および前記デー
タオブジェクト管理手段を検索して、保存されているデ
ータオブジェクトを取得し、このデータオブジェクトに
付与されているデータオブジェクトIDを新たなシナリ
オインスタンスIDに関連付けて採番される新しいデー
タオブジェクトIDに書き換えてシナリオを再実行する
再実行手段とを有することを特徴とするワークフロー実
行装置。 - 【請求項3】 電子計算機上においてワークフローを記
述したシナリオに従ってアクティビティを実行するワー
クフロー実行プログラムを記録した記録媒体であって、 アクティビティの実行順序関係、アクティビティに入出
力されるデータの組、およびデータのうちシナリオ実行
後も保存するデータの組が記述されたシナリオを解釈し
て得られた実行順序に従ってアクティビティを実行し、 このアクティビティの実行時に前記シナリオのシナリオ
IDおよび同一シナリオIDのシナリオ実行を一意に特
定するシナリオインスタンスIDに対応して該シナリオ
インスタンスの実行状態を表すシナリオステータスを組
にしてシナリオステータス管理手段に格納し、 前記アクティビティに入出力されるデータのうちシナリ
オにおいて保存が必要であると指定されたデータオブジ
ェクトをデータオブジェクトIDと組にしてデータオブ
ジェクト管理手段に格納し、 前記データオブジェクトのデータオブジェクトIDをシ
ナリオインスタンスIDおよびアクティビティIDと組
にしてシナリオトランザクション管理手段に格納し、 シナリオの実行中に障害を検知した場合、アクティビテ
ィをシナリオに記述された内容に従って処理し、前記シ
ナリオステータス管理手段のシナリオステータスカラム
を更新して未完終了フラグを設定し、 シナリオの再実行時には新規シナリオインスタンスID
を発行し、前記未完終了フラグが設定されているシナリ
オステータス管理手段のシナリオインスタンスIDを取
得し、この取得したシナリオインスタンスIDをキーに
前記シナリオトランザクション管理手段および前記デー
タオブジェクト管理手段を検索して、保存されているデ
ータオブジェクトを取得し、このデータオブジェクトに
付与されているデータオブジェクトIDを新たなシナリ
オインスタンスIDに関連付けて採番される新しいデー
タオブジェクトIDに書き換えてシナリオを再実行する
ことを特徴とするワークフロー実行プログラムを記録し
た記録媒体。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000178668A JP3463020B2 (ja) | 2000-06-14 | 2000-06-14 | ワークフロー実行方法および装置とワークフロー実行プログラムを記録した記録媒体 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000178668A JP3463020B2 (ja) | 2000-06-14 | 2000-06-14 | ワークフロー実行方法および装置とワークフロー実行プログラムを記録した記録媒体 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2001356946A JP2001356946A (ja) | 2001-12-26 |
JP3463020B2 true JP3463020B2 (ja) | 2003-11-05 |
Family
ID=18680064
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2000178668A Expired - Lifetime JP3463020B2 (ja) | 2000-06-14 | 2000-06-14 | ワークフロー実行方法および装置とワークフロー実行プログラムを記録した記録媒体 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3463020B2 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11477340B2 (en) | 2019-01-18 | 2022-10-18 | Fujifilm Business Innovation Corp. | Information processing system and apparatus and non-transitory computer readable medium |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3960426B2 (ja) * | 2003-02-28 | 2007-08-15 | 日本電信電話株式会社 | マルチレイヤネットワークオペレーションサポートシステム、マルチレイヤネットワークサービスパス開通方法、処理プログラム及び該処理プログラムを記録した記録媒体 |
JP4039276B2 (ja) | 2003-03-05 | 2008-01-30 | 富士ゼロックス株式会社 | サービス処理システム及びプログラム |
JP5128365B2 (ja) * | 2008-05-09 | 2013-01-23 | キヤノンソフトウェア株式会社 | 情報処理システム、情報処理方法、プログラム、及び、記録媒体 |
JP5473267B2 (ja) * | 2008-07-14 | 2014-04-16 | キヤノン株式会社 | ワークフロー実行システム及びワークフロー実行方法 |
JP5598806B2 (ja) * | 2008-11-28 | 2014-10-01 | キヤノンItソリューションズ株式会社 | 情報処理装置及び情報処理方法、並びにプログラム |
US8205113B2 (en) * | 2009-07-14 | 2012-06-19 | Ab Initio Technology Llc | Fault tolerant batch processing |
JP6233130B2 (ja) * | 2014-03-25 | 2017-11-22 | 富士通株式会社 | ワークフロー制御プログラム、ワークフロー制御方法、及びワークフローシステム |
-
2000
- 2000-06-14 JP JP2000178668A patent/JP3463020B2/ja not_active Expired - Lifetime
Non-Patent Citations (1)
Title |
---|
Alonso G. et al.,Failure Handling in Large Scale Workflow Management Systems,IBM Research Report RJ9913,米国,IBM Corp.,1994年11月 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11477340B2 (en) | 2019-01-18 | 2022-10-18 | Fujifilm Business Innovation Corp. | Information processing system and apparatus and non-transitory computer readable medium |
Also Published As
Publication number | Publication date |
---|---|
JP2001356946A (ja) | 2001-12-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP0250847B1 (en) | Managing log data in a transaction-oriented system | |
US6732123B1 (en) | Database recovery to any point in time in an online environment utilizing disaster recovery technology | |
US5151987A (en) | Recovery objects in an object oriented computing environment | |
US5333314A (en) | Distributed data base system of composite subsystem type, and method of fault recovery for the system | |
JP4483342B2 (ja) | システム復旧方法 | |
JP4321705B2 (ja) | スナップショットの取得を制御するための装置及び記憶システム | |
US8010831B1 (en) | High availability data center | |
JPH0683689A (ja) | 長時間運転トランザクション管理システムおよび長時間運転トランザクションを実行する方法 | |
JPH0683841A (ja) | 作業フロー管理システムと方法 | |
JP3094888B2 (ja) | 採番機構、データ整合性確認機構、トランザクション再実行機構及び分散トランザクション処理システム | |
US6944635B2 (en) | Method for file deletion and recovery against system failures in database management system | |
JP3463020B2 (ja) | ワークフロー実行方法および装置とワークフロー実行プログラムを記録した記録媒体 | |
US7600148B1 (en) | High-availability data center | |
WO1996041263A1 (en) | Management of units of work on a computer system log | |
JP2010176303A (ja) | バッチ処理システムおよびこれに用いる情報端末装置、バッチ処理のリカバリ方法 | |
JP3135714B2 (ja) | チェックポイントリスタート方式 | |
US6092084A (en) | One system of a multisystem environment taking over log entries owned by another system | |
US6076095A (en) | Method of one system of a multisystem environment taking over log entries owned by another system | |
JP3159193B2 (ja) | システム障害時のバッチジョブリカバリシステム | |
US7350104B2 (en) | Invocation of a follow on unit of work | |
JP3516428B2 (ja) | 計算機 | |
JP6891533B2 (ja) | データベース装置 | |
US20240256398A1 (en) | Redo avoidance during database recovery | |
JPH09204205A (ja) | プログラム制御システム | |
JPH1040123A (ja) | ジョブ管理方式と方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
TRDD | Decision of grant or rejection written | ||
R150 | Certificate of patent or registration of utility model |
Ref document number: 3463020 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080815 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080815 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090815 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090815 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100815 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100815 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110815 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120815 Year of fee payment: 9 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130815 Year of fee payment: 10 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
EXPY | Cancellation because of completion of term |