"業務プロセスを構成している一連のタスクを実行する複数のサーバを監視して、上記サーバによる現在実行中のタスクを検出する実行中タスク検出手段と、上記実行中タスク検出手段により検出された現在実行中のタスクと次のタスクの間にチェックポイントが設定されている場合、現在実行中のタスクが終了した時点で、一連のタスクで使用されるデータの中で、更新されているデータを特定し、上記データを退避対象に設定する退避対象設定手段と、上記退避対象設定手段により退避対象に設定されたデータを記録媒体に退避させるデータ退避手段とを備えたプロセス管理装置。退避対象設定手段は、一連のタスクで使用されるデータの中で、今回のチェックポイントと前回のチェックポイントの間で更新されているデータを特定し、上記データを退避対象に設定することを特徴とする請求項1記載のプロセス管理装置。退避対象設定手段は、更新されているデータであっても、後続のタスクで使用されないデータについては退避対象から除外することを特徴とする請求項1または請求項2記載のプロセス管理装置。障害の発生でタスクの実行を中断しているサーバを検知し、上記タスクよりも前のチェックポイントを特定するチェックポイント特定手段と、退避対象設定手段により退避対象に設定されることで、記録媒体に退避されているデータの中から、上記チェックポイント特定手段により特定されたチェックポイントで退避対象に設定されたデータを取得するデータ復元手段と、上記データ復元手段により取得されたデータを現在実行可能なサーバに与えて、上記チェックポイント特定手段により特定されたチェックポイント以降のタスクの実行を再開させる実行再開手段とを設けたことを特徴とする請求項1から請求項3のうちのいずれか1項記載のプロセス管理装置。データ復元手段は、チェックポイント特定手段により特定されたチェックポイントで退避対象に設定されたデータのうち、後続のタスクで使用されるデータだけを取得することを特徴とする請求項4記載のプロセス管理装置。実行中タスク検出手段が、業務プロセスを構成している一連のタスクを実行する複数のサーバを監視して、上記サーバによる現在実行中のタスクを検出する実行中タスク検出処理ステップと、退避対象設定手段が、上記実行中タスク検出処理ステップで検出された現在実行中のタスクと次のタスクの間にチェックポイントが設定されている場合、現在実行中のタスクが終了した時点で、一連のタスクで使用されるデータの中で、更新されているデータを特定し、上記データを退避対象に設定する退避対象設定処理ステップと、データ退避手段が、上記退避対象設定処理ステップで退避対象に設定されたデータを記録媒体に退避させるデータ退避処理ステップとを備えたプロセス管理方法。従来のプロセス管理装置は以上のように構成されているので、ビジネスプロセスで扱う全てのデータをデータベースやファイルなどに退避させている。しかし、退避復旧させるデータのデータ量が多くなると、データ退避処理の負荷が大きくなり、多くの処理時間を要してしまう課題があった。また、データ復旧処理においても、チェックポイントの後続の処理で使用されないデータも復元しているため、データ復旧処理の負荷が大きくなり、多くの処理時間を要してしまう課題があった。この発明は上記のような課題を解決するためになされたもので、データ退避処理等の負荷を軽減することができるプロセス管理装置及びプロセス管理方法を得ることを目的とする。この発明に係るプロセス管理装置は、業務プロセスを構成している一連のタスクを実行する複数のサーバを監視して、そのサーバによる現在実行中のタスクを検出する実行中タスク検出手段と、実行中タスク検出手段により検出された現在実行中のタスクと次のタスクの間にチェックポイントが設定されている場合、現在実行中のタスクが終了した時点で、一連のタスクで使用されるデータの中で、更新されているデータを特定し、そのデータを退避対象に設定する退避対象設定手段とを設け、データ退避手段が、退避対象設定手段により退避対象に設定されたデータを記録媒体に退避させるようにしたものである。この発明によれば、業務プロセスを構成している一連のタスクを実行する複数のサーバを監視して、そのサーバによる現在実行中のタスクを検出する実行中タスク検出手段と、実行中タスク検出手段により検出された現在実行中のタスクと次のタスクの間にチェックポイントが設定されている場合、現在実行中のタスクが終了した時点で、一連のタスクで使用されるデータの中で、更新されているデータを特定し、そのデータを退避対象に設定する退避対象設定手段とを設け、データ退避手段が、退避対象設定手段により退避対象に設定されたデータを記録媒体に退避させるように構成したので、データの退避に要する処理の負荷を軽減することができる効果がある。実施の形態1.図1はこの発明の実施の形態1によるプロセス管理装置が適用される業務システムを示す構成図である。図1において、業務システムは、入力端末1、開発サーバ2、DBサーバ3、プロセス実行サーバ4A,4B及びプロセス管理装置5から構成されており、サーバ4A,4Bやプロセス管理装置5等は、例えば、LANやインターネットなどのネットワーク6に接続されている。入力端末1は例えばパソコンなどから構成されており、ビジネスプロセス業務プロセスの開発者が、業務システムの設計開発作業を行う際に使用する端末である。開発サーバ2はビジネスプロセスを開発する際に使用される装置であり、例えば、ビジネスプロセスを構成している一連のタスクやチェックポイントなどを定義する際に使用される。DBサーバ3は各種の情報を保管する記憶装置であり、例えば、プロセス管理装置5により退避対象に設定された変数などのデータを記憶する。プロセス実行サーバ4A,4Bは開発サーバ2により開発されたビジネスプロセスを構成している一連のタスクを実行する装置である。図1の例では、2台のプロセス実行サーバ4A,4Bを記述しているが、3台以上のプロセス実行サーバが実装されていてもよい。プロセス管理装置5はプロセス実行サーバ4A,4Bがチェックポイントを通過する際、一連のタスクで使用される変数の中で、更新されている変数例えば、今回のチェックポイントと前回のチェックポイントの間で更新されている変数を特定し、その変数を退避対象に設定してDBサーバ3に退避させる処理を実施する。また、プロセス管理装置5は障害の発生でタスクの実行を中断しているプロセス実行サーバ4を検知すると、DBサーバ3から当該タスクよりも前のチェックポイントで退避対象に設定している変数を取得して、その変数を現在実行可能なプロセス実行サーバ4に与えて、そのチェックポイント以降のタスクの実行を再開させる処理を実施する。開発サーバ2の定義情報設定部10は例えば各種の情報を入力するキーボードやマウスなどのマンマシンインタフェース、あるいは、入力端末1で入力された各種の情報をネットワーク6経由で取得するネットワークインタフェースなどから構成されており、入力した各種の情報から定義情報を設定して定義情報記憶部20に一時的に格納する処理を実施する。定義情報設定部10のビジネスプロセス情報設定部11はビジネスプロセス定義画面の表示要求が入力されると、そのビジネスプロセス定義画面をディスプレイに表示し、そのビジネスプロセス定義画面上で、ビジネスプロセスを構成する一連のタスクの定義を受け付けて、その定義内容を示すビジネスプロセス定義情報を一時的にビジネスプロセス定義情報格納部21に格納する処理を実施する。チェックポイント情報設定部12はチェックポイント定義画面の表示要求が入力されると、そのチェックポイント定義画面をディスプレイに表示し、そのチェックポイント定義画面上で、チェックポイントの定義を受け付けて、その定義内容を示すチェックポイント定義情報を一時的にチェックポイント定義情報格納部22に格納する処理を実施する。変数情報設定部13は変数定義画面の表示要求が入力されると、その変数定義画面をディスプレイに表示し、その変数定義画面上で、ビジネスプロセスで扱う変数の定義を受け付けて、その定義内容を示す変数定義情報を一時的に変数定義情報格納部23に格納する処理を実施する。構成情報設定部14は構成情報定義画面の表示要求が入力されると、その構成情報定義画面をディスプレイに表示し、その構成情報定義画面上で、ビジネスプロセスを構成している各タスクの実行対象のプロセス実行サーバ4の設定を受け付けて、その設定内容を示す構成情報を一時的に構成情報格納部24に格納する処理を実施する。変数マッピング情報設定部15は変数マッピング定義画面の表示要求が入力されると、その変数マッピング定義画面をディスプレイに表示し、その変数マッピング定義画面上で、ビジネスプロセスを構成している各タスクが使用する変数等の定義を受け付けて、その定義内容を示す変数マッピング情報を一時的に変数マッピング情報格納部25に格納する処理を実施する。なお、定義情報設定部10は、各種の定義情報を設定した後、リポジトリ登録要求が入力されると、一時的に定義情報記憶部20に格納している各種の定義情報をDBサーバ3の定義情報リポジトリ31に登録する処理を実施する。DBサーバ3の定義情報リポジトリ31は開発サーバ2により設定された各種の定義情報を保持する記録媒体である。DBサーバ3の実行時情報記憶部32はプロセス実行サーバ4A,4Bが実行しているビジネスプロセスを特定するビジネスプロセス実行時情報や、各チェックポイントで退避される変数などを示す変数実行時情報などを記憶する記録媒体である。プロセス実行サーバ4A,4Bのプロセス実行エンジン41は例えばCPUなどから構成されており、DBサーバ3の定義情報リポジトリ31に保持されている各種の定義情報を参照して、ビジネスプロセスを構成している一連のタスクを実行する。プロセス実行サーバ4A,4Bの変数管理部42はプロセス実行エンジン41がタスクを実行する際に使用する変数を管理している。プロセス管理装置5の実行中タスク検出部51は例えばCPUを実装している半導体集積回路、あるいは、ワンチップマイコンなどから構成されており、DBサーバ3の実行時情報記憶部32に格納されているビジネスプロセス実行時情報を参照して、プロセス実行サーバ4による現在実行中のタスクを検出する処理を実施する。なお、実行中タスク検出部51は実行中タスク検出手段を構成している。退避対象設定部52は例えばCPUを実装している半導体集積回路、あるいは、ワンチップマイコンなどから構成されており、DBサーバ3の定義情報リポジトリ31に保持されているチェックポイント定義情報を参照して、チェックポイントが設定されている位置を認識し、実行中タスク検出部51により検出された現在実行中のタスクと次のタスクの間にチェックポイントが設定されている場合、現在実行中のタスクが終了した時点で、一連のタスクで使用される変数プロセス実行サーバ4A,4Bの変数管理部42により管理されている変数の中で、更新されている変数例えば、今回のチェックポイントと前回のチェックポイントの間で更新されている変数を特定し、その変数を退避対象に設定する処理を実施する。なお、退避対象設定部52は退避対象設定手段を構成している。変数退避部53は例えばCPUを実装している半導体集積回路、あるいは、ワンチップマイコンなどから構成されており、退避対象設定部52により退避対象に設定された変数プロセス実行サーバ4A,4Bの変数管理部42により管理されている変数の中で、退避対象に設定された変数の変数値をDBサーバ3の実行時情報記憶部32に退避させる処理を実施する。なお、変数退避部53はデータ退避手段を構成している。障害検知部54は例えばCPUを実装している半導体集積回路、あるいは、ワンチップマイコンなどから構成されており、障害の発生でタスクの実行を中断しているプロセス実行サーバ4を検知する処理を実施する。チェックポイント特定部55は例えばCPUを実装している半導体集積回路、あるいは、ワンチップマイコンなどから構成されており、障害検知部54によりタスクの実行を中断しているプロセス実行サーバ4が検知されると、DBサーバ3の実行時情報記憶部32により格納されている変数実行時情報を参照して、そのタスクよりも前のチェックポイント再開可能なチェックポイントを特定する処理を実施する。なお、障害検知部54及びチェックポイント特定部55からチェックポイント特定手段が構成されている。チェックポイント選択受付部56はキーボードやマウスなどのマンマシンインタフェースなどから構成されており、チェックポイント特定部55により特定された再開可能な1以上のチェックポイントの一覧をディスプレイに表示して、任意のチェックポイントの選択を利用者に促し、利用者によるチェックポイントの選択を受け付ける処理を実施する。データ復元部57は例えばCPUを実装している半導体集積回路、あるいは、ワンチップマイコンなどから構成されており、退避対象設定部52により退避対象に設定されることで、DBサーバ3の実行時情報記憶部32に退避されている変数の中から、チェックポイント選択受付部56により選択が受け付けられたチェックポイントで退避対象に設定された変数の変数値を取得する処理を実施する。なお、チェックポイント選択受付部56及びデータ復元部57からデータ復元手段が構成されている。実行再開部58は例えばCPUを実装している半導体集積回路、あるいは、ワンチップマイコンなどから構成されており、データ復元部57により取得された変数の変数値を現在実行可能なプロセス実行サーバ4に与えて、チェックポイント選択受付部56により選択が受け付けられたチェックポイント以降のタスクの実行を再開させる処理を実施する。なお、実行再開部58は実行再開手段を構成している。図1の例では、プロセス管理装置5の構成要素である実行中タスク検出部51、退避対象設定部52、変数退避部53、障害検知部54、チェックポイント特定部55、チェックポイント選択受付部56、データ復元部57及び実行再開部58のそれぞれが専用のハードウェアで構成されているものを想定しているが、プロセス管理装置がコンピュータで構成される場合、実行中タスク検出部51、退避対象設定部52、変数退避部53、障害検知部54、チェックポイント特定部55、チェックポイント選択受付部56、データ復元部57及び実行再開部58の処理内容を記述しているプログラムをコンピュータのメモリに格納し、当該コンピュータのCPUが当該メモリに格納されているプログラムを実行するようにしてもよい。図2はこの発明の実施の形態1によるプロセス管理装置における変数の退避処理を示すフローチャートである。図3はこの発明の実施の形態1によるプロセス管理装置におけるビジネスプロセスの再開処理を示すフローチャートである。次に動作について説明する。プロセス管理装置5の運用が開始される前に、ビジネスプロセスを構成する一連のタスクや、各タスクが使用する変数などが定義されている必要がある。最初に、開発サーバ2によって、ビジネスプロセスを構成する一連のタスクや、各タスクが使用する変数などが定義される際の処理内容を説明する。まず、ビジネスプロセスの開発者は、入力端末1を構成しているマンマシンインタフェース、あるいは、開発サーバ2の定義情報設定部10を構成しているマンマシンインタフェースを操作して、ビジネスプロセス定義画面の表示要求を入力する。開発サーバ2における定義情報設定部10のビジネスプロセス情報設定部11は、ビジネスプロセス定義画面の表示要求が入力されると、図4に示すように、そのビジネスプロセス定義画面をディスプレイに表示する。ビジネスプロセス定義画面では、パレットの中のノードリストから所望のノードタスク、分岐、開始、終了を選択して、そのノードをキャンバスに配置するとともに、パレットの中の接続からエッジを選択して、各ノードを互いに接続することで、ビジネスプロセスを作成することができる。また、パレットの中のその他からチェックポイントを選択して、そのチェックポイントの位置をパレット上で指定することで、チェックポイントを設定することができる。また、パレットの中のその他からコンテナを選択して、そのコンテナに対応するタスクを指定することで、コンテナタスクを実行するプロセス実行サーバ4を設定することができる。ビジネスプロセス情報設定部11は、ビジネスプロセスの開発者が入力端末1のマンマシンインタフェース等を操作して、キャンバスに配置している任意のタスクに係るノードを指定すると、そのタスクの動作内容を定義するタスク定義画面を表示する。図4の例では、タスクEを定義するタスク定義画面が表示されている。タスク定義画面では、タスク名、タスクタイプ、当該タスクで使用する変数を定義することができる。当該タスクで使用する変数の定義は、後述する変数定義画面で定義された変数の中から、使用する変数を選択することで行う。変数のアクセス種別として、CRUDCreate/Read/Update/Deleteを指定することもできる。タスクタイプとして、例えば、SOAPサービス呼び出しを選択する場合には、WSDLファイルを設定することができる。ビジネスプロセス情報設定部11は、上記のように、ビジネスプロセスを構成する一連のタスクの定義を受け付けて、その定義内容を示すビジネスプロセス定義情報を一時的にビジネスプロセス定義情報格納部21に格納する。チェックポイント情報設定部12は、ビジネスプロセスの開発者が入力端末1のマンマシンインタフェース等を操作して、キャンバスに配置している任意のチェックポイントを指定すると、チェックポイント定義画面の表示要求が入力されたものと判断して、図4に示すようなチェックポイント定義画面をディスプレイに表示する。チェックポイント定義画面は、定義済みのチェックポイントのリストを表示するチェックポイントテーブルと、ビジネスプロセスの開発者により指定されたチェックポイントを定義するチェックポイント編集領域とから構成されている。チェックポイント編集領域では、当該チェックポイントを識別するチェックポイント識別名、当該チェックポイントが設定されるビジネスプロセスの名称、当該チェックポイントの直前のタスクを示すタスク名、当該チェックポイントの動作ポリシーを定義することができる。動作ポリシーは、チェックポイントの通過時に退避する変数を選択するためのポリシーであり、例えば、必要最小限、完全などの方針を選択することができる。動作ポリシーとして必要最小限が選択された場合、当該チェックポイントからビジネスプロセスを再開する際に必要な最小限の変数が退避対象に設定されるようになる。例えば、当該チェックポイントを通過する前のタスクで更新されている変数であっても、当該チェックポイントの後続のタスクで使用されない変数については退避対象から除外することで、退避時のデータ量を抑制するように動作する。チェックポイント情報設定部12は、ビジネスプロセスの開発者が入力端末1のマンマシンインタフェース等を操作して、チェックポイント編集領域の更新ボタンを押下すると、チェックポイント編集領域での定義内容を示すチェックポイント定義情報を一時的にチェックポイント定義情報格納部22に格納する。変数情報設定部13は、ビジネスプロセスの開発者が入力端末1のマンマシンインタフェース等を操作して、ビジネスプロセス定義画面のメニューバーにおける変数定義を選択すると、変数定義画面の表示要求が入力されたものと判断して、図5に示すような変数定義画面をディスプレイに表示する。変数定義画面は、ビジネスプロセスで扱う変数の定義を受け付ける画面であり、定義済みの変数の一覧を表示する変数テーブルと、その変数テーブルに変数を追加する追加ボタンと、その変数テーブルに含まれている変数を削除する削除ボタンから構成されている。この変数テーブルには、ビジネスプロセスで扱う変数の変数名、変数タイプ及びデフォルト値が記録されており、この記録内容を変更することができる。変数情報設定部13は、変数定義画面上で、ビジネスプロセスで扱う変数の定義を受け付けて、その定義内容を示す変数定義情報を一時的に変数定義情報格納部23に格納する。構成情報設定部14は、ビジネスプロセスの開発者が入力端末1のマンマシンインタフェース等を操作して、ビジネスプロセス定義画面のキャンバスに配置している任意のコンテナを指定すると、構成情報定義画面の表示要求が入力されたものと判断して、図6に示すような構成情報定義画面をディスプレイに表示する。構成情報定義画面は、ビジネスプロセスを構成している各タスクの実行対象のプロセス実行サーバ4を設定する画面ビジネスプロセスを構成している各タスクを、どのプロセス実行サーバ4が実行するかを設定する画面であり、設定済みの構成情報の一覧を表示する構成情報テーブルと、ビジネスプロセスの開発者により選択されたコンテナプロセス実行サーバ4を識別するコンテナ識別名及び当該コンテンツのURLを編集する構成情報編集領域とから構成されている。構成情報設定部14は、ビジネスプロセスの開発者が入力端末1のマンマシンインタフェース等を操作して、構成情報編集領域の更新ボタンを押下すると、構成情報編集領域で編集された構成情報コンテナ識別名、URLを構成情報テーブルに反映するとともに、その構成情報を一時的に構成情報格納部24に格納する。なお、ここでは、構成情報がコンテナ識別名とURLからなるものを示しているが、これは一例に過ぎず、他の情報から構成されていてもよい。変数マッピング情報設定部15は、ビジネスプロセスの開発者が入力端末1のマンマシンインタフェース等を操作して、変数マッピング定義画面の表示要求を入力すると、図7に示すような変数マッピング定義画面をディスプレイに表示する。変数マッピング定義画面は、ビジネスプロセスを構成している各タスクが使用する変数等の定義を受け付ける画面であり、定義済みの変数マッピング情報の一覧を表示する変数マッピングテーブルと、変数マッピングテーブルにおける任意の変数マッピング情報を編集する変数マッピング編集領域とから構成されている。変数マッピング編集領域内の使用変数リストには、当該タスクで使用される変数のリストが表示される。ビジネスプロセスの開発者が入力端末1のマンマシンインタフェース等を操作して、使用変数リストの中から変数を選択して、削除ボタンを押下することで、その変数を使用変数リストから削除することができる。逆に、ビジネスプロセスの開発者が入力端末1のマンマシンインタフェース等を操作して、定義済み変数リストの中から変数を選択して、追加ボタンを押下することで、その変数を使用変数リストに追加することができる。このとき、使用変数にCRUDを指定することも可能である。変数マッピング情報設定部15は、ビジネスプロセスの開発者が入力端末1のマンマシンインタフェース等を操作して、変数マッピング編集領域の更新ボタンを押下すると、その変数マッピング編集領域で編集された変数マッピング情報タスク名、使用変数、変数のアクセス種別であるCRUDなどを変数マッピングテーブルに反映するとともに、その変数マッピング情報を一時的に変数マッピング情報格納部25に格納する。定義情報設定部10は、各種の定義情報が設定された後、ビジネスプロセスの開発者が入力端末1のマンマシンインタフェース等を操作して、ビジネスプロセス定義画面のメニューバーにおけるリポジトリ登録を選択すると、リポジトリ登録要求が入力されたものと判断して、定義情報記憶部20のビジネスプロセス定義情報格納部21、チェックポイント定義情報格納部22、変数定義情報格納部23、構成情報格納部24及び変数マッピング情報格納部25に一時的に格納されている各種の定義情報等をDBサーバ3の定義情報リポジトリ31に登録する。各種の定義情報等がDBサーバ3の定義情報リポジトリ31に登録されることで、プロセス管理装置5の運用を開始することが可能になる。以下、プロセス管理装置5の処理内容を具体的に説明する。最初に、プロセス実行サーバ4A,4Bの変数管理部42により管理されている変数の変数値をDBサーバ3の実行時情報記憶部32に退避させる際の処理内容を説明する。ここでは説明の便宜上、ビジネスプロセスを構成している一連のタスクが図8のように設定され、チェックポイントが図9のように設定されているものとする。また、変数定義情報が図10のように設定され、変数マッピング情報が図11のように設定されているものとする。図8の例では、プロセス実行サーバ4Aがコンテナ1であり、プロセス実行サーバ4Bがコンテナ2である。また、プロセス実行サーバ4AがタスクAを実行してから、プロセス実行サーバ4BがタスクB,Cを実行し、最後に、プロセス実行サーバ4AがタスクDを実行するビジネスプロセスになっている。図8のビジネスプロセスでは、図9に示すように、タスクAの直後とタスクCの直後にチェックポイントが設定されており、そのチェックポイントの動作ポリシーは必要最小限に設定されている。プロセス実行サーバ4A,4Bのプロセス実行エンジン41は、定義情報リポジトリ31に保持されているビジネスプロセス定義情報を参照して、実行対象のビジネスプロセスが図8に示すビジネスプロセスであることを認識する。また、プロセス実行サーバ4A,4Bのプロセス実行エンジン41は、定義情報リポジトリ31に保持されている構成情報を参照して、自己が実行するタスクが、どのタスクであるのかを認識する。図8の例では、プロセス実行サーバ4Aのプロセス実行エンジン41は、自己が実行するタスクが、タスクA,Dであると認識し、プロセス実行サーバ4Bのプロセス実行エンジン41は、自己が実行するタスクが、タスクB,Cであると認識する。プロセス実行サーバ4A,4Bの変数管理部42は、定義情報リポジトリ31に保持されている図10の変数定義情報を参照して、図8のビジネスプロセスで扱う変数a,b,c,dを認識する。また、プロセス実行サーバ4A,4Bの変数管理部42は、定義情報リポジトリ31に保持されている図11の変数マッピング情報を参照して、タスクAで使用される変数が変数a、タスクBで使用される変数が変数a,b,d、タスクCで使用される変数が変数b,c,d、タスクDで使用される変数が変数a,cであることを認識する。プロセス実行サーバ4A,4Bのプロセス実行エンジン41は、上記の認識結果を踏まえて、ビジネスプロセスを構成している一連のタスクの実行を開始する。プロセス実行サーバ4A,4Bのプロセス実行エンジン41は、ビジネスプロセスの実行を開始すると、実行しているビジネスプロセスを特定するビジネスプロセス実行時情報をDBサーバ3の実行時情報記憶部32に格納する。図12はビジネスプロセス実行時情報の一例を示す説明図であり、図12の例では、ビジネスプロセス実行時情報として、ビジネスプロセス名、ビジネスプロセスインスタンス識別子、最後に通過したチェックポイントである最終チェックポイント、ビジネスプロセスが実行されているコンテナを示す情報がDBサーバ3の実行時情報記憶部32に格納される。なお、プロセス実行サーバ4A,4Bの変数管理部42は、プロセス実行エンジン41がビジネスプロセスを構成している一連のタスクを実行する際に使用する変数を管理し、その変数の変数値を保持している。プロセス管理装置5の実行中タスク検出部51は、例えば、DBサーバ3の実行時情報記憶部32に格納されているビジネスプロセス実行時情報を参照して、プロセス実行サーバ4による現在実行中のタスクを検出する図2のステップST1。ここでは、ビジネスプロセス実行時情報を参照して、現在実行中のタスクを検出しているが、ビジネスプロセス定義情報を参照して、タスクの実行順序を認識するとともに、構成情報を参照して、各タスクを実行するプロセス実行サーバ4を認識し、また、プロセス実行サーバ4A,4Bの動作を監視し、その監視結果と上記の認識結果を照らし合わせて、現在実行中のタスクを検出するようにしてもよい。図8の例では、プロセス実行サーバ4AがタスクAを実行してから、プロセス実行サーバ4BがタスクB,Cを実行し、最後に、プロセス実行サーバ4AがタスクDを実行するように、ビジネスプロセス定義情報及び構成情報が定義されているため、ビジネスプロセスを構成している一連のタスクの実行を開始した当初は、プロセス実行サーバ4AがタスクAを実行していることを検出する。タスクAの実行が終了した後は、プロセス実行サーバ4BがタスクB,Cを実行していることを検出し、タスクCの実行が終了した後は、プロセス実行サーバ4AがタスクDを実行していることを検出する。プロセス管理装置5の退避対象設定部52は、DBサーバ3の定義情報リポジトリ31に保持されている図9のチェックポイント定義情報を参照して、チェックポイントが設定されている位置を確認するステップST2。図9の例では、タスクAの直後とタスクCの直後にチェックポイントが設定されている。退避対象設定部52は、タスクAの直後とタスクCの直後にチェックポイントが設定されていることを確認すると、そのチェックポイントの直前のタスクの実行が終了するまで待機する。即ち、タスクAの直後に設定されているチェックポイントを通過する前は、タスクAの実行が終了するまで待機し、そのチェックポイントを通過した後は、タスクCの実行が終了するまで待機する。また、退避対象設定部52は、DBサーバ3の定義情報リポジトリ31に保持されている図11の変数マッピング情報を参照して、各タスクで使用される変数を確認するとともに、定義情報リポジトリ31に保持されている図9のチェックポイント定義情報を参照して、チェックポイントの動作ポリシーを確認する。図9の例では、タスクAの直後とタスクCの直後に設定されているチェックポイントの動作ポリシーは、いずれも必要最小限である。退避対象設定部52は、チェックポイントの直前のタスクの実行が終了すると、そのチェックポイントの動作ポリシーが必要最小限であればステップST3;YES、プロセス実行サーバ4A,4Bの変数管理部42により管理されている変数a,b,c,dの中で、当該チェックポイントの後続のタスクで使用される変数だけを退避対象に設定するため、後続のタスクで使用される変数を特定するステップST4。図11の例では、当該チェックポイントがタスクAの直後に設定されているチェックポイントである場合、変数a,b,c,dの全てが後続のタスクで使用されるが、当該チェックポイントがタスクCの直後に設定されているチェックポイントである場合、変数a,cだけが後続のタスクで使用される。なお、チェックポイントの動作ポリシーが完全である場合、当該チェックポイントの後続のタスクで使用される変数に限らず、プロセス実行サーバ4A,4Bの変数管理部42により管理されている全ての変数a,b,c,dを退避対象の候補とする。退避対象設定部52は、チェックポイントの動作ポリシーが必要最小限であれば、プロセス実行サーバ4A,4Bの変数管理部42から後続のタスクで使用される変数の変数値を読み出し、後続のタスクで使用される変数の中で、今回のチェックポイントと前回のチェックポイントの間で更新されている変数を特定するステップST5。例えば、当該チェックポイントがタスクCの直後に設定されているチェックポイントである場合、後続のタスクDで使用される変数a,cの中で、タスクB又はタスクCで更新されている変数を特定する。当該チェックポイントがタスクAの直後に設定されているチェックポイントである場合、そのチェックポイントの前にはチェックポイントが設定されていないため、後続のタスクB,C,Dで使用される変数a,b,c,dの中で、タスクAで更新されている変数を特定する。なお、チェックポイントの動作ポリシーが完全である場合には、プロセス実行サーバ4A,4Bの変数管理部42に管理されている全ての変数の変数値を読み出し、全ての変数の中で、今回のチェックポイントと前回のチェックポイントの間で更新されている変数を特定する。更新の有無の判定方法として、例えば、図4のタスク定義画面で、変数のアクセス種別としてCRUDが指定されている場合、CUDのいずれかが指定されている変数であるか否かを確認すればよく、CUDのいずれかが指定されている変数は更新されている変数であると判別することができる。また、図11の変数マッピング情報を参照することでも、更新されている変数であるか否かを特定することができる。退避対象設定部52は、今回のチェックポイントと前回のチェックポイントの間あるいは、ビジネスプロセスの先頭から今回のチェックポイントまでの間で更新されている変数を特定すると、その変数を退避対象に設定するステップST6。変数退避部53は、退避対象設定部52が退避対象の変数を設定すると、その変数の変数値をDBサーバ3の実行時情報記憶部32に退避させるステップST7。ここで、図13は変数実行時情報各チェックポイントで退避される変数などを示す情報の一例を示す説明図である。図13の例では、タスクAの直後に設定されているチェックポイントにおいて、変数aの変数値が退避され、タスクCの直後に設定されているチェックポイントにおいて、変数a,cの変数値が退避されている。次に、中断中のビジネスプロセスを再開させる際の処理内容を説明する。障害検知部54は、プロセス実行サーバ4A,4Bのプロセス実行エンジン41が、ビジネスプロセスを構成している一連のタスクの実行を開始すると、DBサーバ3の実行時情報記憶部32に格納されているビジネスプロセス実行時情報を参照して、現在実行中のプロセス実行サーバ4を特定し、そのプロセス実行サーバ4の動作状況を監視する。そして、障害検知部54は、障害の発生等が原因で、そのプロセス実行サーバ4の動作が中断していれば、そのプロセス実行サーバ4を、タスクの実行を中断しているプロセス実行サーバ4として検知する図3のステップST11。チェックポイント特定部55は、障害検知部54によりタスクの実行を中断しているプロセス実行サーバ4が検知されると、DBサーバ3の実行時情報記憶部32に格納されている変数実行時情報を参照して、そのタスクよりも前のチェックポイント再開可能なチェックポイントを特定するステップST12。図8の例では、プロセス実行サーバ4BによるタスクB又はタスクCの実行が中断している場合、再開可能なチェックポイントとして、タスクAの直後に設定されているチェックポイントが特定される。また、プロセス実行サーバ4AによるタスクDの実行が中断している場合、再開可能なチェックポイントとして、タスクAの直後に設定されているチェックポイントと、タスクCの直後に設定されているチェックポイントとが特定される。チェックポイント選択受付部56は、チェックポイント特定部55により再開可能な1以上のチェックポイントが特定されればステップST13;YES、再開可能な1以上のチェックポイントの一覧を示すビジネスプロセス復旧管理画面をディスプレイに表示するステップST14。図14は再開可能な1以上のチェックポイントの一覧を示すビジネスプロセス復旧管理画面の画面例を示す説明図である。チェックポイント選択受付部56は、利用者がビジネスプロセス復旧管理画面上で、所望のチェックポイントを選択するとステップST15;YES、そのチェックポイントの選択を受け付けて、そのチェックポイントをデータ復元部57に通知するステップST16。例えば、タスクB又はタスクCの実行中にプロセス実行サーバ4Bがダウンした場合には、タスクAの直後に設定されているチェックポイントだけが再開可能なチェックポイントとして表示されるが、タスクDの実行中にプロセス実行サーバ4Aがダウンした場合には、タスクAの直後に設定されているチェックポイントと、タスクCの直後に設定されているチェックポイントとが再開可能なチェックポイントとして表示され、いずれかのチェックポイントを選択することができる。データ復元部57は、チェックポイント選択受付部56から利用者により選択されたチェックポイントの通知を受けると、DBサーバ3の実行時情報記憶部32に退避されている変数の中から、利用者により選択されたチェックポイントで退避対象に設定された変数を選択するステップST17。また、データ復元部57は、DBサーバ3の定義情報リポジトリ31に保持されている図11の変数マッピング情報を参照して、そのチェックポイントの後続のタスクで使用される変数を特定し、ステップST17で選択した変数の中から、そのチェックポイントの後続のタスクで使用される変数を最終的に選択するステップST18。ここでは、変数マッピング情報を参照して、後続のタスクで使用される変数を特定しているが、例えば、図4のタスク定義画面で、変数のアクセス種別としてCRUDが指定されている場合、Rを含む変数であるか否かを確認し、Rを含む変数を後続のタスクで使用される変数であると判定するようにしてもよい。データ復元部57は、DBサーバ3の実行時情報記憶部32から最終的に選択した変数の変数値を取得するステップST19。ここで、図15は各チェックポイントでの退避対象の変数及び復旧対象の変数の一例を示す説明図である。図15では、例えば、識別名cp002のチェックポイントで変数cを退避しており、識別名cp002のチェックポイントからビジネスプロセスを再開する場合、変数aと変数cを復旧すればよいことを表している。実行再開部58は、利用者がビジネスプロセス復旧管理画面上で、再開ボタンを押下すると、データ復元部57により最終的に選択された変数の変数値と、DBサーバ3の実行時情報記憶部32に保持されている図12の実行時情報を現在実行可能なプロセス実行サーバ4ダウンしていないプロセス実行サーバ4に与えて、チェックポイント選択受付部56により選択が受け付けられたチェックポイント以降のタスクの実行を再開させるステップST20。以上で明らかなように、この実施の形態1によれば、ビジネスプロセスを構成している一連のタスクを実行するプロセス実行サーバ4を監視して、そのプロセス実行サーバ4による現在実行中のタスクを検出する実行中タスク検出部51と、実行中タスク検出部51により検出された現在実行中のタスクと次のタスクの間にチェックポイントが設定されている場合、現在実行中のタスクが終了した時点で、一連のタスクで使用される変数の中で、更新されている変数を特定し、その変数を退避対象に設定する退避対象設定部52とを設け、変数退避部53が、退避対象設定部52により退避対象に設定された変数をDBサーバ3の実行時情報記憶部32に退避させるように構成したので、変数の退避に要する処理の負荷を軽減することができる効果を奏する。また、この実施の形態1によれば、変数退避部53が、一連のタスクで使用される変数の中で、今回のチェックポイントと前回のチェックポイントの間で更新されている変数を特定し、その変数を退避対象に設定するように構成したので、更に、変数の退避に要する処理の負荷を軽減することができる効果を奏する。この実施の形態1によれば、変数退避部53が、更新されているデータであっても、後続のタスクで使用されないデータについては退避対象から除外するように構成したので、ビジネスプロセスを再開する際に必要な最小限の変数だけを退避させることができる効果を奏する。この実施の形態1によれば、障害の発生でタスクの実行を中断しているプロセス実行サーバ4を検知する障害検知部54と、そのタスクよりも前のチェックポイントを特定するチェックポイント特定部55と、チェックポイント特定部55により特定された1以上のチェックポイントの中から、任意のチェックポイントの選択を受け付けるチェックポイント選択受付部56と、退避対象設定部52により退避対象に設定されることで、DBサーバ3の実行時情報記憶部32に退避されている変数の中から、チェックポイント選択受付部56により選択が受け付けられたチェックポイントで退避対象に設定された変数を取得するデータ復元部57とを設け、実行再開部58が、データ復元部57により取得された変数を現在実行可能なプロセス実行サーバ4に与えて、チェックポイント選択受付部56により選択が受け付けられたチェックポイント以降のタスクの実行を再開させるように構成したので、中断中のビジネスプロセスを再開することができる効果を奏する。また、この実施の形態1によれば、データ復元部57が、チェックポイント選択受付部56により選択が受け付けられたチェックポイントで退避対象に設定された変数のうち、後続のタスクで使用される変数だけを取得するように構成したので、変数の復旧に要する処理の負荷を軽減することができる効果を奏する。なお、本願発明はその発明の範囲内において、実施の形態の任意の構成要素の変形、もしくは実施の形態の任意の構成要素の省略が可能である。"