JP2001356946A - ワークフロー実行方法および装置とワークフロー実行プログラムを記録した記録媒体 - Google Patents

ワークフロー実行方法および装置とワークフロー実行プログラムを記録した記録媒体

Info

Publication number
JP2001356946A
JP2001356946A JP2000178668A JP2000178668A JP2001356946A JP 2001356946 A JP2001356946 A JP 2001356946A JP 2000178668 A JP2000178668 A JP 2000178668A JP 2000178668 A JP2000178668 A JP 2000178668A JP 2001356946 A JP2001356946 A JP 2001356946A
Authority
JP
Japan
Prior art keywords
scenario
data object
execution
activity
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.)
Granted
Application number
JP2000178668A
Other languages
English (en)
Other versions
JP3463020B2 (ja
Inventor
Takashi Hatajima
隆 畑島
Toshihiro Motoda
敏浩 元田
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.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2000178668A priority Critical patent/JP3463020B2/ja
Publication of JP2001356946A publication Critical patent/JP2001356946A/ja
Application granted granted Critical
Publication of JP3463020B2 publication Critical patent/JP3463020B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Retry When Errors Occur (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

(57)【要約】 【課題】 シナリオ実行途中に障害が発生した場合でも
処理データに対して一貫性をもってシナリオの再実行を
可能とするワークフロー実行方法および装置を提供す
る。 【解決手段】 アクティビティ実行時にシナリオステー
タスをシナリオステータス管理部71に格納し、保存が
必要なデータオブジェクトをデータオブジェクト管理部
91に格納し、障害を検知した場合、実行中のアクティ
ビティをシナリオに従って終了処理し、シナリオステー
タス管理部71を更新して未完終了フラグを設定し、シ
ナリオの再実行時は新規にシナリオインスタンスIDを
発行し、未完終了フラグが設定されているシナリオイン
スタンスIDを取得し、このIDをキーに検索して、保
存されているデータオブジェクトを取得し、該シナリオ
インスタンスIDに関連付けて該データオブジェクトに
付与されているデータオブジェクトIDを新規発行した
シナリオインスタンスIDに関連付けて採番される新た
なデータオブジェクトIDに書き換えてシナリオを再実
行する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、電子計算機上に実
現されるワークフロー実行方法および装置に関し、更に
詳しくは、ワークフローを記述したシナリオを解釈して
得られた実行順序に従ってアクティビティを実行するワ
ークフロー実行方法および装置とワークフロー実行プロ
グラムを記録した記録媒体に関する。
【0002】
【従来の技術】ワークフローシステムは、従来、図5に
示すように、ワークフローを記述したシナリオ1をシナ
リオ実行機能部3で解釈して得られた実行順序に従って
アクティビティ11を実行している。そして、この実行
中におけるシナリオ実行機能部3における実行状態を実
行状態保存データベース21に記録するとともに、実行
結果を実行結果保存データベース23に記録するように
している。
【0003】このようなワークフローシステムにおい
て、障害回復機能は重要な機能である。これは、当該シ
ステムにおいてワークフローを記述したシナリオを実行
中に障害が発生した場合でも、処理したデータに対して
一貫性の保証を行うものである。
【0004】従来の技術では、システムの運用監視ツー
ルとして実装されており、システムの障害情報を検知
し、担当者への通知や、担当者による対応状況の管理や
処置履歴の保存、およびデータベースのロールバック処
理により実現している。ロールバックとは処理において
障害が発生した際に、状態をトランザクション開始時点
の状態に戻す障害回復操作である。
【0005】障害の発生した処理を完了させるには、再
度シナリオを実行し、そこに記述されている実行すべき
アクティビティのすべてが再度実行されることが必要と
なる。
【0006】ワークフローシステムに対する障害対応製
品としては、HP社のOpen Viewや日立製作所のJP1
などのシステム管理ツールと、Remedy Corporation社の
AR Systemなどに内包するトラブルチケット通知機能や
トラッキング機能との連携などが挙げられるが、これら
は障害の担当者への通知や、データベースのロールバッ
クを行うのみである。
【0007】
【発明が解決しようとする課題】上述したように、従来
は、障害の発生を単に担当者に通知するのみであった
り、データベースのロールバックを行うのみであった
り、また障害の復旧を通知するのみであり、実際の障害
復旧作業は担当者の作業に依存しているという問題があ
る。
【0008】そして、データベースのロールバック処理
においては、処理に必要なデータなどの環境が処理の契
機に依存しないアクティビティや、正常終了した処理ま
でもロールバックにより処理を取り消した上に再実行す
るというワークフロー実行資源の無駄が発生する。ま
た、データベースにおいてロールバックが不可能な処理
においてシナリオ実行前への復旧やシナリオ実行完了状
態までの処理はロールフォワード処理や手動で行ってい
るという問題がある。なお、ロールフォワード処理は、
処理履歴や処理データのバックアップファイルやワーク
フロー内に指定したチェックポイントまでの保存データ
を用いて障害発生以前の環境を復元し、更新処理を進め
ることである。
【0009】本発明は、上記に鑑みてなされたもので、
その目的とするところは、シナリオ実行途中に障害が発
生した場合でも処理データに対して一貫性をもってシナ
リオの再実行を可能とするワークフロー実行方法および
装置とワークフロー実行プログラムを記録した記録媒体
を提供することにある。
【0010】
【課題を解決するための手段】上記目的を達成するた
め、請求項1記載の本発明は、電子計算機上においてワ
ークフローを記述したシナリオに従ってアクティビティ
を実行するワークフロー実行方法であって、アクティビ
ティの実行順序関係、アクティビティに入出力されるデ
ータの組、およびデータのうちシナリオ実行後も保存す
るデータの組が記述されたシナリオを解釈して得られた
実行順序に従ってアクティビティを実行し、このアクテ
ィビティの実行時に前記シナリオのシナリオIDおよび
同一シナリオIDのシナリオ実行を一意に特定するシナ
リオインスタンスIDに対応して該シナリオインスタン
スの実行状態を表すシナリオステータスを組にしてシナ
リオステータス管理手段に格納し、前記アクティビティ
に入出力されるデータのうちシナリオにおいて保存が必
要であると指定されたデータオブジェクトをデータオブ
ジェクトIDと組にしてデータオブジェクト管理手段に
格納し、前記データオブジェクトのデータオブジェクト
IDをシナリオインスタンスIDおよびアクティビティ
IDと組にしてシナリオトランザクション管理手段に格
納し、シナリオ実行中に障害を検知した場合、アクティ
ビティをシナリオに記述された内容に従って処理し、前
記シナリオステータス管理手段のシナリオステータスカ
ラムを更新して未完終了フラグを設定し、シナリオの再
実行時には新規シナリオインスタンスIDを発行し前記
未完終了フラグが設定されているシナリオステータス管
理手段のシナリオインスタンスIDを取得し、このシナ
リオインスタンスIDをキーに前記シナリオトランザク
ション管理手段および前記データオブジェクト管理手段
を検索して、保存されているデータオブジェクトを取得
し、このデータオブジェクトに付与されているデータオ
ブジェクトIDを新たなシナリオインスタンスIDに関
連付けて書き換えてシナリオを再実行することを要旨と
する。
【0011】請求項1記載の本発明にあっては、シナリ
オを解釈して得られた実行順序に従ったアクティビティ
の実行時にシナリオインスタンスの実行状態を表すシナ
リオステータスをシナリオステータス管理手段に格納
し、保存が必要であると指定されたデータオブジェクト
をデータオブジェクトIDと組にしてデータオブジェク
ト管理手段に格納し、データオブジェクトID、シナリ
オインスタンスIDおよびアクティビティIDと組にし
てシナリオトランザクション管理手段に格納し、シナリ
オの実行中に障害を検知した場合、アクティビティをシ
ナリオに記述された内容に従って処理し、シナリオステ
ータス管理手段のシナリオステータスカラムを更新して
未完終了フラグを設定し、シナリオの再実行時には新規
シナリオインスタンスIDを発行し、未完終了フラグが
設定されているシナリオステータス管理手段のシナリオ
インスタンスIDを取得し、このシナリオインスタンス
IDをキーにシナリオトランザクション管理手段および
データオブジェクト管理手段を検索して、保存されてい
るデータオブジェクトを取得し、このデータオブジェク
トに付与されているデータオブジェクトIDを新たなシ
ナリオインスタンスIDに関連付けて書き換えてシナリ
オを再実行するため、データオブジェクトを再利用で
き、データオブジェクトの作成のための計算コストを削
減できるとともに、障害発生時に最低限保存すべきデー
タを明示的に指定し、障害復旧時に不足するデータの認
知および再実行時の自動処理が可能となり、フォールト
トレラント性に優れたワークフローシステムを構築する
ことができる。
【0012】また、請求項2記載の本発明は、電子計算
機上においてワークフローを記述したシナリオに従って
アクティビティを実行するワークフロー実行装置であっ
て、アクティビティの実行順序関係、アクティビティに
入出力されるデータの組、およびデータのうちシナリオ
実行後も保存するデータの組が記述されたシナリオを解
釈して得られた実行順序に従ってアクティビティを実行
するシナリオ実行手段と、前記シナリオ実行手段による
アクティビティの実行時に前記シナリオのシナリオID
およびシナリオインスタンスIDに対応して該シナリオ
インスタンスの実行状態を表すシナリオステータスを組
にして格納するシナリオステータス管理手段と、前記ア
クティビティに入出力されるデータのうちシナリオにお
いて保存が必要であると指定されたデータオブジェクト
をデータオブジェクトIDと組にして格納するデータオ
ブジェクト管理手段と、前記データオブジェクトのデー
タオブジェクトIDをシナリオインスタンスIDおよび
アクティビティIDと組にして格納するシナリオトラン
ザクション管理手段と、シナリオの実行中に障害を検知
した場合、アクティビティをシナリオに記述された内容
に従って処理し、前記シナリオステータス管理手段のシ
ナリオステータスカラムを更新して未完終了フラグを設
定する未完終了フラグ設定手段と、シナリオの再実行時
には新規シナリオインスタンスIDを発行し、前記未完
終了フラグが設定されているシナリオステータス管理手
段のシナリオインスタンスIDを取得し、このシナリオ
インスタンスIDをキーに前記シナリオトランザクショ
ン管理手段および前記データオブジェクト管理手段を検
索して、保存されているデータオブジェクトを取得し、
このデータオブジェクトに付与されているデータオブジ
ェクトIDを新たなシナリオインスタンスIDに関連付
けて書き換えてシナリオを再実行する再実行手段とを有
することを要旨とする。
【0013】請求項2記載の本発明にあっては、シナリ
オを解釈して得られた実行順序に従ったアクティビティ
の実行時にシナリオインスタンスの実行状態を表すシナ
リオステータスをシナリオステータス管理手段に格納
し、保存が必要であると指定されたデータオブジェクト
をデータオブジェクトIDと組にしてデータオブジェク
ト管理手段に格納し、データオブジェクトID、シナリ
オインスタンスIDおよびアクティビティIDと組にし
てシナリオトランザクション管理手段に格納し、シナリ
オの実行中に障害を検知した場合、アクティビティをシ
ナリオに記述された内容に従って処理し、シナリオステ
ータス管理手段のシナリオステータスカラムを更新して
未完終了フラグを設定し、シナリオの再実行時には未完
終了フラグが設定されているシナリオステータス管理手
段のシナリオインスタンスIDを取得し、このシナリオ
インスタンスIDをキーにシナリオトランザクション管
理手段およびデータオブジェクト管理手段を検索して、
保存されているデータオブジェクトを取得し、このデー
タオブジェクトに付与されているデータオブジェクトI
Dを新たなシナリオインスタンスIDに関連付けて書き
換えてシナリオを再実行するため、データオブジェクト
を再利用でき、データオブジェクトの作成のための計算
コストを削減できるとともに、障害発生時に最低限保存
すべきデータを明示的に指定し、障害復旧時に不足する
データの認知および再実行時の自動処理が可能となり、
フォールトトレラント性に優れたワークフローシステム
を構築することができる。
【0014】更に、請求項3記載の本発明は、電子計算
機上においてワークフローを記述したシナリオに従って
アクティビティを実行するワークフロー実行プログラム
を記録した記録媒体であって、アクティビティの実行順
序関係、アクティビティに入出力されるデータの組、お
よびデータのうちシナリオ実行後も保存するデータの組
が記述されたシナリオを解釈して得られた実行順序に従
ってアクティビティを実行し、このアクティビティの実
行時に前記シナリオのシナリオIDおよびシナリオイン
スタンスIDに対応して該シナリオインスタンスの実行
状態を表すシナリオステータスを組にしてシナリオステ
ータス管理手段に格納し、前記アクティビティに入出力
されるデータのうちシナリオにおいて保存が必要である
と指定されたデータオブジェクトをデータオブジェクト
IDと組にしてデータオブジェクト管理手段に格納し、
前記データオブジェクトのデータオブジェクトIDをシ
ナリオインスタンスIDおよびアクティビティIDと組
にしてシナリオトランザクション管理手段に格納し、シ
ナリオの実行中に障害を検知した場合、アクティビティ
をシナリオに記述された内容に従って処理し、前記シナ
リオステータス管理手段のシナリオステータスカラムを
更新して未完終了フラグを設定し、シナリオの再実行時
には新規シナリオインスタンスIDを発行し、前記未完
終了フラグが設定されているシナリオステータス管理手
段のシナリオインスタンスIDを取得し、このシナリオ
インスタンスIDをキーに前記シナリオトランザクショ
ン管理手段および前記データオブジェクト管理手段を検
索して、保存されているデータオブジェクトを取得し、
このデータオブジェクトに付与されているデータオブジ
ェクトIDを新たなシナリオインスタンスIDに関連付
けて書き換えてシナリオを再実行するワークフロー実行
プログラムを記録媒体に記録することを要旨とする。
【0015】請求項3記載の本発明にあっては、シナリ
オを解釈して得られた実行順序に従ったアクティビティ
の実行時にシナリオインスタンスの実行状態を表すシナ
リオステータスをシナリオステータス管理手段に格納
し、保存が必要であると指定されたデータオブジェクト
をデータオブジェクトIDと組にしてデータオブジェク
ト管理手段に格納し、データオブジェクトID、シナリ
オインスタンスIDおよびアクティビティIDと組にし
てシナリオトランザクション管理手段に格納し、シナリ
オの実行中に障害を検知した場合、アクティビティをシ
ナリオに記述された内容に従って処理し、シナリオステ
ータス管理手段のシナリオステータスカラムを更新して
未完終了フラグを設定し、シナリオの再実行時には新規
シナリオインスタンスIDを発行し、未完終了フラグが
設定されているシナリオステータス管理手段のシナリオ
インスタンスIDを取得し、このシナリオインスタンス
IDをキーにシナリオトランザクション管理手段および
データオブジェクト管理手段を検索して、保存されてい
るデータオブジェクトを取得し、このデータオブジェク
トに付与されているデータオブジェクトIDを新たなシ
ナリオインスタンスIDに関連付けて書き換えてシナリ
オを再実行するワークフロー実行プログラムを記録媒体
に記録しているため、該記録媒体を用いて、その流通性
を高めることができる。
【0016】
【発明の実施の形態】以下、図面を用いて本発明の実施
の形態を説明する。図1は、本発明の一実施形態に係る
ワークフロー実行装置の構成を示す図である。同図に示
すワークフロー実行装置は、ワークフローを記述したシ
ナリオ1を解釈して得られた実行順序に従ってアクティ
ビティ11を実行するシナリオ実行機能部3と、シナリ
オステータス管理部71を含有していて、シナリオ実行
機能部3からのシナリオインスタンスIDの発行依頼に
対してシナリオインスタンスIDをシナリオ実行機能部
3に発行するとともに、該シナリオインスタンスIDと
アクティビティの実行状態を管理するシナリオ実行状態
管理機能部7と、データオブジェクト管理部91および
シナリオトランザクション管理部93を含有していて、
アクティビティデータを管理するアクティビティデータ
管理機能部9とから構成されている。なお、シナリオ実
行状態管理機能部7とアクティビティデータ管理機能部
9は、データ管理機能部5を構成している。
【0017】シナリオ1には、アクティビティ11の実
行順序関係、アクティビティに入力出されるデータの
組、およびデータのうちシナリオ実行後も保存するデー
タの組が記述されている。また、アクティビティ11は
Javaなどのプログラミング言語を用いて任意に記述
され、その実行には必要なデータと実行の結果得られる
出力データの組が記述されたシナリオ1を解釈すること
によりシナリオ実行機能部3が行い、得られるデータは
アクティビティデータ管理機能部9のデータオブジェク
ト管理部91に保管される。データオブジェクト管理部
91は、データオブジェクトをデータオブジェクトID
に対応して組にして1レコードとして格納しており、ア
クティビティに入出力されるデータのうちシナリオにお
いて保存が必要とされたデータのみを格納している。
【0018】シナリオ実行機能部3は、シナリオ実行状
態管理機能部7に対してシナリオインスタンスIDの発
行を依頼して、シナリオインスタンスIDをシナリオ実
行状態管理機能部7から取得した後、シナリオ1を解釈
することにより得られた実行順序に従ってアクティビテ
ィ11を実行する。この実行したアクティビティ11の
実行状態がシナリオステータスとしてシナリオインスタ
ンスIDに対応してシナリオステータス管理部71に蓄
積管理される。具体的には、シナリオ1に付与されたシ
ナリオIDおよびシナリオインスタンスIDは、シナリ
オインスタンスの実行状態を表すシナリオステータスと
組にされ、1レコードとしてシナリオステータス管理部
71に蓄積される。
【0019】アクティビティデータ管理機能部9のシナ
リオトランザクション管理部93には、シナリオインス
タンスID、アクティビティID、およびデータオブジ
ェクトIDが組にされ、1レコードとして蓄積されてい
る。データオブジェクトIDは、アクティビティに入出
力されるデータのうちシナリオにおいて保存が必要なデ
ータのみに付与される。アクティビティIDは、アクテ
ィビティを一意に指定可能にするために付与されてい
る。
【0020】シナリオの再実行時には、初回実行時と同
一のシナリオをシナリオ実行機能部3に投入することに
より初回実行時のシナリオインスタンスIDと関連付け
られたシナリオインスタンスIDが新規発行されるとと
もに、保管されたデータを基に必要最小限のアクティビ
ティの実行シナリオが生成される。
【0021】また、アクティビティデータ管理機能部9
への初回実行時のデータオブジェクトIDを持ったデー
タオブジェクトの問い合わせの結果得られたデータを再
実行時に利用し、アクティビティ再実行の結果得られた
データオブジェクトに再実行時のシナリオインスタンス
IDと関連付けたデータオブジェクトIDを割り当て
る。
【0022】次に、図2、図3および図4に示すシーケ
ンス図を参照して、図1に示した実施形態のワークフロ
ー実行装置の動作をそれぞれ正常実行時、異常発生時、
再実行時に分けて説明する。
【0023】まず、図2を参照して、本実施形態の正常
実行時の動作について説明する。
【0024】シナリオ1には、上述したように、アクテ
ィビティの実行順序関係、アクティビティに入出力され
るデータの組、およびデータのうちシナリオ実行後も保
存するデータの組が記述されていて、シナリオ1は一意
に特定できるシナリオIDを有する。
【0025】図2のシナリオ実行初期動作では、シナリ
オ1は、シナリオ実行機能部3に入力されると、該シナ
リオ実行機能部3により解釈されて、アクティビティの
実行順序を決定される。また、シナリオ実行機能部3
は、シナリオ1を入力されると、シナリオ実行状態管理
機能部7に対して該シナリオ1のシナリオインスタンス
IDの発行を依頼し、シナリオ実行タイミングを一意に
特定可能なシナリオインスタンスIDがシナリオ1に対
して付与される。
【0026】シナリオ実行機能部3に入力されたシナリ
オ1に付与されたシナリオIDとシナリオインスタンス
IDは、シナリオインスタンスの実行状態を表すシナリ
オステータスを組にされて、1レコードとしてシナリオ
ステータス管理部71に格納される。
【0027】シナリオ1がシナリオ実行機能部3で解釈
されて得られた実行順序に従ってアクティビティ11が
実行されると、シナリオステータス管理部71の当該レ
コードのシナリオステータスが更新される。
【0028】シナリオ実行機能部3によるシナリオ1の
実行により起動されるアクティビティ11の入出力に使
用されるデータオブジェクトは、アクティビティデータ
管理機能部9のデータオブジェクト管理部91およびシ
ナリオトランザクション管理部93に格納される。
【0029】シナリオ実行機能部3によるアクティビテ
ィ11の実行において、アクティビティに入出力される
データのうちシナリオ実行後も保存が必要なデータは、
アクティビティデータ管理機能部9のデータオブジェク
ト管理部91にデータオブジェクトとしてデータオブジ
ェクトIDと組にされて格納されるとともに、またこの
データオブジェクトIDはシナリオトランザクション管
理部93にシナリオインスタンスID、アクティビティ
IDと組にされて格納される。
【0030】そして、アクティビティの実行が完了する
と、アクティビティ実行完了通知がシナリオ実行機能部
3に送られる。シナリオ実行機能部3は、この通知を受
けると、シナリオ実行状態管理機能部7のシナリオステ
ータス管理部71の当該レコードのシナリオステータス
を更新する。シナリオステータス管理部71の更新が完
了すると、シナリオ実行機能部3に実行状態更新完了通
知が送られる。このようにして、シナリオ1に記述され
たアクティビティの実行がすべて完了した時、シナリオ
ステータス管理部71のシナリオステータスカラムを更
新し、完了フラグを設定する。
【0031】また、シナリオ実行機能部3によるアクテ
ィビティ11の実行において、アクティビティに入出力
されるデータのうちシナリオ実行後、保存が不要なデー
タの場合には、データオブジェクト管理部91に格納さ
れることなく、またデータオブジェクトIDもシナリオ
トランザクション管理部93に格納されることなく、ア
クティビティ実行完了通知がシナリオ実行機能部3に送
られる。シナリオ実行機能部3は、この通知を受ける
と、シナリオステータス管理部71の当該レコードのシ
ナリオステータスを更新し、実行状態更新完了通知を受
け取る。そして、シナリオ1に記述されたアクティビテ
ィの実行がすべて完了した時、シナリオステータス管理
部71のシナリオステータスカラムを更新し、完了フラ
グを設定する。
【0032】次に、図3に示すシーケンス図を参照し
て、本実施形態においてシナリオ実行中に異常を検知し
た場合である障害発生時の動作について説明する。
【0033】シナリオ実行機能部3は、シナリオ1に従
ってアクティビティ11を実行している最中に、アクテ
ィビティ11からの異常通知を検知して、障害の発生を
検出すると、シナリオ実行状態管理機能部7に障害情報
を通知し、シナリオ実行状態管理機能部7にアクティビ
ティ11をシナリオ1に記述された内容に従って処理
し、それからシナリオステータス管理部71のシナリオ
ステータスカラムを更新し、未完終了フラグを設定す
る。なお、シナリオに記述された未完終了状態まで処理
を進行できない場合には、異常終了フラグを設定する
が、この場合の復旧処理は従来と同様に担当者の手作業
で行われる。
【0034】更に詳しくは、シナリオ実行機能部3は、
アクティビティ11からの異常通知を検知すると、シナ
リオ実行状態管理機能部7への障害情報を通知すること
に加えて、アクティビティ11に対して復旧操作を実行
する。アクティビティ11はアクティビティデータ管理
機能部9のデータオブジェクト管理部91およびシナリ
オトランザクション管理部93にデータを保存する。ア
クティビティデータ管理機能部9はデータを保存する
と、データ保存完了通知をシナリオ実行機能部3に送
る。
【0035】シナリオ実行機能部3は、アクティビティ
データ管理機能部9からデータ保存完了通知を受ける
と、シナリオ実行状態管理機能部7に実行中のアクティ
ビティの状態をシナリオ1に記述された内容に従って行
って、シナリオの終了処理を行い、シナリオステータス
管理部71のシナリオステータスカラムを更新し、未完
終了フラグを設定する。そして、シナリオ実行状態管理
機能部7は、実行状態の更新およびフラグの設定を完了
すると、実行状態更新完了通知をシナリオ実行機能部3
に返送する。
【0036】次に、図4に示すシーケンス図を参照し
て、本実施形態におけるシナリオ再実行時の動作につい
て説明する。
【0037】まず、シナリオ再実行の初期動作では、シ
ナリオ実行機能部3は、シナリオ実行状態管理機能部7
に新規なシナリオインスタンスIDの発行依頼を行っ
て、再実行のために投入されたシナリオに対して新規に
シナリオインスタンスIDを付与し、再実行により取得
されるデータや、再実行の実行状態を初期実行時と区別
して管理する。また、シナリオ実行機能部3は、再投入
したユーザのユーザIDとシナリオIDをキーにしてシ
ナリオ実行状態管理機能部7のシナリオステータス管理
部71への問い合わせを行い、同一レコードのシナリオ
ステータスカラムにおいて未完終了フラグが設定されて
いるシナリオインスタンスIDを取得する。それから、
この取得したシナリオインスタンスIDをキーにしてデ
ータオブジェクト管理部91を検索し、このシナリオイ
ンスタンスIDに対応して保存されているデータオブジ
ェクトを取得する。
【0038】次に、この取得したデータオブジェクトを
用いて、未完了のアクティビティ11の再実行を行う
が、この再実行では、まずシナリオインスタンスIDに
関連付けて該データオブジェクトに付与されたデータオ
ブジェクトIDを新規発行したシナリオインスタンスI
Dに関連付けて採番される新しいデータオブジェクトI
Dに書き換える。それから、未完了のアクティビティ1
1の再実行を行うが、この再実行において、アクティビ
ティ実行後も保存が必要なデータは、データオブジェク
ト管理部91に格納されるとともに、また、シナリオト
ランザクション管理部93にシナリオインスタンスI
D、アクティビティIDと組にされて格納される。
【0039】そして、前記データオブジェクトを用いた
未完了のアクティビティの再実行が完了すると、アクテ
ィビティ実行完了通知がシナリオ実行機能部3に送られ
る。シナリオ実行機能部3は、この通知を受けると、シ
ナリオステータス管理部71の当該レコードのシナリオ
ステータスを更新する。シナリオステータス管理部71
の更新が完了すると、シナリオ実行機能部3に実行状態
更新完了通知が送られる。
【0040】また、未完了のアクティビティ11の再実
行において、アクティビティ実行後、保存が不要なデー
タの場合には、データオブジェクト管理部91に格納さ
れることなく、またデータオブジェクトIDもシナリオ
トランザクション管理部93に格納されることなく、ア
クティビティ実行完了通知がシナリオ実行機能部3に送
られる。シナリオ実行機能部3は、この通知を受ける
と、シナリオステータス管理部71の当該レコードのシ
ナリオステータスを更新し、実行状態更新完了通知を受
け取る。
【0041】上述した手順により、正常終了し、出力が
再利用可能であるアクティビティを再実行することな
く、シナリオを再実行することができるのである。
【0042】なお、上記実施形態のワークフロー実行方
法の処理手順をプログラムとして記録媒体に記録して、
この記録媒体をコンピュータシステムに組み込むととも
に、該記録媒体に記録されたプログラムをコンピュータ
システムにダウンロードまたはインストールし、該プロ
グラムでコンピュータシステムを作動させることによ
り、ワークフロー実行方法を実施するワークフロー実行
装置として機能させることができることは勿論であり、
このような記録媒体を用いることにより、その流通性を
高めることができるものである。
【0043】
【発明の効果】以上説明したように、本発明によれば、
アクティビティの実行時にシナリオインスタンスの実行
状態を表すシナリオステータスをシナリオステータス管
理手段に格納し、保存が必要であると指定されたデータ
オブジェクトをデータオブジェクトIDと組にしてデー
タオブジェクト管理手段に格納するとともに、データオ
ブジェクトID、シナリオインスタンスIDおよびアク
ティビティIDを組にしてシナリオトランザクション管
理手段に格納し、障害を検知した場合、実行中のアクテ
ィビティの状態をシナリオに記述された内容に従って終
了処理し、シナリオステータス管理手段のシナリオステ
ータスカラムを更新して未完終了フラグを設定し、シナ
リオの再実行時には未完終了フラグが設定されているシ
ナリオステータス管理手段のシナリオインスタンスID
を取得し、このシナリオインスタンスIDをキーにシナ
リオトランザクション管理手段およびデータオブジェク
ト管理手段を検索して、保存されているデータオブジェ
クトを取得し、このデータオブジェクトに付与されてい
るデータオブジェクトIDを新たに発行したシナリオイ
ンスタンスIDに関連付けて書き換えてシナリオを再実
行するので、データオブジェクトを再利用でき、データ
オブジェクトの作成のための計算コストを削減できると
ともに、障害発生時に最低限保存すべきデータを明示的
に指定し、障害復旧時に不足するデータの認知および再
実行時の自動処理が可能となり、フォールトトレラント
性に優れたワークフローシステムを構築することができ
る。
【図面の簡単な説明】
【図1】本発明の一実施形態に係るワークフロー実行装
置の構成を示す図である。
【図2】図1に示すワークフロー実行装置の正常実行時
の動作を示すシーケンス図である。
【図3】図1に示すワークフロー実行装置の障害発生時
の動作を示すシーケンス図である。
【図4】図1に示すワークフロー実行装置のシナリオ再
実行時の動作を示すシーケンス図である。
【図5】従来のワークフローシステムの構成を示す図で
ある。
【符号の説明】
1 シナリオ 3 シナリオ実行機能部 5 データ管理機能部 7 シナリオ実行状態管理機能部 9 アクティビティデータ管理機能部 11 アクティビティ 71 シナリオステータス管理部 91 データオブジェクト管理部 93 シナリオトランザクション管理部

Claims (3)

    【特許請求の範囲】
  1. 【請求項1】 電子計算機上においてワークフローを記
    述したシナリオに従ってアクティビティを実行するワー
    クフロー実行方法であって、 アクティビティの実行順序関係、アクティビティに入出
    力されるデータの組、およびデータのうちシナリオ実行
    後も保存するデータの組が記述されたシナリオを解釈し
    て得られた実行順序に従ってアクティビティを実行し、 このアクティビティの実行時に前記シナリオのシナリオ
    IDおよび同一シナリオIDのシナリオ実行を一意に特
    定するシナリオインスタンスIDに対応して該シナリオ
    インスタンスの実行状態を表すシナリオステータスを組
    にしてシナリオステータス管理手段に格納し、 前記アクティビティに入出力されるデータのうちシナリ
    オにおいて保存が必要であると指定されたデータオブジ
    ェクトをデータオブジェクトIDと組にしてデータオブ
    ジェクト管理手段に格納し、 前記データオブジェクトのデータオブジェクトIDをシ
    ナリオインスタンスIDおよびアクティビティIDと組
    にしてシナリオトランザクション管理手段に格納し、 シナリオの実行中に障害を検知した場合、アクティビテ
    ィをシナリオに記述された内容に従って処理し、前記シ
    ナリオステータス管理手段のシナリオステータスカラム
    を更新して未完終了フラグを設定し、 シナリオの再実行時には新規シナリオインスタンスID
    を発行し、前記未完終了フラグが設定されているシナリ
    オステータス管理手段のシナリオインスタンスIDを取
    得し、このシナリオインスタンスIDをキーに前記シナ
    リオトランザクション管理手段および前記データオブジ
    ェクト管理手段を検索して、保存されているデータオブ
    ジェクトを取得し、このデータオブジェクトに付与され
    ているデータオブジェクトIDを新たなシナリオインス
    タンスIDに関連付けて書き換えてシナリオを再実行す
    ることを特徴とするワークフロー実行方法。
  2. 【請求項2】 電子計算機上においてワークフローを記
    述したシナリオに従ってアクティビティを実行するワー
    クフロー実行装置であって、 アクティビティの実行順序関係、アクティビティに入出
    力されるデータの組、およびデータのうちシナリオ実行
    後も保存するデータの組が記述されたシナリオを解釈し
    て得られた実行順序に従ってアクティビティを実行する
    シナリオ実行手段と、 前記シナリオ実行手段によるアクティビティの実行時に
    前記シナリオのシナリオIDおよび同一シナリオIDの
    シナリオ実行を一意に特定するシナリオインスタンスI
    Dに対応して該シナリオインスタンスの実行状態を表す
    シナリオステータスを組にして格納するシナリオステー
    タス管理手段と、 前記アクティビティに入出力されるデータのうちシナリ
    オにおいて保存が必要であると指定されたデータオブジ
    ェクトをデータオブジェクトIDと組にして格納するデ
    ータオブジェクト管理手段と、 前記データオブジェクトのデータオブジェクトIDをシ
    ナリオインスタンスIDおよびアクティビティIDと組
    にして格納するシナリオトランザクション管理手段と、 シナリオの実行中に障害を検知した場合、アクティビテ
    ィをシナリオに記述された内容に従って処理し、前記シ
    ナリオステータス管理手段のシナリオステータスカラム
    を更新して未完終了フラグを設定する未完終了フラグ設
    定手段と、 シナリオの再実行時には新規シナリオインスタンスID
    を発行し、前記未完終了フラグが設定されているシナリ
    オステータス管理手段のシナリオインスタンスIDを取
    得し、このシナリオインスタンスIDをキーに前記シナ
    リオトランザクション管理手段および前記データオブジ
    ェクト管理手段を検索して、保存されているデータオブ
    ジェクトを取得し、このデータオブジェクトに付与され
    ているデータオブジェクトIDを新たなシナリオインス
    タンスIDに関連付けて書き換えてシナリオを再実行す
    る再実行手段とを有することを特徴とするワークフロー
    実行装置。
  3. 【請求項3】 電子計算機上においてワークフローを記
    述したシナリオに従ってアクティビティを実行するワー
    クフロー実行プログラムを記録した記録媒体であって、 アクティビティの実行順序関係、アクティビティに入出
    力されるデータの組、およびデータのうちシナリオ実行
    後も保存するデータの組が記述されたシナリオを解釈し
    て得られた実行順序に従ってアクティビティを実行し、 このアクティビティの実行時に前記シナリオのシナリオ
    IDおよび同一シナリオIDのシナリオ実行を一意に特
    定するシナリオインスタンスIDに対応して該シナリオ
    インスタンスの実行状態を表すシナリオステータスを組
    にしてシナリオステータス管理手段に格納し、 前記アクティビティに入出力されるデータのうちシナリ
    オにおいて保存が必要であると指定されたデータオブジ
    ェクトをデータオブジェクトIDと組にしてデータオブ
    ジェクト管理手段に格納し、 前記データオブジェクトのデータオブジェクトIDをシ
    ナリオインスタンスIDおよびアクティビティIDと組
    にしてシナリオトランザクション管理手段に格納し、 シナリオの実行中に障害を検知した場合、アクティビテ
    ィをシナリオに記述された内容に従って処理し、前記シ
    ナリオステータス管理手段のシナリオステータスカラム
    を更新して未完終了フラグを設定し、 シナリオの再実行時には新規シナリオインスタンスID
    を発行し、前記未完終了フラグが設定されているシナリ
    オステータス管理手段のシナリオインスタンスIDを取
    得し、このシナリオインスタンスIDをキーに前記シナ
    リオトランザクション管理手段および前記データオブジ
    ェクト管理手段を検索して、保存されているデータオブ
    ジェクトを取得し、このデータオブジェクトに付与され
    ているデータオブジェクトIDを新たなシナリオインス
    タンスIDに関連付けて書き換えてシナリオを再実行す
    ることを特徴とするワークフロー実行プログラムを記録
    した記録媒体。
JP2000178668A 2000-06-14 2000-06-14 ワークフロー実行方法および装置とワークフロー実行プログラムを記録した記録媒体 Expired - Lifetime JP3463020B2 (ja)

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 true JP2001356946A (ja) 2001-12-26
JP3463020B2 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 (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004266443A (ja) * 2003-02-28 2004-09-24 Nippon Telegr & Teleph Corp <Ntt> マルチレイヤネットワークオペレーションサポートシステム、マルチレイヤネットワークサービスパス開通方法、処理プログラム及び該処理プログラムを記録した記録媒体、並びにマルチレイヤネットワークサービス監視方法、処理プログラム及び該処理プログラムを記録した記録媒体
JP2009271839A (ja) * 2008-05-09 2009-11-19 Canon Software Inc 情報処理システム、情報処理方法、プログラム、及び、記録媒体
JP2010018004A (ja) * 2008-07-14 2010-01-28 Canon Inc ワークフロー実行装置及びワークフロー実行方法
JP2010128905A (ja) * 2008-11-28 2010-06-10 Canon It Solutions Inc 情報処理装置及び方法、並びにプログラム
US7889368B2 (en) 2003-03-05 2011-02-15 Fuji Xerox Co., Ltd. Service processing system, service processing method and service processing device
JP2015185014A (ja) * 2014-03-25 2015-10-22 富士通株式会社 ワークフロー制御プログラム、ワークフロー制御方法、及びワークフローシステム
JP2016129056A (ja) * 2009-07-14 2016-07-14 アビニシオ テクノロジー エルエルシー フォールトトレラントバッチ処理
US11477340B2 (en) 2019-01-18 2022-10-18 Fujifilm Business Innovation Corp. Information processing system and apparatus and non-transitory computer readable medium

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004266443A (ja) * 2003-02-28 2004-09-24 Nippon Telegr & Teleph Corp <Ntt> マルチレイヤネットワークオペレーションサポートシステム、マルチレイヤネットワークサービスパス開通方法、処理プログラム及び該処理プログラムを記録した記録媒体、並びにマルチレイヤネットワークサービス監視方法、処理プログラム及び該処理プログラムを記録した記録媒体
US7889368B2 (en) 2003-03-05 2011-02-15 Fuji Xerox Co., Ltd. Service processing system, service processing method and service processing device
JP2009271839A (ja) * 2008-05-09 2009-11-19 Canon Software Inc 情報処理システム、情報処理方法、プログラム、及び、記録媒体
JP2010018004A (ja) * 2008-07-14 2010-01-28 Canon Inc ワークフロー実行装置及びワークフロー実行方法
JP2010128905A (ja) * 2008-11-28 2010-06-10 Canon It Solutions Inc 情報処理装置及び方法、並びにプログラム
JP2016129056A (ja) * 2009-07-14 2016-07-14 アビニシオ テクノロジー エルエルシー フォールトトレラントバッチ処理
JP2015185014A (ja) * 2014-03-25 2015-10-22 富士通株式会社 ワークフロー制御プログラム、ワークフロー制御方法、及びワークフローシステム
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
JP3463020B2 (ja) 2003-11-05

Similar Documents

Publication Publication Date Title
JP4483342B2 (ja) システム復旧方法
EP0250847B1 (en) Managing log data in a transaction-oriented system
JPS633341B2 (ja)
JPH0683841A (ja) 作業フロー管理システムと方法
JPH0683689A (ja) 長時間運転トランザクション管理システムおよび長時間運転トランザクションを実行する方法
JP6342070B2 (ja) ジョブ管理装置及びジョブ管理方法及びジョブ管理プログラム
JP3094888B2 (ja) 採番機構、データ整合性確認機構、トランザクション再実行機構及び分散トランザクション処理システム
JP6447258B2 (ja) 管理プログラム、管理方法、および管理装置
JP2001356946A (ja) ワークフロー実行方法および装置とワークフロー実行プログラムを記録した記録媒体
CN106874343B (zh) 一种时序数据库的数据删除方法及***
CN110597669A (zh) 银行历史数据参数化备份恢复方法和装置
CN113704277A (zh) 一种基于数据库的断点续传方法及相关装置
CN108804239A (zh) 平台整合的方法、装置、计算机设备和存储介质
US20140359420A1 (en) Disaster Recovery Method and Apparatus Used in Document Editing and Storage Medium
JP2003085021A (ja) リカバリ・リスタート機能を備えたバッチ処理システム、リカバリ・リスタート機能を備えたバッチ処理システム用プログラム、及びそのプログラムを記録した記録媒体
JP2002082826A (ja) データベースシステム
JP2000181735A (ja) システム障害時のバッチジョブリカバリシステム
JP6891533B2 (ja) データベース装置
JPH1040123A (ja) ジョブ管理方式と方法
JPH0659913A (ja) バッチジョブスケジューリングシステム
JP2677162B2 (ja) スケジュールによる業務実行制御方式
JPH02118736A (ja) バッチジョブ障害復旧管理方式
JPH10275133A (ja) プロセスの再実行処理方法
JP2001265474A (ja) コンピュータの運用管理システム
JP2000315190A (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