(57)【要約】【課題】ワークフロー実行後に作業者のスケジュール変更に伴う対応及びフロー完遂不可の判断を自動的にすることができるワークフロー管理システム及びその制御方法を提供する。【解決手段】ワークフロー管理装置１００は、残時間がプロセスに係るタスク所要時間未満である場合、作業者情報テーブル１１４に基づき、プロセスに係る少なくとも１の代行作業者情報及び期限情報をスケジュール管理装置２００に送信し、スケジュール管理装置２００は、少なくとも１の代行作業者の残時間を計算して該残時間をワークフロー管理装置１００に送信し、ワークフロー管理装置１００は、代行作業者の残時間がタスク所要時間以上である場合、進捗管理テーブル１１２における作業者情報を、代行作業者情報に書き換える。【選択図】図１
2014098970.tif 000002
【特許請求の範囲】
【請求項１】
ワークフロー管理装置とスケジュール管理装置とを備えるワークフロー管理システムであって、
前記ワークフロー管理装置は、
ワークフローの各プロセスの作業者情報、期限情報、及びステータスを格納する進捗管理テーブルと、前記プロセス毎に少なくとも１の代行作業者情報を格納する作業者情報テーブルとを備え、
前記進捗管理テーブルに基づき、前記ステータスが未完であるプロセスに係る作業者情報及び期限情報を前記スケジュール管理装置に送信し、
前記スケジュール管理装置は、
作業者情報毎のスケジュールを格納するスケジュール管理テーブルを備え、
前記ワークフロー管理装置から受信した作業者情報及び期限情報並びに前記スケジュール管理テーブルの該作業者情報に係る前記スケジュールに基づき、作業者の残時間を計算して該残時間を前記ワークフロー管理装置に送信し、
前記ワークフロー管理装置は、前記残時間が前記プロセスに係るタスク所要時間未満である場合、前記作業者情報テーブルに基づき、前記プロセスに係る少なくとも１の代行作業者情報及び期限情報を前記スケジュール管理装置に送信し、
前記スケジュール管理装置は、前記ワークフロー管理装置から受信した少なくとも１の代行作業者情報及び期限情報並びに前記スケジュール管理テーブルの該代行作業者情報に係る前記スケジュールに基づき、少なくとも１の代行作業者の残時間を計算して該残時間を前記ワークフロー管理装置に送信し、
前記ワークフロー管理装置は、前記少なくとも１の代行作業者の残時間が前記プロセスに係るタスク所要時間以上である場合、前記進捗管理テーブルにおける前記プロセスに係る作業者情報を、該代行作業者に係る代行作業者情報に書き換えることを特徴とするワークフロー管理システム。
【請求項２】
前記ワークフロー管理装置は、複数の前記代行作業者の残時間が前記プロセスに係るタスク所要時間以上である場合、前記進捗管理テーブルにおける前記プロセスに係る作業者情報を、残時間が最大の代行作業者に係る代行作業者情報に書き換えることを特徴とする、請求項１に記載のワークフロー管理システム。
【請求項３】
前記ワークフロー管理装置は、全ての代行作業者の残時間が前記プロセスに係るタスク所要時間未満である場合、前記ワークフローが完遂不可である旨を通知することを特徴とする、請求項１又は２に記載のワークフロー管理システム。
【請求項４】
ワークフロー管理装置とスケジュール管理装置とを備えるワークフロー管理システムの制御方法であって、前記ワークフロー管理装置はワークフローの各プロセスの作業者情報、期限情報、及びステータスを格納する進捗管理テーブルと、前記プロセス毎に少なくとも１の代行作業者情報を格納する作業者情報テーブルとを備え、前記スケジュール管理装置は、作業者情報毎のスケジュールを格納するスケジュール管理テーブルを備え、
前記ワークフロー管理装置が前記進捗管理テーブルに基づき、前記ステータスが未完であるプロセスに係る作業者情報及び期限情報を前記スケジュール管理装置に送信するステップと、
前記スケジュール管理装置が前記ワークフロー管理装置から受信した作業者情報及び期限情報並びに前記スケジュール管理テーブルの該作業者情報に係る前記スケジュールに基づき、作業者の残時間を計算して該残時間を前記ワークフロー管理装置に送信するステップと、
前記ワークフロー管理装置が、前記残時間が前記プロセスに係るタスク所要時間未満である場合、前記作業者情報テーブルに基づき、前記プロセスに係る少なくとも１の代行作業者情報及び期限情報を前記スケジュール管理装置に送信するステップと、
前記スケジュール管理装置が、前記ワークフロー管理装置から受信した少なくとも１の代行作業者情報及び期限情報並びに前記スケジュール管理テーブルの該代行作業者情報に係る前記スケジュールに基づき、少なくとも１の代行作業者の残時間を計算して該残時間を前記ワークフロー管理装置に送信するステップと、
前記ワークフロー管理装置が、前記少なくとも１の代行作業者の残時間が前記プロセスに係るタスク所要時間以上である場合、前記進捗管理テーブルにおける前記プロセスに係る作業者情報を、該代行作業者に係る代行作業者情報に書き換えるステップと、
を含むことを特徴とするワークフロー管理システムの制御方法。
【請求項５】
前記ワークフロー管理装置が、複数の前記代行作業者の残時間が前記プロセスに係るタスク所要時間以上である場合、前記進捗管理テーブルにおける前記プロセスに係る作業者情報を、残時間が最大の代行作業者に係る代行作業者情報に書き換えることを特徴とする、請求項４に記載のワークフロー管理システムの制御方法。
【請求項６】
前記ワークフロー管理装置が、全ての代行作業者の残時間が前記プロセスに係るタスク所要時間未満である場合、前記ワークフローが完遂不可である旨を通知することを特徴とする、請求項４又は５に記載のワークフロー管理システムの制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ワークフロー管理装置とスケジュール管理装置とを備えるワークフロー管理システム及びその制御方法に関する。
【背景技術】
【０００２】
従来、ワークフローに係るシステムとして、ワークフローの期日までの完遂確度を向上させるために、ワークフロー作成時に外部スケジュールシステムにユーザのスケジュールを問い合わせ、スケジュールシステムと連携させたワークフロー生成技術がある（例えば特許文献１）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開平１０−２１３００号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、上記の従来技術では、ワークフロー実行後にワークフローの進捗状況や作業者のスケジュール変更により作業者がタスクを実行できなくなった場合を考慮していなかった。したがって作業者のスケジュール変更に伴う対応及びフロー完遂不可の判断は申請者が自ら行わねばならず、多大な手間がかかっていた。
【０００５】
従って、上記のような問題点に鑑みてなされた本発明の目的は、ワークフロー実行後に作業者のスケジュール変更に伴う対応及びフロー完遂不可の判断を自動的にすることができるワークフロー管理システム及びその制御方法を提供することにある。
【課題を解決するための手段】
【０００６】
上記課題を解決するために本発明に係るワークフロー管理システムは、
ワークフロー管理装置とスケジュール管理装置とを備えるワークフロー管理システムであって、
前記ワークフロー管理装置は、
ワークフローの各プロセスの作業者情報、期限情報、及びステータスを格納する進捗管理テーブルと、前記プロセス毎に少なくとも１の代行作業者情報を格納する作業者情報テーブルとを備え、
前記進捗管理テーブルに基づき、前記ステータスが未完であるプロセスに係る作業者情報及び期限情報を前記スケジュール管理装置に送信し、
前記スケジュール管理装置は、
作業者情報毎のスケジュールを格納するスケジュール管理テーブルを備え、
前記ワークフロー管理装置から受信した作業者情報及び期限情報並びに前記スケジュール管理テーブルの該作業者情報に係る前記スケジュールに基づき、作業者の残時間を計算して該残時間を前記ワークフロー管理装置に送信し、
前記ワークフロー管理装置は、前記残時間が前記プロセスに係るタスク所要時間未満である場合、前記作業者情報テーブルに基づき、前記プロセスに係る少なくとも１の代行作業者情報及び期限情報を前記スケジュール管理装置に送信し、
前記スケジュール管理装置は、前記ワークフロー管理装置から受信した少なくとも１の代行作業者情報及び期限情報並びに前記スケジュール管理テーブルの該代行作業者情報に係る前記スケジュールに基づき、少なくとも１の代行作業者の残時間を計算して該残時間を前記ワークフロー管理装置に送信し、
前記ワークフロー管理装置は、前記少なくとも１の代行作業者の残時間が前記プロセスに係るタスク所要時間以上である場合、前記進捗管理テーブルにおける前記プロセスに係る作業者情報を、該代行作業者に係る代行作業者情報に書き換えることを特徴とする。
【０００７】
また、本発明に係るワークフロー管理システムの制御方法は、
ワークフロー管理装置とスケジュール管理装置とを備えるワークフロー管理システムの制御方法であって、前記ワークフロー管理装置はワークフローの各プロセスの作業者情報、期限情報、及びステータスを格納する進捗管理テーブルと、前記プロセス毎に少なくとも１の代行作業者情報を格納する作業者情報テーブルとを備え、前記スケジュール管理装置は、作業者情報毎のスケジュールを格納するスケジュール管理テーブルを備え、
前記ワークフロー管理装置が前記進捗管理テーブルに基づき、前記ステータスが未完であるプロセスに係る作業者情報及び期限情報を前記スケジュール管理装置に送信するステップと、
前記スケジュール管理装置が前記ワークフロー管理装置から受信した作業者情報及び期限情報並びに前記スケジュール管理テーブルの該作業者情報に係る前記スケジュールに基づき、作業者の残時間を計算して該残時間を前記ワークフロー管理装置に送信するステップと、
前記ワークフロー管理装置が、前記残時間が前記プロセスに係るタスク所要時間未満である場合、前記作業者情報テーブルに基づき、前記プロセスに係る少なくとも１の代行作業者情報及び期限情報を前記スケジュール管理装置に送信するステップと、
前記スケジュール管理装置が、前記ワークフロー管理装置から受信した少なくとも１の代行作業者情報及び期限情報並びに前記スケジュール管理テーブルの該代行作業者情報に係る前記スケジュールに基づき、少なくとも１の代行作業者の残時間を計算して該残時間を前記ワークフロー管理装置に送信するステップと、
前記ワークフロー管理装置が、前記少なくとも１の代行作業者の残時間が前記プロセスに係るタスク所要時間以上である場合、前記進捗管理テーブルにおける前記プロセスに係る作業者情報を、該代行作業者に係る代行作業者情報に書き換えるステップと、
を含むことを特徴とする。
【発明の効果】
【０００８】
本発明におけるワークフロー管理システム及びその制御方法によれば、ワークフロー実行後に作業者のスケジュール変更に伴う対応及びフロー完遂不可の判断を自動的にすることができる。
【図面の簡単な説明】
【０００９】
【図１】本発明の一実施形態に係るワークフロー管理システムのブロック図である。
【図２】本発明の一実施形態に係るＪｏｂ管理テーブルの例を示す図である。
【図３】本発明の一実施形態に係る進捗管理テーブルの例を示す図である。
【図４】本発明の一実施形態に係るタスクテーブルの例を示す図である。
【図５】本発明の一実施形態に係る作業者情報テーブルの例を示す図である。
【図６】本発明の一実施形態に係るスケジュール管理テーブルの例を示す図である。
【図７】本発明の一実施形態に係るワークフロー管理システムの動作を示すフローチャートである。
【発明を実施するための形態】
【００１０】
以下、本発明の実施の形態について説明する。
【００１１】
（実施の形態）
図１は本発明の一実施形態に係るワークフロー管理システム１のブロック図である。本発明の一実施形態に係るワークフロー管理システム１は、ワークフロー管理装置１００と、スケジュール管理装置２００とを備える。またワークフロー管理システム１には、申請者端末３００とワークフロー実行制御装置４００とが接続される。申請者端末３００は、ワークフロー管理システム１に対して所定のジョブ（Ｊｏｂ）を申請する。またワークフロー実行制御装置は、ワークフロー管理システム１の指示に基づき、ワークフローの実行及び変更を制御する。ワークフロー管理装置１００と、スケジュール管理装置２００と、申請者端末３００と、ワークフロー実行制御装置４００とは、ネットワーク５００を介して有線又は無線により接続される。
【００１２】
ワークフロー管理装置１００は、タイマー制御部１０１と、記憶部１０２と、進捗管理部１０３と、進捗管理テーブル更新部１０４と、代行作業者割り当て部１０５と、メッセージ生成部１０６と、通信部１０７とを備える。
【００１３】
タイマー制御部１０１は、予め設定された時間間隔、又はあらかじめ設定された時刻に、現在時刻に係る情報（以下、現在時刻情報という。）を進捗管理部１０３に渡す。
【００１４】
記憶部１０２は、Ｊｏｂ管理テーブル１１１と、進捗管理テーブル１１２と、タスクテーブル１１３と作業者情報テーブル１１４とを備える。
【００１５】
Ｊｏｂ管理テーブル１１１は、ワークフロー管理システム１により実行するＪｏｂに関する管理テーブルである。図２にＪｏｂ管理テーブル１１１の例を示す。Ｊｏｂ管理テーブル１１１は、ＪｏｂＩＤと、申請者端末ＩＤと、進捗状況とを格納する。ここでＪｏｂＩＤとは、本システムにおいてＪｏｂを一意に特定するための識別子である。申請者端末ＩＤとは、本システムにおいて申請者端末３００を一意に特定するための識別子である。進捗状況とは、Ｊｏｂの進捗を示す値であり、分母が当該Ｊｏｂに含まれるプロセス数、分子が完了したプロセス数を示す。例えばＪｏｂ管理テーブル１１１には、ＪｏｂＩＤ“１０１”、申請者端末ＩＤ“００４９３２６”、進捗状況“１／３”等が格納される。
【００１６】
進捗管理テーブル１１２は、各Ｊｏｂの進捗の詳細に関する管理テーブルである。図３に進捗管理テーブル１１２の例を示す。進捗管理テーブル１１２は、ＪｏｂＩＤと、プロセスｎｕｍと、ステータスと、作業者情報と、割り当てタスクと、期限情報と、残時間とを格納する。ここでプロセスｎｕｍとは、当該Ｊｏｂに含まれるプロセスに割当てられた番号であり、実行される順番に１〜総プロセス数までの番号が割当てられる。ステータスとは、当該プロセスの状況を示す情報であり、「完了」又は「未完」のいずれかの値をとる。作業者情報とは、当該プロセスを実行する作業者に係る情報である。割り当てタスクとは、当該プロセスに係る具体的なタスクを示す情報であり、例えばＡ〜Ｚのアルファベットにより各タスクを示す。期限情報とは、当該プロセスを実行する期限を表す日付情報である。残時間とは、当該プロセスの作業者情報に係る作業者の有する作業可能な時間の残り時間の値を示す。当該プロセスのステータスが「完了」である場合には、残時間には“−”が格納される。
【００１７】
例えば進捗管理テーブル１１２には、ＪｏｂＩＤ“１０１”、プロセスｎｕｍ“１”、ステータス“完了”、作業者情報“田中一郎”、割り当てタスク“Ｃ”、期限情報“２０１２年８月２日”、残時間“−”が格納される。上述の通り、当該プロセスのステータスは「完了」であるため、残時間は“−”が格納される。また例えば進捗管理テーブル１１２には、ＪｏｂＩＤ“１０１”、プロセスｎｕｍ“２”、ステータス“未完”、作業者情報“田中三郎”、割り当てタスク“Ｂ”、期限情報“２０１２年８月４日”、残時間“５時間”が格納される。なお作業者情報は、好適には作業者名であるがこれに限られず、本システムで作業者毎に一意に割当てられた作業者ＩＤ等であってもよい。
【００１８】
タスクテーブル１１３は、進捗管理テーブル１１２における割り当てタスクのタスク所要時間に係る情報を格納するテーブルである。図４にタスクテーブル１１３の例を示す。タスクテーブル１１３は、タスクと、タスク所要時間と、ロールとを格納する。ここでタスク所要時間とは、当該タスクを実行するのに必要な時間を表す。ロールとは、当該タスクを行う作業者の役割に係る情報である。本システムにおいては、ロール毎に実行するタスクが定められている。また後述するように、各ロールに作業者が対応付けられている。このように構成することにより本システムは、あるロールの作業者が複数存在し、あるロールの作業者が該ロールに対応付けられたタスクを実行する。
【００１９】
例えばタスクテーブル１１３には、タスク“Ａ”、タスク所要時間“２時間”、ロール“ロール１”が格納される。
【００２０】
作業者情報テーブル１１４は、各ロールに対応付けられた作業者情報を格納するテーブルである。図５に作業者情報テーブル１１４の例を示す。例えば作業者情報テーブル１１４には、ロール“ロール１”、作業者情報１“田中一郎”、作業者情報２“山田次郎”が格納される。なお図５においては各ロールに対応付けられた作業者情報は２つのみ（作業者情報１、作業者情報２）備える例を示したがこれに限られず、作業者情報テーブル１１４の各ロールには、３以上の作業者情報が対応付けられていてもよい。なお、各ロールにおける作業者のうち、あるプロセスにおいて割当てられている作業者以外の作業者を代行作業者といい、当該代行作業者に係る作業者情報を、代行作業者情報という。
【００２１】
進捗管理部１０３は、タイマー制御部１０１から現在時刻情報を受取った場合、記憶部１０２のＪｏｂ管理テーブル１１１を読み込み、ＪｏｂＩＤを順番に取得する。続いて進捗管理部１０３は、進捗管理テーブル１１２を読み込み、Ｊｏｂ管理テーブル１１１から取得したＪｏｂＩＤに対応する各Ｊｏｂから、ステータスが「未完」のプロセスｎｕｍ、作業者情報、及び期限情報を取得する。そして進捗管理部１０３は、現在時刻情報と期限情報とを比較し、期限が切れていないかを判定する。進捗管理部１０３は、期限切れが無いと判定した場合、進捗管理テーブル更新部１０４にＪｏｂＩＤを渡す。一方、進捗管理部１０３は、期限切れがあると判定した場合、メッセージ生成部１０６に処理のタイプ（Ｔｙｐｅ：Ａ）、ＪｏｂＩＤ、期限切れに係るＪｏｂＩＤを渡す。
【００２２】
また進捗管理部１０３は、進捗管理テーブル更新部１０４から進捗管理テーブル１１２の残時間の更新完了通知を受けた場合、該当ＪｏｂＩＤの進捗管理テーブル１１２から、ステータスが「未完」の作業者情報、期限情報、及び残時間を取得する。また進捗管理部１０３は、タスクテーブル１１３から割り当てタスクのタスク所要時間を取得する。そして進捗管理部１０３は、各プロセスにおいて作業者の残時間がタスクの所要時間以上であるか否かを判定する。進捗管理部１０３は、少なくとも１のプロセスで残時間がタスク所要時間未満であると判定した場合、代行作業者割り当て部１０５にＪｏｂＩＤ、残時間がタスク所要時間未満であるプロセスｎｕｍを渡す。なお進捗管理部１０３は全てのプロセスで残時間がタスク所要時間以上であると判定した場合、処理を終了する。
【００２３】
また進捗管理部１０３は、代行作業者割り当て部１０５より代行作業者情報を受取った場合、通信部１０７を介してワークフロー実行制御装置４００へワークフロー変更指示を送信する。一方進捗管理部１０３は、代行作業者割り当て部１０５より代行作業者がいない旨の情報を受取った場合、メッセージ生成部１０６に処理のタイプ（Ｔｙｐｅ：Ｂ）、ＪｏｂＩＤ、及びプロセスｎｕｍを渡す。なお好適には進捗管理部１０３は、代行作業者割り当て部１０５より代行作業者がいない旨の情報として値φを送信する。
【００２４】
進捗管理テーブル更新部１０４は、進捗管理部１０３からＪｏｂＩＤを受取った場合、記憶部１０２の進捗管理テーブル１１２から当該ＪｏｂＩＤの中の、ステータスが「未完」の全プロセスの全作業者情報と、各作業者情報に係る期限情報を取得する。そして進捗管理テーブル更新部１０４は、ステータスが「未完」の作業者情報及び期限情報を、通信部１０７を介してスケジュール管理装置２００に送信し、スケジュールを問い合わせる。また進捗管理テーブル更新部１０４は、各作業者情報に対応する残時間を、通信部１０７を介してスケジュール管理装置２００から受信する。そして進捗管理テーブル更新部１０４は、取得した残時間により、進捗管理テーブル１１２の各作業者情報の残時間を上書きする。続いて進捗管理テーブル更新部１０４は、残時間の更新完了通知を進捗管理部１０３に渡す。
【００２５】
代行作業者割り当て部１０５は、進捗管理部１０３からＪｏｂＩＤと、残時間がタスク所要時間未満であるプロセスｎｕｍとを受取った場合、記憶部１０２の作業者情報テーブル１１４を読み込み、受取ったＪｏｂＩＤ及びプロセスｎｕｍに基づき、当該プロセスに係るロールに対応する全作業者情報のうち、進捗管理テーブル１１２の作業者情報以外の全ての作業者情報、すなわち全ての代行作業者情報を取得する。そして代行作業者割り当て部１０５は、取得した全ての代行作業者情報及び期限情報を、通信部１０７を介してスケジュール管理装置２００に送信し、全ての代行作業者のスケジュールを問い合わせる。なお期限情報については、代行作業者割り当て部１０５は進捗管理部１０３から別途受取り、受取った期限情報を送信する。あるいは進捗管理部１０３が通信部１０７を介してスケジュール管理装置２００に送信する。
【００２６】
また代行作業者割り当て部１０５は、スケジュール管理装置２００から、通信部１０７を介して全ての代行作業者情報に対応する残時間を受取る。そして代行作業者割り当て部１０５は、タスクテーブル１１３から割り当てタスクのタスク所要時間を取得する。そして代行作業者割り当て部１０５は、残時間がタスク所要時間以上である代行作業者情報の存在の有無を判定する。代行作業者割り当て部１０５は、残時間がタスク所要時間以上である代行作業者情報が存在すると判定した場合、進捗管理テーブル１１２の作業者情報を残時間がタスク所要時間以上である代行作業者情報に上書き、すなわち書き換える。好適には残時間がタスク所要時間以上である代行作業者情報が複数存在する場合、進捗管理テーブル１１２の作業者情報を残時間が最大の代行作業者情報に書き換える。続いて代行作業者割り当て部１０５は、進捗管理部１０３に当該書き換えた代行作業者情報を渡す。一方、代行作業者割り当て部１０５は、残時間がタスク所要時間以上である作業者情報が存在しないと判定した場合、進捗管理部１０３に担当可能作業者が存在しない旨の情報、好適にはφを通知する。
【００２７】
メッセージ生成部１０６は、進捗管理部１０３から処理のタイプ（Ｔｙｐｅ：Ａ）、ＪｏｂＩＤ、期限切れに係るＪｏｂＩＤを受取った場合、期限切れによりワークフローが期限までに完遂不可であることを通知するメッセージを生成する。またメッセージ生成部１０６は、進捗管理部１０３から処理のタイプ（Ｔｙｐｅ：Ｂ）、ＪｏｂＩＤ、及びプロセスｎｕｍを受取った場合、プロセスｎｕｍに係るプロセスを期限までに完遂できる作業者がいない旨を通知するメッセージを生成する。メッセージ生成部１０６は生成したメッセージを、通信部１０７を介して申請者端末３００へ送信する。
【００２８】
通信部１０７は、スケジュール管理装置２００、申請者端末３００、ワークフロー実行制御装置４００とネットワーク５００を介して通信する。
【００２９】
スケジュール管理装置２００は、スケジュールチェック部２０１と、記憶部２０２と、通信部２０３とを備える。
【００３０】
スケジュールチェック部２０１は、作業者情報若しくは代行作業者情報及び期限情報を、通信部２０３を介してワークフロー管理装置１００から受信する。またスケジュールチェック部２０１は、受信した作業者情報若しくは代行作業者情報及び期限情報に基づき、後述する記憶部２０２のスケジュール管理テーブル２１１から各作業者の期限までの残時間を計算する。そしてスケジュールチェック部２０１は、計算した各作業者の残時間を、通信部２０３を介してワークフロー管理装置１００に送信する。
【００３１】
記憶部２０２は、スケジュール管理テーブル２１１を格納する。スケジュール管理テーブル２１１は、各作業者のスケジュールを格納する管理テーブルである。図６にスケジュール管理テーブル２１１の例を示す。例えばスケジュール管理テーブル２１１には、作業者情報“田中三郎”に係るスケジュールが格納されている。当該作業者情報に対応付けて、日付情報“２０１２年８月３日”、空き時間“２時間”、“２０１２年８月４日”、空き時間“３時間”等が格納されている。前述のスケジュールチェック部２０１は、当該スケジュール管理テーブル２１１を参照することにより、期限までの空き時間の合計時間を算出し、当該合計時間を残時間として計算する。本スケジュール管理テーブル２１１は、予め定義した所定の間隔で最新の情報に更新する。
【００３２】
通信部２０３は、スケジュール管理装置２００とネットワーク５００を介して通信する。
【００３３】
次に、本発明に係るワークフロー管理システム１について、図７に示すフローチャートによりその動作を説明する。
【００３４】
はじめにワークフロー管理装置１００のタイマー制御部１０１は、予め設定された時間間隔、又はあらかじめ設定された時刻に、現在時刻情報を進捗管理部１０３に渡す（ステップＳ０１）。
【００３５】
次に進捗管理部１０３は、タイマー制御部１０１から現在時刻情報を受取った場合、記憶部１０２のＪｏｂ管理テーブル１１１を読み込み、ＪｏｂＩＤを順番に取得する。続いて進捗管理部１０３は、進捗管理テーブル１１２を読み込み、Ｊｏｂ管理テーブル１１１から取得したＪｏｂＩＤに対応する各Ｊｏｂから、ステータスが「未完」のプロセスｎｕｍ、作業者情報、及び期限情報を取得する。そして進捗管理部１０３は、現在時刻情報と期限情報とを比較し、期限が切れていないかを判定する（ステップＳ０２）。期限切れが無いと判定した場合、進捗管理部１０３は、進捗管理テーブル更新部１０４にＪｏｂＩＤを渡してステップＳ０３に進む。一方、進捗管理部１０３は、期限切れがあると判定した場合、メッセージ生成部１０６に処理のタイプ（Ｔｙｐｅ：Ａ）、ＪｏｂＩＤ、期限切れに係るＪｏｂＩＤを渡してステップＳ１２に進む。
【００３６】
ステップＳ０２において期限切れが無いと判定し、進捗管理テーブル更新部１０４が進捗管理部１０３からＪｏｂＩＤを受取った場合、進捗管理テーブル更新部１０４は記憶部１０２の進捗管理テーブル１１２から当該ＪｏｂＩＤの中の、ステータスが「未完」の全プロセスの全作業者情報と、各作業者情報に係る期限情報を取得する。そして進捗管理テーブル更新部１０４は、ステータスが「未完」の作業者情報及び期限情報を、通信部１０７を介してスケジュール管理装置２００に送信し、スケジュールを問い合わせる（ステップＳ０３）。
【００３７】
スケジュール管理装置２００が、ステータスが「未完」の作業者情報及び期限情報を、通信部２０３を介してワークフロー管理装置１００から受信すると、スケジュールチェック部２０１は、受信したステータスが「未完」の作業者情報及び期限情報に基づき、記憶部２０２のスケジュール管理テーブル２１１から各作業者の期限までの残時間を計算する（ステップＳ０４）。そしてスケジュールチェック部２０１は、計算した各作業者の残時間を、通信部２０３を介してワークフロー管理装置１００に送信する。
【００３８】
ワークフロー管理装置１００の進捗管理テーブル更新部１０４が各作業者情報に対応する残時間を、通信部１０７を介してスケジュール管理装置２００から受信すると、進捗管理テーブル更新部１０４は、取得した残時間により、進捗管理テーブル１１２の各作業者情報の残時間を上書きする。続いて進捗管理テーブル更新部１０４は、残時間の更新完了通知を進捗管理部１０３に渡す（ステップＳ０５）。
【００３９】
進捗管理部１０３は、進捗管理テーブル更新部１０４から進捗管理テーブル１１２の残時間の更新完了通知を受けると、該当ＪｏｂＩＤの進捗管理テーブル１１２から、ステータスが「未完」の作業者情報、期限情報、及び残時間を取得する。続いて進捗管理部１０３は、タスクテーブル１１３から割り当てタスクのタスク所要時間を取得する。そして進捗管理部１０３は、各プロセスにおいて作業者の残時間がタスクの所要時間以上であるか否かを判定する（ステップＳ０６）。少なくとも１のプロセスで残時間がタスク所要時間未満である場合、進捗管理部１０３は、代行作業者割り当て部１０５にＪｏｂＩＤ、残時間がタスク所要時間未満であるプロセスｎｕｍを渡し、ステップＳ０７に進む。全てのプロセスで残時間がタスク所要時間以上である場合、処理を終了する。
【００４０】
ステップＳ０６において、進捗管理部１０３が少なくとも１のプロセスで残時間がタスク所要時間未満であると判定した場合、代行作業者割り当て部１０５は、進捗管理部１０３からＪｏｂＩＤと、残時間がタスク所要時間未満であるプロセスｎｕｍとを受取り、記憶部１０２の作業者情報テーブル１１４を読み込み、受取ったＪｏｂＩＤ及びプロセスｎｕｍに基づき、当該プロセスに係るロールに対応する全作業者情報、すなわち全ての代行作業者情報を取得する。そして代行作業者割り当て部１０５は、取得した全ての代行作業者情報及び期限情報を、通信部１０７を介してスケジュール管理装置２００に送信し、代行作業者情報に係るスケジュールを問い合わせる（ステップＳ０７）。なお期限情報については、代行作業者割り当て部１０５は進捗管理部１０３から別途受取り、受取った期限情報を送信する。あるいは進捗管理部１０３が通信部１０７を介してスケジュール管理装置２００に送信する。
【００４１】
続いてスケジュール管理装置２００が、全ての代行作業者情報及び期限情報を、通信部２０３を介してワークフロー管理装置１００から受信すると、スケジュールチェック部２０１は、全ての代行作業者情報及び期限情報に基づき、記憶部２０２のスケジュール管理テーブル２１１から各代行作業者の期限までの残時間を計算する（ステップＳ０８）。そしてスケジュールチェック部２０１は、計算した全ての代行作業者の残時間を、通信部２０３を介してワークフロー管理装置１００に送信する。
【００４２】
続いてワークフロー管理装置１００の代行作業者割り当て部１０５は、スケジュール管理装置２００から通信部１０７を介して全ての代行作業者情報に対応する残時間を受取ると、タスクテーブル１１３から割り当てタスクのタスク所要時間を取得する。そして代行作業者割り当て部１０５は、残時間がタスク所要時間以上である代行作業者情報の存在の有無を判定する（ステップＳ０９）。代行作業者割り当て部１０５は、残時間がタスク所要時間以上である代行作業者情報が存在する場合、進捗管理テーブル１１２の作業者情報を残時間がタスク所要時間以上である代行作業者情報に上書き、すなわち書き換える（ステップＳ１０）。好適には残時間がタスク所要時間以上である代行作業者情報が複数存在する場合、進捗管理テーブル１１２の作業者情報を残時間が最大の代行作業者情報に書き換える。続いて代行作業者割り当て部１０５は、進捗管理部１０３に当該書き換えた代行作業者情報を渡す。
【００４３】
進捗管理部１０３は、代行作業者割り当て部１０５より代行作業者情報を受取った場合、通信部１０７を介してワークフロー実行制御装置４００へワークフロー変更指示を送信する（ステップＳ１１）。
【００４４】
一方、ステップＳ０９において代行作業者割り当て部１０５が、残時間がタスク所要時間以上である作業者情報が存在しないと判定した場合、代行作業者割り当て部１０５は、進捗管理部１０３に担当可能作業者が無い旨の情報、好適にはφを通知する。進捗管理部１０３は、代行作業者割り当て部１０５より代行作業者がいない旨の情報を受取った場合、メッセージ生成部１０６に処理のタイプ（Ｔｙｐｅ：Ｂ）、ＪｏｂＩＤ、プロセスｎｕｍを渡してステップＳ１２に進む。
【００４５】
ステップＳ１２においてメッセージ生成部１０６は、進捗管理部１０３から処理のタイプ（Ｔｙｐｅ：Ａ）、ＪｏｂＩＤ、期限切れに係るＪｏｂＩＤを受取った場合、期限切れによりワークフローが期限までに完遂不可であることを通知するメッセージを生成する。またメッセージ生成部１０６は、進捗管理部１０３から処理のタイプ（Ｔｙｐｅ：Ｂ）、ＪｏｂＩＤ、及びプロセスｎｕｍを受取った場合、プロセスｎｕｍに係るプロセスを期限までに完遂できる作業者がいない旨を通知するメッセージを生成する。メッセージ生成部１０６は生成したメッセージを、通信部１０７を介して申請者端末３００へ送信し、処理が終了する。
【００４６】
このように本発明によれば、残時間がプロセスに係るタスク所要時間未満である場合、作業者情報テーブル１１４に基づき代行作業者を割当てるため、ワークフロー実行後に作業者のスケジュール変更に伴う対応を自動的に行うことができる。また、ワークフロー管理装置１００がプロセスに係るタスク所要時間以上の代行作業者の残時間が存在しない場合にワークフローが完遂不可である旨を通知するため、フロー完遂不可の判断を自動的にすることができる。それゆえ、処理申請者の進捗管理の手間を低減することができる。また期日までの完遂不可判断を早め、意思決定スピードを向上させることができる。
【００４７】
本発明を諸図面や実施例に基づき説明してきたが、当業者であれば本開示に基づき種々の変形や修正を行うことが容易であることに注意されたい。従って、これらの変形や修正は本発明の範囲に含まれることに留意されたい。例えば、各手段、各ステップ等に含まれる機能等は論理的に矛盾しないように再配置可能であり、複数の手段やステップ等を１つに組み合わせたり、或いは分割したりすることが可能である。
【符号の説明】
【００４８】
１  ワークフロー管理システム
１００  ワークフロー管理装置
１０１  タイマー制御部
１０２  記憶部
１０３  進捗管理部
１０４  進捗管理テーブル更新部
１０５  代行作業者割り当て部
１０６  メッセージ生成部
１０７  通信部
１１１  Ｊｏｂ管理テーブル
１１２  進捗管理テーブル
１１３  タスクテーブル
１１４  作業者情報テーブル
２００  スケジュール管理装置
２０１  スケジュールチェック部
２０２  記憶部
２０３  通信部
２１１  スケジュール管理テーブル
３００  申請者端末
４００  ワークフロー実行制御装置
５００  ネットワーク
【図１】
2014098970.tif 000003
【図２】
2014098970.tif 000004
【図３】
2014098970.tif 000005
【図４】
2014098970.tif 000006
【図５】
2014098970.tif 000007
【図６】
2014098970.tif 000008
【図７】
2014098970.tif 000009