実施の形態1.
図1は、本発明の第1の実施の形態の構成例を示すブロック図である。本発明による業務監視システムは、業務監視装置1と、複数の業務処理装置2と、管理装置3とを備える。以下、管理装置3が端末装置である場合を例に説明し、管理装置3を管理端末3と記す。管理端末3は、業務監視装置1に接続されている。また、業務監視装置1と各業務処理装置2とは、通信ネットワーク4を介して接続される。
業務監視装置1は、業務処理装置2で処理される業務の処理状況を監視するコンピュータであり、業務フロー分析手段11と、業務フロー対応情報記憶手段12と、処理効率測定ルール記憶手段15と、処理効率情報記憶手段16とを備える。
業務フロー対応情報記憶手段12は、業務イベントデータと業務フローとの対応に関する業務フロー対応情報を記憶する記憶媒体であり、例えばハードディスクによって実現される。業務フロー対応情報記憶手段12は、業務フロー分析手段11および管理端末3からアクセス可能である。
業務イベントデータは、業務プロセスの状態(業務プロセスが開始した状態、業務プロセスが行われている状態、あるいは業務プロセスが終了した状態)を示す情報であり、業務処理装置2から業務監視装置1に送信される。業務イベントデータの具体例については後述する。なお、業務イベントデータには、イベントタイプ、アプリケーション名称、イベントステータスが含まれ、この3種類のデータによって、各業務プロセスに対応する業務イベントデータが特定される。業務イベントデータに含まれるイベントタイプは、その業務イベントデータが人間の操作による業務プロセスに対応しているのか、プログラムによる業務プロセスに対応しているのかを示す。アプリケーション名称は、業務プロセスで用いられるアプリケーションプログラムの名称である。また、業務イベントデータに含まれるイベントステータスは、業務プロセスが開始した状態、業務プロセスが行われている状態、あるいは業務プロセスが終了した状態という業務プロセスの状態を示す情報である。
業務フロー対応情報記憶手段12に記憶される個々の業務フロー対応情報は、業務フローを特定する情報と、業務フローにおける業務プロセスを特定する情報と、その業務プロセスに対応する業務イベントデータを特定する情報と、業務プロセスの関係を示す情報とを含む。
業務フローを特定する情報として、例えば、個々の業務フローに割り当てられた識別子(業務フローID)が用いられる。
業務フローにおける業務プロセスを特定する情報として、例えば、個々の業務プロセスに割り当てられた識別子(業務プロセスID)が用いられる。
業務フロー対応情報には、イベントタイプ(人間の操作による業務プロセスか、プログラムによる業務プロセスかを示す情報)、アプリケーション名称、イベントステータスが含まれていて、イベントタイプ、アプリケーション名称、イベントステータスは、業務プロセスIDに対応付けられている。業務監視装置1が業務イベント集約手段21から受信する業務イベントデータとしては、人間の操作によって発生する業務イベントデータとプログラムの処理によって発生する業務イベントデータとの双方が存在する。人間の操作によって発生する業務イベントデータは、人間の操作によって発生したことを示すイベントタイプ、人間に操作されたアプリケーションプログラムの名称、人間の操作状態を示すイベントステータス、イベントの開始時刻、イベントの終了時刻を含む。プログラムの処理によって発生する業務イベントデータは、プログラムの処理によって発生したことを示すイベントタイプ、プログラムで処理されたアプリケーションの名称、プログラムの処理状態を示すイベントステータス、イベントの開始時刻、イベントの終了時刻を含む。業務フロー対応情報に含まれるイベントタイプ、アプリケーション名称、およびイベントステータスの組み合わせから、そのイベントタイプ、アプリケーション名称、およびイベントステータスを含む業務イベントデータが特定される。
人間の操作状態を示すイベントステータスの例について説明する。例えば、人間によってマウスが操作され、運用管理ソフトウェアによって管理される苦情メールが開かれた場合、苦情受付処理の開始を示す情報が人間の操作状態を示すイベントステータスとなる。また、プログラムの処理状態を示すイベントステータスの例として、例えば、プログラムに従った「調査処理の開始」などが挙げられる。
業務プロセスの関係を示す情報として、業務プロセスの次に処理される業務プロセスを特定する情報、業務プロセスの前に処理された業務プロセスを特定する情報などがある。
図2は、業務フロー対応情報記憶手段12に記憶されている業務フロー対応情報の例を示す説明図である。図2に示す例では、業務フローIDとしてBFL001が割り当てられた業務フローは、BP001からBP006までの6つの業務プロセスからなる業務フローであることを示している。また、業務プロセスIDとしてBP001が割り当てられた業務プロセスにおける業務イベントデータは、AP001でプログラムの処理によって発生したEVS001というイベントステータスであり、BP002へと遷移することを示している。
処理効率測定ルール記憶手段15は、1つまたは複数の処理効率測定ルールを記憶する記憶媒体である。処理効率測定ルール記憶手段15は、業務フロー分析手段11および管理端末3からアクセス可能である。処理効率測定ルールは、どの業務プロセスあるいはどの業務プロセス間に対して、どの処理効率を測定するのかを定めるルールである。処理効率とは、処理に要する時間の多寡あるいは処理量の多寡を示す情報である。処理効率の種類として、例えば、平均処理時間、最大処理時間、一定時間当たりに発生したイベント数(より具体的には一定時間あたりに業務処理装置2から受信した業務イベントデータ数)などが挙げられる。業務プロセス間とは、ある業務プロセス終了から次の業務プロセス開始までの処理である。以下、業務プロセス間を業務アークと記す。処理効率として、平均処理時間、最大処理時間、一定時間当たりに発生したイベント数などが挙げられるが、処理効率の種類はこれらに限定されるわけではない。
図3は、処理効率測定ルールの例を示す説明図である。各処理効率測定ルールは、ルールIDと、測定対象と、測定項目とを含む。ルールIDは、処理効率測定ルールを識別する識別子である。測定対象は、処理効率の測定対象となる業務プロセスまたは業務アークを示す情報である。測定項目は、処理効率として、平均処理時間、最大処理時間、一定時間当たりに発生したイベント数などのうち、どの項目を測定するのかを定める。図3に示す例では、業務プロセスBP002に関しては平均処理時間を測定することを定めている。また、業務プロセスBP003から業務BP004までの業務アークに関しては、最大処理時間(この場合、業務プロセスBP003の終了から業務BP004の開始までにかかった最大時間)を測定することを定めている。処理効率測定ルールは、1つの測定対象に対して、複数種類の処理効率を測定することを定めていてもよい。
業務フロー分析手段11は、人間による業務プロセスとプログラムによる業務プロセスが混在する業務フローの処理効率を算出する。具体的には、業務フロー分析手段11は、いずれかの業務処理装置2から業務イベントデータを受信する度に、業務フロー対応情報記憶手段12を参照して、業務フローと対応できる業務イベントの列集合を探索する。そして、業務フロー分析手段11は、その業務イベントの列集合が示す各業務プロセスの処理効率を算出し、その算出結果を管理端末3へ出力する。「業務フローと対応できる業務イベントの列集合」とは、業務フローが示す業務プロセスに対応する業務イベントデータのイベントステータス、イベントタイプ、アプリケーション名称の組み合わせを、業務フローが示す業務プロセスの遷移順に並べたデータ(イベントステータス、イベントタイプ、アプリケーション名称の組み合わせ)の集合である。業務フロー分析手段11は、処理効率測定ルール記憶手段15に記憶される処理効率測定ルールを参照して、業務フロー対応情報の業務フローに従って発生する業務プロセスや業務アーク毎に処理効率を算出する。
処理効率情報記憶手段16は、業務フロー分析手段11が作成した処理効率情報を記憶する記憶媒体である。処理効率情報については、図10を用いて後述する。
業務処理装置2は、人間の操作により、あるいは、プログラムにより業務フローを構成する業務プロセスを処理するコンピュータである。業務処理装置2は、業務イベント集約手段21と、集約ルール記憶手段27とを備える。また、業務処理装置2は、人間の操作により、あるいは、プログラムにより処理を行う処理手段(図示せず。)を備える。なお処理手段(図示せず。)は、例えば、業務処理装置2のCPUによって実現される。
業務イベント集約手段21は、業務処理装置2のハードウェアおよびソフトウェアに関するイベントデータを人間の操作もしくはプログラムの処理による業務イベントデータに集約して業務監視装置1へ送信する。本明細書において、「集約」とは、イベントデータから業務イベントデータを作成することを意味する。業務イベント集約手段21は、集約ルール記憶手段27に記憶される集約ルールを参照して、イベントデータを業務イベントデータに集約する。
以下、「イベントデータ」および「業務イベントデータ」について説明する。
「イベントデータ」とは、業務処理装置2のハードウェアに関するイベント、または、業務処理装置2のソフトウェアに関するイベントを示す情報である。ハードウェアに関するイベントとは、入力装置(例えばキーボードやマウスなど)を介して行われる操作のことであり、ソフトウェアに関するイベントとは、アプリケーションプログラムの開始状態への変化、アプリケーションプログラムの終了状態への変化、あるいはアプリケーションプログラムのエラー状態への変化のことである。
図4は、業務処理装置2のハードウェアに関するイベントデータの例を示す説明図である。図4に示すように、業務処理装置2のハードウェアに関するイベントデータは、キーボードやマウスなどの入力装置を特定する情報(装置ID)と、キーボードのリターンキーの押下やマウスの右ボタンの押下などの入力装置の操作情報(操作イベント)と、その操作が行われたアプリケーションプログラムの名称およびそのアプリケーションプログラムのプロセスの番号(図4において図示略。)と、その操作の発生時刻、操作した業務処理者のユーザIDを含む。また、これらの情報の組み合わせに対して、図4に示すように、ハードウェアイベントIDが業務イベント集約手段21によって割り当てられる。なお、アプリケーションプログラムのプロセスとは、アプリケーションプログラムの実行状態を意味していて、業務プロセスとは異なる概念である。また、ユーザIDは、作業者によって作業開始時(ログイン時)に予め業務処理装置2に入力される。
図5は、業務処理装置2のソフトウェアに関するイベントデータの例を示す説明図である。図5に示すように、業務処理装置2のソフトウェアに関するイベントデータは、アプリケーションプログラムの名称、物品の型番検索処理の開始や注文受付の自動メール送信処理の終了などのアプリケーションプログラムの処理状態を示すイベントステータス、物品の型番やメール送信内容などの処理で用いられたパラメータ、その処理がされたプロセス番号、その発生時刻や発生日付を含む。なお、このプロセス番号も、アプリケーションプログラムの実行状態を示す番号である。
図6は、業務イベントデータの例を示す説明図である。図6に示すように、業務イベントデータには、業務プロセスの開始時刻、業務プロセスの終了時刻、イベントタイプ(業務イベントデータが人間の操作による業務プロセスに対応しているのか、プログラムによる業務プロセスに対応しているのかを示す情報)、アプリケーション名称、およびイベントステータスを含んでいる。また、これらの情報の組み合わせに対して、図6に示すようにイベントIDが業務イベント集約手段21によって割り当てられる。
集約ルール記憶手段27は、イベントデータから業務イベントデータを集約する条件を含む集約ルールを記憶する。図7は、集約ルールの例を示す説明図である。図7に示すように、集約ルールは、業務イベントデータに含めるべきイベントステータスと、業務イベントデータの生成条件(業務イベントデータ生成条件)とを含んでいる。業務イベントデータ生成条件は、図4および図5に示すイベントデータの内容(例えば、図4に示す装置ID、操作イベント、アプリケーション名称、ユーザID、プロセス番号(図4において図示せず。)、図5に示すアプリケーション名称、ソフトウェアイベントステータス、パラメータ、プロセス番号、ユーザIDなど)の一部または全部の内容の論理演算(論理和や論理積)として記述される。例えば、図7に示す2番目の集約ルールでは、「装置IDがマウスである。」、「操作イベントがON_CLIC_RIGHT(右クリックボタンの押下)である。」などの内容の論理積の結果と、「アプリケーション名称がAP002である。」などの論理積の結果との論理積を示している。業務イベント集約手段21は、イベントデータが業務イベントデータ生成条件を満足している場合には、その業務イベントデータ生成条件に対応するイベントステータスを含む業務イベントデータを生成する。なお、業務イベント集約手段21は、業務イベントデータに含まれる開始時刻および終了時刻として、業務イベントデータ生成条件を満足してるイベントデータに記述された時刻を記述する。例えば、業務イベントデータ生成条件を満足してるイベントデータであってイベントステータスが開始となっているイベントデータに記述された時刻を開始時刻として業務イベントデータ含めたり、業務イベントデータ生成条件を満足しているイベントデータであってイベントステータスが終了となっているイベントデータに記述された時刻を終了時刻として業務イベントデータに含めたりすればよい。また、業務イベント集約手段21は、イベントデータによって満たされた業務イベントデータ生成条件に応じて、イベントタイプを「人間の操作による業務プロセス」と「プログラムによる業務プロセス」のいずれにするのか決定する。
管理端末3は、キーボードやマウスなどの入力装置と、ディスプレイ装置などの出力装置を備える端末(コンソール)である。管理端末3は、業務監視装置1に接続され、業務監視者によって入力された各種の指示やデータを監視装置に送信する機能と、業務監視装置1から送られてきた各種のデータを受信し出力装置に出力する機能を有する。
図8は、管理端末(管理装置)3の構成例を示すブロック図である。管理端末3は、入力装置32と、CPU31と、出力装置33と、記憶装置34とを備える。入力装置32は、例えばキーボードやマウスなどであり、業務管理者から各種指示や情報を入力される。出力装置33は、例えばディスプレイ装置であり、業務監視装置1から受信したデータを表示する。記憶装置34は管理プログラムを記憶し、CPU31は、その管理プログラムプログラムに従って動作する。CPU31は、管理プログラムに従って、入力装置32を介して入力された業務フロー対応情報を業務フロー対応情報記憶手段12に記憶させたり、入力装置32を介して入力された処理効率測定ルールを処理効率測定ルール記憶手段15に記憶させたりする。また、CPU31は、管理プログラムに従って業務監視装置1から受信したデータを出力装置33に表示させる。
次に、本実施の形態の動作を説明する。
まず、業務処理装置2の業務イベント集約手段21が、業務イベントデータを生成する動作について説明する。
業務イベント集約手段21は、業務処理装置2の入力装置に対して行われた人間の操作に応じて業務処理装置2の処理手段(図示せず。)が処理を行うと、その操作に応じて、ハードウェアに関するイベントデータ(図4参照。)を生成する。また、業務イベント集約手段21は、プログラムに従って業務処理装置2の処理手段(図示せず。)が処理を行うと、その処理に応じて、ソフトウェアに関するイベントデータ(図5参照。)を生成する。なお、業務イベント集約手段21は、生成したイベントデータを業務処理装置2が備える記憶装置(図示せず。)に記憶させる。
業務イベント集約手段21は、集約ルール記憶手段27に記憶される集約ルールと、生成したイベントデータ(ハードウェアに関するイベントデータおよびソフトウェアに関するイベントデータ)とを参照し、イベントデータが集約ルールの業務イベントデータ生成条件を満たしているか否かを判定する。
イベントデータが業務イベントデータ生成条件を満たしていなければ、業務イベント集約手段21は、業務処理装置2が実行する処理に応じて、イベントデータを生成し、イベントデータが業務イベントデータ生成条件を満たしているか否かを判定する処理を繰り返す。
イベントデータが業務イベントデータ生成条件を満たしているならば、業務イベント集約手段21は、そのイベントデータを用いて業務イベントデータ(図6参照。)を生成する。このとき、業務イベント集約手段21は、業務イベントデータ生成条件を満足しているイベントデータに記述された時刻を、業務イベントデータに含まれる開始時刻および終了時刻とする。例えば、業務イベントデータ生成条件を満足しているイベントデータであってイベントステータスが開始となっているイベントデータに記述された時刻を開始時刻として業務イベントデータに含めたり、業務イベントデータ生成条件を満足しているイベントデータであってイベントステータスが終了となっているイベントデータに記述された時刻を終了時刻として業務イベントデータに含めたりする。また、業務イベント集約手段21は、イベントデータによって満たされた業務イベントデータ生成条件に応じて、イベントタイプを「人間の操作による業務プロセス」と「プログラムによる業務プロセス」のいずれにするのか決定し、そのイベントタイプを業務イベントデータに記憶する。また、業務イベント集約手段21は、業務イベントデータ生成条件を満足しているイベントデータに記述されたアプリケーション名称を、業務イベントデータに含まれるアプリケーション名称として記述する。業務イベントデータ生成条件を満足しているイベントデータの組み合わせのうち、どのイベントデータに記述されたアプリケーション名称を業務イベントデータに含まれるアプリケーション名称とするのかは、イベントデータによって満たされた業務イベントデータ生成条件に応じて決定すればよい。また、業務イベント集約手段21は、イベントデータによって満たされた業務イベントデータ生成条件に対応付けられているイベントステータスを、業務イベントデータのイベントステータスとして記述する。さらに、業務イベント集約手段21は、開始時刻、終了時刻、イベントタイプ、アプリケーション名称、およびイベントステータスの組み合わせに対応付けて、その組み合わせを識別するイベントID(図6参照。)を、業務イベントデータに含める。
業務イベント集約手段21は、業務イベントデータを生成した後、業務イベントデータ生成条件を満足していたイベントデータを、記憶装置(図示略。)から削除する。そして、イベントデータを生成し、イベントデータが業務イベントデータ生成条件を満たしているか否かを判定する処理を繰り返す。
業務イベント集約手段21は、生成した業務イベントデータを通信ネットワーク4を介して業務監視装置1に送信する。業務監視装置1の業務フロー分析手段11は、業務イベント集約手段21が送信した業務イベントデータを受信する。なお、業務イベント集約手段21は、イベントID、開始時刻、終了時刻、イベントタイプ、アプリケーション名称、およびイベントステータスを含む業務イベント情報を作成する毎に、その業務イベントデータを業務監視装置1に送信する。
次に、業務監視装置1が、処理効率を出力する動作について説明する。
業務監視者は、業務処理装置2の人間の操作による業務処理とプログラムによる業務処理が混在する業務の処理状況を監視する場合、業務フロー対応情報を業務フロー対応情報記憶手段12に記憶させておく。このとき、管理端末3の入力装置32(図8参照。)には業務フロー対応情報が入力され、管理端末3のCPU31(図8参照。)は、その業務フロー対応情報を業務監視装置1に送信し、業務フロー対応情報を業務フロー対応情報記憶手段12に記憶させる。
また、管理端末3は、処理効率測定ルールも、予め処理効率測定ルール記憶手段15に記憶させておく。すなわち、管理端末3の入力装置32には処理効率測定ルールが入力され、管理端末3のCPU31は、その処理効率測定ルールを業務監視装置1に送信し、処理効率測定ルールを処理効率測定ルール記憶手段15に記憶させておく。
図9は、業務監視装置1の業務フロー分析手段11が処理効率を算出する動作の例を示すフローチャートである。
まず、業務フロー分析手段11は、いずれかの業務処理装置2から新たに業務イベントデータを受信するまで待機する(ステップS101)。いずれかの業務処理装置2から新たに業務イベントデータを受信していなければ、ステップS101の待機状態を継続する。
いずれかの業務処理装置2から新たに業務イベントデータを受信したならば(ステップS101のNO)、業務フロー分析手段11は、受信した業務イベントデータを、業務監視装置1が備える記憶装置に格納する。業務フロー分析手段11は、このように受信した業務イベントデータを業務監視装置1が備える記憶装置に格納し、業務イベントデータを記憶装置に蓄積する。業務フロー分析手段11は、蓄積された業務イベントデータを、業務監視装置1が備える他の記憶領域にコピーして格納する(ステップS102)。コピーされた業務イベントデータの集合を集合Sとする。また、ステップS102において、業務フロー分析手段11は、業務フロー対応情報記憶手段12が記憶している全ての業務フロー対応情報を、業務監視装置1が備える他の記憶領域にコピーして格納する。コピーされた業務フロー対応情報の集合を集合Tとする。
ステップS102の後、業務フロー分析手段11は、集合Sに属する業務イベントデータを時系列に並べ替える(ステップS103)。すなわち、業務フロー分析手段11は、集合Sに属する業務イベントデータを、受信した時刻順に並べ替える。
続いて、業務フロー分析手段11は、集合Sもしくは集合Tが空集合であるか否かを判定する(ステップS104)。集合Sもしくは集合Tが空集合であるならば(ステップS104のYES)、ステップS101に移行する。すなわち、少なくとも集合Sと集合Tのいずれかが空集合であるならば、ステップS101に移行する。また、集合Sおよび集合Tがどちらも空集合でなければ(ステップS104のYES)、ステップS105に移行する。
ステップS105において、業務フロー分析手段11は、集合Tから1つの業務フロー対応情報を取り出す。ここで、「取り出す」とは、業務監視装置1のメインメモリ(図示略。)に情報を移動させることを意味する。すなわち、ステップS105において、業務フロー分析手段11は、集合Tの中の1つの業務フロー対応情報を業務監視装置1のメインメモリ(図示略。)に移動させる。また、1つの業務フロー対応情報とは、1つの業務フローIDに対応する業務フロー対応情報である。
次に、業務フロー分析手段11は、ステップS105で取り出した業務フロー対応情報が示す業務プロセスの遷移順に、業務プロセスに対応する業務イベントデータのイベントステータス、イベントタイプ、アプリケーション名称の組み合わせを並べたデータの集合(業務フローと対応できる業務イベントの列集合)を集合Sから探索する(ステップS106)。
図2に例示する業務フローIDがBFL001の業務フロー対応情報をステップS105で取り出していた場合を例にしてステップS106の動作を説明する。まず、業務フロー分析手段11は、ステップS105で取り出した業務フロー対応情報によって定められる業務プロセスの遷移順序を判定する。業務フロー分析手段11は、業務フロー対応情報の中から1番目の業務プロセスの業務プロセスIDを読み込む。本例では、業務フロー対応情報の1番目(図2に示す例では、業務フローIDに対応する各行のうちの1番目の行)に、業務フローにおける1番目の業務プロセスの情報が記述されているものとする。従って、業務フロー分析手段11は、1番目の業務プロセスの業務プロセスIDとして、BP001を読み込む。
次に、業務フロー分析手段11は、その業務プロセスにおける次業務プロセスIDを読み込み、次にその業務プロセスに遷移すると判定する。図2に示す例では、業務プロセスBP001の次の業務プロセスの業務プロセスIDとしてBP002が記述されているので、BP001の次にBP002に遷移すると判定する。業務フロー分析手段11は、同様に、次に遷移する業務プロセスを順次判定していく。
次業務プロセスIDが複数存在する場合には、その複数の業務プロセスのいずれか1つに遷移することを意味している。このとき、複数の業務プロセスの1つ1つにそれぞれ遷移した場合について、業務プロセスの遷移順序を判定していく。例えば、図2に示す例では、BP002に続く業務プロセスの業務プロセスIDとしてBP003とBP005とが示されている。従って、「BP001→BP002→BP003」と遷移した場合における以降の業務プロセスの遷移順序と、「BP001→BP002→BP005」と遷移した場合における以降の業務プロセスの遷移順序とをそれぞれ判定していく。BP003の次の業務プロセスの業務プロセスIDとしてBP004が記述されているので、BP003の次にBP004に遷移すると判定していく。
このように、業務フロー分析手段11は、業務プロセスの遷移順序を判定していく。本例では、業務プロセスの遷移順序として、「BP001→BP002→BP003→BP004→BP006」、「BP001→BP002→BP005→BP006」という順序を判定する。
さらに、業務フロー分析手段11は、この業務プロセスの遷移順序に従って、各業務プロセスに対応するイベントステータスを列挙する。ただし、業務フロー対応情報において、1つの業務プロセスにおいて、複数のイベントステータスが記述されている場合がある。この場合、その複数のイベントステータスのいずれかが発生することを意味している。業務フロー分析手段11は、業務プロセスの遷移順序に発生しうる全てのイベントステータスの発生順序を列挙する。例えば、2番目の業務プロセスBP002では、EVS002とEVS003のどちらも発生しうる。よって、業務フロー分析手段11は、1番目の業務プロセスにおけるイベントステータスEVS001の後にEVS002が続く場合とEVS003が続く場合のそれぞれについて、イベントステータスの遷移順序を導出していく。本例では、業務フロー分析手段11は、「EVS001→EVS002→EVS004→EVS002→EVS007」、「EVS001→EVS003→EVS004→EVS002→EVS007」などのイベントステータスの遷移順序を導出する。ここでは、2種類のイベントステータスの遷移順序を例示したが、本例において、イベントステータスの遷移順序はこの2種類だけではない。例えば、例示したイベントステータスの遷移順序は、いずれも「BP001→BP002→BP003→BP004→BP006」という業務プロセスの遷移順序に対応するものであるが、「BP001→BP002→BP005→BP006」という遷移順序に対応したイベントデータの遷移順序「EVS001→EVS002→EVS005→EVS007」なども存在する。
このように業務フロー分析手段11は、業務プロセスの遷移順序に対応するイベントステータスの遷移順序を導出した後、遷移順に並べられたイベントステータスに対応するイベントタイプおよびアプリケーション名称を業務フロー対応情報から読み出して、各イベントステータスと組み合わせる。イベントステータスに対応するイベントタイプおよびアプリケーション名称は、そのイベントステータスに対応する業務プロセスIDに対応付けられているイベントタイプおよびアプリケーション名称である。「EVS001→EVS002→EVS004→EVS002→EVS007」という遷移順序を例にすると、最初のEVS001に対応するイベントタイプおよびアプリケーション名称は、BP001に対応づけられた「イベントタイプ:プログラム」、「アプリケーション名称:AP001」である。このデータをEVS001と組み合わせる。2番目以降のイベントステータスについても、同様に、イベントステータスと、イベントタイプ、アプリケーション名称を組み合わせる。
この結果、「EVS001→EVS002→EVS004→EVS002→EVS007」という遷移順序から、以下のようなイベントステータス、イベントタイプ、アプリケーション名称の組み合わせの遷移順序を導出する。
{イベントタイプがプログラムで、アプリケーション名称がAP001で、イベントステータスがEVS001}
→{イベントタイプが操作で、アプリケーション名称がAP002で、イベントステータスがEVS002}
→{イベントタイプがプログラムで、アプリケーション名称がAP003で、イベントステータスがEVS004}
→{イベントタイプが操作で、アプリケーション名称がAP003で、イベントステータスがEVS002}
→{イベントタイプがプログラムで、アプリケーション名称がAP005で、イベントステータスがEVS007}
この遷移順序を遷移順序Aと記す。
また、例えば、「EVS001→EVS002→EVS005→EVS007」という遷移順序から、以下のようなイベントステータス、イベントタイプ、アプリケーション名称の組み合わせの遷移順序を導出する。
{イベントタイプがプログラムで、アプリケーション名称がAP001で、イベントステータスがEVS001}
→{イベントタイプが操作で、アプリケーション名称がAP002で、イベントステータスがEVS002}
→{イベントタイプがプログラムで、アプリケーション名称がAP004で、イベントステータスがEVS005}
→{イベントタイプがプログラムで、アプリケーション名称がAP005で、イベントステータスがEVS007}
業務フロー分析手段11は、業務フロー対応情報から、このようなイベントステータス、イベントタイプ、アプリケーション名称の組み合わせの遷移順序を全て導出する。
次に、業務フロー分析手段11は、導出したイベントステータス、イベントタイプ、アプリケーション名称の組み合わせの遷移順序に、並べることができる業務イベントデータの集合を集合Sの中から探索する。例えば、遷移順序Aの場合、「イベントタイプがプログラムで、アプリケーション名称がAP001で、イベントステータスがEVS001」である業務イベントデータを探索する。続いて、「イベントタイプが操作で、アプリケーション名称がAP002で、イベントステータスがEVS002」である業務イベントデータを探索する。このようにして、各イベントステータス、イベントタイプ、アプリケーション名称の組み合わせ毎に業務イベントデータを探索する。遷移順序Aの最後の組み合わせまで、業務イベントデータが探索できたならば、探索した各業務イベントデータに含まれるイベントステータス、イベントタイプ、アプリケーション名称の組み合わせを並べたデータの集合が、業務フローと対応できる業務イベントの列集合となる。
ここでは、遷移順序Aを例に説明したが、他の遷移順序についても同様に、集合Sから業務イベントデータを探索する。
なお、業務フローと対応できる業務イベントの列集合を探索するときに、1つの業務イベントデータに続く業務イベントデータが複数存在する場合には、業務フロー分析手段11は、その1つの業務イベントデータとの時間間隔が最も短い業務イベントデータを選択する。例えば、「イベントタイプがプログラムで、アプリケーション名称がAP001で、イベントステータスがEVS001」である業務イベントデータに続く業務イベントデータとして、「イベントタイプが操作で、アプリケーション名称がAP002で、イベントステータスがEVS002」である業務イベントデータが複数存在していた場合、その複数の業務イベントデータの中から、開始時刻が、イベントステータスがEVS001の業務イベントデータの終了時刻と最も短い業務イベントデータを選択する。
以上でステップS106の処理を終了する。
業務フロー分析手段11は、ステップS106において、ステップS105で取り出した業務フロー対応情報に合致する業務イベントの列集合(すなわち、業務フロート対応できる業務イベントの列集合)を集合Sから探索できなかったか否かを判定する(ステップS107)。そのような業務イベントの列集合が探索できなかった場合(ステップS107のYES)、ステップS104に移行し、ステップS104以降の処理を繰り返す。そのような業務イベントの列集合を探索できた場合(ステップS107のNO)、ステップS108に移行する。
ステップS108では、業務フロー分析手段11は、ステップS106で探索した業務イベントの列集合に含まれる各イベントタイプ、アプリケーション名称およびイベントステータスの組み合わせを含む各業務イベントデータを参照し、処理効率測定ルール記憶手段15に記憶される処理効率測定ルールに従って各業務プロセスや業務アークの処理効率を算出する。この業務プロセスや業務アークは、ステップS106で探索した業務イベントの列集合に対応する業務プロセスの遷移順序が示す業務プロセスや業務アークである。既に実行したステップS108で、その業務プロセスの遷移順序が示す業務プロセスや業務アークの処理効率を算出していた場合には、新たに処理効率を算出し直して、業務プロセスや業務アークの処理効率を更新する。
業務フロー分析手段11は、業務プロセスや業務アークの処理効率として、例えば、平均処理時間、最大処理時間、一定時間当たりに発生したイベント数などを算出する。
以下のような業務イベントの列集合を算出していたとする。
「イベントタイプがプログラムで、アプリケーション名称がAP001で、イベントステータスがEVS001」→「イベントタイプが操作で、アプリケーション名称がAP002で、イベントステータスがEVS002」→「イベントタイプがプログラムで、アプリケーション名称がAP003で、イベントステータスがEVS004」→「イベントタイプが操作で、アプリケーション名称がAP003で、イベントステータスがEVS002」→「イベントタイプがプログラムで、アプリケーション名称がAP005で、イベントステータスがEVS007」
この列集合は、「BP001→BP002→BP003→BP004→BP006」という業務プロセスの遷移順序に基づいて探索されたものであり、この遷移順序に対応している。業務フロー分析手段11は、この遷移順序が示す各業務プロセスや業務アークの処理効率を、処理効率測定ルール15に従って算出する。
業務フロー分析手段11は、業務プロセスや業務アークに対応する処理効率を算出する場合、その業務プロセスや業務アークを測定対象とする処理効率測定ルールの測定項目を参照し、その測定項目が示す処理効率を算出する。例えば、処理効率測定ルールにおいて、測定対象が業務プロセスBP001であり、測定項目が平均処理時間であるとする。この場合、業務プロセスBP001の処理時間の平均を算出して処理効率とすればよい。測定項目が最大処理時間である場合には、業務プロセスBP001の処理時間のうち最大の処理時間を処理効率とすればよい。業務プロセスBP001の処理時間は、業務フロー対応情報においてBP001に対応付けられているイベントタイプ、アプリケーション名称、およびイベントステータスの組み合わせを含む業務イベントデータに記述された終了時刻と開始時刻の差である。業務フロー分析手段11は、そのような業務イベントデータから、終了時刻と開始時刻の差を算出し、その平均を計算したり、あるいはその最大値を算出したりすればよい。測定対象が業務アークである場合も同様である。例えば、測定対象が、業務アーク「BP001→BP002」である場合、業務フロー対応情報においてBP001に対応付けられているイベントタイプ、アプリケーション名称、およびイベントステータスの組み合わせを含む業務イベントデータの終了時刻と、業務フロー対応情報においてBP002に対応付けられているイベントタイプ、アプリケーション名称、およびイベントステータスの組み合わせを含む業務イベントデータの開始時刻の差を算出し、その平均を計算したり、あるいはその最大値を算出したりすればよい。
また、測定項目が、一定時間当たりに発生したイベント数(一定時間あたりに業務処理装置2から受信した業務イベントデータ数)である場合には、業務フロー分析手段11は、測定対象に対応する業務イベントデータを業務処理装置2から一定時間当たりに受信した数を算出し、処理効率とすればよい。このとき、処理効率測定ルールの測定項目において、測定対象に対応する業務イベントデータのうち特定のイベントステータスの業務イベントデータの一定時間当たりの受信数を処理効率として求めるように定めていてもよい。この場合、業務フロー分析手段11は、測定対象に対応する業務イベントデータであって、測定項目で指示されたイベントステータスの業務イベントデータの一定時間当たりの受信数を処理効率として算出すればよい。
例えば、業務フロー分析手段11は、測定対象に対応する業務イベントデータであって、イベントステータスが「処理の開始」を表している業務イベントデータの一定時間当たりの受信数を処理効率として算出してもよい。
また、例えば、業務フロー分析手段11は、測定対象に対応する業務イベントデータであって、イベントステータスが「処理の終了」を表している業務イベントデータの一定時間当たりの受信数を処理効率として算出してもよい。なお、測定対象に対応する業務イベントデータであってイベントステータスが「処理の終了」を表している業務イベントデータの一定時間当たりの受信数は、業務処理装置2において一定時間あたりに処理されたその測定対象の処理数である。
処理対象が業務アークであり、測定項目が、一定時間当たりに発生したその業務アーク数である場合、業務フロー分析手段11は、その測定項目に従って、その業務アークの一定時間当たりの発生数を求める。
なお、処理効率測定ルールにおいて、1つの測定対象に対して、複数種類の処理効率を算出するように定められていてもよい。例えば、業務プロセスBP001について、平均処理時間、最大処理時間、一定時間当たりに発生したイベント数を算出するように定められていてもよい。この場合、業務フロー分析手段11は、その複数種類の処理効率をそれぞれ算出する。
後述するステップS109では集合Sから業務イベントデータが除外される。従って、業務フロー分析手段11は、ステップS108で平均処理時間などの処理効率を算出するために業務イベントデータを参照するときには、集合Sのコピー元の業務イベントデータを参照すればよい。
ステップS108の後、業務フロー分析手段11は、業務イベントの列集合における各イベントタイプ、アプリケーション名称およびイベントステータスの組み合わせを含む業務イベントデータを集合Sから除外する(ステップS109)。ステップS109の後、ステップS104に移行し、同様の処理を繰り返す。
ステップS104からステップS101に移行するときに、業務フロー分析手段11は、算出した処理効率(各業務プロセスや各業務アークの処理効率)を管理端末3に送信する。このとき、算出した処理効率とともに、ステップS105で取り出した業務フロー対応情報が示す業務プロセスをアイコンで表して各業務プロセスの遷移順序を示す画像(業務フローダイアグラム)を表示させる命令も管理端末3に送信する。この命令には業務プロセスを表すアイコンを表示させる関数や、アイコン間を接続する矢印を表示させる関数などが含まれる。業務フローダイアグラムを表示させる命令の作成処理については後述する。
また、業務フロー分析手段11は、管理端末3に処理効率を送信するが、具体的には、各業務プロセスや各業務アークについて算出した処理効率を含む処理効率情報を管理端末3に送信する。図10は、処理効率情報の例を示す説明図である。図10に示すように、処理効率情報では、業務フローIDに業務プロセスIDが対応付けられる。そして、その各業務プロセスIDに処理効率(平均処理時間、最大処理時間など)が対応付けられる。なお、図10では図示を省略しているが、処理効率情報において、各業務アークの識別子も、業務フローIDに対応付けられている。また、その各業務アークの識別子に処理効率(平均処理時間、最大処理時間など)が対応付けられる。業務フロー分析手段11は、このような処理効率情報を作成し、管理端末3に送信する。
なお、業務フロー分析手段11は、業務フローに対する処理効率を算出してもよい。この場合、業務フロー分析手段11は、処理効率情報において、業務フローIDと処理効率を対応付けておけばよい。
業務フロー分析手段11は、処理効率情報を処理効率情報記憶手段16に記憶させて、その処理効率情報を管理端末3に送信する。
次に、ステップS105で取り出した業務フロー対応情報が示す業務プロセスをアイコンで表して各業務プロセスの遷移順序を示す画像(業務フローダイアグラム)を表示させる命令の作成処理について後述する。
図11は、業務フローダイアグラムを表示させる命令を作成する動作の例を示すフローチャートである。まず、業務フロー対応情報記憶手段12に記憶されている業務フロー対応情報が管理端末3によって更新された場合に、以下の処理を開始する。業務フロー分析手段11は、更新された全ての業務フロー対応情報を、業務監視装置1が備える他の記憶領域にコピーして格納する(ステップS301)。コピーされた業務フロー対応情報の集合を集合Aとする。なお、更新されていない業務フロー対応情報はコピーされず、集合Aに含まれない。
続いて、業務フロー分析手段11は、更新後の業務フロー対応情報の集合Aが空集合であるか否かを判定する(ステップS302)。集合Aが空集合であれば処理を終了する。
集合Aが空集合でなければ(ステップS302のNO)、業務フロー分析手段11は、集合Aから1つの業務フロー対応情報を取り出す。すなわち、集合Aの中の1つの業務フロー対応情報を業務監視装置1のメインメモリ(図示略。)に移動させる。
続いて、業務フロー分析手段11は、ステップS105で取り出した業務フロー対応情報に基づいて、業務プロセスの列集合(遷移順になれば業務プロセスIDの集合)を導出する(ステップS304)。ステップS304では、ステップS106における業務プロセスの遷移順序を判定する動作と同様に業務プロセスの遷移順序を判定し、その結果得られた「BP001→BP002→BP003→BP004→BP006」などの業務プロセスIDの集合を業務プロセスの列集合とすればよい。業務フロー分析手段11は、導出した業務プロセスの列集合を、業務監視装置1の記憶装置に記憶させる。この業務プロセス列集合の集合を集合Bとする。
次に、業務フロー分析手段11は、集合Bに属する業務プロセスの列集合を、業務プロセス数の降順に並び替える(ステップS305)。続いて、業務フロー分析手段11は、集合Bが空集合であるか否かを判定する(ステップS306)。集合Bが空集合であれば(ステップS306のYES)、ステップS302に移行し、ステップS302以降の処理を繰り返す。集合Bが空集合でなければ(ステップS306のNO)、ステップS307に移行する。
ステップS307では、業務フロー分析手段11は、並び替え後の順番に沿って、集合Bに属する業務プロセスの列集合のうちの1つの列集合を取り出す(ステップS307)。すなわち、集合Bの中の1つの列集合(業務プロセスの列集合)を業務監視装置1のメインメモリ(図示略。)に移動させる。
次に、業務フロー分析手段11は、ステップS307で取り出した業務プロセスの列集合に属する各業務プロセスIDのイベントタイプに応じたアイコンを描画領域に配置する関数や、アイコン間を接続する矢印を描画領域に配置する関数からなる命令(関数の集まり)を作成する(ステップS308)。このとき、ステップS303で1つの業務フロー対応情報を取り出した場合、その業務フロー対応情報から導出された業務プロセスの列集合毎に、ステップS306〜S308の処理が行われる。ステップS306〜S308のループ処理を繰り返しているときには、業務フロー分析手段11は、ステップS308で、アイコンを描画領域に配置する関数やアイコン間を接続する矢印を描画領域に配置する関数を、上記の命令に追加する。このとき、ステップS307で取り出したが列集合に含まれる業務プロセスIDのアイコンを配置する関数が既に上記の命令に含まれているならば、そのアイコンを配置する関数の追加は行わない。
以下、業務フロー対応情報が更新され、更新後の業務フロー対応情報が、図2に例示する業務フローIDがBFL001である業務フロー対応情報のみである場合を例にして説明する。業務フロー分析手段11は、更新された全ての業務フロー対応情報を、業務監視装置1が備える他の記憶領域にコピーして格納する(ステップS301)。本例では、図2に例示する業務フローIDがBFL001である業務フロー対応情報のみをコピーし、この1つの業務フロー対応情報のみが集合Aに属する。
この集合Aは空集合でないので、ステップS302からステップS303に移行する。ステップS303において、業務フロー分析手段11は、業務フローIDがBFL001である業務フロー対応情報を集合Aから取り出す。この結果、集合Aは空集合となる。
続くステップS304において、業務フロー分析手段11は、取り出した業務フロー対応情報に基づいて業務プロセスの列集合を導出し、業務監視装置1の記憶装置に記憶させる。本例では、「BP001→BP002→BP003→BP004→BP006」という業務プロセスの列集合と、「BP001→BP002→BP005→BP006」という業務プロセスの列集合が導出される。この列集合の集合が集合Bとなる。
業務フロー分析手段11は、集合Bに属する集合Bに属する業務プロセスの列集合を、業務プロセス数の降順に並び替える(ステップS305)。列集合「BP001→BP002→BP003→BP004→BP006」における業務プロセス数は5であり、列集合「BP001→BP002→BP005→BP006」における業務プロセス数は4である。よって、「BP001→BP002→BP003→BP004→BP006」を1番目の列集合、「BP001→BP002→BP005→BP006」を2番目の列集合として並べ替える。
この時点で集合Bは空集合でないので、ステップS306からステップS307に移行する。ステップS307において、業務フロー分析手段11は、1番目の列集合「BP001→BP002→BP003→BP004→BP006」を取り出す。
次のステップS308で、業務フロー分析手段11は、「BP001→BP002→BP003→BP004→BP006」の各業務プロセスIDのイベントタイプに応じて、各業務プロセスIDを表すアイコンを描画領域に配置する各関数を、業務フローダイアグラムを表示させる命令とする。まず、BP001のイベントタイプは「プログラム」であるので(図2参照。)、プログラムによる業務プロセスであることを示すアイコンを配置する関数を、業務フローダイアグラムを表示させる命令に含める。次に、BP002のイベントタイプは「操作」であるので(図2参照。)、人間の操作による業務プロセスであることを示すアイコンを配置する関数を上記の命令に含める。同様に、BP003のイベントタイプは「プログラム」であるので、プログラムによる業務プロセスであることを示すアイコンを配置する関数を上記の命令に含める。同様に、BP004のイベントタイプは「操作」であるので、人間の操作による業務プロセスであることを示すアイコンを配置する関数を上記の命令に含める。BP006のイベントタイプは「プログラム」であるので、プログラムによる業務プロセスであることを示すアイコンを配置する関数を上記の命令に含める。また、BP001のアイコンとBP002のアイコン間を、BP001のアイコンからBP002のアイコンに向かう矢印で接続するように、矢印を描画領域に配置する関数を上記の命令に追加する。他のアイコン間についても同様に矢印で接続するように、矢印を配置する関数を上記の命令に追加していく。
次のステップS306において、業務フロー分析手段11は、集合Bは空集合ではないと判定し、ステップS307に移行する。ステップS307において、業務フロー分析手段11は、業務プロセスの列集合「BP001→BP002→BP005→BP006」を取り出す。この結果、集合Bは空集合になる。
続くステップS308において、業務フロー分析手段11は、「BP001→BP002→BP005→BP006」の業務プロセスIDのイベントタイプに応じて、業務プロセスIDを表すアイコンを配置する関数を上記の命令に追加していく。BP001のアイコンを配置する関数は、前回のステップS308で命令に含められているので、BP001のアイコンを配置する関数の追加は行わない。BP002,BP006のアイコンについても同様である。BP005のイベントタイプは「プログラム」であるので、プログラムによる業務プロセスであることを示すアイコンを配置する関数を上記の命令に追加する。また、BP002のアイコンからBP005のアイコンに向かう矢印を配置する関数と、BP005のアイコンからBP006のアイコンに向かう矢印を配置する関数を上記の命令に追加する。
その後、ステップS306に移行すると集合Bは空集合であるので、ステップS302に移行する。ステップS302に移行すると集合Aは空集合であるので、処理を終了する。
このようにして作成された命令に基づいて画像を表示した場合、図12に例示する業務フローダイアグラムが表示される。業務フロー分析手段11は、作成した命令を業務監視装置1の記憶装置に記憶させておく。そして、ステップS108において、業務フロー分析手段11は、処理効率情報を管理端末3に送信するときに、処理効率情報に含まれる業務フローIDに応じた命令も管理端末3に送信する。
管理端末3のCPU31は、処理効率情報および命令(業務フローダイアグラムを表示させる命令)を受信すると、処理効率情報に基づいて各業務プロセスおよび各業務アーク毎に処理効率(平均処理時間、最大処理時間、一定時間当たりに発生したイベント数など)を出力装置33に表示させる。また、その各業務プロセスおよび各業務アークを示す業務フローの業務フローダイアグラムを、受信した命令に基づいて出力装置33に表示させる。
図13は、管理端末3が表示する表示画面の例を示す説明図である。管理端末3のCPU31は、処理効率情報に含まれる業務フローID毎に、画面の上部にタブボタンB101を表示する。管理端末3のCPU31は、各タブボタンのうち、選択されたタブボタンの業務フローIDに対応付けられた各業務プロセスIDや各業務アーク毎に、処理効率情報を参照して処理効率を出力装置33に表示させる。また、管理端末3のCPU31は、選択されたタブボタンの業務フローIDに応じた命令(業務フローダイアグラムを表示させる命令)にもとづいて、業務フローダイアグラムを出力装置33に表示させる。図13では、業務フローBFL001に応じた業務フローダイアグラムおよび各業務プロセス、各業務アークの処理効率を表示する例を示している。
また、図13に示すように、管理端末3のCPU31は、平均処理時間、最大処理時間などの各種処理効率毎に、処理効率をソーティングするためのボタンB102を出力装置33に表示させる。管理端末3のCPU31は、ボタンB102が押下された場合、押下されたボタンに応じた処理効率の値が大きい順に各業務プロセスおよび各業務アークをソーティングして出力装置33に再表示させる。例えば、平均処理時間のソーティングボタンが押下された場合には、平均処理時間の値が大きい順に、各業務プロセスおよび各業務アークをソーティングして出力装置33に再表示させる。
次に本実施の形態の効果を説明する。本実施の形態によれば、人間の操作による業務プロセスとプログラムによる業務プロセスが混在する業務フローをリアルタイムに監視し、その業務フローの処理効率をリアルタイムに可視化することができる。その理由は、業務フロー分析手段11が、業務処理装置2のハードウェアおよびソフトウェアに関する業務イベントデータを業務処理装置2から受信する度に、業務フローと対応できる業務イベントの列集合を探索し、探索した業務イベントの列集合の処理効率情報を算出し、その算出結果を管理端末3へ送信するためである。
また本実施の形態によれば、管理端末3に表示された業務フローの処理効率情報をソーティングできるため、業務監視者は、最も処理効率の悪い業務フローおよび業務プロセスおよび業務アークを容易に把握することができる。
実施の形態2.
図14は、本発明の第2の実施の形態の構成例を示すブロック図である。第1の実施の形態と同様の構成要素については、図1と同一の符号を付して説明を省略する。業務処理装置2および管理端末3の構成は、第1の実施の形態における業務処理装置2および管理端末3の構成と同様である。第2の実施の形態における業務監視装置1は、業務フロー分析手段11、業務フロー対応情報記憶手段12、処理効率測定ルール記憶手段15に加えて、業務コスト算出手段13と、財務情報記憶手段14とを備える。
財務情報記憶手段14は、業務フロー対応情報記憶手段12に記憶された業務フロー対応情報において業務フローIDに対応付けられた各業務プロセスIDが示す業務プロセスを処理するために要するコスト(金額)を導出するための情報(財務情報と記す。)を記憶する記憶媒体であり、例えばハードディスクによって実現される。財務情報記憶手段14は、業務コスト算出手段13と管理端末3からアクセス可能である。
財務情報記憶手段14に記憶される個々の財務情報は、各業務プロセスを処理するために要する原価要素の名称と、原価単位のコストを示す情報と、原価要素のコストを測定するための測定指標とを含み、さらに来年度や来月の予算情報、前年度や先月のコスト実績情報などを含んでいてもよい。
原価要素の名称として、各業務プロセスを処理するために要するハードウェア、ソフトウェア、雇用、ハードウェアや人間の収容設備、外部サービスなどがある。業務プロセスを処理するために要するハードウェアの具体例として、例えばサーバやルータなどのハードウェアが挙げられる。また、業務プロセスの処理に要するソフトウェアの具体例として、例えば勘定ソフトウェアやデータベースソフトウェアが挙げられる。また、業務プロセスの処理に要する雇用とは、業務を処理する業務処理者などの雇用である。業務プロセスの処理に要する収容設備の例として、例えばサーバや業務処理者の収容室が挙げられる。また、業務プロセスを処理するために要する外部サービスの具体例として、例えば広域通信ネットワークとの接続サービスなどが挙げられる。
原価単位のコストを示す情報は、業務プロセスを処理する際に1時間や営業時間などの一定時間に要する原価要素のコストなどである。以下、原価単位のコストを示す情報が、業務プロセスを処理する際に一定時間に要する原価要素のコストである場合を例にして説明する。
測定指標は、処理効率のどの項目(平均処理時間、一定時間あたりに処理された業務プロセスの処理数など)を用いて、どの業務プロセスの処理に要するコストを求めるかを示す情報である。なお、一定時間あたりに処理された業務プロセスの処理数は、その業務プロセスに対応する業務イベントデータであってイベントステータスが「処理の終了」を表している業務イベントデータの一定時間当たりの受信数(業務処理装置2からの受信数)である。以下、業務フロー分析手段11が、処理効率として、平均処理時間と、一定時間あたりに処理された業務プロセスの処理数とを算出しているものとして説明する。
図15は、財務情報記憶手段14に記憶されている財務情報の例を示す説明図である。図15に例示する測定指標に記述された「ProcessingTime」は、平均処理時間を表す。また、図15に例示する測定指標に記述された業務プロセスIDは、どの業務プロセスに要するコストを求めるのかを示している。
図15に示す1番目の財務情報を例にして、財務情報が示す内容について説明する。図15に示す1番目の財務情報では、原価要素が「サーバA」で、原価単位の要素が「$0.2/hour(1時間当たり$0.2)」で、測定指標が「BP001.ProcessingTime」となっている。このことは、業務プロセスBP001をサーバAで処理するために要するコストは1時間当たり$0.2であり、業務プロセスBP001の平均処理時間に要するコストを平均処理時間を用いて算出することを示している。
業務コスト算出手段13は、人間による業務とプログラムによる業務が混在する業務フローのコストを算出する。業務コスト算出手段13は、業務フロー分析手段11が算出する業務フローの処理効率情報が更新された場合(すなわち業務フロー分析手段11が新たに業務イベントデータを受信して処理効率情報を算出した場合)、あるいは、財務情報記憶手段14が記憶する財務情報が更新された場合に、業務フロー分析手段11が算出した処理効率情報と財務情報とを参照し、各業務プロセスの処理に要するコスト(金銭)を算出する。
以下、業務コスト算出手段13が行うコスト算出処理について説明する。業務コスト算出手段13が算出するコストとして、業務プロセスを平均処理時間で処理するために要するコスト(平均処理時間に要するコスト)や、業務プロセス1処理当たりのコストがある。
測定指標において平均処理時間を用いることが示されているならば、業務コスト算出手段13は、業務フロー分析手段11によって算出された平均処理時間を用いて、平均処理時間に要するコストを算出する。図15に例示する測定指標において、「ProcessingTime」は、コスト算出のために平均処理時間を用いることを示している。図15に例示する財務情報が記憶されている場合、業務コスト算出手段13は、図15の1行目を参照して、BP001の平均処理時間に、原価単位のコスト(BP001を実行するためにサーバAを一定時間(ここでは1時間とする。)使用するためのコスト)を乗じる。この計算結果は、BP001の処理を平均処理時間で行うときにサーバAの使用に要するコストである。業務コスト算出手段13は、測定指標にBP001と記載されている他の財務情報も参照して、BP001の処理を平均処理時間で行うときに各原価要素の使用に要するコストを算出する。そして、業務コスト算出手段13は、BP001の処理を平均処理時間で行うときに各原価要素の使用に要するコストの総和を算出する。この計算結果は、BP001の処理を平均処理時間で行うときに要するコストとなる。ここでは、BP001の処理に要するコストの算出を例示したが、他の各業務プロセスの処理を平均処理時間で行う場合のコストの算出も同様に行う。
測定指標において、一定時間あたりに処理された業務プロセスの処理数を用いることが示されているならば、業務コスト算出手段13は、業務フロー分析手段11によって算出された一定時間あたりの業務プロセスの処理数を用いて、業務プロセス1処理当たりのコストを算出する。業務コスト算出手段13は、一定時間あたりに処理された業務プロセスの処理数を用いることが測定指標に示されている財務情報を参照すると、原価要素毎に、原価単位のコスト(原価要素を一定時間使用するためのコスト)を、業務フロー分析手段11によって算出された一定時間あたりの業務プロセスの処理数で除算する。業務コスト算出手段13は、測定指標に示された業務プロセスID毎に、除算結果の総和を求める。この計算結果は、各業務プロセス1処理当たりのコストである。例えば、業務コスト算出手段13は、BP001を実行するためにサーバAを一定時間使用するためのコスト(原価単位のコスト)を、一定時間あたりに処理された業務プロセスBP001の処理数で除算し、BP001を1件処理するために要するサーバAのコストを算出する。業務コスト算出手段13は、サーバA以外の原価要素に関しても、BP001を1件処理するために要する各原価要素のコストを算出し、BP001を1件処理するために要する各原価要素のコストの総和を算出する。この計算結果が、BP001を1件処理するために要するコストとなる。業務コスト算出手段13は、他の業務プロセスに関しても同様に、業務プロセス1処理当たりのコストを算出する。
業務コスト算出手段13は、算出したコストを管理端末3に送信する。具体的には、各業務プロセスのコストを含むコスト情報を管理端末3に送信する。図16は、コスト情報の例を示す説明図である。図16に示すように、処理効率情報では、業務フローIDに業務プロセスIDが対応付けられる。そして、その各業務プロセスIDにコスト(業務プロセスを平均処理時間で処理するために要するコストや、業務プロセス1処理当たりのコスト)が対応付けられる。業務コスト算出手段13は、このようなコスト情報を作成し、管理端末3に送信する。
次に本実施の形態の動作を説明する。
業務監視者は、業務処理装置2の人間の操作による業務処理とプログラムによる業務処理が混在する業務の業務コストを監視する場合、財務情報を財務情報記憶記憶手段14に記憶させておく。このとき、管理端末3の入力装置32(図8参照。)には財務情報が入力され、管理端末3のCPU31(図8参照。)は、その財務情報を業務監視装置1に送信し、財務情報を財務情報記憶手段14に記憶させる。
図17は、業務監視装置1の業務コスト算出手段13がコストを算出する動作の例を示すフローチャートである。
まず、業務コスト算出手段13は、業務フロー分析手段11が処理効率情報を更新するか、あるいは財務情報記憶手段14が記憶する財務情報が更新されるまで待機する(ステップS201)。業務フロー分析手段11が処理効率情報を更新しておらず、かつ、財務情報記憶手段14が記憶する財務情報も更新されていない場合、ステップS201の待機状態を継続する。
業務フロー分析手段11が処理効率情報を更新したか、あるいは、財務情報記憶手段14が記憶する財務情報が更新された場合(ステップS201のNO)、業務コスト算出手段13は、業務フロー分析手段11が作成した処理効率情報を、業務監視装置1が備える他の記憶領域にコピーする(ステップS202)。コピーされた処理効率情報の集合を集合Xとする。また、ステップS202において、業務コスト算出手段13は、財務情報記憶手段14に記憶された全ての財務情報を、業務監視装置1が備える他の記憶領域にコピーする。コピーされた財務情報の集合を集合Yとする。
ステップS202の後、業務コスト算出手段13は、集合Xが空集合であるか否かを判定する(ステップS203)。集合Xが空集合であるならば、ステップS201に移行する。集合Xが空集合でないならば(ステップS203のNO)、ステップS204に移行する。
ステップS204において、業務コスト算出手段13は、集合Xから1つの処理効率情報(1つの業務フローIDに対応する情報)を取り出す。すなわちステップS204において、業務コスト算出手段13は、集合Xの中の1つの処理効率情報を業務監視装置1のメインメモリ(図示略。)に移動させる。
続いて、業務コスト算出手段13は、集合Yに属する各財務情報を、業務監視装置1が備える他の記憶領域にコピーする(ステップS204a)。ここでコピーされた財務情報の集合を集合Zとする。すなわち、ステップS204aにおいて、業務コスト算出手段13は、集合Yからコピーした財務情報の集合Zを作成する。
次に、業務コスト算出手段13は、集合Zが空集合であるか否かを判定する(ステップS205)。集合Zが空集合であるならば、ステップS203に移行する。集合Zが空集合でないならば(ステップS205のNO)、ステップS206に移行する。
ステップS206において、業務コスト算出手段13は、集合Zから1つの財務情報(図15に示す1行分に相当する財務情報)を取り出す。すなわち、業務コスト算出手段13は、集合Zの中の1つの財務情報を業務監視装置1のメインメモリ(図示略。)に移動させる。
続くステップS207において、業務コスト算出手段13は、取り出した財務情報を参照し、その財務情報に応じてコストを算出する。具体的には、業務コスト算出手段13は、取り出した財務情報の測定指標が示す業務プロセスの処理効率を、ステップS204で取り出した処理効率情報から抽出する。そして、業務コスト算出手段13は、その処理効率と、財務情報が示す原価単位のコストとを用いて、測定指標に応じたコストを算出する。業務コスト算出手段13は、集合Zが空集合になるまでにステップS207の処理を複数回行っていて、ステップS207である業務プロセスのコストを算出し、その業務プロセスのコストと同種のコストを既に計算していたならば、新たに算出したコストを既に計算したコストに加算していく。
なお、取り出した財務情報の測定指標が示す業務プロセスの処理効率が、ステップS204で取り出した処理効率情報に含まれていなければステップS205に移行し、ステップS205以降の処理を繰り返す。
例えば、図15に例示する1行目の財務情報を取り出したとする。業務コスト算出手段13は、その財務情報の測定指標が示す業務プロセスの処理効率(本例では、BP001のProcessingTime(平均処理時間))を処理効率情報から抽出する。この平均処理時間がa時間であったとする。この場合、業務コスト算出手段13は、財務情報が示す原価単位のコスト($0.20/hour)にa時間を乗じて、0.2・aというコストを算出する。この値は、BP001の処理を平均処理時間で行うときにサーバAの使用に要するコストが$0.2・aであることを意味している。既にステップS207を実行していて、BP001の処理を平均処理時間で行うときに原価要素の使用に要するコストを計算している場合には、新たに算出した0.2・aをそのコストに加算する。
また、例えば、取り出した測定指標が「一定時間あたりに処理されたBP001の処理数」を指定しているならば、業務コスト算出手段13は、一定時間あたりに処理されたBP001の処理数を処理効率情報から抽出する。この処理数がbであったとする。この場合、一定時間あたりに処理されたBP001の処理数bで、財務情報が示す原価単位のコストを除算する。この除算結果は、BP001を1件処理するために、その財務情報が示す原価要素(例えばサーバA)の使用に要するコストを意味している。既にステップS207を実行していて、BP001を1件処理するために原価要素の使用に要するコストを算出しているならば、新たに算出したコストを既に計算したコストに加算していく。
ステップS205において集合Zが空集合と判定されるまで、ステップS205〜S207の処理を繰り返す。ステップS205において集合Zが空集合と判定された時点において、業務プロセスを平均処理時間で行うときに各原価要素の使用に要するコストの総和が業務プロセス毎に求められていることになる。これらのコストは、各業務プロセスを平均処理時間で行うために要するコストである。また、ステップS205において集合Zが空集合と判定された時点において、業務プロセスを1件処理するために原価要素の使用に要するコストの総和が業務プロセス毎に求められていることになる。これらのコストは、各業務プロセスを1件行うために要するコストである。
ステップS205で集合Zが空集合であると判定した場合、業務コスト算出手段13は、ステップS203に移行し、ステップS203以降の処理を繰り返す。
ステップS203からステップS201に移行するときに、業務コスト算出手段13は、算出したコスト(各業務プロセスを平均処理時間で行うために要するコストや、各業務プロセスを1件行うために要するコスト)を管理端末3に送信する。このとき、算出したコストとともに、業務フローダイアグラムを表示させる命令も管理端末3に送信する。
また、業務コスト算出手段13は、管理端末3にコストを送信するが、具体的にはコスト情報を管理端末3に送信する。業務コスト算出手段13は、業務フローIDに業務プロセスを対応付け、業務プロセスに算出したコスト(業務プロセスを平均処理時間で処理するために要するコストや、業務プロセス1処理当たりのコスト)を対応付けたコスト情報(図16参照。)を作成し、管理端末3に送信する。
管理端末3のCPU31は、コスト情報および命令(業務フローダイアグラムを表示させる命令)を受信すると、コスト情報に基づいて各業務プロセス毎にコスト(各業務プロセスを平均処理時間で行うために要するコストや、各業務プロセスを1件行うために要するコスト)を出力装置33に表示させる。また、その各業務プロセスを含む業務フローの業務フローダイアグラムを、受信した命令に基づいて出力装置33に表示させる。
図18は、管理端末3が表示する表示画面の例を示す説明図である。管理端末3のCPU31は、コスト情報に含まれる業務フローID毎に、画面の上部にタブボタンB201を表示する。このタブボタンB201は、図13に示したタブボタンB101と同様のボタンであり、業務フローの選択のために用いられる。図18では、業務フローBFL001が選択され、その業務フローダイアグラムと、業務フローBFL001に対応する各業務プロセスの各コストを表示している場合の例を示している。
また、図18に示すように、管理端末3のCPU31は、各種コスト毎に、コストをソーティングするためのボタンB202を出力装置33に表示させる。CPU31は、ボタンB202が押下された場合、押下されたボタンに応じたコストの値が大きい順に各業務プロセスをソーティングして出力装置33に再表示させる。図18では、各業務プロセスを平均処理時間で行うために要するコストの値が大きい順に業務プロセスをソーティングした場合の例を示している。
なお、図18に例示する画面において、業務フロー分析手段11から受信した処理効率を合わせて表示してもよい。また、来年度や来月の予算情報、前年度や先月のコスト実績情報などを合わせて表示してもよい。
次に本実施の形態の効果を説明する。本実施の形態によれば、人間の操作による業務プロセスとプログラムによる業務プロセスが混在する業務フローをリアルタイムに監視し、その業務の処理コストをリアルタイムに可視化することができる。その理由は、業務処理装置2のハードウェアおよびソフトウェアに関する業務イベントデータを業務処理装置2から受信する度に、業務フロー分析手段11が処理効率情報を作成し、業務コスト算出手段13がその処理効率情報および財務情報からコスト情報を作成し、管理端末3に送信するためである。
また本実施の形態によれば、管理端末3に表示されたコスト情報をソーティングできるため、業務監視者は、最もコストを要した業務プロセスを、容易に把握することができる。
実施の形態3.
図19は、本発明の第3の実施の形態の構成例を示すブロック図である。第1の実施の形態と同様の構成要素については、図1と同一の符号を付して説明を省略する。業務監視装置1および管理端末3の構成は、第1の実施の形態における業務監視装置1および管理端末3の構成と同様である。業務監視装置1および管理端末3の構成は、第2の実施の形態における業務監視装置1および管理端末3の構成と同様であってもよい。第3の実施の形態における業務処理装置2は、業務イベント集約手段21、集約ルール記憶手段27に加えて、業務イベント条件記憶手段22を備える。
業務イベント条件記憶手段22は、業務イベントデータの作成に用いるイベントデータを選別するための条件(業務イベント条件)を記憶する記憶媒体であり、例えばハードディスクによって実現される。業務イベント条件記憶手段22は、業務イベント集約手段21および管理端末3からアクセス可能である。
業務イベント条件記憶手段22に記憶される個々の業務イベント条件は、条件イベントIDと条件内容とを含む。条件イベントIDは、個々の業務イベント条件を他の業務イベント条件と識別するための識別子である。条件内容は、業務イベントデータの作成に用いるイベントデータを選別する条件の内容である。
条件の内容は、業務プロセスの処理に用いられるハードウェアの指定、業務プロセスの処理に用いられるソフトウェアの指定、業務プロセスを処理する業務処理者のユーザIDの指定、業務フロー対応情報記憶手段12に記憶された業務フロー対応情報の業務フローおよび業務プロセスの収集期間の指定のいずれか、あるいはそれらの指定の組み合わせとして記述される。複数種類の指定は、例えば論理積(AND)や論理和(OR)によって組み合わされる。
図20は、業務イベント条件記憶手段22に記憶されている業務イベント条件の一例を示す説明図である。図20に示す例において“or”は論理和を表し、“and”は論理積を表している。
条件イベントIDがSEID001である業務イベント条件は、「アプリケーション名称がAP001またはAP002であり、かつ、入力装置(ハードウェア)がキーボードであり、かつ、ユーザIDが001」という条件を示している。すなわち、ユーザIDが001の業務処理者がキーボードでAP001かAP002のアプリケーションを処理したときに生成されたイベントデータを選別することを表している。
また、条件イベントIDがSEID002である業務イベント条件は、「アプリケーション名称がAP003であり、イベントステータスが『自動メール送信処理の終了』」という条件を示している。すなわち、AP003のアプリケーションソフトウェアによって自動メール送信処理が終了したときに生成されたイベントデータを選別することを表している。
また、条件イベントIDがSEID003である業務イベント条件は、「収集時間が8時30分から17時15分までであり、SEID001を満たすこと」である。すなわち、収集時間が8時30分から17時15分の間に生成されたイベントデータであって、SEID001を満たすイベントデータを選別することを表している。図20に例示したSEID003のように、業務イベント条件の条件内容に他の業務イベント条件を含めてもよい。
業務イベント集約手段21は、業務イベント条件記憶手段22に記憶された業務イベント条件を参照して、生成したイベントデータ(ハードウェアに関する各イベントデータおよびソフトウェアに関する各イベントデータ)の中から、業務イベント条件を満足するイベントデータを選別する。そして、業務イベント集約手段21は、選別したイベントデータの中に業務イベントデータ生成条件を満たしているイベントデータが存在するならば、そのイベントデータを業務イベントデータに集約する(すなわち、業務イベントデータを作成する)。業務イベント集約手段21は、集約した業務イベントデータを業務監視装置1に送信する。
業務イベント集約手段21の動作について、より詳しく説明する。業務イベント集約手段21は、業務処理装置2の入力装置に対して行われた人間の操作に応じて業務処理装置2の処理手段(図示せず。)が処理を行うと、その操作に応じて、ハードウェアに関するイベントデータ(図4参照。)を生成する。また、業務イベント集約手段21は、プログラムに従って業務処理装置2の処理手段(図示せず。)が処理を行うと、その処理に応じて、ソフトウェアに関するイベントデータ(図5参照。)を生成する。なお、業務イベント集約手段21は、生成したイベントデータを業務処理装置2が備える記憶装置(図示せず。)に記憶させる。このイベントデータ生成は、第1の実施の形態と同様である。
業務イベント集約手段21は、生成したイベントデータの中から業務イベント条件記憶手段22に記憶された業務イベント条件を満足するイベントデータを選別する。この選別は、新たにイベントデータを生成する度に行う。そして、業務イベント集約手段21は、集約ルール記憶手段27に記憶される集約ルールと、選別したイベントデータとを参照し、選別したイベントデータが集約ルールの業務イベントデータ生成条件を満たしているか否かを判定する。
イベントデータが業務イベントデータ生成条件を満たしていなければ、業務イベント集約手段21は、業務処理装置2が実行する処理に応じて、イベントデータを生成する処理、イベントデータを選別して、選別したイベントデータが業務イベントデータ生成条件を満たしているか否かを判定する処理を繰り返す。
イベントデータが業務イベントデータ生成条件を満たしているならば、業務イベント集約手段21は、そのイベントデータを用いて業務イベントデータ(図6参照。)を生成する。イベントデータから業務イベントデータを生成する動作は、第1の実施の形態と同様である。業務イベント集約手段21は、業務イベントデータを生成した後、業務イベントデータ生成条件を満足していたイベントデータを、記憶装置(図示略。)から削除する。イベントデータを生成する処理、イベントデータを選別して、選別したイベントデータが業務イベントデータ生成条件を満たしているか否かを判定する処理を繰り返す。
また、本実施の形態において管理端末3は、業務イベント条件記憶手段22に新たな業務イベント条件を設定するための画面、および業務イベント条件記憶手段22に記憶された業務イベント条件を表示、更新、削除するための画面を表示する。
管理端末3のCPU31(図8参照。)は、入力装置32を介して新たな業務イベント条件を設定するための画面の表示を指示されると、出力装置33にその画面を表示させる。そして、入力装置32を介して新たな業務イベント条件が入力されると、CPU31は、業務イベント条件記憶手段22にアクセスして、入力された業務イベント条件を業務イベント条件記憶手段22に記憶させる。
管理端末3のCPU31は、入力装置32を介して、業務イベント条件を表示、変更、削除するための画面の表示を指示されると、業務イベント条件記憶手段22にアクセスして、業務イベント条件を出力装置33に表示させる。また、管理端末3のCPU31は、入力装置32を介して、表示した業務イベント条件の変更や削除を指示されると、その指示に従って業務イベント条件記憶手段22に記憶されている業務イベント条件を変更したり削除したりする。
既に説明したように、業務監視装置1および管理端末3の構成は、第2の実施の形態における業務監視装置1および管理端末3の構成と同様であってもよい。
次に本実施の形態の効果を説明する。第3の実施の形態によれば、第1の実施の形態あるいは第2の実施の形態と同様の効果を得ることができる。また、第3の実施の形態によれば、業務イベント集約手段21は、ハードウェアに関するイベントデータあるいはソフトウェアに関するイベントデータを生成する毎に、業務イベント条件を満たすイベントデータを選別し、選別したイベントデータのみを対象として業務イベントデータ生成条件が満たされるか否かを判定し、業務イベントデータ生成条件が満たされるならば選別したイベントデータのみを用いて業務イベントデータを生成する。従って、業務イベントデータが満たされるか否かを判定する際に参照するイベントデータが減少し、業務イベントデータ生成条件の設定を容易にすることができる。
実施の形態4.
図21は、本発明の第4の実施の形態の構成例を示すブロック図である。第2の実施の形態と同様の構成要素については、図14と同一の符号を付して説明を省略する。業務処理装置2の構成は、第3の実施の形態における業務処理装置の構成と同様であってもよい。第4の実施の形態における管理端末3は、出力切替手段38を備える。
出力切替手段38は、管理端末3にログインしたユーザIDに応じて業務監視装置1が出力する結果を切り替える手段である。具体的には、出力切替手段38は、業務フロー分析手段11から出力された業務効率情報および業務コスト算出手段13から出力されたコスト情報を受信し、ユーザIDと表示する画面情報を規定したルールとを対応付けたユーザ切替情報、および管理端末3にログインした業務監視者のユーザIDを参照して、ユーザIDによって異なる業務効率情報やコスト情報を表示する。
出力切替手段38は、例えば、管理端末3の記憶装置34(図8参照。)に記憶された管理プログラムに従って動作するCPU31によって実現される。以下、出力切替手段38が管理端末3のCPU31によって実現されている場合を例にして説明する。
ユーザ切替情報は、例えば管理端末3の記憶装置34に予め記憶される。ユーザ切替情報は、各業務監視者のユーザID毎に、業務フローIDと、業務プロセスIDと、業務アークを特定する情報、表示すべき処理効率の種類と、表示すべきコストの種類とを対応付けた情報である。なお、個々のユーザIDに対応付けられる業務フローIDと、業務プロセスIDと、業務アークを特定する情報、表示すべき処理効率の種類と、表示すべきコストの種類は、それぞれ複数個であってもよい。
CPU31は、業務監視者によって作業開始時(ログイン時)にその作業監視者のユーザIDを入力装置32を介して入力される。
CPU31は、処理効率情報を業務フロー分析手段11から受信して、図13に例示するような画面を出力装置33に表示させる。ただし、ユーザ切替情報において、ログインした作業監視者のユーザIDに対応付けられた項目のみを出力装置33に表示させる。例えば、図13に示すタブボタンB101のうち、ユーザ切替情報においてユーザIDに対応する業務フローIDを選択させるタブボタンのみを出力装置33に表示させる。
また、CPU31は、そのユーザIDに対応する業務プロセスIDや、業務アークを特定する情報が示す業務プロセスや業務アークのみを出力装置33に表示させる。例えば、図13では業務プロセス「BP002」や業務アーク「BP003→BP004」を示しているが、CPU31は、ユーザ切替情報においてユーザIDとこれらの業務プロセスや業務アークとの対応付がなされていなければ、これらの業務プロセスや業務アークの表示は行わず、ユーザIDに対応する業務プロセスIDや、業務アークを特定する情報が示す業務プロセスや業務アークのみを出力装置33に表示させる。
また、CPU31は、平均処理時間、最大処理時間、一定時間当たりに発生したイベント数などの各種処理効率のうち、ユーザ切替情報において、ログインした作業監視者のユーザIDに対応付けられた処理効率のみを出力装置33に表示させる。例えば、ユーザ切替情報においてユーザIDと対応付けられた処理効率が平均処理時間のみであるならば、CPU31は、処理効率として平均時間のみを出力装置33に表示させ、最大処理時間などの他の処理効率の表示は行わない。
図22は、本実施の形態において表示されるコスト情報の例を示す説明図である。CPU31は、コスト情報を表示する場合にも、ユーザ切替情報において、ログインした作業監視者のユーザIDに対応付けられた項目のみを出力装置33に表示させる。例えば、ユーザ切替情報においてユーザIDに対応している業務フローIDを選択させるタブボタンのみを出力装置33に表示させる。
また、CPU31は、そのユーザIDに対応する業務プロセスIDのみを出力装置33に表示させる。図22では、BP002やBP004などだけがユーザIDに対応付けられていて、それらの業務プロセスIDのみを表示している場合を示している。
また、CPU31は、業務プロセスを平均処理時間で処理するために要するコストなどの各種コストのうち、ユーザ切替情報において、ログインした作業監視者のユーザIDに対応付けられたコストのみを出力装置33に表示させる。図22に示す例では、業務プロセスを平均処理時間で処理するために要するコストや、業務プロセス1処理当たりのコストなどだけがユーザIDに対応付けられていて、それらのコストのみを表示している場合を示している。
また、CPU31は、ユーザIDに応じて処理効率情報やコスト情報を表示する場合、ログアウトボタンB310も出力装置33に表示させる。ログアウトボタンB301が押下されると、CPU31は、ユーザIDに応じた処理効率情報やコスト情報の表示を停止し、図13や図18に例示したようなユーザIDに依存しない画面を表示させる。
また、ユーザ切替情報において、ユーザIDに応じて業務フローダイアグラム内のアイコンの表示態様を変更させるように指定されていてもよい。そして、CPU31は、その指定に従ってアイコンの表示態様を変化させてもよい。図22では、ユーザIDが001である場合にBP002のアイコンを黒色で表示しBP004のアイコンを破線で表示することがユーザ切替情報で指定されていて、その指定に従って業務フローダイアグラムを表示させた場合を示している。なお、業務フローダイアグラムを表示させる命令に含まれる関数のパラメータを表示態様に応じて変更することで、アイコンの表示態様を変更することができる。
第4の実施の形態によれば、管理端末3にログインしたユーザに応じて業務プロセスなどの処理効率とコスト情報の表示をカスタマイズすることが可能であるため、業務監視者が、リアルタイムに可視化された処理効率とコスト情報を認知することを支援できる。例えば、経営者であれば、全ての項目を確認する必要があるが、一般社員であれば、その社員に応じた項目だけ確認できれば十分である場合がある。このような場合、一般社員の業務に応じた項目だけ表示されるように表示内容を個別にカスタマイズすることができ、表示内容の確認が容易になる。
上記の各実施の形態において、業務フロー分析手段11、業務コスト算出手段13は、例えば、業務監視プログラムに従って動作する業務監視装置1のCPUによって実現される。業務監視プログラムは、業務監視装置1の記憶装置に記憶される。
また、業務イベント集約手段21は、例えば、データ生成プログラムに従って動作する業務処理装置2のCPUによって実現される。データ生成プログラムは、業務処理装置2の記憶装置に記憶される。
以上本発明の実施の形態について説明したが、本発明は上記の各実施の形態のみに限定されず、その他各種の付加変更が可能である。例えば、本発明の業務監視装置1は業務処理装置2と物理的に別のコンピュータである必要はなく、何れかの業務処理装置2を構成するコンピュータを業務監視装置1として使用することも可能である。また、本発明の業務監視装置1は、その有する機能をハードウェア的に実現することは勿論、コンピュータとプログラムとで実現することができる。プログラムは、磁気ディスクや半導体メモリなどのコンピュータ可読記録媒体に記録されて提供され、コンピュータの立ち上げ時などにコンピュータに読み取られ、そのコンピュータの動作を制御することにより、そのコンピュータを前述した各実施の形態における業務監視装置1として機能させ、前述した処理を実行させる。