(57)【要約】【課題】ユーザ操作時間を含んだより実際の稼動時間に近いデバイスの稼働時間を算出すること。【解決手段】分析サーバ１０４の認証ログ収集部５０４が複合機から認証ログ情報を収集する。また、分析サーバ１０４のジョブログ収集部５０３が複合機からジョブログ情報を収集する。そして、分析サーバ１０４の分析処理部５０２が、ジョブログ情報で特定されるジョブ処理期間に対応する第１の稼働期間、及び、認証ログ情報から特定されるログイン期間のうち前記認証ログ情報に関連するジョブログ情報から特定されるジョブ処理期間と重複しない期間に対応する第２の稼働期間から、デバイスの稼働時間を計算する構成を特徴とする。【選択図】図５
2010217957.tif 000002
【特許請求の範囲】
【請求項１】
画像処理装置の稼働時間を計算する情報処理装置であって、
前記画像処理装置におけるログイン処理のログイン時点及びログアウト時点を特定可能な情報を含む認証ログを取得する認証ログ取得手段と、
前記画像処理装置で処理されたジョブのジョブ開始時点及びジョブ終了時点を特定可能な情報を含むジョブログを取得するジョブログ取得手段と、
前記ジョブログで特定されるジョブ処理期間に対応する第１の稼働期間、及び、前記認証ログから特定されるログイン期間のうち前記認証ログに関連するジョブログから特定されるジョブ処理期間と重複しない期間に対応する第２の稼働期間から、前記画像処理装置の稼働時間を計算する計算手段と、
を有することを特徴とする情報処理装置。
【請求項２】
前記認証ログは、対応するログイン処理のログアウト要因がタイムアウトによるものか否かを特定する情報を含み、
前記計算手段は、ログアウト要因がタイムアウトであることが特定された認証ログで特定されるログイン期間については、前記タイムアウトに要する期間を前記第２の稼働期間に含めないことを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記認証ログは、対応するログイン処理がネットワークを介したユーザ操作によりなされたか否かを特定する情報を含み、
前記計算手段は、ログイン処理がネットワークを介したユーザ操作によりなされたことが特定された認証ログから特定されるログイン期間については、該認証ログに関連するジョブログのジョブ処理期間のうち最も遅いジョブ処理期間の終了時点からログアウト時点までの期間を前記第２の稼働期間に含めないことを特徴とする請求項１または２に記載の情報処理装置。
【請求項４】
前記認証ログは、対応するログイン処理がプリンタドライバによりなされたか否かを特定する情報を含み、
前記計算手段は、ログイン処理がプリンタドライバによりなされたことが特定された認証ログから特定されるログイン期間を前記第２の稼働期間に含めないことを特徴とする請求項１乃至３の何れか１項に記載の情報処理装置。
【請求項５】
前記認証ログは、対応するログイン処理がなされた際のユーザ名を含み、
前記ジョブログは、対応するジョブを発行したユーザ名を含み、
前記計算手段は、前記ユーザ名により前記認証ログに関連するジョブログを特定することを特徴とする請求項１乃至４のいずれか１項に記載の情報処理装置。
【請求項６】
前記計算手段は、ジョブ開始時点が、前記認証ログのログイン時点より遅く、且つ、前記ログイン時点に最も近いジョブログを、前記認証ログに関連するジョブログ情報として特定することを特徴とする請求項５に記載の情報処理装置。
【請求項７】
前記認証ログは、対応するログイン処理の認証経路を特定する情報を含み、
前記ジョブログは、対応するジョブのジョブ種別を特定する情報を含み、
前記計算手段は、ジョブログに含まれるジョブ種別と前記認証ログに含まれる認証経路との組合せが予め設定されたジョブ種別と認証経路の組合せに一致する際に、前記認証ログ及び前記ジョブログが関連することを特定することを特徴とする請求項１乃至６の何れか１項に記載の情報処理装置。
【請求項８】
前記認証ログは、対応するログイン処理がなされた際に発行された認証ＩＤを含み、
前記ジョブログは、対応するジョブを処理した際のログイン処理に対応する認証ＩＤを含み、
前記計算手段は、前記認証ＩＤにより前記認証ログに関連するジョブログを特定することを特徴とする請求項１乃至４のいずれか１項に記載の情報処理装置。
【請求項９】
画像処理装置の稼働時間を計算する情報処理装置における稼働時間計算方法であって、
認証ログ取得手段が、前記画像処理装置におけるログイン処理のログイン時点及びログアウト時点を特定可能な情報を含む認証ログを取得する認証ログ取得ステップと、
ジョブログ取得手段が、前記画像処理装置で処理されたジョブのジョブ開始時点及びジョブ終了時点を特定可能な情報を含むジョブログを取得するジョブログ取得ステップと、
計算手段が、前記ジョブログで特定されるジョブ処理期間に対応する第１の稼働期間、及び、前記認証ログから特定されるログイン期間のうち前記認証ログに関連するジョブログから特定されるジョブ処理期間と重複しない期間に対応する第２の稼働期間から、前記画像処理装置の稼働時間を計算する計算ステップと、
を有することを特徴とする稼働時間計算方法。
【請求項１０】
請求項１乃至８のいずれか１項に記載された情報処理装置の手段としてコンピュータを機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プリンタや複合機等の画像処理装置（以下、デバイスと呼ぶ）の稼働時間を導出するための技術に関するものである。
【背景技術】
【０００２】
近年、デバイスの最適配置、最適機種選定といった分析のために、デバイス稼働率が使用されている。
デバイスなどの稼働率とは、デバイスが運用されている時間（例えば勤務時間）のうち、デバイスが使用されていた時間（稼働時間）の割合を指す。この稼働率より、デバイスの負荷状況を分析し、その結果を元に、顧客に最適な機種の選定、提案などが行われている。
【０００３】
従来、デバイスの稼動率の算出機能では、デバイスが使用されていた時間として、ジョブ処理を行っている時間（ジョブ処理時間）を使用して計算を行っていた。
ジョブ処理時間は、デバイスから収集されるログ情報に含まれるジョブの開始時刻と終了時刻の情報をもとに、ジョブの終了時間からジョブの開始時間を減算して算出される。ジョブ処理時間は、例えばある期間に処理されたジョブの合計処理時間を算出して、デバイス稼働状態の分析などに利用していた。
【０００４】
また、Ｗｅｂアプリケーションなどのサーバシステムの稼働率の分析においては、サーバの稼働率の算出方法として、サーバの使用されていた時間として、ユーザがログインしていた時間（ログイン時間）を使用して計算が行われていた。
ログイン時間は、サーバへのログイン履歴を保持し、ログアウト時刻からログイン時刻を減算して算出される。そして、ある期間にログインされていた時間の合計を算出してサーバの稼働状況の分析などに利用していた。
【０００５】
特許文献１のシステムでは、画像形成装置において、操作パネルのキーの操作や、原稿のフィーダーへのセットのようなコピー操作開始を検知し、その時刻から、コピー処理完了までの時間を計測し、ジョブ処理時間を計測している。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開平０６−２５１２１８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
上述したように、デバイスの稼働時間／稼働率の計算において、従来は、ジョブ処理時間を累積した時間をデバイスの稼働時間としていた。しかし、この方法では、ユーザがデバイスを操作しジョブを発行するまでの時間（操作時間）は、稼働時間に含まれない。
また、それら操作時間以外にも、例えば、デバイスのボックス機能に保存されている文書の操作（閲覧、編集）などのジョブとしてデバイスで処理されない操作に関する時間は計測されない。また、ジョブに関連する操作は行ったが、そのジョブの発行をキャンセルした場合などの時間も計測されない。
【０００８】
本来、デバイスの稼働時間の計算においては、デバイスが使用されている全ての時間を計測する必要がある。よって、従来のデバイスから収集したログ情報をもとにデバイスの稼働時間を計算する方法では、適切なデバイスの稼働時間の計算されているとはいえなかった。
【０００９】
本発明は、上記の問題点を解決するためになされたものである。
本発明の目的は、例えば適切な稼働率の分析などのために、画像処理装置より収集されるログ情報を用いて、より実際の運用に近い稼動時間を求めることができる仕組みを提供することである。
【課題を解決するための手段】
【００１０】
本発明は上記目的を達成するため、画像処理装置の稼働時間を計算する情報処理装置であって、前記画像処理装置におけるログイン処理のログイン時点及びログアウト時点を特定可能な情報を含む認証ログを取得する認証ログ取得手段と、前記画像処理装置で処理されたジョブのジョブ開始時点及びジョブ終了時点を特定可能な情報を含むジョブログを取得するジョブログ取得手段と、前記ジョブログで特定されるジョブ処理期間に対応する第１の稼働期間、及び、前記認証ログから特定されるログイン期間のうち前記認証ログに関連するジョブログから特定されるジョブ処理期間と重複しない期間に対応する第２の稼働期間から、前記画像処理装置の稼働時間を計算する計算手段とを有することを特徴とする。
【発明の効果】
【００１１】
本発明によれば、適切な稼働率の分析などのために、画像処理装置より収集されるログ情報を用いて、より実際の運用に近い稼動時間を求めることができる。
【図面の簡単な説明】
【００１２】
【図１】本発明におけるデバイス稼動状況分析システムの構成を示す模式図である。
【図２】分析サーバ等を構成するコンピュータの構成の例を示した図である。
【図３】複合機の内部構成の一例を示したブロック図である。
【図４】ホストコンピュータの詳細な機能構成を示すブロック図である。
【図５】分析サーバの詳細な機能構成を示すブロック図である。
【図６】複合機の詳細な機能構成を示すブロック図である。
【図７】ジョブログ情報テーブルを示す図である。
【図８】認証ログ情報テーブルを示す図である。
【図９】ユーザ別の認証情報を格納するテーブルを示す表である。
【図１０】実施例１における稼働時間の分析処理の流れを示したフローチャートである。
【図１１】ジョブ処理に関す稼動時間の算出処理の概念を示した図である。
【図１２】認証ログによる稼働時間の算出処理の概念を示した図である。
【図１３】Ｓ１５０５に示した稼働時間算出処理のを示すフローチャートである。
【図１４】分析結果テーブルの構成を示す図である。
【図１５】Ｓ１５０７に示した稼働時間加算処理を示すフローチャートである。
【図１６】実施例２における稼働時間の分析処理を示したフローチャートである。
【図１７】認証経路・ジョブタイプ関連テーブルを示す図である。
【図１８】Ｓ１５０９の認証ＩＤ設定処理を示すフローチャートである。
【発明を実施するための形態】
【００１３】
以下、図面などを用いて本発明の実施例について説明する。
【実施例１】
【００１４】
図１は、本発明におけるデバイス稼動状況を分析するシステムの構成を示す模式図である。
図１において、１０１はホストコンピュータであり、ユーザが使用して画像データを生成し、印刷指示を行うためのものである。
１０２，１０３は複合機であり、ホストコンピュータ１０１等からネットワークを介して印刷データを受信し、電子写真技術やインクジェット技術などの既知の印刷技術を利用して実際の用紙に印刷を行う。
【００１５】
複合機１０２、複合機１０３は、スキャナを介して紙原稿を読み取り、コピーを行ったり、画像データに変換してＥｍａｉｌやファクシミリなどで送信する機能も持つ。なお、ここでは、複合機を例に挙げるが、もちろん、コピー機能を持たない単機能のプリンタやスキャナ等を含む画像処理装置（デバイス）が稼動状況分析の対象デバイスとなってもよい。
１０４は分析サーバであり、複合機１０２，１０３の稼動状況分析を行う。ホストコンピュータ１０１、複合機１０２、複合機１０３、分析サーバ１０４は、イーサネット（登録商標）などの既知の技術によるネットワーク１０５により相互に通信可能に接続されている。
【００１６】
本実施例では、分析サーバ１０４を、複合機１０２、複合機１０３とは別構成として設けているが、同様の機能をもつモジュールを複合機１０２、複合機１０３の内部に設けるように構成しても構わない。この場合、分析サーバ１０４と複合機１０２、複合機１０３の間で行われるネットワーク通信は、システムバスなどを介したデータの受け渡しに置き換えて考えられる。
【００１７】
＜コンピュータの構成＞
図２は、ホストコンピュータ１０１、分析サーバ１０４を構成するコンピュータの内部構成の例を示した図である。
図２において、２００はコンピュータ（ＰＣ）全体である。ＰＣ２００は、ＲＯＭ２０２或いは例えばハードディスク（ＨＤ）などの大規模記憶装置２１１に記憶されたソフトウェアを実行するＣＰＵ２０１を備える。ＣＰＵ２０１は、システムバス２０４に接続される各デバイスを総括的に制御する。
【００１８】
２０３はＲＡＭで、ＣＰＵ２０１の主メモリ、ワークエリア等として機能する。２０５はキーボードコントローラ（ＫＢＤＣ）で、ＰＣ２００に備えられたキーボード（ＫＢＤ）２０９からの指示入力を制御する。
２０６はディスプレイコントローラ（ＤＩＳＰＣ）で、例えば液晶ディスプレイなどで構成される表示モジュール（ＤＩＳＰＬＡＹ）２１０の表示を制御する。
２０７はディスクコントローラ（ＤＫＣ）であり、大容量記憶デバイスであるハードディスク（ＨＤ）２１１などの大規模記憶装置を制御する。
２０８はネットワークインタフェースカード（ＮＩＣ）で、ネットワーク１０５を介して、他のノードと双方向にデータをやりとりする。２１２はタイマ（Ｔｉｍｅｒ）である。
【００１９】
＜複合機の構成＞
図３は、複合機１０２，１０３の内部構成の一例を示したブロック図である。
図３において、３００は複合機全体である。複合機３００は、ＲＯＭ３０２或いは例えばハードディスク（ＨＤ）などの大規模記憶装置３１１に記憶されたソフトウェアを実行するＣＰＵ３０１を備える。ＣＰＵ３０１は、システムバス３０４に接続される各デバイスを総括的に制御する。
３０３はＲＡＭで、ＣＰＵ３０１の主メモリ、ワークエリア等として機能する。３０５はパネルコントローラ（ＰａｎｅｌＣ）で、複合機に備えられたオペレーションパネル（Ｐａｎｅｌ）３０９からの指示入力を制御する。
【００２０】
３０６はディスプレイコントローラ（ＤＩＳＰＣ）で、例えば液晶ディスプレイなどで構成される表示モジュール（ＤＩＳＰＬＡＹ）３１０の表示を制御する。
３０７はディスクコントローラ（ＤＫＣ）であり、大容量記憶デバイスであるハードディスク（ＨＤ）３１１を制御する。
３０８はネットワークインタフェースカード（ＮＩＣ）で、ネットワーク１０５を介して、他のノードとデータをやりとりする。
３１２はスキャナコントローラ（ＳＣＡＮＣ）で、複合機に備えられた光学式スキャナ装置３１３を制御し、紙原稿の読み取りを行う。
３１４はプリンタコントローラ（ＰＲＮＣ）で、複合機に備えられたプリンタ装置３１５を制御し、電子写真技術やインクジェット技術などの既知の印刷技術を利用して実際の用紙に印刷を行う。
【００２１】
＜ホストコンピュータの詳細構成＞
図４は、ホストコンピュータ１０１の詳細な機能構成を示すブロック図である。
図４において、４０１は、印刷指示を行う印刷アプリケーションであり、プリンタドライバ４０２に対して描画命令などを送信することにより、印刷指示を行う。
プリンタドライバ４０２は、印刷アプリケーションから受けた描画命令などを複合機１０２，１０３が解釈可能な印刷データ、すなわちＰＤＬ（Ｐａｇｅ  Ｄｅｓｃｒｉｐｔｉｏｎ  Ｌａｎｇｕａｇｅ；ページ記述言語）に変換する。
【００２２】
さらに、プリンタドライバ４０２は、デバイス認証が設定されている場合、ユーザ認証ダイアログを表示し、ユーザに複合機を使用するためにユーザ名、パスワードの入力を要求する。そして、入力されたユーザ名、パスワードを、プリンタドライバ４０２が、ネットワーク１０５経由で印刷先の複合機に送信して認証要求を行う。複合機では、後述する認証処理部６１３（図６）でユーザ名、パスワードを照合し、認証の成否をプリンタドライバ４０２に返信する。
【００２３】
認証が失敗した場合、プリンタドライバ４０２は、印刷をキャンセルする。一方、認証が成功した場合、プリンタドライバ４０２は、入力されたユーザ名をジョブオーナー情報として印刷ジョブに付加し、印刷ジョブを作成する。
なお、プリンタドライバ４０２にデバイス認証が設定されていない場合には、プリンタドライバ４０２は、ホストコンピュータへログインしているユーザ名をジョブオーナー情報として印刷ジョブに付加し、印刷ジョブを作成する。
【００２４】
続いて、プリンタドライバ４０２は、作成した印刷ジョブデータを印刷ジョブ送信部４０３に送信する。
印刷ジョブ送信部４０３は、プリンタドライバ４０２より受け取った印刷ジョブを複合機に送信する。
４０４はＷｅｂブラウザであり、ＨＴＭＬデータを解釈し、ディスプレイ２１０へ画面描画を行い、キーボードなどからユーザ操作を受けて付け、ＨＴＴＰ通信部４０５へ要求を送信する。なお、Ｗｅｂは、Ｗｏｒｌｄ  Ｗｉｄｅ  Ｗｅｂを示し、ＨＴＭＬは、ＨｙｐｅｒＴｅｘｔ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅを示す。
【００２５】
４０５はＨＴＴＰ通信部であり、Ｗｅｂブラウザ４０４からの通信要求を受けて、ＮＩＣ２０８を経由してＨＴＴＰ又はＨＴＴＰＳプロトコルを用いて複合機等と通信を行い、Ｗｅｂページの要求、Ｗｅｂページデータの受信などを行う。なお、ＨＴＴＰは、ＨｙｐｅｒＴｅｘｔ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌを示し、ＨＴＴＰＳは、Ｈｙｐｅｒｔｅｘｔ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ  ｏｖｅｒ  Ｓｅｃｕｒｅ  Ｓｏｃｋｅｔ  Ｌａｙｅｒを示す。
なお、上述した４０１〜４０５は、ホストコンピュータ１０１のＣＰＵ２０１がホストコンピュータ１０１のＨＤ２１１等に格納されたプログラムを読み出して実行することにより実現されるものである。
【００２６】
＜分析サーバ：詳細構成＞
図５は、分析サーバ１０４の詳細な機能構成を示すブロック図である。
図５において、５００は分析サーバ１０４全体を示す。５０１はインタフェース部であり、ＮＩＣ２０８を通じてネットワーク１０５を経由して、複合機１０２，１０３との通信を行う。
５０２は分析処理部であり、ジョブログや認証ログを元にデバイスの稼動状況分析処理を行い、分析結果を記憶装置２１１に記録する。
【００２７】
５０３はジョブログ収集部であり、複合機１０２、複合機１０３よりジョブログ情報（後述する図７に示す）を収集し、分析サーバ１０４の記憶装置２１１に保管するジョブログ取得処理を実行する。５０４は認証ログ収集部であり、複合機１０２、複合機１０３より認証ログ情報（後述する図８に示す）を収集し、分析サーバ１０４の記憶装置２１１に保管する認証ログ取得処理を実行する。これらログ情報の収集は、デバイスから所定のタイミングで送る設定であっても、分析サーバ側から要求することで取得する設定であってもよい。
なお、上述した各機能部５０１〜５０４は、分析サーバ１０４のＣＰＵ２０１が分析サーバ１０４のＨＤ２１１等に格納されたプログラムを読み出して実行することにより実現されるものである。
【００２８】
＜複合機：詳細構成＞
図６は、複合機１０２、複合機１０３の詳細な機能構成を示すブロック図である。
図６において、６００は複合機全体を示す。６０１はインタフェース部であり、ネットワーク１０５と接続し、ホストコンピュータ１０１から印刷ジョブを受信する。
６０２は印刷データ格納部であり、ＲＡＭ３０３やハードディスク（ＨＤ）３１１に、印刷ジョブデータを一時的に格納する。
６１０はＵＩ制御部であり、パネルコントローラ（Ｐａｎｅｌ  Ｃ）３０５を経由してオペレーションパネル３０９を制御し、ユーザの複合機へのログイン要求や、コピー指示や、スキャン送信指示を受け付ける。
【００２９】
ＵＩ制御部６１０は、ユーザからのログイン要求を受けると、認証処理部６１３にユーザ名、パスワードなどの認証情報を送り認証要求を行う。認証処理部６１３において認証が成功すると、ＵＩ制御部６１０は、認証処理部６１３から認証ＩＤを受け取る。その後、ＵＩ制御部６１０は、ログアウト要求を受けるまでユーザ名、認証ＩＤを保持し、ユーザ操作によりコピーなどのジョブ発行が指示されると、ジョブ管理部６０３へジョブ発行要求と共にユーザ名、認証ＩＤを送る。また、ＵＩ制御部６１０は、オペレーションパネルからログアウト操作がなされるとログアウト処理を行う。
【００３０】
また、ＵＩ制御部６１０は、動作設定情報として、「タイムアウト時間」を持ち、オペレーションパネルから「タイムアウト時間」で設定された時間内に、操作が行われなかった場合には、ログアウト処理を行う。なお、「タイムアウト時間」の設定値は、外部モジュール、例えば分析サーバ１０４などからも参照可能とする。また、「タイムアウト時間」は、複合機のパネル３０９やホストコンピュータ１０１等から設定可能である。
さらに、ＵＩ制御部６１０は、ログアウト処理において、認証処理部６１３にユーザ名、認証ＩＤ、ログアウト要因情報と共にログアウト通知を行い、認証情報や認証ＩＤを破棄する。
【００３１】
ジョブ管理部６０３は、印刷ジョブを解析し、ユーザ名や、印刷部数やカラー印刷などの出力属性情報を取得し、ジョブの開始時刻と共にジョブ情報として管理する。ジョブ管理部６０３は、コピーなどオペレーションパネルからのジョブが発行された場合にはＵＩ制御部６１０から、Ｗｅｂブラウザからのジョブ発行の場合にはリモートＵＩ制御部６１２から、出力属性情報やユーザ名などを受信する。
６０４は印刷データ展開部であり、ジョブ管理部に格納されたジョブ情報に従い、前記印刷データ格納部から前記印刷データを取得して画像生成処理を行い、イメージデータを生成する。
【００３２】
６０５はスキャナ制御部であり、スキャナコントローラ３１２を制御し、紙原稿のスキャンを行い、作成されたイメージデータを作成する。
６０６はイメージ格納部であり、前記印刷データ展開部６０４、スキャナ制御部６０５が生成したイメージデータをＲＡＭ３０３やハードディスク（ＨＤ）３１１に一時的に格納する。
【００３３】
６０７はプリンタ制御部であり、プリンタエンジン６０９を制御し、イメージ格納部６０６に格納されたイメージデータの印刷を行わせる。
プリンタエンジン６０９は、前記イメージ格納部に格納されたイメージデータを、電子写真技術やインクジェット技術などの既知の印刷技術を用いて印刷用紙などのメディアに実際に印刷するプリンタ装置を示している。
【００３４】
６０８はジョブログ管理部であり、ジョブログ情報（図７に示すジョブログ情報）を保管・管理する。ジョブ管理部６０３は、ジョブが完了すると管理するジョブ情報をジョブログ情報としてジョブログ管理部６０８に送信し、ジョブログ管理部６０８は、このジョブログ情報を保管する。また、ジョブログ管理部６０８は、分析サーバ１０４からの要求に応答してジョブログ情報を送信する。
【００３５】
リモートＵＩ制御部６１２は、ＨＴＴＰ又はＨＴＴＰＳサーバとして働き、ホストコンピュータ１０１上で動作するＷｅｂブラウザ４０４からの要求を受け付ける。リモートＵＩ制御部６１２は、Ｗｅｂブラウザ４０４からの要求を受けるとセッション情報から認証情報を取得し、認証処理部６１３にアクセス可否を問い合わせる。認証処理部６１３によりアクセスが許可された場合には、リモートＵＩ制御部６１２は、要求されたＨＴＭＬデータをＷｅｂブラウザ４０４に送信する。一方、認証処理部６１３にアクセスが許可されない場合には、リモートＵＩ制御部６１２は、ログインフォーム画面を表示するためのＨＴＭＬデータをＷｅｂブラウザ４０４に送信する。
【００３６】
リモートＵＩ制御部６１２は、Ｗｅｂブラウザ４０４からログインフォームへの入力データを受信すると、認証処理部６１３へ認証要求を出し、認証が成功した場合には要求されたＨＴＭＬデータを送信する。
認証処理部６１３は、複合機への認証処理及び管理を行う。認証処理部６１３は、ユーザがオペレーションパネル３０９や、Ｗｅｂブラウザ４０４のログインフォームへ入力したログイン名、パスワードなどを元にユーザ認証を行う。また、認証処理部６１３は、プリンタドライバ４０２からの認証要求を受け、ユーザ名、パスワードの照合を行い、認証が成功した場合には認証ＩＤを発行し、認証の成否と共に返信する。
【００３７】
認証処理部６１３は、認証情報テーブル（図９）を保持し、該テーブルに登録されたユーザ名、パスワードと比較することによりユーザ認証を行う。若しくは、認証処理部６１３は、図示していない認証サーバとの通信を行い、認証サーバ側で保持する認証情報テーブルを使用してユーザ認証を行ってもよい。
認証処理部６１３は、認証処理を行うと、認証ＩＤ、ログインユーザ名、ログイン時刻、ログアウト時刻、認証の成否、認証経路などの情報を認証ログ情報として、認証ログ管理部６１１に送信し、認証ログ管理部６１１で保管する。
【００３８】
なお、認証経路情報として使用する情報は、認証処理部６１３がどのモジュールからログイン要求を受けたかを判定してもよいし、ログイン要求側のモジュールが識別情報を送信するようにしてもよい。
さらに、認証処理部６１３は、ログアウト通知を受けると、受信したユーザ名、認証ＩＤ、ログアウト要因情報を認証ログ管理部６１１に送信し、認証ログ管理部６１１は認証ログ情報に情報を追加する。
【００３９】
認証ログ管理部６１１は、認証ログ情報（後述する図８に示す認証ログ情報）を保管・管理する。認証ログ情報は、後述する図８に示すように、認証ＩＤ、ログインユーザ名、ログイン時刻、ログアウト時刻などを含む。また、認証ログ管理部６１１は、分析サーバ１０４からの要求に応答して認証ログを送信する。
【００４０】
＜ジョブログ情報テーブル＞
図７は、ジョブログ管理部６０８で保持されるジョブログ情報を格納するテーブル（ジョブログ情報テーブル）を示す図である。
図７において、７０１はジョブログＩＤであり、ジョブログをシステム内で一意に識別するＩＤである。７０２はジョブのタイプ（ジョブ種別）である。ジョブタイプ７０２としては、ホストからの印刷であるプリント、複合機上におけるコピー、スキャン、及び複合機内に保存された文書を印刷するボックスプリントがここでは図示されている。ほかにも、複合機から外部装置にデータ送信するＳＥＮＤなどもジョブタイプに含まれる。
【００４１】
７０３は、ジョブの開始時刻である。この開始時刻７０３により、ジョブ開始時点を特定可能となる。７０４は、ジョブの終了時刻である。この終了時刻７０４により、ジョブ終了時点を特定可能となる。７０５はユーザ名であり、ジョブを発行したユーザ名が記録される。７０６は認証ＩＤであり、ジョブを発行するときにログインした際に記録された認証ログのＩＤ（ジョブに対応するログイン処理の認証ＩＤ）である。
【００４２】
これらの情報により、ジョブログ管理部６０８では、誰が、どのようなジョブがどの時刻に開始され終了したかという情報を記録する。
７１１〜７１３は、各ジョブログを示す。例えば、７１１は、「Ｍａｔｓｕｋｉ」というユーザが、「２００７／０４／３０  １４：３１：３３」に開始し、「２００７／０４／３０  １４：３４：３６」に終了した「プリント」ジョブに関するジョブログである。
なお、ジョブログ情報テーブルを、ジョブ種毎に作成するように構成してもよい。
【００４３】
＜認証ログ情報テーブル＞
図８は、認証ログ管理部６１１で保持される認証ログ情報を格納するテーブル（認証ログ情報テーブル）を示す図である。
図８において、８０１は認証ログＩＤであり、認証ログをシステム内で一意に識別するＩＤである。８０２は認証ＩＤであり、認証が成功した際に認証処理部６１３が発行したＩＤである。ここでは、認証が成功し、ユーザのログイン処理が成功することになる。
８０３は、認証要求時に指定されたユーザ名である。８０４は、認証（ログイン）要求があった時刻を示す。認証が成功した場合には、この時刻とログイン時刻は同義となる。よって、この認証要求があった認証時刻８０４により、ログイン時点を特定可能となる。
８０５はログアウト時刻であり、ユーザがオペレーションパネル３０９や、Ｗｅｂブラウザ４０４でログアウトを指定した時刻や、一定時間以上操作しなかった場合に自動的にログアウトされた時刻が記録される。このログアウト時刻８０５により、ログアウト時点を特定可能となる。
【００４４】
８０６はログアウト要因であり、ユーザがオペレーションパネル３０９や、Ｗｅｂブラウザ４０４でログアウトを指定したのか（ユーザ操作）、一定時間以上操作しなかった場合に自動的にログアウトされたか（タイムアウト）を記録する。
８０７は認証経路であり、認証処理部６１３に認証要求を送信したモジュールの種別が記録される。認証経路の種別としては、オペレーションパネル３０９（パネル）や、Ｗｅｂブラウザ４０４（Ｗｅｂ）、プリンタドライバ４０２（ドライバ）などが挙げられる。８０８は認証の成否であり、認証が成功したのか、失敗したのかが記録される。
【００４５】
８１１〜８１５は、各認証ログを示す。認証ログ８１１は、ユーザ「ｍａｔｓｕｋｉ」が、「パネル」から「２００７／０４／３０  １４：３０：３０」にログインに成功し、「２００７／０４／３０  １４：３５：３０」に「ユーザ操作」によりログアウトしたことを示している。
【００４６】
＜認証情報テーブル＞
図９は、認証処理部６１３が保持しているユーザ別の認証情報を格納するテーブルを示す表である。
図９において、各行はユーザのエントリを示し、各列はユーザ別の認証情報が記述されている。１２０１はユーザ名を示し、１２０２はパスワードを示す。
１２１１の行は「ｋａｔｏ」という名前のユーザのエントリを示す。パスワードは"Ａｋｄ５ｓｊ４ｆ"という文字列である。同様に１２１２において「ｍａｔｓｕｋｉ」、１２１３において「ｓａｋａｉ」という名前のユーザのエントリも定義されている。
【００４７】
＜分析サーバによるジョブ処理時間の分析処理＞
図１０は、本発明の実施例１における分析サーバ１０４による稼働時間の分析処理の流れを示したフローチャートである。このフローチャートに示す処理は、分析サーバ１０４の各機能部により実行される。即ち、分析サーバ１０４のＣＰＵ２０１が分析サーバ１０４のＨＤ２１１等に格納されたプログラムを読み出して実行することにより実現されるものである。
【００４８】
＜分析サーバによりログ収集＞
まず、ステップＳ１５０１において、分析サーバ１０４の分析処理部５０２は、稼働時間分析を開始する。
ステップＳ１５０２において、分析サーバ１０４のジョブログ収集部５０３は、インタフェース部５０１を介して複合機１０２や複合機１０３と通信し、ジョブログ管理部６０８に管理されているジョブログ情報を収集する。そして、ジョブログ収集部５０３は、取得したジョブログ情報を、図７で示したようなジョブログ情報テーブルで保管する。なお、ここでは図７のジョブログ情報テーブルに「補正後稼働時間」の列（不図示）を設けた形式のテーブルで保管する。また、複数のデバイスからログ情報を収集する場合、テーブル上ではデバイスの識別子の列を設けて管理される。
【００４９】
続いて、ステップＳ１５０３において、分析サーバ１０４の認証ログ収集部５０４は、インタフェース部５０１を介して複合機１０２や複合機１０３と通信し、認証ログ管理部６１１で管理されている認証ログを収集する。そして、認証ログ収集部５０４は、取得した認証ログを、図８で示すような認証ログ情報テーブルで保管する。なお、ここでは図８の認証ログ情報テーブルに「補正後稼働時間」の列（不図示）を設けた形式のテーブルで保管する。また、複数のデバイスからログ情報を収集する場合、テーブル上ではデバイスの識別子の列を設けて管理される。
【００５０】
以下、稼働時間を算出する処理について説明する。ステップＳ１５０４〜Ｓ１５０６のループにおいて、分析処理部５０２は、ステップＳ１５０３で取得した各認証ログを順番に処理対象とし、ステップＳ１５０５の処理を実行するように制御する。
ステップＳ１５０５では、分析処理部５０２は、処理対象の認証ログによる稼働時間の算出処理を行う。即ち、処理対象の認証ログに対応するログインに起因した稼働時間（所定の操作に対応する操作時間に対応する稼働時間、ジョブ処理時間に対応する稼働時間を含む）を算出する。この稼働時間計算処理の詳細については後述する図１３で説明する。
【００５１】
そして、分析処理部５０２は、Ｓ１５０５の処理を、全ての認証ログに対して実行し、全ての認証ログについてＳ１５０５の処理が終了すると、Ｓ１５０４〜Ｓ１５０６のループを抜け、ステップＳ１５０７へ処理を進める。
ステップＳ１５０７では、分析処理部５０２は、Ｓ１５０４〜Ｓ１５０６で算出された稼働時間を合計し、デバイスごとの合計稼働時間を計算し、分析結果テーブル（図１４）へ出力する。そして、ジョブ処理時間の分析処理を終了する（Ｓ１５０８）。なお、Ｓ１５０７の稼働時間加算処理の詳細については後述する図１５で説明する。
【００５２】
＜分析サーバにおける、稼働時間の算出＞
以下、図１１〜図１３を参照して、図１０のステップＳ１５０５の稼動時間の算出処理について、詳細に説明する。
図１１は、分析サーバ１０４の分析処理部５０２におけるジョブ処理に関す稼動時間の算出処理の概念を示した図である。
＜単純系＞
図１１では、横軸が時間軸であり、右方向が時間の流れを示している。
図１１において、認証ログ８１２は、図８の認証ログ情報テーブルの認証ログ８１２を図示したものである。認証ログ８１２は、「２００７／０４／３０  １４：３０：３０」にログインし、「２００７／０４／３０  １４：３５：３０」にログアウトしたことを示している。
一方、ジョブログ７１１は、図７のジョブログ情報テーブルのジョブログ７１１を図示したものである。ジョブログ７１１は、「１４：３１：３３」にジョブが開始され、「１４：３４：３６」に終了したことを示している。
【００５３】
デバイスでのジョブ発行までの操作時間を考慮しない場合のジョブの稼働時間（純粋なジョブ処理時間）は、以下の式で求められる。
操作時間を考慮しないジョブの稼働時間＝［ジョブの終了時刻］−［ジョブの開始時刻］
ジョブログ７１１のコピージョブは、認証ＩＤが「０１０」であり、認証ＩＤが一致する認証ログ８１１で示されるログイン期間中１００２〜１００３に、ジョブ発行されたことが分かる。このため、ユーザログインした１００２から操作が開始され、１０１２でジョブが開始され、１０１３でジョブが終了したことが分かる。即ち、１００２〜１０１２が操作時間と推測でき、１０１２〜１０１３がジョブ処理時間となる。
【００５４】
これらより、ジョブログ７１１で示されるジョブに起因するデバイスの稼働時間は、１００２〜１０１３の間、即ち、図中の１０２０で示した時間と考える。
また、１度のログインに基づいて複数のジョブが処理される場合、２番目以降に処理されるジョブでは、直前のジョブの終了時刻からこのジョブの開始時刻までの時間を、このジョブの操作時間と推測する。これらより、このジョブに起因するデバイスの稼働時間は、直前のジョブの終了時刻からこのジョブの開始時刻までの時間（ユーザ操作時間）＋このジョブの開始時刻からこのジョブの終了時刻までの時間（ジョブ処理時間）と考える。即ち、このジョブに起因するデバイスの稼働時間は、直前のジョブの終了時刻からこのジョブの終了時刻までの時間と考える。
【００５５】
以上で示したように、ユーザがログインしてから最初のジョブの開始時刻までの時間や、直前のジョブの終了時刻から次のジョブの開始時刻までの時間は、ジョブの発行のためにデバイスを操作していた時間と考えられる。このため、これらの時間（ユーザ操作時間）をジョブ処理時間に加算し、稼動時間を補正する（以下、補正後稼働時間という）。これにより、より実際に近い稼働時間を求めることができる。
なお、認証ログ８１１のログアウト要因は「ユーザ操作」、認証経路８０７は「パネル」であるので、１０１３にコピージョブが終了し、１００３にユーザのパネル操作によりログアウトされたことがわかる。即ち、１０１３〜１００３がユーザによるログアウト操作時間と推測できる。
【００５６】
これらより、認証ログ８１１に起因するユーザ操作時間は、１００２〜１０１２の間、及び、１０１３〜１００３の間と考えられる。即ち、認証ログ８１１に起因するユーザ操作期間は、認証ログ８１１のログイン期間１００２〜１００３のうち、関連するジョブログ７１１のジョブ処理期間１０１２〜１０１３と重複しない期間と考えられる。なお、１度のログインに基づいて複数のジョブが処理される場合も同様である。ただし、ログアウト要因が「タイムアウト」となっている場合等には、ユーザ操作期間からタイムアウトに要する期間を除く必要がある（詳細は、以下の「ジョブ無し系」で説明する）。
【００５７】
＜ジョブ無し系＞
ユーザがデバイスを操作した際に、必ずジョブを発行するとは限らない。複合機に登録されている文書の閲覧、編集、削除などの操作を行う場合もあるし、途中まで操作を行ってジョブを発行せずに終了する場合も考えられる。これらの時間（操作時間）もデバイスは占有されているため、稼働時間に含めるべきである。
図１２は、分析サーバ１０４の分析処理部５０２における認証ログによる稼働時間の算出処理の概念を示した図である。
図１２では、横軸が時間軸であり、右方向が時間の流れを示している。
図１２において、認証ログ８１４は、図８の認証ログ情報テーブルの認証ログ８１４を図示したものである。認証ログ８１４は、「２００７／０５／０１  １０：０１：００」にログインし、「２００７／０５／０１  １０：１０：００」にログアウトしたことを示している。
【００５８】
また、認証ログ８１４では、ログアウト要因が「タイムアウト」となっている。この場合、ログアウトした時間より前のタイムアウトと判定されるまでの時間（図中、１１１１）に関しては、当然ユーザはなにも操作していないことになる。また、この時間に関しては、他のユーザは通常通りデバイスを利用できる時間になる。ジョブの処理やユーザ操作が全く行われていない図中１１１１の時間は、稼働時間に含めるべきではない。
このため、このような場合では、図中１１１１で示すタイムアウト時間を省いた、図中の１１１０の時間を、認証ログ８１４による稼働時間とする。
図１２の例では、ログイン１１０１してからログアウト１１０２するまでのログイン時間は９分（１０：０１〜１０：１０）であり、例えば、タイムアウト時間（１１１１）が３分である場合には、稼働時間は６分となる。ここでは、ユーザの操作終了のタイミングを１１０３とみなしている。
【００５９】
なお、タイムアウト時間の設定は、複合機のＵＩ制御部６１０が保持しており、分析サーバ１０４からもネットワークを通じて取得することができる。
一方、認証ログ８１４でのログアウト要因が「ユーザ操作」となっている場合、ジョブが終了してからログアウトされるまでの時間もユーザがデバイスを占有していた（操作時間）と考えられ、この時間は稼働時間に含めるべきである。
即ち、認証ログ８１４に起因するユーザ操作期間は、認証ログ８１４のログイン期間１１０１〜１１０２のうち、関連するジョブログのジョブ処理期間と重複しない期間と考えられる。なお、関連するジョブの発行がない場合、ログイン期間とユーザ操作期間とが一致することとなる。
【００６０】
よって、＜単純系＞、＜ジョブ無し系＞のいずれも、デバイスの稼働時間は次のようになる。ジョブ処理期間（第１の稼働期間）、及びユーザがログインしている期間のうちジョブ処理期間と重複しないユーザ操作期間（第２の稼働期間）に対応する時間の和が、デバイスの稼働時間となる。ただし、ログアウト要因が「タイムアウト」となっている場合には、ユーザ操作期間に、タイムアウトに要する期間を含めないものとする。
【００６１】
また、詳細は後述するが、認証経路８０７が「Ｗｅｂ」の場合には、ジョブ終了からログアウトまでの間は、複合機が占有されることはなく処理も行われていない。このため、認証経路８０７が「Ｗｅｂ」の場合には、関連する最後のジョブの終了時点からログアウト時点までの期間は稼働時間には含める必要はない。よって、認証経路８０７が「Ｗｅｂ」の場合には、関連する最後のジョブの終了時点からログアウト時点までの期間をユーザ操作期間に含めないものとする。
さらに、認証経路８０７が「ドライバ」の場合には、ジョブ処理時間以外に複合機が占有されることはないため、ジョブ処理時間以外の時間を稼働時間に含める必要はない。よって、認証経路８０７が「ドライバ」の場合には、そのログイン期間をユーザ操作期間には含めないものとする。
【００６２】
以下、図１３のフローチャートを参照して、図１０のＳ１５０５に示した稼働時間算出処理（認証ログ１件ごとによる補正処理を含んだ稼働時間の算出処理）の詳細な流れの一例を示すフローチャートである。このフローチャートに示す処理は、分析サーバ１０４の分析処理部５０２により実行される。即ち、分析サーバ１０４のＣＰＵ２０１が分析サーバ１０４のＨＤ２１１等に格納されたプログラムを読み出して実行することにより実現されるものである。
【００６３】
まず、ステップＳ９０１において、分析サーバ１０４の分析処理部５０２は、処理対象の認証ログについて稼動時間算出処理を開始する。
ステップＳ９０２において、分析処理部５０２は、処理対象の認証ログの認証経路属性８０７が「ドライバ」（プリンタドライバ）であるか否かを判定する。そして、認証経路属性８０７が「ドライバ」であると判定した場合には、分析処理部５０２は、稼動時間算出処理を終了させる（Ｓ９２３）。なお、プリンタドライバ４０２からの認証処理である場合には、プリンタドライバ４０２からの認証処理が終わった後に、ネットワーク１０５を介して印刷ジョブが複合機に投入される。このため、ジョブが投入されるまでの間は、複合機が占有されることはなく処理も行われていない。このため、この場合、ログインしてからジョブが開始されるまでの時間、直前のジョブの終了から次のジョブの開始までの時間、最後のジョブの終了からログアウトまでの時間等は、稼働時間には含めない。
【００６４】
なお、Ｓ９０２では「ドライバ」の場合に、処理を終了させるものとしているが、「ドライバ」又は「Ｗｅｂ」の場合（即ち、「パネル」でない場合）に、処理を終了させるように構成してもよい。
一方、ステップＳ９０２において、認証経路属性８０７が「ドライバ」でないと判定した場合には、分析処理部５０２は、ステップＳ９２５に処理を進める。
ステップＳ９２５では、分析処理部５０２は、処理対象の認証ログの成否属性８０８が「失敗」であるか否かを判定する。そして、成否属性８０８が「失敗」であると判定した場合には、分析処理部５０２は、稼働時間算出処理を終了させる（Ｓ９２３）。本実施例では、ログイン処理に失敗した場合には、稼働時間には含めないものとするが、この時間も稼働時間に含める構成であってもよい。
【００６５】
一方、ステップＳ９２５において、成否属性８０８が「失敗」でないと判定した場合には、分析処理部５０２は、ステップＳ９０３に処理を進める。
ステップＳ９０３では、分析処理部５０２は、ジョブログ収集部５０３が保持するジョブログテーブルを参照して、認証ログ７０６が、処理対象の認証ログの認証ＩＤ８０２属性と一致するジョブログを検索する。さらに、分析処理部５０２は、前記検索したジョブログを、開始時刻７０３の昇順にソートする。
【００６６】
続いて、ステップＳ９０４において、分析処理部５０２は、分析サーバ１０４のＲＡＭ２０３に記憶される変数Ａｓ、Ａｅ、Ａｏを以下の値で初期化する。
Ａｓ＝ログイン時刻（処理対象の認証ログの認証（ログイン）時刻８０４）
Ａｅ＝ログアウト時刻（処理対象の認証ログのログアウト時刻８０５）
Ａｏ＝タイムアウト時間
なお、タイムアウト時間は、認証ログの取得元の複合機のＵＩ制御部６１０が保持しており、ネットワークを通じて取得する。分析処理部５０２は、各複合機のタイムアウト時間を予め取得しておいてもよい。
【００６７】
続いて、ステップＳ９０５〜Ｓ９１６のループにおいて、分析処理部５０２は、ステップＳ９０３で検索されたジョブログを順番に処理対象とし、ステップＳ９０６〜ステップＳ９１５の処理を行うように制御する。なお、ステップＳ９０３で、ジョブログが１件も検索されなかった場合には、分析処理部５０２は、そのままＳ９０５〜Ｓ９１６のループを抜けて、ステップＳ９１７に処理を進める。
【００６８】
まず、ステップＳ９０６において、分析処理部５０２は、式「Ａｓ＜Ａｅ」を評価し、式「Ａｓ＜Ａｅ」が真であると判定した場合には、ステップＳ９０７に処理を進める。
ステップＳ９０７では、分析処理部５０２は、分析サーバ１０４のＲＡＭ２０３に記憶される変数Ｊｓ、Ｊｅ、Ｊｗを以下のように初期化する。
Ｊｓ＝開始時刻（処理対象のジョブログの開始時刻７０３）
Ｊｅ＝終了時刻（処理対象のジョブログの終了時刻７０４）
Ｊｗ＝０
続いて、ステップＳ９０８において、分析処理部５０２は、式「Ａｅ＜Ｊｓ」を評価し、式「Ａｅ＜Ｊｓ」が偽であると判定した場合には、分析処理部５０２は、ステップＳ９２４に処理を進める。
【００６９】
ステップＳ９２４では、分析処理部５０２は、式「Ａｓ＜Ｊｓ」を評価し、式「Ａｓ＜Ｊｓ」が真であると判定した場合には、ステップＳ９０９に処理を進める。なお、式「Ａｓ＜Ｊｓ」が真の場合、ログインからログアウトまでの時間と、ジョブの開始から終了までの時間で重なりがあることを示している。
ステップＳ９０９では、分析処理部５０２は、補正後稼働時間を示す変数Ｊｗに「Ｊｗ＝Ｊｅ−Ａｓ」のように値を代入する。これは、図１１の概念図の１０２０に当たる時間である。即ち、この補正稼働時間は、従来の稼働時間であるジョブ処理時間「Ｊｅ−Ｊｓ」に操作時間「Ｊｓ−Ａｓ」を加えて補正した時間である。よって、補正稼働時間は「Ｊｗ＝Ｊｅ−Ｊｓ＋Ｊｓ−Ａｓ」と記載してもよい。
【００７０】
次に、ステップＳ９１０において、分析処理部５０２は、変数ＡｓをＪｅの値で更新する。これは、補正後稼働時間として使用できる時間Ａｓ〜Ａｅのうち、Ａｓ〜Ｊｅの時間を、上記Ｓ９０９で既に補正稼動時間として使用したため、稼働時間として使用できる時間をＪｅ〜Ａｅに変更するステップである。これにより、変数Ａｓには、処理対象のジョブの終了時刻が格納されたことになる。
【００７１】
そして、ステップＳ９１０の処理が終了すると、分析処理部５０２は、ステップＳ９１５に処理を進める。
一方、上記ステップＳ９２４において、式「Ａｓ＜Ｊｓ」が偽であると判定した場合には、分析処理部５０２は、ステップＳ９１６に処理を進め、まだ未処理のジョブログがあれば、処理対象を次のジョブログに移す。なお、式「Ａｓ＜Ｊｓ」が偽となるのは、複数のジョブが平行して実行されて、他のジョブログに対する上記Ｓ９１０の処理により、Ａｓがログイン時間ではなく他のジョブの終了時刻に変更されることにより起こりうる。この場合、操作時間が重複して加算され、補正後稼働時間が算出されしまうことを避けるため、特に処理を行わず、処理対象を次のジョブログに移す。
【００７２】
一方、上記ステップＳ９０８において、式「Ａｅ＜Ｊｓ」が真であると判定した場合には、ステップＳ９１１に処理を進める。なお、式「Ａｅ＜Ｊｓ」が真の場合、ログアウトした後にジョブが開始していることを示している。
ステップＳ９１１では、分析処理部５０２は、処理対象の認証ログのログアウト要因８０６が「タイムアウト」であるかどうかを判定し、「タイムアウト」でないと判定した場合には、ステップＳ９１２に処理を進める。
【００７３】
ステップＳ９１２では、分析処理部５０２は、以下の計算式で補正後稼働時間Ｊｗを算出する。
Ｊｗ＝（Ｊｅ−Ｊｓ）＋（Ａｅ−Ａｓ）
これは、タイムアウトでないログアウト後にジョブが開始したジョブログの補正後稼働時間Ｊｗは、ジョブ処理時間「Ｊｅ−Ｊｓ」と、ログインからログアウトまでの時間「Ａｅ−Ａｓ」を加算した時間となることを示している。この場合、ログインからログアウトまでの時間「Ａｅ−Ａｓ」が操作時間となる。よって、補正後稼働時間Ｊｗ＝ジョブ処理時間「Ｊｅ−Ｊｓ」＋操作時間「Ａｅ−Ａｓ」となる。
そして、ステップＳ９１２の処理が終了すると、分析処理部５０２は、ステップＳ９１４に処理を進める。
【００７４】
一方、上記ステップＳ９１１において、処理対象の認証ログのログアウト要因８０６が「タイムアウト」であると判定した場合には、分析処理部５０２は、ステップＳ９１３に処理を進める。
ステップＳ９１３では、以下の計算式で補正後稼働時間Ｊｗを算出する。
Ｊｗ＝（Ｊｅ−Ｊｓ）＋（Ａｅ−Ａｓ−Ａｏ）
これは、タイムアウトによるログアウト後に開始したジョブのジョブログによる補正後稼働時間Ｊｗが、ジョブ処理時間「Ｊｅ−Ｊｓ」に、ログインからログアウトまでの時間「Ａｅ−Ａｓ」からタイムアウト時間Ａｏを減算した時間を、加算した時間となることを示している。なお、上記「Ａｅ−Ａｓ−Ａｏ」は、図１２の概念図の１１１０に当たる時間である。この場合、ログインからログアウトまでの時間からタイムアウト時間Ａｏを減算した時間「Ａｅ−Ａｓ−Ａｏ」が操作時間となる。よって、補正後稼働時間Ｊｗ＝ジョブ処理時間「Ｊｅ−Ｊｓ」＋操作時間「Ａｅ−Ａｓ−Ａｏ」となる。
【００７５】
そして、ステップＳ９１３の処理が終了すると、分析処理部５０２は、ステップＳ９１４に処理を進める。
次に、ステップＳ９１４では、分析処理部５０２は、変数ＡｓをＡｅで更新する。これは、上記Ｓ９１２，Ｓ９１３でログインからログアウトまでの時間を既に補正後稼働時間として使用したため、補正後稼働時間として使用できる時間が残っていないことを示す。
そして、ステップＳ９１４の処理が終了すると、分析処理部５０２は、ステップＳ９１５に処理を進める。
【００７６】
次に、ステップＳ９１５では、分析処理部５０２は、Ｓ９１０、Ｓ９１２、又はＳ９１３で計算した変数Ｊｗの値を、ジョブログテーブルの該当ジョブログの「補正後稼働時間」の列（不図示）に設定する。
そして、ステップＳ９１５の処理が終了すると、分析処理部５０２は、ステップＳ９１６に処理を進め、まだ未処理のジョブログがあれば、処理対象を次のジョブログに移す。
一方、上記ステップＳ９０６において、式「Ａｓ＜Ａｅ」が偽であると判定した場合には、分析処理部５０２は、ステップＳ９１６に処理を進め、まだ未処理のジョブログがあれば、処理対象を次のジョブログに移す。なお、式「Ａｓ＜Ａｅ」が偽である場合とは、Ａｓ〜Ａｅが稼働時間に加算できる時間であるが、上記Ｓ９１０や上記Ｓ９１４等の処理により、変数Ａｓが更新され、補正後稼働時間として使用できる時間が残っていないことを示している。
【００７７】
そして、ステップＳ９０５〜Ｓ９１６のループ処理が終了し、処理対象の認証ログに関連する全ジョブログ（Ｓ９０３で検索された全ジョブログ）に対する補正処理が終了すると、分析処理部５０２は、ステップＳ９１７に処理を進める。
ステップＳ９１７では、分析処理部５０２は、式「Ａｓ＜Ａｅ」を評価し、式「Ａｓ＜Ａｅ」が偽であると判定した場合には、ステップＳ９２３に進み処理を終了する。これは、稼働時間として加算可能な時間が残っていないことを示す。
【００７８】
一方、ステップＳ９１７において、式「Ａｓ＜Ａｅ」が真であると判定した場合には、分析処理部５０２は、ステップＳ９１８に処理を進める。
ステップＳ９１８では、分析処理部５０２は、処理対象の認証ログの認証経路８０７属性が「パネル」であるか否かを判定し、「パネル」でないと判定した場合には、ステップＳ９２３に進み処理を終了する。この場合、認証経路が「Ｗｅｂ」である場合が含まれる。認証経路が「Ｗｅｂ」である場合、ユーザがブラウザでアクセスしただけの時間は稼働時間には含めず、ジョブが発行された場合のみ、そのジョブ発行のための操作時間分だけを稼働時間に含める。
【００７９】
一方、ステップＳ９１８において、処理対象の認証ログの認証経路８０７属性が「パネル」であると判定した場合には、分析処理部５０２は、ステップＳ９１９に処理を進める。
ステップＳ９１９では、分析処理部５０２は、処理対象の認証ログのログアウト要因８０６が「タイムアウト」であるかどうかを判定し、「タイムアウト」でないと判定した場合には、ステップＳ９２０に処理を進める
ステップＳ９２０では、分析処理部５０２は、以下の計算式で認証ログの補正後稼働時間Ａｗを算出する。
Ａｗ＝Ａｅ−Ａｓ
これは、「タイムアウト」していない認証ログの補正後稼働時間Ａｗが、ログインからログアウトまでの時間「Ａｅ−Ａｓ」（操作時間）となることを示している。
【００８０】
そして、ステップＳ９２０の処理が終了すると、分析処理部５０２は、ステップＳ９２２に処理を進める。
一方、ステップＳ９１９において、認証ログのログアウト要因８０６が「タイムアウト」であると判定した場合には、分析処理部５０２は、ステップＳ９２１に処理を進める
ステップＳ９２１では、分析処理部５０２は、以下の計算式で認証ログの補正後稼働時間Ａｗを算出する。
Ａｗ＝Ａｅ−Ａｓ−Ａｏ
これは、「タイムアウト」した認証ログの補正後稼働時間Ａｗが、ログインからログアウトまでの時間「Ａｅ−Ａｓ」からタイムアウト時間Ａｏを減算した時間（操作時間）となることを示している。これは、図１２の概念図の１１１０に当たる時間である。
【００８１】
そして、ステップＳ９２１の処理が終了すると、分析処理部５０２は、ステップＳ９２２に処理を進める。
なお、上記ステップＳ９２０，Ｓ９２１で使用する「Ａｓ」は、それ以前のステップで初期値の認証（ログイン）時刻８０４から変更されている場合がある。これは、既にジョブログの稼働時間処理（Ｓ９０５〜Ｓ９１６）で補正加算のために使用された場合である。この場合、「Ａｓ」は最後のジョブの終了時刻などに設定されている。例えば、Ｓ９２０の場合、図１１の７１１の終了時刻１０１３から８１１のログアウト時刻１００３の時間が、操作時間として、補正後稼働時間Ａｗに使用される。
【００８２】
続いて、ステップＳ９２２において、分析処理部５０２は、認証ログテーブルの該当認証ログの「補正後稼働時間」列（不図示）に、ステップＳ９２０又はＳ９２１で計算されたＡｗを設定し、稼働時間算出処理を終了する（Ｓ９２３）。
【００８３】
次に、図１４〜図１５を参照して、図１０のステップＳ１５０７の稼動時間加算処理について、詳細に説明する。
＜分析結果テーブル＞
図１０のステップＳ１５０７において分析結果（稼働時間加算結果）が出力される分析結果テーブルについて説明する。図１４は、分析結果テーブルの構成を示す図である。なお、分析結果テーブルは記憶装置２１１に記憶される。
図１４において、１４０１は複合機ＩＤであり、複合機を識別するＩＤが設定される。
１４０２は稼動時間であり、図１０のＳ１５０７の稼働時間加算処理により算出された稼動時間が格納される。
【００８４】
＜稼動時間加算処理＞
図１５は、図１０のステップＳ１５０７に示した稼働時間加算処理の詳細な流れの一例を示すフローチャートである。このフローチャートに示す処理は、分析サーバ１０４の分析処理部５０２により実行される。即ち、分析サーバ１０４のＣＰＵ２０１が分析サーバ１０４のＨＤ２１１等に格納されたプログラムを読み出して実行することにより実現されるものである。
【００８５】
まず、ステップＳ１３０１において、分析処理部５０２は、稼働時間加算処理を開始する。
次に、ステップＳ１３０２〜Ｓ１３１６のループにおいて、分析処理部５０２は、分析サーバ１０４で管理する各複合機を順番に処理対象とし、ステップＳ１３０３〜Ｓ１３１５の処理を行うように制御する。
【００８６】
まず、ステップＳ１３０３において、分析処理部５０２は、分析サーバ１０４のＲＡＭ２０３に記憶される、処理対象の複合機の稼動時間を表す変数Ｄｗを「０」で初期化する。
続いて、ステップＳ１３０４において、分析処理部５０２は、ジョブログ収集部５０３が保持するジョブログテーブルより、処理対象の複合機のジョブログを検索する。
次に、ステップＳ１３０５〜Ｓ１３０９のループにおいて、分析処理部５０２は、上記Ｓ１３０４で検索された全てのジョブログを順番に処理対象とし、ステップＳ１３０６〜Ｓ１３０８の処理を行うように制御する。
【００８７】
まず、ステップＳ１３０６では、分析処理部５０２は、処理対象のジョブログの「補正後稼働時間」が設定されているか否かを判定し、設定されていると判定した場合には、ステップＳ１３０７に処理を進める。
ステップＳ１３０７では、分析処理部５０２は、変数Ｄｗに、ジョブログの「補正後稼働時間」を加算する。なお、図１３のフローチャートで示したように、このジョブログの「補正後稼働時間」は、ジョブの操作時間＋処理時間を意味する。
【００８８】
一方、上記ステップＳ１３０６において、処理対象のジョブログの「補正後稼働時間」が設定されていないと判定した場合には、分析処理部５０２は、ステップＳ１３０８に処理を進める。
ステップＳ１３０８では、分析処理部５０２は、処理対象のジョブログの終了時刻７０４から開始時刻７０３を減算した時間を変数Ｄｗに加算する。これは、認証ログによる稼働時間補正がなされていない場合、ジョブの処理時間を稼働時間として加算すること意味する。
そして、ステップＳ１３０７又はＳ１３０８の処理が終了すると、分析処理部５０２は、ステップＳ１３０９に処理を進め、まだ未処理のジョブログがあれば、処理対象を次のジョブログに移す。
【００８９】
一方、ステップＳ１３０９で、Ｓ１３０４で検索された全ジョブログについて、Ｓ１３０６〜Ｓ１３０８の処理を終了したと判定した場合、分析処理部５０２は、Ｓ１３０５〜Ｓ１３０９のループを抜け、ステップＳ１３１０に処理を進める。
ステップＳ１３１０では、分析処理部５０２は、認証ログ収集部５０４が保持する認証ログテーブルより処理対象の複合機の認証ログを検索する。
次に、ステップＳ１３１１〜Ｓ１３１４のループにおいて、分析処理部５０２は、上記Ｓ１３１０で検索された全ての認証ログを順番に処理対象とし、ステップＳ１３１２〜Ｓ１３１３の処理を行うように制御する。
【００９０】
まず、ステップＳ１３１２では、分析処理部５０２は、処理対象の認証ログの「補正後稼働時間」が設定されているかを判定し、設定されている場合にはステップＳ１３１３に処理を進める。
ステップＳ１３１３では、分析処理部５０２は、変数Ｄｗに、認証ログの「補正後稼働時間」を加算し、ステップＳ１３１４に処理を進める。
一方、上記ステップＳ１３１２において、処理対象の認証ログの「補正後稼働時間」が設定されていないと判定した場合には、分析処理部５０２は、そのままステップＳ１３１４に処理を進める。
【００９１】
そして、ステップＳ１３１４において、分析処理部５０２は、まだ未処理の認証ログがあれば、処理対象を次の認証ログに移す。
一方、Ｓ１３１４において、Ｓ１３１０で検索された全認証ログについて、Ｓ１３１２〜Ｓ１３１３の処理を終了したと判定した場合、分析処理部５０２は、Ｓ１３１１〜Ｓ１３１４のループを抜け、ステップＳ１３１５に処理を進める。
【００９２】
次に、ステップＳ１３１５では、分析処理部５０２は、図１４に示した稼働時間分析結果テーブルに行を追加し、複合機ＩＤ１４０１に、処理対象の複合機の識別子を設定し、稼働時間１４０２に、Ｄｗを設定する。
そして、ステップＳ１３１６において、分析処理部５０２は、まだ未処理の複合機があれば、処理対象を次の複合機に移す。
一方、ステップＳ１３１６において、全ての複合機について、Ｓ１３０３〜Ｓ１３１５の処理を終了したと判定した場合には、分析処理部５０２は、Ｓ１３０２〜Ｓ１３１６のループを抜け、処理を終了する（Ｓ１３１７）。
【００９３】
以上のように、ジョブログによるジョブ処理時間に、認証ログによるユーザ操作時間（認証ログとジョブログにより特定される）を加えてデバイスの稼働時間を計算することにより、より実際に近いデバイスの稼働時間を算出できる。
なお、図１３のＳ９０９、Ｓ９１２、Ｓ９１３では、ジョブ処理時間にユーザ操作時間を加算した値を、ジョブログによる補正後稼働時間として算出した。しかし、図１３のＳ９０９、Ｓ９１２、Ｓ９１３において、ユーザ操作時間をジョブログによる「操作時間」として算出するようにしてもよい。この構成の場合、図１５のＳ１３０７を、ＤＷ＝ＤＷ＋上記「操作時間」＋（ジョブ終了時刻−ジョブ開始時刻）とする。これにより、上述した実施例と同様の結果を得ることができる。
【実施例２】
【００９４】
上記実施例１では、複合機のジョブログに認証ＩＤが設定されており、認証ログとジョブログの関連付けが明確であった。
実施例２では、複合機のジョブログに認証ＩＤが設定されていない場合のジョブログと認証ログの関連付け方法について説明する。即ち、本実施例のジョブログ情報テーブルでは、認証ＩＤ７０６列が設定されていないものとする。
【００９５】
＜分析サーバによるジョブ処理時間の分析処理＞
図１６は、本発明の実施例２における分析サーバ１０４によるの流れを示したフローチャートである。このフローチャートに示す処理は、分析サーバ１０４の各機能部により実行される。即ち、分析サーバ１０４のＣＰＵ２０１が分析サーバ１０４のＨＤ２１１等に格納されたプログラムを読み出して実行することにより実現されるものである。
なお、本実施例の稼働時間の分析処理は、上述した実施例１の図１０で示した稼働時間の分析処理の、ステップＳ１５０３とステップＳ１５０４の間に、ステップＳ１５０９を追加したものである。
【００９６】
図１６のステップＳ１５０９では、分析処理部５０２は、ジョブログに対して認証ＩＤを設定する認証ＩＤ設定処理（図１８）を実行する。以下、ステップＳ１５０９の認証ＩＤ設定処理について、図１７，図１８を参照して説明する。
まず、図１７を用いて、分析サーバ１０４の分析処理部５０２で保持される認証経路・ジョブタイプ関連テーブルについて説明する。
図１７は、分析サーバ１０４の分析処理部５０２で保持される認証経路・ジョブタイプ関連テーブルを示す図である。
図１７に示すように、認証経路・ジョブタイプ関連テーブルは、認証経路の種類１７０１と、その認証経路の認証ログと関連付け可能なジョブのタイプの種類１７０２を示している。
【００９７】
１７１１のレコードは、認証経路が「パネル」（オペレーションパネル）である認証ログは、ジョブタイプが「コピー」、「ボックスプリント」、「スキャン」の種類のジョブログと関連付けが可能であることを示している。
同様に、１７１２のレコードは、認証経路が「Ｗｅｂ」（Ｗｅｂブラウザ）である認証ログは、ジョブタイプが「ボックスプリント」であるジョブログと関連付けが可能であることを示している。
同様に、１７１３のレコードは、認証経路が「ドライバ」である認証ログは、ジョブタイプが「プリント」であるジョブログと関連付けが可能であることを示している。
【００９８】
ユーザがどのモジュールで操作を行うかによって発行されるジョブタイプが変わってくる。このため、間違って関係の無い認証ログとジョブログを関連付けられてしまうことを防止するために、本テーブルは使用される。なお、この認証経路・ジョブタイプ関連テーブルは、システム固定でもよいし、ユーザが設定可能としてもよい。
【００９９】
次に図１８で示すフローチャートを用いて、分析処理部５０２で処理されるジョブログ認証ＩＤ設定ステップＳ１５０９の詳細な処理の流れを説明する。このフローチャートに示す処理は、分析サーバ１０４の分析処理部５０２により実行される。即ち、分析サーバ１０４のＣＰＵ２０１が分析サーバ１０４のＨＤ２１１等に格納されたプログラムを読み出して実行することにより実現されるものである。
まず、ステップＳ１６０１において、分析処理部５０２は、認証ＩＤ設定処理を開始する。
ステップＳ１６０２〜Ｓ１６０８のループにおいて、分析処理部５０２は、ジョブログ収集部５０３で収集されたジョブログを順番に処理対象とし、ステップＳ１６０３〜Ｓ１６０７の処理を行うように制御する。
【０１００】
まず、ステップＳ１６０３において、分析処理部５０２は、処理対象のジョブログのユーザ名７０５とログインユーザ名（ユーザ名８０３）が一致する認証ログを検索する。
続いて、ステップＳ１６０４では、分析処理部５０２は、図１７の認証経路・ジョブタイプ関連テーブルを参照し、処理対象のジョブログのジョブタイプ７０２がジョブタイプ１７０２列に含まれる行を検索し、その行の認証経路１７０１を取得する。例えば、ジョブタイプが「ボックスプリント」であれば、ジョブタイプ１７０２列に「ボックスプリント」を含む行１７１１，１７１２を検索し、その行の認証経路１７０１である「パネル」と「Ｗｅｂ」を取得する。
続いて、ステップＳ１６０５において、分析処理部５０２は、ステップＳ１６０３で検索された認証ログのうち、認証ログの認証経路８０７がステップＳ１６０４で取得された認証経路に含まれる認証ログを検索する。
【０１０１】
次に、ステップＳ１６０６において、分析処理部５０２は、ステップＳ１６０５で検索された認証ログのうち、ジョブログの開始時刻７０３以前で最も近い認証（ログイン）時刻８０４である認証ログを選択する。
次に、ステップＳ１６０７において、分析処理部５０２は、ステップＳ１６０６で選択された認証ログの認証ＩＤを、ジョブログ収集部５０３が保持するジョブログテーブルの該当ジョブログの認証ＩＤ７０６列に設定し、関連付けを行う。即ち、Ｓ１６０６で選択された認証ログの認証ＩＤを、ジョブログテーブル内の処理対象のジョブログの認証ＩＤ７０６に設定して、ジョブログと認証ログを関連付ける。
【０１０２】
そして、ステップＳ１６０８において、分析処理部５０２は、全ジョブログに対してＳ１６０３〜Ｓ１６０７の処理を終了したか判定し、まだ終了していない場合には、処理対象を次のジョブログに移す。
一方、全ジョブログに対してＳ１６０３〜Ｓ１６０７の処理を終了したと判断した場合には、分析処理部５０２は、Ｓ１６０２〜Ｓ１６０８のループを抜け、認証ＩＤ設定処理を終了する（Ｓ１６０９）。
【０１０３】
以後、分析処理部５０２は、上述のように関連付けされたジョブログと認証ログを用いて、図１６のＳ１５０４以降の処理を実行して、ジョブ処理時間の分析を行う。
以上のように、認証ログとジョブログの関連付けが明確でない場合でも、ユーザ名、ログイン時間と処理時間の関係等から、認証ログとジョブログを関連付け、実際にデバイスが使用されている時間により近いデバイスの稼働時間を算出できる。
【０１０４】
なお、上述した各種データの構成及びその内容はこれに限定されるものではなく、用途や目的に応じて、様々な構成や内容で構成されることは言うまでもない。
以上、一実施例について示したが、本発明は、例えば、システム、装置、方法、プログラム若しくは記憶媒体（記録媒体）等としての実施態様をとることが可能である。具体的には、複数の機器から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。
【０１０５】
デバイスの稼働時間の計算では、デバイスが使用されている時間を計測しなければならないが、従来では、ジョブ処理時間だけでデバイスの稼働時間の計算を行っていて不十分であった。本実施例では、認証ログを使用し、ユーザが操作を開始してからジョブが完了するまでの時間を推測して、デバイスの稼働時間を補正することにより、実際にデバイスが使用されている時間により近いデバイスの稼働時間を算出することができる。
【０１０６】
以下、本発明に係る情報処理装置で読み取り可能な（コンピュータ読取り可能な）各種データ処理プログラムを格納する記憶媒体（記録媒体）について説明する。
本発明の各工程（上述した各機能）は、ネットワーク又は各種記憶媒体を介して取得したソフトウェア（プログラム）をパーソナルコンピュータ等の処理装置（ＣＰＵ，プロセッサ）にて実行することでも実現できる。
【０１０７】
また、本発明は、複数の機器から構成されるシステムに適用しても、１つの機器からなる装置に適用してもよい。また、本発明は、システム或いは装置にプログラムを供給することによって達成される場合にも適応できることは言うまでもない。この場合、本発明を達成するためのソフトウェアによって表されるプログラムを格納した記憶媒体を該システム或いは装置に読み出すことによって、そのシステム或いは装置が、本発明の効果を享受することが可能となる。
【０１０８】
本発明は上記実施例に限定されるものではなく、本発明の趣旨に基づき種々の変形（各実施例の有機的な組合せを含む）が可能であり、それらを本発明の範囲から除外するものではない。
本発明の様々な例と実施例を示して説明したが、当業者であれば、本発明の趣旨と範囲は、本明細書内の特定の説明に限定されるのではない。
なお、上述した各実施例及びその変形例を組み合わせた構成も全て本発明に含まれるものである。
【符号の説明】
【０１０９】
１０１    ホストコンピュータ
１０２，１０３    複合機
１０４    分析サーバ
１０５    ネットワーク
５０１    インタフェース部
５０２    分析処理部
５０３    ジョブログ収集部
５０４    認証ログ収集部
【図１】
2010217957.tif 000003
【図２】
2010217957.tif 000004
【図３】
2010217957.tif 000005
【図４】
2010217957.tif 000006
【図５】
2010217957.tif 000007
【図６】
2010217957.tif 000008
【図７】
2010217957.tif 000009
【図８】
2010217957.tif 000010
【図９】
2010217957.tif 000011
【図１０】
2010217957.tif 000012
【図１１】
2010217957.tif 000013
【図１２】
2010217957.tif 000014
【図１３】
2010217957.tif 000015
【図１４】
2010217957.tif 000016
【図１５】
2010217957.tif 000017
【図１６】
2010217957.tif 000018
【図１７】
2010217957.tif 000019
【図１８】
2010217957.tif 000020