(57)【要約】【課題】データ検証作業を支援し、データ検証作業に必要とする作業時間を低減及び作業量を削減する。【解決手段】入力データを加工し、出力データを生成するプロセスを組み合わせることによって業務を処理するデータ分析装置において、プロセスの実行を分析するデータ処理方法であって、プロセスの実行履歴を記録し、プロセスが実行されるごとに、予め定義された判定指標に基づいて、プロセスの実行が異常の可能性が高いか否かを判定し、プロセスの実行が異常の可能性が高いと判定されたとき、判定指標を含む当該プロセスのプロセスログ情報を記録し、プロセスログ情報及びプロセスの実行履歴に基づいて、異常の可能性が高いプロセスをさらに分析し、分析対象のプロセスの実行が異常か否かを判定し、分析結果と分析対象のプロセスの実行履歴とを含むプロセス履歴分析情報を生成する。【選択図】図１
2008134705.tif 000002
【特許請求の範囲】
【請求項１】
入力データを加工し、出力データを生成するプロセスを組み合わせて実行することによって処理される業務で、前記プロセスの実行を分析するデータ分析装置において、前記プロセスの実行を分析するデータ処理方法であって、
前記データ分析装置は、プロセッサと、前記プロセッサによってアクセス可能な記憶装置と、を備え、
前記プロセッサは、
前記プロセスの実行履歴を前記記憶装置に記録し、
前記プロセスが実行されるごとに、予め定義された判定指標に基づいて、前記プロセスの実行が異常の可能性が高いか否かを判定し、
前記プロセスの実行が異常の可能性が高いと判定されたとき、前記判定指標を含む当該プロセスのプロセスログ情報を記録し、
前記プロセスログ情報及び前記プロセスの実行履歴に基づいて、前記異常の可能性が高いプロセス及び前記異常の可能性が高いプロセスの入力データを生成するために必要な一連のプロセスを、当該プロセスの実行結果、当該プロセス間の先行関係及び当該プロセスが実行されたタイミングの少なくとも一つについて、さらに分析し、前記分析対象のプロセスの実行が異常か否かを判定し、分析結果と前記分析対象のプロセスの実行履歴とを含むプロセス履歴分析情報を生成することを特徴とするデータ処理方法。
【請求項２】
前記プロセッサは、前記予め定義された判定指標に基づいて、少なくともしきい値又は統計処理の一方を用いることによって、前記実行されたプロセスを異常の可能性が高いか否かを判定することを特徴とする請求項１に記載のデータ処理方法。
【請求項３】
前記プロセッサは、
前記分析対象プロセスの出力データが生成された時刻の指定を受け付け、
前記指定された時刻における、前記プロセス履歴分析情報を生成することを特徴とする請求項１に記載のデータ処理方法。
【請求項４】
前記プロセッサは、前記指定された時刻以外の時刻に同じ処理を実行するプロセスの実行履歴に基づいて、前記分析対象プロセスの実行を分析し、前記指定された時刻における、前記プロセス履歴分析情報を生成することを特徴とする請求項３に記載のデータ処理方法。
【請求項５】
前記プロセッサは、
前記判定指標の選択を受け付け、
前記選択された判定指標に基づいて、前記プロセス履歴分析情報を生成することを特徴とする請求項１に記載のデータ処理方法。
【請求項６】
前記プロセッサは、前記予め定義された複数の判定指標を組み合わせて、前記分析対象のプロセスの実行が異常か否かを判定し、前記プロセス履歴分析情報を生成することを特徴とする請求項１に記載のデータ処理方法。
【請求項７】
前記データ分析装置は、前記プロセスの実行情報の分析結果を出力する出力装置をさらに備え、
前記プロセッサは、前記プロセスと、前記入力データ及び前記出力データと、の関係に基づいて、階層構造を構成するデータ加工履歴情報を生成し、
前記出力装置は、前記データ加工履歴情報を前記プロセス履歴分析情報とともに出力することを特徴とする請求項１に記載のデータ処理方法。
【請求項８】
前記プロセッサは、前記プロセス履歴分析情報に基づいて、異常と判定されたプロセスと、前記異常と判定されたプロセスの入力データを生成するプロセスを選択し、
前記出力装置は、前記選択されたプロセスによって構成される前記データ加工履歴情報を出力することを特徴とする請求項７に記載のデータ処理方法。
【請求項９】
前記出力装置は、前記データ加工履歴情報に含まれるプロセスについて、異常と判定された実行回数を出力することを特徴とする請求項７に記載のデータ処理方法。
【請求項１０】
前記プロセッサは、
前記分析対象プロセスの選択を受け付け、
前記選択されたプロセスのプロセス履歴分析情報を、プロセスの実行ごとに出力することを特徴とする請求項７に記載のデータ処理方法。
【請求項１１】
前記プロセッサは、前記分析対象プロセスの出力データが生成された時刻の指定を受け付け、
前記出力装置は、前記指定された時刻における、前記分析対象プロセスのデータ加工履歴情報を出力することを特徴とする請求項１０に記載のデータ処理方法。
【請求項１２】
入力データを加工し、出力データを生成するプロセスを組み合わせることによって処理される業務において、前記プロセスの実行を分析するデータ分析装置であって、
プロセッサと、前記プロセッサにアクセス可能な記憶装置と、を備え、
前記プロセッサは、
前記プロセスの実行履歴を前記記憶装置に記録し、
前記プロセスが実行されるごとに、予め定義された判定指標に基づいて、前記プロセスの実行が異常の可能性が高いか否かを判定し、
前記プロセスの実行が異常の可能性が高いと判定されたとき、前記判定指標を含む当該プロセスのプロセスログ情報を記録し、
前記プロセスログ情報及び前記プロセスの実行履歴に基づいて、前記異常の可能性が高いプロセス及び前記異常の可能性が高いプロセスの入力データを生成するために必要な一連のプロセスを、当該プロセスの実行結果、当該プロセス間の先行関係及び当該プロセスが実行されたタイミングの少なくとも一つについて、さらに分析し、前記分析対象のプロセスの実行が異常か否かを判定し、分析結果と前記分析対象のプロセスの実行履歴とを含むプロセス履歴分析情報を生成することを特徴とするデータ分析装置。
【請求項１３】
入力データを加工し、出力データを生成するプロセスを組み合わせて実行することによって処理される業務において、前記プロセスの実行を分析するプログラムであって、
前記プロセスの実行履歴を記録する手順と、
前記プロセスが実行されるごとに、予め定義された判定指標に基づいて、前記プロセスの実行が異常の可能性が高いか否かを判定する手順と、
前記プロセスの実行が異常の可能性が高いと判定されたとき、前記判定指標を含む当該プロセスのプロセスログ情報を記録する手順と、
前記プロセスログ情報及び前記プロセスの実行履歴に基づいて、前記異常の可能性が高いプロセス及び前記異常の可能性が高いプロセスの入力データを生成するために必要な一連のプロセスを、当該プロセスの実行結果、当該プロセス間の先行関係及び当該プロセスが実行されたタイミングの少なくとも一つについて、さらに分析し、前記分析対象のプロセスの実行が異常か否かを判定し、分析結果と前記分析対象のプロセスの実行履歴とを含むプロセス履歴分析情報を生成する手順と、を計算機に実行させるデータ分析プログラム。
【請求項１４】
入力データを加工し、出力データを生成するプロセスを組み合わせることによって業務を処理するプロセスサーバと、前記プロセスサーバとネットワークを介して接続され、前記プロセスサーバによって実行されたプロセスの実行を分析するデータ分析装置と、を備えた計算機システムであって、
前記プロセスサーバは、前記ネットワークと接続する第１のインターフェースと、前記第１のインターフェースに接続される第１のプロセッサと、前記第１のプロセッサにアクセス可能な第１の記憶装置と、を備え、
前記データ分析装置は、前記ネットワークと接続する第２のインターフェースと、前記第２のインターフェースに接続される第２のプロセッサと、前記第２のプロセッサにアクセス可能な第２の記憶装置と、を備え、
前記第１のプロセッサは、
前記プロセスの実行履歴を前記第１の記憶装置に記録し、
前記プロセスが実行されるごとに、予め定義された判定指標に基づいて、前記プロセスの実行が異常の可能性が高いか否かを判定し、
前記プロセスの実行が異常の可能性が高いと判定されたとき、前記判定指標を含む当該プロセスのプロセスログ情報を前記データ分析装置に送信し、
前記第２のプロセッサは、
前記プロセスログ情報を受信すると、前記受信したプロセスログ情報を前記第２の記憶装置に記録し、
前記プロセスログ情報及び前記プロセスの実行履歴に基づいて、前記異常の可能性が高いプロセス及び前記異常の可能性が高いプロセスの入力データを生成するために必要な一連のプロセスを、当該プロセスの実行結果、当該プロセス間の先行関係及び当該プロセスが実行されたタイミングの少なくとも一つについて、さらに分析し、前記分析対象のプロセスの実行が異常か否かを判定し、分析結果と前記分析対象のプロセスの実行履歴とを含むプロセス履歴分析情報を生成することを特徴とする計算機システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、入力データを加工し、出力データを生成するデータ処理技術において、データを処理するプロセスが異常か否かを検証する技術に関する。
【背景技術】
【０００２】
コンビニエンスストアなどの製造から販売までの一連の業務における売上管理システムにおいて、各業務で入力された在庫量又は売上金額などのデータは、データセンターなどで集計及び加工され、在庫管理及び売上管理などに活用される。
【０００３】
また、加工されたデータに異常が検出されたとき、利用者はシステムが出力したログを参照するなどして、異常の状態及び原因を検証する。検証作業を支援する方法としては、例えば、検証対象のデータがどのプロセスの実行によって生成されたのかの関係を表示する方法、どのデータが異常となったかを特定することによって検証対象を絞り込む方法、そして、異常の原因となったプロセス及び生成されたデータまでの経路を特定する方法が挙げられる。
【０００４】
特許文献１には、任意のデータについて、生成に必要なデータとプロセスの階層構造の関係であるデータ加工履歴を導出する技術が開示されている。また、特許文献２には、売上金額のような特定のデータに関して、統計分析を用いて高精度に異常か否かを判定する技術が開示されている。さらに、特許文献３には、プラントなどの発生する異常の候補が事前に判明している分野では、異常が発生したプロセスをスコアリングすることによって、異常の原因までの経路を特定する技術が開示されている。
【特許文献１】特開２００１−３３１３５４号公報
【特許文献２】特開平７−５６８９０号公報
【特許文献３】特開平６−３０９５８４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかし、特許文献１に開示された技術は、データ加工履歴の情報量が大量になると、異常が発生したプロセス又はデータの特定及び異常の発生原因の特定を含む検証作業は困難となる問題がある。
【０００６】
また、特許文献２に開示された技術は、売上金額などの特定のデータに対しては有効であるが、多様な種別を持つ業務データに一律に適用することは難しいという問題がある。
【０００７】
さらに、特許文献３に開示された技術は、業務データのようにデータによって発生する異常が異なるため、異常の候補が事前に明らかになっていない場合には、システムによってスコアリングすることが困難であり、異常の原因までの経路の特定が難しいという問題がある。
【０００８】
また、情報量の大きいデータ加工履歴から、どのプロセス又はどのデータが異常であり原因となったかを検証できたとしても、プロセスの実行時期又は異常の原因となったデータの生成時期などは、プロセス実行履歴などのログを１つ１つ参照しながら検証する必要があり、検証作業に多大な時間を必要とするという問題がある。
【０００９】
そこで、本発明は前述した問題を鑑みてなされたものであり、業務データの種別に依存しない指標によって、業務データが異常であるか否かを判定し、関連するプロセスを分析する。そして、異常に関係するプロセスのみを抽出したデータ加工履歴とプロセス実行履歴ごとに異常か否かの分析結果を表示することによって、データ検証作業を支援することを目的とする。
【課題を解決するための手段】
【００１０】
本発明の代表的な一形態では、入力データを加工し、出力データを生成するプロセスを組み合わせて実行することによって処理される業務で、前記プロセスの実行を分析するデータ分析装置において、前記プロセスの実行を分析するデータ処理方法であって、前記データ分析装置は、プロセッサと、前記プロセッサによってアクセス可能な記憶装置と、を備え、前記プロセッサは、前記プロセスの実行履歴を前記記憶装置に記録し、前記プロセスが実行されるごとに、予め定義された判定指標に基づいて、前記プロセスの実行が異常の可能性が高いか否かを判定し、前記プロセスの実行が異常の可能性が高いと判定されたとき、前記判定指標を含む当該プロセスのプロセスログ情報を記録し、前記プロセスログ情報及び前記プロセスの実行履歴に基づいて、前記異常の可能性が高いプロセス、及び前記異常の可能性が高いプロセスの入力データを生成するために必要な一連のプロセスを、当該プロセスの実行結果、当該プロセス間の先行関係及び当該プロセスが実行されたタイミングの少なくとも一つに着目しながら、さらに分析し、前記分析対象のプロセスの実行が異常か否かを判定し、分析結果と前記分析対象のプロセスの実行履歴とを含むプロセス履歴分析情報を生成する。
【発明の効果】
【００１１】
本発明の一形態によれば、異常か否かの判定及び異常の原因を特定することを含むデータ検証作業を支援し、データ検証作業に必要とする作業時間を低減及び作業量を削減することができる。
【発明を実施するための最良の形態】
【００１２】
図１は、本発明の一実施形態のデータ検証支援システムの構成図である。データ検証支援システムは、図１に示すように、クライアント１１０、プロセスサーバ１２０、データ加工履歴管理サーバ１６０、及びストレージ装置群を含む。クライアント１１０、プロセスサーバ１２０、データ加工履歴管理サーバ１６０、及びストレージ装置群は、ネットワーク１００を介して接続される。
【００１３】
ストレージ装置群は、ストレージ装置Ａ１３０、ストレージ装置Ｂ１４０、ストレージ装置Ｃ１５０などの複数のストレージ装置によって構成される。なお、ストレージ装置群は、１つのストレージ装置によって構成されていてもよいし、図１に示すように複数のストレージ装置によって構成されていてもよい。
【００１４】
また、クライアント１１０、プロセスサーバ１２０、及びデータ加工履歴管理サーバ１６０は、図１に示すように、それぞれが個別の計算機に実装されていてもよいし、１つの計算機内に構成されていてもよい。さらに、ネットワーク１００には、図示していない各種の計算機又は周辺機器が接続されていてもよい。
【００１５】
クライアント１１０は、ユーザ要求受付部１１１及び表示部１１２を含む。ユーザ要求受付部１１１は、利用者からデータ検証画面の表示要求を受け付け、データ加工履歴管理サーバ１６０に異常に関係するプロセスを抽出した分析済データ加工履歴の生成及び表示を要求する。表示部１１２は、データ加工履歴管理サーバ１６０が生成した異常に関係するプロセスを抽出した分析済データ加工履歴を含むデータ検証画面を表示する。
【００１６】
プロセスサーバ１２０は、１個又は複数のプロセス１２３の情報を保持し、プロセスの実行を管理する。プロセスサーバ１２０は、さらに、プロセス実行管理部１２１及び実行時判定部１２２を含む。プロセス実行管理部１２１は、データ加工処理手順が定義されたプロセス１２３の実行を管理する。実行時判定部１２２は、プロセス実行管理部１２１によるプロセス実行が異常の可能性が高いか否かを、プロセスの実行時に判定する。プロセス実行の異常とは、プロセスによって生成されたデータの値に異常である場合だけでなく、実行されたプロセスの所要時間が所定の範囲に含まれない場合なども含む。
【００１７】
プロセス１２３は、データ抽出部１２４、データ加工部１２５及びデータ格納部１２６を含む。データ抽出部１２４は、加工対象の入力元データをストレージ装置から抽出する。データ加工部１２５は、抽出されたデータをあらかじめ定義された手順にしたがって加工する。データ格納部１２６は、加工されたデータを出力先データとして、ストレージ装置に格納する。
【００１８】
本発明の一実施形態では、ストレージ装置群は、図１に示すように、複数のストレージ装置によって構成される。ストレージ装置Ａ１３０のデータＡ１３１は、プロセス実行によって加工される入力元データ、又はプロセス実行によって生成される出力先データとなる。ストレージ装置Ｂ１４０のデータＢ１４１、及びストレージ装置Ｃ１５０のデータＣ１５１についても同様である。
【００１９】
データ加工履歴管理サーバ１６０は、クライアント１１０のユーザ要求受付部１１１からの要求を受け付け、プロセス実行の履歴を分析し、異常に関係するプロセスを抽出した分析済データ加工履歴を含むデータ検証画面を描画する。データ加工履歴管理サーバ１６０は、データ加工履歴生成部１６１、データ１６６、プロセス手順管理部１６２、しきい値管理部１６３、プロセスログ情報管理部１６４、及びプロセス履歴管理部１６５を含む。
【００２０】
データ加工履歴生成部１６１は、プロセスサーバ１２０で実行されたプロセス実行の結果を分析し、結果をクライアント１１０に送信し、表示させる。データ加工履歴生成部１６１は、データ加工履歴情報取得部１７１、履歴分析部１７２、データ加工履歴描画部１７６、データ生成時刻テーブル１７７、及び履歴分析結果テーブル１７８を含む。
【００２１】
データ加工履歴情報取得部１７１は、プロセスの実行手順を取得し、データ加工履歴を生成するための情報を取得する。履歴分析部１７２は、プロセスの実行手順、プロセス実行時において異常の可能性が高いと判定されたプロセスのログ情報、及びプロセス実行の履歴情報に基づいて、履歴情報を分析する。データ加工履歴描画部１７６は、分析済のデータ加工履歴を含むデータ検証画面の描画をクライアント１１０に指示する。
【００２２】
データ生成時刻テーブル１７７は、履歴を分析する処理において使用され、検証対象となるデータの生成時刻を格納する。履歴分析結果テーブル１７８は、履歴の分析結果を格納する。
【００２３】
履歴分析部１７２は、プロセスログ情報抽出部１７３、プロセスログ情報分析部１７４、及び判定指標組み合わせ分析部１７５を含む。プロセスログ情報抽出部１７３は、プロセス実行時において異常の可能性が高いと判定されたプロセスのログ情報（以下、「プロセスログ情報」）を抽出する。プロセスログ情報分析部１７４及び判定指標組み合わせ分析部１７５は、プロセスログ情報及びプロセス実行の履歴情報に基づいて、異常の可能性が高いと判定されたプロセス実行についてさらに詳細に分析する。
【００２４】
データ１６６は、プロセス実行時及びプロセス実行の履歴情報の分析処理に使用するデータである。データ１６６は、プロセス手順テーブル１８１、しきい値テーブル１８２、プロセスログ情報１８３及びプロセス履歴テーブル１８４を含む。
【００２５】
プロセス手順テーブル１８１は、プロセスの実行手順を格納する。プロセス履歴管理部１６５は、プロセス手順テーブル１８１に格納された、プロセスの実行手順を管理する。
【００２６】
しきい値テーブル１８２は、プロセス実行、又はプロセス実行によって生成されたデータの異常を判定する基準となるしきい値を格納する。しきい値管理部１６３は、しきい値テーブル１８２に格納されたしきい値を管理する。
【００２７】
プロセスログ情報１８３は、プロセスの実行時に、プロセスサーバ１２０の実行時判定部１２２によって、異常の可能性が高いと判定されたプロセス実行のログ情報を格納する。プロセスログ情報管理部１６４は、プロセスログ情報１８３に格納された、異常の可能性が高いと判定されたプロセス実行のログ情報を管理する。
【００２８】
プロセス履歴テーブル１８４は、プロセスの実行履歴を格納する。なお、プロセス履歴テーブル１８４には、プロセスが異常であるか否かにかかわらず、すべてのプロセスの実行履歴が格納される。プロセス履歴管理部１６５は、プロセス履歴テーブル１８４に格納された、プロセスの実行履歴を管理する。
【００２９】
図２は、本発明の一実施形態のクライアント１１０を示す構成図である。クライアント１１０は、プロセッサ２０１、メモリ２０２、ネットワークインターフェイス２０４、表示制御装置２０５、及び入力制御装置２０７を含む。プロセッサ２０１、メモリ２０２、ネットワークインターフェイス２０４、表示制御装置２０５、及び入力制御装置２０７は、内部バス２０３を介して接続される。
【００３０】
プロセッサ２０１は、メモリ２０２に記憶されたプログラムを実行することによって各種処理を実行する。メモリ２０２は、プロセッサ２０１によって実行されるプログラム及びプロセッサ２０１に必要とされる情報を記憶する。メモリ２０２に記憶するプログラムは、具体的には、図２に示すように、ユーザ要求受付部１１１及び表示部１１２となる。
【００３１】
ネットワークインターフェイス２０４は、ネットワーク１００に接続される。表示制御装置２０５は、クライアント１１０に接続された表示装置２０６を制御する。表示装置２０６は、例えば、ディスプレイなどであって、データ検証画面などの情報を出力する。入力制御装置２０７は、クライアント１１０に接続された入力装置２０８を制御する。入力装置２０８は、例えば、キーボード又はマウスなどであって、データ検証画面の表示要求などの情報を入力する。
【００３２】
図３は、本発明の一実施形態のプロセスサーバ１２０を示す構成図である。プロセスサーバ１２０は、プロセッサ３０１、メモリ３０２、及びネットワークインターフェイス３０４を含む。プロセッサ３０１、メモリ３０２、及びネットワークインターフェイス３０４は、内部バス３０３を介して接続される。
【００３３】
プロセッサ３０１は、メモリ３０２に記憶されたプログラムを実行することによって各種処理を実行する。メモリ３０２は、プロセッサ３０１によって実行されるプログラム及び処理に必要な情報を記憶する。メモリ３０２に記憶されるプログラム及び情報は、具体的には、図３に示すように、プロセス実行管理部１２１、実行時判定部１２２及びプロセス１２３となる。ネットワークインターフェイス３０４は、ネットワーク１００に接続される。
【００３４】
図４は、本発明の一実施形態のデータ加工履歴管理サーバ１６０の構成を示す図である。データ加工履歴管理サーバ１６０は、プロセッサ４０４、メモリ４０５、ネットワークインターフェイス４０１、及び記憶装置４０２を含む。プロセッサ４０４、メモリ４０５、ネットワークインターフェイス４０１、及び記憶装置４０２は、内部バス４０３を介して接続される。
【００３５】
プロセッサ４０４は、メモリ４０５に記憶されたプログラムを実行することによって、各種処理を実行する。メモリ４０５は、プロセッサ４０４によって実行されるプログラム及び処理に必要な情報を記憶する。メモリ４０５に記憶されるプログラムは、図４に示すように、データ加工履歴生成部１６１、プロセス手順管理部１６２、しきい値管理部１６３、プロセスログ情報管理部１６４及びプロセス履歴管理部１６５となる。
【００３６】
ネットワークインターフェイス４０１は、ネットワーク１００に接続される。記憶装置４０２は、プロセッサ４０４によって実行されるプログラム又はデータ加工履歴管理サーバ１６０以外の計算機が実行するプログラムに必要とされる情報を記憶する。記憶装置４０２に記憶される情報は、図１に示したデータ１６６、すなわち、プロセス手順テーブル１８１、しきい値テーブル１８２、プロセスログ情報１８３及びプロセス履歴テーブル１８４となる。
【００３７】
図５は、本発明の一実施形態のプロセス手順テーブル１８１を示す図である。プロセス手順テーブル１８１は、プロセスの入力元データと出力先データとの関係を保持する。プロセス手順テーブル１８１は、プロセス名５０１、出力先５０２、及び入力元５０３を含む。
【００３８】
プロセス名５０１は、プロセスを一意に識別可能なプロセスの名称を保持する。出力先５０２は、プロセス実行によって生成するデータの格納先を保持する。入力元５０３は、プロセスが加工するデータの格納先を保持する。
【００３９】
プロセス手順テーブル１８１のレコード５０４は、入力元データ「データＢ」と「データＤ」と「データＦ」をプロセス「プロセス１」に入力すると、生成したデータを出力先データ「データＡ」に出力することを示している。
【００４０】
入力元及び出力先データは、リレーショナルデータベースのテーブル、テーブルのカラム、テーブルのレコード、又はファイルなどであって、計算機によって加工可能であって、入出力関係が定義されているデータであればよい。
【００４１】
また、プロセス手順テーブル１８１は、プロセスを実行するためにあらかじめ定義されており、本発明の一実施形態ではプロセス実行が異常か否かを判定する実行時判定部１２２、及びデータ加工履歴生成部１６１によって参照される。
【００４２】
図６Ａ及び図６Ｂは、本発明の一実施形態のプロセス手順テーブル１８１に定義された手順に基づいて、プロセスを実行し、データを生成する様子を示す図である。
【００４３】
図６Ａは、本発明の一実施形態のプロセス手順テーブル１８１の各プロセスと入力元データ及び出力先データとの関係が階層構造によって表現されたデータ加工履歴を示す図である。データ加工履歴は、データ及びプロセスをノードに対応させ、データの入出力関係に基づいて各ノードを連結し、最終出力データをルートノードとする木構造となる。
【００４４】
図６Ａを参照しながら具体的に説明すると、「データＡ」は、ルートノードに対応し、「データＢ」、「データＤ」及び「データＦ」を入力元データとする「プロセス１」を実行することによって、生成及び出力される。さらに、「データＢ」は「データＣ」を入力元データとする「プロセス２」の実行によって生成及び出力される。同様に、「データＤ」は「データＥ」を入力元データとする「プロセス３」の実行によって生成及び出力され、「データＦ」は「データＧ」を入力元データとする「プロセス４」の実行によって生成及び出力される。
【００４５】
また、プロセス１２３は、バッチ処理などによって繰り返し実行され、実行ごとに対応する実行履歴を有する。したがって、データ加工履歴についても対応する実行履歴が存在する。
【００４６】
図６Ｂは、本発明の一実施形態のプロセスの実行履歴を時系列とともに表示した図である。図６Ｂは、図６Ａに示すデータ加工履歴の一部である「プロセス１」と「プロセス２」とそれらの入出力データの関係（６０１及び６０２)を示している。
【００４７】
図６Ｂに示したプロセスの実行履歴によると、「プロセス２」は、時刻「２００６／７／２０  ２０：００」（６０３)に実行され、その後、さらに３回実行される。そして、「プロセス２」が計４回実行された後、「プロセス１」が時刻「２００６／７／２０  ２３：００」（６０４)に実行される。
【００４８】
「プロセス１」の実行６０４の完了後、「プロセス２」が時刻「２００６／７／２１  １：００」（６０５)に実行される。なお、「プロセス１」の実行６０４における入力元データには「プロセス２」の実行６０５で処理された内容は反映されていない。その後、実行される「プロセス１」の実行６０６における入力元データには、「プロセス２」の実行６０５で処理された内容が反映される。
【００４９】
このように、プロセス実行時の入力元データは、前回のプロセス実行の完了後、当該入力元データを出力先データとするプロセスによって生成されたデータとなる。そこで、本発明では、このようなプロセスごとの実行履歴のことを生成時刻ブロックと呼ぶ。具体的には、６０７及び６０８が「データＡ」の生成時刻ブロックとなる。
【００５０】
続いて、実行時判定部１２２及びデータ加工履歴生成部１６１において使用されるしきい値テーブル１８２、プロセスログ情報１８３、及びプロセス履歴テーブル１８４について説明する。
【００５１】
図７は、本発明の一実施形態のしきい値テーブル１８２を示す図である。しきい値テーブル１８２は、プロセス実行時にプロセスサーバ１２０の実行時判定部１２２によって異常を判定する処理において使用されるしきい値を格納する。
【００５２】
しきい値テーブル１８２は、プロセス名７０１、判定対象のデータ名７０２、判定指標７０３、判定指標に対応する値の平均値７０４、判定指標に対応する最小しきい値７０５及び最大しきい値７０６を含む。
【００５３】
実行時判定部１２２は、判定対象のデータ名７０２に対する判定指標７０３に対応する値について、平均値７０４、最小しきい値７０５及び最大しきい値７０６と比較してプロセス実行の異常を判定する。例えば、判定対象のデータの値と平均値７０４との比率を最小しきい値７０５及び最大しきい値７０６と比較し、または、判定対象のデータの値そのものを最小しきい値７０５及び最大しきい値７０６と比較する。
【００５４】
しきい値テーブル１８２のレコード７０７は、「プロセス１」の実行時にデータ「Ｔａｂｌｅ−Ａ．損益率」に対して「データ値」を判定指標としている。さらに、判定前のデータの平均値が「９６．５」であり、設定されたしきい値は最小「０．８」、最大「１．２」であることを示している。レコード７０７の最小しきい値及び最大しきい値は、値そのものを比較するのではなく、平均値との比率を比較することによって、異常か否かを判定する。
【００５５】
具体的には、集計値（データ値）が「９７」であれば、平均値との比率は９７／９６．５＝１．０１となり、最小しきい値「０．８」から最大しきい値「１．２」の範囲に含まれるため、正常と判定される。一方、集計値が「１３８」の場合には、平均値との比率は１３８／９６．５＝１．４３となり、最大しきい値「１．２」を超えるため、異常と判定される。
【００５６】
また、しきい値テーブル１８２のレコード７０８は、「プロセス２」の実行時にデータ「Ｔａｂｌｅ−Ｂ．売上個数」に対して「データ値」を判定指標としている。さらに、判定前のデータの平均値が「１２３２」であり、設定されたしきい値は最小「９００」、最大「１８００」であることを示している。レコード７０８の最小しきい値及び最大しきい値は、値そのものが格納されており、そのまま平均値と比較することによって、異常か否かを判定する。
【００５７】
具体的には、集計値（データ値）が「１３００」であれば、最小しきい値「９００」から最大しきい値「１８００」の範囲に含まれるため、正常と判定される。一方、集計値が「８００」の場合には、最小しきい値「８００」に満たないため、異常と判定される。
【００５８】
図８は、本発明の一実施形態のプロセスログ情報１８３を示す図である。プロセスログ情報１８３は、プロセス実行時に実行時判定部１２２によって異常の可能性が高いと判定されたプロセス実行の履歴を格納する。プロセスログ情報１８３は、プロセス名８０１、開始時刻８０２、判定指標８０３を含む。
【００５９】
プロセスログ情報１８３のレコード８０４は、「２００６／７／２０  ２３：００」に実行された「プロセス１」について、「データ値」を判定指標に異常か否かを判定した結果、異常の可能性が高いと判定されたことを示している。
【００６０】
図９は、本発明の一実施形態のプロセス履歴テーブル１８４を示す図である。プロセス履歴テーブル１８４は、プロセス実行の履歴を蓄積する。プロセス履歴テーブル１８４は、プロセス名９０１、開始時刻９０２、終了時刻９０３、処理件数９０４、処理時間９０５及び実行回数９０６を含む。
【００６１】
プロセス名９０１は、プロセスを識別する名称を格納する。開始時刻９０２は、プロセスの実行を開始した時刻を格納する。終了時刻９０３は、プロセスの実行が終了した時刻を格納する。
【００６２】
処理件数９０４は、プロセス名９０１によって特定されるプロセスが実行開始時刻から終了時刻までの間に処理したデータの件数を格納する。処理時間９０５は、当該プロセスの実行開始から終了までの所要時間を格納する。実行回数９０６は、当該プロセスの入力元データを生成したプロセスが生成時刻ブロック内で実行された回数を格納する。
【００６３】
レコード９０７は、「プロセス１」の実行が「２００５／７／２０  ２３：００」に開始され、「２００５／７／２１  １：００」に終了したことを示している。さらに、「プロセス１」が実行されている間に「２５０」件のデータが処理され、処理時間は「２：００」であり、入力元データを生成したプロセスの実行回数は「５」回であることを示している。
【００６４】
次に、プロセス実行管理部１２１及びプロセス実行が異常か否かを判定する実行時判定部１２２の処理について、フローチャートを参照しながら説明する。
【００６５】
図１０は、本発明の一実施形態のプロセス実行管理部１２１によってプロセスを実行する手順を示すフローチャートである。
【００６６】
プロセス実行管理部１２１は、バッチ処理などによってプロセスの実行依頼を受け付けると、プロセス手順テーブル１８１に格納されたプロセスの入力元データの情報に基づいて、データ抽出部１２４がストレージ装置から入力元データを抽出する（１００１）。
【００６７】
データ加工部１２５は、予め定義されたプロセスの処理手順に従って、抽出された入力元データを加工する（１００２）。実行時判定部１２２は、データの加工が完了すると、プロセス実行が異常の可能性が高いか否かを判定する（１００３）。実行時判定部１２２の処理については、図１１にて後述する。
【００６８】
データ格納部１２６は、実行時判定部１２２による判定が完了すると、プロセス手順テーブル１８１に格納されたプロセスの出力先の情報に基づいて、ストレージ装置に生成されたデータを格納する（１００４）。
【００６９】
図１１は、本発明の一実施形態のプロセス実行管理部１２１によって実行されるプロセス実行が異常の可能性が高いか否かを判定する実行時判定部１２２の処理のフローチャートである。
【００７０】
実行時判定部１２２は、プロセスの実行によってデータが生成された後（図１０の１００２）、プロセス実行の履歴情報をデータ加工履歴管理サーバ１６０のプロセス履歴管理部１６５に送信する（１１０１）。送信されるプロセス実行の履歴情報は、具体的には、プロセス名、開始時刻、終了時刻、処理件数、処理時間及び実行回数などである。そして、プロセス履歴管理部１６５は、受信したプロセス実行の履歴情報をプロセス履歴テーブル１８４に格納する（１１０１）。
【００７１】
次に、実行時判定部１２２は、プロセス実行が異常か否かを判定するために使用される判定指標をしきい値テーブル１８２から取得し、メモリ３０２に記憶する（１１０２）。本発明の一実施形態では、しきい値として、「データ値」、「処理件数」、「処理時間」、「実行回数」をメモリ３０２に記憶する。
【００７２】
実行時判定部１２２は、メモリ３０２に記憶され、処理されていない判定指標を抽出する（１１０３）。実行時判定部１２２は、判定指標が抽出された場合には（１１０４の結果が「Ｙｅｓ」）、しきい値テーブル１８２に格納されたしきい値に基づいて、プロセス実行が異常か否かを判定する（１１０５）。さらに、プロセス履歴テーブル１８４に保持されたプロセス実行の履歴情報から統計処理に基づいて、プロセス実行が異常か否かを判定する（１１０６）。すべての判定指標について異常を判定し、処理されていない判定指標が抽出されなかった場合には（１１０４の結果が「Ｎｏ」）、実行時判定部１２２の処理を終了する。
【００７３】
実行時判定部１２２は、メモリ３０２に記録されたすべての判定指標について、異常判定処理の実行が完了するまで、１１０３〜１１０６の処理を実行する。
【００７４】
図１２は、本発明の一実施形態の実行時判定部１２２の処理において、しきい値に基づいた異常判定処理１１０５の手順を示すフローチャートである。
【００７５】
しきい値を使用した異常判定処理１１０５は、実行時判定部１２２によってメモリから抽出された判定指標に基づいて、プロセス実行が異常か否かをプロセス実行の結果としきい値とを比較することによって判定する。
【００７６】
実行時判定部１２２は、しきい値に基づいた異常判定処理１１０５において、データ加工履歴管理サーバ１６０のしきい値管理部１６３に、メモリ３０２から抽出された判定指標を送信する。しきい値管理部１６３は、しきい値テーブル１８２から受信した判定指標に対応するプロセスのしきい値情報を送信する（１２０１）。送信されるしきい値情報は、具体的には、平均値、最小しきい値、最大しきい値である。
【００７７】
実行時判定部１２２は、プロセスのしきい値情報を取得した場合には（１２０２の結果が「Ｙｅｓ」）、判定指標に対応するプロセス実行の結果が最小しきい値から最大しきい値までの範囲に含まれるか否かを判定する（１２０３）。一方、プロセスのしきい値情報を取得できなかった場合には（１２０２の結果が「Ｎｏ」）、しきい値に基づいた異常判定処理１１０５を終了する。
【００７８】
実行時判定部１２２は、判定指標に対応するプロセス実行の結果が最小しきい値及び最大しきい値の範囲に含まれない場合には（１２０３の結果が「Ｎｏ」）、判定されたプロセス名、プロセス実行の開始時刻、及び判定指標をデータ加工履歴管理サーバ１６０のプロセスログ情報管理部１６４に送信する。プロセスログ情報管理部１６４は、受信した情報をプロセスログ情報１８３に格納する（１２０４）。
【００７９】
また、実行時判定部１２２は、判定指標に対応するプロセス実行の結果が最小しきい値から最大しきい値の範囲に含まれる場合には（１２０３の結果が「Ｙｅｓ」）、当該判定指標については正常と判定され、他の判定指標に対応したしきい値情報を取得するために１２０１の処理に戻る。そして、判定指標に対応したプロセスのしきい値情報が存在しなくなるまで１２０１〜１２０４の処理が実行される。
【００８０】
ここで、図６Ｂのプロセス１の実行６０４について、しきい値による異常判定処理１１０５を説明する。まず、しきい値テーブル１８２のレコード７０７を参照すると、判定指標は「データ値」である。さらに、「Ｔａｂｌｅ−Ａ．損益率」を判定の対象とし、加工前のデータの平均値は「９６．５」、最小しきい値は「０．８」、最大しきい値は「１．２」である。
【００８１】
このとき、生成されたデータの値が１３５．２であるとすると、生成されたデータの値と平均値との比率は１．４となるため、最小しきい値と最大しきい値の範囲外となる。したがって、しきい値を使用した異常判定処理１１０５は、プロセス１の実行６０４の結果を異常と判定する。その結果、実行時判定部１２２は、プロセスログ情報１８３に「プロセス１」、「２００６／７／２０  ２３：００」、「データ値」を値として、レコード８０４を挿入する。
【００８２】
図１３は、本発明の一実施形態の実行時判定部１２２の処理において、統計処理に基づいた異常判定処理１１０６の手順を示すフローチャートである。
【００８３】
統計処理に基づいた異常判定処理１１０６は、プロセス実行の履歴情報を集計し、統計処理を適用することによって、実行時判定部１２２によってメモリ３０２から抽出された判定指標に基づいて、プロセス実行が異常か否かを判定する。当該統計処理は、判定指標に対して適した計算方法であれば、特に限定する必要はない。
【００８４】
実行時判定部１２２は、統計処理に基づいた異常判定処理１１０６において、プロセス履歴テーブル１８４に格納されたプロセス実行履歴情報が取得済みか否かを確認する（１３０１）。
【００８５】
実行時判定部１２２は、プロセス実行履歴情報を取得済みでない場合には（１３０１の結果が「Ｎｏ」）、データ加工履歴管理サーバ１６０のプロセス履歴管理部１６５にプロセス実行履歴情報の取得を要求する。プロセス履歴管理部１６５は、プロセス実行履歴情報の取得要求を受信すると、プロセス履歴テーブル１８４から関連する情報を取得し、送信する（１３０２）。
【００８６】
実行時判定部１２２は、プロセス実行履歴情報を取得済みの場合には（１３０１の結果が「Ｙｅｓ」）、プロセス実行履歴情報を用いて判定指標に対応した統計処理を実行する（１３０３）。統計処理の結果、プロセス実行に異常の可能性が高いと判定された場合には（１３０４の結果が「Ｙｅｓ」）、判定したプロセス名とプロセス実行の開始時刻と判定指標とをデータ加工履歴管理サーバ１６０のプロセスログ情報管理部１６４に送信する。プロセスログ情報管理部１６４は、受信した情報をプロセスログ情報１８３に格納する（１３０５）。実行時判定部１２２は、プロセス実行が正常と判定された場合には（１３０４の結果が「Ｎｏ」）、異常判定処理１１０６を終了する。
【００８７】
ここで、図６Ｂのプロセス２の実行６０３について、判定指標が「処理件数」の場合の統計処理に基づいた異常判定処理１１０６を説明する。
【００８８】
統計処理に基づいた異常判定処理１１０６は、例えば、過去の実績値の平均との比較とすることができる。すなわち、プロセス２の実行６０３の処理件数「２００」と、プロセス履歴テーブル１８４に格納された他のプロセス２の実行における処理件数の平均値（例えば、「９０」とする）とを比較する。このとき、プロセス２の実行６０３の処理件数「２００」と平均値９０に差異があり、異常な処理件数であると判定する。この場合、プロセスログ情報１８３に、値を「プロセス２」、「２００６／７／２０  ２０：００」、「処理件数」とするレコードが挿入される。
【００８９】
このように、あらかじめ定義された多様な種別を有する業務データであっても一律に適用可能な判定指標を用いることによって、しきい値又は統計処理に基づいてシステムがプロセス実行について異常か否かを判定することができる。なお、統計処理は、一例として平均値との比較を例に挙げたが、それ以外の統計処理であってもよい。例えば、合計値が所定の範囲内であっても、個々の値の分散を算出したとき、所定の値よりも大きい場合を異常と判定してもよい。
【００９０】
以上の図１０〜１３で説明された処理によって生成されたプロセスログ情報１８３は、データ加工履歴管理サーバ１６０のデータ加工履歴生成部１６１によって実行されるプロセス実行履歴の分析に使用される。
【００９１】
次に、クライアント１１０に含まれるユーザ要求受付部１１１及びデータ加工履歴管理サーバ１６０のデータ加工履歴生成部１６１について説明する。ユーザ要求受付部１１１は、データ加工履歴管理サーバ１６０に対してデータ検証画面の表示要求又は判定指標を送信する。データ加工履歴生成部１６１は、データ検証画面の表示要求を受信すると、データ検証画面を表示する。さらに、データ加工履歴生成部１６１は、分析条件を受信すると、プロセス実行履歴を分析し、異常に関係するプロセスを抽出した分析済データ加工履歴を生成する。
【００９２】
図１４は、本発明の一実施形態のプロセス実行によって生成されたデータを表示する画面１４０１を示す図である。画面１４０１は、クライアント１１０に接続された表示装置２０６に、表示部１１２によって表示される。
【００９３】
利用者は、クライアント１１０から表示装置２０６に画面１４０１を表示させると、データ名コンボボックス１４０２から参照するデータを選択する。データ名コンボボックス１４０２の値が選択されると、該当するデータがストレージ装置から取得され、参照データ１４０３として表示される。
【００９４】
さらに、データ検証画面表示ボタン１４０４を操作すると、ユーザ要求受付部１１１は、データ加工履歴管理サーバ１６０のデータ加工履歴生成部１６１に後述するデータ検証画面の表示要求を送信する。
【００９５】
図１５は、本発明の一実施形態のデータ生成時刻テーブル１７７を示す図である。データ生成時刻テーブル１７７は、検証対象のデータを生成したプロセスが実行された時刻を格納する。なお、データ生成時刻テーブル１７７は、データ加工履歴生成部１６１によって管理される一時的な情報であり、メモリ４０５に記録される。
【００９６】
データ生成時刻テーブル１７７は、ブロックＩＤ１５０１及び開始時刻１５０２を含む。ブロックＩＤ１５０１は、各生成時刻ブロックを一意に識別する識別子を格納する。開始時刻１５０２は、データを生成したプロセスを実行した開始時刻を格納する。
【００９７】
データ生成時刻テーブル１７７は、図１５に示した例では、降順でブロックＩＤ１５０１を付与している。なお、ブロックＩＤ１５０１の付与は、図１５に示すように降順であってもよいし、昇順であってもよい。
【００９８】
図１６は、本発明の一実施形態の履歴分析結果テーブル１７８を示す図である。履歴分析結果テーブル１７８は、データ加工履歴管理サーバ１６０の履歴分析部１７２による履歴分析の結果を格納する。なお、履歴分析結果テーブル１７８は、データ加工履歴生成部１６１によって管理される一時的な情報であり、メモリ４０５に記録される。
【００９９】
履歴分析結果テーブル１７８は、ブロックＩＤ１６０１、プロセス名１６０２、開始時刻１６０３、終了時刻１６０４、判定結果１６０５及び判定指標１６０６を含む。
【０１００】
ブロックＩＤ１６０１は、データ生成時刻テーブル１７７のブロックＩＤ１５０１に対応する識別子を格納する。プロセス名１６０２、開始時刻１６０３及び終了時刻１６０４は、プロセス履歴テーブル１８４のプロセス名９０１、開始時刻９０２及び終了時刻９０３に対応する。
【０１０１】
判定結果１６０５は、データ加工履歴管理サーバ１６０の履歴分析部１７２による分析結果を格納する。分析結果が正常と判定された場合には、判定結果１６０５は「問題ありません。」と記録され、判定指標１６０６は空欄となる。また、履歴分析の結果が異常と判定された場合には、判定指標１６０６に対応する判定結果を格納する。
【０１０２】
次に、図１４に示した画面からデータ検証画面を表示するように要求した後、指定されたデータを生成するプロセスをデータ加工履歴生成部１６１によって分析する処理を中心に、分析結果をデータ検証画面に表示するまでの一連の流れについて説明する。
【０１０３】
ユーザ要求受付部１１１は、図１４の「データ検証画面表示」ボタン１４０４が操作されると、データ加工履歴管理サーバ１６０のデータ加工履歴生成部１６１にデータ検証画面の表示要求を送信する。また、ユーザ要求受付部１１１は、クライアント１１０の入力制御装置２０７から、データ検証画面の表示要求以外に、検証対象のデータをデータ加工履歴生成部１６１に送信する。
【０１０４】
図１７は、本発明の一実施形態のユーザ要求受付部１１１から要求されたプロセス実行の履歴分析とデータ検証画面の描画を指示するデータ加工履歴生成部１６１の処理のフローチャートである。
【０１０５】
データ加工履歴生成部１６１は、クライアント１１０のユーザ要求受付部１１１から表示要求を受信すると（１７０１）、データ検証画面の表示要求が初回呼び出しか否かを確認する（１７０２）。初回呼び出しとは、例えば、図１４に示した画面からデータ検証画面を表示する場合など、データ加工履歴がメモリ４０５に記憶されていない状態で、データ検証画面の表示要求を受信した場合である。
【０１０６】
データ加工履歴生成部１６１は、データ検証画面が初回呼び出しの場合には（１７０２の結果が「Ｙｅｓ」）、データ加工履歴情報取得部１７１を実行し、検証対象のデータを最終出力データとするデータ加工履歴情報を取得する（１７０３）。すなわち、検証対象のデータをルートノードとする階層構造のデータ加工履歴情報を取得する。詳細の処理については、図１８にて後述する。取得されたデータ加工履歴情報は、メモリ４０５に記録される。
【０１０７】
次に、データ加工履歴生成部１６１は、メモリ４０５に記録されたデータ加工履歴情報から検証対象のデータを出力先とする分析対象プロセスを取得する（１７０４）。次に、プロセス履歴テーブル１８４から分析対象プロセスの開始時刻をすべて取得し、ブロックＩＤを付与してデータ生成時刻テーブル１７７に格納する（１７０５）。例えば、図１５に示すデータ生成時刻テーブル１７７は、「プロセス１」が分析対象プロセスであり、「プロセス１」の開始時刻をすべて取得し、ブロックＩＤを付与して生成したテーブルである。
【０１０８】
データ加工履歴描画部１７６は、１７０５の処理が完了すると、データ検証画面を表示する（１７０６）。なお、データ検証画面が初回呼び出しではない場合（１７０２の結果が「Ｎｏ」）については後述する。
【０１０９】
図１８は、本発明の一実施形態のデータ加工履歴情報取得部１７１の処理の手順を示すフローチャートである。データ加工履歴情報取得部１７１は、履歴分析に必要な分析対象となるデータのデータ加工履歴情報を取得する。
【０１１０】
データ加工履歴情報取得部１７１は、プロセス手順テーブル１８１から各プロセスと入力元データ及び出力先データを取得し、分析対象となるデータを生成するためのプロセス及びデータによって構成された階層構造を生成する。具体的には、図６Ａに示した木構造がこれに該当する。
【０１１１】
データ加工履歴情報取得部１７１は、検証対象のデータをデータ加工履歴情報のルートノードとしてメモリ４０５に記録し（１８０１）、対象データとして設定する（１８０２）。データ加工履歴情報取得部１７１は、プロセス手順管理部１６２に要求し、プロセス手順テーブル１８１の対象データを出力先とする対象プロセスを取得する（１８０３）。
【０１１２】
データ加工履歴情報取得部１７１は、取得された対象プロセスが存在する場合には（１８０４の結果が「Ｙｅｓ」）、対象データのノードを親として対象プロセスのノードをメモリ４０５上のデータ加工履歴情報に追加する（１８０５）。取得した対象プロセスが存在しない場合には（１８０４の結果が「Ｎｏ」）、データ加工履歴情報取得部１７１の処理を終了する。
【０１１３】
データ加工履歴情報取得部１７１は、１８０５の処理が完了すると、対象プロセスの入力元データをプロセス手順テーブル１８１から抽出する（１８０６）。続いて、対象プロセスのノードを親として対象プロセスの入力元データのノードをメモリ４０５上のデータ加工履歴情報に追加する（１８０７）。続いて、対象プロセスの入力元データを対象データに設定し、１８０３の処理に戻る（１８０８）。
【０１１４】
例えば、図５に示すプロセス手順テーブル１８１で検証対象のデータが「データＡ」の場合、データ加工履歴情報のルートノードは「データＡ」となる。さらに、対象データを「データＡ」、対象プロセスを「プロセス１」としたとき、入力元データである「データＤ」、「データＢ」及び「データＦ」が「プロセス１」を親ノードとして対応する各入力元データに対応するノードが追加される。同様に、１８０３〜１８０８のノード追加処理を繰り返すことによって、図６Ａに示す階層構造のデータ加工履歴情報を取得することができる。
【０１１５】
図１９は、本発明の一実施形態のデータ検証画面１９００の初期状態を示す図である。
【０１１６】
初期状態のデータ検証画面１９００は、データ検証画面の初回呼び出し時にデータ加工履歴描画部１７６からの描画指示をクライアント１１０が受信して、表示装置２０６に表示される。クライアント１１０は、データ加工履歴描画部１７６からの描画指示を受信すると、表示部１１２が表示制御装置２０５を介して表示装置２０６にデータ検証画面１９００を表示する。なお、データ加工履歴描画部１７６による処理については図２４にて後述する。
【０１１７】
初期状態のデータ検証画面１９００は、データ加工履歴部１９０１、分析結果部１９０２及び分析条件設定部１９０３によって構成される。データ加工履歴部１９０１は、データ加工履歴情報取得部１７１によって取得されたデータ加工履歴情報に基づいて、検証対象のデータをルートノードとしたすべてのプロセスとデータの階層構造の関係を表示する。すなわち、この段階では、本発明の特徴である異常に関係するプロセスのみを抽出するための分析は、まだ実行されていない状態である。
【０１１８】
データ加工履歴は、データ（例えば「データＡ」１９１１）及びプロセス（例えば「プロセス１」）をノードとする階層構造によって表示される。データ加工履歴のルートノードは、データ加工履歴部１９０１の左端（データ加工履歴部１９０１の場合では「データＡ」１９１１）に表示される。各プロセスに対応するノードは、上部にプロセス名称（データ加工履歴部１９０１の場合では「プロセス１」１９１２）を表示し、下部は空欄となる（データ加工履歴部１９０１の場合では１９１３）。
【０１１９】
分析結果部１９０２は、データ加工履歴部１９０１で選択したプロセスの分析結果を表示する画面であり、図１９に示す初期状態では、分析処理が実行されていないため、何も表示されていない。
【０１２０】
分析条件設定部１９０３は、「指標切り替え」チェックボックス１９３１及び「データ生成時刻」一覧１９３２を含むデータ加工履歴管理サーバ１６０による分析の条件設定部と「分析実行」ボタン１９３４によって構成される。
【０１２１】
「指標切り替え」チェックボックス１９３１は、データ加工履歴管理サーバ１６０による履歴分析の判定指標を選択する。「データ生成時刻」一覧１９３２は、データ加工履歴管理サーバ１６０による履歴分析の対象となるデータ（データ検証画面１９００の場合は「データＡ」１９１１）の生成時刻一覧を表示する。データの生成時刻一覧は、データ生成時刻テーブル１７７から取得された分析対象プロセスの開始時刻（データ検証画面１９００の場合は、図１５で示すデータ生成時刻テーブル１７７から取得した「データＡ」を生成した「プロセス１」の実行が開始された時刻）をデータの生成時刻一覧として表示する。
【０１２２】
「分析実行」ボタン１９３４が操作されると、検証対象のデータと、「指標切り替え」チェックボックス１９３１に対応する分析の判定指標と、「データ生成時刻」一覧１９３２によって選択されたデータの生成時刻とをクライアント１１０のユーザ要求受付部１１１に送信する。そして、ユーザ要求受付部１１１は、データ加工履歴管理サーバ１６０のデータ加工履歴生成部１６１にデータ検証画面の表示要求を送信する。
【０１２３】
例えば、利用者が「指標切り替え」チェックボックス１９３１で、「データ値」、「処理件数」、「処理時間」、「実行回数」すべてを選択し、「データ生成時刻」一覧１９３２は「２００６／７／２０  ２３：００」を選択し、「分析実行」ボタン１９３４を操作すると、システムはクライアント１１０のユーザ要求受付部１１１にこれらの条件を送信する。ユーザ要求受付部１１１によって実行される処理については後述するが、このように利用者が選択した条件を受け付けることによって、利用者の観点に応じた分析を実行し、分析結果をデータ検証画面に表示することができる。
【０１２４】
ここで、再び図１７の説明に戻る。データ加工履歴生成部１６１は、データ検証画面の呼び出しが初回呼び出しでない場合には（１７０２の結果が「Ｎｏ」）、クライアント１１０のユーザ要求受付部１１１から検証対象のデータと、利用者によって選択された判定指標及び生成時刻と、選択プロセスを受信する（１７０６）。次に、データ加工履歴生成部１６１は、ユーザ要求受付部１１１から受信した検証対象のデータの生成時刻に基づいて、データ生成時刻テーブル１７７から分析対象のブロックＩＤを取得する（１７０７）。
【０１２５】
続いて、データ加工履歴生成部１６１は、履歴分析部１７２によって検証対象のデータの履歴分析を実行する（１７０８）。さらに、データ加工履歴描画部１７６を実行することによって、分析済のデータ加工履歴を含むデータ検証画面を表示する（１７０９）。以下、データ加工履歴生成部１６１によって実行する履歴分析部１７２の処理について説明する。
【０１２６】
図２０は、本発明の一実施形態のデータ加工履歴生成部１６１によって実行されるプロセス実行の履歴を分析する履歴分析部１７２の処理手順を示すフローチャートである。履歴分析部１７２は、プロセス実行時の異常判定の結果と、プロセスの実行履歴からプロセス実行が異常か否かを分析する。
【０１２７】
履歴分析部１７２は、履歴分析結果テーブル１７８に分析対象のブロックＩＤに対応したレコードが格納されているか否かを確認する（２００１）。ブロックＩＤに対応したレコードが格納されている場合には（２００１の結果が「Ｙｅｓ」）、既に、当該ブロックＩＤに該当する生成時刻ブロックでは、履歴の分析が完了しているため、処理を終了する。
【０１２８】
履歴分析部１７２は、ブロックＩＤに対応したレコードが存在しない場合には（２００１の結果が「Ｎｏ」）、分析対象のブロックＩＤについて履歴を分析する。履歴分析部１７２は、まず、データ生成時刻テーブル１７７から分析対象のブロックＩＤに対応する開始時刻を取得し、プロセス履歴管理部１６５に要求してプロセス履歴テーブル１８４から分析対象プロセスの開始時刻から終了時刻までに対応するレコードを取得し、分析対象プロセスの生成時刻ブロックとする。さらに、履歴分析結果テーブル１７８に取得したブロックＩＤ、プロセス名、開始時刻及び終了時刻を格納する（２００２）。なお、２００２の処理の時点では、履歴分析結果テーブル１７８に挿入されるレコードの判定結果１６０５の値を「問題ありません。」とし、判定指標を空欄とする。
【０１２９】
続いて、履歴分析部１７２はクライアント１１０のユーザ要求受付部１１１から受信した分析の判定指標が存在するか否かを確認する（２００３）。判定指標が存在する場合には（２００３の結果が「Ｙｅｓ」）、プロセスログ情報抽出部１７３の処理を実行し（２００４）、さらにプロセスログ情報分析部１７４の処理を実行する（２００５）。プロセスログ情報抽出部１７３の処理の詳細は、図２１にて後述する。また、プロセスログ情報分析部１７４の処理の詳細は、図２２にて後述する。判定指標が存在しない場合には（２００３の結果が「Ｎｏ」）、履歴分析部１７２の処理を終了する。また、２００５の処理が完了すると、履歴分析部１７２の処理は終了する。
【０１３０】
図２１は、本発明の一実施形態の履歴分析部１７２によって起動されるプロセス実行時の判定処理の結果を抽出するプロセスログ情報抽出部１７３の処理手順を示すフローチャートである。
【０１３１】
プロセスログ情報抽出部１７３は、履歴分析部１７２から分析対象プロセスを受信する（２１０１）。次に、プロセスログ情報抽出部１７３は、処理が完了していない分析対象プロセスが存在するか否かを判定する（２１０２）。すべての分析対象プロセスの処理が完了していない場合には（２１０２の結果が「Ｙｅｓ」）、プロセスログ情報管理部１６４に要求して、プロセスログ情報１８３から分析対象プロセスのプロセス名、開始時刻、及び判定指標を取得する（２１０３）。すべての分析対象プロセスに対して処理が完了した場合には（２１０２の結果が「Ｎｏ」）、プロセスログ情報抽出部１７３の処理を終了する。
【０１３２】
プロセスログ情報抽出部１７３は、２１０３の処理が完了すると、プロセスログ情報が存在する場合には（２１０４の結果が「Ｙｅｓ」）、履歴分析結果テーブル１７８のプロセス名と開始時刻が一致するレコードに判定結果を格納する（２１０５）。プロセスログ情報が存在しない場合には（２１０４の結果が「Ｎｏ」）、２１０２の処理に戻る。
【０１３３】
プロセスログ情報抽出部１７３は、２１０５の処理が完了すると、メモリ４０５に記録されたデータ加工履歴情報からプロセスの入力元データを出力先とするプロセスを分析対象プロセスとして抽出する（２１０６）。プロセスログ情報抽出部１７３は、すべての分析対象プロセスに対して処理が完了するまで、２１０２〜２１０６の処理を繰り返す。
【０１３４】
例えば、分析対象プロセスが「プロセス１」であって、取得されたプロセスログ情報に図８に示すプロセスログ情報１８３のレコード８０４が含まれる場合、プロセスログ情報抽出部１７３は、図１６に示す履歴分析結果テーブル１７８のレコード１６０７に判定結果を格納する。格納される判定結果は、プロセスログ情報１８３のレコード８０４の判定指標が「データ値」であるので、判定結果１６０５は「データ値に異常が検出されました。」となり、判定指標１６０６は「データ値」となる。なお、異常が検出されていないプロセスについては、前述したようにあらかじめ、判定結果１６０５は「問題ありません。」、判定指標１６０６は空欄となっている。
【０１３５】
プロセスログ情報抽出部１７３によって生成された履歴分析結果テーブル１７８は、プロセスの実行履歴（プロセス履歴テーブル１８４）にプロセス実行時の異常判定の結果（プロセスログ情報１８３）を合併したものとなる。さらに、プロセスログ情報抽出部１７３の処理の後、プロセスログ情報分析部１７４の処理によってさらに詳細にデータ加工履歴を分析し、履歴分析結果テーブル１７８の判定結果が異常と判定されたレコードについて、本当に異常か否かを分析する。
【０１３６】
図２２は、本発明の一実施形態の履歴分析部１７２から起動されるプロセス実行時の判定結果とプロセスの実行履歴とを用いて異常か否かを分析するプロセスログ情報分析部１７４の処理手順を示すフローチャートである。
【０１３７】
次に、プロセスログ情報分析部１７４は、履歴分析部１７２から分析対象プロセスを受信する（２２０１）。次に、処理が完了していない分析対象プロセスが存在するか否かを判定する（２２０２）。
【０１３８】
プロセスログ情報分析部１７４は、すべての分析対象プロセスの処理が完了していない場合には（２２０２の結果が「Ｙｅｓ」）、履歴分析結果テーブル１７８から分析対象プロセスのプロセスログ情報として判定結果及び判定指標を取得する（２２０３）。すべての分析対象プロセスに対して処理が完了した場合には（２２０２の結果が「Ｎｏ」）、プロセスログ情報分析部１７４の処理を終了する。
【０１３９】
プロセスログ情報分析部１７４は、２２０３の処理が完了すると、取得した判定指標の種別に基づいて分析指標を設定する。２２０４の処理において、判定指標が「処理件数」の場合には分析指標を処理件数に設定する（２２０５）。同様に、判定指標が「処理時間」の場合には分析指標を処理時間に設定し（２２０６）、判定指標が「実行回数」の場合には分析指標を実行回数に設定する（２２０７）。そして、それぞれの場合について、判定指標組み合わせ分析部１７５を実行する（２２０８）。判定指標組み合わせ分析部１７５の実行が完了すると、判定指標組み合わせ分析部１７５は、２２０３の処理に戻る。判定指標組み合わせ分析部１７５の処理の詳細は、図２３にて後述する。
【０１４０】
なお、２２０４の処理において判定指標が「その他」の場合、２２０３の処理に戻る。本発明の一実施形態では、判定指標が「データ値」の場合が該当する。また、判定指標に値が設定されていない場合には、判定指標組み合わせ分析部１７５は、メモリ４０５に記録されたデータ加工履歴情報からプロセスの入力元データを出力先とするプロセスを新たな分析対象プロセスとして抽出し（２２０９）、２２０２の処理に戻る。判定指標に値が設定されていない場合とは、例えば、プロセスが正常に処理された場合である。
【０１４１】
図２３は、本発明の一実施形態のプロセスログ情報分析部１７４によって起動され、分析の判定指標に応じて他の判定指標と組み合わせて異常か否かを分析する判定指標組み合わせ分析部１７５の処理手順を示すフローチャートである。
【０１４２】
判定指標組み合わせ分析部１７５は、プロセスログ情報分析部１７４によって設定された分析指標の種別を組み合わせて分析するために、比較プロセスを設定する。２３０１の処理において、分析指標の種別が「処理件数または処理時間」の場合には、分析対象プロセスを比較プロセスに設定する（２３０２）。また、分析指標の種別が「実行回数」の場合には、データ加工履歴情報に基づいて、分析対象プロセスの入力元データを出力先とするプロセスを取得し、取得されたプロセスを比較プロセスに設定する（２３０３）。なお、比較プロセスとは、分析対象プロセスの判定指標と組み合わせて分析される、もう一方の判定指標である組み合わせ指標によって比較されるプロセスである。
【０１４３】
判定指標組み合わせ分析部１７５は、２３０２又は２３０３の処理が完了すると、履歴分析結果テーブル１７８から比較プロセスの開始時刻を取得し、比較プロセスの一時生成時刻ブロックとしてブロックＩＤを付与してメモリに格納する。そして、組み合わせ指標を処理件数及び処理時間で初期化する（２３０４）。
【０１４４】
判定指標組み合わせ分析部１７５は、分析が完了していない組み合わせ指標を抽出する（２３０５）。分析が完了していない組み合わせ指標が残っている場合には（２３０６の結果が「Ｙｅｓ」）、プロセス履歴管理部１６５に要求して、プロセス履歴テーブル１８４から比較プロセスについて一時生成時刻ブロックごとのレコードを取得し、組み合わせ指標の各合計値を計算する（２３０７）。そして、判定指標組み合わせ分析部１７５は、分析対象プロセスの一時生成時刻ブロックにおける合計値と、計算された比較プロセスの一時生成時刻ブロックごとの各合計値を比較判定する（２３０８）。
【０１４５】
なお、すべての組み合わせ指標について分析が完了した場合には（２３０６の結果が「Ｎｏ」）、判定指標組み合わせ分析部１７５の処理を終了する。
【０１４６】
２３０８の処理が完了すると、判定指標組み合わせ分析部１７５は、比較判定結果によってプロセス実行が異常であるか否かを確認する（２３０９）。比較判定結果が正常であった場合には（２３０９の結果が「Ｎｏ」）、分析対象プロセスの分析結果を問題なしとして履歴分析結果テーブル１７８を更新し、２３０５の処理に戻る（２３１０）。また、比較判定結果が異常であった場合には（２３０９の結果が「Ｙｅｓ」）、２３０５の処理に戻る。
【０１４７】
具体的に説明すると、図２２及び図２３の処理において、例えば、分析対象プロセスが「プロセス２」であるとき、図２２の２２０３の処理で履歴分析結果テーブル１７８からレコード１６０９がプロセスログ情報として取得される。そして、判定指標は「処理件数」であることから２２０５の処理が実行され、２２０８の処理で判定指標組み合わせ分析部１７５が実行される。
【０１４８】
この場合、図２３の２３０１の処理では分析指標の種別が「処理件数」であるので２３０２の処理が実行され、比較プロセスには分析対象プロセスが設定される。このとき、判定指標組み合わせ分析部１７５の２３０４〜２３０９の処理では、比較プロセスの一時生成時刻ブロックごとの処理件数の合計値を比較判定する。例えば、図６Ｂの生成時刻ブロック６０７の合計値が４３０であって、生成時刻ブロック６０８の処理件数の合計値が４００である場合、一時生成時刻ブロックごとの処理件数の合計値の比較判定ではプロセス実行の結果が異常と判定されない。このような場合には、プロセス実行の判定結果は処理件数に異常があるとなっているが、分析対象プロセスの履歴分析結果テーブル１７８のレコード１６０９を異常なしと判定する。そして、判定結果１６０５を「問題ありません。」に、判定指標１６０６を空欄に更新する。
【０１４９】
ここで、さらに具体例を挙げて説明する。あるコンビニエンスストアにおける、○×商品の発注個数データを例とする。○×商品の発注は任意に行われるが、在庫一覧のプロセス実行による集計処理は、毎日の夜間処理によって実行されるものとする。また、各発注個数についても、発注個数を集計するプロセスによって算出されるものとする。
【０１５０】
○×商品の発注は、１日目は、５００個、６００個、６００個の３回であって、２日目は１５００個、１００個の２回、３日目は、１５００個、１５００個、６００個の３回とする。なお、集計処理は、すべての発注処理が終了してから実行されたものとする。
【０１５１】
また、各発注処理のデータ値を発注個数としたとき、しきい値（例えば、最大１０００個、最小３００個の範囲）からはずれた値が異常と判定されるものとする。したがって、２日目の１５００個及び１００個、３日目の２回の１５００個の発注は、各個別の発注として判定されたとき、異常と判定される。
【０１５２】
ここで、分析時には異常と検出されたプロセス実行と、履歴中の他のプロセス実行を集計処理が行われる単位時間あたり（一時生成時刻ブロック）の処理件数の合計値の平均と比較して異常か否かを分析する。しきい値は、合計の平均値と異常と検出された合計値の比率１．９以内とする。
【０１５３】
前述した○×商品の発注を例とすると、２日目の発注総数は単位時間あたりのデータ（１６００個／日）が１日目の単位時間あたりの合計値の平均（１７００個／日）がしきい値（比率１．９）の範囲内であるため、異常でないと判定することができる。すなわち、２日目の１５００個及び１００個の発注は、異常でないと判定することができる。
【０１５４】
一方、３日目のデータ（３６００個／日）は、２日目までの平均（１６５０個／日）からのしきい値の範囲を超えるため、異常と判定することができる。
【０１５５】
以上のように、図２２及び図２３の処理を実行することによって、プロセス実行の異常か否かの判定結果を他の判定指標又は前後のプロセス実行の結果と組み合わせて、より詳細に異常か否かを分析することができる。
【０１５６】
プロセスログ情報分析部１７４によって、さらに詳細に分析された履歴分析結果テーブル１７８は、データ検証画面１９００におけるデータ加工履歴部１９０１の各プロセス下部に表示する異常件数を取得するために使用される。なお、分析されていない状態のデータ加工履歴部１９０１では、図１９の１９１３に示すように空欄となっている。
【０１５７】
また、データ加工履歴部１９０１で選択されたプロセスについて分析結果部１９０２に表示する分析結果の情報を取得するために使用される。なお、分析されていない対象プロセスのデータ検証画面１９００では、図１９に示すように、分析結果部１９０２には何も表示されていない。
【０１５８】
図２４は、本発明の一実施形態のデータ加工履歴生成部１６１によって起動され、クライアント１１０にデータ検証画面の描画を指示するデータ加工履歴描画部１７６の処理手順を示すフローチャートである。
【０１５９】
データ加工履歴描画部１７６は、まず、データ検証画面の初回呼び出しか否かを確認する（２４０１）。初回呼び出しの場合には（２４０１の結果が「Ｙｅｓ」）、メモリ４０５に記録されたデータ加工履歴情報のすべてのプロセスとデータによって構成されるデータ加工履歴を抽出し、クライアント１１０の表示部１１２に描画を指示し（２４０２）、処理を終了する。このとき、描画指示されるデータ検証画面は、図１９で示されたデータ検証画面１９００となる。
【０１６０】
一方、データ加工履歴描画部１７６は、初回呼び出しでない場合には（２４０１の結果が「Ｎｏ」）、メモリ４０５に記録されたデータ加工履歴情報のうち履歴分析結果テーブル１７８の分析対象のブロックＩＤに対応する分析結果から、異常と分析されたプロセスを含むパスのみで構成されるデータ加工履歴を抽出する（２４０３）。
【０１６１】
さらに、データ加工履歴描画部１７６は、履歴分析結果テーブル１７８の分析対象のブロックＩＤに対応する分析結果に基づいて、異常と分析された件数を異常件数としてプロセスごとに抽出する（２４０４）。
【０１６２】
続いて、データ加工履歴描画部１７６は、抽出したデータ加工履歴と異常件数を分析済データ加工履歴としてクライアント１１０の表示部１１２に描画指示を送信する（２４０５）。
【０１６３】
次に、データ加工履歴描画部１７６は、クライアント１１０のユーザ要求受付部１１１から受信した選択プロセスが存在するか否かを確認する（２４０６）。データ加工履歴描画部１７６は、選択プロセスが存在する場合には（２４０６の結果が「Ｙｅｓ」）、選択プロセスについて履歴分析結果テーブル１７８から取得した分析結果をクライアント１１０の表示部１１２に描画指示を送信する（２４０７）。選択プロセスが存在しない場合には（２４０６の結果が「Ｎｏ」）、データ加工履歴描画部１７６の処理を終了する。
【０１６４】
次に、データ検証画面の初回呼び出しではない場合にデータ加工履歴描画部１７６がクライアント１１０の表示部に描画指示をしたデータ検証画面について説明する。
【０１６５】
図２５は、本発明の一実施形態のデータ検証画面１９００を示す図である。
【０１６６】
データ検証画面１９００は、データ加工履歴描画部１７６から送信された描画指示をクライアント１１０の表示部１１２が受信し、表示制御装置２０５を介して表示装置２０６に表示された画面である。
【０１６７】
データ検証画面１９００は、分析済データ加工履歴を表示するデータ加工履歴部１９０１と分析結果部１９０２と分析条件設定部１９０３から構成される。
【０１６８】
データ加工履歴部１９０１は、データ加工履歴管理サーバ１６０によって分析され、異常に関係するプロセスを含むパスのみを抽出した分析済データ加工履歴の情報を表示する。例えば、図２５のデータ加工履歴部１９０１の場合には、メモリ４０５に記録されたデータ加工履歴情報のうち、図１６で示した履歴分析結果テーブル１７８の判定結果１６０５によって異常と分析されたプロセスと、当該プロセスについての異常件数を抽出し、抽出されたプロセスのみを含むパスを分析済データ加工履歴の情報とする。
【０１６９】
そして、データ加工履歴部１９０１には、異常に関係するデータ（例えば「データＡ」２５１１）とプロセス（例えば「プロセス１」２５１２）の階層構造の関係を表示する。したがって、分析済データ加工履歴は、ルートノードを左端の「データＡ」２５１１とし、「データＡ」から異常と分析されたプロセス「プロセス１」、「プロセス２」、「プロセス３」及び「プロセス４」のみを含むパスから構成する階層構造の関係となる。
【０１７０】
また、各プロセスは、上部にプロセス名称（分析済のデータ加工履歴部１９０１の場合では「プロセス１」２５１２）、下部に抽出した異常件数（分析済のデータ加工履歴部１９０１の場合では「異常：１件」２５１３）が表示される。つまり、異常に関係するプロセスは「プロセス１」で異常件数は１件、「プロセス２」で異常件数は７件、「プロセス３」で異常件数は１０件、及び「プロセス４」で異常件数は３件である。
【０１７１】
なお、「プロセス２」２５４は、選択状態となっており、分析結果部１９０２に分析結果が表示されるプロセスであることを示している。
【０１７２】
このように分析済のデータ加工履歴部１９０１は、図１９で示したデータ加工履歴部１９０１とは異なり、「データＡ」を生成するために実行されたすべてのプロセスのデータ加工履歴を表示せずに異常に関係するプロセスのみを表示する。
【０１７３】
したがって、分析済のデータ加工履歴部１９０１を表示することによって、利用者は、異常に関係するプロセスが何であるか、各プロセスの実行履歴で異常と分析された件数を認識することができ、検証作業の対象となるプロセスを絞り込むことができる。
【０１７４】
分析結果部１９０２は、分析済のデータ加工履歴部１９０１のプロセス（例えば、２５１２又は２５１４）が選択されている場合、当該プロセスの分析結果を表示する。図２５に示すように、分析済のデータ加工履歴部１９０１では「プロセス２」２５１４が選択されており、分析結果部１９０２にはプロセス２の分析結果が表示される。
【０１７５】
詳細には、分析結果部１９０２は、どのプロセスの分析結果を表示しているかを示し（２５２１）、分析結果の一覧２５２２を表示する。分析結果の一覧２５２２は、テーブル形式で表示され、開始時刻２５２３、終了時刻２５２４、及び分析結果２５２５をカラムとする。各カラムには、図２４に示したデータ加工履歴描画部１７６の２４０７の処理によって履歴分析結果テーブル１７８から取得された情報を表示する。履歴分析結果テーブル１７８とは、開始時刻２５２３には開始時刻１６０３、終了時刻２５２４には終了時刻１６０４、分析結果２５２５には判定結果１６０５のカラムがそれぞれ対応する。例えば、分析結果の一覧２５２２のレコード２５２６について、「２００６／７／２０  ２２：００」に実行を開始し「２００６／７／２０  ２２：５０」に終了したプロセス２は、分析の結果「問題ありません。」と表示され、異常が抽出されなかったことを示す。
【０１７６】
一方、分析結果の一覧２５２２のレコード２５２７には、「２００６／７／２０  ２１：３０」に実行が開始され、「２００６／７／２０  ２２：００」に終了したプロセス２は、分析結果が「データ値に異常が検出されました。」となっていることが表示されている。すなわち、当該プロセスでは、データ値を判定指標に分析した結果、異常が抽出されたことを示している。
【０１７７】
分析済のデータ加工履歴部１９０１の「プロセス２」２５１４の下部に表示された「異常：７件」は、分析結果の一覧２５２２のレコード２５２７に示すような異常が抽出されたレコードの件数を表示している。
【０１７８】
このように各プロセスの分析結果部１９０２を表示することによって、利用者は異常に関係するプロセスのうち、いつ実行されたプロセスに異常が発生したかを判断し、検証することができる。
【０１７９】
分析条件設定部１９０３は、図１９で示した分析条件設定部１９０３と同様である。図２５の分析条件設定部１９０３において、「分析実行」ボタン１９３４を操作すると、クライアント１１０は、判定指標を「データ値」「処理件数」「処理時間」「実行回数」とし、分析対象のデータ生成時刻を「２００６／７／２０  ２３：００」として、ユーザ要求受付部１１１に送信する。
【０１８０】
本発明の一実施形態によれば、分析条件である判定指標及び生成時刻を指定し、プロセス実行時に判定された異常の可能性が高いプロセスの情報であるプロセスログ情報と蓄積された履歴情報に基づいて、検証対象のデータを分析する。そして、異常に関係するプロセスのみのデータ加工履歴及び実行履歴を抽出し、データ検証画面に表示する。
【０１８１】
データ検証画面には、異常に関係するプロセスのみが抽出されたデータ加工履歴の画面が表示されるため、利用者は異常に関係するプロセスが何であるか、各プロセスの異常と分析された件数を把握し、データを検証するプロセスの対象を絞り込むことができる。また、データ検証画面には、各プロセスの実行履歴に対する分析結果が表示されているため、利用者は異常が発生したプロセスが実行された時期を特定することが可能となり、検証すべきプロセスを容易に判断することができる。さらに、データ検証画面には、分析の条件を設定可能な分析条件設定の画面が表示されているため、利用者の観点に応じて分析された検証結果を表示することが可能である。
【０１８２】
したがって、本発明の一実施形態によれば、生成されたデータ検証画面によって、利用者が異常に関係するプロセスを絞り込み、異常の発生原因となったプロセスの実行時期を判断することをシステムが支援し、データ検証作業の作業時間を低減することができる。
【０１８３】
本発明の一実施形態では、プロセスサーバ１２０の実行時判定部１２２及びデータ加工履歴管理サーバ１６０の履歴分析部１７２において、「データ値」、「処理件数」、「処理時間」、「実行回数」の４つの判定指標がシステムであらかじめ定義されている。データ検証支援システムでは、別の判定指標をプラグインとしてシステムに追加することも可能である。
【０１８４】
例えば、追加する判定指標は、生成されたデータの「データサイズ」であってもよい。具体的には、図１１の１１０２の処理において、プロセスサーバ１２０の実行時判定部１２２に初期化する判定指標に「データサイズ」を加える。また、データ加工履歴管理サーバ１６０のプロセスログ情報分析部１７４が、図２２の２２０４の処理の判定指標の種別に基づく分岐において「データサイズ」を分析指標に設定し、判定指標組み合わせ分析部１７５の２３０１の処理において「データサイズ」を組み合わせて分析可能なプラグインを追加することによって対応が可能となる。
【０１８５】
本発明の一実施形態では、プロセス実行時の異常判定を、しきい値に基づいた異常判定処理１１０５及び統計処理に基づいた異常判定処理１１０６によって実行しているが、前述の２種類以外の判定処理をプラグインとして追加することも可能である。
【０１８６】
例えば、図１に示すシステム構成図に新たに知識ベースを接続し、ルールベースと推論エンジンによって判定指標「信頼度」を使用して判定するプラグインを実行時判定部１２２に追加することによって対応することができる。
【０１８７】
本発明の一実施形態では、プロセスサーバ１２０の実行時判定部１２２によるプロセス実行時の異常判定処理を、多様な種別を持つ業務データに一律に適用可能なものとしている。データ加工履歴管理サーバ１６０の履歴分析部１７２の処理において、判定結果を分析指標として使用することによって、特定の業務データに依存する判定処理を実行することも可能である。この場合には、特定の業務データに依存する判定処理のプラグインを実行時判定部１２２に追加することによって対応が可能となる。
【０１８８】
本発明の一実施形態では、データ加工履歴管理サーバ１６０の履歴分析部１７２において、プロセスログ情報抽出部１７３及びプロセスログ情報分析部１７４によってプロセス実行を分析したが、さらにプロセス実行時に記録されたプロセスログ情報と履歴情報とを組み合わせて使用する分析方法を履歴分析部１７２にプラグインとして追加することも可能である。プラグインを追加することによって、異常に関係するプロセスをより検証対象のデータに適応させて抽出することができる。
【０１８９】
例えば、前後のプロセス実行の関係に着目し、分析対象のプロセス実行が異常とは判定されていないが、生成時刻ブロックの前後に実行したプロセスがどちらも異常であった場合には、異常である可能性が高いとし、異常と判定する分析処理のプラグインを追加してもよい。また、異常となるプロセス実行のパターンがあらかじめ判明している分野であれば、パターンと照合し、異常なプロセス実行を抽出する分析処理のプラグインを追加することも可能である。
【図面の簡単な説明】
【０１９０】
【図１】本発明の一実施形態のデータ検証支援システムの構成図である。
【図２】本発明の一実施形態のクライアントを示す構成図である。
【図３】本発明の一実施形態のプロセスサーバを示す構成図である。
【図４】本発明の一実施形態のデータ加工履歴管理サーバの構成を示す図である。
【図５】本発明の一実施形態のプロセス手順テーブルを示す図である。
【図６Ａ】本発明の一実施形態のプロセス手順テーブルの各プロセスと入力元データ及び出力先データとの関係が階層構造によって表現されたデータ加工履歴を示す図である。
【図６Ｂ】本発明の一実施形態のプロセスの実行履歴を時系列とともに表示した図である。
【図７】本発明の一実施形態のしきい値テーブルを示す図である。
【図８】本発明の一実施形態のプロセスログ情報を示す図である。
【図９】本発明の一実施形態のプロセス履歴テーブルを示す図である。
【図１０】本発明の一実施形態のプロセス実行管理部によってプロセスを実行する手順を示すフローチャートである。
【図１１】本発明の一実施形態のプロセス実行管理部によって実行されるプロセス実行が異常か否かを判定する実行時判定部の処理のフローチャートである。
【図１２】本発明の一実施形態の実行時判定部の処理において、しきい値に基づいた異常判定処理の手順を示すフローチャートである。
【図１３】本発明の一実施形態の実行時判定部の処理において、統計処理に基づいた異常判定処理の手順を示すフローチャートである。
【図１４】本発明の一実施形態のプロセス実行によって生成されたデータを表示する画面を示す図である。
【図１５】本発明の一実施形態のデータ生成時刻テーブルを示す図である。
【図１６】本発明の一実施形態の履歴分析結果テーブルを示す図である。
【図１７】本発明の一実施形態のユーザ要求受付部から要求されたプロセス実行の履歴分析とデータ検証画面の描画を指示するデータ加工履歴生成部の処理のフローチャートである。
【図１８】本発明の一実施形態のデータ加工履歴情報取得部の処理の手順を示すフローチャートである。
【図１９】本発明の一実施形態のデータ検証画面の初期状態を示す図である。
【図２０】本発明の一実施形態のデータ加工履歴生成部によって実行されるプロセス実行の履歴を分析する履歴分析部の処理手順を示すフローチャートである。
【図２１】本発明の一実施形態の履歴分析部によって起動されるプロセス実行時の判定処理の結果を抽出するプロセスログ情報抽出部の処理手順を示すフローチャートである。
【図２２】本発明の一実施形態の履歴分析部から起動されるプロセス実行時の判定結果とプロセスの実行履歴とを用いて異常か否かを分析するプロセスログ情報分析部の処理手順を示すフローチャートである。
【図２３】本発明の一実施形態のプロセスログ情報分析部によって起動され、分析の判定指標に応じて他の判定指標と組み合わせて異常か否かを分析する判定指標組み合わせ分析部の処理手順を示すフローチャートである。
【図２４】本発明の一実施形態のデータ加工履歴生成部によって起動され、クライアントにデータ検証画面の描画を指示するデータ加工履歴描画部の処理手順を示すフローチャートである。
【図２５】本発明の一実施形態のデータ検証画面を示す図である。
【符号の説明】
【０１９１】
１１０  クライアント
１１１  ユーザ要求受付部
１１２  表示部
１２０  プロセスサーバ
１２１  プロセス実行管理部
１２２  実行時判定部
１２３  プロセス
１３０  ストレージ装置Ａ
１３１  データＡ
１４０  ストレージ装置Ｂ
１４１  データＢ
１５０  ストレージ装置Ｃ
１５１  データＣ
１６０  データ加工履歴管理サーバ
１６１  データ加工履歴生成部
１６２  プロセス手順管理部
１６３  しきい値管理部
１６４  プロセスログ情報管理部
１７１  データ加工履歴情報取得部
１７２  履歴分析部
１７３  プロセスログ情報抽出部
１７４  プロセスログ情報分析部
１７５  判定指標組み合わせ分析部
１７６  データ加工履歴描画部
１７７  データ生成時刻テーブル
１７８  履歴分析結果テーブル
１８１  プロセス手順テーブル
１８２  しきい値テーブル
１８３  プロセスログ情報
１８４  プロセス履歴テーブル
【図１】
2008134705.tif 000003
【図２】
2008134705.tif 000004
【図３】
2008134705.tif 000005
【図４】
2008134705.tif 000006
【図５】
2008134705.tif 000007
【図６Ａ】
2008134705.tif 000008
【図６Ｂ】
2008134705.tif 000009
【図７】
2008134705.tif 000010
【図８】
2008134705.tif 000011
【図９】
2008134705.tif 000012
【図１０】
2008134705.tif 000013
【図１１】
2008134705.tif 000014
【図１２】
2008134705.tif 000015
【図１３】
2008134705.tif 000016
【図１４】
2008134705.tif 000017
【図１５】
2008134705.tif 000018
【図１６】
2008134705.tif 000019
【図１７】
2008134705.tif 000020
【図１８】
2008134705.tif 000021
【図１９】
2008134705.tif 000022
【図２０】
2008134705.tif 000023
【図２１】
2008134705.tif 000024
【図２２】
2008134705.tif 000025
【図２３】
2008134705.tif 000026
【図２４】
2008134705.tif 000027
【図２５】
2008134705.tif 000028