以下に添付図面を参照して、本発明に係るワークフロー設定装置、ワークフロー設定方法及びワークフロー設定プログラムの実施の形態を説明する。なお、以下の実施の形態により本発明が限定されるものではない。
[直列・並列承認]
図1は、ワークフローの承認ルートの設定において、直列で承認する場合と、並列して承認する場合の例を説明する図である。図1に示すように、直列で承認する場合(並列承認しない場合)は、例えば、申請者から、第1承認者(上位部署)、第2承認者(費用負担部署A)、第3承認者(費用負担部署B)、第4承認者(費用負担部署C)、最終承認者(経理部)の順に、承認者が設定される。例えば、直列で承認する承認ルートである場合は、最初の週に、費用負担部署Aの承認者が出張等により不在である場合、さらに、次の週に、費用負担部署Bの承認者が休暇により不在である場合、経理部の承認者に承認段階が移行するのは3週目になる。
また、並列して承認する場合(並列承認する場合)は、例えば、申請者から、第1承認グループ(上位部署)、第2承認グループ(費用負担部署A、費用負担部署B及び費用負担部署C)、最終承認グループ(経理部)の順に、承認者が設定される。例えば、並列して承認する承認ルートを含む場合は、最初の週に、費用負担部署Aの承認者が出張等により不在である場合、さらに、次の週に、費用負担部署Bの承認者が休暇により不在である場合、経理部の承認者に承認段階が移行するのは2週目になる。つまり、並列して承認するグループ(第2承認グループ)においては、承認可能な承認者から承認することができるため、最初の週に、費用負担部署B及び費用負担部署Cの承認者が承認を行ない、次の週に、費用負担部署Aの承認者が承認を行なうことになる。これらにより、経理部の承認者に承認段階が移行するのは2週目になる。
[構成]
次に、図2を用いて、実施の形態に係るワークフロー設定装置100の構成を説明する。図2は、実施の形態に係るワークフロー設定装置100の構成例を示すブロック図である。
ワークフロー設定装置100は、例えば、デスクトップ型パーソナルコンピュータである。なお、ワークフロー設定装置100は、デスクトップ型のパーソナルコンピュータのような据置型の情報処理装置に限られるものではなく、ノート型パーソナルコンピュータ、PDA(Personal Digital Assistants)、スマートフォン、タブレット型パーソナルコンピュータ等の携帯型の情報処理装置であっても良い。
図2に示すように、ワークフロー設定装置100は、記憶部110と、制御部120と、通信インタフェース部130と、入出力インタフェース部140とを有する。ワークフロー設定装置100に含まれる各部は、任意の通信路を介して通信可能に接続されている。
通信インタフェース部130は、ルータ等の通信装置と、専用線等の有線又は無線の通信回路とを介して、ワークフロー設定装置100をネットワーク1に通信可能に接続する。通信インタフェース部130は、他の装置と通信回線を介してデータ通信する機能を有する。ここで、ネットワーク1は、ワークフロー設定装置100と、サーバ200とを相互に通信可能に接続する機能を有し、例えばインターネットやLAN(Local Area Network)等である。
入出力インタフェース部140には、入力装置11及び出力装置12が接続される。出力装置12には、モニタ(家庭用テレビを含む)の他、スピーカやプリンタを用いることができる。入力装置11には、キーボード、マウス及びマイクの他、マウスと協働してポインティングデバイス機能を実現するモニタを用いることができる。
記憶部110には、各種のデータベース、テーブル及びファイル等が格納される。記憶部110には、OS(Operating System)と協働してCPU(Central Processing Unit)に命令を与えて各種処理を行なうためのコンピュータプログラムが記録される。記憶部110としては、例えば、RAM(Random Access Memory)やROM(Read Only Memory)等のメモリ装置、HDD(Hard Disk Drive)のような固定ディスク装置、フレキシブルディスク、光ディスク等を用いることができる。
記憶部110は、承認ルートマスタ111と、承認ルート分岐条件マスタ112と、部署マスタ113と、社員マスタ114と、所属マスタ115と、ルート割付マスタ116と、案件データ117と、案件ルートデータ118と、案件ルート承認者データ119とを有する。
承認ルートマスタ111は、承認ルートに関する情報を記憶する。具体的には、承認ルートマスタ111は、各承認ステップの配置位置、各承認ステップの名称や種別、承認部署(承認者)、次の承認ステップに移行するための決裁条件、分岐する承認ルートの存在有無、並列承認に関する情報を記憶する。なお、分岐する承認ルートの存在有無に関する情報は、「分岐条件有無情報」に対応する。
承認ルート分岐条件マスタ112は、承認ルートの分岐条件に関する情報を記憶する。具体的には、承認ルート分岐条件マスタ112は、分岐する承認ルートの承認ステップの配置位置、分岐条件、分岐条件に適合した場合の承認ステップの配置位置、分岐条件に適合しない場合の承認ステップの配置位置の情報を記憶する。なお、分岐条件に適合した場合の承認ステップの配置位置や、分岐条件に適合しない場合の承認ステップの配置位置の情報は、「移行位置情報」に対応する。
部署マスタ113は、部署に関する情報を記憶する。具体的には、部署マスタ113は、部署の部署名、社内における部署の階層、その部署に対する親部署の情報を記憶する。
社員マスタ114は、社員に関する情報を記憶する。具体的には、社員マスタ114は、社員を識別するための情報を記憶する。
所属マスタ115は、社員が所属する部署に関する情報を記憶する。具体的には、所属マスタ115は、社員と、社員が所属する部署との情報、さらに、ワークフローの承認を担当するか否かを示す情報を記憶する。
ルート割付マスタ116は、ある申請伝票に対するワークフローの承認ルートに関する情報を記憶する。具体的には、ルート割付マスタ116は、各種の申請伝票(例えば、経費申請や残業申請等)に対応するワークフローの承認ルート(承認ルートのパターン)を記憶する。ユーザは、ルート割付マスタ116に記憶された承認ルートを雛形として、承認ルートを設定することもできる。
案件データ117は、伝票の状態に関する情報を記憶する。具体的には、案件データ117は、ワークフローの伝票を識別する情報、該伝票の状態を示す情報、現在の承認段階の承認ステップを識別する情報を記憶する。
案件ルートデータ118は、伝票のルートに関する情報を記憶する。具体的には、案件ルートデータ118は、ワークフローの伝票を識別する情報、該伝票に含まれる各承認ステップの配置位置、各承認ステップを承認する部署、各承認ステップの種類(起票者、承認者又は最終承認者)、次の承認ステップに移行するための決裁条件、決裁の状態の情報を記憶する。
案件ルート承認者データ119は、ワークフローの承認ルートに含まれる承認ステップの承認者に関する情報を記憶する。具体的には、案件ルート承認者データ119は、ワークフローの伝票を識別する情報、該伝票に含まれる各承認ステップの配置位置、各承認ステップで承認を行なう承認者である社員を識別する情報、承認の状態の情報を記憶する。
なお、記憶部110に記憶された各情報については、処理の具体例において適宜説明する。また、記憶部110は、「記憶部」の一例であり、ワークフロー設定装置100が備えていなくても良い。例えば、ワークフロー設定装置100に接続された外部の記憶装置(例えば、サーバ200等)に、各種情報を記憶させる構成としても良い。
制御部120は、ワークフロー設定装置100を統括的に制御するCPU等である。制御部120は、OS等の制御プログラム・各種の処理手順等を規定したプログラム・所要データ等を格納するための内部メモリを有し、格納されているこれらのプログラムに基づいて種々の情報処理を実行する。
制御部120は、機能概念的に、(1)承認の進行方向に承認ステップのそれぞれを並べた構造により表現されるワークフローにおいて、同一の承認段階で並列して承認可能なグループに属する承認ステップを表現することを示すグループ化情報と、該グループの開始点を表現することを示す始点情報と、該グループの終了点を表現することを示す終点情報とをユーザ操作に応じて受け付ける受付部121と、(2)受付部121によって受け付けられたグループ化情報と、始点情報と、終点情報とをもとに、承認ルートマスタ111を更新する更新部122と、(3)グループ化情報と、始点情報と、終点情報とを承認ルートマスタ111から取得する取得部123と、(4)取得部123によって取得されたグループ化情報と、始点情報と、終点情報とをもとに、グループの接続状態を明示したワークフローの承認ルートの画面表示を制御する表示制御部124と、を備えている。
より具体的には、受付部121は、ワークフローの承認ルートの画面に対するユーザ操作に応じて、グループ化情報、始点情報、終点情報を受け付ける。受付部121は、入力装置11に対するユーザ操作に応じて、入出力インタフェース部140を介して各種情報を受け付ける。詳細は後述するが、ユーザは、ワークフローの承認ルートの画面を操作し、並列承認する承認ステップや、並列承認の開始点となる承認ステップ、並列承認の終了点となる承認ステップを指定する。これにより、受付部121は、グループ化情報、始点情報、終点情報を受け付ける。また、受付部121は、分岐条件に関する情報を受け付ける。
更新部122は、受付部121によって受け付けられたグループ化情報、始点情報、終点情報をもとに、承認ルートマスタ111に記憶された並列承認に関する情報を更新する。例えば、更新部122は、承認ルートマスタ111に記憶された、並列承認の対象となるグループに属する承認ステップを表現することを示すグループ化情報、グループの開始点を表現することを示す始点情報、グループの終了点を表現することを示す終点情報に、受付部121によって受け付けられた各情報を登録する。また、更新部122は、承認ルート分岐条件マスタ112に記憶された条件式等に、受付部121によって受け付けられた分岐条件に関する情報を登録する。なお、分岐条件等の詳細については後述する。
取得部123は、承認ルートマスタ111に記憶されたグループ化情報、始点情報、終点情報を取得する。一つの様態として、取得部123による処理は、更新部122によって承認ルートマスタ111が更新されたことをトリガに実行される。
表示制御部124は、取得部123によって取得されたグループ化情報、始点情報、終点情報をもとに、並列承認の対象となるグループの接続状態を明示したワークフローの承認ルートの画面表示を制御する。これにより、出力装置12には、入出力インタフェース部140を介した表示制御部124による制御に従って、並列承認の対象となるグループの接続状態を明示したワークフローの承認ルートの画面が表示される。また、表示制御部124は、ワークフローの承認ルートの画面表示の際、承認ステップやグループの接続状態の整合性を判定し、判定結果に従って、ワークフローの承認ルートの画面表示を制御する。整合性の判定については後述する。
[承認ルートの設定画面]
次に、図3を用いて、実施の形態に係る承認ルートの設定画面を説明する。図3は、実施の形態に係る承認ルートの設定画面例を示す図である。
図3に示すように、承認ルートの設定画面は、承認の進行方向を示す列と、承認の分岐方向(条件分岐の方向)を示す行とからなる表形式で表される。各承認ステップ(以下、「ステージ」と呼ぶ場合がある)には、ステージ名、ステージ種別、決裁条件が含まれる。これらのうち、ステージ名には、ステージの名称が設定される。ステージ種別には、承認者や承認者を含む部署等が設定される。ステージ種別に設定する承認者や部署等は、複数の方法により選択可能とする。例えば、ステージ種別には、「同一部署」や「上位部署」等の相対位置を指定したり、「営業1部」や「経理部」等の固定的な部署を指定したり、社員を直接指定したりすることができる。決裁条件には、ステージ種別の承認者に複数の候補者が存在する場合に、「N人(Nは自然数)」や「過半数」、「全員」等を設定することができる。各ステージは、行NOと、列NOとで表現することができる。
また、承認ルートの設定画面では、申請伝票の金額等の項目内容に応じてルートを分岐させることができ、例えば分岐条件「金額<100,000円」等を設定することができる。図3では、分岐条件に適合した場合、行NO「1」、列NO「5」のステージに移行し、分岐条件に適合しない場合、行NO「2」、列NO「5」のステージに移行する場合を例に挙げている。
また、承認ルートの設定画面では、同一の承認段階で並列承認を行なう場合、グループ化情報、始点情報、終点情報の3つのフラグ制御により、グループに属するステージを枠等で囲う設定を行なうことができる。図3に示す例では、行NO「1」、列NO「2」のステージと、行NO「1」、列NO「3」のステージと、行NO「1」、列NO「4」のステージとが、同一の承認段階で並列承認が可能なグループに属している。並列承認が可能なグループに含まれる各ステージの複数の部署・承認者は、略同時期に承認を行なうことが可能である。また、詳細は後述するが、グループ化情報、始点情報、終点情報等の設定に応じて、ステージやグループの接続状態の整合性チェックが行なわれても良い。
[並列承認のグループ化の設定]
次に、図4を用いて、実施の形態に係る並列承認のグループ化の設定画面を説明する。図4は、実施の形態に係る並列承認のグループ化の設定画面例を示す図である。
図4に示すように、並列承認のグループは、グループ化状態フラグに対して、同一の承認段階で並列して承認可能なグループに属するステージを設定する「グループ化」と、グループの開始点となるステージを設定する「始点」と、グループの終了点となるステージを設定する「終点」とのチェックボックスをオンにすることで形成することができる。図4に示す例では、行NO「1」、列NO「2」のステージと、行NO「1」、列NO「3」のステージと、行NO「1」、列NO「4」のステージとに対して、「グループ化」のチェックボックスがオンにされている。加えて、このグループにおいて、行NO「1」、列NO「2」のステージに対して、「始点」のチェックボックスがオンにされており、行NO「1」、列NO「4」のステージに対して、「終点」のチェックボックスがオンにされている。
つまり、チェックボックスに対するチェックに応じて、受付部121は、グループ化情報、始点情報、終点情報を受け付ける。そして、更新部122は、受付部121によって受け付けられたグループ化情報、始点情報、終点情報をもとに、承認ルートマスタ111に記憶された並列承認に関する各種情報を更新する。続いて、取得部123は、承認ルートマスタ111に記憶されたグループ化情報、始点情報、終点情報を取得する。その後、表示制御部124は、取得部123によって取得されたグループ化情報、始点情報、終点情報をもとに、該当するステージを枠等で囲むことにより、並列承認の対象となるグループの接続状態を明示した画面表示を制御する。
なお、並列承認のグループ化の設定は、上記に限られるものではなく、マウス等を用いて、並列承認の対象となるグループの枠等を形成することにより実現することもできる。例えば、ユーザは、入力装置11であるマウス操作により、行NO「1」、列NO「2」のステージと、行NO「1」、列NO「3」のステージと、行NO「1」、列NO「4」のステージとを囲む操作を行なう。
つまり、ステージを囲むマウス操作に応じて、受付部121は、グループ化情報、始点情報、終点情報を受け付ける。ここで、グループ化情報は、マウス操作に応じて囲まれたステージ全てに対応する。また、始点情報は、マウス操作に応じて囲まれたステージのうち、列NOが最も小さいステージに対応する。また、終点情報は、マウス操作に応じて囲まれたステージのうち、列NOが最も大きいステージに対応する。そして、更新部122は、受付部121によって受け付けられたグループ化情報、始点情報、終点情報をもとに、承認ルートマスタ111に記憶された並列承認に関する各種情報を更新する。続いて、取得部123は、承認ルートマスタ111に記憶されたグループ化情報、始点情報、終点情報を取得する。その後、表示制御部124は、取得部123によって取得されたグループ化情報、始点情報、終点情報をもとに、該当するステージを枠等で囲むことにより、並列承認の対象となるグループの接続状態を明示した画面表示を制御する。
[グループ枠の変更]
次に、図5を用いて、実施の形態に係る並列承認のグループ枠の変更を説明する。図5は、実施の形態に係る並列承認のグループ枠の変更例を示す図である。
例えば、図5に示すように、行NO「1」、列NO「2」のステージと、行NO「1」、列NO「3」のステージとが、並列承認の対象となるグループの一つであるものとする(図5(1)参照)。また、行NO「1」、列NO「5」のステージと、行NO「1」、列NO「6」のステージと、行NO「1」、列NO「7」のステージとが、並列承認の対象となるグループの一つであるものとする(図5(1)参照)。
ここで、ユーザは、切り取り操作及び貼り付け操作、マウス操作等により、セル「3」とセル「5」とのステージを入れ替える(図5(2)参照)。この時点で、セル「2」やセル「3」のように始点が続く状態となったり、セル「5」のように始点が存在しない終点が存在する状態となったり、セル「6」やセル「7」のように始点が存在しないグループが存在する状態となったりする。セルの入れ替え操作の柔軟性を優先するために、一時的にグループの接続状態に不整合が発生しても良い。
次に、ユーザは、グループを明示する枠等の再設定を行なう(図5(3)参照)。一つの様態として、ユーザは、不整合が発生しているグループの接続状態を確認しながら、チェックボックスの再設定を行なう。図5(3)に示す例では、セル「3」に対して、「終点」のチェックボックスをオンにし、セル「5」に対して、「始点」のチェックボックスをオンにしている。
また、これらの後、ユーザは、セル「3」に対して、「終点」のチェックボックスをオフにし、セル「4」に対して、「グループ化」のチェックボックスをオンにし、セル「5」に対して、「始点」のチェックボックスをオフにする(図5(4)参照)。このように、グループを明示する枠等の分割や結合は、自由に行なうことができる。
[整合性チェック]
次に、図6を用いて、実施の形態に係る承認ルートの整合性チェックを説明する。図6は、実施の形態に係る承認ルートの整合性チェックの例を説明する図である。例えば、整合性チェックは、承認ルートマスタ111に並列承認に関する情報が登録されたときに、表示制御部124によって実行される。なお、図6中の星形は、エラー時に移動対象となるセルを表している。
図6(1)は、始点以外のグループの左隣に、ステージが存在しない場合にエラー(不整合)となる例である。具体的には、ワークフロー設定装置100は、承認ルートのうち、全ての行の1列目のセルを探索し、グループ化のフラグがオンになっているセルを確認する。このとき、ワークフロー設定装置100は、確認したセルの始点のフラグがオンになっている場合(始点となるセルが存在する場合)に整合性に問題がないものとする。一方、ワークフロー設定装置100は、確認したセルの始点のフラグがオフになっている場合(始点となるセルが存在しない場合)に整合性に問題があるものとする。ユーザは、エラーにより移動したセル(始点の対象となり得るセル)に対応する始点のフラグをオンにする等して、整合性の問題を解消する。また、ワークフロー設定装置100が、エラーにより移動したセルに対応する始点のフラグをオンにしても良い。
図6(2)は、始点以外のグループの左隣にグループが存在しない場合にエラー(不整合)となる例である。具体的には、ワークフロー設定装置100は、承認ルートのうち、全ての行の2列目から最右端のセルまでを探索し、グループ化のフラグがオン、且つ、始点のフラグがオフになっているセルを確認する。このとき、ワークフロー設定装置100は、確認したセルの左隣のセルのグループ化のフラグがオンになっている場合(グループが途切れていない場合)に整合性に問題がないものとする。一方、ワークフロー設定装置100は、確認したセルの左隣のセルのグループ化のフラグがオフになっている場合(グループが途切れている場合)に整合性に問題があるものとする。ユーザは、エラーにより移動したセル(左隣のセルがグループではないセル)の左隣のセルに対応するグループ化のフラグをオンにする等して、整合性の問題を解消する。また、ワークフロー設定装置100が、エラーにより移動したセルの左隣のセルに対応するグループ化のフラグをオンにしても良い。
図6(3)は、始点以外のグループの左隣が終点となっている場合にエラー(不整合)となる例である。具体的には、ワークフロー設定装置100は、承認ルートのうち、全ての行の2列目から最右端のセルまでを探索し、グループ化のフラグがオン、且つ、始点のフラグがオフになっているセルを確認する。このとき、ワークフロー設定装置100は、確認したセルの左隣のセルの終点のフラグがオフになっている場合(左隣のセルが自身と同一のグループになっている場合)に整合性に問題がないものとする。一方、ワークフロー設定装置100は、確認したセルの左隣のセルの終点のフラグがオンになっている場合(左隣のセルが他グループの終点となっている場合)に整合性に問題があるものとする。ユーザは、エラーにより移動したセル(左隣のセルが他グループの終点であるセル)の左隣のセルに対応する終点のフラグをオフにする等して、整合性の問題を解消する。また、ワークフロー設定装置100が、エラーにより移動したセルの左隣のセルに対応する終点のフラグをオフにしても良い。
図6(4)は、終点以外のグループが最終承認ステージとなっている場合にエラー(不整合)となる例である。具体的には、ワークフロー設定装置100は、承認ルートのうち、全ての行の最右端のセルを探索し、グループ化のフラグがオンになっているセルを確認する。このとき、ワークフロー設定装置100は、確認したセルの終点のフラグがオンになっている場合(最終承認ステージがグループの終点である場合)に整合性に問題がないものとする。一方、ワークフロー設定装置100は、確認したセルの終点のフラグがオフになっている場合(最終承認ステージであるにも関わらずグループの終点になっていない場合)に整合性に問題があるものとする。ユーザは、エラーにより移動したセル(グループに属しているがグループの終点になっていない最終承認ステージ)に対応する終点のフラグをオンにする等して、整合性の問題を解消する。また、ワークフロー設定装置100が、エラーにより移動したセルに対応する終点のフラグをオンにしても良い。
図6(5)は、終点以外のグループの右隣にグループが存在しない場合にエラー(不整合)となる例である。具体的には、ワークフロー設定装置100は、承認ルートのうち、全ての行の1列目から最右端−1のセルまでを探索し、グループ化のフラグがオン、且つ、終点のフラグがオフになっているセルを確認する。このとき、ワークフロー設定装置100は、確認したセルの右隣のセルのグループ化のフラグがオンになっている場合(グループが途切れていない場合)に整合性に問題がないものとする。一方、ワークフロー設定装置100は、確認したセルの右隣のセルのグループ化のフラグがオフになっている場合(グループが途切れている場合)に整合性に問題があるものとする。ユーザは、エラーにより移動したセル(右隣のセルがグループではないセル)の右隣のセルに対応するグループ化のフラグをオンにする等して、整合性の問題を解消する。また、ワークフロー設定装置100が、エラーにより移動したセルの右隣のセルに対応するグループ化のフラグをオンにしても良い。
図6(6)は、終点以外のグループの右隣が始点となっている場合にエラー(不整合)となる例である。具体的には、ワークフロー設定装置100は、承認ルートのうち、全ての行の1列目から最右端−1のセルまでを探索し、グループ化のフラグがオン、且つ、終点のフラグがオフになっているセルを確認する。このとき、ワークフロー設定装置100は、確認したセルの右隣のセルの始点のフラグがオフになっている場合(右隣のセルが自身と同一のグループになっている場合)に整合性に問題がないものとする。一方、ワークフロー設定装置100は、確認したセルの右隣のセルの始点のフラグがオンになっている場合(右隣のセルが他グループの始点となっている場合)に整合性に問題があるものとする。ユーザは、エラーにより移動したセル(右隣のセルが他グループの始点であるセル)の右隣のセルに対応する始点のフラグをオフにする等して、整合性の問題を解消する。また、ワークフロー設定装置100が、エラーにより移動したセルの右隣のセルに対応する始点のフラグをオフにしても良い。
図6(7)は、始点以外のグループに分岐が存在する場合にエラー(不整合)となる例である。具体的には、ワークフロー設定装置100は、承認ルートのうち、全ての行の2列目から最右端のセルまでを探索し、グループ化のフラグがオン、且つ、始点のフラグがオフになっているセルを確認する。このとき、ワークフロー設定装置100は、確認したセルに分岐条件の設定が存在しない場合(単に、グループに属しているだけの場合)に整合性に問題がないものとする。一方、ワークフロー設定装置100は、確認したセルに分岐条件の設定が存在する場合(グループに属しているにも関わらず分岐条件の設定が存在する場合)に整合性に問題があるものとする。ユーザは、エラーにより移動したセルに対応する分岐条件の設定を解除する等して、整合性の問題を解消する。また、ワークフロー設定装置100が、エラーにより移動したセルの分岐条件の設定を解除しても良い。なお、図6(7)に対する整合性の問題の解消については、分岐条件の設定を生かして、グループ化のフラグをオフにし、N−1のセルの終点のフラグをオンにしても良い。また、ワークフロー設定装置100が、エラーにより移動したセルのグループ化のフラグをオフにし、N−1のセルの終点のフラグをオンにしても良い。
[分岐条件]
次に、図7を用いて、実施の形態に係る承認ルートの分岐条件について説明する。図7は、実施の形態に係る承認ルートの分岐条件の例を説明する図である。
図7に示すように、承認ルートは、申請内容(例えば、金額等)によって分岐させることができる。図7(1)では、分岐条件を「金額<100,000円」としている。ここで、金額が100,000円未満である場合には、条件を満たすものとして、同一の行に存在する次のステージに移行させる。一方、金額が100,000円以上である場合には、条件を満たさないものとして、異なる行(ここでは、現在の行NO+1の行)に存在する次のステージに移行させる。
図7(2)では、分岐条件の一つ目を「金額<100,000円」とし、二つ目を「金額<200,000円」としている。ここで、金額が100,000円未満である場合には、一つ目の条件を満たすものとして、同一の行に存在する次のステージに移行させる。また、金額が100,000円以上で、200,000円未満である場合には、二つ目の分岐条件を満たすものとして、異なる行(ここでは、現在の行NO+1の行)に存在する次のステージに移行させる。また、金額が200,000円以上である場合には、何れの条件も満たさないものとして、異なる行(ここでは、現在の行NO+2の行)に存在する次のステージに移行させる。このように、複数の分岐条件を設定することも可能である。
[各マスタに応じた設定画面]
次に、図8を用いて、実施の形態に係る各マスタに応じた承認ルートの設定画面を説明する。図8は、実施の形態に係る各マスタに応じた承認ルートの設定画面例を説明する図である。
図8に示すように、申請者に続いて、1行目の1列目〜5列目にステージが配置され、2行目の5列目と6列目とにステージが配置され、1行目の2列目〜4列目までのステージをグループ化し、5列目を分岐条件により分岐させる承認ルートを例に挙げる。また、分岐条件を「金額<100,000円」とする。
ここで、承認ルートマスタ111の情報例について説明する。図8に示すように、承認ルートマスタ111には、承認ルート、行NO、列NO、ステージ名、ステージ種別、承認部署、決裁条件、分岐条件、グループ化、始点、終点の情報が記憶される。承認ルートは、申請される伝票に応じて予め設定されている承認ルートを示す情報である。例えば、経費申請であれば「ルートA」となり、残業申請であれば「ルートB」となる。承認ルートの各々については、ルート割付マスタ116にまとめて記憶される。行NOは、承認の分岐方向(条件分岐の方向)における画面上での配置(行NOが増えると分岐方向に進む)を示す情報である。列NOは、承認の進行方向における画面上での配置(列NOが増えると進行方向に進む)を示す情報である。例えば、行NO「1」、列NO「1」の次のステージは、分岐条件がなければ、行NO「1」、列NO「2」のステージとなる。
ステージ名は、各承認ステップ(ステージ)の名称を示す情報である。例えば、ステージ名が「上長承認」であれば、ある部署での承認ルートのうち上長が承認するためのステージを指す。ステージ種別は、承認者や承認者を含む部署等を示す情報である。承認部署は、ステージ種別に対応する部署の部署名を示す情報である。決裁条件は、ステージ種別の承認者に複数の候補者が存在する場合の決裁条件を示す情報である。例えば、決裁条件には、「全員」を指定することもできるし、人数を示す「N人」を設定することもできるし、「過半数」等を設定することもできる。
分岐条件は、分岐する承認ルートの存在の有無を示す情報である。例えば、分岐条件には、そのステージに進む際に分岐が存在する場合に「あり」の情報が設定され、分岐が存在しない場合に「なし」の情報が設定される。グループ化は、並列承認の対象となるグループであるか否かを示す情報である。例えば、グループ化には、そのステージがグループに属する場合に「ON(オン)」の情報が設定され、グループに属さない場合に「OFF(オフ)」の情報が設定される。始点は、グループの開始点であるか否かを示す情報である。例えば、始点には、そのステージがグループの開始点である場合に「ON(オン)」の情報が設定され、グループの開始点ではない場合に「OFF(オフ)」の情報が設定される。終点は、グループの終了点であるか否かを示す情報である。例えば、終点には、そのステージがグループの終了点である場合に「ON(オン)」の情報が設定され、グループの終了点ではない場合に「OFF(オフ)」の情報が設定される。
次に、承認ルート分岐条件マスタ112の情報例について説明する。図8に示すように、承認ルート分岐条件マスタ112には、承認ルート、行NO、列NO、条件式、条件適合時行NO、条件適合時列NO、条件非適合時行NO、条件非適合時列NOの情報が記憶される。承認ルート、行NO、列NOは、承認ルートマスタ111に記憶された情報と同様である。
条件式は、分岐条件の条件式を示す情報である。例えば、条件式には、「金額<100000」といった情報が設定される。ここで、条件式「金額<100000」を満たす場合(金額が100000円未満である場合)は、分岐条件に適合すると判定される。一方、条件式「金額<100000」を満たさない場合(金額が100000円以上である場合)は、分岐条件に適合しないと判定される。
条件適合時行NOは、条件式に設定された分岐条件に適合した場合に移行するステージの行NOを示す情報である。条件適合時列NOは、条件式に設定された分岐条件に適合した場合に移行するステージの列NOを示す情報である。条件非適合時行NOは、条件式に設定された分岐条件に適合しない場合に移行するステージの行NOを示す情報である。条件非適合時列NOは、条件式に設定された分岐条件に適合しない場合に移行するステージの列NOを示す情報である。
次に、部署マスタ113の情報例について説明する。図8に示すように、部署マスタ113には、部署、階層、親部署の情報が記憶される。部署は、部署を示す情報である。階層は、各部署の階層を示す情報である。親部署は、部署に対する親部署を示す情報である。
次に、社員マスタ114の情報例について説明する。図8に示すように、社員マスタ114には、社員の情報が記憶される。社員は、各社員を識別する識別情報である。
次に、所属マスタ115の情報例について説明する。図8に示すように、所属マスタ115には、部署、社員、承認者担当の情報が記憶される。部署は、部署マスタ113に記憶された部署を示す情報と同様である。社員は、社員マスタ114に記憶された社員を識別する情報と同様である。承認者担当は、対応する社員が承認者として担当する(担当可能である)ことを示す情報である。例えば、承認者担当には、対応する社員が承認者として担当する場合、丸印の情報が設定される。
次に、ルート割付マスタ116の情報例について説明する。図8に示すように、ルート割付マスタ116には、申請伝票、承認ルートの情報が記憶される。上述したように、ルート割付マスタ116には、申請伝票の種類ごとの承認ルートが予め設定される。申請伝票は、申請される伝票を示す情報である。承認ルートは、承認ルートマスタ111に記憶された承認ルートを示す情報と同様である。
これらのマスタに記憶された情報を用いて、ワークフロー設定装置100は、グループ化、始点、終点の情報をもとに、行NO「1」、列NO「2」、「3」、「4」であるステージを並列承認が可能なグループとし、また、行NO「1」、列NO「2」のステージを始点、行NO「1」、列NO「4」のステージを終点として明示した承認ルートの画面を表示出力する。また、ワークフロー設定装置100は、行NO「1」、列NO「5」へ移行するための分岐条件を「金額<100,000」として、条件適合時に行NO「1」、列NO「5」に移行させ、条件非適合時に行NO「2」、列NO「5」に移行させる。
[起票画面]
次に、図9及び図10を用いて、実施の形態に係る起票画面を説明する。図9及び図10は、実施の形態に係る起票画面の例を説明する図である。
図9に示すように、ワークフロー設定装置100は、ログイン認証画面を表示する。承認者には、起票や承認を行なう際にログインさせる。例えば、ログイン認証では、社員の情報とパスワードとを入力させる。そして、ワークフロー設定装置100は、ログインが成功した場合に、起票及び承認の何れかを選択させるメニュー画面を表示する。ここでは、起票が選択された場合を例に挙げる。続いて、ワークフロー設定装置100は、起票する伝票を選択する伝票選択画面を表示する。ここでは、経費申請が選択された場合を例に挙げる。その後、ワークフロー設定装置100は、金額等を入力するための伝票入力画面を表示する。伝票入力画面にて入力された金額の情報は、分岐条件(条件式)に設定される。
図10に示すように、ワークフロー設定装置100は、各ステージをピックアップして承認ルートを生成し、画面表示する。
ここで、案件データ117の情報例について説明する。図10に示すように、案件データ117には、伝票番号、状態、現在承認ステージグループNOの情報が記憶される。伝票番号は、起票された伝票を識別する伝票番号を示す情報である。状態は、伝票番号に対応する案件の状態を示す情報である。例えば、状態には、起票された場合は、起票されたことを示す「起票済」の情報が記憶される。現在承認ステージグループNOは、現在の承認ステージのグループを識別する情報である。
ステージグループNOに関しては、申請者を「0」として、承認の進行方向の各ステージに対して1ずつインクリメントされた値が設定され、並列承認が可能なグループは一つのステージグループとして扱われる。従って、起票済みの状態であれば、現在承認ステージグループNOは、申請者の次のステージを示す値である「1」が設定される。なお、ステージグループNOではなく、「ステージNO」である場合は、並列承認が可能なグループの有無に関係なく、承認の進行方向の各ステージに対して1ずつインクリメントされた値を設定する。
次に、案件ルートデータ118の情報例について説明する。図10に示すように、案件ルートデータ118には、伝票番号、ステージグループNO、ステージNO、部署、種類、決裁条件、決裁状態の情報が記憶される。伝票番号は、案件データ117に記憶された伝票番号と同様の情報である。ステージグループNOは、上述したように、並列承認が可能なグループを1つのステージとして扱い、申請者を「0」として、承認の進行方向の各ステージに対して1ずつインクリメントされた値を示す情報である。例えば、ステージグループNOは、ピックアップされたセルのグループ化のフラグの連続性から、同一グループにすべきものに同一のステージグループNOが付与され、連番で生成される。ステージNOは、上述したように、並列承認が可能なグループの有無に関係なく、申請者を「0」として、承認の進行方向の各ステージに対して1ずつインクリメントされた値を示す情報である。例えば、ステージNOは、ピックアップされたセルの順番に、一意な番号が付与され、連番で生成される。つまり、図10において、ステージグループNOが「2」、ステージNOが「2」、「3」、「4」である各ステージは、一つのグループであることを表している。
部署は、部署マスタ113等に記憶された部署を示す情報と同様である。種類は、各ステージの種類を示す情報である。例えば、種類には、起票者、承認者、最終承認者等の情報が記憶される。決裁条件は、承認ルートマスタ111に記憶された承認者に複数の候補者が存在する場合の決裁条件を示す情報と同様である。決裁状態は、現在の決裁の状態を示す情報である。例えば、決裁状態には、承認が完了したステージに対して「承認完了」の情報が記憶され、承認している最中(承認が可能な状況)であるステージに対して「承認中」の情報が記憶され、承認が可能な状況ではなく承認が完了していないステージに対して「未承認」の情報が記憶される。
次に、案件ルート承認者データ119の情報例について説明する。図10に示すように、案件ルート承認者データ119は、伝票番号、ステージNO、社員、承認状態の情報を記憶する。伝票番号は、案件データ117に記憶された伝票番号と同様の情報である。ステージNOは、案件ルートデータ118に記憶されたステージNOと同様の情報である。社員は、社員マスタ114に記憶された社員を識別するための情報と同様である。例えば、社員には、所属マスタ115で承認者担当となっている社員が設定される。承認状態は、承認者(ここでは、社員)ごとの承認状態を示す情報である。
図10に示すように、ワークフロー設定装置100は、分岐条件「金額<100,000」に適合する場合は、案件ルートデータ118のステージNO「5」に対応付けて、部署「経理部」のデータを設定する。一方、ワークフロー設定装置100は、分岐条件「金額<100,000」に適合しない場合は、案件ルートデータ118のステージNO「5」に対応付けて、部署「取締役会」のデータを設定し、ステージNO「6」に対応付けて、部署「経理部」のデータを設定する。
[承認の進行]
次に、図11を用いて、実施の形態に係る承認の進行について説明する。図11は、実施の形態に係る承認の進行例を説明する図である。なお、図11では、分岐条件「金額<100,000」に適合しない場合を例に挙げて説明する。
図11に示すように、承認段階1では、ステージNO「1」である部署「システム部」の社員「社員G−1」、「社員G−2」のうち、1人により承認された際に、ステージグループNO「1」の決裁を完了することができる。承認段階2では、部署「営業1部」、部署「営業2部」、部署「営業3部」により、並列承認が可能なグループが形成されている。このうち、ステージNO「2」である部署「営業1部」において2人により承認され、ステージNO「3」である部署「営業2部」において過半数により承認され、ステージNO「4」である部署「営業3部」において全員により承認された際に、ステージグループNO「2」の決裁を完了することができる。
承認段階3では、ステージNO「5」である部署「取締役会」の社員「社員A−1」、「社員A−2」のうち、1人により承認された際に、ステージグループNO「3」の決裁を完了することができる。承認段階4では、ステージNO「6」である部署「経理部」の社員「社員B−1」、「社員B−2」のうち、1人により承認された際に、ステージグループNO「4」の決裁を完了することができる。これらにより、最終的な承認が完了する。
ワークフロー設定装置100は、各承認段階における承認に応じて、案件データ117の「状態」、「現在承認ステージグループNO」の情報を更新する。また、ワークフロー設定装置100は、案件データ117の「現在承認ステージグループNO」に対応する案件ルートデータ118の情報を更新し、ステージNOに対応する案件ルート承認者データ119の情報を更新する。図11に示すように、ワークフロー設定装置100は、決裁条件を満たし、次のステージへ移行した場合、同一部署の未承認の社員はその時点で承認することができなくなるように制御する。
[引上承認]
次に、図12を用いて、実施の形態に係る引上承認について説明する。図12は、実施の形態に係る引上承認の例を説明する図である。
引上承認とは、ある承認段階で承認が滞っている場合に引上げる処理を指す。図12では、承認段階2において承認が滞っている状況を表している。例えば、ワークフロー設定装置100は、ステージNO「6」である承認段階4の社員「社員B−1」が引上者である場合、案件データ117に記憶された現在承認ステージグループNOを「2」から「4」に更新する。加えて、ワークフロー設定装置100は、案件ルートデータ118に記憶された伝票番号「0000000001」、現在の承認段階となるステージグループNO「2」、次の承認段階となるステージグループNO「3」に対応する決裁状態のステータスを、「承認完了」に更新する。
[承認却下]
次に、図13を用いて、実施の形態に係る承認却下について説明する。図13は、実施の形態に係る承認却下の例を説明する図である。
承認却下とは、申請内容や承認内容に問題等がある場合に、下位へ差し戻す処理を指す。図13では、承認段階3から承認段階2へ差し戻す状況を表している。例えば、ワークフロー設定装置100は、却下先を選択するための却下先選択画面を表示する。ここでは、却下者である社員が、承認段階2、ステージNO「4」の営業3部と、承認段階2、ステージNO「2」の営業1部とに、差し戻す場合を例に挙げる。
なお、ステージNO「5」である承認段階3の社員「社員A−1」が却下者であれば、ステージNO「5」よりも下位のステージであるステージNO「0」、「1」、「2」、「3」、「4」に対して差し戻しを行なえる。また、同一の承認段階であれば、少なくとも1以上(同一の承認段階の一部)を指し戻し先として選択することができる。差し戻し先の選択では、下位の承認段階が選択された場合、上位の承認段階を指定することができない。但し、ある承認段階が選択された場合、この承認段階よりも上位の承認段階は、未承認に戻されることになる。
例えば、ワークフロー設定装置100は、ステージNO「5」である承認段階3の社員「社員A−1」が却下者である場合、案件データ117に記憶された現在承認ステージグループNOを「3」から「2」に更新する。加えて、ワークフロー設定装置100は、案件ルートデータ118に記憶された伝票番号「0000000001」、ステージNO「2」、「4」の決裁状態のステータスを、「未承認」に更新する。
[承認引戻]
次に、図14を用いて、実施の形態に係る承認引戻について説明する。図14は、実施の形態に係る承認引戻の例を説明する図である。
承認引戻とは、一旦、承認(又は申請)した者が自分の承認段階まで引き戻す処理を指す。図14では、承認段階3から承認段階1に引き戻す状況を表している。ここでは、決裁状態のステータスが「承認完了」となっている社員「社員G−1」が引き戻す場合を例に挙げる。なお、引き戻し可能な者は、申請者や、現在承認ステージグループNO以下のステージの承認済みである者である。このほか、引き戻し可能な者として、部署としての決裁状態が「承認完了」となっているが実際には承認していない者(承認状態のステータスが「未承認」である者)を含めるようにしても良い。
例えば、ワークフロー設定装置100は、ステージNO「1」である承認段階1の社員「社員G−1」が引戻者である場合、案件データ117に記憶された現在承認ステージグループNOを「3」から「1」に更新する。加えて、ワークフロー設定装置100は、案件ルートデータ118に記憶された伝票番号「0000000001」、ステージNO「1」、「2」、「3」、「4」の決裁状態のステータスを、「未承認」に更新する。さらに、ワークフロー設定装置100は、案件ルート承認者データ119に記憶されたステージNO「1」、「2」、「3」、「4」の承認状態のステータスを、「未承認」に更新する。なお、並列承認が可能なグループの承認者が引き戻しを行なう場合は、同一グループの他部署について「未承認」に戻すことを選択できるようにしても良い。
このように、本実施の形態によれば、承認の進行方向に承認ステップのそれぞれを並べた構造により表現されるワークフローにおいて、同一の承認段階で並列して承認可能なグループに属する承認ステップを表現するグループ化、グループの開始点を表現する始点、グループの終了点を表現する終点の各情報をもとに、グループの接続状態を明示したワークフローの承認ルートの画面表示を制御するので、ワークフローの設定をより簡易に実現することができる。
また、本実施の形態によれば、分岐条件に適合した場合に、承認の進行方向の承認ステップの位置を示す、条件適合時行NO及び条件適合時列NOと、分岐条件に適合しない場合に、承認の進行方向とは異なる条件分岐の方向の承認ステップの位置を示す、条件非適合時行NO及び条件非適合時列NOと、をもとに、分岐する承認ステップの接続状態を明示したワークフローの承認ルートの画面表示を制御するので、ワークフローの設定をより簡易に実現することができる。
また、本実施の形態によれば、承認ステップ及びグループの接続状態の整合性を判定し、判定結果に従って、ワークフローの承認経路の画面表示を制御するので、矛盾のないワークフローの設定をより簡易に実現することができる。
[他の実施の形態]
本発明は、上述した実施の形態以外にも、特許請求の範囲に記載した技術的思想の範囲内において、種々の異なる実施の形態にて実現されても良いものである。
例えば、実施の形態において説明した各処理のうち、自動的に行なわれるものとして説明した処理の全部又は一部を手動的に行なうこともでき、或いは、手動的に行なわれるものとして説明した処理の全部又は一部を公知の方法で自動的に行なうこともできる。
また、本明細書や図面中で示した処理手順、制御手順、具体的名称、各処理の登録データや検索条件等のパラメータを含む情報、画面例、データベース構成については、特記する場合を除いて任意に変更することができる。
また、ワークフロー設定装置100に関して、図示の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。
例えば、ワークフロー設定装置100が備える処理機能、特に、制御部120にて実行される各処理機能については、その全部又は任意の一部を、CPU及び該CPUにて解釈実行されるプログラムにて実現しても良く、また、ワイヤードロジックによるハードウェアとして実現しても良い。なお、プログラムは、本実施の形態で説明した処理を情報処理装置に実行させるためのプログラム化された命令を含む一時的でないコンピュータ読み取り可能な記録媒体に記録されており、必要に応じてワークフロー設定装置100に機械的に読み取られる。すなわち、ROM又はHDD等の記憶部等には、OSと協働してCPUに命令を与え、各種処理を行なうためのコンピュータプログラムが記録されている。このコンピュータプログラムは、RAMにロードされることによって実行され、CPUと協働して制御部を構成する。
また、このコンピュータプログラムは、ワークフロー設定装置100に対して、任意のネットワークを介して接続されたアプリケーションプログラムサーバに記憶されていても良く、必要に応じてその全部又は一部をダウンロードすることも可能である。
また、本実施の形態で説明した処理を実行するためのプログラムを、一時的ではないコンピュータ読み取り可能な記録媒体に格納しても良く、また、プログラム商品として構成することもできる。ここで、この「記録媒体」とは、メモリカード、USB(Universal Serial Bus)メモリ、SD(Secure Digital)カード、フレキシブルディスク、光磁気ディスク、ROM、EPROM(Erasable Programmable Read Only Memory)、EEPROM(登録商標)(Electrically Erasable and Programmable Read Only Memory)、CD−ROM(Compact Disk Read Only Memory)、MO(Magneto‐Optical disk)、DVD(Digital Versatile Disk)、及び、Blu−ray(登録商標) Disc等の任意の「可搬用の物理媒体」を含むものとする。従って、本明細書で説明したような処理又は処理方法を実行するためのプログラムを格納した記録媒体もまた、本発明を構成することとなる。
また、「プログラム」とは、任意の言語又は記述方法にて記述されたデータ処理方法であり、ソースコード又はバイナリコード等の形式を問わない。なお、「プログラム」は、必ずしも単一的に構成されるものに限られず、複数のモジュールやライブラリとして分散構成されるものや、OSに代表される別個のプログラムと協働してその機能を達成するものを含む。なお、実施の形態に示した各装置において、記録媒体を読み取るための具体的な構成及び読み取り手順、並びに、読み取り後のインストール手順等については、周知の構成や手順を用いることができる。
記憶部110に格納される各種のデータベース等は、RAM、ROM等のメモリ装置、ハードディスク等の固定ディスク装置、フレキシブルディスク、及び、光ディスク等のストレージ手段であり、各種処理やウェブサイト提供に用いる各種のプログラム、テーブル、データベース、及び、ウェブページ用ファイル等を格納する。
また、ワークフロー設定装置100は、既知のパーソナルコンピュータ又はワークステーション等の情報処理装置として構成されても良く、また、任意の周辺装置が接続された情報処理装置として構成されても良い。また、ワークフロー設定装置100は、本実施の形態で説明した処理を実現させるソフトウェア(プログラム又はデータ等を含む)を実装することにより実現しても良い。
さらに、装置の分散・統合の具体的形態は図示するものに限られず、その全部又は一部を、各種の付加等に応じて又は機能負荷に応じて、任意の単位で機能的又は物理的に分散・統合して構成することができる。すなわち、上述した実施の形態を任意に組み合わせて実施しても良く、実施の形態を選択的に実施しても良い。