(57)【要約】  【課題】業務システムにおける処理の実行履歴の内容をオーダごとに分類することができるアプリケーションプログラムのオーダ推定方法、その装置及びプログラムを提供する。  【解決手段】実行履歴Ａから選択した各処理レコードのコマンドがオーダ識別情報リストＢのオーダ識別情報を含む場合に、該オーダ識別情報のオーダＩＤと処理レコードのプロセス及び処理時刻とを処理記録リストＣに記録し、オーダ識別情報を含まない場合に、処理レコードのプロセスと同一のプロセスを有する処理記録リストＣの処理記録レコードの処理時刻と処理レコードの処理時刻とが所定の時間差で、かつ該処理記録レコードがオーダＩＤを有するとき、該処理記録レコードのオーダＩＤと処理レコードのプロセス及び処理時刻とを処理記録リストに記録するオーダ推定手段２０を備える。【選択図】図３
2008197891.tif 000002
【特許請求の範囲】
【請求項１】
オーダごとに複数の処理を実行するアプリケーションプログラムによって、処理内容を表すコマンドと処理が実行された時刻を表す処理時刻とオーダ内の処理過程を表すプロセスとを有する処理レコードが処理ごとに実行履歴に記録され、コマンドに含まれるオーダ識別情報に基づいて、実行履歴に記録された処理レコードに対するオーダを推定するアプリケーションプログラムのオーダ推定方法であって、
実行履歴に記録された全ての処理レコードにおいて、コマンドからオーダ識別情報を抽出し、オーダ識別情報ごとにオーダを識別するオーダＩＤを割り当て、該オーダＩＤと該オーダ識別情報とを記録してオーダ識別情報リストを作成し、
実行履歴に記録された処理レコードの処理時刻順に選択した各処理レコードにおいて、
選択した処理レコードのコマンドがオーダ識別情報リストに記録されたオーダ識別情報を含む場合に、該オーダ識別情報に割り当てられたオーダＩＤと選択した処理レコードのプロセス及び処理時刻とを有する処理記録レコードを処理記録リストに記録し、
選択した処理レコードのコマンドがオーダ識別情報リストに記録されたオーダ識別情報を含まない場合に、選択した処理レコードのプロセスと同一のプロセスを有する処理記録レコードが処理記録リストに記録されていて、該処理記録レコードのうち選択した処理レコードの処理時刻と最も近い処理時刻を有する処理記録レコードの処理時刻と選択した処理レコードの処理時刻とが所定の時間差で、かつ該処理記録レコードがオーダＩＤを有するとき、該処理記録レコードのオーダＩＤと選択した処理レコードのプロセス及び処理時刻とを有する処理記録レコードを処理記録リストに記録する
ことを特徴とするアプリケーションプログラムのオーダ推定方法。
【請求項２】
オーダごとに複数の処理を実行するアプリケーションプログラムによって、処理内容を表すコマンドと処理が実行された時刻を表す処理時刻とオーダ内の処理過程を表すプロセスとを有する処理レコードが処理ごとに実行履歴に記録され、コマンドに含まれるオーダ識別情報に基づいて、実行履歴に記録された処理レコードに対するオーダを推定するアプリケーションプログラムのオーダ推定方法であって、
実行履歴に記録された全ての処理レコードにおいて、コマンドに複数種類のオーダ識別情報が含まれる場合に、コマンドに含まれるオーダ識別情報の組における各オーダ識別情報が同一のオーダを表すように、コマンドからオーダ識別情報の組を抽出し、オーダ識別情報の組にオーダを識別するオーダＩＤを割り当て、該オーダＩＤとオーダ識別情報の組とを記録してオーダ識別情報リストを作成し、
実行履歴に記録された処理レコードの処理時刻順に選択した各処理レコードにおいて、
選択した処理レコードのコマンドがオーダ識別情報リストに記録されたオーダ識別情報を含む場合に、該オーダ識別情報に割り当てられたオーダＩＤと選択した処理レコードのプロセス及び処理時刻とを有する処理記録レコードを処理記録リストに記録し、
選択した処理レコードのコマンドがオーダ識別情報リストに記録されたオーダ識別情報を含まない場合に、選択した処理レコードのプロセスと同一のプロセスを有する処理記録レコードが処理記録リストに記録されていて、該処理記録レコードのうち選択した処理レコードの処理時刻と最も近い処理時刻を有する処理記録レコードの処理時刻と選択した処理レコードの処理時刻とが所定の時間差で、かつ該処理記録レコードがオーダＩＤを有するとき、該処理記録レコードのオーダＩＤと選択した処理レコードのプロセス及び処理時刻とを有する処理記録レコードを処理記録リストに記録する
ことを特徴とするアプリケーションプログラムのオーダ推定方法。
【請求項３】
前記実行履歴に処理レコードの一部又は複数の処理レコードを１単位とする保存形式で処理記録レコードが保存されている場合に、該保存形式を処理レコードを１単位とする保存形式に変換してから実行履歴に記録された処理レコードに対するオーダを推定する
ことを特徴とする請求項１又は２に記載のアプリケーションプログラムのオーダ推定方法。
【請求項４】
オーダごとに複数の処理を実行するアプリケーションプログラムによって、処理内容を表すコマンドと処理が実行された時刻を表す処理時刻とオーダ内の処理過程を表すプロセスとを有する処理レコードが処理ごとに実行履歴に記録され、コマンドに含まれるオーダ識別情報に基づいて、実行履歴に記録された処理レコードに対するオーダを推定するアプリケーションプログラムのオーダ推定装置であって、
実行履歴に記録された全ての処理レコードにおいて、コマンドからオーダ識別情報を抽出し、オーダ識別情報ごとにオーダを識別するオーダＩＤを割り当て、該オーダＩＤと該オーダ識別情報とを記録してオーダ識別情報リストを作成するオーダ識別情報リスト作成手段と、
実行履歴に記録された処理レコードの処理時刻順に選択した各処理レコードにおいて、
選択した処理レコードのコマンドがオーダ識別情報リストに記録されたオーダ識別情報を含む場合に、該オーダ識別情報に割り当てられたオーダＩＤと選択した処理レコードのプロセス及び処理時刻とを有する処理記録レコードを処理記録リストに記録し、
選択した処理レコードのコマンドがオーダ識別情報リストに記録されたオーダ識別情報を含まない場合に、選択した処理レコードのプロセスと同一のプロセスを有する処理記録レコードが処理記録リストに記録されていて、該処理記録レコードのうち選択した処理レコードの処理時刻と最も近い処理時刻を有する処理記録レコードの処理時刻と選択した処理レコードの処理時刻とが所定の時間差で、かつ該処理記録レコードがオーダＩＤを有するとき、該処理記録レコードのオーダＩＤと選択した処理レコードのプロセス及び処理時刻とを有する処理記録レコードを処理記録リストに記録するオーダ推定手段とを備えた
ことを特徴とするアプリケーションプログラムのオーダ推定装置。
【請求項５】
オーダごとに複数の処理を実行するアプリケーションプログラムによって、処理内容を表すコマンドと処理が実行された時刻を表す処理時刻とオーダ内の処理過程を表すプロセスとを有する処理レコードが処理ごとに実行履歴に記録され、コマンドに含まれるオーダ識別情報に基づいて、実行履歴に記録された処理レコードに対するオーダを推定するアプリケーションプログラムのオーダ推定装置であって、
実行履歴に記録された全ての処理レコードにおいて、コマンドに複数種類のオーダ識別情報が含まれる場合に、コマンドに含まれるオーダ識別情報の組における各オーダ識別情報が同一のオーダを表すように、コマンドからオーダ識別情報の組を抽出し、オーダ識別情報の組にオーダを識別するオーダＩＤを割り当て、該オーダＩＤとオーダ識別情報の組とを記録してオーダ識別情報リストを作成するオーダ識別情報リスト作成手段と、
実行履歴に記録された処理レコードの処理時刻順に選択した各処理レコードにおいて、
選択した処理レコードのコマンドがオーダ識別情報リストに記録されたオーダ識別情報を含む場合に、該オーダ識別情報に割り当てられたオーダＩＤと選択した処理レコードのプロセス及び処理時刻とを有する処理記録レコードを処理記録リストに記録し、
選択した処理レコードのコマンドがオーダ識別情報リストに記録されたオーダ識別情報を含まない場合に、選択した処理レコードのプロセスと同一のプロセスを有する処理記録レコードが処理記録リストに記録されていて、該処理記録レコードのうち選択した処理レコードの処理時刻と最も近い処理時刻を有する処理記録レコードの処理時刻と選択した処理レコードの処理時刻とが所定の時間差で、かつ該処理記録レコードがオーダＩＤを有するとき、該処理記録レコードのオーダＩＤと選択した処理レコードのプロセス及び処理時刻とを有する処理記録レコードを処理記録リストに記録するオーダ推定手段とを備えた
ことを特徴とするアプリケーションプログラムのオーダ推定装置。
【請求項６】
前記実行履歴に処理レコードの一部又は複数の処理レコードを１単位とする保存形式で処理記録レコードが保存されている場合に、該保存形式を処理レコードを１単位とする保存形式に変換してから実行履歴に記録された処理レコードに対するオーダを推定する手段を備えた
ことを特徴とする請求項１又は２に記載のアプリケーションプログラムのオーダ推定装置。
【請求項７】
請求項４乃至７に記載のアプリケーションプログラムのオーダ推定装置の何れかにおいて実行される
ことを特徴とするアプリケーションプログラムのオーダ推定プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、業務の進め方の改善にあたり、アプリケーションプログラムの実行履歴を元に業務分析を行うアプリケーションプログラムのオーダ推定方法、その装置及びプログラムに関するものである。
【背景技術】
【０００２】
顧客へのサービス提供や社内の決済、他企業への発注など、様々なオーダに対して効率的に業務を行うため、処理の進め方を定義し、それにあわせて多くの業務システムが開発、利用されている。業務の進め方を常に適切な状態に保ち、また業務システムの有効利用により業務効率を上げるため、業務の進め方の改善（ＢＰＲ）の重要性が認識されている。ＢＰＲでは、現状の業務の状況を把握し、問題点を分析し、その解決策を複数考えた上で、効果的な解決策を選択して実際の業務や業務システムに反映する。業務は外部要因により頻繁に変化するので、特にこれらの現状の業務の把握から業務システムへの反映という一連のステップを短期間で継続的に繰り返し実施することがＢＰＲでは必要となる。しかし、現状では、これらのステップを実施するのに多くの稼働がかかり、継続的に行われない場合が多い。
【０００３】
一方、業務システムには処理を行うときにその実行履歴（システム実行履歴）が自動的に残される。これらの実行履歴は元々業務システムのトラブルシューティングやデバッグのために出力されている。しかし実行履歴は実際の業務の状況に即した情報であるため、ＢＰＲにおいて現状の業務プロセスを把握する、あるいは業務プロセスの問題点を分析する上で有効な情報である。
【０００４】
従来、実行履歴を基に業務プロセスを推定する仕組みとして、実行履歴中の処理時刻と、処理種別と、どのオーダに対する処理かが特定されている実行履歴を基に、業務の流れを推定する仕組みが提案されている（例えば非特許文献１参照。）。
【非特許文献１】Shiro Ogasawara, Kenichi Tayama, and Tetsuya Yamamura, "Estimating Structure of Business Process Models from Execution Logs", Proc. of the 10th IEEE intl. Conf. on Enterprise Computing Conference, pp.106-115, 2006.
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、既存技術では、各処理がどのオーダに対する処理なのかが明確に特定されている必要があるが、実際には、システムが出力する実行履歴の形式はその目的に応じて様々で、オーダを識別する情報が一部の実行履歴にしか記述されていない場合もある。そのような場合、実行履歴をオーダにより分類する必要があるが、その仕組みについては言及されていなかった。
【０００６】
本発明は前記問題点に鑑みてなされたものであり、その目的とするところは、アプリケーションプログラムにおける処理の実行履歴の内容をオーダごとに分類することができるアプリケーションプログラムのオーダ推定方法、その装置及びプログラムを提供することにある。
【課題を解決するための手段】
【０００７】
本発明は前記目的を達成するため、オーダごとに複数の処理を実行するアプリケーションプログラムによって、処理内容を表すコマンドと処理が実行された時刻を表す処理時刻とオーダ内の処理過程を表すプロセスとを有する処理レコードが処理ごとに実行履歴に記録され、コマンドに含まれるオーダ識別情報に基づいて、実行履歴に記録された処理レコードに対するオーダを推定するアプリケーションプログラムのオーダ推定方法であって、実行履歴に記録された全ての処理レコードにおいて、コマンドからオーダ識別情報を抽出し、オーダ識別情報ごとにオーダを識別するオーダＩＤを割り当て、該オーダＩＤと該オーダ識別情報とを記録してオーダ識別情報リストを作成し、実行履歴に記録された処理レコードの処理時刻順に選択した各処理レコードにおいて、選択した処理レコードのコマンドがオーダ識別情報リストに記録されたオーダ識別情報を含む場合に、該オーダ識別情報に割り当てられたオーダＩＤと選択した処理レコードのプロセス及び処理時刻とを有する処理記録レコードを処理記録リストに記録し、選択した処理レコードのコマンドがオーダ識別情報リストに記録されたオーダ識別情報を含まない場合に、選択した処理レコードのプロセスと同一のプロセスを有する処理記録レコードが処理記録リストに記録されていて、該処理記録レコードのうち選択した処理レコードの処理時刻と最も近い処理時刻を有する処理記録レコードの処理時刻と選択した処理レコードの処理時刻とが所定の時間差で、かつ該処理記録レコードがオーダＩＤを有するとき、該処理記録レコードのオーダＩＤと選択した処理レコードのプロセス及び処理時刻とを有する処理記録レコードを処理記録リストに記録するアプリケーションプログラムのオーダ推定方法を提案する。
【０００８】
また、本発明は前記目的を達成するために、オーダごとに複数の処理を実行するアプリケーションプログラムによって、処理内容を表すコマンドと処理が実行された時刻を表す処理時刻とオーダ内の処理過程を表すプロセスとを有する処理レコードが処理ごとに実行履歴に記録され、コマンドに含まれるオーダ識別情報に基づいて、実行履歴に記録された処理レコードに対するオーダを推定するアプリケーションプログラムのオーダ推定装置であって、実行履歴に記録された全ての処理レコードにおいて、コマンドからオーダ識別情報を抽出し、オーダ識別情報ごとにオーダを識別するオーダＩＤを割り当て、該オーダＩＤと該オーダ識別情報とを記録してオーダ識別情報リストを作成するオーダ識別情報リスト作成手段と、実行履歴に記録された処理レコードの処理時刻順に選択した各処理レコードにおいて、選択した処理レコードのコマンドがオーダ識別情報リストに記録されたオーダ識別情報を含む場合に、該オーダ識別情報に割り当てられたオーダＩＤと選択した処理レコードのプロセス及び処理時刻とを有する処理記録レコードを処理記録リストに記録し、選択した処理レコードのコマンドがオーダ識別情報リストに記録されたオーダ識別情報を含まない場合に、選択した処理レコードのプロセスと同一のプロセスを有する処理記録レコードが処理記録リストに記録されていて、該処理記録レコードのうち選択した処理レコードの処理時刻と最も近い処理時刻を有する処理記録レコードの処理時刻と選択した処理レコードの処理時刻とが所定の時間差で、かつ該処理記録レコードがオーダＩＤを有するとき、該処理記録レコードのオーダＩＤと選択した処理レコードのプロセス及び処理時刻とを有する処理記録レコードを処理記録リストに記録するオーダ推定手段とを備えたアプリケーションプログラムのオーダ推定装置を提案する。
【０００９】
さらに、本発明は前記目的を達成するために、上記アプリケーションプログラムのオーダ推定装置において実行されるアプリケーションプログラムのオーダ推定プログラムを提案する。
【００１０】
本発明によれば、選択した処理レコードのコマンドがオーダ識別情報リストに記録されたオーダ識別情報を含む場合に、該オーダ識別情報に割り当てられたオーダＩＤと選択した処理レコードのプロセス及び処理時刻とを有する処理記録レコードが処理記録リストに記録され、選択した処理レコードのコマンドがオーダ識別情報リストに記録されたオーダ識別情報を含まない場合に、選択した処理レコードのプロセスと同一のプロセスを有する処理記録レコードが処理記録リストに記録されていて、該処理記録レコードのうち選択した処理レコードの処理時刻と最も近い処理時刻を有する処理記録レコードの処理時刻と選択した処理レコードの処理時刻とが所定の時間差で、かつ該処理記録レコードがオーダＩＤを有するとき、該処理記録レコードのオーダＩＤと選択した処理レコードのプロセス及び処理時刻とを有する処理記録レコードが処理記録リストに記録される。これにより、オーダ識別情報が一部のコマンドにしか含まれない場合でも、処理レコードに対するオーダが推定される。
【００１１】
なお、上記以外のアプリケーションプログラムのオーダ推定方法、その装置及びプログラムの詳細については発明の実施の形態において説明する。
【発明の効果】
【００１２】
本発明によれば、オーダ識別情報が一部のコマンドにしか含まれない場合でも、処理レコードに対するオーダが推定されることから、アプリケーションプログラムにおける処理の実行履歴の内容をオーダごとに分類することができる。
【発明を実施するための最良の形態】
【００１３】
［アプリケーションプログラムのオーダ推定装置に係る実施形態］
図１乃至図１４は本発明の一実施形態を示すもので、図１はオーダ推定装置の概略機能構成図、図２は図１に示したオーダ識別情報リスト作成手段の機能構成図、図３は図１に示したオーダ推定手段の機能構成図、図４は図１に示したオーダ識別情報リスト作成手段におけるフローチャート、図５は図１に示したオーダ識別情報リスト作成手段におけるフローチャート、図６は第１の実施例における実行履歴を示す図、図７は第１の実施例におけるオーダ識別情報リストを示す図、図８は第１の実施例における処理記録リストを示す図、図９は第２の実施例における実行履歴を示す図、図１０は第２の実施例におけるオーダ識別情報リストを示す図、図１１は第２の実施例における処理記録リストを示す図、図１２は第３の実施例における実行履歴を示す図、図１３は第３の実施例における他の実行履歴を示す図、図１４は第３の実施例における他の実行履歴を示す図である。
【００１４】
図１に示すように、オーダ推定装置１は実行履歴Ａに記録された処理レコードのオーダを推定するためのものであり、オーダ識別情報リスト作成手段１０と、オーダ推定手段２０とを備えている。
【００１５】
実行履歴Ａは、オーダごとに複数の処理を実行するアプリケーションプログラムによって作成されたものであり、各オーダの処理ごとに、処理内容を表すコマンドａ１と、オーダ内の処理過程を表すプロセスａ２と、処理が実行された時刻を表す処理時刻ａ３とを有する処理レコードａが記録されている。一部のコマンドａ１はオーダ識別情報を含んでいる場合があり、オーダ識別識別情報としてはオーダごとに割り当てられるオーダの識別情報や、注文ごとに割り当てられる何らかのリソースの固有ＩＤ等が挙げられる。後者の例としては、通信サービスを提供する業務の場合におけるユーザごとに割り当てられる通信回線番号が相当する。また、コマンドａ１は複数種類のオーダ識別情報を含んでいる場合もある。
【００１６】
図２に示すように、オーダ識別情報リスト作成手段１０は、実行履歴選択部１１、オーダ識別情報判定文字列判定部１２、オーダ識別情報抽出部１３、及びオーダ識別情報記録部１４から構成されている。
【００１７】
実行履歴選択部１１は、実行履歴Ａから１レコードずつ処理レコードａを選択し、選択した処理レコードａが有するコマンドａ１をオーダ識別情報判定文字列判定部１２へ出力する。
【００１８】
オーダ識別情報判定文字列判定部１２は、コマンドａ１の中にオーダ識別情報行抽出条件を満たすか否かを判定し、コマンドａ１がオーダ識別情報行抽出条件を満たす場合にコマンドａ１をオーダ識別情報抽出部１３へ出力する。
【００１９】
オーダ識別情報抽出部１３は、業務知識から導出されたオーダ識別情報抽出方法によりコマンドａ１からオーダ識別情報を抽出し、抽出したオーダ識別情報をオーダ識別情報記録部１４へ出力する。オーダ識別情報抽出方法により抽出されるオーダ識別情報が複数種類存在する場合に、抽出された全てのオーダ識別情報の組をオーダ識別情報記録部１４へ出力する。
【００２０】
オーダ識別情報記録部１４は、オーダ識別情報がオーダ識別情報リストＢに存在するか否かを判定し、抽出されたオーダ識別情報がオーダ識別情報リストＢに存在しない場合に、このオーダ識別情報にオーダを識別するオーダＩＤを割り当て、オーダＩＤｂ１とオーダ識別情報ｂ２とをオーダ識別情報リストＢに記録する。オーダ識別情報の組が入力される場合も同様に、オーダ識別情報の組における各オーダ識別情報がオーダ識別情報リストＢに存在するか否かを判定し、オーダ識別情報の組における各オーダ識別情報がオーダ識別情報リストＢに存在しない場合に、このオーダ識別情報の組にオーダを識別するオーダＩＤを割り当て、オーダＩＤｂ１とオーダ識別情報ｂ２の組とをオーダ識別情報リストＢに記録する。これにより、オーダＩＤｂ１がオーダ識別情報ｂ２又はオーダ識別情報ｂ２の組に対して一意に割り当てられる。
【００２１】
図３に示すように、オーダ推定手段２０は、実行履歴時刻順選択部２１、オーダ識別情報判定部２２、処理記録リスト判定部２３、処理時刻等判定部２４、オーダＩＤ推定部２５、及び処理記録リスト記録部２６から構成されている。
【００２２】
実行履歴時刻順選択部２１は、実行履歴Ａから処理時刻ａ３順に１レコードずつ処理レコードａを選択し、処理レコードａが有するコマンドａ１、プロセスａ２、及び処理時刻ａ３をオーダ識別情報判定部２２へ出力する。
【００２３】
オーダ識別情報判定部２２は、コマンドａ１の中にオーダ識別情報リストＢに記録されたオーダ識別情報ｂ２と同じ文字列が含まれるか否かを判定し、コマンドａ１がオーダ識別情報ｂ２と同じ文字列を含む場合に、コマンドａ１中に含まれるオーダ識別情報に割り当てられたオーダＩＤｂ１をオーダ識別情報リストＢから取得し、プロセスａ２及び処理時刻ａ３と取得したオーダＩＤｂ１とをオーダＩＤ推定部２５へ出力する。コマンドａ１がオーダ識別情報ｂ２と同じ文字列を含まない場合、プロセスａ２及び処理時刻ａ３を処理記録リスト判定部２３へ出力する。
【００２４】
処理記録リスト判定部２３は、後述する処理記録リスト記録部２６により作成される処理記録リストＣに、プロセスａ２と同じプロセスが存在するか否かを判定し、存在する場合にはプロセスａ２及び処理時刻ａ３を処理時刻等判定部２４へ出力し、存在しない場合にはプロセスａ２及び処理時刻ａ３をオーダＩＤ推定部２５へ出力する。
【００２５】
処理時刻等判定部２４は、処理記録リストＣからプロセスａ２と同じプロセスで処理時刻ａ３と最も近い処理時刻を有する処理記録レコードにおいて、その処理記録レコードの処理時刻と処理時刻ａ３とが所定の時間差で、かつ処理記録レコードのオーダＩＤにスペース以外の値が記録されている場合に、その処理記録レコードのオーダＩＤを処理記録リストＣから取得し、プロセスａ２及び処理時刻ａ３と取得したオーダＩＤｂ１とをオーダＩＤ推定部２５へ出力する。その他の場合には、プロセスａ２及び処理時刻ａ３をオーダＩＤ推定部２５へ出力する。ここで、所定の時間差はアプリケーションプログラムや業務の特性を考慮して適切に設定される。具体的には、あるオーダに対する処理の過程で何も処理を行わない時間がどれくらいの長さであるか、プロセスａ２の切り替えはどの単位で行われ、どれくらいの時間的頻度で発生するか等に留意する。
【００２６】
オーダＩＤ推定部２５は、プロセスａ２、処理時刻ａ３、及びオーダＩＤが入力された場合に、オーダＩＤにより識別されるオーダが選択された処理レコードａに対するオーダであると推定し、プロセスａ２、処理時刻ａ３、及びオーダＩＤを処理記録リスト記録部２６に送出する。プロセスａ２及び処理時刻ａ３が入力された場合に、選択された処理レコードａに対するオーダは特定せず、プロセスａ２及び処理時刻ａ３を処理記録リスト記録部２６に送出する。
【００２７】
処理記録リスト記録部２６は、入力されたプロセスａ２、処理時刻ａ３、及びオーダＩＤ、あるいはプロセスａ２及び処理時刻ａ３を有する処理記録レコードｃを処理記録リストＣに記録する。これにより、選択された処理レコードａに対するオーダを特定しない場合に、処理記録レコードｃのオーダＩＤにスペースが記録される。
【００２８】
次に、オーダ推定装置１の動作について説明する。
【００２９】
最初に、オーダ識別情報リスト作成手段１０が図４に示す処理を実行する。
【００３０】
すなわち、実行履歴選択部１１は実行履歴Ａから一レコードずつ処理レコードａを選択し（Ｓ１１）、オーダ識別情報判定文字列判定部１２は選択した処理レコードａのコマンドａ１の中にオーダ識別情報行抽出条件を満たすか否かを判定する（Ｓ１２）。
【００３１】
コマンドａ１がオーダ識別情報行抽出条件を満たす場合に、オーダ識別情報抽出部１３は業務知識から導出されたオーダ識別情報抽出方法によりコマンドａ１からオーダ識別情報を抽出する（Ｓ１３）。オーダ識別情報抽出方法により抽出されるオーダ識別情報が複数種類存在する場合には、オーダ識別情報抽出部１３はコマンドａ１からオーダ識別情報抽出方法により全てのオーダ識別情報の組を抽出する。
【００３２】
オーダ識別情報記録部１４は、抽出されたオーダ識別情報がオーダ識別情報リストＢに存在するか否かを判定し（Ｓ１４）、抽出されたオーダ識別情報がオーダ識別情報リストＢに存在しない場合に、このオーダ識別情報にオーダＩＤを割り当てるとともに（Ｓ１５）、オーダＩＤｂ１とオーダ識別情報ｂ２とをオーダ識別情報リストＢに記録する（Ｓ１６）。オーダ識別情報の組が抽出される場合も同様に、オーダ識別情報記録部１４は、オーダ識別情報の組における各オーダ識別情報がオーダ識別情報リストＢに存在するか否かを判定し、オーダ識別情報の組における各オーダ識別情報がオーダ識別情報リストＢに存在しない場合に、このオーダ識別情報の組にオーダＩＤを割り当てるとともに、オーダＩＤｂ１とオーダ識別情報ｂ２の組とをオーダ識別情報リストＢに記録する。これにより、オーダＩＤｂ１がオーダ識別情報ｂ２又はオーダ識別情報ｂ２の組に対して一意に割り当てられる。
【００３３】
Ｓ１２の処理の結果、コマンドａ１の中にオーダ識別情報行抽出条件を満たさない場合、Ｓ１４の処理の結果、抽出されたオーダ識別情報がオーダ識別情報リストＢに存在する場合、又はＳ１６の処理終了後、オーダ識別情報リスト作成部１０は実行履歴Ａに未選択の処理レコードａが残っているか否かを判定し（Ｓ１７）、未選択の処理レコードａが残っていれば実行履歴Ａに未選択の処理レコードａがなくなるまでＳ１１〜Ｓ１７の処理を繰り返し、未選択の処理レコードａがなくなれば処理を終了する。これにより、オーダ識別情報リストＢが作成される。
【００３４】
オーダ識別情報リスト作成手段１０の処理終了後、オーダ推定手段２０が図５に示す処理を実行する。
【００３５】
すなわち、実行履歴時刻順選択部２１は実行履歴Ａから処理時刻ａ２順に１レコードずつ処理レコードａを選択し（Ｓ２１）、オーダ識別情報判定部２２は選択した処理レコードａのコマンドａ１の中にオーダ識別情報リストＢに記録されたオーダ識別情報ｂ２と同じ文字列が含まれるか否かを判定する（Ｓ２２）。
【００３６】
コマンドａ１がオーダ識別情報ｂ２と同じ文字列を含む場合に、オーダ識別情報判定部２２はコマンドａ１中に含まれるオーダ識別情報に割り当てられたオーダＩＤｂ１をオーダ識別情報リストＢから取得し（Ｓ２３）、オーダＩＤ推定部２５はオーダＩＤｂ１により識別されるオーダが選択された処理レコードａに対するオーダであると推定し（Ｓ２４）、処理記録リスト記録部２６はプロセスａ２、処理時刻ａ３、及びオーダＩＤｂ１を有する処理記録レコードｃを処理記録リストＣに記録する（Ｓ２５）。
【００３７】
Ｓ２２の処理の結果、コマンドａ１がオーダ識別情報ｂ２と同じ文字列を含まない場合に、処理記録リスト判定部２３は処理記録リストＣにプロセスａ２と同じプロセスが存在するか否かを判定する（Ｓ２６）。
【００３８】
処理記録リストＣにプロセスａ２と同じプロセスが存在する場合に、処理時刻等判定部２４はプロセスａ３と同じプロセスで処理時刻ａ２と最も近い処理時刻を有する処理記録レコードｃの処理時刻及びオーダＩＤを処理記録リストＣから取得し（Ｓ２７）、取得した処理時刻と処理時刻ａ２とが所定の時間差で、かつ取得したオーダＩＤにスペース以外の値が記録されているか否かを判定する（Ｓ２８）。
【００３９】
取得した処理記録レコードｃの処理時刻と処理時刻ａ２とが所定の時間差で、かつ処理記録レコードｃのオーダＩＤにスペース以外の値が記録されている場合に、オーダＩＤ推定部２５は取得した処理記録レコードｃのオーダＩＤにより識別されるオーダが選択された処理レコードａに対するオーダであると推定し（Ｓ２９）、処理記録リスト記録部２６はプロセスａ２及び処理時刻ａ３と取得した処理記録レコードｃのオーダＩＤとを有する処理記録レコードｃを処理記録リストＣに記録する（Ｓ３０）。
【００４０】
Ｓ２６の処理の結果、処理記録リストＣにプロセスａ３と同じプロセスが存在しない場合、又はＳ２８の処理の結果、取得した処理記録レコードｃの処理時刻と処理時刻ａ２とが所定の時間差ではない、もしくは取得した処理記録レコードのオーダＩＤにスペースが記録されている場合には、オーダＩＤ推定部２５は選択された処理レコードａに対するオーダを推定せず（Ｓ３１）、処理記録リスト記録部２６はプロセスａ２及び処理時刻ａ３とを有する処理記録レコードｃを処理記録リストＣに記録する（Ｓ３２）。これにより、選択された処理レコードａに対するオーダを推定しない場合は、処理記録レコードｃのオーダＩＤにスペースが記録される。
【００４１】
Ｓ２５の処理終了後、Ｓ３０の処理終了後、又はＳ３２の処理終了後、オーダ推定部２０は実行履歴Ａに未選択の処理レコードａが残っているか否かを判定し（Ｓ３３）、未選択の処理レコードａが残っていれば実行履歴Ａに未選択の処理レコードａがなくなるまでＳ２１〜Ｓ３３の処理を繰り返し、未選択の処理レコードａがなくなれば処理を終了する。これにより、オーダ識別情報が一部のコマンドａ１にしか含まれない場合でも、実行履歴Ａに記録された処理レコードａに対するオーダが推定される。
【００４２】
なお、本発明のオーダ推定装置１は、コンピュータとプログラムによっても実現することができ、プログラムを記録媒体に記録することも、ネットワークを通して提供することもできる。
【００４３】
次に、上記動作の詳細について具体例を挙げて説明する。
［第１の実施例］
本実施例において、アプリケーションプログラムが実行した処理について、処理を識別する「処理ＩＤ」と処理の内容を表す「コマンド」と処理が開始された時刻を表す「処理時刻」と処理のプロセスを識別する「プロセスＩＤ」とが、図６に示すように実行履歴として記録されている。
【００４４】
また、アプリケーションプログラムでは「注文番号」がオーダを識別する情報として使われていること、注文番号は８桁の数字列の書式であることが、事前に分かっているものとする。例えば、注文番号は「１０１００００１」のように表される。また、これは保存という処理において出現し、当該処理において、コマンドは、「保存  注文番号＝１０１００００１」のように記録されることも業務知識として把握しているとする。この業務知識を元に、オーダ識別情報行抽出条件は、文字列「保存」を含むこととし、オーダ識別情報抽出方法は、文字列「注文番号＝」のすぐ後ろに出現する、８桁の数字列を抽出することとする。
【００４５】
以上の前提を踏まえて実際の動作を説明する。
【００４６】
最初に、オーダ識別情報リストを作成する。そのために実行履歴から１レコードずつ抜き出し、オーダ識別情報行抽出条件を満たすレコードを抽出し、さらにオーダ識別情報抽出方法により、オーダ識別情報を抽出する。
【００４７】
抽出されたオーダ識別情報について、出現順にオーダＩＤを１から連続的に割り当て、これらをオーダ識別情報リストに記録し、これを全てのレコードについて行う。また、本実施例では同じオーダに対する処理とみなす時間間隔は「１時間」とする。
【００４８】
具体的は手順は、以下の通りである。
【００４９】
１．「保存」の文字列を含むことを抽出条件に図６に示した実行履歴のコマンドを検索する。
【００５０】
２．１〜２レコード目は、条件にマッチしないので何もしない。
【００５１】
３．３レコード目のコマンドを抽出する。
【００５２】
４．オーダ識別情報抽出方法を利用して、注文番号として「１０１００００１」を取得する。
【００５３】
５．オーダ識別情報リストに注文番号「１０１００００１」が存在しないことを確認する。
【００５４】
６．オーダＩＤとして「１」を割り当て、オーダ識別情報リストに「１」、「１０１００００１」を記録する。
【００５５】
以上の作業を各レコードについて実施することで、図７に示すようなオーダ識別情報リストを得る。
【００５６】
続いて、オーダ識別情報リストを用いて、各レコードのオーダを推定する。実行履歴から１レコードずつ処理時刻順に抜き出し、各レコードのコマンド、プロセスＩＤ、処理時刻を抽出する。各レコードにおける動作は以下の通りである。
【００５７】
１．１レコード目のコマンドを抽出し、文字列「１０１００００１」が図７に示したオーダ識別情報リストに記載されているオーダ識別情報と一致し、このオーダ識別情報にはオーダＩＤとして「１」が割り当てられているので、このレコードの処理はオーダＩＤが「１」で識別されるオーダに対する処理であると推定し、このレコードのプロセスＩＤと処理時刻とオーダＩＤとを図８に示す処理記録リストに記録する。
【００５８】
２．２レコード目のコマンドを抽出し、文字列「１０１００００１」が図７に示したオーダ識別情報リストに記載されているオーダ識別情報と一致し、このオーダ識別情報にはオーダＩＤとして「１」が割り当てられているので、このレコードの処理はオーダＩＤが「１」で識別されるオーダに対する処理であると推定し、このレコードのプロセスＩＤと処理時刻とオーダＩＤとを図８に示した処理記録リストに記録する。
【００５９】
３．３レコード目のコマンドを抽出し、コマンド中に図７に示したオーダ識別情報リストに該当する文字列が含まれず、図８に示した処理記録リストにプロセスＩＤが「４」の記録が存在しないので、このレコードの処理はどのオーダに対する処理かを推定しないで、このレコードのプロセスＩＤと処理時刻のみを図８に示した処理記録リストに記録する。
【００６０】
４．４レコード目のコマンドを抽出し、文字列「１０１００００４」が図７に示したオーダ識別情報リストに記載されているオーダ識別情報と一致し、このオーダ識別情報にはオーダＩＤとして「３」が割り当てられているので、このレコードの処理はオーダＩＤが「３」で識別されるオーダに対する処理であると推定し、このレコードのプロセスＩＤと処理時刻とオーダＩＤとを図８に示した処理記録リストに記録する。
【００６１】
５．５レコード目のコマンドを抽出し、コマンド中に図７に示したオーダ識別情報リストに該当する文字列が含まれず、図８に示した処理記録リストにプロセスＩＤが「４」の記録が存在し、プロセスＩＤが「４」の直前の処理の処理時刻とオーダＩＤを取得し、この処理と直前の処理の処理時刻の差が１時間以内であり、直前の処理のオーダＩＤが「３」と記録されているので、このレコードの処理はオーダＩＤが「３」で識別されるオーダに対する処理であると推定し、このレコードのプロセスＩＤと処理時刻とオーダＩＤとを図８に示した処理記録リストに記録する。
【００６２】
６．６レコード目のコマンドを抽出し、文字列「１０２００００６」が図７に示したオーダ識別情報リストに記載されているオーダ識別情報と一致し、このオーダ識別情報にはオーダＩＤとして「２」が割り当てられているので、このレコードの処理はオーダＩＤが「２」で識別されるオーダに対する処理であると推定し、このレコードのプロセスＩＤと処理時刻とオーダＩＤとを図８に示した処理記録リストに記録する。
【００６３】
７．７レコード目のコマンドを抽出し、コマンド中に図７に示したオーダ識別情報リストに該当する文字列が含まれず、図８に示した処理記録リストにプロセスＩＤが「５」の記録が存在し、プロセスＩＤが「５」の直前の処理の処理時刻とオーダＩＤを取得し、この処理と直前の処理の処理時刻の差が１時間以内であり、直前の処理のオーダＩＤが「２」と記録されているので、このレコードの処理はオーダＩＤが「２」で識別されるオーダに対する処理であると推定し、このレコードのプロセスＩＤと処理時刻とオーダＩＤとを図８に示した処理記録リストに記録する。
【００６４】
８．８レコード目のコマンドを抽出し、コマンド中に図７に示したオーダ識別情報リストに該当する文字列が含まれず、図８に示した処理記録リストにプロセスＩＤが「５」の記録が存在し、プロセスＩＤが「５」の直前の処理の処理時刻とオーダＩＤを取得し、この処理と直前の処理の処理時刻の差が１時間以内であり、直前の処理のオーダＩＤが「２」と記録されているので、このレコードの処理はオーダＩＤが「２」で識別されるオーダに対する処理であると推定し、このレコードのプロセスＩＤと処理時刻とオーダＩＤとを図８に示した処理記録リストに記録する。
【００６５】
９．９レコード目のコマンドを抽出し、コマンド中に図７に示したオーダ識別情報リストに該当する文字列が含まれず、図８に示した処理記録リストにプロセスＩＤが「４」の記録が存在し、プロセスＩＤが「４」の直前の処理の処理時刻とオーダＩＤを取得し、この処理と直前の処理の処理時刻の差が１時間以内であり、直前の処理のオーダＩＤが「３」と記録されているので、このレコードの処理はオーダＩＤが「３」で識別されるオーダに対する処理であると推定し、このレコードのプロセスＩＤと処理時刻とオーダＩＤとを図８に示した処理記録リストに記録する。
【００６６】
１０．１０レコード目のコマンドを抽出し、文字列「１０１００００４」が図７に示したオーダ識別情報リストに記載されているオーダ識別情報と一致し、このオーダ識別情報にはオーダＩＤとして「３」が割り当てられているので、このレコードの処理はオーダＩＤが「３」で識別されるオーダに対する処理であると推定し、このレコードのプロセスＩＤと処理時刻とオーダＩＤとを図８に示した処理記録リストに記録する。
【００６７】
１１．１１レコード目のコマンドを抽出し、コマンド中に図７に示したオーダ識別情報リストに該当する文字列が含まれず、図８に示した処理記録リストにプロセスＩＤが「４」の記録が存在し、プロセスＩＤが「４」の直前の処理の処理時刻とオーダＩＤを取得し、この処理と直前の処理の処理時刻の差が１時間以内であり、直前の処理のオーダＩＤが「３」と記録されているので、このレコードの処理はオーダＩＤが「３」で識別されるオーダに対する処理であると推定し、このレコードのプロセスＩＤと処理時刻とオーダＩＤとを図８に示した処理記録リストに記録する。
【００６８】
１２．１２レコード目のコマンドを抽出し、コマンド中に図７に示したオーダ識別情報リストに該当する文字列が含まれず、図８に示した処理記録リストにプロセスＩＤが「３」の記録が存在し、プロセスＩＤが「３」の直前の処理の処理時刻とオーダＩＤを取得し、この処理と直前の処理の処理時刻の差が１時間より大きいので、このレコードの処理はどのオーダに対する処理かを推定しないで、このレコードのプロセスＩＤと処理時刻のみを図８に示した処理記録リストに記録する。
【００６９】
１３．１３レコード目のコマンドを抽出し、コマンド中に図７に示したオーダ識別情報リストに該当する文字列が含まれず、図８に示した処理記録リストにプロセスＩＤが「３」の記録が存在し、プロセスＩＤが「３」の直前の処理の処理時刻とオーダＩＤを取得し、この処理と直前の処理の処理時刻の差が１時間以内であり、直前の処理のオーダＩＤが記録されていないので、このレコードの処理はどのオーダに対する処理かを推定しないで、このレコードのプロセスＩＤと処理時刻のみを図８に示した処理記録リストに記録する。
【００７０】
１４．１４レコード目のコマンドを抽出し、コマンド中に図７に示したオーダ識別情報リストに該当する文字列が含まれず、図８に示した処理記録リストにプロセスＩＤが「４」の記録が存在し、プロセスＩＤが「４」の直前の処理の処理時刻とオーダＩＤを取得し、この処理と直前の処理の処理時刻の差が１時間より大きいので、このレコードの処理はどのオーダに対する処理かを推定しないで、このレコードのプロセスＩＤと処理時刻のみを図８に示した処理記録リストに記録する。
【００７１】
１５．１５レコード目のコマンドを抽出し、文字列「１０４００００８」が図７に示したオーダ識別情報リストに記載されているオーダ識別情報と一致し、このオーダ識別情報にはオーダＩＤとして「４」が割り当てられているので、このレコードの処理はオーダＩＤが「４」で識別されるオーダに対する処理であると推定し、このレコードのプロセスＩＤと処理時刻とオーダＩＤとを図８に示した処理記録リストに記録する。
【００７２】
１６．１６レコード目のコマンドを抽出し、文字列「１０４００００８」が図７に示したオーダ識別情報リストに記載されているオーダ識別情報と一致し、このオーダ識別情報にはオーダＩＤとして「４」が割り当てられているので、このレコードの処理はオーダＩＤが「４」で識別されるオーダに対する処理であると推定し、このレコードのプロセスＩＤと処理時刻とオーダＩＤとを図８に示した処理記録リストに記録する。
【００７３】
以上の手順により、オーダ識別情報が一部のコマンドにしか含まれない場合でも、図６に示した実行履歴に記録されたレコードに対するオーダが推定される。
［第２の実施例］
本実施例において、アプリケーションプログラムが実行した処理について、処理を識別する「処理ＩＤ」と処理の内容を表す「コマンド」と処理が開始された時刻を表す「処理時刻」と処理のプロセスを識別する「プロセスＩＤ」とが、図９に示すように実行履歴として記録されている。
【００７４】
また、アプリケーションプログラムでは「注文番号」、「回線番号」がオーダを識別する情報として使われていること、注文番号は８桁の数字列、回線番号は３桁の数字列と５桁の数字列が「−」で接続された書式であることが、事前に分かっているものとする。例えば、注文番号は「１０１００００１」、回線番号は「３００−００００１」のように表される。また、これら２つは保存という処理において同時に出現し、当該処理において、コマンドは、「保存  注文番号＝１０１００００１  回線番号＝３００−００００１」のように記録されることも業務知識として把握しているとする。この業務知識を元に、オーダ識別情報行抽出条件は、文字列「保存」を含むこととし、オーダ識別情報抽出方法は、注文番号については、文字列「注文番号＝」のすぐ後ろに出現する、８桁の数字列を抽出することとし、回線番号については、「回線番号＝」のすぐ後ろに出現する３桁の数字列文字列「−」５桁の数字列という構造をとる文字列を抽出することとする。
【００７５】
以上の前提を踏まえて実際の動作を説明する。
【００７６】
最初に、オーダ識別情報リストを作成する。そのために実行履歴から１レコードずつ抜き出し、オーダ識別情報行抽出条件を満たすレコードを抽出し、さらにオーダ識別情報抽出方法により、オーダ識別情報を抽出する。
【００７７】
抽出されたオーダ識別情報について、出現順にオーダＩＤを１から連続的に割り当て、これらをオーダ識別情報リストに記録し、これを全てのレコードについて行う。また、本実施例では同じオーダに対する処理とみなす時間間隔は「１時間」とする。
【００７８】
具体的は手順は、以下の通りである。
【００７９】
１．「保存」の文字列を含むことを抽出条件に図９に示した実行履歴のコマンドを検索する。
【００８０】
２．１〜２レコード目は、条件にマッチしないので何もしない。
【００８１】
３．３レコード目のコマンドを抽出する。
【００８２】
４．オーダ識別情報抽出方法を利用して、注文番号として「１０１００００１」、回線番号として「３０１−０００１」を取得する。
【００８３】
５．オーダ識別情報リストに注文番号「１０１００００１」、回線番号「３０１−０００１」が存在しないことを確認する。
【００８４】
６．オーダＩＤとして「１」を割り当て、オーダ識別情報リストに「１」、「１０１００００１」、「３０１−０００１」を記録する。
【００８５】
以上の作業を各レコードについて実施することで、図１０に示すようなオーダ識別情報リストを得る。
【００８６】
続いて、オーダ識別情報リストを用いて、各レコードのオーダを推定する。実行履歴から１レコードずつ処理時刻順に抜き出し、各レコードのコマンド、プロセスＩＤ、処理時刻を抽出する。各レコードにおける動作は以下の通りである。
【００８７】
１．１レコード目のコマンドを抽出し、文字列「１０１００００１」が図１０に示したオーダ識別情報リストに記載されているオーダ識別情報と一致し、このオーダ識別情報にはオーダＩＤとして「１」が割り当てられているので、このレコードの処理はオーダＩＤが「１」で識別されるオーダに対する処理であると推定し、このレコードのプロセスＩＤと処理時刻とオーダＩＤとを図１１に示す処理記録リストに記録する。
【００８８】
２．２レコード目のコマンドを抽出し、文字列「３００−００００１」が図１０に示したオーダ識別情報リストに記載されているオーダ識別情報と一致し、このオーダ識別情報にはオーダＩＤとして「１」が割り当てられているので、このレコードの処理はオーダＩＤが「１」で識別されるオーダに対する処理であると推定し、このレコードのプロセスＩＤと処理時刻とオーダＩＤとを図１１に示した処理記録リストに記録する。
【００８９】
３．３レコード目のコマンドを抽出し、文字列「１０１００００１」が図１０に示したオーダ識別情報リストに記載されているオーダ識別情報と一致し、このオーダ識別情報にはオーダＩＤとして「１」が割り当てられているので、このレコードの処理はオーダＩＤが「１」で識別されるオーダに対する処理であると推定し、このレコードのプロセスＩＤと処理時刻とオーダＩＤとを図１１に示した処理記録リストに記録する。
【００９０】
４．４レコード目のコマンドを抽出し、コマンド中に図１０に示したオーダ識別情報リストに該当する文字列が含まれず、図１１に示した処理記録リストにプロセスＩＤが「４」の記録が存在しないので、このレコードの処理はどのオーダに対する処理かを推定しないで、このレコードのプロセスＩＤと処理時刻のみを図１０に示した処理記録リストに記録する。
【００９１】
５．５レコード目のコマンドを抽出し、文字列「１０１００００４」が図１０に示したオーダ識別情報リストに記載されているオーダ識別情報と一致し、このオーダ識別情報にはオーダＩＤとして「３」が割り当てられているので、このレコードの処理はオーダＩＤが「３」で識別されるオーダに対する処理であると推定し、このレコードのプロセスＩＤと処理時刻とオーダＩＤとを図１１に示した処理記録リストに記録する。
【００９２】
６．６レコード目のコマンドを抽出し、コマンド中に図１０に示したオーダ識別情報リストに該当する文字列が含まれず、図１１に示した処理記録リストにプロセスＩＤが「４」の記録が存在し、プロセスＩＤが「４」の直前の処理の処理時刻とオーダＩＤを取得し、この処理と直前の処理の処理時刻の差が１時間以内であり、直前の処理のオーダＩＤが「３」と記録されているので、このレコードの処理はオーダＩＤが「３」で識別されるオーダに対する処理であると推定し、このレコードのプロセスＩＤと処理時刻とオーダＩＤとを図１１に示した処理記録リストに記録する。
【００９３】
７．７レコード目のコマンドを抽出し、文字列「１０２００００６」が図１０に示したオーダ識別情報リストに記載されているオーダ識別情報と一致し、このオーダ識別情報にはオーダＩＤとして「２」が割り当てられているので、このレコードの処理はオーダＩＤが「２」で識別されるオーダに対する処理であると推定し、このレコードのプロセスＩＤと処理時刻とオーダＩＤとを図１１に示した処理記録リストに記録する。
【００９４】
８．８レコード目のコマンドを抽出し、コマンド中に図１０に示したオーダ識別情報リストに該当する文字列が含まれず、図１１に示した処理記録リストにプロセスＩＤが「５」の記録が存在し、プロセスＩＤが「５」の直前の処理の処理時刻とオーダＩＤを取得し、この処理と直前の処理の処理時刻の差が１時間以内であり、直前の処理のオーダＩＤが「２」と記録されているので、このレコードの処理はオーダＩＤが「２」で識別されるオーダに対する処理であると推定し、このレコードのプロセスＩＤと処理時刻とオーダＩＤとを図１１に示した処理記録リストに記録する。
【００９５】
８．８レコード目のコマンドを抽出し、コマンド中に図１０に示したオーダ識別情報リストに該当する文字列が含まれず、図１１に示した処理記録リストにプロセスＩＤが「５」の記録が存在し、プロセスＩＤが「５」の直前の処理の処理時刻とオーダＩＤを取得し、この処理と直前の処理の処理時刻の差が１時間以内であり、直前の処理のオーダＩＤが「２」と記録されているので、このレコードの処理はオーダＩＤが「２」で識別されるオーダに対する処理であると推定し、このレコードのプロセスＩＤと処理時刻とオーダＩＤとを図１１に示した処理記録リストに記録する。
【００９６】
１０．１０レコード目のコマンドを抽出し、コマンド中に図１０に示したオーダ識別情報リストに該当する文字列が含まれず、図１１に示した処理記録リストにプロセスＩＤが「４」の記録が存在し、プロセスＩＤが「４」の直前の処理の処理時刻とオーダＩＤを取得し、この処理と直前の処理の処理時刻の差が１時間以内であり、直前の処理のオーダＩＤが「３」と記録されているので、このレコードの処理はオーダＩＤが「３」で識別されるオーダに対する処理であると推定し、このレコードのプロセスＩＤと処理時刻とオーダＩＤとを図１１に示した処理記録リストに記録する。
【００９７】
１１．１１レコード目のコマンドを抽出し、文字列「３０１−０００４」が図１０に示したオーダ識別情報リストに記載されているオーダ識別情報と一致し、このオーダ識別情報にはオーダＩＤとして「３」が割り当てられているので、このレコードの処理はオーダＩＤが「３」で識別されるオーダに対する処理であると推定し、このレコードのプロセスＩＤと処理時刻とオーダＩＤとを図１１に示した処理記録リストに記録する。
【００９８】
１２．１２レコード目のコマンドを抽出し、文字列「１０１００００４」が図１０に示したオーダ識別情報リストに記載されているオーダ識別情報と一致し、このオーダ識別情報にはオーダＩＤとして「３」が割り当てられているので、このレコードの処理はオーダＩＤが「３」で識別されるオーダに対する処理であると推定し、このレコードのプロセスＩＤと処理時刻とオーダＩＤとを図１１に示した処理記録リストに記録する。
【００９９】
１３．１３レコード目のコマンドを抽出し、コマンド中に図１０に示したオーダ識別情報リストに該当する文字列が含まれず、図１１に示した処理記録リストにプロセスＩＤが「４」の記録が存在し、プロセスＩＤが「４」の直前の処理の処理時刻とオーダＩＤを取得し、この処理と直前の処理の処理時刻の差が１時間以内であり、直前の処理のオーダＩＤが「３」と記録されているので、このレコードの処理はオーダＩＤが「３」で識別されるオーダに対する処理であると推定し、このレコードのプロセスＩＤと処理時刻とオーダＩＤとを図１１に示した処理記録リストに記録する。
【０１００】
１４．１４レコード目のコマンドを抽出し、コマンド中に図１０に示したオーダ識別情報リストに該当する文字列が含まれず、図１１に示した処理記録リストにプロセスＩＤが「３」の記録が存在し、プロセスＩＤが「３」の直前の処理の処理時刻とオーダＩＤを取得し、この処理と直前の処理の処理時刻の差が１時間より大きいので、このレコードの処理はどのオーダに対する処理かを推定しないで、このレコードのプロセスＩＤと処理時刻のみを図１１に示した処理記録リストに記録する。
【０１０１】
１５．１５レコード目のコマンドを抽出し、コマンド中に図１０に示したオーダ識別情報リストに該当する文字列が含まれず、図１１に示した処理記録リストにプロセスＩＤが「３」の記録が存在し、プロセスＩＤが「３」の直前の処理の処理時刻とオーダＩＤを取得し、この処理と直前の処理の処理時刻の差が１時間以内であり、直前の処理のオーダＩＤが記録されていないので、このレコードの処理はどのオーダに対する処理かを推定しないで、このレコードのプロセスＩＤと処理時刻のみを図１１に示した処理記録リストに記録する。
【０１０２】
１６．１６レコード目のコマンドを抽出し、コマンド中に図１０に示したオーダ識別情報リストに該当する文字列が含まれず、図１１に示した処理記録リストにプロセスＩＤが「４」の記録が存在し、プロセスＩＤが「４」の直前の処理の処理時刻とオーダＩＤを取得し、この処理と直前の処理の処理時刻の差が１時間より大きいので、このレコードの処理はどのオーダに対する処理かを推定しないで、このレコードのプロセスＩＤと処理時刻のみを図１１に示した処理記録リストに記録する。
【０１０３】
１７．１７レコード目のコマンドを抽出し、文字列「１０４００００８」が図１０に示したオーダ識別情報リストに記載されているオーダ識別情報と一致し、このオーダ識別情報にはオーダＩＤとして「４」が割り当てられているので、このレコードの処理はオーダＩＤが「４」で識別されるオーダに対する処理であると推定し、このレコードのプロセスＩＤと処理時刻とオーダＩＤとを図１１に示した処理記録リストに記録する。
【０１０４】
１８．１８レコード目のコマンドを抽出し、文字列「３１０−０００２１」が図１０に示したオーダ識別情報リストに記載されているオーダ識別情報と一致し、このオーダ識別情報にはオーダＩＤとして「４」が割り当てられているので、このレコードの処理はオーダＩＤが「４」で識別されるオーダに対する処理であると推定し、このレコードのプロセスＩＤと処理時刻とオーダＩＤとを図１１に示した処理記録リストに記録する。
【０１０５】
１９．１９レコード目のコマンドを抽出し、文字列「１０４００００８」が図１０に示したオーダ識別情報リストに記載されているオーダ識別情報と一致し、このオーダ識別情報にはオーダＩＤとして「４」が割り当てられているので、このレコードの処理はオーダＩＤが「４」で識別されるオーダに対する処理であると推定し、このレコードのプロセスＩＤと処理時刻とオーダＩＤとを図１１に示した処理記録リストに記録する。
【０１０６】
以上の手順により、オーダ識別情報が一部のコマンドにしか含まれない場合でも、図９に示した実行履歴に記録されたレコードに対するオーダが推定される。
［第３の実施例］
第１、２の実施例においては、各処理の記録に関して、１つの処理が１レコード（１単位）として保存されている例について説明したが、本発明においては保存形式は発明の本質ではなく、必要な項目が含まれており、それらがどこに保存されているかが分かっていれば、どのような保存形式でもよい。他の保存形式としては、例えば、図１２のように１レコードの中に複数の処理の記録が横並びで保存されている場合や、図１３のように１つの処理の記録の一部が横並びで保存されている場合や、図１４のように横並びと縦並びが複合するパターンが考えられる。
【０１０７】
これらの場合でもあらかじめ保存形式が分かっていれば、容易に第１の実施例の保存形式に変換することができ、図１２乃至図１４に示した実行履歴に記録された処理に対するオーダを推定することが可能となる。
【０１０８】
なお、上記実施形態は本発明の一具体例であり上記実施形態に限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々変更を加えてもよい。
【図面の簡単な説明】
【０１０９】
【図１】オーダ推定装置の概略機能構成図
【図２】図１に示したオーダ識別情報リスト作成手段の機能構成図
【図３】図１に示したオーダ推定手段の機能構成図
【図４】図１に示したオーダ識別情報リスト作成手段におけるフローチャート
【図５】図１に示したオーダ識別情報リスト作成手段におけるフローチャート
【図６】第１の実施例における実行履歴を示す図
【図７】第１の実施例におけるオーダ識別情報リストを示す図
【図８】第１の実施例における処理記録リストを示す図
【図９】第２の実施例における実行履歴を示す図
【図１０】第２の実施例におけるオーダ識別情報リストを示す図
【図１１】第２の実施例における処理記録リストを示す図
【図１２】第３の実施例における実行履歴を示す図
【図１３】第３の実施例における他の実行履歴を示す図
【図１４】第３の実施例における他の実行履歴を示す図
【符号の説明】
【０１１０】
１：オーダ推定装置、１０：オーダ識別情報リスト作成手段、２０：オーダ推定手段、Ａ：実行履歴、ａ：処理レコード、ａ１：コマンド、ａ２：プロセス、ａ３：処理時刻、Ｂ：オーダ識別情報リスト、ｂ１：オーダＩＤ、ｂ２：オーダ識別情報、Ｃ：処理記録リスト、ｃ：処理記録レコード。
【図１】
2008197891.tif 000003
【図２】
2008197891.tif 000004
【図３】
2008197891.tif 000005
【図４】
2008197891.tif 000006
【図５】
2008197891.tif 000007
【図６】
2008197891.tif 000008
【図７】
2008197891.tif 000009
【図８】
2008197891.tif 000010
【図９】
2008197891.tif 000011
【図１０】
2008197891.tif 000012
【図１１】
2008197891.tif 000013
【図１２】
2008197891.tif 000014
【図１３】
2008197891.tif 000015
【図１４】
2008197891.tif 000016