(57)【要約】【課題】ワークフローシステムにおける、該ワークフローの流れの分岐点での遷移先を決める際の自由度をより広く設定することである。【解決手段】ワークフロー管理装置１内の分岐制御装置は、ワークフローの流れの分岐点での遷移先を制御する。そして、アクティビティ間のルーティング情報などの各種制御情報に基づき検出された前記分岐点に対して、アクティビティから端末装置に入力される入力データと、前記入力データに基づいて行われた作業結果を示すデータであり、前記端末装置から前記アクティビティに出力される出力データとの少なくとも１つに基づく条件の成否に基づいて、前記遷移先を決定する。【選択図】　　　図１
2004126682.tif 000002
【特許請求の範囲】
【請求項１】
複数のアクティビティによって構成され、各前記アクティビティについて必要な作業を各端末装置で実行するに際して、前記作業の実行を支援するワークフローにおける、該ワークフローの流れの分岐点での遷移先を制御する分岐制御装置において、
アクティビティ間のルーティング情報などの各種制御情報に基づき検出された前記分岐点に対して、アクティビティから端末装置に入力される入力データと、前記入力データに基づいて行われた作業結果を示すデータであり、前記端末装置から前記アクティビティに出力される出力データとの少なくとも１つに基づく条件の成否に基づいて、前記遷移先を決定する決定手段を備えることを特徴とする分岐制御装置。
【請求項２】
複数のアクティビティによって構成され、各前記アクティビティについて必要な作業を各端末装置で実行するに際して、前記作業の実行を支援するワークフローにおける、該ワークフローの管理を行う管理装置において、
アクティビティ間のルーティング情報などの各種制御情報に基づき検出された前記分岐点に対して、アクティビティから端末装置に入力される入力データと、前記入力データに基づいて行われた作業結果を示すデータであり、前記端末装置から前記アクティビティに出力される出力データとの少なくとも１つに基づく条件の成否に基づいて、前記遷移先を決定する第１の決定手段と、
前記アクティビティに対して、前記ワークフローの流れにおける遷移先を、前記出力データ、または前記各種制御情報の少なくとも１つに基づいて決定する第２の決定手段と、
前記第１、または第２の決定手段により決定された遷移先に前記入力データを送信する送信手段とを備えることを特徴とするワークフロー管理装置。
【請求項３】
複数のアクティビティによって構成され、各前記アクティビティについて必要な作業を各端末装置で実行するに際して、前記作業の実行を支援するワークフローにおける、該ワークフローの流れの分岐点での遷移先を制御する分岐制御装置が行う分岐制御の方法において、
アクティビティ間のルーティング情報などの各種制御情報に基づき検出された前記分岐点に対して、アクティビティから端末装置に入力される入力データと、前記入力データに基づいて行われた作業結果を示すデータであり、前記端末装置から前記アクティビティに出力される出力データとの少なくとも１つに基づく条件の成否に基づいて、前記遷移先を決定することを特徴とする分岐制御方法。
【請求項４】
複数のアクティビティによって構成され、各前記アクティビティについて必要な作業を各端末装置で実行するに際して、前記作業の実行を支援するワークフローにおける、該ワークフローの流れの分岐点での遷移先を制御する処理を分岐制御装置に行わせる分岐制御のプログラムにおいて、
アクティビティ間のルーティング情報などの各種制御情報に基づき検出された前記分岐点に対して、アクティビティから端末装置に入力される入力データと、前記入力データに基づいて行われた作業結果を示すデータであり、前記端末装置から前記アクティビティに出力される出力データとの少なくとも１つに基づく条件の成否に基づいて、前記遷移先を決定する処理を含むことを特徴とする分岐制御プログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、アクティビティについて必要な作業を各端末装置で実行するに際して、前記作業の実行を支援するワークフローの分岐制御装置、およびワークフロー管理装置に関する。
【０００２】
【従来技術】
従来、稟議書の承認、交通費の精算などの会計管理、書類の回覧などの個々の業務を処理するシステムとして、ワークフローシステムが知られている。このシステムにおいては、ワークフローの構成要素であるアクティビティから端末に対しデータが入力され、その入力データに基づいて、端末のユーザは必要な作業を行い、その作業結果を示すデータが出力データとして端末からアクティビティに出力される。
【０００３】
既存のワークフローシステムとしては、以下に示すものがある。
まず、文献１のワークフローシステムでは、直前の業務アプリケーションの実行結果に基づいて次の業務アプリケーションの実行可否を決めている。
【０００４】
また、文献２のワークフロー支援システムでは、そのワークフローの流れの分岐点における遷移先を決める条件に、直前の端末の出力データが用いられている。
【０００５】
上記文献１、および文献２では、直前の端末での作業結果を示す上記出力データを用いて業務アプリケーションを起動するか否かを決めたり、または、遷移先の端末を決めたりしている。
【０００６】
【文献１】特開２００１−５１８３４「ワークフローシステムにおける動的アプリケーション起動方法及びシステム」
【０００７】
【文献２】特開２０００−２０７４７４「ワークフロー支援実行システム」
【０００８】
【発明が解決しようとする課題】
上記した従来のワークフローシステムでは、そのワークフローの流れの分岐点における遷移先を決めるための条件として、直前の端末での作業結果を示す上記出力データが用いられるのみであり、ワークフローシステムにおける分岐処理の自由度を制限していた。尚このことは、上記文献１、および文献２に共通している。
【０００９】
本発明の課題は、ワークフローシステムにおける、該ワークフローの流れの分岐点での遷移先を決める際の自由度をより広く設定可能なワークフローシステムの分岐制御装置、およびその分岐制御装置を用いたワークフロー管理装置を提供することである。
【００１０】
【課題を解決するための手段】
本発明は、上記課題を解決するため、下記のような構成を採用した。
すなわち、本発明の一態様によれば、本発明のワークフローの分岐制御装置は、複数のアクティビティによって構成され、各前記アクティビティについて必要な作業を各端末装置で実行するに際して、前記作業の実行を支援するワークフローにおける、該ワークフローの流れの分岐点での遷移先を制御する。そして、アクティビティ間のルーティング情報などの各種制御情報に基づき検出された前記分岐点に対して、アクティビティから端末装置に入力される入力データと、前記入力データに基づいて行われた作業結果を示すデータであり、前記端末装置から前記アクティビティに出力される出力データとの少なくとも１つに基づく条件の成否に基づいて、前記遷移先を決定する決定手段を備える構成である。
【００１１】
例えば、上記決定手段は、図６のＣＰＵ（中央処理装置）３０、ＲＡＭ３２の組み合わせに対応する。
ここで、上記決定手段は、出力データだけでなく、入力データも上記分岐点での遷移先を決める際の条件に用いることができ、該ワークフローの流れの分岐点での遷移先を決める際の自由度をより広く設定できる。
【００１２】
また、本発明の他の態様によれば、本発明のワークフロー管理装置は、複数のアクティビティによって構成され、各前記アクティビティについて必要な作業を各端末装置で実行するに際して、前記作業の実行を支援するワークフローにおける、該ワークフローの管理を行う。そして、アクティビティ間のルーティング情報などの各種制御情報に基づき検出された前記分岐点に対して、アクティビティから端末装置に入力される入力データと、前記入力データに基づいて行われた作業結果を示すデータであり、前記端末装置から前記アクティビティに出力される出力データとの少なくとも１つに基づく条件の成否に基づいて、前記遷移先を決定する第１の決定手段と、前記アクティビティに対して、前記ワークフローの流れにおける遷移先を、前記出力データ、または前記各種制御情報の少なくとも１つに基づいて決定する第２の決定手段と、前記第１、または第２の決定手段により決定された遷移先に前記入力データを送信する送信手段とを備える構成である。
【００１３】
例えば、上記第１、及び第２の決定手段は、図６のＣＰＵ（中央処理装置）３０、ＲＡＭ３２の組み合わせに対応する。
ここで、上記決定手段は、出力データだけでなく、入力データも上記分岐点での遷移先を決める際の条件に用いることができ、該ワークフローの流れの分岐点での遷移先を決める際の自由度をより広く設定できる。
【００１４】
尚、本発明のワークフローの分岐制御装置が行う処理や、その処理をワークフローの分岐制御装置に行わせるプログラムによっても上記した、該ワークフローの流れの分岐点での遷移先を決める際の自由度をより広く設定できることはいうまでもない。
【００１５】
【発明の実施形態】
以下、本発明の実施の形態を図面を参照しながら説明する。
本発明のワークフロー管理装置は、ワークフローの構成要素であるアクティビティから端末に対し入力される入力データと、その入力データに基づいて行われる作業の作業結果を示すデータであり、端末からアクティビティに出力される出力データとを上記端末のユーザ間で受け渡す処理を管理する装置である。特に、ワークフローの流れの分岐点における遷移先を決めるための条件の自由度を広く設定することを可能とするものである。
【００１６】
図１は本発明のワークフローシステムの構成図である。
図１に示すように、本発明のワークフローシステムは、ワークフロー管理装置１と、端末装置４−１〜４−４とがネットワーク５を介して接続されている。業務データベース２（以下、業務ＤＢと呼ぶ）は、ワークフロー管理装置１からアクセス可能で、端末装置４−１〜４−４のユーザが行う作業の結果を示すデータであり、該各端末装置からアクティビティに対し出力される出力データと、アクティビティから入力され端末装置４−１〜４−４を介してユーザに提示される入力データとを格納する。制御データベース３（以下、制御ＤＢと呼ぶ）は、ワークフロー管理装置１からアクセス可能で、アクティビティ間のルーティング情報、ワークフローの流れの分岐点における遷移先を決めるための条件を示す情報などの各種制御情報を格納する。尚、図１では端末装置は４個あるが、それ以外の数でもよい。
【００１７】
図２に業務ＤＢに格納される業務データ管理テーブル１０の一例を示す。
図２において、業務データ管理テーブル１０は、項目「業務データ名」と、その業務データ名の値を示す項目「値」とから成る。「業務データ名」には、ある業務に対し生成されたワークフローについて、そのワークフローを構成する全てのアクティビティで用いられる上記入力データと上記出力データとの全ての名称が列挙されている。「値」は「業務データ名」に対応する値であり、端末装置においてユーザが行う作業の結果として、または、必要に応じて、端末装置でプログラムなどが端末装置に行わせる処理の処理結果として得られる。そのような処理としては例えば、集計計算の計算結果などがある。
【００１８】
図３は制御ＤＢに格納されるデータの一部を示す図であり、（ａ）は条件式定義テーブルを、（ｂ）は遷移条件テーブルを、（ｃ）はより詳細な遷移条件テーブルを、それぞれ示している。
【００１９】
図３（ａ）において、条件式定義テーブル２１は、「遷移条件式名称」、「業務データ名」、「演算子」、「比較値」の各項目から成る。項目「遷移条件式名称」は、ワークフローの流れの分岐点における遷移先を決めるための条件式のＩＤを示しており、後述の遷移条件テーブルから参照される際に用いられる。また、項目「業務データ名」は、上記業務管理テーブル中の「業務データ名」と同じものである。また項目「比較値」は、項目「演算子」が示す演算子により、上記項目「業務データ名」と比較されるべき値を示している。尚、項目「演算子」として、≧，≦，＞，＜，＝などを用いることができる。
【００２０】
図３（ｂ）において、遷移条件テーブル２２は、「遷移元名称」「遷移条件式名称」「遷移先名称」の各項目から成る。項目「遷移元名称」は、遷移元のアクティビティの名称を示しており、同様に項目「遷移先名称」は、遷移先のアクティビティの名称を示している。尚、項目「遷移条件式名称」は、上記条件式定義テーブル中の「遷移条件式名称」と同じものである。
【００２１】
図３（ｃ）は、図３（ｂ）の遷移条件テーブル２２について、その構造をより詳細に示したものである。図３（ｃ）において、より詳細な遷移条件テーブル２２は項目として「遷移情報」「遷移条件式名称」がある。項目「遷移情報」はさらに「遷移元名称」「遷移先名称」の各項目から構成される。「遷移元名称」は、遷移元のアクティビティや、ワークフローの流れの分岐点での判断などの名称である。同様に「遷移先名称」は、遷移先のアクティビティや、ワークフローの流れの分岐点での判断などの名称である。
【００２２】
項目「遷移条件式名称」には、各列に、個々の遷移条件式名称が設定される。その列の数は、ワークフローにおいて、必要な判断の数に対応する。
図４に、遷移先を決定するための処理のフローチャートを示す。
【００２３】
図４において、端末装置から出力データを受信したワークフロー管理装置１は、遷移条件テーブルの遷移元名称を参照して、その遷移元名称が出力データを受信した端末装置に対応するアクティビティであるものを検出する。もし、そのアクティビティに対応する遷移先名称が「判断」でなければ、分岐点における遷移先を決定する処理は行なわない。一方、そのアクティビティに対応する遷移先名称として「判断」を検出した場合（Ｓ１０１）、分岐点における遷移先を決定する処理が行なわれる。
【００２４】
そして、遷移条件テーブル中の項目「遷移条件式名称」のすべての列を検索し、成否の情報が設定されている列を検出し（Ｓ１０２）、その列の遷移条件式名称を取得する（Ｓ１０３）。
【００２５】
そして、取得した遷移条件式名称に一致する遷移条件式名称に対応する遷移条件式を条件式定義テーブルから取得し（Ｓ１０４）、その遷移条件式中に用いられるデータを業務データ管理テーブルから取得する（Ｓ１０５）。そして、その遷移条件式の成否を判定し（Ｓ１０６）、その判定結果に対応する遷移先名称を遷移条件テーブルから取得する（Ｓ１０７）。
【００２６】
以下図５を用いて本発明のワークフローシステムの動作を説明する。
図５において、Ａｃｔ１、・・・、Ａｃｔ４はワークフローを構成する各アクティビティを示しており、図１の端末装置４−１〜４−４にそれぞれ対応している。
【００２７】
図５において、端末装置４−１のユーザは、作業を行い、その作業結果として、業務データ名がｄａｔａ１であるデータに対し、値として「２００」が入力され、アクティビティＡｃｔ１に対して出力される。すなわち、ワークフロー管理装置１に、ｄａｔａ１に設定された値「２００」が出力データとして送信される。この出力データを受信したワークフロー管理装置１では、その出力データを業務データ管理テーブル１０−１に記録・保持すると共に、図３（ｃ）の遷移条件テーブル２２の遷移元名称を参照して、その遷移元名称が「Ａｃｔ１」であるものに対応する遷移先名称として「Ａｃｔ２」を取得する。そして、ワークフロー管理装置１では、この取得した遷移先名称「Ａｃｔ２」に基づいて、そのアクティビティ「Ａｃｔ２」に対応する端末装置４−２に、業務データ管理テーブル１０−１に記録・保持されているｄａｔａ１を入力データとして送信する。
【００２８】
入力データｄａｔａ１を受信した端末装置４−２のユーザは、作業を行い、その作業結果として、ｄａｔａ２に値「ＡＡＡ」が入力され、このｄａｔａ２に設定された値「ＡＡＡ」が出力データとしてワークフロー管理装置１に送信される。この出力データを受信したワークフロー管理装置１では、その出力データを業務データ管理テーブル１０−２に記録・保持すると共に、図３（ｃ）の遷移条件テーブル２２の遷移元名称を参照して、その遷移元名称が「Ａｃｔ２」であるものに対応する遷移先名称として「判断」を取得する。
【００２９】
そして、遷移条件テーブル２２の項目「遷移条件式名称」のすべての列について検索を行い、「判断」に対応する成否の情報が設定されている列として１列目を検出し、その列の遷移条件式名称「１０１」を取得する。
【００３０】
ワークフロー管理装置１では、取得した遷移条件式名称「１０１」に一致する「遷移条件式名称」に対応する遷移条件式を図３（ａ）の条件式定義テーブル２１を検索して検出する。そして、業務データ管理テーブル１０−２からｄａｔａ１の値を取得して、この遷移条件式の成否を判定する。この場合、遷移条件式「ｄａｔａ１＞１００」は成立するので、この遷移条件式が成立したことを示す情報（＝１）に対応する遷移先名称の「Ａｃｔ４」が遷移先名称として取得される。尚、上記ｄａｔａ１は、「判断」で分岐先を決める条件式に用いられているが、このｄａｔａ１は「判断」の直前のＡｃｔ２で設定されたデータではなく、さらに上流のＡｃｔ１において設定されたデータである。本発明によれば、このように、上流の任意の位置において設定されたデータが後続の「判断」での分岐先を決める条件式に用いることができるので、ワークフローの流れの分岐点での遷移先を決める際の自由度をより広く設定できる。
【００３１】
そして、ワークフロー管理装置１では、この取得した遷移先名称「Ａｃｔ４」に基づいて、そのアクティビティ「Ａｃｔ４」に対応する端末装置４−４に、業務データ管理テーブル１０−２に記録・保持されているｄａｔａ１、ｄａｔａ２にそれぞれ設定された値を入力データとして送信する。
【００３２】
入力データｄａｔａ１、ｄａｔａ２を受信した端末装置４−４のユーザは、作業を行い、その作業結果として、ｄａｔａ３に値「３００」が入力され、このｄａｔａ３に設定された値「３００」が出力データとしてワークフロー管理装置１に送信される。
【００３３】
尚、アクティビティ「Ａｃｔ２」で、ワークフロー管理装置１が端末装置４−２に、業務データ管理テーブル１０−１に記録・保持されているｄａｔａ１を入力データとして送信しないという動作をする場合においても、「判断」で分岐先を決める手続きは同様に実行できる。この場合は、端末装置４−２のユーザはｄａｔａ１とは関係なく作業を行い、その作業結果として、ｄａｔａ２に値「ＡＡＡ」が入力され、このｄａｔａ２に設定された値「ＡＡＡ」が出力データとしてワークフロー管理装置１に送信される。この場合に、「判断」で分岐先を決める条件式に用いられているｄａｔａ１は「判断」の直前のＡｃｔ２の動作にはかかわりなく、さらに上流のＡｃｔ１において設定されたデータである。
【００３４】
尚、前記端末装置４−１〜４−４は、ワークフロー管理装置１に対し「問い合わせ」を行うようにしてもよい。そしてこの「問い合わせ」に対し、前記端末装置が遷移先のアクティビティに対応する端末装置である次端末装置であるか否かを判定し、且つ、前記端末装置が前記次端末装置である場合に前記端末装置に前記入力データを送信するようにしてもよい。
【００３５】
また、前記端末装置からの「問い合わせ」に対し、前記端末装置が前記次端末装置であるか否かを判定し、且つ、前記端末装置が前記次端末装置でない場合に前記端末装置に現在のアクティビティの遷移先名称に基づく進捗状況を示す情報を送信してもよい。
【００３６】
また、前記各端末装置は特定のアクティビティに対応しておらず、且つ、各アクティビティがユーザに対応しているようにしてもよい。そして、いずれかの端末にログインしたユーザに対応するアクティビティを判断して前記入力データを送信するようにしてもよい。
【００３７】
以上において、本発明のワークフローシステムについてその詳細を説明したが、このシステムを構成するワークフロー管理装置などは当然一般的なコンピュータシステムとして構成することが可能である。図６はそのようなコンピュータシステム、すなわち例としてのハードウエア環境の構成ブロック図である。
【００３８】
図６においてコンピュータシステムは中央処理装置（ＣＰＵ）３０、リードオンリメモリ（ＲＯＭ）３１、ランダムアクセスメモリ（ＲＡＭ）３２、通信インタフェース３３、記憶装置３４、入出力装置３５、可搬型記憶媒体の読み取り装置３６、およびこれらの全てが接続されたバス３７によって構成されている。
【００３９】
記憶装置３４としてはハードディスク、磁気ディスクなど様々な形式の記憶装置を使用することができ、このような記憶装置３４、またはＲＯＭ３１に図５などのフローチャートに示されたプログラムや、本実施形態のワークフローを管理するためのプログラムなどが格納され、そのようなプログラムがＣＰＵ３０によって実行されることにより、本実施形態におけるワークフローの分岐制御装置や、ワークフロー管理装置の実現が可能となる。
【００４０】
このようなプログラムは、プログラム提供者３８側からネットワーク３９、および通信インタフェース３３を介して、例えば記憶装置３４に格納されることも、また市販され、流通している可搬型記憶媒体４０に格納され、読み取り装置３６にセットされて、ＣＰＵ３０によって実行されることも可能である。可搬型記憶媒体４０としてはＣＤ−ＲＯＭ、フレキシブルディスク、光ディスク、光磁気ディスクなど様々な形式の記憶媒体を使用することができ、このような記憶媒体に格納されたプログラムが読み取り装置３６によって読み取られることにより、本実施形態におけるワークフロー管理装置における各種の処理が可能となる。
【００４１】
【発明の効果】
以上、説明したように、本発明によれば、ワークフローシステムにおける該ワークフローの流れの分岐点での遷移先を決める際の自由度をより広く設定できる。
【図面の簡単な説明】
【図１】本発明のワークフロー管理装置を含むワークフローシステムの概要構成図である。
【図２】業務ＤＢに格納される業務データ管理テーブルを示す図である。
【図３】制御ＤＢに格納されるデータの一部を示す図であり、（ａ）は条件式定義テーブルを、（ｂ）は遷移条件テーブルを、（ｃ）はより詳細な遷移条件テーブルを、それぞれ示す図である。
【図４】遷移先を決定するための処理のフローチャートである。
【図５】本発明のワークフロー管理装置を含むワークフローシステムの動作を説明する図である。
【図６】ワークフロー管理装置の一構成例である。
【符号の説明】
１　ワークフロー管理装置
２　業務データベース
３　制御データベース
４　端末装置
５　ネットワーク
１０　業務データ管理テーブル
２１　条件式定義テーブル
２２　遷移条件テーブル
３０　ＣＰＵ
３１　ＲＯＭ
３２　ＲＡＭ
３３　通信インターフェイス
３４　記憶装置
３５　入出力装置
３６　読み取り装置
３７　バス
３８　プログラム提供者
３９　ネットワーク
４０　可搬型記憶媒体
【図１】
2004126682.tif 000003
【図２】
2004126682.tif 000004
【図３】
2004126682.tif 000005
【図４】
2004126682.tif 000006
【図５】
2004126682.tif 000007
【図６】
2004126682.tif 000008