(57)【要約】【課題】タスクの割り当て数の偏りを解消する。【解決手段】実行履歴データベース２１の実行履歴情報に基づいて、各ユーザの実行パターンを、タスクごとに、一括実行パターンまたは逐次実行パターンのいずれかに設定する実行パターン設定部１１と、割り当て対象となるユーザに設定された実行パターン、および割り当て対象となるユーザが保有する未実行の所定タスク数を用いて、割り当て対象となるユーザの中から、未割当の所定タスクを割り当てるユーザを決定する割当ユーザ決定部１２と、を備える。【選択図】図１
2011232788.tif 000002
【特許請求の範囲】
【請求項１】
ワークフローに含まれるタスクを実行するユーザの識別情報ごとに、少なくとも、前記タスクの識別情報、前記タスクを前記ユーザに割り当てた割当時刻、および前記ユーザが前記タスクを実行した実行時刻を含む実行履歴情報を記憶する記憶部と、
未割当の前記タスクをいずれかの前記ユーザに割り当てる前に、当該未割当の前記タスクを割り当てる際の割り当て対象となる前記ユーザを、前記実行履歴情報に基づいて、前記タスクを実行する際の実行パターンとして予め定められた複数の実行パターンのいずれかに設定する実行パターン設定部と、
前記割り当て対象となる前記ユーザに設定された前記実行パターン、および前記割り当て対象となる前記ユーザが保有する未実行の前記タスクの数を用いて、前記割り当て対象となる前記ユーザの中から、前記未割当の前記タスクを割り当てる前記ユーザを決定する割当ユーザ決定部と、
を備えることを特徴とするワークフロー管理システム。
【請求項２】
前記実行パターンは、複数の前記タスクが割り当てられてから前記タスクを実行する第一の実行パターン、および前記タスクが割り当てられるたびに前記タスクを実行する第二の実行パターンを含むことを特徴とする請求項１記載のワークフロー管理システム。
【請求項３】
前記実行パターン設定部は、前記タスクを実行したときに未実行で残存していた前記タスクの数を用いて平均残存タスク数を算出し、当該平均残存タスク数に基づいて、前記割り当て対象となる前記ユーザを、前記第一の実行パターンまたは前記第二の実行パターンのいずれかに設定することを特徴とする請求項２記載のワークフロー管理システム。
【請求項４】
前記割当ユーザ決定部は、前記第一の実行パターンに設定された前記ユーザが保有する未実行の前記タスクの数が、過去に前記タスクを実行したときに未実行で残存していた前記タスクの数に応じて定められる所定閾値よりも少ない場合に、当該ユーザを、前記未割当の前記タスクを割り当てる候補にすることを特徴とする請求項２または３記載のワークフロー管理システム。
【請求項５】
前記割当ユーザ決定部は、前記第二の実行パターンに設定された前記ユーザが、未実行の前記タスクを保有していない場合に、当該ユーザを、前記未割当の前記タスクを割り当てる候補にすることを特徴とする請求項４記載のワークフロー管理システム。
【請求項６】
前記割当ユーザ決定部は、未割当の前記タスクを割り当てる候補にした前記ユーザのうち、単位時間内に実行した前記タスクの数が最も少ない前記ユーザに、前記未割当の前記タスクを割り当てることを特徴とする請求項５記載のワークフロー管理システム。
【請求項７】
ワークフローに含まれるタスクを実行するユーザの識別情報ごとに、少なくとも、前記タスクの識別情報、前記タスクを前記ユーザに割り当てた割当時刻、および前記ユーザが前記タスクを実行した実行時刻を含む実行履歴情報を記憶する記憶部を備えるワークフロー管理システムにおいて実行されるワークフロー管理方法であって、
未割当の前記タスクをいずれかの前記ユーザに割り当てる前に、当該未割当の前記タスクを割り当てる際の割り当て対象となる前記ユーザを、前記実行履歴情報に基づいて、前記タスクを実行する際の実行パターンとして予め定められた複数の実行パターンのいずれかに設定する実行パターン設定ステップと、
前記割り当て対象となる前記ユーザに設定された前記実行パターン、および前記割り当て対象となる前記ユーザが保有する未実行の前記タスクの数を用いて、前記割り当て対象となる前記ユーザの中から、前記未割当の前記タスクを割り当てる前記ユーザを決定する割当ユーザ決定ステップと、
を含むことを特徴とするワークフロー管理方法。
【請求項８】
請求項７に記載の各ステップをコンピュータに実行させるためのワークフロー管理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ワークフロー管理システム、ワークフロー管理方法およびワークフロー管理プログラムに関する。
【背景技術】
【０００２】
ワークフロー管理システムは、業務手続きの一連の流れを管理するシステムである。ワークフロー管理システムは、業務手続きに含まれる作業（以下、「タスク」という。）を順次ユーザに割り当てて実行させることで、業務手続きの円滑な遂行を支援する。例えば、特許文献１のワークフロー管理システムは、タスクが処理可能になったことを実行候補のユーザ全員に通知し、最初に開始ボタンをクリックしたユーザのみがタスクを実行できるようにすることで、タスクの排他制御を可能としている。また、特許文献２のワークフロー管理システムは、タスクを割り当てる際に、割り当てを拒否したユーザに対してはタスクを割り当てないことで、特定のユーザにタスクが集中することを防止している。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００１−３１９１８３号公報
【特許文献２】特開２００９−２０５３４１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
上記特許文献１および特許文献２のワークフロー管理システムでは、開始ボタンをクリックしないユーザや、割り当てを拒否したユーザには、タスクが割り当てられないため、ユーザ間でタスクの割り当て数に偏りが生じ得る。
【０００５】
本発明は、上述した課題を解決するためになされたものであり、タスクの割り当て数の偏りを解消することができるワークフロー管理システム、ワークフロー管理方法およびワークフロー管理プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００６】
本発明のワークフロー管理システムは、ワークフローに含まれるタスクを実行するユーザの識別情報ごとに、少なくとも、前記タスクの識別情報、前記タスクを前記ユーザに割り当てた割当時刻、および前記ユーザが前記タスクを実行した実行時刻を含む実行履歴情報を記憶する記憶部と、未割当の前記タスクをいずれかの前記ユーザに割り当てる前に、当該未割当の前記タスクを割り当てる際の割り当て対象となる前記ユーザを、前記実行履歴情報に基づいて、前記タスクを実行する際の実行パターンとして予め定められた複数の実行パターンのいずれかに設定する実行パターン設定部と、前記割り当て対象となる前記ユーザに設定された前記実行パターン、および前記割り当て対象となる前記ユーザが保有する未実行の前記タスクの数を用いて、前記割り当て対象となる前記ユーザの中から、前記未割当の前記タスクを割り当てる前記ユーザを決定する割当ユーザ決定部と、を備える。
【０００７】
本発明のワークフロー管理方法は、ワークフローに含まれるタスクを実行するユーザの識別情報ごとに、少なくとも、前記タスクの識別情報、前記タスクを前記ユーザに割り当てた割当時刻、および前記ユーザが前記タスクを実行した実行時刻を含む実行履歴情報を記憶する記憶部を備えるワークフロー管理システムにおいて実行されるワークフロー管理方法であって、未割当の前記タスクをいずれかの前記ユーザに割り当てる前に、当該未割当の前記タスクを割り当てる際の割り当て対象となる前記ユーザを、前記実行履歴情報に基づいて、前記タスクを実行する際の実行パターンとして予め定められた複数の実行パターンのいずれかに設定する実行パターン設定ステップと、前記割り当て対象となる前記ユーザに設定された前記実行パターン、および前記割り当て対象となる前記ユーザが保有する未実行の前記タスクの数を用いて、前記割り当て対象となる前記ユーザの中から、前記未割当の前記タスクを割り当てる前記ユーザを決定する割当ユーザ決定ステップと、を含む。
【０００８】
本発明のワークフロー管理プログラムは、上記ワークフロー管理方法に含まれる各ステップをコンピュータに実行させる。
【発明の効果】
【０００９】
本発明によれば、タスクの割り当て数の偏りを解消することができる。
【図面の簡単な説明】
【００１０】
【図１】実施形態におけるワークフロー管理システムの構成を模式的に例示するブロック図である。
【図２】実行履歴データベースのデータ構成を例示する図である。
【図３】実行パターンデータベースのデータ構成を例示する図である。
【図４】パターン設定処理を説明するために、所定ユーザの所定タスクに関する情報を表形式で例示した図である。
【図５】パターン設定処理の処理手順を説明するためのフローチャートである。
【図６】割当ユーザ決定処理の処理手順を説明するためのフローチャートである。
【発明を実施するための形態】
【００１１】
以下、添付図面を参照して、本発明に係るワークフロー管理システム、ワークフロー管理方法およびワークフロー管理プログラムの好適な実施形態について説明する。
【００１２】
まず、図１を参照して、実施形態におけるワークフロー管理システムの構成について説明する。図１は、実施形態におけるワークフロー管理システムを模式的に示した構成図である。
【００１３】
まず、図１を参照して、実施形態におけるワークフロー管理システムの構成について説明する。ワークフロー管理システム１は、サーバ装置１０と、ＤＢ装置２０と、ユーザ端末３０と、を有する。
【００１４】
ＤＢ装置２０は、サーバ装置１０が参照する各種のデータベースを管理する。各種のデータベースとしては、例えば、実行履歴データベース２１および実行パターンデータベース２２がある。なお、実行履歴データベース２１および実行パターンデータベース２２は、サーバ装置１０が備えることとしてもよい。
【００１５】
図２を参照して、実行履歴データベース２１のデータ構成について説明する。実行履歴データベース２１は、ユーザが実行したタスクに関する実行履歴情報を管理する。実行履歴情報を構成するデータ項目としては、例えば、ユーザＩＤ項目、タスクＩＤ項目、割当時刻項目および実行時刻項目がある。ユーザＩＤ項目は、ユーザを一意に特定する識別情報を格納する。タスクＩＤ項目は、タスクを一意に特定する識別情報を格納する。割当時刻項目は、ユーザにタスクを割り当てた時刻を格納する。実行時刻項目は、ユーザがタスクを実行した時刻を格納する。
【００１６】
図３を参照して、実行パターンデータベース２２のデータ構成について説明する。実行パターンデータベース２２は、ユーザがタスクを実行する際の実行パターンに関する実行パターン情報を管理する。実行パターン情報を構成するデータ項目としては、例えば、ユーザＩＤ項目、タスクＩＤ項目、実行パターン項目および閾値項目がある。ユーザＩＤ項目は、ユーザを一意に特定する識別情報を格納する。タスクＩＤ項目は、タスクを一意に特定する識別情報を格納する。実行パターン項目は、ユーザがタスクを実行する際の実行パターンを格納する。実行パターンとしては、例えば、一括実行パターンと、逐次実行パターンとがある。一括実行パターンは、複数のタスクが割り当てられてからタスクを実行するパターンである。逐次実行パターンは、タスクが割り当てられるたびにタスクを実行するパターンである。閾値項目は、一括実行パターンのユーザにタスクを割り当てるときに参照する値であり、未実行のタスク数がこの値よりも大きくなるとタスクを実行すると判定可能な値である。
【００１７】
なお、ＤＢ装置２０は、業務手続きを実行する際に用いる各種の情報を管理するワークフローデータベースをさらに備えることとしてもよい。各種の情報としては、例えば、業務手続きに関する業務手続情報、タスクに関するタスク情報、ユーザに関するユーザ情報、ユーザ端末に関するユーザ端末情報等がある。
【００１８】
図１に示すサーバ装置１０は、機能的には、例えば、実行パターン設定部１１と、割当ユーザ決定部１２と、ワークフロー制御部１３と、を有する。
【００１９】
ここで、サーバ装置１０は、物理的には、例えば、ＣＰＵ（Central Processing Unit）と、メモリと、記憶装置と、入出力インターフェースとを含んで構成される。記憶装置には、例えば、ＣＰＵで処理されるプログラムやデータを記憶するＲＯＭ（Read Only Memory）やＨＤＤ（Hard Disk Drive）、主として制御処理のための各種作業領域として使用されるＲＡＭ（Random Access Memory）が含まれる。これらの要素は、互いにバスを介して接続されている。ＣＰＵが、ＲＯＭに記憶されたプログラムを実行し、入出力インターフェースを介して受信されたメッセージや、ＲＡＭに展開されたデータを処理することで、後述するサーバ装置１０における各部の機能を実現することができる。
【００２０】
実行パターン設定部１１は、実行履歴データベース２１に格納されている実行履歴情報を用いて、各ユーザの実行パターンを、タスクごとに、一括実行パターンまたは逐次実行パターンのいずれかに設定する、パターン設定処理を実行する。実行パターン設定部１１は、パターン設定処理を実行することで生成される実行パターン情報を、実行パターンデータベース２２に登録する。実行パターン設定部１１は、全てのユーザに対し、順次パターン設定処理を実行する。
【００２１】
実行パターン設定部１１は、外部からパターン設定処理の開始要求を受信した場合に、パターン設定処理を開始する。図４を参照して、実行パターン設定部１１によって実行されるパターン設定処理の一例を以下に説明する。図４は、パターン設定処理を説明するために、所定ユーザの所定タスクに関する情報を表形式で表した図である。図４に示す割り当て時刻は、図２に示す割当時刻に対応する時刻である。割り当て間隔は、各割り当て時刻間の間隔である。平均割り当て間隔は、割り当て間隔の平均値である。実行時刻は、図２に示す実行時刻に対応する時刻である。実行間隔は、各実行時刻間の間隔である。残存タスク数は、タスクを実行するときに未実行で残存しているタスクの数である。この残存タスク数は、タスクを最初に実行したときと、平均割り当て間隔よりも長い実行間隔でタスクを実行した時にカウントする。平均残存タスクは、残存タスク数の平均値である。閾値は、図３に示す閾値に対応する値である。この閾値としては、例えば、残存タスク数の小数点以下を切り上げた値に１を加算した値を用いることができる。
【００２２】
最初に、実行パターン設定部１１は、実行履歴情報の割当時刻に基づいてタスクごとの平均割り当て間隔を算出する。図４を参照して具体的に説明する。実行パターン設定部１１は、実行履歴情報の各割当時刻を用いて割り当て間隔を順次算出し、算出した各割り当て間隔の平均値を算出することで、平均割り当て間隔を算出する。なお、本実施形態では、１８：００から８：００までは営業時間外でタスクが発生しないため、この時間帯は割当間隔の算出対象から除外している。
【００２３】
続いて、実行パターン設定部１１は、タスクを実行したときに未実行で残存していたタスク数を用いて平均残存タスク数を算出する。図４を参照して具体的に説明する。実行パターン設定部１１は、実行履歴情報の各実行時刻を用いて実行間隔を順次算出する。なお、本実施形態では、１８：００から８：００までは営業時間外でタスクが発生しないため、この時間帯は実行間隔の算出対象から除外している。実行パターン設定部１１は、タスクを最初に実行した時、および平均割り当て間隔よりも長い実行間隔でタスクを実行した時を、残存タスク数のカウント対象に設定する。一方、実行パターン設定部１１は、平均割当間隔よりも短い実行間隔でタスクを実行した時は、残存タスク数のカウント対象外に設定する。実行パターン設定部１１は、カウント対象に設定したタスクを実行したときに、未実行で残存していたタスク数を残存タスク数としてカウントする。実行パターン設定部１１は、算出した各残存タスク数の平均値を算出することで平均残存タスク数を算出する。
【００２４】
続いて、実行パターン設定部１１は、平均残存タスク数が１未満である場合には、所定ユーザが所定タスクを実行する際の実行パターンを逐次実行パターンに設定し、実行パターン情報の実行パターン項目に格納する。一方、実行パターン設定部１１は、平均残存タスク数が１以上である場合には、所定ユーザが所定タスクを実行する際の実行パターンを一括実行パターンに設定し、実行パターン情報の実行パターン項目に格納する。
【００２５】
これは、タスクが割り当てられるたびにタスクを実行するユーザは、所定タスクを実行するときには、未実行の所定タスクが残存していないと考えられるため、平均残存タスク数が１よりも小さい場合には、このユーザの実行パターンを逐次実行パターンに設定することにしたものである。一方、複数のタスクが割り当てられてからタスクを実行するユーザは、所定タスクを実行するときには、未実行の所定タスクが残存していると考えられるため、平均残存タスク数が１以上になる場合には、このユーザの実行パターンを一括実行パターンに設定することにしたものである。
【００２６】
続いて、実行パターン設定部１１は、ユーザの実行パターンを一括実行パターンに設定した場合には、平均残存タスク数の小数点以下を切り上げた値に１を加算した値を、実行パターン情報の閾値項目に格納する。
【００２７】
続いて、実行パターン設定部１１は、生成した実行パターン情報を実行パターンデータベース２２に登録する。
【００２８】
図１に示す割当ユーザ決定部１２は、ユーザに設定された実行パターンと、このユーザが保有する未実行の所定タスク数を用いて、未割当の所定タスクを割り当てるユーザを決定する、割当ユーザ決定処理を実行する。割当ユーザ決定部１２は、ワークフロー制御部１３によってユーザに割り当てるタスクが生成されたときに、割当ユーザ決定処理を開始する。割当ユーザ決定部１２によって実行される割当ユーザ決定処理の一例を以下に説明する。
【００２９】
最初に、割当ユーザ決定部１２は、全ユーザの中から、未割当の所定タスクを実行し得るユーザを選択する。ユーザの選択は、実行履歴データベース２１の実行履歴情報に基づいて行うこととしてもよいし、ワークフローデータベースの各種情報に基づいて行うこととしてもよい。続いて、割当ユーザ決定部１２は、各ユーザの実行パターン情報を実行パターンデータベース２２から取得する。
【００３０】
続いて、割当ユーザ決定部１２は、ユーザの実行パターンが一括実行パターンである場合には、このユーザの所定タスクに対応する未実行のタスク数および閾値を、実行履歴データベース２１から取得する。割当ユーザ決定部１２は、未実行のタスク数が、閾値よりも少ない場合に、このユーザを、所定タスクを割り当てる候補にする。一方、割当ユーザ決定部１２は、ユーザの実行パターンが逐次実行パターンである場合には、このユーザの所定タスクに対応する未実行のタスク数を、実行履歴データベース２１から取得する。割当ユーザ決定部１２は、未実行のタスクの数が０である場合に、このユーザを、所定タスクを割り当てる候補にする。
【００３１】
続いて、割当ユーザ決定部１２は、所定タスクの割り当て候補にした各ユーザの単位時間内のタスク実行数を算出する。続いて、割当ユーザ決定部１２は、算出したタスク実行数のうち、最小のタスク実行数に対応するユーザを、所定タスクを割り当てるユーザに決定する。
【００３２】
図１に示すワークフロー制御部１３は、例えば、ＢＰＥＬ（Business Process Execution Language）やＸＰＤＬ（XML Process Definition Language）等の言語で記述された業務手続きを実行することで、ワークフローを制御する。ワークフロー制御部１３は、例えば、業務手続きのステータス管理、業務手続きで使用するデータの管理、ユーザへのタスクの割り当て、ユーザ端末３０へのタスク情報の通知、タスクのステータス管理等を行う。ワークフロー制御部１３は、業務手続きを実行し、割り当て対象のタスクが発生した場合に、割当ユーザ決定部１２によって決定されたユーザに対してタスクを割り当てる。
【００３３】
図１に示すユーザ端末３０は、サーバ装置１０から通知されるタスク情報を表示する。ユーザ端末３０は、タスクを実行する際に、タスクの実行開始／終了、タスクの実行結果等をサーバ装置１０に送信する。
【００３４】
次に、図面を参照して、実施形態におけるワークフロー管理システムの動作について説明する。図５を参照して、パターン設定処理の処理手順について説明する。
【００３５】
最初に、外部からパターン設定処理の開始要求を受信した場合に、実行パターン設定部１１は、実行履歴データベース２１に格納されている実行履歴情報に基づいて、実行パターンを設定する対象となる設定対象ユーザを選択する（ステップＳ１０１）。
【００３６】
続いて、実行パターン設定部１１は、上記ステップＳ１０１で選択した設定対象ユーザの実行履歴情報に基づいて、実行パターンを設定する対象となる設定対象タスクを選択する（ステップＳ１０２）。
【００３７】
続いて、実行パターン設定部１１は、上記ステップＳ１０２で選択した設定対象タスクの実行履歴情報に基づいて、設定対象ユーザが設定対象タスクを実行する際の実行パターンを設定する（ステップＳ１０３）。なお、実行パターンが一括実行パターンである場合には、実行パターンの設定に加え、閾値を算出する。
【００３８】
続いて、実行パターン設定部１１は、上記ステップＳ１０３で設定した実行パターンを用いて実行パターン情報を生成し、実行パターンデータベース２２に登録する（ステップＳ１０４）。
【００３９】
続いて、実行パターン設定部１１は、設定対象ユーザの全タスクについて実行パターンを設定したか否かを判定する（ステップＳ１０５）。この判定がＮＯである場合（ステップＳ１０５；ＮＯ）には、処理を上記ステップＳ１０２に移行する。
【００４０】
一方、上記ステップＳ１０５の判定で全タスクについて実行パターンを設定したと判定された場合（ステップＳ１０５；ＹＥＳ）に、実行パターン設定部１１は、全ユーザについて実行パターンを設定したか否かを判定する（ステップＳ１０６）。この判定がＮＯである場合（ステップＳ１０６；ＮＯ）には、処理を上記ステップＳ１０１に移行する。一方、上記ステップＳ１０６の判定で全ユーザについて実行パターンを設定したと判定した場合（ステップＳ１０６；ＹＥＳ）には、パターン設定処理を終了する。
【００４１】
図６を参照して、割当ユーザ決定処理の処理手順について説明する。
【００４２】
最初に、ワークフロー制御部１３がユーザに割り当てる所定タスクを生成すると、割当ユーザ決定部１２は、所定タスクを実行し得るユーザの中から、割り当て候補ユーザを一人選択し（ステップＳ２０１）、さらに比較対象ユーザを一人選択する（ステップＳ２０２）。
【００４３】
続いて、割当ユーザ決定部１２は、上記ステップＳ２０２で選択した比較対象ユーザの実行履歴情報に基づいて、比較対象ユーザが、未実行の所定タスクを有するか否かを判定する（ステップＳ２０３）。この判定がＮＯである場合（ステップＳ２０３；ＮＯ）には、所定タスクが比較対象ユーザに割り当てられておらず、比較対象ユーザは所定タスクを実行できる状態であると判断することができる。したがって、この場合には、処理を後述するステップＳ２０６に移行する。
【００４４】
一方、上記ステップＳ２０３の判定で比較対象ユーザが未実行の所定タスクを有していると判定した場合（ステップＳ２０３；ＹＥＳ）に、割当ユーザ決定部１２は、比較対象ユーザの実行パターン情報に基づいて、比較対象ユーザの実行パターンが一括実行パターンであるか否かを判定する（ステップＳ２０４）。この判定がＮＯである場合（ステップＳ２０４；ＮＯ）には、比較対象ユーザの実行パターンは逐次実行パターンであり、未実行の所定タスクが残っていることになるため、何らかの理由によりタスクを実行できる状態ではないと判断することができる。したがって、この場合には、比較対象ユーザを所定タスクの割り当て候補にすることなく、処理を上記ステップＳ２０２に移行する。
【００４５】
一方、上記ステップＳ２０４の判定で比較対象ユーザの実行パターンが一括実行パターンであると判定した場合（ステップＳ２０４；ＹＥＳ）に、割当ユーザ決定部１２は、比較対象ユーザの実行パターン情報に基づいて、比較対象ユーザが保有する未実行の所定タスク数が、閾値よりも大きいか否かを判定する（ステップＳ２０５）。この判定がＹＥＳである場合（ステップＳ２０５；ＹＥＳ）には、比較対象ユーザの実行パターンは一括実行パターンであり、一括してタスクを実行する際の閾値を超えた未実行の所定タスクが残存していることになるため、何らかの理由によりタスクを実行できる状態ではないと判断することができる。したがって、この場合には、比較対象ユーザを所定タスクの割り当て候補にすることなく、処理を上記ステップＳ２０２に移行する。
【００４６】
一方、上記ステップＳ２０５の判定で比較対象ユーザが保有する未実行の所定タスク数が、閾値以下であると判定した場合（ステップＳ２０５；ＮＯ）には、比較対象ユーザは所定タスクの割り当て数が閾値を超えるまでは所定タスクを実行しないと考えられるため、比較対象ユーザは所定タスクを実行できる状態にあると判断することができる。
【００４７】
続いて、割当ユーザ決定部１２は、比較対象ユーザの実行パターン情報および割り当て候補ユーザの実行パターン情報に基づいて、比較対象ユーザの単位時間内のタスク実行数が、割り当て候補ユーザの単位時間内のタスク実行数よりも少ないか否かを判定する（ステップＳ２０６）。この判定がＮＯである場合（ステップＳ２０６；ＮＯ）には、割り当て候補ユーザよりも比較対象ユーザの方がタスクを実行する余裕がないと判断できるため、比較対象ユーザを所定タスクの割り当て候補にすることなく、処理を上記ステップＳ２０２に移行する。
【００４８】
一方、上記ステップＳ２０６の判定で比較対象ユーザの単位時間内のタスク実行数が割り当て候補ユーザの単位時間内のタスク実行数よりも少ないと判定した場合（ステップＳ２０６；ＹＥＳ）には、割り当て候補ユーザよりも比較対象ユーザの方がタスクを実行する余裕があると判断できるため、割当ユーザ決定部１２は、比較対象ユーザを割り当て候補ユーザに変更する（ステップＳ２０７）。
【００４９】
続いて、割当ユーザ決定部１２は、全ユーザ間の比較が終了したか否かを判定する（ステップＳ２０８）。この判定がＮＯである場合（ステップＳ２０８；ＮＯ）には、次のユーザを比較対象ユーザにするために、処理を上記ステップＳ２０２に移行する。
【００５０】
一方、上記ステップＳ２０８の判定で全ユーザ間の比較が終了したと判定した場合（ステップＳ２０８；ＹＥＳ）に、割当ユーザ決定部１２は、その時点における割り当て候補ユーザを、所定タスクを割り当てるユーザに決定する（ステップＳ２０９）。
【００５１】
上述したように、実施形態におけるワークフロー管理システム１によれば、ユーザが実行するタスクごとに、タスクを実行する際の実行パターンを設定し、未割当の所定タスクが発生したときに、設定した実行パターンと、未実行の所定タスク数とに基づいて、未割当の所定タスクを割り当てるユーザを決定することができる。これにより、タスクの割り当て数の偏りを解消することができる。
【００５２】
具体的には、ユーザが実行するタスクごとに、タスクを実行したときに未実行で残存していたタスク数を用いて平均残存タスク数を算出し、この平均残存タスク数に基づいて、ユーザのタスクごとの実行パターンを、一括実行パターンまたは逐次実行パターンのいずれかに設定することができる。
【００５３】
また、ユーザの実行パターンが一括実行パターンである場合には、未実行の所定タスク数が、過去に所定タスクを実行したときに未実行で残存していたタスク数に応じて定められる閾値よりも少ないときに、このユーザを所定タスクの割り当て候補にすることができる。一方、ユーザの実行パターンが逐次実行パターンである場合には、未実行の所定タスクを保有していないときに、このユーザを所定タスクの割り当て候補にすることができる。
【００５４】
さらに、所定タスクの割り当て候補にしたユーザのうち、単位時間内に実行したタスク数が最も少ないユーザに対して、所定タスクを割り当てることができる。
【００５５】
[変形例]
なお、上述した実施形態は、単なる例示に過ぎず、各実施形態に明示していない種々の変形や技術の適用を排除するものではない。すなわち、本発明は、その趣旨を逸脱しない範囲で様々な形態に変形して実施することができる。
【００５６】
例えば、上述した実施形態では、実行パターンデータベース２２を備えているが、必ずしも実行パターンデータベース２２を備える必要はない。例えば、割当ユーザ決定部１２が、比較対象ユーザの実行パターンを判定する際に、実行パターン設定部１１が、実行履歴データベース２１に格納されている実行履歴情報に基づいて、比較対象ユーザの実行パターンを設定することとしてもよい。これにより、タスクを割り当てるユーザを決定する際に、最新の実行履歴情報に基づいて実行パターンを設定することができる。したがって、直近の実情を反映した実行パターンに基づいてタスクを割り当てることが可能となる。
【００５７】
また、上述した実施形態ではサーバ装置１０とＤＢ装置２０とでワークフロー管理システムを構成しているが、本発明は、ＤＢ装置２０のデータベースを組み込んだサーバ装置１０でワークフロー管理システムを構成してもよいし、サーバ装置１０およびＤＢ装置２０が有する各構成要素を分散して備える複数の装置群でワークフロー管理システムを構成してもよい。要するに、上述した実施形態におけるワークフロー管理システムのサーバ装置１０およびＤＢ装置２０と同様に機能することができればよい。
【００５８】
最後に、上記の実施形態の一部または全部は、以下の付記のようにも記載され得るが、本発明を以下に限定するものではない。
【００５９】
（付記１）  ワークフローに含まれるタスクを実行するユーザの識別情報ごとに、少なくとも、前記タスクの識別情報、前記タスクを前記ユーザに割り当てた割当時刻、および前記ユーザが前記タスクを実行した実行時刻を含む実行履歴情報を記憶する記憶部と、未割当の前記タスクをいずれかの前記ユーザに割り当てる前に、当該未割当の前記タスクを割り当てる際の割り当て対象となる前記ユーザを、前記実行履歴情報に基づいて、前記タスクを実行する際の実行パターンとして予め定められた複数の実行パターンのいずれかに設定する実行パターン設定部と、前記割り当て対象となる前記ユーザに設定された前記実行パターン、および前記割り当て対象となる前記ユーザが保有する未実行の前記タスクの数を用いて、前記割り当て対象となる前記ユーザの中から、前記未割当の前記タスクを割り当てる前記ユーザを決定する割当ユーザ決定部と、を備えることを特徴とするワークフロー管理システム。
【００６０】
（付記２）  前記実行パターンは、複数の前記タスクが割り当てられてから前記タスクを実行する第一の実行パターン、および前記タスクが割り当てられるたびに前記タスクを実行する第二の実行パターンを含むことを特徴とする付記１記載のワークフロー管理システム。
【００６１】
（付記３）  前記実行パターン設定部は、前記タスクを実行したときに未実行で残存していた前記タスクの数を用いて平均残存タスク数を算出し、当該平均残存タスク数に基づいて、前記割り当て対象となる前記ユーザを、前記第一の実行パターンまたは前記第二の実行パターンのいずれかに設定することを特徴とする付記２記載のワークフロー管理システム。
【００６２】
（付記４）  前記割当ユーザ決定部は、前記第一の実行パターンに設定された前記ユーザが保有する未実行の前記タスクの数が、過去に前記タスクを実行したときに未実行で残存していた前記タスクの数に応じて定められる所定閾値よりも少ない場合に、当該ユーザを、前記未割当の前記タスクを割り当てる候補にすることを特徴とする付記２または３記載のワークフロー管理システム。
【００６３】
（付記５）  前記割当ユーザ決定部は、前記第二の実行パターンに設定された前記ユーザが、未実行の前記タスクを保有していない場合に、当該ユーザを、前記未割当の前記タスクを割り当てる候補にすることを特徴とする付記４記載のワークフロー管理システム。
【００６４】
（付記６）  前記割当ユーザ決定部は、未割当の前記タスクを割り当てる候補にした前記ユーザのうち、単位時間内に実行した前記タスクの数が最も少ない前記ユーザに、前記未割当の前記タスクを割り当てることを特徴とする付記５記載のワークフロー管理システム。
【００６５】
（付記７）  ワークフローに含まれるタスクを実行するユーザの識別情報ごとに、少なくとも、前記タスクの識別情報、前記タスクを前記ユーザに割り当てた割当時刻、および前記ユーザが前記タスクを実行した実行時刻を含む実行履歴情報を記憶する記憶部を備えるワークフロー管理システムにおいて実行されるワークフロー管理方法であって、未割当の前記タスクをいずれかの前記ユーザに割り当てる前に、当該未割当の前記タスクを割り当てる際の割り当て対象となる前記ユーザを、前記実行履歴情報に基づいて、前記タスクを実行する際の実行パターンとして予め定められた複数の実行パターンのいずれかに設定する実行パターン設定ステップと、前記割り当て対象となる前記ユーザに設定された前記実行パターン、および前記割り当て対象となる前記ユーザが保有する未実行の前記タスクの数を用いて、前記割り当て対象となる前記ユーザの中から、前記未割当の前記タスクを割り当てる前記ユーザを決定する割当ユーザ決定ステップと、を含むことを特徴とするワークフロー管理方法。
【００６６】
（付記８）  付記７に記載の各ステップをコンピュータに実行させるためのワークフロー管理プログラム。
【符号の説明】
【００６７】
１…ワークフロー管理システム、１０…サーバ装置、１１…実行パターン設定部、１２…割当ユーザ決定部、１３…ワークフロー制御部、２０…ＤＢ装置、２１…実行履歴データベース、２２…実行パターンデータベース、３０…ユーザ端末。
【図１】
2011232788.tif 000003
【図２】
2011232788.tif 000004
【図３】
2011232788.tif 000005
【図４】
2011232788.tif 000006
【図５】
2011232788.tif 000007
【図６】
2011232788.tif 000008