(57)【要約】【課題】  各構成機器の情報を汎用的に管理することのできる画像形成装置及び機器情報管理プログラムの提供を目的とする。【解決手段】  複数の構成機器を装着し得る画像形成装置であって、当該画像形成装置が装着し得る前記構成機器の情報を管理する構成機器情報管理手段と、当該画像形成装置に装着されている前記構成機器の情報を管理する利用機器情報管理手段とを前記構成機器ごとに有し、前記構成機器情報管理手段及び前記利用機器情報管理手段は、それぞれが対応する前記構成機器の種別を有し、それぞれが管理する情報を構成する各パラメータごとに当該パラメータの種別と値とを管理するパラメータ値管理手段と関連付けられていることにより上記課題を解決する。【選択図】  図８
2007082003.tif 000002
【特許請求の範囲】
【請求項１】
複数の構成機器を装着し得る画像形成装置であって、
当該画像形成装置が装着し得る前記構成機器の情報を管理する構成機器情報管理手段と、
当該画像形成装置に装着されている前記構成機器の情報を管理する利用機器情報管理手段とを前記構成機器ごとに有し、
前記構成機器情報管理手段及び前記利用機器情報管理手段は、それぞれが対応する前記構成機器の種別を有し、それぞれが管理する情報を構成する各パラメータごとに当該パラメータの種別と値とを管理するパラメータ値管理手段と関連付けられていることを特徴とする画像形成装置。
【請求項２】
前記パラメータ管理手段の一つは、前記構成機器に固有の情報を構成するパラメータを管理する固有情報管理手段であることを特徴とする請求項１記載の画像形成装置。
【請求項３】
前記固有情報管理手段は、前記構成機器情報管理手段と関連付けられていること特徴とする請求項２記載の画像形成装置。
【請求項４】
前記パラメータ管理手段の一つは、ユーザによって設定される情報を構成するパラメータを管理する設定情報管理手段であることを特徴とする請求項１乃至３いずれか一項記載の画像形成装置。
【請求項５】
前記設定情報管理手段は、前記構成機器情報管理手段と関連付けられていることを特徴とする請求項４記載の画像形成装置。
【請求項６】
前記パラメータ管理手段の一つは、前記構成機器の使用や環境の変化に伴ってその値が変化する情報であって、変化が生じても通知を行う必要がない情報を構成するパラメータを管理する状態情報管理手段であることを特徴とする請求項１乃至５いずれか一項記載の画像形成装置。
【請求項７】
前記状態情報管理手段は、前記利用機器情報管理手段と関連付けられていることを特徴とする請求項６記載の画像形成装置。
【請求項８】
前記パラメータ管理手段の一つは、前記構成機器の使用や環境の変化に伴ってその値が変化する情報であって、変化が生じた際に通知の必要がある情報を構成するパラメータを管理する事象情報管理手段であることを特徴とする請求項１乃至７いずれか一項記載の画像形成装置。
【請求項９】
前記事象情報管理手段は、前記利用機器情報管理手段と関連付けられていることを特徴とする請求項８記載の画像形成装置。
【請求項１０】
複数の構成機器を装着し得る画像形成装置を、
当該画像形成装置が装着し得る前記構成機器の情報を管理する構成機器情報管理手段と、
当該画像形成装置に装着されている前記構成機器の情報を管理する利用機器情報管理手段とを前記構成機器ごとに有し、
前記構成機器情報管理手段及び前記利用機器情報管理手段は、それぞれが対応する前記構成機器の種別を有し、それぞれが管理する情報を構成する各パラメータごとに当該パラメータの種別と値とを管理するパラメータ値管理手段と関連付けられているように機能させることを特徴とする機器情報管理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像形成装置及び機器情報管理プログラムに関し、特に複数の構成機器を装着し得る画像形成装置及び機器情報管理プログラムに関する。
【背景技術】
【０００２】
一般的に、企業や職場には様々なＯＡ機器が設置されている。そのようなＯＡ機器の一つとして、コピー機能、プリンタ機能、ファクシミリ機能等の複数の機能を有する画像形成装置（複合機）がある。複合機は各機能を実現するために複数の構成機器から構成されている。ある機能を実現するためには、その機能を実現するための構成機器が必要となる。コピー機能であれば、画像入力装置と画像出力装置が必要となり、プリンタ機能であれば画像出力装置が必要となる。
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかしながら、各構成機器によって管理される機器情報の構成は、当該構成機器の機能等に応じて異なる。したがって、各構成機器ごとに当該機器情報を管理するソフトウェアの開発を行う必要があり、開発者にとって非常に非効率であるという問題があった。
【０００４】
本発明は、上記の点に鑑みてなされたものであって、各構成機器の情報を汎用的に管理することのできる画像形成装置及び機器情報管理プログラムの提供を目的とする。
【課題を解決するための手段】
【０００５】
そこで上記課題を解決するため、本発明は、複数の構成機器を装着し得る画像形成装置であって、当該画像形成装置が装着し得る前記構成機器の情報を管理する構成機器情報管理手段と、当該画像形成装置に装着されている前記構成機器の情報を管理する利用機器情報管理手段とを前記構成機器ごとに有し、前記構成機器情報管理手段及び前記利用機器情報管理手段は、それぞれが対応する前記構成機器の種別を有し、それぞれが管理する情報を構成する各パラメータごとに当該パラメータの種別と値とを管理するパラメータ値管理手段と関連付けられていることを特徴とする。
【０００６】
このような画像形成装置では、構成機器の管理機能が汎用的に構成されるため、各構成機器の情報を汎用的に管理することができる。
【発明の効果】
【０００７】
本発明によれば、構成機器の管理機能が汎用的に構成されるため、各構成機器の情報を汎用的に管理することができる。
【発明を実施するための最良の形態】
【０００８】
以下、図面に基づいて本発明の実施の形態を説明する。なお、本実施の形態では、この発明を画像形成装置に適用した場合について説明するが、本発明はこれに限らず各種装置に適用することができる。
【０００９】
まず、本実施の形態に係る画像形成装置（以下「複合機」と言う）１の概念について説明する。図１は、本実施の形態に係る複合機１を取り巻くネットワーク環境を説明するためのネットワーク図であり、図２は、図１に示した複合機１のハードウェア構成を示すブロック図であり、図３は、図１に示した複合機１のソフトウェアとハードウェアの関係を説明するための説明図であり、図１３は、複合機１に搭載されるソフトウェア構成の変遷を説明するための説明図であり、図１４は、従来の複合機のソフトウェアとハードウェアの関係を説明するための説明図である。
【００１０】
図１に示すように、近年のネットワーク化の進展により、オフィスなどに設けられたパーソナルコンピュータ（ＰＣ）などの機器は、ＬＡＮ（Local Area Network）などのネットワークに接続され、相互に通信することができる。たとえば、同図に示したように、ＬＡＮなどのネットワークには、クライアントＰＣ、ＳＭＴＰ（Simple Mail Transfer Protocol）サーバ、ＦＴＰ（File Transfer Protocol）サーバ、サーバＰＣなどが接続され、電子メールの送受信やファイル転送をすることができ、モデム接続された配信サーバは、オフィス外のファックス装置と通信することができる。
【００１１】
このようなネットワーク化の進展に伴い、複合機１についてもネットワークに接続され、ＰＣ等の機器と相互に通信することが可能となり、ハードディスク等の記憶装置を内蔵することで、いわゆるネットワーク複合機へと進化し、ユーザの様々なニーズに応えることができるようになった。
【００１２】
具体的には、複合機１は、通常のコピー機能に加えて、クライアントＰＣからの印刷要求により文書データ等を印刷するプリンタ機能、クライアントＰＣからのファックス要求により文書データ等をサーバＰＣに接続されたモデムを経由して他のオフィスのファックス機器に送信するファックス機能、受信したファックス文書やコピー文書を内蔵したハードディスクに蓄積する蓄積機能などを有するようになった。このような多くの機能を実現するために、複合機１に搭載されるソフトウェアは規模が大きくなり、また、複雑なものとなってきた。
【００１３】
図２は、かかる複合機１のハードウェア構成を示すブロック図である。同図に示すように、この複合機１は、コントローラ１０とエンジン部（Engine）６０とをＰＣＩ（Peripheral Component Interconnect）バスで接続した構成となる。コントローラ１０は、複合機１全体の制御と描画、通信、操作パネルからの入力を制御するコントローラである。エンジン部６０は、ＰＣＩバスに接続可能なプリンタエンジンなどであり、たとえば白黒プロッタ、１ドラムカラープロッタ、４ドラムカラープロッタ、スキャナまたはファックスユニットなどである。なお、このエンジン部６０には、プロッタなどのいわゆるエンジン部分に加えて、誤差拡散やガンマ変換などの画像処理部分が含まれる。
【００１４】
コントローラ１０は、ＣＰＵ１１と、ノースブリッジ（ＮＢ）１３と、システムメモリ（ＭＥＭ−Ｐ）１２と、サウスブリッジ（ＳＢ）１４と、ローカルメモリ（ＭＥＭ−Ｃ）１７と、ＡＳＩＣ（Application Specific Integrated Circuit）１６と、ハードディスクドライブ（ＨＤＤ）１８とを有し、ノースブリッジ（ＮＢ）１３とＡＳＩＣ１６との間をＡＧＰ（Accelerated Graphics Port）バス１５で接続した構成となる。また、ＭＥＭ−Ｐ１２は、ＲＯＭ（Read Only Memory）１２ａと、ＲＡＭ(Random Access Memory)とをさらに有する。
【００１５】
ＣＰＵ１１は、複合機１の全体制御をおこなうものであり、ＮＢ１３、ＭＥＭ−Ｐ１２およびＳＢ１４からなるチップセットを有し、このチップセットを介して他の機器と接続される。
【００１６】
ＮＢ１３は、ＣＰＵ１１とＭＥＭ−Ｐ１２、ＳＢ１４、ＡＧＰ１５とを接続するためのブリッジであり、ＭＥＭ−Ｐ１２に対する読み書きなどを制御するメモリコントローラと、ＰＣＩマスタおよびＡＧＰターゲットとを有する。
【００１７】
ＭＥＭ−Ｐ１２は、プログラムやデータの格納用メモリ、プログラムやデータの展開用メモリ、プリンタの描画用メモリなどとして用いるシステムメモリであり、ＲＯＭ１２ａとＲＡＭ１２ｂとからなる。ＲＯＭ１２ａは、プログラムやデータの格納用メモリとして用いる読み出し専用のメモリであり、ＲＡＭ１２ｂは、プログラムやデータの展開用メモリ、プリンタの描画用メモリなどとして用いる書き込みおよび読み出し可能なメモリである。
【００１８】
ＳＢ１４は、ＮＢ１３とＰＣＩデバイス、周辺デバイスとを接続するためのブリッジである。このＳＢ１４は、ＰＣＩバスを介してＮＢ１３と接続されており、このＰＣＩバスには、ネットワークインタフェース（Ｉ／Ｆ）部なども接続される。
【００１９】
ＡＳＩＣ１６は、画像処理用のハードウェア要素を有する画像処理用途向けのＩＣ（Integrated Circuit）であり、ＡＧＰ１５、ＰＣＩバス、ＨＤＤ１８およびＭＥＭ−Ｃ１７をそれぞれ接続するブリッジの役割を有する。このＡＳＩＣ１６は、ＰＣＩターゲットおよびＡＧＰマスタと、ＡＳＩＣ１６の中核をなすアービタ（ＡＲＢ）と、ＭＥＭ−Ｃ１７を制御するメモリコントローラと、ハードウェアロジックなどにより画像データの回転などをおこなう複数のＤＭＡＣ（Direct Memory Access Controller）と、エンジン部６０との間でＰＣＩバスを介したデータ転送をおこなうＰＣＩユニットとからなる。このＡＳＩＣ１６には、ＰＣＩバスを介してＦＣＵ（Fax Control Unit）３０、ＵＳＢ（Universal Serial Bus）４０、ＩＥＥＥ１３９４（the Institute of Electrical and Electronics Engineers 1394）インタフェース５０が接続される。
【００２０】
ＭＥＭ−Ｃ１７は、コピー用画像バッファ、符号バッファとして用いるローカルメモリであり、ＨＤＤ（Hard Disk Drive）１８は、画像データの蓄積、プログラムの蓄積、フォントデータの蓄積、フォームの蓄積を行うためのストレージである。
【００２１】
ＡＧＰ１５は、グラフィック処理を高速化するために提案されたグラフィックスアクセラレーターカード用のバスインタフェースであり、ＭＥＭ−Ｐ１２に高スループットで直接アクセスすることにより、グラフィックスアクセラレーターカードを高速にするものである。
【００２２】
図３は、かかる複合機１のハードウェアおよびソフトウェアの構成を示した概念図であり、具体的には、後述する本実施形態の特徴部分である機器情報管理部を含む統合アプリケーション１１０と、ソフトウェア１００およびハードウェア２００の階層関係を示している。同図に示すように、ハードウェア２００は、ハードウェアリソース２０１を有し、このハードウェアリソース２０１は、スキャナ２０１ａ、プロッタ２０１ｂ、ＨＤＤ（Hard Disk Drive）２０１ｃ、ネットワーク２０１ｄおよびその他のリソース２０１ｅを有する。なお、その他のリソース２０１ｅは、２０１ａ〜２０１ｄ以外のハードウェアリソース２０１のことであり、たとえば、操作パネルなどの入出力デバイスを示す。
【００２３】
また、かかるハードウェア２００に搭載されるソフトウェア１００は階層化されており、オペレーティングシステム１０３の上層にはサービス層１０２が構築され、このサービス層１０２の上層にはアプリケーション層１０３が構築されている。そして、サービス層１０２は、各ハードウェアリソース（２０１ａ〜２０１ｅ）を制御するドライバーに相当する、スキャナ制御１０２部ａ、プロッタ制御部１０２ｂ、蓄積制御部１０２ｃ、配信／メール送受信制御部１０２ｄ、ＦＡＸ送受信制御部１０２ｅ、ネットワーク通信制御部１０２ｆおよびその他の制御部１０２ｇを有する。
【００２４】
ここで、図３に示したソフトウェア１００が、かかる階層構造をとるに至った経緯について、図１３および図１４を用いて説明する。図１３は、複合機１に搭載されるソフトウェア構成の変遷を示す説明図である。図１３のサービス層分離前アプリケーション５０１に示すように、多機能化した複合機１に搭載されるソフトウェアは、コピーアプリケーション、ＦＡＸアプリケーション、スキャナアプリケーションなどの機能別に独立したアプリケーションとして作成され、図３に示したオペレーティングシステム１０３上で動作していた。
【００２５】
しかしながら、これらのアプリケーションは、ハードウェアリソースを制御するドライバー（サービス層１０２）を含んでいたため、各アプリケーションには重複した処理が存在していた。その結果、各アプリケーションの規模は大きなものとなっていた。
【００２６】
そこで、図１３のサービス層分離後アプリケーション５０２に示すように、サービス層分離前アプリケーション５０１のサービス層１０２相当部分を括りだしサービス層１０２とするとともに、各アプリケーションは、このサービス層１０２の上層であるアプリケーション層１０１に構築する構成とした。かかる階層化構成をとることにより、各アプリケーションはスリム化され開発労力も軽減された。
【００２７】
しかしながら、複合機１のネットワーク化、多機能化がさらに進展するに従って、各アプリケーションに共通処理部分が存在することが問題となってきた。具体的には、アプリケーション層１０１の各アプリケーション、たとえば、コピーアプリケーションやスキャナアプリケーションなどは、それぞれ、スキャナ制御部１０２ａや蓄積制御部１０２ｃといったドライバーと通信をおこなう処理や、リクエスト受付やリクエスト実行といったジョブ管理処理などの同様な処理を内部に有していた。このように、同様な処理を各アプリケーションが有していると、各アプリケーションの開発規模が大きくなるとともに、サービス層の仕様変更に対する各アプリケーションの改修規模が大きくなることが問題となってきた。
【００２８】
この問題を解決するため、図１３の共通ルーチン分離アプリケーション５０３に示すように、かかる同様な処理（共通処理部分）を共通ルーチンとして括りだすことも考えられた。しかしながら、かかる共通ルーチンは、各アプリケーションにおいて微妙に異なる処理を共通化しようとするものであるため、共通ルーチン内部の処理は複雑なものとなってしまう。また、たとえば、プリンタアプリケーションなどの新規アプリケーションを追加する場合においては、かかる新規アプリケーションに適応するために、共通ルーチンの改修が必要となる。
【００２９】
しかし、共通ルーチンの内部処理は複雑であるため、改修要員が処理を把握することが困難となり、改修規模の増大や、改修ミスによる他のアプリケーションへの影響が懸念された。
【００３０】
そこで、図１３のオブジェクト指向アプリケーション５０４に示すように、オブジェクト指向による設計手法（オブジェクトモデリング）により、かかる複数のアプリケーションを、統合アプリケーション１１０に統合することとした。具体的には、各アプリケーションの共通処理部分をオブジェクトモデルとして抽出し、このオブジェクトモデルの集合体から、統合アプリケーション１１０を構成する。そして、従来のコピー機能やスキャナ機能といった機能は、かかるオブジェクトモデルの協調関係によって実現する。
【００３１】
このような構成をとることにより、たとえばプリンタ機能のような新規機能の追加は、かかるオブジェクトモデルに属するクラスのサブクラス化などにより対処できる。このため、改修部分が明確となり、改修による他の機能への影響を小さくすることができる。また、オブジェクトモデリングによるプログラムは、従来の手続き型プログラムに比べて、処理の把握が容易であるため、改修要員が処理を把握することも容易となり、改修規模の削減や、改修ミスによる他のアプリケーションへの影響を小さくすることができる。
【００３２】
図１４は、図１３に示したサービス層分離後アプリケーション５０２の段階における従来のアプリケーションの構成と、かかるアプリケーションとサービス層１０２の各ドライバーの関係を示した説明図である。同図に示すように、アプリケーション層１０１は、コピーアプリケーション１２０、スキャナアプリケーション１３０、ファックスアプリケーション１４０およびプリンタアプリケーション１５０を有する。
【００３３】
たとえば、コピーアプリケーション１２０は、コピー機能を実現するために、スキャナ制御部１０２ａ、プロッタ制御部１０２ｂ、蓄積制御部１０２ｃおよびその他の制御部１０２ｇとデータの送受信をおこなう。また、ファックスアプリケーション１４０は、ファックス機能を実現するために、プロッタ制御部１０２ｂ、蓄積制御部１０２ｃ、ＦＡＸ送受信制御部１０２ｅ、ネットワーク通信制御部１０２ｆおよびその他の制御部１０２ｇとデータの送受信をおこなう。このように、アプリケーション層１０１の各アプリケーションとサービス層１０２の各ドライバー間の通信は、複雑なものとなっていた。
【００３４】
図３の説明に戻ると、上述したオブジェクトモデリングにより、アプリケーション層１０１に存在した複数のアプリケーションは、統合アプリケーション１１０に統合されている。そして、各アプリケーションが重複しておこなっていた各ドライバーとの通信処理は、統合アプリケーション１１０を構成する所定のオブジェクトモデルにおこなわせるように構成したことにより、アプリケーション層１０１のアプリケーションと、サービス層１０２の各ドライバー間の通信は、図１４と比較して単純になっている。
【００３５】
図４は、複合機の操作パネルを説明するための説明図である。同図に示したように、かかる操作パネル４００は、初期設定キー４０１、コピーキー４０２、コピーサーバーキー４０３、プリンタキー４０４、送信キー４０５、テンキー４０６、クリア／ストップキー４０７、スタートキー４０８、予熱キー４０９、リセットキー４１０および液晶タッチパネル４２０を有する。
【００３６】
初期設定キー４０１をタッチすると、液晶タッチパネル４２０に初期設定用のメニューが表示され、かかるメニューにおいては、収納される用紙サイズなどを設定することができる。また、コピーをしたい場合にはコピーキー４０２を、コピー結果を複合機１に蓄積したい場合にはコピーサーバーキー４０３を、プリンタに係る操作を行いたい場合には、プリンタキー４０４を、ファックスや蓄積画像などの送信をしたい場合には送信キー４０５を、それぞれタッチすると、液晶タッチパネル４２０に対応したメニューが表示される。
【００３７】
図５は、図４に示したコピーサーバーキー４０３をタッチすると、液晶タッチパネル４２０に表示されるメニューの一例である。図５に示すように、この液晶タッチパネル４２０には、原稿読み取りボタン４２１、リストから削除ボタン４２２、印刷条件ボタン４２３などのボタンと、蓄積文書の一覧が表示される。
【００３８】
そして、原稿を蓄積したい場合には、原稿を所定の場所にセットしたうえで、原稿読み取りボタン４２１をタッチする。また、蓄積文書を削除したい場合には、たとえば、ユーザＩＤがＤＥＦの蓄積文書４２５をタッチし、かかる蓄積文書の表示を反転させたうえで、リストから削除ボタン４２２をタッチする。また、蓄積文書の印刷条件を変更したい場合には、たとえば、ユーザＩＤがＡＢＣの蓄積文書４２５をタッチし、かかる蓄積文書の表示を反転させたうえで、印刷条件ボタン４２３をタッチすると印刷条件メニューが表示される。
【００３９】
かかるメニューにおいて印刷条件を変更することで、選択した蓄積文書４２５の印刷条件を変更することができる。なお、蓄積文書の数が多く表示エリア内に操作対象となる文書が表示されていない場合には、前へボタンおよび後へボタンをタッチすることで、操作対象となる文書を表示することができる。
【００４０】
次に、統合アプリケーション１１０の内部構成について説明する。図６は、後述する本実施形態の特徴部分である機器情報管理部の統合アプリケーション１１０における位置づけと、かかる統合アプリケーション１１０の概要構成を説明するための説明図である。
【００４１】
同図に示すように、統合アプリケーション１１０は、操作系サブシステム１１１と、管理系サブシステム１１２および実行系サブシステム１１３とを有する。操作系サブシステム１１１は、マンマシンインタフェースを担当するソフトウェア群である。具体的には、この操作系サブシステム１１１は、ユーザの要求の受付サービスをおこなうとともに、かかる要求に対応した成果物（たとえば、コピーした記録紙）の品質、コストおよび納期を考慮したうえで、ユーザに対して情報提供サービスをおこなう。
【００４２】
管理系サブシステム１１２は、複合機１の資源を管理するソフトウェア群である。具体的には、管理系サブシステム１１２は、ハードウェアリソース２０１およびこのハードウェアリソース２０１が保持するデータ状態の管理サービスをおこなう。管理系サブシステム１１２は、また、機器情報管理部１１２ａを有する。機器情報管理部１１２ａは、複合機１の構成機器の機器情報を管理及び監視するソフトウェアモジュールである。ここで、構成機器とは、複合機１に装着され得る各種機器をいう。
【００４３】
実行系サブシステム１１３は、ユーザ要求の実行を担当するソフトウェア群である。具体的には、この実行系サブシステム１１３は、コピーなどの文書操作要求から成果物の出力までの実行サービスをおこなう。そして、操作系サブシステム１１１、管理系サブシステム１１２および実行系サブシステム１１３は、必要に応じて相互に処理を依頼し結果を受けとることで、統合アプリケーション１１０全体として複合機１に必要とされるサービス提供をおこなう。
【００４４】
図７は、図６に示した各サブシステムを、ＵＭＬ（Unified Modeling Language）のクラス図（ＵＭＬクラス図）に置換えた図である。ここで、ＵＭＬとは、ＯＭＧ（Object Management Group）という団体がまとめたシステムモデリング言語であり、システムモデリングの成果を記述する記法を定義したものである。そして、このＵＭＬは、オブジェクト指向によるソフトウェア開発において、一般的に用いられている。
【００４５】
図７に示すように、統合アプリケーション１１０は複数のパッケージを含み、この統合アプリケーション１１０自体もパッケージととらえることができる。ここで、パッケージとはＵＭＬモデルの各構成要素（シンボル）をグループ化したものであり、このパッケージは、左上にタブのついたフォルダ型のシンボルで表現する。なお、かかるパッケージは、上述したオブジェクトモデルあるいはオブジェクトモデルの集合体ととらえることもできる。
【００４６】
図７に示したように、統合アプリケーション１１０は、操作系サブシステム１１１、管理系サブシステム１１２および実行系サブシステム１１３の３つのパッケージを内部に有するパッケージである。さらに、管理系サブシステム１１２は、機器情報管理部１１２ａを内部に有するパッケージである。そして、操作系サブシステム１１１、管理系サブシステム１１２および実行系サブシステム１１３を相互に結ぶ直線は、各パッケージ間にメッセージ送受信などの関連があることを示している。なお、操作系サブシステム１１１、管理系サブシステム１１２および実行系サブシステム１１３のタブの右端に記された記号は、かかるパッケージがサブシステムであることを示すＵＭＬのシンボルである。
【００４７】
次に、本実施形態の特徴部分である機器情報管理部１１２ａについて詳細に説明する。
【００４８】
図８は、機器情報管理部のクラス構成を表したＵＭＬクラス図である。まず、図８のクラス図の読み方について説明する。図８においてそれぞれ独立した各矩形は一つのクラスを示す。クラスを示す矩形は３段の区画を有し、上から、クラス名を示す名前区画、クラスが有するデータ（属性）を示す属性区画およびクラスが有する処理（操作）を示す操作区画と呼ばれる。
【００４９】
このように、各クラスは、データ（属性）を所持するための属性区画と、かかる属性の書き込みおよび読み出しをおこなう処理（操作）を所持するための操作区画とを有している。これらのクラスは、プログラム（統合アプリケーション１１０）の一部として含まれるので、あらかじめＲＯＭ１２ａに格納されたこのプログラムが実行されると、各クラスはＲＡＭ１２ｂの所定領域に実体化され、属性区画に含まれる各データ（属性）がＲＡＭ１２ｂ上に展開される。したがって、クラスを実体化したオブジェクトは、ＲＡＭ１２ｂ上の各データ（属性）の書き込みおよび読み出しをすることが可能となる。
【００５０】
なお、属性や操作といったクラスの要素の左側に「−」記号を付した場合は、かかる要素は外部のクラスには非公開であることを示し、「＋」記号を付した場合は、かかる要素は外部のクラスに公開されていることを示す。また、操作については「公開する（）」のように「（）」記号を付することが通例であり、「（引数１，引数２）」のように、かかる操作に引き渡す引数を記述する場合もある。
【００５１】
図８の各クラスについて説明する。図８に示されるように機器情報管理部１１２ａは、システムクラス３０１、構成機器クラス３０２、利用機器クラス３０３、診断書クラス３０４、固有情報クラス３０５、設定情報クラス３０６、状態情報クラス３０７、及び事象情報クラス３０８等より構成されている。
【００５２】
システムクラス３０１は、複合機１の機器構成を管理するクラスである。システムクラス３０１のインスタンス（以下「システムオブジェクト３０１ａ」という。）は、機器情報管理部１１２ａに一つ（すなわち、複合機１のメモリ内に一つ）存在する。
【００５３】
構成機器クラス３０２、利用機器クラス３０３、及び診断書クラス３０４クラスは、複合機１を構成する各構成機器の状態を管理するクラスである。本実施の形態における機器情報管理部１１２ａでは、各構成機器の状態として接続状態（接続中又は未接続中）、動作状態（動作中又は停止中）、可動状態（動作可能又は動作不可能）という三つの状態を管理する。
【００５４】
構成機器クラス３０２は、接続状態を管理するクラスである。構成機器クラス３０２のインスタンス（以下「構成機器オブジェクト３０２ａ」という。）は、複合機１が仕様上装着し得る構成機器ごとに生成され、各構成機器オブジェクト３０２ａは、当該構成機器オブジェクト３０２ａが対応する構成機器の接続状態を管理する。ここで、「接続」とは、構成機器が複合機１に実装又は装着されることをいう。すなわち、複合機１が仕様上装着し得る機器の全てが、動作時に必ずしも装着されているとは限らない。例えば、オプションの構成機器等は必要に応じて装着（ここでいいう「接続」）される。構成機器クラス３０２は、複合機１のかかる事情を考慮し、その接続状態を管理するために定義されたものである。したがって、構成機器オブジェクト３０２ａは、当該構成機器が複合機１に実際に装着されているか否かを問わず、複合機１が仕様上装備し得る構成機器ごとに存在するのである。
【００５５】
利用機器クラス３０３は、動作状態を管理するクラスである。利用機器クラス３０２のインスタンス（以下「利用機器オブジェクト３０３ａ」という。）は、複合機１に接続（装着）されている構成機器ごとに生成され、各利用機器オブジェクト３０３ａは、当該利用機器オブジェクト３０３ａが対応する構成機器の動作状態を管理する。
【００５６】
診断書クラス３０４は、可動状態を管理するクラスである。診断書クラス３０４のインスタンス（以下「診断書オブジェクト３０４ａ」という。）は、複合機１に接続されている構成機器のうち、可動状態を有する構成機器ごとに生成され、各診断書オブジェクト３０４ａは、当該診断書オブジェクト３０４ａが対応する構成機器の可動状態を管理する。
【００５７】
図８に示されるように、構成機器クラス３０２、利用機器クラス３０３、及び診断書クラス３０４は、特定の構成機器に特化した構造ではなく、各種の構成機器の情報を表現可能な汎用的な構造によって定義されている。例えば、構成機器クラス３０２には、属性として「種別」が定義されているが、この「種別」属性は、各構成機器の種別を識別するためのものである。したがって、新たな構成機器が出現した場合は、この「種別」を新たに定義すればよいだけである。また、それぞれのクラスは「状態」属性を有するが、「状態」属性は各構成機器に関して共通的に管理が必要とされる情報である。したがって、様々な構成機器の接続状態、動作状態、及び可動状態を同じクラスのインスタンスによって管理することができる。
【００５８】
固有情報クラス３０５、設定情報クラス３０６、状態情報クラス３０７、及び事象情報クラス３０８は、構成機器の各種情報を管理するクラスである。
【００５９】
固有情報クラス３０５は、固有情報を管理するクラスである。ここで、固有情報とは、その値が予め決まっておりその後に変化しない情報をいい、例えば、機器名、機種、シリアル番号、又は構成機器の能力（性能）を示す情報等が該当する。固有情報クラス３０５のインスタンス（以下「固有情報オブジェクト３０５ａ」という。）は、固有情報を構成する各パラメータ（機器名、機種、又はシリアル番号等）ごとに生成され、各固有情報オブジェクト３０５ａは、当該固有情報オブジェクト３０５ａが対応するパラメータの値を管理する。
【００６０】
固有情報クラス３０５には、属性として「種別」と「固有値」とが定義されている。「種別」は、各固有情報オブジェクト３０５ａが対応するパラメータを識別するための属性である。「固有値」は、各固有情報オブジェクト３０５ａが対応するパラメータの値を保持するための属性である。
【００６１】
設定情報クラス３０６は、設定情報を管理するクラスである。ここで、設定情報とは、ユーザによって設定される情報をいう。設定情報クラス３０６のインスタンス（以下「設定情報オブジェクト３０６ａ」という。）は、設定情報を構成する各パラメータごとに生成され、各設定情報オブジェクト３０６ａは、当該設定情報オブジェクト３０６ａが対応するパラメータの値を管理する。
【００６２】
設定情報クラス３０６には、属性として「状態」、「種別」、及び「設定値」が定義されている。「状態」は、「設定値」への値の設定の可否を示す属性である。「種別」は、各設定情報オブジェクト３０６ａが対応するパラメータを識別するための属性である。「設定値」は、各設定情報オブジェクト３０６ａが対応するパラメータの値を保持するための属性である。
【００６３】
状態情報クラス３０７は、状態情報を管理するクラスである。ここで、状態情報とは、構成機器の使用や環境の変化に伴ってその値が変化する情報であって、変化が生じても通知を行う必要がないものをいう。例えば、用紙量、トナー量、又は使用時間等が状態情報に該当する。なお、上記において説明した、接続状態、動作状態及び可動状態は、ここでいう状態情報とは別のものである。状態情報クラス３０７のインスタンス（以下「状態情報オブジェクト３０７ａ」という。）は、状態情報を構成する各パラメータごとに生成され、各状態情報オブジェクト３０７ａは、当該状態情報オブジェクト３０７ａが対応するパラメータの最新の値を保持し、ユーザの要求に応じてその値を公開する。
【００６４】
状態情報クラス３０７には、属性として「種別」と「状態値」とが定義されている。「種別」は、各状態情報オブジェクト３０７ａが対応するパラメータを識別するための属性である。「状態値」は、各状態情報オブジェクト３０７ａが対応するパラメータの値を保持するための属性である。
【００６５】
事象情報クラス３０８は、事象情報を管理するクラスである。ここで、事象情報とは、構成機器の使用や環境の変化に伴ってその値が変化する情報であって、変化が生じた際に通知の必要があるものをいう。例えば、故障、ジャム、又はドアオープン等に関する情報が事象情報に該当する。事象情報クラス３０８のインスタンス（以下「事象情報オブジェクト３０８ａ」という。）は、事象情報を構成する各パラメータごとに生成され、各事象情報オブジェクト３０８ａは、当該事象情報オブジェクト３０８ａが対応するパラメータの値を管理し、その値が変化する度にその旨を通知する。
【００６６】
事象情報クラス３０８には、属性として「種別」、「事象値」、及び「事象要因」が定義されている。「種別」は、各事象情報オブジェクト３０８ａが対応するパラメータを識別するための属性である。「事象値」は、各事象情報オブジェクト３０８ａが対応するパラメータの値を保持するための属性である。「事象要因」は、「事象値」が変化した要因を保持するための属性である。
【００６７】
上述のように、固有情報クラス３０５、設定情報クラス３０６、状態情報クラス３０７、及び事象情報クラス３０８は、特定のパラメータに特化した構造ではなく、各種のパラメータを表現可能な汎用的な構造によって定義されている。したがって、様々なパラメータを同じクラスのインスタンスによって管理することができる。
【００６８】
また、機器情報をその性質に応じて、固有情報、設定情報、状態情報及び事象情報に分類し、それぞれに対応するクラスが定義されていることで、各情報に応じた管理が可能となり、過剰な汎用化と冗長な実装が回避されている。
【００６９】
次に、図８に示した各クラス間の主な関係（集約、関連）について説明する。同図に示したように、各クラスを示す矩形を結ぶ直線は、その両端のクラス間に関係があることを表しており、この直線の両端付近の文字はクラスの役割を、数字はクラスの多重度をそれぞれ示している。ここで、役割とは、かかる直線の両端における、一方のクラスからみた、もう一方のクラスの役割や立場のことであり、多重度とは、かかる直線の両端のクラスから生成されるオブジェクト数の対応関係のことである。
【００７０】
図８によれば、システムオブジェクト３０１ａは、０以上の構成機器オブジェクトと関連を有する。これは、複合機１が、０以上の構成機器を装着し得ることに基づく。
【００７１】
一つの構成機器オブジェクト３０２ａは、０又は１個の利用機器オブジェクト３０３ａと関連を有する。すなわち、接続されていない構成機器に対応する構成機器オブジェクト３０２ａは、対応する利用機器オブジェクト３０３ａが存在しないため当該関連を持たない。一方、接続されている構成機器に対応する構成機器オブジェクト３０２ａは、対応する利用機器オブジェクト３０３ａと当該関連を持つ。
【００７２】
一つの利用機器オブジェクト３０３ａは、０又は１個の診断書オブジェクト３０４ａと関連を有する。すなわち、可動状態を持たない構成機器に対応する利用機器オブジェクト３０３ａは、対応する診断書オブジェクト３０４ａが存在しないため当該関連を持たない。一方、可動状態を有する構成機器に対応する利用機器オブジェクト３０３ａは、対応する診断書オブジェクト３０４ａと当該関連を持つ。
【００７３】
各構成機器オブジェクト３０２ａは、更に、対応する構成機器の固有情報を構成する各パラメータごとの固有情報オブジェクト３０５ａ、及び対応する構成機器の設定情報を構成する各パラメータごとの設定情報オブジェクト３０６ａと関連を有する。したがって、各構成機器オブジェクト３０２ａが関連を持つ固有情報オブジェクト３０５ａ及び設定情報オブジェクト３０６ａの数は、対応する構成機器の固有情報及び設定情報のパラメータの個数によって決まる。
【００７４】
また、各利用機器オブジェクト３０３ａは、更に、対応する構成機器の状態情報を構成する各パラメータごとの状態情報オブジェクト３０７ａ、及び対応する構成機器の事象情報を構成する各パラメータごとの事象情報オブジェクト３０８ａと関連を有する。したがって、各利用機器オブジェクト３０３ａが関連を持つ状態情報オブジェクト３０７ａ及び事象情報オブジェクト３０８ａの数は、対応する構成機器の状態情報及び事象情報のパラメータの個数によって決まる。
【００７５】
このように、各構成機器が有する固有情報、設定情報、状態情報、及び事象情報は、オブジェクト間の関連付けによって識別されるため、各構成機器に応じた固有情報等のパラメータのみを機器構成オブジェクト３０２ａ又は利用機器オブジェクト３０３ａに関連付ければよく、汎用的、かつ、冗長でない構成によって機器情報が管理され得る。
【００７６】
なお、本実施の形態において、固有情報及び設定情報は、構成機器の接続の有無に関係なく管理が必要とされる情報に相当する。したがって、固有情報クラス３０５及び設定情報クラス３０６は、構成機器クラス３０２に関連付けられている。一方、状態情報及び事象情報は、構成機器が接続された場合に管理が必要とされる情報である。したがって、状態情報クラス３０７及び事象情報クラス３０８は利用機器クラス３０３に関連付けられている。
【００７７】
このように、構成機器の接続の有無に応じて管理の要否の異なる情報を分離して管理することにより、接続されていない構成機器についてまで状態情報及び事象情報を管理するためのメモリ領域を確保する必要がなくなり、ＲＡＭ領域を節約することができる。
【００７８】
ところで、構成機器クラス３０２、固有情報クラス３０５、及び設定情報クラス３０６によって管理される情報は、構成機器の動作中にその値が頻繁に変化しない静的な情報（以下「静的情報」という。）である。したがって、破線Ｓで囲まれたクラスは、静的な情報を管理するクラスを示す。
【００７９】
一方、利用機器クラス３０３、診断書クラス３０４、状態情報クラス３０７、及び事象情報クラス３０８は、構成機器の動作中にその値が頻繁し得る動的な情報（以下「動的情報」という。）である。したがって、破線Ｄで囲まれたクラスは動的な情報を管理するクラスを示す。
【００８０】
以下、機器情報管理部１１２ａによって実行される処理手順について説明する。図９は、機器情報管理部による機器情報の公開処理の概要を説明するためのフローチャートである。
【００８１】
機器情報管理部１１２ａは、ある構成機器の機器情報の公開が要求されると、当該構成機器を検索する（Ｓ１０１）。続いて、要求された機器情報が静的情報か動的情報かを判定し（Ｓ１０２）、静的情報である場合は、当該構成機器の固有情報又設定情報を取得し、要求元に公開する（Ｓ１０３）。一方、要求された機器情報が動的情報の場合は、当該構成機器が接続中であるか否かを当該構成機器に対応する構成機器オブジェクト３０２ａに基づいて判定する（Ｓ１０４）。当該構成機器が接続中である場合、当該構成機器の状態情報又は事象情報を取得し、要求元に公開する（Ｓ１０３）。一方、当該構成機器が未接続中である場合、要求された機器情報は存在しない旨を要求元に通知する（Ｓ１０５）。
【００８２】
次に、機器情報管理部１１２ａにおける処理を、図８に示した各クラスを実体化したオブジェクトと、かかるオブジェクト間のメッセージの流れを時系列に表したＵＭＬのシーケンス図（図１０〜図１２）によって説明する。同図の上部に並べられた矩形は、各オブジェクトを示し、各オブジェクトから下方に伸びた破線は、各オブジェクトが生存していることを示す線（ライフライン）であり、同図の下方に向かって時間は流れるものとする。そして、かかる破線上の垂直方向に伸びる矩形は、各オブジェクトが実際に活動している期間（活性区間）を示す。
【００８３】
図１０は、静的情報の公開が要求された際の処理を説明するためのシーケンス図である。
【００８４】
構成機器の静的情報は固有情報オブジェクト３０５ａ又は設定情報オブジェクト３０６ａに保持される。ある構成機器の静的情報を知りたい他のシステムが、当該構成機器に対応する構成機器オブジェクト３０２ａに情報の公開を依頼すると（Ｓ２０１）、構成機器オブジェクト３０２ａは要求された情報の種別に基づいて、当該構成機器オブジェクト３０２ａに関連付けられている固有情報オブジェクト３０５ａ又は設定情報オブジェクト３０６ａに情報の公開を依頼する（Ｓ２０３又はＳ２０４）。固有情報オブジェクト３０５ａ又は設定情報オブジェクト３０６ａは、その依頼に応じ、属性「固有値」又は「設定値」等に保持されている情報を公開する。
【００８５】
図１１は、動的情報の公開が要求された際の処理を説明するためのシーケンス図である。
【００８６】
ある構成機器の動的情報を知りたい他のシステムは、当該構成機器に対応する診断書オブジェクト３０４ａに情報の公開を依頼する（Ｓ３０１）。診断書オブジェクト３０４ａは、当該診断書オブジェクト３０４ａに関連付けられている利用機器オブジェクト３０３ａに情報の公開を依頼する（Ｓ３０２）。利用機器オブジェクト３０３ａは要求された情報の種別に基づいて、状態情報オブジェクト３０７ａ又は事象情報オブジェクト３０８ａに情報の公開を依頼する（Ｓ３０３又はＳ３０４）。状態情報オブジェクト３０７ａ又は事象情報オブジェクト３０８ａは、その依頼に応じ、属性「状態値」又は「事象値」等に保持されている情報を公開する。
【００８７】
図１２は、構成機器の監視処理を説明するためのシーケンス図である。
【００８８】
ある構成機器の情報の変化を検出するセンサーは、変化した情報の種別に応じて事象情報オブジェクト３０８ａ又は状態情報オブジェクト３０７ａに変化した情報を通知する（Ｓ４０１又はＳ４０５）。事象情報オブジェクト３０８ａ又は状態情報オブジェクト３０７ａはその情報を保存する。
【００８９】
異常やエラーなどの動的情報は、その情報を知りたい他のシステムに対して通知を行う必要があるため、事象情報オブジェクト３０８ａは、利用機器オブジェクト３０３ａに対して通知を行い（Ｓ４０２）、利用機器オブジェクト３０３ａは、診断書オブジェクト３０４ａに対して通知を行う（Ｓ４０３）。そして、診断書オブジェクト３０４ａは、構成機器の情報を知りたい他のシステムに対して通知を行う（Ｓ４０４）。
【００９０】
一方、状態情報オブジェクト３０７ａに保存された情報は、図１１に示したように、他システムからから要求されたタイミングでその情報が公開される。
【００９１】
上述したように本実施の形態における機器情報管理部１１２ａによれば、特定の構成機器の機器情報に特化した構成ではなく、各種の構成機器の機器情報に対応可能な汎用的な構成によって機器情報を管理するため、構成機器ごとに機器情報を管理するソフトウェアを実装する必要はなく、効率的な開発作業を行えると共に、機器情報の管理用ソフトウェアの品質の向上及び保守作業の効率化等を期待することができる。
【００９２】
以上、本発明の実施例について詳述したが、本発明は係る特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
【図面の簡単な説明】
【００９３】
【図１】複合機をとりまくネットワーク環境を示すネットワーク図である。
【図２】複合機のハードウェアを説明するための説明図である。
【図３】複合機におけるハードウェアおよびソフトウェアの階層構造を説明するための説明図である。
【図４】複合機の操作パネルを説明するための説明図である。
【図５】液晶タッチパネルに表示されるメニュー例を説明するための説明図である。
【図６】統合アプリケーションの構成を説明するための説明図である。
【図７】統合アプリケーションの構成を表したＵＭＬクラス図である。
【図８】機器情報管理部のクラス構成を表したＵＭＬクラス図である。
【図９】機器情報管理部による機器情報の公開処理の概要を説明するためのフローチャートである。
【図１０】静的情報の公開が要求された際の処理を説明するためのシーケンス図である。
【図１１】動的情報の公開が要求された際の処理を説明するためのシーケンス図である。
【図１２】構成機器の監視処理を説明するためのシーケンス図である。
【図１３】複合機に搭載されるソフトウェア構成の変遷を示す説明図である。
【図１４】従来の複合機におけるハードウェアおよびソフトウェアの階層構造を説明するための説明図である。
【符号の説明】
【００９４】
１  画像形成装置（複合機）
１０  コントローラ
１１  ＣＰＵ
１２  ＭＥＭ−Ｐ
１２ａ  ＲＯＭ
１２ｂ  ＲＡＭ
１３  ＮＢ
１４  ＳＢ
１５  ＡＧＰ
１６  ＡＳＩＣ
１７  ＭＥＭ−Ｃ
１８  ＨＤＤ
２０  キーボード（オペレーションパネル）
３０  ＦＣＵ
４０  ＵＳＢ
５０  ＩＥＥＥ１３９４
６０  エンジン部（Engine）
１００  ソフトウェア
１０１  アプリケーション層
１０２  サービス層
１０２ａ  スキャナ制御部
１０２ｂ  プロッタ制御部
１０２ｃ  蓄積制御部
１０２ｄ  配信／メール送受信制御部
１０２ｅ  ＦＡＸ送受信制御部
１０２ｆ  ネットワーク通信制御部
１０２ｇ  その他の制御部
１０３  オペレーティングシステム
１１０  統合アプリケーション
１１１  操作系サブシステム
１１２  管理系サブシステム
１１２ａ  機器情報管理部
１１３  実行系サブシステム
１２０  コピーアプリケーション
１３０  スキャナアプリケーション
１４０  ファックスアプリケーション
１５０  プリンタアプリケーション
２００  ハードウェア
２０１  ハードウェアリソース
２０１ａ  スキャナ
２０１ｂ  プロッタ
２０１ｃ  ＨＤＤ
２０１ｄ  ネットワーク
２０１ｅ  その他のリソース
３０１  システムクラス
３０２  構成機器クラス
３０３  利用機器クラス
３０４  診断書クラス
３０５  固有情報クラス
３０６  設定情報クラス
３０７  状態情報クラス
３０８  事象情報クラス
４００  操作パネル
４０１  初期設定キー
４０２  コピーキー
４０３  コピーサーバーキー
４０４  プリンタキー
４０５  送信キー
４０６  テンキー
４０７  クリア／ストップキー
４０８  スタートキー
４０９  予熱キー
４１０  リセットキー
４２０  タッチパネル
４２１  原稿読み取りボタン
４２２  リストから削除ボタン
４２３  印刷条件ボタン
４２４  文書リスト例１
４２５  文書リスト例２
【図１】
2007082003.tif 000003
【図２】
2007082003.tif 000004
【図３】
2007082003.tif 000005
【図４】
2007082003.tif 000006
【図５】
2007082003.tif 000007
【図６】
2007082003.tif 000008
【図７】
2007082003.tif 000009
【図８】
2007082003.tif 000010
【図９】
2007082003.tif 000011
【図１０】
2007082003.tif 000012
【図１１】
2007082003.tif 000013
【図１２】
2007082003.tif 000014
【図１３】
2007082003.tif 000015
【図１４】
2007082003.tif 000016