異常事例判定プログラム、異常事例判定装置および異常事例判定方法
【課題】異常な事例を精度良く判定すること。
【解決手段】異常事例判定装置300は、異常事例候補抽出部320、異常事例判定部350を含む。異常事例候補抽出部320が、想定分布を基にして、この想定分布から外れる異常事例候補データを業務プロセス事例データから抽出する。異常事例判定部350は、イベントの所定の発生日時を有する業務プロセス事例データの数と、イベントの所定の発生日時を有する異常事例候補データの数との比率に基づいて、異常な事例を判定する。
【解決手段】異常事例判定装置300は、異常事例候補抽出部320、異常事例判定部350を含む。異常事例候補抽出部320が、想定分布を基にして、この想定分布から外れる異常事例候補データを業務プロセス事例データから抽出する。異常事例判定部350は、イベントの所定の発生日時を有する業務プロセス事例データの数と、イベントの所定の発生日時を有する異常事例候補データの数との比率に基づいて、異常な事例を判定する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、異常事例判定プログラム等に関する。
【背景技術】
【0002】
従来、業務を改善することを目的として、業務システムの業務プロセスを分析する業務プロセス分析装置が存在する。この業務プロセス分析装置は、業務システムの運用データを基にして、業務フローを表示し、実運用中の業務プロセスを分析する。
【0003】
例えば、業務プロセス分析装置は、正常な業務フローと、分析対象となる業務フローとを比較することで、業務プロセス中の異常な事例を特定する。図30は、従来技術を説明するための図(1)である。図30の業務フローIDは、業務フローを識別するものである。シーケンスは、業務フローのシーケンスを示す。ここでは、正常な業務フローを業務フロー1とする。業務プロセス分析装置は、業務フロー1のシーケンスと、業務フロー2〜4のシーケンスとを各々比較すると、各2シーケンスで共通していない(相違する)部分が存在する。例えば、業務フロー1のシーケンスと業務フロー2のシーケンスでは、「作業工程B」と「作業工程b」の部分が共通していない。また、業務フロー1のシーケンスと業務フロー3のシーケンスとでは「第1チェック工程終了」と「第1チェック工程ラインアウト」の部分が共通していない。また、業務フロー1のシーケンスと業務フロー4のシーケンスとでは「最終チェック工程ラインアウト」と「最終チェック工程終了」→「梱包ラインアウト」の部分が共通していない。この場合には、業務プロセス分析装置は、業務フロー2〜4に対応する事例を、異常な事例であると判定する。
【0004】
また、業務プロセス分析装置は、各業務プロセスに含まれるイベント間の遷移時間の平均値や標準偏差を利用して、異常な事例を判定していた。図31は、従来技術を説明するための図(2)である。図31の横軸は、イベント間の遷移時間を示す。縦軸は、業務プロセスの事例の件数を示す。また、1aは遷移時間の平均値に対応し、1bは遷移時間の標準偏差を2倍し、平均値に加算したものに対応する。1bよりも右側に存在する各事例1cは、平均的な事例と比較して、遷移時間が統計的に有意に大きい。このため、業務プロセス分析装置は、各事例1cを、異常な事例であると判定する。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開2008−27072号公報
【特許文献2】国際公開第2007/132547号
【発明の概要】
【発明が解決しようとする課題】
【0006】
しかしながら、上述した従来技術では、業務プロセスの異常な事例を精度良く判定することができない場合が存在するという問題があった。
【0007】
例えば、図30に示した業務フローのシーケンスの比較により、異常な事例を判定する場合には、シーケンス以外に正常事例との違いが表出しない問題の要因がある異常な事例を判定することができない。また、図31に示した方法により異常な事例を判定する際、正常な事例と異常な事例とが明確に分離していない場合には、異常な事例を特定することができない。
【0008】
図32は、正常な事例と異常な事例とが明確に分離していない例を示す図である。図32の横軸は、イベント間の遷移時間を示す。縦軸は、業務プロセスの事例の件数を示す。図32の2aには、正常な事例と異常な事例とが含まれており、平均値と標準偏差のみでは、異常な事例のみを抽出することができない。
【0009】
開示の技術は、上記に鑑みてなされたものであって、異常な事例を精度良く判定することができる異常事例判定プログラム、異常事例判定装置および異常事例判定方法を提供することを目的とする。
【課題を解決するための手段】
【0010】
開示の異常事例判定プログラムは、イベント間の遷移時間のヒストグラムが想定分布から外れる業務プロセス事例を異常事例の候補として複数の業務プロセス事例から抽出する。また、開示の異常事例判定プログラムは、所定の特徴を有する前記異常事例の候補の件数と、前記所定の特徴を有する業務プロセス事例の件数との比率を基にして、前記異常事例の候補から異常事例を判定する。
【発明の効果】
【0011】
開示の異常事例判定プログラムの一つの態様によれば、異常な事例を精度良く判定することができるという効果を奏する。
【図面の簡単な説明】
【0012】
【図1】図1は、本実施例にかかる異常事例判定システムの構成を示す図である。
【図2】図2は、受注DBのデータ構造の一例を示す図である。
【図3】図3は、生産DBのデータ構造の一例を示す図である。
【図4】図4は、手配DBのデータ構造の一例を示す図である。
【図5】図5は、配送DBのデータ構造の一例を示す図である。
【図6A】図6Aは、品番DBのデータ構造の一例を示す図である。
【図6B】図6Bは、属性DBのデータ構造の一例を示す図である。
【図7】図7は、業務プロセス事例抽出装置の構成を示す図である。
【図8】図8は、受注DBを基に生成されるイベント候補データの一例を示す図である。
【図9】図9は、生産DBを基に生成されるイベント候補データの一例を示す図である。
【図10】図10は、手配DBを基に生成されるイベント候補データの一例を示す図である。
【図11】図11は、配送DBを基に生成されるイベント候補データの一例を示す図である。
【図12A】図12Aは、業務プロセス事例生成部への入力の一例を説明するための図である。
【図12B】図12Bは、業務プロセス事例生成部の処理の一例を説明するための図である。
【図13】図13は、業務プロセス事例データの一例を示す図である。
【図14】図14は、業務プロセス事例格納部に格納される各業務プロセス事例データの一例を示す図である。
【図15】図15は、ディスプレイに表示される全体フローの一例を示す図である。
【図16】図16は、異常事例候補抽出部の構成を示す図である。
【図17】図17は、フィッテング部の処理結果を示す図である。
【図18】図18は、異常事例候補自動判定部の処理を説明するための図(1)である。
【図19】図19は、異常事例候補自動判定部の処理を説明するための図(2)である。
【図20】図20は、集計結果の一例を示す図である。
【図21A】図21Aは、第1の方式を説明するための図(1)である。
【図21B】図21Bは、第1の方式を説明するための図(2)である。
【図22】図22は、第2の方式を説明するための図である。
【図23】図23は、第3の方式を説明するための図(1)である。
【図24】図24は、第3の方式を説明するための図(2)である。
【図25】図25は、異常事例判定装置の処理手順を示すフローチャートである。
【図26】図26は、異常事例判定処理の処理手順を示すフローチャート(1)である。
【図27】図27は、異常事例判定処理の処理手順を示すフローチャート(2)である。
【図28】図28は、異常事例判定処理の処理手順を示すフローチャート(3)である。
【図29】図29は、異常事例判定プログラムを実行するコンピュータの一例を示す図である。
【図30】図30は、従来技術を説明するための図(1)である。
【図31】図31は、従来技術を説明するための図(2)である。
【図32】図32は、正常な事例と異常な事例とが明確に分離していない例を示す図である。
【発明を実施するための形態】
【0013】
以下に、本願の開示する異常事例判定プログラム、異常事例判定装置および異常事例判定方法の実施例を図面に基づいて詳細に説明する。なお、この実施例によりこの発明が限定されるものではない。
【実施例】
【0014】
本実施例にかかる異常事例判定システムの構成について説明する。図1は、本実施例にかかる異常事例判定システムの構成を示す図である。図1に示すように、この異常事例判定システムは、業務システム100、業務プロセス事例抽出装置200、異常事例判定装置300を有する。
【0015】
業務システム100は、各種の業務を実行する。この業務システム100は、受注DB100a、生産DB100b、手配DB100c、配送DB100d、品番DB100e、属性DB100fを有する。例えば、各DB100a〜100eは、リレーショナルデータベースである。業務システム100は、各DB100a〜100eのデータを、業務プロセス事例抽出装置200、異常事例判定装置300に通知する。また、業務システム100は、属性DB100fのデータを、異常事例判定装置300に通知する。ただし、その通知方法は、業務システム100が異常事例判定装置300からの検索要求に逐次応じるというものである必要は無く、業務システムのある時点でのバックアップ用の一括出力や、業務システムのアプリケーションの動作ログ等の出力で良い。
【0016】
ここで、各DB100a〜100dのデータ構造の一例について説明する。図2は、受注DBのデータ構造の一例を示す図である。図2に示すように、受注DB100aは、受注DBのスキーマ情報101a、受注DBのレコード群102aを含む。スキーマ情報101aにおいて、フィールド(Field)1〜4のそれぞれに、フィールド名、キー設定、データ型、レコード長、コメントが登録される。スキーマ情報101aにおいて、フィールド1には、日時が登録され、フィールド2には主キーである受注番号が登録される。また、フィールド3には、地域が登録され、フィールド4には、受注内容が登録される。フィールド1〜4に登録される具体的なデータは、レコード群102aのようになる。スキーマ情報101aを利用することで、レコード群102aの内容を把握することができる。
【0017】
図3は、生産DBのデータ構造の一例を示す図である。図3に示すように、生産DB100bは、生産DBのスキーマ情報101b、生産DBのレコード群102bを含む。スキーマ情報101bにおいて、フィールド(Field)1〜5のそれぞれに、フィールド名、キー設定、データ型、レコード長、コメントが登録される。スキーマ情報101bにおいて、フィールド1には、日時が登録され、フィールド2には、主キーである生産番号が登録される。フィールド3には、副キーである受注番号が登録され、フィールド4には、副キーである品番が登録される。フィールド5には、納期が登録される。フィールド1〜5に登録される具体的なデータは、レコード群102bのようになる。スキーマ情報101bを利用することで、レコード群102bの内容を把握することができる。
【0018】
図4は、手配DBのデータ構造の一例を示す図である。図4に示すように、手配DB100cは、手配DBのスキーマ情報101c、手配DBのレコード群102cを含む。スキーマ情報101cにおいて、フィールド(Field)1〜5のそれぞれに、フィールド名、キー設定、データ型、レコード長、コメントが登録される。スキーマ情報101cにおいて、フィールド1には、日時が登録され、フィールド2には、主キーである手配番号が登録される。フィールド3には、副キーである受注番号が登録され、フィールド4には、副キーである品番が登録される。フィールド5には、納品先が登録される。フィールド1〜5に登録される具体的なデータは、レコード群102cのようになる。スキーマ情報101cを利用することで、レコード群102cの内容を把握することができる。
【0019】
図5は、配送DBのデータ構造の一例を示す図である。図5に示すように、配送DB100dは、配送DBのスキーマ情報101d、配送DBのレコード群102dを含む。スキーマ情報101dにおいて、フィールド(Field)1〜4のそれぞれに、フィールド名、キー設定、データ型、レコード長、コメントが登録される。スキーマ情報101dにおいて、フィールド1には、日時が登録され、フィールド2には、主キーである手配番号が登録される。フィールド3には、副キーである配送便が登録され、フィールド4には、納品先が登録される。フィールド1〜4に登録される具体的なデータは、レコード群102dのようになる。スキーマ情報101dを利用することで、レコード群102dの内容を把握することができる。
【0020】
図6Aは、品番DBのデータ構造の一例を示す図である。図6Aに示すように、品番DB100eは、品番DBのスキーマ情報101e、品番DBのレコード群102eを含む。スキーマ情報101eにおいて、フィールド(Field)1、2に、フィールド名、キー設定、データ型、レコード長、コメントが登録される。スキーマ情報101eにおいて、フィールド1には、主キーである品番が登録され、フィールド2には、品名が登録される。フィールド1、2に登録される具体的なデータは、レコード群102eのようになる。スキーマ情報101eを利用することで、レコード群102eの内容を把握することができる。
【0021】
図6Bは、属性DBのデータ構造の一例を示す図である。図6Bに示すように、属性DB100fは、受注番号、生産番号、手配番号、配送便、属性値を含む。また、属性値は、担当者、装置、図番を含む。このうち、担当者は各イベントに携わった担当者に対応する。装置は、各イベントで利用した装置に対応する。図番は、各イベントで利用した物品の設計図等に対応するものである。例えば、図6Bにおいて、受注番号「JT01」の受注イベントでは、担当者「A」が携わっている。また、生産番号「SS01」の生産イベントでは、担当者「C」が携わっており、「No.1」の装置を利用しており、生産した物品の図番は「XX」である。その他の受注番号、生産番号、手配番号、配送便も、該当する属性値が属性DB100fに登録されている。ただし、前記属性値は、必ずしも属性DB100fに一括登録されている必要は無く、受注DB100a、生産DB100b、手配DB100c、配送DB100d、品番DB100eに分散して格納することも可能である。
【0022】
業務プロセス事例抽出装置200は、業務システムから各DB100a〜100eのデータを取得し、業務プロセス事例データを生成する装置である。業務プロセス事例抽出装置200は、業務プロセス事例データを、業務プロセス事例格納部200aに格納する。
【0023】
図7は、業務プロセス事例抽出装置の構成を示す図である。図7に示すように、この業務プロセス事例抽出装置200は、整形部201、業務データ格納部202、データ関連性判定部203、業務プロセス事例生成部204、業務プロセス事例格納部200aを有する。
【0024】
整形部201は、業務システム100から各DB100a〜100eのデータを取得し、各DB100a〜100e単独の属性及びデータ内容に基づき、イベント候補データを業務データ格納部202に格納する。例えば、整形部201は、国際公開番号WO2008/032393に開示された従来技術に基づいて、イベント候補データを生成する。
【0025】
図8は、受注DBを基に生成されるイベント候補データの一例を示す図である。図8に示すように、イベント候補データ202aは、イベント名、タイムスタンプ、イベントID・関連ID候補を含む。イベント名は、受注が登録される。タイムスタンプは、図2の日時に対応するものであり、受注イベントが行われた日時が登録される。イベントID・関連ID候補は受注番号、地域を含む。例えば、この受注番号は、図2の受注番号に対応する。
【0026】
図9は、生産DBを基に生成されるイベント候補データの一例を示す図である。図9に示すように、イベント候補データ202bは、イベント名、タイムスタンプ、イベントID・関連ID候補を含む。イベント名は、生産が登録される。タイムスタンプは、図3の日時に対応するものであり、生産イベントが行われた日時が登録される。イベントID・関連ID候補は生産番号、受注番号、品番を含む。生産番号は、図3の生産番号に対応する。関連IDは、受注番号を含む。受注番号は、図3の受注番号に対応する。
【0027】
図10は、手配DBを基に生成されるイベント候補データの一例を示す図である。図10に示すように、イベント候補データ202cは、イベント名、タイムスタンプ、イベントID・関連ID候補を含む。イベント名は、手配が登録される。タイムスタンプは、図4の日時に対応するものであり、手配イベントが行われた日時が登録される。イベントID・関連ID候補は手配番号、受注番号、品番、納品先を含む。手配番号は、図4の手配番号に対応する。受注番号は、図4の受注番号に対応する。
【0028】
図11は、配送DBを基に生成されるイベント候補データの一例を示す図である。図11に示すように、イベント候補データ202dは、イベント名、タイムスタンプ、イベントID・関連IDを含む。イベント名は、配送が登録される。タイムスタンプは、図5の日時に対応するものであり、配送イベントが行われた日時が登録される。イベントID・関連ID候補は、手配番号、配送便、納品先を含む。手配番号は、図5の手配番号に対応する。配送便は、図5の配送便に対応する。
【0029】
図8〜図11に示したイベント候補データ202a〜202dは、業務データ格納部202に格納される。なお、品番DB100eには、タイムスタンプに対応するフィールドが存在しないため、イベントデータは生成されない。
【0030】
図7の説明に戻る。データ関連性判定部203は、業務データ格納部202に格納されたイベント候補データ202a〜202dの関連性を判定する処理部である。例えば、データ関連性判定部203は、特開2008−27072に開示された従来技術に基づいて、関連性を判定する。
【0031】
業務プロセス事例生成部204は、データ関連性判定部203から出力されるイベントデータと、イベントデータ間の関連図を基にして、業務プロセス事例データを生成する処理部である。例えば、業務プロセス事例生成部204は、特開2008−27072に開示された従来技術に基づいて、業務プロセス事例データを生成する。
【0032】
図12Aは、業務プロセス事例生成部への入力の一例を説明するための図である。図12Aに示すように、に示すように、イベントデータ202aのイベントIDは、イベントデータ202bの関連IDと、イベントデータ202cの関連IDに関連している。また、イベントデータ202cのイベントIDは、イベントデータ202dのイベントIDに関連している。
【0033】
図12Bは、業務プロセス事例生成部の処理の一例を説明するための図である。図12に示すように、イベント候補データ202aのイベントIDは、イベント候補データ202bの関連IDと、イベント候補データ202cの関連IDに関連している。また、イベント候補データ202cのイベントIDは、イベント候補データ202dのイベントIDに関連している。業務プロセス事例生成部204は、関連するインスタンスを抽出し、時間経過の順につなぎ合わせることで、業務プロセス事例データを生成する。
【0034】
図12Bを用いて、業務プロセス事例生成部204が、業務プロセス事例データを生成する処理を説明する。この業務プロセス事例データは、プロセスインスタンスに対応するものである。ここでは、イベント候補データ202aの受注番号「JT01」の受注イベントインスタンスを起点とする。
【0035】
業務プロセス事例生成部204は、関連IDのフィールド値として、受注番号「JT01」をとるレコードを確定する。図12Bに示す例では、業務プロセス事例生成部204は、イベント候補データ202bから2つの生産イベントインスタンス、イベント候補データ202cから3つの手配イベントインスタンスを確定する。
【0036】
続いて、業務プロセス事例生成部204は、関連IDのフィールド値として、手配番号「TH01」、「TH02」、「TH03」をとるレコードを確定する。図12Bに示す例では、業務プロセス事例生成部204は、イベント候補データ202dから3つの配送イベントインスタンスを確定する。
【0037】
業務プロセス事例生成部204は、上記確定したイベントインスタンスを、該イベントインスタンスのタイムスタンプに基づいて時間経過の順につなぎ合わせることで、業務プロセス事例データを生成する。
【0038】
図13は、業務プロセス事例データの一例を示す図である。図13に示すように、業務プロセス事例データは、各イベントインスタンスが、時間経過の順につながれている。具体的には、受注イベントインスタンス10、生産イベントインスタンス11、手配イベントインスタンス12、手配イベントインスタンス13、手配イベントインスタンス14の順につながれる。また、配送イベントインスタンス15、生産イベントインスタンス16、配送イベントインスタンス17、配送イベントインスタンス18の順位つながれる。
【0039】
同様に、業務プロセス事例生成部204は、残りの業務プロセス事例データを生成する。業務プロセス事例生成部204は、生成した各業務プロセス事例データを、業務プロセス事例格納部200aに格納する。
【0040】
業務プロセス事例格納部200aは、複数の業務プロセス事例データを記憶する。図14は、業務プロセス事例格納部に格納される各業務プロセス事例データの一例を示す図である。図14に示す例では、業務プロセス事例データ1〜4が示されている。
【0041】
業務プロセス事例データ1は、図13に対応する業務プロセス事例データである。業務プロセス事例データ2は、受注イベントインスタンス20、手配イベントインスタンス21、配送イベントインスタンス22が順に接続されている。業務プロセス事例データ3は、受注イベントインスタンス30、生産イベントインスタンス31、生産イベントインスタンス32、手配イベントインスタンス33、配送イベントインスタンス34が順に接続されている。業務プロセス事例データ4は、受注イベントインスタンス40、手配イベントインスタンス41、配送イベントインスタンス42が順に接続されている。
【0042】
図1の説明に戻る。異常事例判定装置300は、業務プロセス事例格納部200aに格納された各業務プロセス事例データから、異常な業務プロセス事例データを判定する装置である。図1に示すように、異常事例判定装置300は、業務フロー表示部310、異常事例候補抽出部320、業務プロセス属性値取得部330、判定用属性値生成部340、異常事例判定部350を有する。
【0043】
業務フロー表示部310は、業務プロセス事例格納部200aから、各業務プロセス事例データを取得し、取得した各業務プロセス事例データを重ね合わせた全体フローを生成し、生成した全体フローをディスプレイに表示する。業務フロー表示部310が、各業務プロセス事例データを重ね合わせて、全体フローを生成する処理は、国際公開番号WO2007/132547に開示された技術を利用すればよい。
【0044】
例えば、業務フロー表示部310は、図14の各業務プロセス事例データ1〜4を重ね合わせることで、図15に示す全体フローを生成し、ディスプレイに表示する。図15は、ディスプレイに表示される全体フローの一例を示す図である。図15の「Initial」は、業務フローの開始点を表す仮想的なイベントであり、「Final」は、業務フローの終了点を表す仮想的なイベントである。また、図15の受注は受注イベントに対応し、生産は生産イベントに対応し、手配は手配イベントに対応し、配送は配送イベントに対応する。
【0045】
利用者は、全体フローが表示されたディスプレイを参照し、入力装置を操作して、異常事例の検査対象となる複数の事例を選択する。業務フロー表示部310は、利用者によって選択された複数の事例に対応する複数の業務プロセス事例データを、異常事例候補抽出部320に出力する。
【0046】
異常事例候補抽出部320は、業務フロー表示部310から取得する業務プロセス事例データと、業務プロセス事例格納部200aに格納された業務プロセス事例データとを基にして、異常な事例の候補となる業務プロセス事例データを判定する処理部である。以下の説明において、異常な事例の候補となる業務プロセス事例データを、異常事例候補データと表記する。異常事例候補抽出部320は、異常事例候補データを、異常事例候補格納部320aに登録する。
【0047】
図16は、異常事例候補抽出部の構成を示す図である。図16に示すように、この異常事例候補抽出部320は、統計情報算出部321、異常事例候補手動設定部322、異常事例候補自動設定部323、異常事例候補格納部320aを有する。
【0048】
統計情報算出部321は、ヒストグラム生成部321aと、フィッテング部321bとを有する。ヒストグラム生成部321aは、各業務プロセス事例データに基づいて、イベント間の遷移時間のヒストグラムを生成する処理部である。このヒストグラムは、例えば、横軸を遷移時間、縦軸を事例の件数とする。ここで、事例の件数とは、事例に対応する業務プロセス事例データの数を示す。
【0049】
フィッテング部321bは、予め指定された想定分布を、ヒストグラムにフィッテングする処理部である。この想定分布は、正規分布、ポアソン分布、べき乗分布等に対応するものである。また、フィッテング部321bは、統計的な手法により、遷移時間毎の事例の件数の誤差の範囲を算出する。
【0050】
図17は、フィッテング部の処理結果を示す図である。図17の横軸はイベント間の遷移時間であり、縦軸は事例の件数である。破線50は、想定分布に対して非線形型の最小二乗法等を用いて求められる線分である。51は、遷移時間毎の誤差の範囲を示す。フィッテング部321bは、処理結果を異常事例候補手動設定部322および異常事例候補自動判定部323に出力する。また、フィッテング部321bは、各業務プロセス事例データを、異常事例候補手動設定部322および異常事例候補自動判定部323に出力する。
【0051】
異常事例候補手動設定部322は、フィッテング部321bの処理結果を取得し、取得した処理結果をディスプレイに表示することで、利用者に異常事例候補データを選択させる処理部である。利用者は、処理結果の表示されたディスプレイを参照し、入力装置を操作して、異常事例の候補を選択する。例えば、異常事例候補手動設定部322は、利用者によって、遷移時間2.5〜6の領域が選択された場合には、業務フロー表示部310から取得した複数の業務プロセス事例データのうち、遷移時間が2.5〜6に含まれるものを選択する。そして、異常事例候補手動設定部322は、選択した業務プロセス事例データを、異常事例候補データとして異常事例候補格納部320aに登録する。
【0052】
異常事例候補自動判定部323は、フィッテング部321bの処理結果を取得し、異常事例候補データを判定する処理部である。異常事例候補自動判定部323は、判定した異常事例候補データを、異常事例候補格納部320aに登録する。例えば、異常事例候補自動判定部323は、イベント間の遷移時間の平均値および標準偏差に基づいて、異常事例候補データを判定する。または、異常事例候補自動判定部323は、想定分布を基にして、異常事例候補データを判定する。
【0053】
まず、異常事例候補自動判定部323が、遷移時間の平均値および標準偏差に基づいて、異常事例候補データを判定する処理について説明する。異常事例候補自動判定部323は、各業務プロセス事例データのイベント間の遷移時間の平均値および標準偏差を求める。異常事例候補自動判定部323は、式(1)に基づいて、正常判定上限遷移時間を算出する。
【0054】
正常判定上限遷移時間=平均値+2×標準偏差・・・(1)
【0055】
異常事例候補自動判定部323は、フィッテング部321bの処理結果と、正常判定上限遷移時間とを比較して、正常判定上限遷移時間よりも大きい遷移時間を有する業務プロセス事例データを異常事例であると判定する。異常事例候補自動判定部323は、判定した業務プロセス事例データのうち、業務フロー表示部310から取得した業務プロセス事例に対応するものを、異常事例候補データと判定する。図18は、異常事例候補自動判定部の処理を説明するための図(1)である。図18の線60は、正常判定上限遷移時間に対応する。図18に示す例では、異常事例候補自動判定部323は、正常判定上限遷移時間60よりも右側の業務プロセス事例データのうち、業務フロー表示部310から取得した業務プロセス事例データに対応するものを、異常事例候補データと判定する。
【0056】
ただし、式(1’)で算出される正常判定下限遷移時間よりも小さい遷移時間の業務プロセス事例データが存在する場合は、それらも異常事例候補データと判定する。
【0057】
正常判定下限遷移時間=平均値−2×標準偏差・・・(1’)
【0058】
続いて、異常事例候補自動判定部323が、想定分布を基にして、異常事例候補データを判定する処理について説明する。異常事例候補自動判定部323は、想定分布とヒストグラムとを比較し、想定分布から誤差範囲を超えて外れる事例を、異常事例候補データと判定する。図19は、異常事例候補自動判定部の処理を説明するための図(2)である。図19に示す例では、想定分布50から外れる事例は、枠70〜72に含まれる事例となる。図19に示すように、想定分布50から外れる事例とは、遷移時間に対応する件数が、想定分布の件数を超える遷移時間を含む事例に対応する。異常事例候補自動判定部323は、枠70〜72の事例に対応する業務プロセス事例データのうち、業務フロー表示部310から取得した業務プロセス事例データに対応するものを、異常事例候補データと判定する。
【0059】
上記に示した例では、異常事例候補抽出部320は、異常事例候補手動設定部322および異常事例候補自動判定部323によって、異常事例候補データを判定していたがこれに限定されるものではない。異常事例候補抽出部320は、異常事例候補手動判定部322または異常事例候補自動判定部323のどちらか一方を利用して、異常事例候補データを判定してよい。
【0060】
図1の説明に戻る。業務プロセス属性値取得部330は、業務プロセス事例データに対応する属性値を取得する処理部である。例えば、属性値とは、業務プロセス事例データに含まれる各イベントに携わった担当者、イベントで利用した装置、イベントの図番等のデータを含む。業務プロセス属性値取得部330は、業務プロセス事例データの各イベントインスタンスに含まれる、番号をキーとして、属性DB100fから属性値を取得する。この番号は、受注番号、生産番号、手配番号、配送便に対応する。ただし、前記属性値は、必ずしも属性DB100fに一括登録されているわけではなく、受注DB100a、生産DB100b、手配DB100c、配送DB100d、品番DB100eに分散して格納する場合も存在し、その場合には各DBから属性値を取得する。
【0061】
業務プロセス属性値取得部330は、業務プロセス事例データと、該業務プロセス事例データに対応する属性値とを対応づけて、業務プロセス属性値格納部330aに登録する。なお、業務プロセス属性値取得部330は、業務プロセス事例データを一意に識別する業務IDと、属性値とを対応づけて、例えば、図6Bのようなデータ構造で、業務プロセス属性値格納部330aに登録してもよい。
【0062】
判定用属性値生成部340は、属性値毎の事例数を集計し、集計結果を判定用属性値格納部340aに登録する処理部である。ただし、この判定用属性値生成部340は、下記に示す第1の方式、第2の方式、第3の方式のうち、第2の方式によって異常事例を判定する場合にのみ動作するようにしてもよい。図20は、集計結果の一例を示す図である。図20に示すように、この集計結果は、種別、事例総数、担当者、装置、図番を含む。種別は、全業務プロセス事例データに対応する事例か、異常事例候補データに対応する事例かを区別するものである。種別において、全体は、注目している全業務プロセス事例データに対応する。異常事例候補は、異常事例候補データに対応する。
【0063】
例えば、図20の1段目に示すように、全事業プロセス事例データの事例総数は「100」である。また、全業務プロセス事例データのうち、担当者「A」が携わった事例の件数が「80」、担当者「B」が携わった事例の件数が「10」、担当者「C」が携わった事例の件数が「10」である。また、全業務プロセス事例データのうち、装置「No.1」を利用する事例の件数は「60」、装置「No.2」を利用する事例の件数は「40」である。また、全業務プロセス事例データのうち、図番「XX」を利用する事例の件数は「90」、図番「YY」を利用する事例の件数は「10」である。
【0064】
図20の2段目に示すように、異常事例候補データのうち、担当者「A」が携わった事例の件数が「13」、担当者「B」が携わった事例の件数が「6」、担当者「C」が携わった事例の件数が「1」である。また、異常事例候補データのうち、装置「No.1」を利用する事例の件数は「13」、装置「No.2」を利用する事例の件数は「7」である。また、異常事例候補データのうち、図番「XX」を利用する事例の件数は「17」、図番「YY」を利用する事例の件数は「3」である。
【0065】
異常事例判定部350は、業務プロセス事例データから異常な事例を判定する処理部である。異常事例判定部350は、判定結果をディスプレイ等に表示する。例えば、異常事例判定部350は、下記に示す第1〜第3の方式の何れかに基づいて、異常な事例を判定する。
【0066】
異常事例判定部350が、第1の方式に基づいて異常な事例を判定する場合について説明する。第1の方式では、異常事例判定部350は、ある発生日時を含むイベントを有する、業務プロセス事例データの件数と、異常事例候補データの件数との比に基づいて、異常な事例を判定する。例えば、発生日時は、遷移元のイベントの発生日時または、遷移先のイベントの発生日時に対応する。
【0067】
図21Aは、第1の方式を説明するための図(1)である。図21Aの横軸は、イベントの発生日時を示す。縦軸は、事例の件数を示す。また、線80は、全業務プロセス事例データに対する、イベントの発生日時と事例数との関係を示す線である。線81は、異常事例候補データに対する、イベントの発生日時と事例数との関係を示す線である。
【0068】
異常事例判定部350は、発生日時毎に、業務プロセス事例データの件数に対する異常事例候補データの件数の比を算出する。異常事例判定部350は、比の値が閾値以上となる発生日時を異常事例が発生した日時と判定する。異常事例判定部350は、異常事例が発生した日時と判定した発生日時を含む異常事例候補データを、異常な事例として判定する。異常事例判定部350が利用する閾値は、統計的に有意に大きい値とし、例えば、管理者が設定する。
【0069】
図21Aに示す例では、発生日時「2010/01/25」〜「2010/02/05」、「2010/03/01」〜「2010/03/10」における比の値が閾値以上となる。このため、異常事例候補判定部350は、異常事例候補データのうち、発生日時「2010/01/25」〜「2010/02/05」を含む異常事例候補のデータを異常な事例と判定する。また、異常事例判定部350は、異常事例候補データのうち、発生日時「2010/03/01」〜「2010/03/10」を含む異常事例候補のデータを異常な事例と判定する。
【0070】
図21Bは、第1の方式を説明するための図(2)である。図21Bの横軸は時間軸に対応する。また、1a〜1cは、異常事例候補データに対応する。例えば、異常事例候補データ1aは、図21Aで求めた発生日時「2010/02/01」、「2010/03/01」を含む。また、異常事例候補データ1cは、図21Aで求めた発生日時「2010/02/05」、「2010/03/10」を含む。このため、異常事例判定部350は、異常事例候補1a、1cを、異常な事例と判定する。
【0071】
続いて、異常事例判定部350が、第2の方式に基づいて異常な事例を判定する場合について説明する。第2の方式では、異常事例判定部350は、判定用属性値格納部340aに格納された集計結果を基にして、所定の属性値を有する業務プロセス事例データの事例数と、該属性値を有する異常事例候補データの事例数との比に基づいて、異常な事例を判定する。
【0072】
図22は、第2の方式を説明するための図である。図22に示す例では、業務プロセス事例データ全体の事例数と、異常事例候補データの事例数との比が算出されている。また、属性値「担当者、装置、図番」について、業務プロセス事例データの事例数と、異常事例候補データの事例数との比が算出されている。なお、各比の算出結果におけるプラスマイナスは、誤差に対応するものである。各比の値は、異常事例判定部350が算出する。
【0073】
異常事例判定部350は、各比を参照し、比の値が統計的に有意に多い属性値を判定する。異常事例判定部350は、比の値が統計的に有意に多い属性値に関連する異常事例候補データを、異常な事例と判定する。例えば、異常事例判定部350は、所定の閾値よりも大きい比の値に対応する属性値を異常事例に関連する属性値であると判定しても良い。例えば、所定の閾値を「0.5」とする。この所定の閾値異常よりも大きい属性値は、担当者「B」となる。このため、異常事例判定部350は、担当者「B」に関連する異常事例候補データを、異常な事例と判定する。
【0074】
例えば、属性値に異常事例候補データが関連するか否かは、図6Bに示した属性値に対応する番号を、異常事例判定データが有しているか否かによって異常事例判定部350が判定する。
【0075】
続いて、異常事例判定部350が、第3の方式に基づいて異常な事例を判定する場合について説明する。異常事例判定部350は、業務プロセス事例データおよび異常事例候補データの各イベントの前後の発生日時を参照し、先に遷移を開始したイベントよりも後に遷移を開始したイベントの方が先に遷移を終了するイベントの数に基づいて異常な事例を判定する。
【0076】
まず、異常事例判定部350は、イベント間遷移の前後の順序性の乱れの指標を算出する。ここで、順序性の乱れの指標は、先に遷移を開始したのに、遷移終了が後になった事例数に対応する。図23は、第3の方式を説明するための図(1)である。図23の横軸は時間軸である。また、1a〜1jは、遷移前のイベントの発生日時に対応するものである。また、2a〜2jは、遷移後のイベントの発生日時に対応するものである。1a〜1jの遷移先をそれぞれ、2a〜2jとする。図23において、先に遷移を開始したのに、遷移終了が後になった事例は、1eおよび2eの組、1fおよび2fの組、1gおよび2gの組の3つである。このため、図23のイベントを含む業務プロセス事例データまたは異常事例候補データの順序性の乱れの指数は3となる。
【0077】
異常事例判定部350は、各業務プロセス事例データおよび各異常事例候補データの順序性の乱れの指数を算出した後に、この乱れの指数が統計的に有意に大きい異常事例候補データを、異常な事例と判定する。
【0078】
具体的に、異常事例判定部350は、各順序性の乱れの指標の平均値および標準偏差を算出する。異常事例判定部350は、平均値および標準偏差を基にして、異常な事例を判定する。図24は、第3の方式を説明するための図(2)である。図24の横軸は、順序性の乱れの指標を示す。縦軸は、事例数を示す。また、線90は、平均値を示す。線91は、標準偏差の値を2倍したものに平均値90を加算した値に対応する。線92は、標準偏差の値を2倍したものによって、平均値90を減算した値に対応する。異常事例判定部350は、線91より右側の指数の異常事例候補データを異常な事例と判定する。また、異常事例判定部350は、線92より左側の指数の異常事例候補データを異常な事例と判定する。
【0079】
次に、本実施例にかかる異常事例判定装置300の処理手順について説明する。図25は、異常事例判定装置の処理手順を示すフローチャートである。図25に示す処理は、例えば、利用者によって検査対象となる事例を選択されたことを契機に実行される。図25に示すように、異常事例判定装置300は、異常事例候補データを抽出し(ステップS101)、属性値を取得する(ステップS102)。
【0080】
異常事例判定装置300は、属性値毎の事例数を集計し(ステップS103)、異常事例判定処理を実行する(ステップS104)。なお、異常事例判定装置300は、第1の方式または第3の方式で、異常な事例を判定する場合には、ステップS102、103の処理を実行しなくてもよい。
【0081】
次に、図25のステップS104に示した異常事例判定処理の処理手順について説明する。異常事例判定処理は、上記に示したとおり、第1〜3の方式の何れかに対応する。図26〜図28は、異常事例判定処理の処理手順を示すフローチャートである。図26〜図28の処理は、第1〜3の方式にそれぞれ対応する。
【0082】
図26の異常事例判定処理について説明する。図26の処理は、第1の方式に対応するものである。異常事例判定部350は、注目した業務プロセス事例データ全体の総事例数と、異常事例候補データ全体の総事例数との比を算出する(ステップS201)。
【0083】
異常事例判定部350は、注目した業務プロセス事例データ中の全事例について遷移の元側のイベントの発生日時を横軸とするヒストグラムを生成する(ステップS202)。異常事例判定部350は、注目した業務プロセス事例データ中の全事例について遷移の先側のイベントの発生日時を横軸とするヒストグラムを生成する(ステップS203)。
【0084】
異常事例判定部350は、注目した業務プロセス事例データ中の異常事例候補データについて遷移の元側のイベントの発生日時を横軸とするヒストグラムを生成する(ステップS204)。異常事例判定部350は、注目した業務プロセス事例データ中の異常事例候補データについて遷移の先側のイベントの発生日時を横軸とするヒストグラムを生成する(ステップS205)。
【0085】
異常事例判定部350は、イベント発生日時の先頭のデータ区分を選択し(ステップS206)、選択したデータ区分に含まれる業務プロセス事例データの事例数と、異常事例候補データの事例数の比を算出する(ステップS207)。
【0086】
異常事例判定部350は、選択したデータ区分において、異常事例候補データの事例数が統計的に有意に大きいか否かを判定する(ステップS208)。異常事例判定部350は、異常事例候補データの事例数が統計的に有意に大きくない場合には(ステップS208,No)、ステップS210に移行する。
【0087】
一方、異常事例判定部350は、異常事例候補データの事例数が統計的に有意に大きい場合には(ステップS208,Yes)、選択したデータ区分における異常事例候補データを、異常な事例であると判定する(ステップS209)。
【0088】
異常事例判定部350は、全てのデータ区分を処理していない場合には(ステップS210,No)、次のデータ区分を選択し(ステップS211)、ステップS207に移行する。一方、異常事例判定部350は、全てのデータ区分を処理した場合には(ステップS210,Yes)、処理を終了する。
【0089】
次に、図27の異常事例判定処理について説明する。図27の処理は、第2の方式に対応するものである。異常事例判定部350は、注目した業務プロセス事例データの総事例数と、異常事例候補データ全体の事例数との比を算出する(ステップS301)。異常事例判定部350は、各業務プロセス事例データに対応する属性のリストを作成する(ステップS302)。
【0090】
異常事例判定部350は、リストの先頭の属性を選択し(ステップS303)、選択した属性について、属性値または、属性の範囲のリストを作成する(ステップS304)。異常事例判定部350は、リストの先頭の属性値または属性値の範囲を選択する(ステップS305)。
【0091】
異常事例判定部350は、選択した属性について、選択した属性値または属性値の範囲における業務プロセス事例データ全体の件数と、異常事例候補データの件数との比を算出する(ステップS306)。
【0092】
異常事例判定部350は、選択した属性について、選択した属性値または属性値の範囲における異常事例候補データの事例数が、統計的に有意に大きいか否かを判定する(ステップS307)。異常事例判定部350は、異常事例候補データの事例数が統計的に大きくない場合には(ステップS307,No)、ステップS309に移行する。
【0093】
一方、異常事例判定部350は、異常事例候補データの事例数が統計的に大きい場合には(ステップS307,Yes)、選択した属性について、選択した属性値または属性値の範囲における異常事例候補データを異常な事例であると判定する(ステップS308)。
【0094】
異常事例判定部350は、全ての属性値または属性値の範囲の範囲を処理していない場合には(ステップS309,No)、次の属性値または属性値の範囲を選択し(ステップS310)、ステップS306に移行する。
【0095】
一方、異常事例判定部350は、全ての属性値または、属性値の範囲を処理した場合には(ステップS309,Yes)、全ての属性を処理したか否かを判定する(ステップS311)。異常事例判定部350は、全ての属性を処理していない場合には(ステップS311,No)、次の属性を選択し(ステップS312)、ステップS304に移行する。一方、異常事例判定部350は、全ての属性を処理した場合には(ステップS311,Yes)、処理を終了する。
【0096】
次に、図28の異常事例判定処理について説明する。図28の処理は、第3の方式に対応するものである。異常事例判定部350は、業務プロセス事例毎にイベント間遷移の前後の順序性の乱れの指標を算出する(ステップS401)。
【0097】
異常事例判定部350は、順序性の乱れの指数と事例数の関係を示すヒストグラムを生成し(ステップS402)、平均値および標準偏差を算出する(ステップS403)。異常事例判定部350は、指数が平均値−標準偏差×2よりも小さいもの、または、指数が平均値+標準偏差×2よりも大きいものを異常な事例と判定する(ステップS404)。
【0098】
次に、本実施例にかかる異常事例判定装置300の効果について説明する。異常事例判定装置300は、複数の業務プロセス事例データのイベント間の遷移時間のヒストグラムと想定分布とを比較し、想定分布から誤差範囲を超えて外れている遷移時間区分に含まれるデータを異常事例候補データとして抽出する。そして、異常事例判定装置300は、所定のイベントの発生日時を有する業務プロセス事例データの件数と、該発生日時を有する異常事例候補データとの比率に基づいて、異常なイベントが発生した日時とともに異常なイベントを構成要素とする異常なプロセス事例を判定する。このため、異常な事例と正常な事例とが明確に分離していなくても、イベントの発生日時から業務プロセスの異常な事例を精度良く判定することができる。
【0099】
また、異常事例判定装置300は、所定の属性値を有する業務プロセス事例データの件数と、該属性値を有する異常事例候補データの件数との比率に基づいて、異常事例発生と関連する属性値とともに異常事例を判定する。このため、異常な事例と正常な事例とが明確に分離していなくても、イベントの属性値から業務プロセスの異常な事例を精度良く判定することができる。
【0100】
また、異常事例判定装置300は、業務プロセス事例データ毎に、順序性の乱れの指標を算出し、この指標を基にして異常な事例を判定するので、異常な事例と正常な事例とが明確に分離していなくても、業務プロセスの異常な事例を精度良く判定することができる。
【0101】
なお、図1に示した各DB100a〜100f、各格納部200a、320a、330a、340aは、記憶装置に対応する。この記憶装置は、例えば、RAM(Random Access Memory)、ROM(Read Only Memory)、フラッシュメモリ(Flash Memory)などの半導体メモリ素子、またはハードディスク、光ディスクなどの記憶装置に対応する。
【0102】
また、図1に示した各処理部310〜350は、ASIC(Application Specific Integrated Circuit)や、FPGA(Field Programmable Gate Array)などの集積装置に対応する。また、各処理部310〜350は、例えば、CPU(Central Processing Unit)やMPU(Micro Processing Unit)等の電子回路に対応する。
【0103】
上記の異常事例判定システムの構成は、図1の構成に限られるものではない。例えば、業務システム100が有する各DB100a〜100fを、業務プロセス事例抽出装置200が有していても良い。このような構成にすることで、異常事例判定装置300は、業務プロセス事例抽出装置200とデータ通信を行えば、異常な事例を判定することができる。
【0104】
また、異常事例判定装置300の構成は、図1の構成に限られるものではない。例えば、業務フロー表示部310は、必ずしも異常事例判定装置300に備えられていなくてもよく、外部の装置に業務フロー表示部320の機能を持たせても良い。この場合、異常事例判定装置300は、業務フロー表示部320の機能を有する外部の装置から、利用者の選択した業務プロセス事例データを取得する。
【0105】
ところで、上述の実施例で説明した異常事例判定装置100等の処理は、あらかじめ用意されたプログラムをパーソナルコンピュータやワークステーションなどのコンピュータシステムで実行することによって実現することもできる。
【0106】
ここで、図29を用いて、上記の実施例で説明した異常事例判定装置100による処理と同様の機能を実現する異常事例判定プログラムを実行するコンピュータの一例を説明する。図29は、異常事例判定プログラムを実行するコンピュータの一例を示す図である。
【0107】
図29に示すように、異常事例判定装置300として機能するコンピュータ400は、各種演算処理を実行するCPU401と、ユーザからのデータの入力を受け付ける入力装置402と、ディスプレイ403を有する。また、コンピュータ400は、記憶媒体からプログラム等を読取る媒体読み取り装置404と、ネットワークを介して他のコンピュータとの間でデータの授受を行うネットワークインターフェース装置405とを有する。また、コンピュータ200は、各種情報を一時記憶するRAM406と、ハードディスク装置407を有する。そして、各装置401〜407は、バス408に接続される。
【0108】
ハードディスク装置407には、上述した異常事例判定装置300の機能と同様の機能を発揮する異常事例候補抽出プログラム407a、業務プロセス属性値取得プログラム407bが記憶されている。また、ハードディスク装置407には、判定用属性値生成プログラム407c、異常事例判定プログラム407dが記憶されている。
【0109】
CPU401は、プログラム407a〜407dをハードディスク装置407から読み出してRAM406に展開する。異常事例候補抽出プログラム407aは、異常事例候補抽出プロセス406aとして機能する。業務プロセス属性値取得プログラム407bは、業務プロセス属性値取得プロセス406bとして機能する。判定用属性値生成プログラム407cは、判定用属性値生成プロセス406cとして機能する。異常事例判定プログラム407dは、異常事例判定プロセス406dとして機能する。
【0110】
異常事例候補抽出プロセス406aは、異常事例候補抽出部320に対応する。業務プロセス属性値取得プロセス406bは、業務プロセス属性値取得部330に対応する。判定用属性値生成プロセス406cは、判定用属性値生成部340に対応する。異常事例判定プロセス406dは、異常事例判定部350に対応する。
【0111】
なお、各プログラム407a〜407dについては、必ずしも最初からハードディスク装置に記憶させておかなくてもよい。例えば、コンピュータ400に挿入されるフレキシブルディスク(FD)、CD−ROM、DVDディスク、光磁気ディスク、ICカードなどの「可搬用の物理媒体」に各プログラムを記憶させておく。そして、コンピュータ400がこれらから各プログラムを読み出して実行するようにしてもよい。
【0112】
以上の各実施例を含む実施形態に関し、さらに以下の付記を開示する。
【0113】
(付記1)コンピュータに、
所定の特徴を有する業務プロセス事例の情報と、該業務プロセス事例に含まれるイベント間の遷移時間の情報とを格納する格納部を参照し、前記業務プロセス事例に含まれるイベント間の想定される遷移時間と、該遷移時間を含む業務プロセス事例の想定される件数との関係を示す想定分布に基づいて、該想定分布から外れる遷移時間の業務プロセス事例を異常事例の候補として複数の業務プロセス事例から抽出し、
所定の特徴を有する前記異常事例の候補の件数と、前記格納部に格納された業務プロセス事例のうち、前記所定の特徴を有する業務プロセス事例の件数との比率が所定の閾値を超える場合に、前記所定の特徴を有する異常事例の候補を異常事例として判定する処理を実行させることを特徴とする異常事例判定プログラム。
【0114】
(付記2)前記格納部は、業務プロセス事例に含まれる各イベントの発生日時を所定の特徴として格納しており、
イベントの所定の発生日時を有する異常事例の候補の件数と、前記格納部に格納された業務プロセス事例のうち、前記イベントの所定の発生日時を有する業務プロセス事例の件数との比率が所定の閾値を超える場合に、前記所定の発生日時を有する異常事例の候補を異常事例として判定することを特徴とする付記1に記載の異常事例判定プログラム。
【0115】
(付記3)前記格納部は、業務プロセス事例に含まれる属性値を所定の特徴として格納しており、
所定の属性値を有する異常事例の候補の件数と、前記格納部に格納された業務プロセス事例のうち、前記所定の属性値を有する業務プロセス事例の件数との比率が所定の閾値を超える場合に、前記所定の属性値を有する異常事例の候補を異常事例として判定することを特徴とする付記1または2に記載の異常事例判定プログラム。
【0116】
(付記4)前記異常事例の候補に含まれるイベントにおいて、先に遷移を開始したイベントよりも後に遷移を開始したイベントの方が先に遷移を終了するイベントの数を算出し、算出した数が所定の範囲に含まれない場合に、前記異常事例の候補を異常事例と判定することを特徴とする付記1、2または3に記載の異常事例判定プログラム。
【0117】
(付記5)所定の特徴を有する業務プロセス事例の情報と、該業務プロセス事例に含まれるイベント間の遷移時間の情報とを格納する格納部と、
前記格納部を参照し、前記業務プロセス事例に含まれるイベント間の想定される遷移時間と、該遷移時間を含む業務プロセス事例の想定される件数との関係を示す想定分布に基づいて、該想定分布から外れる遷移時間の業務プロセス事例を異常事例の候補として複数の業務プロセス事例から抽出する異常事例候補抽出部と、
所定の特徴を有する前記異常事例の候補の件数と、前記格納部に格納された業務プロセス事例のうち、前記所定の特徴を有する業務プロセス事例の件数との比率が所定の閾値を超える場合に、前記所定の特徴を有する異常事例の候補を異常事例として判定する異常事例判定部と
を有することを特徴とする異常事例判定装置。
【0118】
(付記6)前記格納部は、業務プロセス事例に含まれる各イベントの発生日時を所定の特徴として格納しており、
前記異常事例判定部は、イベントの所定の発生日時を有する異常事例の候補の件数と、前記格納部に格納された業務プロセス事例のうち、前記イベントの所定の発生日時を有する業務プロセス事例の件数との比率が所定の閾値を超える場合に、前記所定の発生日時を有する異常事例の候補を異常事例として判定することを特徴とする付記5に記載の異常事例判定装置。
【0119】
(付記7)前記格納部は、業務プロセス事例に含まれる属性値を所定の特徴として格納しており、
前記異常事例判定部は、所定の属性値を有する異常事例の候補の件数と、前記格納部に格納された業務プロセス事例のうち、前記所定の属性値を有する業務プロセス事例の件数との比率が所定の閾値を超える場合に、前記所定の属性値を有する異常事例の候補を異常事例として判定することを特徴とする付記5または6に記載の異常事例判定装置。
【0120】
(付記8)前記異常事例判定部は、前記異常事例の候補に含まれるイベントにおいて、先に遷移を開始したイベントよりも後に遷移を開始したイベントの方が先に遷移を終了するイベントの数を算出し、算出した数が所定の範囲に含まれない場合に、前記異常事例の候補を異常事例と判定することを特徴とする付記5、6または7に記載の異常事例判定装置。
【0121】
(付記9)コンピュータが実行する異常事例判定方法であって、
所定の特徴を有する業務プロセス事例の情報と、該業務プロセス事例に含まれるイベント間の遷移時間の情報とを格納する格納部を参照し、前記業務プロセス事例に含まれるイベント間の想定される遷移時間と、該遷移時間を含む業務プロセス事例の想定される件数との関係を示す想定分布に基づいて、該想定分布から外れる遷移時間の業務プロセス事例を異常事例の候補として複数の業務プロセス事例から抽出し、
所定の特徴を有する前記異常事例の候補の件数と、前記格納部に格納された業務プロセス事例のうち、前記所定の特徴を有する業務プロセス事例の件数との比率が所定の閾値を超える場合に、前記所定の特徴を有する異常事例の候補を異常事例として判定することを特徴とする異常事例判定方法。
【0122】
(付記10)前記格納部は、業務プロセス事例に含まれる各イベントの発生日時を所定の特徴として格納しており、
イベントの所定の発生日時を有する異常事例の候補の件数と、前記格納部に格納された業務プロセス事例のうち、前記イベントの所定の発生日時を有する業務プロセス事例の件数との比率が所定の閾値を超える場合に、前記所定の発生日時を有する異常事例の候補を異常事例として判定することを特徴とする付記9に記載の異常事例判定方法。
【0123】
(付記11)前記格納部は、業務プロセス事例に含まれる属性値を所定の特徴として格納しており、所定の属性値を有する異常事例の候補の件数と、前記格納部に格納された業務プロセス事例のうち、前記所定の属性値を有する業務プロセス事例の件数との比率が所定の閾値を超える場合に、前記所定の属性値を有する異常事例の候補を異常事例として判定することを特徴とする付記9または10に記載の異常事例判定方法。
【0124】
(付記12)前記異常事例の候補に含まれるイベントにおいて、先に遷移を開始したイベントよりも後に遷移を開始したイベントの方が先に遷移を終了するイベントの数を算出し、算出した数が所定の範囲に含まれない場合に、前記異常事例の候補を異常事例と判定することを特徴とする付記9、10または11に記載の異常事例判定方法。
【符号の説明】
【0125】
300 異常事例判定装置
310 業務フロー表示部
320 異常事例候補抽出部
330 業務プロセス属性値取得部
340 判定用属性値生成部
350 異常事例判定部
【技術分野】
【0001】
本発明は、異常事例判定プログラム等に関する。
【背景技術】
【0002】
従来、業務を改善することを目的として、業務システムの業務プロセスを分析する業務プロセス分析装置が存在する。この業務プロセス分析装置は、業務システムの運用データを基にして、業務フローを表示し、実運用中の業務プロセスを分析する。
【0003】
例えば、業務プロセス分析装置は、正常な業務フローと、分析対象となる業務フローとを比較することで、業務プロセス中の異常な事例を特定する。図30は、従来技術を説明するための図(1)である。図30の業務フローIDは、業務フローを識別するものである。シーケンスは、業務フローのシーケンスを示す。ここでは、正常な業務フローを業務フロー1とする。業務プロセス分析装置は、業務フロー1のシーケンスと、業務フロー2〜4のシーケンスとを各々比較すると、各2シーケンスで共通していない(相違する)部分が存在する。例えば、業務フロー1のシーケンスと業務フロー2のシーケンスでは、「作業工程B」と「作業工程b」の部分が共通していない。また、業務フロー1のシーケンスと業務フロー3のシーケンスとでは「第1チェック工程終了」と「第1チェック工程ラインアウト」の部分が共通していない。また、業務フロー1のシーケンスと業務フロー4のシーケンスとでは「最終チェック工程ラインアウト」と「最終チェック工程終了」→「梱包ラインアウト」の部分が共通していない。この場合には、業務プロセス分析装置は、業務フロー2〜4に対応する事例を、異常な事例であると判定する。
【0004】
また、業務プロセス分析装置は、各業務プロセスに含まれるイベント間の遷移時間の平均値や標準偏差を利用して、異常な事例を判定していた。図31は、従来技術を説明するための図(2)である。図31の横軸は、イベント間の遷移時間を示す。縦軸は、業務プロセスの事例の件数を示す。また、1aは遷移時間の平均値に対応し、1bは遷移時間の標準偏差を2倍し、平均値に加算したものに対応する。1bよりも右側に存在する各事例1cは、平均的な事例と比較して、遷移時間が統計的に有意に大きい。このため、業務プロセス分析装置は、各事例1cを、異常な事例であると判定する。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開2008−27072号公報
【特許文献2】国際公開第2007/132547号
【発明の概要】
【発明が解決しようとする課題】
【0006】
しかしながら、上述した従来技術では、業務プロセスの異常な事例を精度良く判定することができない場合が存在するという問題があった。
【0007】
例えば、図30に示した業務フローのシーケンスの比較により、異常な事例を判定する場合には、シーケンス以外に正常事例との違いが表出しない問題の要因がある異常な事例を判定することができない。また、図31に示した方法により異常な事例を判定する際、正常な事例と異常な事例とが明確に分離していない場合には、異常な事例を特定することができない。
【0008】
図32は、正常な事例と異常な事例とが明確に分離していない例を示す図である。図32の横軸は、イベント間の遷移時間を示す。縦軸は、業務プロセスの事例の件数を示す。図32の2aには、正常な事例と異常な事例とが含まれており、平均値と標準偏差のみでは、異常な事例のみを抽出することができない。
【0009】
開示の技術は、上記に鑑みてなされたものであって、異常な事例を精度良く判定することができる異常事例判定プログラム、異常事例判定装置および異常事例判定方法を提供することを目的とする。
【課題を解決するための手段】
【0010】
開示の異常事例判定プログラムは、イベント間の遷移時間のヒストグラムが想定分布から外れる業務プロセス事例を異常事例の候補として複数の業務プロセス事例から抽出する。また、開示の異常事例判定プログラムは、所定の特徴を有する前記異常事例の候補の件数と、前記所定の特徴を有する業務プロセス事例の件数との比率を基にして、前記異常事例の候補から異常事例を判定する。
【発明の効果】
【0011】
開示の異常事例判定プログラムの一つの態様によれば、異常な事例を精度良く判定することができるという効果を奏する。
【図面の簡単な説明】
【0012】
【図1】図1は、本実施例にかかる異常事例判定システムの構成を示す図である。
【図2】図2は、受注DBのデータ構造の一例を示す図である。
【図3】図3は、生産DBのデータ構造の一例を示す図である。
【図4】図4は、手配DBのデータ構造の一例を示す図である。
【図5】図5は、配送DBのデータ構造の一例を示す図である。
【図6A】図6Aは、品番DBのデータ構造の一例を示す図である。
【図6B】図6Bは、属性DBのデータ構造の一例を示す図である。
【図7】図7は、業務プロセス事例抽出装置の構成を示す図である。
【図8】図8は、受注DBを基に生成されるイベント候補データの一例を示す図である。
【図9】図9は、生産DBを基に生成されるイベント候補データの一例を示す図である。
【図10】図10は、手配DBを基に生成されるイベント候補データの一例を示す図である。
【図11】図11は、配送DBを基に生成されるイベント候補データの一例を示す図である。
【図12A】図12Aは、業務プロセス事例生成部への入力の一例を説明するための図である。
【図12B】図12Bは、業務プロセス事例生成部の処理の一例を説明するための図である。
【図13】図13は、業務プロセス事例データの一例を示す図である。
【図14】図14は、業務プロセス事例格納部に格納される各業務プロセス事例データの一例を示す図である。
【図15】図15は、ディスプレイに表示される全体フローの一例を示す図である。
【図16】図16は、異常事例候補抽出部の構成を示す図である。
【図17】図17は、フィッテング部の処理結果を示す図である。
【図18】図18は、異常事例候補自動判定部の処理を説明するための図(1)である。
【図19】図19は、異常事例候補自動判定部の処理を説明するための図(2)である。
【図20】図20は、集計結果の一例を示す図である。
【図21A】図21Aは、第1の方式を説明するための図(1)である。
【図21B】図21Bは、第1の方式を説明するための図(2)である。
【図22】図22は、第2の方式を説明するための図である。
【図23】図23は、第3の方式を説明するための図(1)である。
【図24】図24は、第3の方式を説明するための図(2)である。
【図25】図25は、異常事例判定装置の処理手順を示すフローチャートである。
【図26】図26は、異常事例判定処理の処理手順を示すフローチャート(1)である。
【図27】図27は、異常事例判定処理の処理手順を示すフローチャート(2)である。
【図28】図28は、異常事例判定処理の処理手順を示すフローチャート(3)である。
【図29】図29は、異常事例判定プログラムを実行するコンピュータの一例を示す図である。
【図30】図30は、従来技術を説明するための図(1)である。
【図31】図31は、従来技術を説明するための図(2)である。
【図32】図32は、正常な事例と異常な事例とが明確に分離していない例を示す図である。
【発明を実施するための形態】
【0013】
以下に、本願の開示する異常事例判定プログラム、異常事例判定装置および異常事例判定方法の実施例を図面に基づいて詳細に説明する。なお、この実施例によりこの発明が限定されるものではない。
【実施例】
【0014】
本実施例にかかる異常事例判定システムの構成について説明する。図1は、本実施例にかかる異常事例判定システムの構成を示す図である。図1に示すように、この異常事例判定システムは、業務システム100、業務プロセス事例抽出装置200、異常事例判定装置300を有する。
【0015】
業務システム100は、各種の業務を実行する。この業務システム100は、受注DB100a、生産DB100b、手配DB100c、配送DB100d、品番DB100e、属性DB100fを有する。例えば、各DB100a〜100eは、リレーショナルデータベースである。業務システム100は、各DB100a〜100eのデータを、業務プロセス事例抽出装置200、異常事例判定装置300に通知する。また、業務システム100は、属性DB100fのデータを、異常事例判定装置300に通知する。ただし、その通知方法は、業務システム100が異常事例判定装置300からの検索要求に逐次応じるというものである必要は無く、業務システムのある時点でのバックアップ用の一括出力や、業務システムのアプリケーションの動作ログ等の出力で良い。
【0016】
ここで、各DB100a〜100dのデータ構造の一例について説明する。図2は、受注DBのデータ構造の一例を示す図である。図2に示すように、受注DB100aは、受注DBのスキーマ情報101a、受注DBのレコード群102aを含む。スキーマ情報101aにおいて、フィールド(Field)1〜4のそれぞれに、フィールド名、キー設定、データ型、レコード長、コメントが登録される。スキーマ情報101aにおいて、フィールド1には、日時が登録され、フィールド2には主キーである受注番号が登録される。また、フィールド3には、地域が登録され、フィールド4には、受注内容が登録される。フィールド1〜4に登録される具体的なデータは、レコード群102aのようになる。スキーマ情報101aを利用することで、レコード群102aの内容を把握することができる。
【0017】
図3は、生産DBのデータ構造の一例を示す図である。図3に示すように、生産DB100bは、生産DBのスキーマ情報101b、生産DBのレコード群102bを含む。スキーマ情報101bにおいて、フィールド(Field)1〜5のそれぞれに、フィールド名、キー設定、データ型、レコード長、コメントが登録される。スキーマ情報101bにおいて、フィールド1には、日時が登録され、フィールド2には、主キーである生産番号が登録される。フィールド3には、副キーである受注番号が登録され、フィールド4には、副キーである品番が登録される。フィールド5には、納期が登録される。フィールド1〜5に登録される具体的なデータは、レコード群102bのようになる。スキーマ情報101bを利用することで、レコード群102bの内容を把握することができる。
【0018】
図4は、手配DBのデータ構造の一例を示す図である。図4に示すように、手配DB100cは、手配DBのスキーマ情報101c、手配DBのレコード群102cを含む。スキーマ情報101cにおいて、フィールド(Field)1〜5のそれぞれに、フィールド名、キー設定、データ型、レコード長、コメントが登録される。スキーマ情報101cにおいて、フィールド1には、日時が登録され、フィールド2には、主キーである手配番号が登録される。フィールド3には、副キーである受注番号が登録され、フィールド4には、副キーである品番が登録される。フィールド5には、納品先が登録される。フィールド1〜5に登録される具体的なデータは、レコード群102cのようになる。スキーマ情報101cを利用することで、レコード群102cの内容を把握することができる。
【0019】
図5は、配送DBのデータ構造の一例を示す図である。図5に示すように、配送DB100dは、配送DBのスキーマ情報101d、配送DBのレコード群102dを含む。スキーマ情報101dにおいて、フィールド(Field)1〜4のそれぞれに、フィールド名、キー設定、データ型、レコード長、コメントが登録される。スキーマ情報101dにおいて、フィールド1には、日時が登録され、フィールド2には、主キーである手配番号が登録される。フィールド3には、副キーである配送便が登録され、フィールド4には、納品先が登録される。フィールド1〜4に登録される具体的なデータは、レコード群102dのようになる。スキーマ情報101dを利用することで、レコード群102dの内容を把握することができる。
【0020】
図6Aは、品番DBのデータ構造の一例を示す図である。図6Aに示すように、品番DB100eは、品番DBのスキーマ情報101e、品番DBのレコード群102eを含む。スキーマ情報101eにおいて、フィールド(Field)1、2に、フィールド名、キー設定、データ型、レコード長、コメントが登録される。スキーマ情報101eにおいて、フィールド1には、主キーである品番が登録され、フィールド2には、品名が登録される。フィールド1、2に登録される具体的なデータは、レコード群102eのようになる。スキーマ情報101eを利用することで、レコード群102eの内容を把握することができる。
【0021】
図6Bは、属性DBのデータ構造の一例を示す図である。図6Bに示すように、属性DB100fは、受注番号、生産番号、手配番号、配送便、属性値を含む。また、属性値は、担当者、装置、図番を含む。このうち、担当者は各イベントに携わった担当者に対応する。装置は、各イベントで利用した装置に対応する。図番は、各イベントで利用した物品の設計図等に対応するものである。例えば、図6Bにおいて、受注番号「JT01」の受注イベントでは、担当者「A」が携わっている。また、生産番号「SS01」の生産イベントでは、担当者「C」が携わっており、「No.1」の装置を利用しており、生産した物品の図番は「XX」である。その他の受注番号、生産番号、手配番号、配送便も、該当する属性値が属性DB100fに登録されている。ただし、前記属性値は、必ずしも属性DB100fに一括登録されている必要は無く、受注DB100a、生産DB100b、手配DB100c、配送DB100d、品番DB100eに分散して格納することも可能である。
【0022】
業務プロセス事例抽出装置200は、業務システムから各DB100a〜100eのデータを取得し、業務プロセス事例データを生成する装置である。業務プロセス事例抽出装置200は、業務プロセス事例データを、業務プロセス事例格納部200aに格納する。
【0023】
図7は、業務プロセス事例抽出装置の構成を示す図である。図7に示すように、この業務プロセス事例抽出装置200は、整形部201、業務データ格納部202、データ関連性判定部203、業務プロセス事例生成部204、業務プロセス事例格納部200aを有する。
【0024】
整形部201は、業務システム100から各DB100a〜100eのデータを取得し、各DB100a〜100e単独の属性及びデータ内容に基づき、イベント候補データを業務データ格納部202に格納する。例えば、整形部201は、国際公開番号WO2008/032393に開示された従来技術に基づいて、イベント候補データを生成する。
【0025】
図8は、受注DBを基に生成されるイベント候補データの一例を示す図である。図8に示すように、イベント候補データ202aは、イベント名、タイムスタンプ、イベントID・関連ID候補を含む。イベント名は、受注が登録される。タイムスタンプは、図2の日時に対応するものであり、受注イベントが行われた日時が登録される。イベントID・関連ID候補は受注番号、地域を含む。例えば、この受注番号は、図2の受注番号に対応する。
【0026】
図9は、生産DBを基に生成されるイベント候補データの一例を示す図である。図9に示すように、イベント候補データ202bは、イベント名、タイムスタンプ、イベントID・関連ID候補を含む。イベント名は、生産が登録される。タイムスタンプは、図3の日時に対応するものであり、生産イベントが行われた日時が登録される。イベントID・関連ID候補は生産番号、受注番号、品番を含む。生産番号は、図3の生産番号に対応する。関連IDは、受注番号を含む。受注番号は、図3の受注番号に対応する。
【0027】
図10は、手配DBを基に生成されるイベント候補データの一例を示す図である。図10に示すように、イベント候補データ202cは、イベント名、タイムスタンプ、イベントID・関連ID候補を含む。イベント名は、手配が登録される。タイムスタンプは、図4の日時に対応するものであり、手配イベントが行われた日時が登録される。イベントID・関連ID候補は手配番号、受注番号、品番、納品先を含む。手配番号は、図4の手配番号に対応する。受注番号は、図4の受注番号に対応する。
【0028】
図11は、配送DBを基に生成されるイベント候補データの一例を示す図である。図11に示すように、イベント候補データ202dは、イベント名、タイムスタンプ、イベントID・関連IDを含む。イベント名は、配送が登録される。タイムスタンプは、図5の日時に対応するものであり、配送イベントが行われた日時が登録される。イベントID・関連ID候補は、手配番号、配送便、納品先を含む。手配番号は、図5の手配番号に対応する。配送便は、図5の配送便に対応する。
【0029】
図8〜図11に示したイベント候補データ202a〜202dは、業務データ格納部202に格納される。なお、品番DB100eには、タイムスタンプに対応するフィールドが存在しないため、イベントデータは生成されない。
【0030】
図7の説明に戻る。データ関連性判定部203は、業務データ格納部202に格納されたイベント候補データ202a〜202dの関連性を判定する処理部である。例えば、データ関連性判定部203は、特開2008−27072に開示された従来技術に基づいて、関連性を判定する。
【0031】
業務プロセス事例生成部204は、データ関連性判定部203から出力されるイベントデータと、イベントデータ間の関連図を基にして、業務プロセス事例データを生成する処理部である。例えば、業務プロセス事例生成部204は、特開2008−27072に開示された従来技術に基づいて、業務プロセス事例データを生成する。
【0032】
図12Aは、業務プロセス事例生成部への入力の一例を説明するための図である。図12Aに示すように、に示すように、イベントデータ202aのイベントIDは、イベントデータ202bの関連IDと、イベントデータ202cの関連IDに関連している。また、イベントデータ202cのイベントIDは、イベントデータ202dのイベントIDに関連している。
【0033】
図12Bは、業務プロセス事例生成部の処理の一例を説明するための図である。図12に示すように、イベント候補データ202aのイベントIDは、イベント候補データ202bの関連IDと、イベント候補データ202cの関連IDに関連している。また、イベント候補データ202cのイベントIDは、イベント候補データ202dのイベントIDに関連している。業務プロセス事例生成部204は、関連するインスタンスを抽出し、時間経過の順につなぎ合わせることで、業務プロセス事例データを生成する。
【0034】
図12Bを用いて、業務プロセス事例生成部204が、業務プロセス事例データを生成する処理を説明する。この業務プロセス事例データは、プロセスインスタンスに対応するものである。ここでは、イベント候補データ202aの受注番号「JT01」の受注イベントインスタンスを起点とする。
【0035】
業務プロセス事例生成部204は、関連IDのフィールド値として、受注番号「JT01」をとるレコードを確定する。図12Bに示す例では、業務プロセス事例生成部204は、イベント候補データ202bから2つの生産イベントインスタンス、イベント候補データ202cから3つの手配イベントインスタンスを確定する。
【0036】
続いて、業務プロセス事例生成部204は、関連IDのフィールド値として、手配番号「TH01」、「TH02」、「TH03」をとるレコードを確定する。図12Bに示す例では、業務プロセス事例生成部204は、イベント候補データ202dから3つの配送イベントインスタンスを確定する。
【0037】
業務プロセス事例生成部204は、上記確定したイベントインスタンスを、該イベントインスタンスのタイムスタンプに基づいて時間経過の順につなぎ合わせることで、業務プロセス事例データを生成する。
【0038】
図13は、業務プロセス事例データの一例を示す図である。図13に示すように、業務プロセス事例データは、各イベントインスタンスが、時間経過の順につながれている。具体的には、受注イベントインスタンス10、生産イベントインスタンス11、手配イベントインスタンス12、手配イベントインスタンス13、手配イベントインスタンス14の順につながれる。また、配送イベントインスタンス15、生産イベントインスタンス16、配送イベントインスタンス17、配送イベントインスタンス18の順位つながれる。
【0039】
同様に、業務プロセス事例生成部204は、残りの業務プロセス事例データを生成する。業務プロセス事例生成部204は、生成した各業務プロセス事例データを、業務プロセス事例格納部200aに格納する。
【0040】
業務プロセス事例格納部200aは、複数の業務プロセス事例データを記憶する。図14は、業務プロセス事例格納部に格納される各業務プロセス事例データの一例を示す図である。図14に示す例では、業務プロセス事例データ1〜4が示されている。
【0041】
業務プロセス事例データ1は、図13に対応する業務プロセス事例データである。業務プロセス事例データ2は、受注イベントインスタンス20、手配イベントインスタンス21、配送イベントインスタンス22が順に接続されている。業務プロセス事例データ3は、受注イベントインスタンス30、生産イベントインスタンス31、生産イベントインスタンス32、手配イベントインスタンス33、配送イベントインスタンス34が順に接続されている。業務プロセス事例データ4は、受注イベントインスタンス40、手配イベントインスタンス41、配送イベントインスタンス42が順に接続されている。
【0042】
図1の説明に戻る。異常事例判定装置300は、業務プロセス事例格納部200aに格納された各業務プロセス事例データから、異常な業務プロセス事例データを判定する装置である。図1に示すように、異常事例判定装置300は、業務フロー表示部310、異常事例候補抽出部320、業務プロセス属性値取得部330、判定用属性値生成部340、異常事例判定部350を有する。
【0043】
業務フロー表示部310は、業務プロセス事例格納部200aから、各業務プロセス事例データを取得し、取得した各業務プロセス事例データを重ね合わせた全体フローを生成し、生成した全体フローをディスプレイに表示する。業務フロー表示部310が、各業務プロセス事例データを重ね合わせて、全体フローを生成する処理は、国際公開番号WO2007/132547に開示された技術を利用すればよい。
【0044】
例えば、業務フロー表示部310は、図14の各業務プロセス事例データ1〜4を重ね合わせることで、図15に示す全体フローを生成し、ディスプレイに表示する。図15は、ディスプレイに表示される全体フローの一例を示す図である。図15の「Initial」は、業務フローの開始点を表す仮想的なイベントであり、「Final」は、業務フローの終了点を表す仮想的なイベントである。また、図15の受注は受注イベントに対応し、生産は生産イベントに対応し、手配は手配イベントに対応し、配送は配送イベントに対応する。
【0045】
利用者は、全体フローが表示されたディスプレイを参照し、入力装置を操作して、異常事例の検査対象となる複数の事例を選択する。業務フロー表示部310は、利用者によって選択された複数の事例に対応する複数の業務プロセス事例データを、異常事例候補抽出部320に出力する。
【0046】
異常事例候補抽出部320は、業務フロー表示部310から取得する業務プロセス事例データと、業務プロセス事例格納部200aに格納された業務プロセス事例データとを基にして、異常な事例の候補となる業務プロセス事例データを判定する処理部である。以下の説明において、異常な事例の候補となる業務プロセス事例データを、異常事例候補データと表記する。異常事例候補抽出部320は、異常事例候補データを、異常事例候補格納部320aに登録する。
【0047】
図16は、異常事例候補抽出部の構成を示す図である。図16に示すように、この異常事例候補抽出部320は、統計情報算出部321、異常事例候補手動設定部322、異常事例候補自動設定部323、異常事例候補格納部320aを有する。
【0048】
統計情報算出部321は、ヒストグラム生成部321aと、フィッテング部321bとを有する。ヒストグラム生成部321aは、各業務プロセス事例データに基づいて、イベント間の遷移時間のヒストグラムを生成する処理部である。このヒストグラムは、例えば、横軸を遷移時間、縦軸を事例の件数とする。ここで、事例の件数とは、事例に対応する業務プロセス事例データの数を示す。
【0049】
フィッテング部321bは、予め指定された想定分布を、ヒストグラムにフィッテングする処理部である。この想定分布は、正規分布、ポアソン分布、べき乗分布等に対応するものである。また、フィッテング部321bは、統計的な手法により、遷移時間毎の事例の件数の誤差の範囲を算出する。
【0050】
図17は、フィッテング部の処理結果を示す図である。図17の横軸はイベント間の遷移時間であり、縦軸は事例の件数である。破線50は、想定分布に対して非線形型の最小二乗法等を用いて求められる線分である。51は、遷移時間毎の誤差の範囲を示す。フィッテング部321bは、処理結果を異常事例候補手動設定部322および異常事例候補自動判定部323に出力する。また、フィッテング部321bは、各業務プロセス事例データを、異常事例候補手動設定部322および異常事例候補自動判定部323に出力する。
【0051】
異常事例候補手動設定部322は、フィッテング部321bの処理結果を取得し、取得した処理結果をディスプレイに表示することで、利用者に異常事例候補データを選択させる処理部である。利用者は、処理結果の表示されたディスプレイを参照し、入力装置を操作して、異常事例の候補を選択する。例えば、異常事例候補手動設定部322は、利用者によって、遷移時間2.5〜6の領域が選択された場合には、業務フロー表示部310から取得した複数の業務プロセス事例データのうち、遷移時間が2.5〜6に含まれるものを選択する。そして、異常事例候補手動設定部322は、選択した業務プロセス事例データを、異常事例候補データとして異常事例候補格納部320aに登録する。
【0052】
異常事例候補自動判定部323は、フィッテング部321bの処理結果を取得し、異常事例候補データを判定する処理部である。異常事例候補自動判定部323は、判定した異常事例候補データを、異常事例候補格納部320aに登録する。例えば、異常事例候補自動判定部323は、イベント間の遷移時間の平均値および標準偏差に基づいて、異常事例候補データを判定する。または、異常事例候補自動判定部323は、想定分布を基にして、異常事例候補データを判定する。
【0053】
まず、異常事例候補自動判定部323が、遷移時間の平均値および標準偏差に基づいて、異常事例候補データを判定する処理について説明する。異常事例候補自動判定部323は、各業務プロセス事例データのイベント間の遷移時間の平均値および標準偏差を求める。異常事例候補自動判定部323は、式(1)に基づいて、正常判定上限遷移時間を算出する。
【0054】
正常判定上限遷移時間=平均値+2×標準偏差・・・(1)
【0055】
異常事例候補自動判定部323は、フィッテング部321bの処理結果と、正常判定上限遷移時間とを比較して、正常判定上限遷移時間よりも大きい遷移時間を有する業務プロセス事例データを異常事例であると判定する。異常事例候補自動判定部323は、判定した業務プロセス事例データのうち、業務フロー表示部310から取得した業務プロセス事例に対応するものを、異常事例候補データと判定する。図18は、異常事例候補自動判定部の処理を説明するための図(1)である。図18の線60は、正常判定上限遷移時間に対応する。図18に示す例では、異常事例候補自動判定部323は、正常判定上限遷移時間60よりも右側の業務プロセス事例データのうち、業務フロー表示部310から取得した業務プロセス事例データに対応するものを、異常事例候補データと判定する。
【0056】
ただし、式(1’)で算出される正常判定下限遷移時間よりも小さい遷移時間の業務プロセス事例データが存在する場合は、それらも異常事例候補データと判定する。
【0057】
正常判定下限遷移時間=平均値−2×標準偏差・・・(1’)
【0058】
続いて、異常事例候補自動判定部323が、想定分布を基にして、異常事例候補データを判定する処理について説明する。異常事例候補自動判定部323は、想定分布とヒストグラムとを比較し、想定分布から誤差範囲を超えて外れる事例を、異常事例候補データと判定する。図19は、異常事例候補自動判定部の処理を説明するための図(2)である。図19に示す例では、想定分布50から外れる事例は、枠70〜72に含まれる事例となる。図19に示すように、想定分布50から外れる事例とは、遷移時間に対応する件数が、想定分布の件数を超える遷移時間を含む事例に対応する。異常事例候補自動判定部323は、枠70〜72の事例に対応する業務プロセス事例データのうち、業務フロー表示部310から取得した業務プロセス事例データに対応するものを、異常事例候補データと判定する。
【0059】
上記に示した例では、異常事例候補抽出部320は、異常事例候補手動設定部322および異常事例候補自動判定部323によって、異常事例候補データを判定していたがこれに限定されるものではない。異常事例候補抽出部320は、異常事例候補手動判定部322または異常事例候補自動判定部323のどちらか一方を利用して、異常事例候補データを判定してよい。
【0060】
図1の説明に戻る。業務プロセス属性値取得部330は、業務プロセス事例データに対応する属性値を取得する処理部である。例えば、属性値とは、業務プロセス事例データに含まれる各イベントに携わった担当者、イベントで利用した装置、イベントの図番等のデータを含む。業務プロセス属性値取得部330は、業務プロセス事例データの各イベントインスタンスに含まれる、番号をキーとして、属性DB100fから属性値を取得する。この番号は、受注番号、生産番号、手配番号、配送便に対応する。ただし、前記属性値は、必ずしも属性DB100fに一括登録されているわけではなく、受注DB100a、生産DB100b、手配DB100c、配送DB100d、品番DB100eに分散して格納する場合も存在し、その場合には各DBから属性値を取得する。
【0061】
業務プロセス属性値取得部330は、業務プロセス事例データと、該業務プロセス事例データに対応する属性値とを対応づけて、業務プロセス属性値格納部330aに登録する。なお、業務プロセス属性値取得部330は、業務プロセス事例データを一意に識別する業務IDと、属性値とを対応づけて、例えば、図6Bのようなデータ構造で、業務プロセス属性値格納部330aに登録してもよい。
【0062】
判定用属性値生成部340は、属性値毎の事例数を集計し、集計結果を判定用属性値格納部340aに登録する処理部である。ただし、この判定用属性値生成部340は、下記に示す第1の方式、第2の方式、第3の方式のうち、第2の方式によって異常事例を判定する場合にのみ動作するようにしてもよい。図20は、集計結果の一例を示す図である。図20に示すように、この集計結果は、種別、事例総数、担当者、装置、図番を含む。種別は、全業務プロセス事例データに対応する事例か、異常事例候補データに対応する事例かを区別するものである。種別において、全体は、注目している全業務プロセス事例データに対応する。異常事例候補は、異常事例候補データに対応する。
【0063】
例えば、図20の1段目に示すように、全事業プロセス事例データの事例総数は「100」である。また、全業務プロセス事例データのうち、担当者「A」が携わった事例の件数が「80」、担当者「B」が携わった事例の件数が「10」、担当者「C」が携わった事例の件数が「10」である。また、全業務プロセス事例データのうち、装置「No.1」を利用する事例の件数は「60」、装置「No.2」を利用する事例の件数は「40」である。また、全業務プロセス事例データのうち、図番「XX」を利用する事例の件数は「90」、図番「YY」を利用する事例の件数は「10」である。
【0064】
図20の2段目に示すように、異常事例候補データのうち、担当者「A」が携わった事例の件数が「13」、担当者「B」が携わった事例の件数が「6」、担当者「C」が携わった事例の件数が「1」である。また、異常事例候補データのうち、装置「No.1」を利用する事例の件数は「13」、装置「No.2」を利用する事例の件数は「7」である。また、異常事例候補データのうち、図番「XX」を利用する事例の件数は「17」、図番「YY」を利用する事例の件数は「3」である。
【0065】
異常事例判定部350は、業務プロセス事例データから異常な事例を判定する処理部である。異常事例判定部350は、判定結果をディスプレイ等に表示する。例えば、異常事例判定部350は、下記に示す第1〜第3の方式の何れかに基づいて、異常な事例を判定する。
【0066】
異常事例判定部350が、第1の方式に基づいて異常な事例を判定する場合について説明する。第1の方式では、異常事例判定部350は、ある発生日時を含むイベントを有する、業務プロセス事例データの件数と、異常事例候補データの件数との比に基づいて、異常な事例を判定する。例えば、発生日時は、遷移元のイベントの発生日時または、遷移先のイベントの発生日時に対応する。
【0067】
図21Aは、第1の方式を説明するための図(1)である。図21Aの横軸は、イベントの発生日時を示す。縦軸は、事例の件数を示す。また、線80は、全業務プロセス事例データに対する、イベントの発生日時と事例数との関係を示す線である。線81は、異常事例候補データに対する、イベントの発生日時と事例数との関係を示す線である。
【0068】
異常事例判定部350は、発生日時毎に、業務プロセス事例データの件数に対する異常事例候補データの件数の比を算出する。異常事例判定部350は、比の値が閾値以上となる発生日時を異常事例が発生した日時と判定する。異常事例判定部350は、異常事例が発生した日時と判定した発生日時を含む異常事例候補データを、異常な事例として判定する。異常事例判定部350が利用する閾値は、統計的に有意に大きい値とし、例えば、管理者が設定する。
【0069】
図21Aに示す例では、発生日時「2010/01/25」〜「2010/02/05」、「2010/03/01」〜「2010/03/10」における比の値が閾値以上となる。このため、異常事例候補判定部350は、異常事例候補データのうち、発生日時「2010/01/25」〜「2010/02/05」を含む異常事例候補のデータを異常な事例と判定する。また、異常事例判定部350は、異常事例候補データのうち、発生日時「2010/03/01」〜「2010/03/10」を含む異常事例候補のデータを異常な事例と判定する。
【0070】
図21Bは、第1の方式を説明するための図(2)である。図21Bの横軸は時間軸に対応する。また、1a〜1cは、異常事例候補データに対応する。例えば、異常事例候補データ1aは、図21Aで求めた発生日時「2010/02/01」、「2010/03/01」を含む。また、異常事例候補データ1cは、図21Aで求めた発生日時「2010/02/05」、「2010/03/10」を含む。このため、異常事例判定部350は、異常事例候補1a、1cを、異常な事例と判定する。
【0071】
続いて、異常事例判定部350が、第2の方式に基づいて異常な事例を判定する場合について説明する。第2の方式では、異常事例判定部350は、判定用属性値格納部340aに格納された集計結果を基にして、所定の属性値を有する業務プロセス事例データの事例数と、該属性値を有する異常事例候補データの事例数との比に基づいて、異常な事例を判定する。
【0072】
図22は、第2の方式を説明するための図である。図22に示す例では、業務プロセス事例データ全体の事例数と、異常事例候補データの事例数との比が算出されている。また、属性値「担当者、装置、図番」について、業務プロセス事例データの事例数と、異常事例候補データの事例数との比が算出されている。なお、各比の算出結果におけるプラスマイナスは、誤差に対応するものである。各比の値は、異常事例判定部350が算出する。
【0073】
異常事例判定部350は、各比を参照し、比の値が統計的に有意に多い属性値を判定する。異常事例判定部350は、比の値が統計的に有意に多い属性値に関連する異常事例候補データを、異常な事例と判定する。例えば、異常事例判定部350は、所定の閾値よりも大きい比の値に対応する属性値を異常事例に関連する属性値であると判定しても良い。例えば、所定の閾値を「0.5」とする。この所定の閾値異常よりも大きい属性値は、担当者「B」となる。このため、異常事例判定部350は、担当者「B」に関連する異常事例候補データを、異常な事例と判定する。
【0074】
例えば、属性値に異常事例候補データが関連するか否かは、図6Bに示した属性値に対応する番号を、異常事例判定データが有しているか否かによって異常事例判定部350が判定する。
【0075】
続いて、異常事例判定部350が、第3の方式に基づいて異常な事例を判定する場合について説明する。異常事例判定部350は、業務プロセス事例データおよび異常事例候補データの各イベントの前後の発生日時を参照し、先に遷移を開始したイベントよりも後に遷移を開始したイベントの方が先に遷移を終了するイベントの数に基づいて異常な事例を判定する。
【0076】
まず、異常事例判定部350は、イベント間遷移の前後の順序性の乱れの指標を算出する。ここで、順序性の乱れの指標は、先に遷移を開始したのに、遷移終了が後になった事例数に対応する。図23は、第3の方式を説明するための図(1)である。図23の横軸は時間軸である。また、1a〜1jは、遷移前のイベントの発生日時に対応するものである。また、2a〜2jは、遷移後のイベントの発生日時に対応するものである。1a〜1jの遷移先をそれぞれ、2a〜2jとする。図23において、先に遷移を開始したのに、遷移終了が後になった事例は、1eおよび2eの組、1fおよび2fの組、1gおよび2gの組の3つである。このため、図23のイベントを含む業務プロセス事例データまたは異常事例候補データの順序性の乱れの指数は3となる。
【0077】
異常事例判定部350は、各業務プロセス事例データおよび各異常事例候補データの順序性の乱れの指数を算出した後に、この乱れの指数が統計的に有意に大きい異常事例候補データを、異常な事例と判定する。
【0078】
具体的に、異常事例判定部350は、各順序性の乱れの指標の平均値および標準偏差を算出する。異常事例判定部350は、平均値および標準偏差を基にして、異常な事例を判定する。図24は、第3の方式を説明するための図(2)である。図24の横軸は、順序性の乱れの指標を示す。縦軸は、事例数を示す。また、線90は、平均値を示す。線91は、標準偏差の値を2倍したものに平均値90を加算した値に対応する。線92は、標準偏差の値を2倍したものによって、平均値90を減算した値に対応する。異常事例判定部350は、線91より右側の指数の異常事例候補データを異常な事例と判定する。また、異常事例判定部350は、線92より左側の指数の異常事例候補データを異常な事例と判定する。
【0079】
次に、本実施例にかかる異常事例判定装置300の処理手順について説明する。図25は、異常事例判定装置の処理手順を示すフローチャートである。図25に示す処理は、例えば、利用者によって検査対象となる事例を選択されたことを契機に実行される。図25に示すように、異常事例判定装置300は、異常事例候補データを抽出し(ステップS101)、属性値を取得する(ステップS102)。
【0080】
異常事例判定装置300は、属性値毎の事例数を集計し(ステップS103)、異常事例判定処理を実行する(ステップS104)。なお、異常事例判定装置300は、第1の方式または第3の方式で、異常な事例を判定する場合には、ステップS102、103の処理を実行しなくてもよい。
【0081】
次に、図25のステップS104に示した異常事例判定処理の処理手順について説明する。異常事例判定処理は、上記に示したとおり、第1〜3の方式の何れかに対応する。図26〜図28は、異常事例判定処理の処理手順を示すフローチャートである。図26〜図28の処理は、第1〜3の方式にそれぞれ対応する。
【0082】
図26の異常事例判定処理について説明する。図26の処理は、第1の方式に対応するものである。異常事例判定部350は、注目した業務プロセス事例データ全体の総事例数と、異常事例候補データ全体の総事例数との比を算出する(ステップS201)。
【0083】
異常事例判定部350は、注目した業務プロセス事例データ中の全事例について遷移の元側のイベントの発生日時を横軸とするヒストグラムを生成する(ステップS202)。異常事例判定部350は、注目した業務プロセス事例データ中の全事例について遷移の先側のイベントの発生日時を横軸とするヒストグラムを生成する(ステップS203)。
【0084】
異常事例判定部350は、注目した業務プロセス事例データ中の異常事例候補データについて遷移の元側のイベントの発生日時を横軸とするヒストグラムを生成する(ステップS204)。異常事例判定部350は、注目した業務プロセス事例データ中の異常事例候補データについて遷移の先側のイベントの発生日時を横軸とするヒストグラムを生成する(ステップS205)。
【0085】
異常事例判定部350は、イベント発生日時の先頭のデータ区分を選択し(ステップS206)、選択したデータ区分に含まれる業務プロセス事例データの事例数と、異常事例候補データの事例数の比を算出する(ステップS207)。
【0086】
異常事例判定部350は、選択したデータ区分において、異常事例候補データの事例数が統計的に有意に大きいか否かを判定する(ステップS208)。異常事例判定部350は、異常事例候補データの事例数が統計的に有意に大きくない場合には(ステップS208,No)、ステップS210に移行する。
【0087】
一方、異常事例判定部350は、異常事例候補データの事例数が統計的に有意に大きい場合には(ステップS208,Yes)、選択したデータ区分における異常事例候補データを、異常な事例であると判定する(ステップS209)。
【0088】
異常事例判定部350は、全てのデータ区分を処理していない場合には(ステップS210,No)、次のデータ区分を選択し(ステップS211)、ステップS207に移行する。一方、異常事例判定部350は、全てのデータ区分を処理した場合には(ステップS210,Yes)、処理を終了する。
【0089】
次に、図27の異常事例判定処理について説明する。図27の処理は、第2の方式に対応するものである。異常事例判定部350は、注目した業務プロセス事例データの総事例数と、異常事例候補データ全体の事例数との比を算出する(ステップS301)。異常事例判定部350は、各業務プロセス事例データに対応する属性のリストを作成する(ステップS302)。
【0090】
異常事例判定部350は、リストの先頭の属性を選択し(ステップS303)、選択した属性について、属性値または、属性の範囲のリストを作成する(ステップS304)。異常事例判定部350は、リストの先頭の属性値または属性値の範囲を選択する(ステップS305)。
【0091】
異常事例判定部350は、選択した属性について、選択した属性値または属性値の範囲における業務プロセス事例データ全体の件数と、異常事例候補データの件数との比を算出する(ステップS306)。
【0092】
異常事例判定部350は、選択した属性について、選択した属性値または属性値の範囲における異常事例候補データの事例数が、統計的に有意に大きいか否かを判定する(ステップS307)。異常事例判定部350は、異常事例候補データの事例数が統計的に大きくない場合には(ステップS307,No)、ステップS309に移行する。
【0093】
一方、異常事例判定部350は、異常事例候補データの事例数が統計的に大きい場合には(ステップS307,Yes)、選択した属性について、選択した属性値または属性値の範囲における異常事例候補データを異常な事例であると判定する(ステップS308)。
【0094】
異常事例判定部350は、全ての属性値または属性値の範囲の範囲を処理していない場合には(ステップS309,No)、次の属性値または属性値の範囲を選択し(ステップS310)、ステップS306に移行する。
【0095】
一方、異常事例判定部350は、全ての属性値または、属性値の範囲を処理した場合には(ステップS309,Yes)、全ての属性を処理したか否かを判定する(ステップS311)。異常事例判定部350は、全ての属性を処理していない場合には(ステップS311,No)、次の属性を選択し(ステップS312)、ステップS304に移行する。一方、異常事例判定部350は、全ての属性を処理した場合には(ステップS311,Yes)、処理を終了する。
【0096】
次に、図28の異常事例判定処理について説明する。図28の処理は、第3の方式に対応するものである。異常事例判定部350は、業務プロセス事例毎にイベント間遷移の前後の順序性の乱れの指標を算出する(ステップS401)。
【0097】
異常事例判定部350は、順序性の乱れの指数と事例数の関係を示すヒストグラムを生成し(ステップS402)、平均値および標準偏差を算出する(ステップS403)。異常事例判定部350は、指数が平均値−標準偏差×2よりも小さいもの、または、指数が平均値+標準偏差×2よりも大きいものを異常な事例と判定する(ステップS404)。
【0098】
次に、本実施例にかかる異常事例判定装置300の効果について説明する。異常事例判定装置300は、複数の業務プロセス事例データのイベント間の遷移時間のヒストグラムと想定分布とを比較し、想定分布から誤差範囲を超えて外れている遷移時間区分に含まれるデータを異常事例候補データとして抽出する。そして、異常事例判定装置300は、所定のイベントの発生日時を有する業務プロセス事例データの件数と、該発生日時を有する異常事例候補データとの比率に基づいて、異常なイベントが発生した日時とともに異常なイベントを構成要素とする異常なプロセス事例を判定する。このため、異常な事例と正常な事例とが明確に分離していなくても、イベントの発生日時から業務プロセスの異常な事例を精度良く判定することができる。
【0099】
また、異常事例判定装置300は、所定の属性値を有する業務プロセス事例データの件数と、該属性値を有する異常事例候補データの件数との比率に基づいて、異常事例発生と関連する属性値とともに異常事例を判定する。このため、異常な事例と正常な事例とが明確に分離していなくても、イベントの属性値から業務プロセスの異常な事例を精度良く判定することができる。
【0100】
また、異常事例判定装置300は、業務プロセス事例データ毎に、順序性の乱れの指標を算出し、この指標を基にして異常な事例を判定するので、異常な事例と正常な事例とが明確に分離していなくても、業務プロセスの異常な事例を精度良く判定することができる。
【0101】
なお、図1に示した各DB100a〜100f、各格納部200a、320a、330a、340aは、記憶装置に対応する。この記憶装置は、例えば、RAM(Random Access Memory)、ROM(Read Only Memory)、フラッシュメモリ(Flash Memory)などの半導体メモリ素子、またはハードディスク、光ディスクなどの記憶装置に対応する。
【0102】
また、図1に示した各処理部310〜350は、ASIC(Application Specific Integrated Circuit)や、FPGA(Field Programmable Gate Array)などの集積装置に対応する。また、各処理部310〜350は、例えば、CPU(Central Processing Unit)やMPU(Micro Processing Unit)等の電子回路に対応する。
【0103】
上記の異常事例判定システムの構成は、図1の構成に限られるものではない。例えば、業務システム100が有する各DB100a〜100fを、業務プロセス事例抽出装置200が有していても良い。このような構成にすることで、異常事例判定装置300は、業務プロセス事例抽出装置200とデータ通信を行えば、異常な事例を判定することができる。
【0104】
また、異常事例判定装置300の構成は、図1の構成に限られるものではない。例えば、業務フロー表示部310は、必ずしも異常事例判定装置300に備えられていなくてもよく、外部の装置に業務フロー表示部320の機能を持たせても良い。この場合、異常事例判定装置300は、業務フロー表示部320の機能を有する外部の装置から、利用者の選択した業務プロセス事例データを取得する。
【0105】
ところで、上述の実施例で説明した異常事例判定装置100等の処理は、あらかじめ用意されたプログラムをパーソナルコンピュータやワークステーションなどのコンピュータシステムで実行することによって実現することもできる。
【0106】
ここで、図29を用いて、上記の実施例で説明した異常事例判定装置100による処理と同様の機能を実現する異常事例判定プログラムを実行するコンピュータの一例を説明する。図29は、異常事例判定プログラムを実行するコンピュータの一例を示す図である。
【0107】
図29に示すように、異常事例判定装置300として機能するコンピュータ400は、各種演算処理を実行するCPU401と、ユーザからのデータの入力を受け付ける入力装置402と、ディスプレイ403を有する。また、コンピュータ400は、記憶媒体からプログラム等を読取る媒体読み取り装置404と、ネットワークを介して他のコンピュータとの間でデータの授受を行うネットワークインターフェース装置405とを有する。また、コンピュータ200は、各種情報を一時記憶するRAM406と、ハードディスク装置407を有する。そして、各装置401〜407は、バス408に接続される。
【0108】
ハードディスク装置407には、上述した異常事例判定装置300の機能と同様の機能を発揮する異常事例候補抽出プログラム407a、業務プロセス属性値取得プログラム407bが記憶されている。また、ハードディスク装置407には、判定用属性値生成プログラム407c、異常事例判定プログラム407dが記憶されている。
【0109】
CPU401は、プログラム407a〜407dをハードディスク装置407から読み出してRAM406に展開する。異常事例候補抽出プログラム407aは、異常事例候補抽出プロセス406aとして機能する。業務プロセス属性値取得プログラム407bは、業務プロセス属性値取得プロセス406bとして機能する。判定用属性値生成プログラム407cは、判定用属性値生成プロセス406cとして機能する。異常事例判定プログラム407dは、異常事例判定プロセス406dとして機能する。
【0110】
異常事例候補抽出プロセス406aは、異常事例候補抽出部320に対応する。業務プロセス属性値取得プロセス406bは、業務プロセス属性値取得部330に対応する。判定用属性値生成プロセス406cは、判定用属性値生成部340に対応する。異常事例判定プロセス406dは、異常事例判定部350に対応する。
【0111】
なお、各プログラム407a〜407dについては、必ずしも最初からハードディスク装置に記憶させておかなくてもよい。例えば、コンピュータ400に挿入されるフレキシブルディスク(FD)、CD−ROM、DVDディスク、光磁気ディスク、ICカードなどの「可搬用の物理媒体」に各プログラムを記憶させておく。そして、コンピュータ400がこれらから各プログラムを読み出して実行するようにしてもよい。
【0112】
以上の各実施例を含む実施形態に関し、さらに以下の付記を開示する。
【0113】
(付記1)コンピュータに、
所定の特徴を有する業務プロセス事例の情報と、該業務プロセス事例に含まれるイベント間の遷移時間の情報とを格納する格納部を参照し、前記業務プロセス事例に含まれるイベント間の想定される遷移時間と、該遷移時間を含む業務プロセス事例の想定される件数との関係を示す想定分布に基づいて、該想定分布から外れる遷移時間の業務プロセス事例を異常事例の候補として複数の業務プロセス事例から抽出し、
所定の特徴を有する前記異常事例の候補の件数と、前記格納部に格納された業務プロセス事例のうち、前記所定の特徴を有する業務プロセス事例の件数との比率が所定の閾値を超える場合に、前記所定の特徴を有する異常事例の候補を異常事例として判定する処理を実行させることを特徴とする異常事例判定プログラム。
【0114】
(付記2)前記格納部は、業務プロセス事例に含まれる各イベントの発生日時を所定の特徴として格納しており、
イベントの所定の発生日時を有する異常事例の候補の件数と、前記格納部に格納された業務プロセス事例のうち、前記イベントの所定の発生日時を有する業務プロセス事例の件数との比率が所定の閾値を超える場合に、前記所定の発生日時を有する異常事例の候補を異常事例として判定することを特徴とする付記1に記載の異常事例判定プログラム。
【0115】
(付記3)前記格納部は、業務プロセス事例に含まれる属性値を所定の特徴として格納しており、
所定の属性値を有する異常事例の候補の件数と、前記格納部に格納された業務プロセス事例のうち、前記所定の属性値を有する業務プロセス事例の件数との比率が所定の閾値を超える場合に、前記所定の属性値を有する異常事例の候補を異常事例として判定することを特徴とする付記1または2に記載の異常事例判定プログラム。
【0116】
(付記4)前記異常事例の候補に含まれるイベントにおいて、先に遷移を開始したイベントよりも後に遷移を開始したイベントの方が先に遷移を終了するイベントの数を算出し、算出した数が所定の範囲に含まれない場合に、前記異常事例の候補を異常事例と判定することを特徴とする付記1、2または3に記載の異常事例判定プログラム。
【0117】
(付記5)所定の特徴を有する業務プロセス事例の情報と、該業務プロセス事例に含まれるイベント間の遷移時間の情報とを格納する格納部と、
前記格納部を参照し、前記業務プロセス事例に含まれるイベント間の想定される遷移時間と、該遷移時間を含む業務プロセス事例の想定される件数との関係を示す想定分布に基づいて、該想定分布から外れる遷移時間の業務プロセス事例を異常事例の候補として複数の業務プロセス事例から抽出する異常事例候補抽出部と、
所定の特徴を有する前記異常事例の候補の件数と、前記格納部に格納された業務プロセス事例のうち、前記所定の特徴を有する業務プロセス事例の件数との比率が所定の閾値を超える場合に、前記所定の特徴を有する異常事例の候補を異常事例として判定する異常事例判定部と
を有することを特徴とする異常事例判定装置。
【0118】
(付記6)前記格納部は、業務プロセス事例に含まれる各イベントの発生日時を所定の特徴として格納しており、
前記異常事例判定部は、イベントの所定の発生日時を有する異常事例の候補の件数と、前記格納部に格納された業務プロセス事例のうち、前記イベントの所定の発生日時を有する業務プロセス事例の件数との比率が所定の閾値を超える場合に、前記所定の発生日時を有する異常事例の候補を異常事例として判定することを特徴とする付記5に記載の異常事例判定装置。
【0119】
(付記7)前記格納部は、業務プロセス事例に含まれる属性値を所定の特徴として格納しており、
前記異常事例判定部は、所定の属性値を有する異常事例の候補の件数と、前記格納部に格納された業務プロセス事例のうち、前記所定の属性値を有する業務プロセス事例の件数との比率が所定の閾値を超える場合に、前記所定の属性値を有する異常事例の候補を異常事例として判定することを特徴とする付記5または6に記載の異常事例判定装置。
【0120】
(付記8)前記異常事例判定部は、前記異常事例の候補に含まれるイベントにおいて、先に遷移を開始したイベントよりも後に遷移を開始したイベントの方が先に遷移を終了するイベントの数を算出し、算出した数が所定の範囲に含まれない場合に、前記異常事例の候補を異常事例と判定することを特徴とする付記5、6または7に記載の異常事例判定装置。
【0121】
(付記9)コンピュータが実行する異常事例判定方法であって、
所定の特徴を有する業務プロセス事例の情報と、該業務プロセス事例に含まれるイベント間の遷移時間の情報とを格納する格納部を参照し、前記業務プロセス事例に含まれるイベント間の想定される遷移時間と、該遷移時間を含む業務プロセス事例の想定される件数との関係を示す想定分布に基づいて、該想定分布から外れる遷移時間の業務プロセス事例を異常事例の候補として複数の業務プロセス事例から抽出し、
所定の特徴を有する前記異常事例の候補の件数と、前記格納部に格納された業務プロセス事例のうち、前記所定の特徴を有する業務プロセス事例の件数との比率が所定の閾値を超える場合に、前記所定の特徴を有する異常事例の候補を異常事例として判定することを特徴とする異常事例判定方法。
【0122】
(付記10)前記格納部は、業務プロセス事例に含まれる各イベントの発生日時を所定の特徴として格納しており、
イベントの所定の発生日時を有する異常事例の候補の件数と、前記格納部に格納された業務プロセス事例のうち、前記イベントの所定の発生日時を有する業務プロセス事例の件数との比率が所定の閾値を超える場合に、前記所定の発生日時を有する異常事例の候補を異常事例として判定することを特徴とする付記9に記載の異常事例判定方法。
【0123】
(付記11)前記格納部は、業務プロセス事例に含まれる属性値を所定の特徴として格納しており、所定の属性値を有する異常事例の候補の件数と、前記格納部に格納された業務プロセス事例のうち、前記所定の属性値を有する業務プロセス事例の件数との比率が所定の閾値を超える場合に、前記所定の属性値を有する異常事例の候補を異常事例として判定することを特徴とする付記9または10に記載の異常事例判定方法。
【0124】
(付記12)前記異常事例の候補に含まれるイベントにおいて、先に遷移を開始したイベントよりも後に遷移を開始したイベントの方が先に遷移を終了するイベントの数を算出し、算出した数が所定の範囲に含まれない場合に、前記異常事例の候補を異常事例と判定することを特徴とする付記9、10または11に記載の異常事例判定方法。
【符号の説明】
【0125】
300 異常事例判定装置
310 業務フロー表示部
320 異常事例候補抽出部
330 業務プロセス属性値取得部
340 判定用属性値生成部
350 異常事例判定部
【特許請求の範囲】
【請求項1】
コンピュータに、
所定の特徴を有する業務プロセス事例の情報と、該業務プロセス事例に含まれるイベント間の遷移時間の情報とを格納する格納部を参照し、前記業務プロセス事例に含まれるイベント間の想定される遷移時間と、該遷移時間を含む業務プロセス事例の想定される件数との関係を示す想定分布に基づいて、該想定分布から外れる遷移時間の業務プロセス事例を異常事例の候補として複数の業務プロセス事例から抽出し、
所定の特徴を有する前記異常事例の候補の件数と、前記格納部に格納された業務プロセス事例のうち、前記所定の特徴を有する業務プロセス事例の件数との比率が所定の閾値を超える場合に、前記所定の特徴を有する異常事例の候補を異常事例として判定する処理を実行させることを特徴とする異常事例判定プログラム。
【請求項2】
前記格納部は、業務プロセス事例に含まれる各イベントの発生日時を所定の特徴として格納しており、
イベントの所定の発生日時を有する異常事例の候補の件数と、前記格納部に格納された業務プロセス事例のうち、前記イベントの所定の発生日時を有する業務プロセス事例の件数との比率が所定の閾値を超える場合に、前記所定の発生日時を有する異常事例の候補を異常事例として判定することを特徴とする請求項1に記載の異常事例判定プログラム。
【請求項3】
前記格納部は、業務プロセス事例に含まれる属性値を所定の特徴として格納しており、
所定の属性値を有する異常事例の候補の件数と、前記格納部に格納された業務プロセス事例のうち、前記所定の属性値を有する業務プロセス事例の件数との比率が所定の閾値を超える場合に、前記所定の属性値を有する異常事例の候補を異常事例として判定することを特徴とする請求項1または2に記載の異常事例判定プログラム。
【請求項4】
前記異常事例の候補に含まれるイベントにおいて、先に遷移を開始したイベントよりも後に遷移を開始したイベントの方が先に遷移を終了するイベントの数を算出し、算出した数が所定の範囲に含まれない場合に、前記異常事例の候補を異常事例と判定することを特徴とする請求項1、2または3に記載の異常事例判定プログラム。
【請求項5】
所定の特徴を有する業務プロセス事例の情報と、該業務プロセス事例に含まれるイベント間の遷移時間の情報とを格納する格納部と、
前記格納部を参照し、前記業務プロセス事例に含まれるイベント間の想定される遷移時間と、該遷移時間を含む業務プロセス事例の想定される件数との関係を示す想定分布に基づいて、該想定分布から外れる遷移時間の業務プロセス事例を異常事例の候補として複数の業務プロセス事例から抽出する異常事例候補抽出部と、
所定の特徴を有する前記異常事例の候補の件数と、前記格納部に格納された業務プロセス事例のうち、前記所定の特徴を有する業務プロセス事例の件数との比率が所定の閾値を超える場合に、前記所定の特徴を有する異常事例の候補を異常事例として判定する異常事例判定部と
を有することを特徴とする異常事例判定装置。
【請求項6】
コンピュータが実行する異常事例判定方法であって、
所定の特徴を有する業務プロセス事例の情報と、該業務プロセス事例に含まれるイベント間の遷移時間の情報とを格納する格納部を参照し、前記業務プロセス事例に含まれるイベント間の想定される遷移時間と、該遷移時間を含む業務プロセス事例の想定される件数との関係を示す想定分布に基づいて、該想定分布から外れる遷移時間の業務プロセス事例を異常事例の候補として複数の業務プロセス事例から抽出し、
所定の特徴を有する前記異常事例の候補の件数と、前記格納部に格納された業務プロセス事例のうち、前記所定の特徴を有する業務プロセス事例の件数との比率が所定の閾値を超える場合に、前記所定の特徴を有する異常事例の候補を異常事例として判定することを特徴とする異常事例判定方法。
【請求項1】
コンピュータに、
所定の特徴を有する業務プロセス事例の情報と、該業務プロセス事例に含まれるイベント間の遷移時間の情報とを格納する格納部を参照し、前記業務プロセス事例に含まれるイベント間の想定される遷移時間と、該遷移時間を含む業務プロセス事例の想定される件数との関係を示す想定分布に基づいて、該想定分布から外れる遷移時間の業務プロセス事例を異常事例の候補として複数の業務プロセス事例から抽出し、
所定の特徴を有する前記異常事例の候補の件数と、前記格納部に格納された業務プロセス事例のうち、前記所定の特徴を有する業務プロセス事例の件数との比率が所定の閾値を超える場合に、前記所定の特徴を有する異常事例の候補を異常事例として判定する処理を実行させることを特徴とする異常事例判定プログラム。
【請求項2】
前記格納部は、業務プロセス事例に含まれる各イベントの発生日時を所定の特徴として格納しており、
イベントの所定の発生日時を有する異常事例の候補の件数と、前記格納部に格納された業務プロセス事例のうち、前記イベントの所定の発生日時を有する業務プロセス事例の件数との比率が所定の閾値を超える場合に、前記所定の発生日時を有する異常事例の候補を異常事例として判定することを特徴とする請求項1に記載の異常事例判定プログラム。
【請求項3】
前記格納部は、業務プロセス事例に含まれる属性値を所定の特徴として格納しており、
所定の属性値を有する異常事例の候補の件数と、前記格納部に格納された業務プロセス事例のうち、前記所定の属性値を有する業務プロセス事例の件数との比率が所定の閾値を超える場合に、前記所定の属性値を有する異常事例の候補を異常事例として判定することを特徴とする請求項1または2に記載の異常事例判定プログラム。
【請求項4】
前記異常事例の候補に含まれるイベントにおいて、先に遷移を開始したイベントよりも後に遷移を開始したイベントの方が先に遷移を終了するイベントの数を算出し、算出した数が所定の範囲に含まれない場合に、前記異常事例の候補を異常事例と判定することを特徴とする請求項1、2または3に記載の異常事例判定プログラム。
【請求項5】
所定の特徴を有する業務プロセス事例の情報と、該業務プロセス事例に含まれるイベント間の遷移時間の情報とを格納する格納部と、
前記格納部を参照し、前記業務プロセス事例に含まれるイベント間の想定される遷移時間と、該遷移時間を含む業務プロセス事例の想定される件数との関係を示す想定分布に基づいて、該想定分布から外れる遷移時間の業務プロセス事例を異常事例の候補として複数の業務プロセス事例から抽出する異常事例候補抽出部と、
所定の特徴を有する前記異常事例の候補の件数と、前記格納部に格納された業務プロセス事例のうち、前記所定の特徴を有する業務プロセス事例の件数との比率が所定の閾値を超える場合に、前記所定の特徴を有する異常事例の候補を異常事例として判定する異常事例判定部と
を有することを特徴とする異常事例判定装置。
【請求項6】
コンピュータが実行する異常事例判定方法であって、
所定の特徴を有する業務プロセス事例の情報と、該業務プロセス事例に含まれるイベント間の遷移時間の情報とを格納する格納部を参照し、前記業務プロセス事例に含まれるイベント間の想定される遷移時間と、該遷移時間を含む業務プロセス事例の想定される件数との関係を示す想定分布に基づいて、該想定分布から外れる遷移時間の業務プロセス事例を異常事例の候補として複数の業務プロセス事例から抽出し、
所定の特徴を有する前記異常事例の候補の件数と、前記格納部に格納された業務プロセス事例のうち、前記所定の特徴を有する業務プロセス事例の件数との比率が所定の閾値を超える場合に、前記所定の特徴を有する異常事例の候補を異常事例として判定することを特徴とする異常事例判定方法。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6A】
【図6B】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12A】
【図12B】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【図21A】
【図21B】
【図22】
【図23】
【図24】
【図25】
【図26】
【図27】
【図28】
【図29】
【図30】
【図31】
【図32】
【図2】
【図3】
【図4】
【図5】
【図6A】
【図6B】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12A】
【図12B】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【図21A】
【図21B】
【図22】
【図23】
【図24】
【図25】
【図26】
【図27】
【図28】
【図29】
【図30】
【図31】
【図32】
【公開番号】特開2012−164223(P2012−164223A)
【公開日】平成24年8月30日(2012.8.30)
【国際特許分類】
【出願番号】特願2011−25391(P2011−25391)
【出願日】平成23年2月8日(2011.2.8)
【出願人】(000005223)富士通株式会社 (25,993)
【Fターム(参考)】
【公開日】平成24年8月30日(2012.8.30)
【国際特許分類】
【出願日】平成23年2月8日(2011.2.8)
【出願人】(000005223)富士通株式会社 (25,993)
【Fターム(参考)】
[ Back to top ]