(57)【要約】【課題】  ワークフローシステムでは、一般的にプロセスをグラフィカルに定義するためのツール（プロセス定義ツール）が存在する。定義されたプロセスは妥当であるかどうかのチェックが行われ、各アクティビティが結線されていない、あるいは、条件分岐の設定が不適切である等の問題があるとエラーとなる。ユーザは、エラーが発生しないように結線を行う等の手間がかかっていた。【解決手段】  業務の流れをルール化するワークフローを定義するプログラムであって、  ワークフローの個々の作業を定義する手段と、  前記個々の作業を結線する手段と、前記ワークフローの条件分岐を定義する手段と、  前記条件分岐において分岐するための条件を定義する手段と、  前記ワークフローの定義をグラフィカルに表示する手段を持つことを特徴とする。【選択図】  図３
2009020821.tif 000002
【特許請求の範囲】
【請求項１】
業務の流れをルール化するワークフローを定義するプログラムであって、
ワークフローの個々の作業を定義する手段と、
前記個々の作業を結線する手段と、
前記ワークフローの条件分岐を定義する手段と、
前記条件分岐において分岐するための条件を定義する手段と、
前記ワークフローの定義をグラフィカルに表示する手段を持つことを特徴とするワークフロー定義プログラム。
【請求項２】
請求項１において、条件分岐における分岐先の作業を追加することによって、
既存の遷移が持つ分岐条件の範囲に含まれない分岐条件の範囲を持つ遷移を作成する手段と、
前記作成した遷移と追加した作業とを結線する手段を持つことを特徴とするワークフロー定義プログラム。
【請求項３】
請求項２において、既存の遷移が持つ分岐条件の範囲に含まれない分岐条件の範囲が存在しない場合、
遷移が作成されないことを特徴とするワークフロー定義プログラム。
【請求項４】
請求項２において、追加した作業の位置に応じて、分岐条件の範囲を算出することを特徴とするワークフロー定義プログラム。
【請求項５】
請求項１において、既存の遷移に対して分岐条件を設定することによって、
前記設定した分岐条件および既存の遷移が持つ分岐条件の範囲に含まれない分岐条件の範囲を持つ遷移を作成する手段と、
作成した遷移に作業を追加する手段と、
前記作成した遷移と追加した作業とを結線する手段を持つことを特徴とするワークフロー定義プログラム。
【請求項６】
請求項５において、設定した分岐条件および既存の遷移が持つ分岐条件の範囲に含まれない分岐条件の範囲が存在しない場合、
遷移が作成されないことを特徴とするワークフロー定義プログラム。
【請求項７】
請求項１において、既存の遷移に対して分岐条件を設定することによって、前記設定した分岐条件および既存の遷移が持つ分岐条件の範囲に含まれない分岐条件の範囲を持つ遷移を作成するか否かを設定する手段を持つことを特徴とするワークフロー定義プログラム。
【請求項８】
請求項１において、単一の遷移における作業対して条件分岐における分岐先の作業を追加することによって、
条件分岐を作成する手段と、
前記単一の遷移における作業と追加した作業を条件分岐として識別する手段と、
条件分岐と前記単一の遷移における作業と追加した作業とを結線することを特徴とするワークフロー定義プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、例えば稟議フローや業務フローといった、様々な作業フローを定義するためのプログラムに関する。
【背景技術】
【０００２】
企業の複数の部門や人が関わる業務の流れをルール化し、そのルールを基にコンピュータネットワーク上で業務処理や業務支援を行う仕組みをワークフローシステムという。
【０００３】
ワークフローシステムを使うことで、企業で扱う文書の稟議や交通費精算など、企業内の各部門やメンバー間を巡回していた書類が電子化され、効率的に処理することが可能となる。 ワークフローシステムでは、予め、作業フローを定義することによって、作業の流れを自動化する。例えば文書の稟議などでは、承認ルートを予め作成し、文書を電子化することで、承認ルートに沿った承認フローをシステム上で実行することが可能となる。
【０００４】
ワークフローシステムには、一般的に次のような効果があるとされている。
【０００５】
一連の作業フローを定義することにより、作業の流れや担当者（誰が、何を、いつ行うのか）が明確になる。コンピュータネットワークを用い作業フローを自動化することで、作業の効率化を図ることができる。データを電子化し一元管理することで、入力の手間や入力ミスを減少することができ、また、データの保管と管理を自動化することができる。作業フローを記録することで、業務分析や業務改善のためのデータを得ることができる。
【０００６】
一般的に、ワークフローシステムには、作業フローの具体的なプロセスをグラフィカルに定義するためのプログラム（プロセス定義ツール）が存在する。企業の業務フローを定義する管理者は、プロセス定義ツールを用いることによって、個々の業務に則した作業フローを柔軟に定義することができる。
【０００７】
また、プロセス定義ツールには、定義された作業フローのプロセスが妥当であるかどうかをチェックする機能がある。例えば、各作業が結線されていない、あるいは、条件分岐の設定が不適切である等の問題があるとエラーとなる。
【０００８】
従来例としては、ワークフローサーバおよびクライアント端末でプロセスの各作業をコンポーネント化しておき、コピー（流用）することができるようにするものがある（特許文献１参照）。
【特許文献１】特開２００１−１４３８９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００９】
上述したような多くのワークフローシステムでは、ワークフローの遷移を条件分岐させることができる。例えば承認フローで、稟議書の金額に応じて決裁権の異なったルートを選択する、といったケースが考えられる。条件分岐の定義は、当然、プロセス定義ツールで柔軟に設定することができる。しかし、これらの条件分岐設定は適切に行わないと、妥当性のチェックでエラーとなってしまう。作業フローを定義する担当者には、エラーが発生しないように結線を行い、分岐する遷移のそれぞれに条件を設定する手間がかかる。
【００１０】
本発明は、作業フローにおける条件分岐の設定手法に関して、設定の手間を減らすことでフロー定義作業の効率化を可能とし、デフォルト値などの自動設定によって設定漏れやフローの不整合を減らすことを可能とした操作手法、及びプログラムを提供することにある。
【課題を解決するための手段】
【００１１】
上述の目的を達成するために、本発明のワークフローを定義するプログラムは、業務の流れをルール化するワークフローを定義するプログラムであって、ワークフローの個々の作業を定義する手段と、前記個々の作業を結線する手段と、前記ワークフローの条件分岐を定義する手段と、前記条件分岐において分岐するための条件を定義する手段と、前記ワークフローの定義をグラフィカルに表示する手段とを備え、
条件分岐における分岐先の作業を追加することによって、既存の遷移が持つ分岐条件の範囲に含まれない分岐条件の範囲を持つ遷移を作成する手段と、前記作成した遷移と追加した作業とを結線する手段を持つことを特徴とする。
【発明の効果】
【００１２】
本発明により、作業フローを定義する際の条件分岐の設定手法に関して、設定の手間が減ることで作業の効率化をはかることができ、設定漏れやフローの不整合を減らすことができる。
【発明を実施するための最良の形態】
【００１３】
以下、本発明の実施の形態を図面に基づき説明する。
【００１４】
図１は、作業フローの具体的なプロセスをグラフィカルに定義するためのプログラム（以下、プロセス定義ツールと略称）の動作環境を示す構成図である。
【００１５】
１０１はプロセス定義ツールを動作させるための装置である。１０２は、プロセス定義ツールのモジュール（以下、プロセス定義モジュールと略称）である。
【００１６】
図２は、プロセス定義ツールを動作させるための装置１０１の構成例を示すブロック図である。図２において、装置１０１は、システムバス１、ＣＰＵ２、プログラムメモリ（以下ＰＭＥＭと略称）３、外部記憶制御部４、入力制御部１０、キーボード１１、ポインティングデバイス１２、ビデオイメージメモリ（以下ＶＲＡＭと略称）７、表示出力制御部８、ＣＲＴディスプレイ（以下ＣＲＴと略称）９を備えている。
【００１７】
上記各構成要素はシステムバス１に接続されている。ＣＰＵ２は、システムバス１を介して各構成要素を制御する中央処理装置であり、ＲＯＭ（不図示）に格納された制御プログラムに基づきプロセス定義モジュール１０２を実行する。ＰＭＥＭ３は、条件分岐処理を実行するための制御プログラムを適宜ＲＯＭから選択して読み込むためのメモリである。また、キーボード１１から入力されたデータはテキストメモリでもあるＰＭＥＭ３にコード情報として格納される。
【００１８】
外部記憶制御部４は、外部記憶装置（本実施例ではハードディスクとフロッピー（登録商標）ディスク）に対するデータの書き込み／読み出しを制御する。ハードディスク（以下ＨＤと略称）５は、データファイル用の外部記憶装置である。フロッピー（登録商標）ディスク（以下ＦＤと略称）６は、データファイル用の外部記憶装置である。
【００１９】
入力制御部１０には、キーボード１１、ポインティングデバイス１２等の入力装置が接続される。操作者はキーボード１１を操作することによりシステムに対する動作指令等を行う。ポインティングデバイス１２は、操作者がＣＲＴ９上で画像情報の加工を指示するためのものであり、本実施の形態ではマウスを使用している（以下マウス１２と称する）。操作者はマウス１２により、ＣＲＴ９上のカーソルをＸ方向／Ｙ方向へ任意に移動させ、コマンドメニュー上のコマンドアイコンを選択して処理の指示を行うほか、編集対象の指示や描画位置の指示等も行う。
【００２０】
ＶＲＡＭ７は、ＣＲＴ９に表示する文字データや図形データがビットマップデータとして展開されるメモリである。表示出力制御部８は、ＣＲＴ９に対する表示を制御する。ＣＲＴ９は、後述の図３〜図９に示す各種画面等を表示する表示手段である。尚、表示方式はＣＲＴに限定されず、液晶などでもよい。
【００２１】
尚、本実施の形態では、プロセス定義モジュール１０２を上記ＲＯＭ（不図示）に格納する構成としているが、ＨＤ５やＦＤ６に格納する構成としても、或いはネットワーク上に接続されている他の装置上に格納する構成としてもよい。また、プロセス定義モジュールは、記憶媒体やネットワークを介して他のシステムや他の装置に供給することができる。
【００２２】
図３は、プロセス定義ツール上で、作業フローにおける条件分岐の遷移を追加する機能を表した図である。
【００２３】
３０１はプロセス定義ツールの表示画面である。ツールボタン３０２ａは作業フローの独立した作業単位（以下、アクティビティと呼ぶ）を配置するためのボタンである。ツールボタン３０２ｂはアクティビティを結合する遷移線（以下、トランジションと呼ぶ）を描画するためのボタンである。作業フローは、アクティビティを配置し、アクティビティ同士を結線してゆくことで定義されてゆく。
【００２４】
３０３、３０５、３０６はアクティビティであり、３０３は申請作業を示すアクティビティ、３０５は条件分岐を示すアクティビティ、３０６は承認作業を示すアクティビティである。３０４、３０７はトランジションを表し、条件分岐アクティビティ３０５から遷移するトランジション３０７には、分岐するための条件３０８が設定されている。
【００２５】
３０３、３０４、３０５、３０６、３０７、３０８が配置もしくは設定されている状態から、アクティビティツールボタン３０２ａを選択して、条件分岐アクティビティ３０５上でマウス１２をクリックし、右下に向かってマウスをドラッグして、アクティビティ３０９を作成する。この一操作で、同時にトランジション３１０が作成されると共に、トランジション３１０の分岐条件３１１が設定される。分岐条件３１１の値は、分岐条件３０８が含まない範囲となる。
【００２６】
なお、上記の操作方法は一例であり、アクティビティ３０９、トランジション３１０を作成する操作方法は、上記の操作方法に限らない。分岐条件３１１の値は、同じ条件分岐アクティビティから遷移している他のトランジションの分岐条件を元に算出される値であり、上記の値に限らない。また、算出される値が定まらない場合は、値を設定しないことも可能である。
【００２７】
図４は、プロセス定義ツール上で、作業フローにおける条件分岐の遷移を追加するときに、追加する位置に応じて分岐条件の設定内容が変更される機能を表した図である。
【００２８】
４０３、４０５、４０６はアクティビティであり、４０３は申請作業を示すアクティビティ、４０５は条件分岐を示すアクティビティ、４０６は承認作業を示すアクティビティである。４０４、４０７はトランジションを表し、条件分岐アクティビティ４０５から遷移するトランジション４０７には、分岐するための条件４０８が設定されている。
【００２９】
４０３、４０４、４０５、４０６、４０７、４０８が配置もしくは設定されている状態から、アクティビティツールボタン３０２ａを選択して、条件分岐アクティビティ３０５上でマウス１２をクリックし、右上に向かってマウスをドラッグして、アクティビティ４０９を作成する。この操作で、同時にトランジション４１０が作成されると共に、トランジション４１０の分岐条件４１１が設定される。分岐条件４１１の値は、分岐条件４０８よりも小さい範囲において、分岐条件４０８と重複しない範囲が設定される。
【００３０】
また、４０３、４０４、４０５、４０６、４０７、４０８が配置もしくは設定されている状態から、アクティビティツールボタン３０２ａを選択して、条件分岐アクティビティ３０５上でマウス１２をクリックし、右下に向かってマウスをドラッグして、アクティビティ４１２を作成する。この一操作で、同時にトランジション４１３が作成されると共に、トランジション４１３の分岐条件４１４が設定される。分岐条件４１４の値は、分岐条件４０８よりも大きい範囲において、分岐条件４０８と重複しない範囲が設定される。
【００３１】
図５は、プロセス定義ツール上で、作業フローにおける条件分岐の遷移を追加するときに、追加する位置に応じて分岐条件の設定内容が変更される機能を表した図である。
【００３２】
５０３、５０５、５０６、５０９はアクティビティであり、５０３は申請作業を示すアクティビティ、５０５は条件分岐を示すアクティビティ、５０６および５０９は承認作業を示すアクティビティである。５０４、５０７、５１０はトランジションを表し、条件分岐アクティビティ５０５から遷移するトランジション５０７には、分岐するための条件５０８が設定されており、同じく条件分岐アクティビティ５０５から遷移するトランジション５１０には、分岐するための条件５１１が設定されている。
【００３３】
５０３、５０４、５０５、５０６、５０７、５０８、５０９、５１０、５１１が配置もしくは設定されている状態から、アクティビティツールボタン３０２ａを選択して、条件分岐アクティビティ５０５上でマウス１２をクリックし、マウスをドラッグして、アクティビティ５０６とアクティビティ５０９の間にアクティビティ５１２を作成する。この一操作で、同時にトランジション５１３が作成されると共に、トランジション５１３の分岐条件５１４が設定される。分岐条件５１４の値は、分岐条件５０８と分岐条件５１１の中間において、分岐条件５０８と分岐条件５１１と重複しない範囲が設定される。
【００３４】
即ち、図４および図５の例は、既存アクティビティと追加するアクティビティの位置関係が、既存アクティビティの分岐条件と追加するアクティビティの分岐条件に関連する、というものである。
【００３５】
なお、上記の操作方法は一例であり、アクティビティ４０９とトランジション４１０、および、アクティビティ４１２とトランジション４１３、および、アクティビティ５１２とトランジション５１３を作成する操作方法は、上記の操作方法に限らない。分岐条件４１１、４１４、および５１４の値は、既存アクティビティと追加するアクティビティの位置関係を元に算出される値であり、上記の値に限らない。また、算出される値が定まらない場合は、値を設定しない場合もありうる。
【００３６】
図６は、プロセス定義ツール上で、作業フローにおいて、一方の分岐条件設定時に条件分岐の遷移を追加する機能を表した図である。
【００３７】
６０３、６０５、６０６はアクティビティであり、６０３は申請作業を示すアクティビティ、６０５は条件分岐を示すアクティビティ、６０６は承認作業を示すアクティビティである。６０４、６０７はトランジションを表す。３０３、３０４、３０５、３０６、３０７が配置されている状態から、トランジション６０７の分岐条件として、６０８を設定する。この一操作で、同時にアクティビティ６０９、トランジション６１０が作成されると共に、トランジション６１０の分岐条件６１１が設定される。分岐条件６１１の値は、分岐条件６０８が含まない範囲となる。
【００３８】
なお、上記の操作方法は一例であり、アクティビティ６０９、トランジション６１０を作成する操作方法は、上記の操作方法に限らない。分岐条件６１１の値は、同じ条件分岐アクティビティから遷移している他のトランジションの分岐条件を元に算出される値であり、上記の値に限らない。また、算出される値が定まらない場合は、値を設定しない場合もありうる。
【００３９】
図６で表す機能は、図３で表す機能と構成が同じであるが、新たな条件分岐の遷移が追加されるきっかけとなる操作が異なっている。図６で表すの機能が有効になっている場合、図３で説明される状態が発生する以前に条件分岐の遷移が追加されるため、図３で説明される状態は発生しないことになる。
【００４０】
図７は、条件分岐に関するチェックボックスを表す図である。チェックボックス７０１をチェックした状態で設定しておくと、図６において分岐条件６０８を設定したときに、条件６０８が含まない範囲へ遷移するためのアクティビティ６０９、トランジション６１０が作成され、分岐条件６１１が設定される。
【００４１】
チェックボックス７０１のチェックを外した状態に設定しておくと、図６において分岐条件６０８を設定したときに、自動でアクティビティ６０９、トランジション６１０が作成されない。この場合、図３における、３０３、３０４、３０５、３０６、３０７、３０８が配置もしくは設定されている状態になる。
【００４２】
図８および図９は、プロセス定義ツール上で、作業フローにおいて、一方向の遷移から条件分岐を追加する機能を表した図である。
【００４３】
８０３、８０４はアクティビティであり、８０３は申請作業を示すアクティビティ、８０４は承認作業を示すアクティビティである。８０５はトランジションを表す。
【００４４】
８０３、８０４、８０５が配置されている状態から、アクティビティツールボタン３０２ａを選択して、アクティビティ８０４上でマウス１２をクリックし、下に向かってマウスをドラッグする。この操作で作成されるオブジェトを表した図が図９である。
【００４５】
図９のアクティビティ９０６は、図８において、アクティビティツールボタン３０２ａを選択して、アクティビティ８０４上でマウス１２をクリックし、下に向かってマウスをドラッグしたことによって作成される。この操作は、アクティビティ９０６を作成すると共に、アクティビティ９０６がアクティビティ８０４と関連を持つことを意味する操作である。この操作と同時に、トランジション８０５は削除され、アクティビティ９０６とアクティビティ８０４とに分岐する条件分岐アクティビティ９０７が作成され、トランジション９０８、９０９、９１０が作成される。
【００４６】
なお、上記の操作方法は一例であり、条件分岐追加の操作方法は上記の操作方法に限らない。
【００４７】
［他の実施の形態］
上記実施の形態では、クライアントＰＣ側のみで処理を行う場合を例に挙げたが、これに限定されるものではなく、クライアントサーバシステムや、Ｗｅｂアプリケーションサーバと連携するシステムにおいて処理を行うことも可能である。
【００４８】
プロセス定義モジュール１０２は、装置１０１に直接インストールを行うプログラムだけでなく、ネットワークを経由してインストールされることや、ＪＡＶＡ（登録商標）アプレットやＡＣＴＩＶＥＸ（登録商標）コントロール等、インターネットを介して自動的にインストールされ、Ｗｅｂブラウザ上で動作する形式のプログラムでもよい。
【００４９】
尚、装置１０１は、PCだけでなく、PDA等、プロセス定義モジュール１０２を動作、および、操作することが可能な装置であればよい。
【００５０】
また、本発明は、上述した実施の形態の機能を実現するソフトウェアのプログラムを記憶した記憶媒体をコンピュータまたはＣＰＵに供給し、そのコンピュータまたはＣＰＵが記憶媒体に記憶されたプログラムを読出して実行することによっても、達成することができる。この場合、記憶媒体から読出されたプログラムコード自体が上述した各実施の形態の機能を実現すると共に、そのプログラムコードを記憶した記憶媒体は本発明を構成する。プログラムコードを記憶する記憶媒体としては、例えば、ＲＯＭ、ＲＡＭ、ＮＶ−ＲＡＭ、フロッピー（登録商標）ディスク、ハードディスク、光ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＭＯ、ＣＤ−Ｒ、ＣＤ−ＲＷ、ＤＶＤ−ＲＯＭ、ＤＶＤ−ＲＡＭ、ＤＶＤ−ＲＷ、ＤＶＤ＋ＲＷ、磁気テープ、不揮発性のメモリ等がある。
【００５１】
また、上記プログラムは、プログラムコードを暗号化した上で格納したＣＤ−ＲＯＭ等の記憶媒体をユーザに配布し、所定の条件をクリアしたユーザに対し、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせ、その鍵情報を使用することにより暗号化されたプログラムコードを実行してコンピュータにインストールさせることによっても供給することができる。
【００５２】
上述した実施の形態の機能は、プログラムコードを複数のファイルに分割し、夫々のファイルを異なるホームページからダウンロードすることによっても実現することができる。即ち、本発明の機能処理をコンピュータで実現させるためのプログラムファイルを複数のユーザに対してダウンロードさせるＷＷＷサーバも、本発明を構成する。
【００５３】
また、上述した実施の形態の機能は、記憶媒体から読出されたプログラムが、コンピュータに挿入された機能拡張ボードまたはコンピュータに接続された機能拡張ユニットに備えられたメモリに書込まれた後、そのプログラムの指示に基づき、その機能拡張ボードまたは機能拡張ユニットに備えられたＣＰＵまたはＭＰＵ等が実際の処理の一部または全部を実行することによっても実現することができる。
【図面の簡単な説明】
【００５４】
【図１】ＰＣ上のモジュール構成図である。
【図２】ＰＣの構成例を示すブロック図である。
【図３】作業フローにおいて、条件分岐の遷移を追加する機能を表した図である。
【図４】作業フローにおいて、条件分岐の遷移を追加するときに、追加する位置に応じて分岐条件の設定内容が変更される機能を表した図である。
【図５】作業フローにおいて、条件分岐の遷移を追加するときに、追加する位置に応じて分岐条件の設定内容が変更される機能を表した図である。
【図６】作業フローにおいて、一方の分岐条件設定時に条件分岐の遷移を追加する機能を表した図である。
【図７】作業フローにおいて、条件分岐の設定に関するチェックボックスを表した図である。
【図８】作業フローにおいて、一方向の遷移から条件分岐を追加する機能を表した図である。
【図９】作業フローにおいて、一方向の遷移から条件分岐を追加する機能を表した図である。
【図１】
2009020821.tif 000003
【図２】
2009020821.tif 000004
【図３】
2009020821.tif 000005
【図４】
2009020821.tif 000006
【図５】
2009020821.tif 000007
【図６】
2009020821.tif 000008
【図７】
2009020821.tif 000009
【図８】
2009020821.tif 000010
【図９】
2009020821.tif 000011