(57)【要約】【課題】複数の情報処理装置にそれぞれインストールされている同種のソフトウェアのバージョンを同一のバージョンに統一する場合のユーザの負担を軽減する。【解決手段】インストール要求信号を受信した場合、定期的に取得する定時情報から、インストール対象の複合機１００にインストールされている対象外部アプリ（プラグイン）１１８のバージョン情報を取得するバージョン情報取得部５２０ｄと、取得したバージョン情報を参照して、対象外部アプリ１１８がインストールされており、当該インストールされている対象外部アプリ１１８のバージョンが最新のバージョンと一致しない複合機１００を検索する検索部５２０ｅと、検索された複合機１００に対して最新のバージョンの対象外部アプリ１１８のインストール要求を行うインストール要求部５２０ｆとを備える。【選択図】図９
2011170463.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークを介して接続される複数の情報処理装置それぞれから、各情報処理装置に既にインストールされているソフトウェアのバージョン情報を取得する取得手段と、
インストール対象となる対象ソフトウェアを特定する情報を含むインストール要求信号を受信した場合、前記バージョン情報を参照して、前記対象ソフトウェアがインストールされており、当該インストールされている前記対象ソフトウェアのバージョンが所定のバージョンと一致しない情報処理装置を検索する検索手段と、
前記検索手段で検索された情報処理装置に対して、前記所定のバージョンの対象ソフトウェアのインストール要求信号を送信するインストール要求手段と、
を備えることを特徴とする管理装置。
【請求項２】
前記所定のバージョンとは、前記ネットワークに接続されたソフトウェア管理サーバで管理されている前記対象ソフトウェアの最新バージョンであることを特徴とする請求項１に記載の管理装置。
【請求項３】
前記所定のバージョンとは、ユーザにより予め指定された特定のバージョンであることを特徴とする請求項１に記載の管理装置。
【請求項４】
複数の情報処理装置と、前記複数の情報処理装置にネットワークを介して接続され、前記複数の情報処理装置の状態を管理する管理装置とを備えた情報処理システムであって、
前記管理装置は、
前記複数の情報処理装置それぞれから、各情報処理装置に既にインストールされているソフトウェアのバージョン情報を取得する取得手段と、
インストール対象となる対象ソフトウェアを特定する情報を含むインストール要求信号を受信した場合、前記バージョン情報を参照して、前記対象ソフトウェアがインストールされており、当該インストールされている前記対象ソフトウェアのバージョンが所定のバージョンと一致しない情報処理装置を検索する検索手段と、
前記検索手段で検索された情報処理装置に対して、前記所定のバージョンの対象ソフトウェアのインストール要求信号を送信するインストール要求手段と、
を備えることを特徴とする情報処理システム。
【請求項５】
前記所定のバージョンとは、前記ネットワークに接続されたソフトウェア管理サーバで管理されている前記対象ソフトウェアの最新バージョンであることを特徴とする請求項４に記載の情報処理システム。
【請求項６】
前記所定のバージョンとは、ユーザにより予め指定された特定のバージョンであることを特徴とする請求項４に記載の情報処理システム。
【請求項７】
複数の情報処理装置にネットワークを介して接続され、前記複数の情報処理装置の状態を管理する管理装置で実行されるインストール処理方法であって、
取得手段が、ネットワークを介して接続される複数の情報処理装置それぞれから、各情報処理装置に既にインストールされているソフトウェアのバージョン情報を取得する取得ステップと、
検索手段が、インストール対象となる対象ソフトウェアを特定する情報を含むインストール要求信号を受信した場合、前記バージョン情報を参照して、前記対象ソフトウェアがインストールされており、当該インストールされている前記対象ソフトウェアのバージョンが所定のバージョンと一致しない情報処理装置を検索する検索ステップと、
インストール要求手段が、前記検索ステップで検索された情報処理装置に対して、前記所定のバージョンの対象ソフトウェアのインストール要求信号を送信するインストール要求ステップと、
を含むことを特徴とするインストール処理方法。
【請求項８】
複数の情報処理装置にネットワークを介して接続され、前記複数の情報処理装置の状態を管理する管理装置で実装されるコンピュータに実行させるためのプログラムであって、
取得手段が、ネットワークを介して接続される複数の情報処理装置それぞれから、各情報処理装置に既にインストールされているソフトウェアのバージョン情報を取得する取得ステップと、
検索手段が、インストール対象となる対象ソフトウェアを特定する情報を含むインストール要求信号を受信した場合、前記バージョン情報を参照して、前記対象ソフトウェアがインストールされており、当該インストールされている前記対象ソフトウェアのバージョンが所定のバージョンと一致しない情報処理装置を検索する検索ステップと、
インストール要求手段が、前記検索ステップで検索された情報処理装置に対して、前記所定のバージョンの対象ソフトウェアのインストール要求信号を送信するインストール要求ステップと、
を前記コンピュータに実行させるためのプログラム。
【請求項９】
請求項８に記載のプログラムを記憶したコンピュータ読み取り可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ソフトウェアのインストール処理技術に関する。
【背景技術】
【０００２】
従来、会社、学校、家庭等の同一組織内に設置されたＬＡＮなどの内部ネットワーク上に接続された複数の画像形成装置（プリンタ装置、コピー装置、ファクシミリ装置及びスキャナ装置や、それら各装置の機能を２つ以上有する複合機など）とインターネットなどの外部ネットワークを介して接続され、それら複数の画像形成装置の保守管理を行う中央管理装置を備えた機器管理システムが知られている。
【０００３】
より具体的には、この種の機器管理システムでは、例えば、画像形成装置と外部装置（中央管理装置、ソフトウェア管理サーバ、ライセンス管理サーバなど）との間の処理を仲介する仲介装置が、定時毎に各複合機から、サプライ状態情報、ジャム情報、カウンタ情報、バージョン情報、エラー情報、機器設定情報等から構成される定時情報（機器状態情報）を収集し、該収集した定時情報を中央管理装置に通知することで、メーカ側で画像形成装置の状態を管理することが可能となっている。
【０００４】
また、この種の機器管理システムの画像形成装置では、当該画像形成装置の機能を拡張するアプリケーションソフトウェア（以下、単に「プラグイン」という）を、ソフトウェア管理サーバからダウンロードしてインストールすることが可能となっている。
【０００５】
ところが、この種のプラグインは、比較的短いサイクルで、仕様変更や不具合修正などによるバージョンアップが繰り返し行われるため、複数の画像形成装置それぞれに同種のプラグインがインストールされている態様においては、各画像形成装置においてプラグインが導入された時期の相違により、複数の画像形成装置間でプラグインのバージョンが異なる状況、例えば、最新のバージョンとそれ以外のバージョンとが混在する状況などが発生し、これにより、複数の画像形成装置間で異なる動作を実行する虞があり、それら複数の画像形成装置を利用するユーザの混乱を招く虞があった。
【０００６】
このような不都合を解消するには、複数の画像形成装置それぞれにインストールされている同種のプラグインのバージョンを同じバージョン、例えば、最新バージョンまたはユーザにより指定された特定のバージョンなどに統一すれば良い。
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、従来では、画像形成装置にプラグインをインストールする方法としては、ユーザが所望の画像形成装置毎にインストール作業を行う必要があるため、前記したように、複数の画像形成装置それぞれにインストールされている同種のプラグインのバージョンを同じバージョンに統一する場合には、ユーザがインストールの必要な画像形成装置、例えば、旧バージョンのプラグインがインストールされている画像形成装置毎にインストール作業を行う必要があり、ユーザの負担が甚大であるなどの問題点があった。
【０００８】
また、従来では、ユーザがより容易にアプリケーションソフトウェアのインストール作業を行うことを可能とするような技術が開示されている（例えば、特許文献１参照）。
【０００９】
しかしながら、この特許文献１の技術では、アプリケーションソフトウェアをデジタル複合機（ＭＦＰ）にインストールする場合、ユーザが、インストールを希望する全てのデジタル複合機のＩＰアドレスを入力指定するなどの作業を要するため、前記した従来技術と同様に、複数の画像形成装置間で同種のプラグインのバージョンを同じバージョンに統一する場合には、ユーザの負担が甚大であるなどの問題点が存在する。
【００１０】
そこで、本発明は、前記従来の課題を解決するものであり、複数の情報処理装置にそれぞれインストールされている同種のソフトウェアのバージョンを同一のバージョンに統一する場合のユーザの負担を軽減することが可能な情報処理システム、管理装置、インストール処理方法、プログラム及び記憶媒体を提供することを目的とする。
【課題を解決するための手段】
【００１１】
前記した課題を解決し、目的を達成するために、本発明は、管理装置であって、ネットワークを介して接続される複数の情報処理装置それぞれから、各情報処理装置に既にインストールされているソフトウェアのバージョン情報を取得する取得手段と、インストール対象となる対象ソフトウェアを特定する情報を含むインストール要求信号を受信した場合、前記バージョン情報を参照して、前記対象ソフトウェアがインストールされており、当該インストールされている前記対象ソフトウェアのバージョンが所定のバージョンと一致しない情報処理装置を検索する検索手段と、前記検索手段で検索された情報処理装置に対して、前記所定のバージョンの対象ソフトウェアのインストール要求信号を送信するインストール要求手段と、を備えることを特徴とする。
【００１２】
また、本発明は、複数の情報処理装置と、前記複数の情報処理装置にネットワークを介して接続され、前記複数の情報処理装置の状態を管理する管理装置とを備えた情報処理システムであって、前記管理装置は、前記複数の情報処理装置それぞれから、各情報処理装置に既にインストールされているソフトウェアのバージョン情報を取得する取得手段と、インストール対象となる対象ソフトウェアを特定する情報を含むインストール要求信号を受信した場合、前記バージョン情報を参照して、前記対象ソフトウェアがインストールされており、当該インストールされている前記対象ソフトウェアのバージョンが所定のバージョンと一致しない情報処理装置を検索する検索手段と、前記検索手段で検索された情報処理装置に対して、前記所定のバージョンの対象ソフトウェアのインストール要求信号を送信するインストール要求手段と、を備えることを特徴とする。
【００１３】
また、本発明は、複数の情報処理装置にネットワークを介して接続され、前記複数の情報処理装置の状態を管理する管理装置で実行されるインストール処理方法であって、取得手段が、ネットワークを介して接続される複数の情報処理装置それぞれから、各情報処理装置に既にインストールされているソフトウェアのバージョン情報を取得する取得ステップと、検索手段が、インストール対象となる対象ソフトウェアを特定する情報を含むインストール要求信号を受信した場合、前記バージョン情報を参照して、前記対象ソフトウェアがインストールされており、当該インストールされている前記対象ソフトウェアのバージョンが所定のバージョンと一致しない情報処理装置を検索する検索ステップと、インストール要求手段が、前記検索ステップで検索された情報処理装置に対して、前記所定のバージョンの対象ソフトウェアのインストール要求信号を送信するインストール要求ステップと、を含むことを特徴とする。
【００１４】
また、本発明は、複数の情報処理装置にネットワークを介して接続され、前記複数の情報処理装置の状態を管理する管理装置で実装されるコンピュータに実行させるためのプログラムであって、取得手段が、ネットワークを介して接続される複数の情報処理装置それぞれから、各情報処理装置に既にインストールされているソフトウェアのバージョン情報を取得する取得ステップと、検索手段が、インストール対象となる対象ソフトウェアを特定する情報を含むインストール要求信号を受信した場合、前記バージョン情報を参照して、前記対象ソフトウェアがインストールされており、当該インストールされている前記対象ソフトウェアのバージョンが所定のバージョンと一致しない情報処理装置を検索する検索ステップと、インストール要求手段が、前記検索ステップで検索された情報処理装置に対して、前記所定のバージョンの対象ソフトウェアのインストール要求信号を送信するインストール要求ステップと、を前記コンピュータに実行させるためのプログラムである。
【００１５】
また、本発明は、前記プログラムを記憶したコンピュータ読み取り可能な記憶媒体である。
【発明の効果】
【００１６】
本発明によれば、管理装置が、ネットワークを介して接続される複数の情報処理装置それぞれから、各情報処理装置に既にインストールされているソフトウェアのバージョン情報を取得し、インストール対象となる対象ソフトウェアを特定する情報を含むインストール要求信号を受信した場合、前記バージョン情報を参照して、前記対象ソフトウェアがインストールされており、当該インストールされている前記対象ソフトウェアのバージョンが所定のバージョンと一致しない情報処理装置を検索し、該検索された情報処理装置に対して、前記所定のバージョンの対象ソフトウェアのインストール要求信号を送信するインストール要求手段とを備えるように構成したため、複数の情報処理装置にそれぞれインストールされている同種のソフトウェアのバージョンを予め指定された所定のバージョンに統一する場合のユーザの負担を軽減することができる、という効果を奏する。
【図面の簡単な説明】
【００１７】
【図１】図１は、本実施形態に係わる機器管理システムの概略構成を説明するための概要図である。
【図２】図２は、複合機のハードウェア構成を説明するためのブロック図である。
【図３】図３は、複合機の機能的構成を説明するためのブロック図である。
【図４】図４は、アプリインストール制御サービスの詳細な構成を説明するための機能ブロック図である。
【図５】図５は、仲介装置のハードウェア構成を説明するためのブロック図である。
【図６】図６は、仲介装置の機能的構成を説明するためのブロック図である。
【図７】図７は、アプリインストール管理モジュールの機能的構成を説明する機能ブロック図である。
【図８】図８は、中央管理装置のハードウェア構成を説明するためのブロック図である。
【図９】図９は、中央管理装置の機能的構成を説明するための機能ブロック図である。
【図１０】図１０は、機器管理システムにおいて実行される定時情報の取得処理手順を説明するためのシーケンス図である。
【図１１】図１１は、図１０のシーケンスにおける各複合機の定時情報の取得処理手順の詳細を説明するためのフローチャートである。
【図１２】図１２は、定時情報に含まれるバージョン情報のデータ構造を説明するための図である。
【図１３】図１３は、図１０のシーケンスにおける仲介装置の定時情報の取得処理手順の詳細を説明するためのフローチャートである。
【図１４】図１４は、機器管理システムにおいて実行される複合機に対する外部アプリ（プラグイン）のインストールの処理手順を説明するためのシーケンス図である。
【図１５】図１５は、図１４のシーケンスにおける中央管理装置の処理手順の詳細を説明するためのフローチャートである。
【図１６】図１６は、図１５の処理における具体的な処理を説明するためのシーケンス図である。
【発明を実施するための形態】
【００１８】
以下、本発明の実施形態について添付図面を参照して説明する。
【００１９】
（システム構成）
まず、本実施形態に係わる機器管理システム１の各種構成について説明する。
【００２０】
図１は、本実施形態に係わる機器管理システム１の概略構成を説明するための概要図である。
【００２１】
図１に示すように、この機器管理システム１は、仲介装置２００、ライセンス管理サーバ（ライセンス管理装置）３００、アプリ管理サーバ４００、中央管理装置５００、Ｗｅｂサーバ６００等が、インターネットなどの外部ネットワーク８０を介して接続されている。
【００２２】
また、仲介装置２００と外部ネットワーク８０との間には、ファイアウォール９０が設けられており、仲介装置２００には、複数の複合機（画像形成装置）（複合機（１）１００−１、・・・、複合機（Ｎ）１００−Ｎ）（Ｎ：２以上の任意の整数）（以下、特定しない複合機を単に複合機１００と称する。）が、外部ネットワーク８０とは異なるＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）などの内部ネットワークで接続されている。
【００２３】
ここで、ファイアウォール９０は、外部ネットワーク８０を通じて仲介装置２００に侵入した第三者により不正が行われないように、外部との境界を流れるデータを監視し、不正なアクセスの検出及び遮断を行うものである。
【００２４】
複合機（ＭＦＰ（Ｍｕｌｔｉ  Ｆｕｎｃｔｉｏｎ  Ｐｅｒｉｐｈｅｒａｌｓ））１００は、プリンタ機能、コピー機能、ファクシミリ機能、スキャナ機能等の各機能のうちの少なくとも二つ以上の機能を有し、アプリ管理サーバ４００からダウンロードされたアプリケーションソフトウェア（一般的に「プラグイン（ｐｌｕｇ−ｉｎ）と呼ばれる）（以下、単に「外部アプリ」という。）（図３参照）をインストールすることが可能な装置であり、ＬＡＮなどの内部ネットワークを介して仲介装置２００に通信可能に接続されている。なお、複数の複合機１００−１、・・・、１００−Ｎは、会社、学校、家庭等の同一組織の管理下で設置されるものである。
【００２５】
また、本実施形態の複合機１００は、仲介装置２００から定時情報の取得要求を受信した場合に、サプライ状態情報、ジャム情報、カウンタ情報、バージョン情報、エラー情報、機器設定情報等と、複合機１００に新規に追加された外部アプリ１１８（図３参照）に関するカウンタ情報やパラメータ情報等を含む外部アプリの設定情報とを定時情報１００Ｄ（図１０参照）として、仲介装置２００に送信する。
【００２６】
仲介装置２００は、ライセンス管理サーバ３００、アプリ管理サーバ４００、中央管理装置５００、Ｗｅｂサーバ６００等と、各複合機１００との間で行われる処理を仲介する装置である。
【００２７】
また、本実施形態の仲介装置２００は、複合機１００に対して、一定時間毎に定時情報１００Ｄの送信要求をメソッド単位で送信し、また、送信要求に対応して複合機１００から送信される定時情報１００Ｄを受信し、中央管理装置５００に送信する機能を有している。
【００２８】
ライセンス管理サーバ３００は、アプリ管理サーバ４００からダウンロードされて複合機１００にインストールされる外部アプリのライセンスキーなどを含むライセンス（利用権）データを管理する装置である。
【００２９】
アプリ管理サーバ４００は、複合機１００にインストールされる外部アプリを管理する装置である。
【００３０】
中央管理装置５００は、複合機１００のメーカやサービス提供会社のサービスセンタ等に設置されるサーバ装置であり、仲介装置２００を介して管理対象である複合機１００を遠隔管理する装置である。
【００３１】
なお、この中央管理装置５００は、Ｗｅｂページでユーザインタフェースとなる画面（ＷｅｂＵＩ）を表示するＷｅｂＵＩ画面表示機能を備えており、操作端末と接続することにより、ＷｅｂＵＩから、管理対象となる複合機１００の情報の収集、エラー状態確認などの検索を行うことが可能となっている。
【００３２】
Ｗｅｂサーバ６００は、アプリケーション等のソフトウェアのポータル販売サイトを有するサーバ装置である。即ち、ユーザは、パーソナルコンピュータなどのユーザ端末７００（図１４参照）や複合機１００等から、このＷｅｂサーバ６００のポータル販売サイトにアクセスして、所望の外部アプリを購入することが可能となっている。
【００３３】
図２は、複合機１００のハードウェア構成を説明するためのブロック図である。
【００３４】
図２に示すように、この複合機１００は、コントローラ１０と、操作表示部２０と、エンジン部（Ｅｎｇｉｎ）６０とを主体に構成され、コントローラ１０とエンジン部６０とがＰＣＩ（Ｐｅｒｉｐｈｅｒａｌ  Ｃｏｍｐｏｎｅｎｔ  Ｉｎｔｅｒｆａｃｅ）バスで接続され、コントローラ１０と操作表示部２０とが所定の信号線を介して接続されている。
【００３５】
コントローラ１０は、複合機１００全体の制御、即ち、描画処理や、通信処理や、操作表示部２０に対する操作入力及び表示処理などの各種処理を制御するものであり、本実施形態では、ＣＰＵ１１、システムメモリ（ＭＥＭ−Ｐ）１２、ノースブリッジ（ＮＢ）１３、サウスブリッジ（ＳＢ）１４、ＡＳＩＣ（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）１６、ローカルメモリ（ＭＥＭ−Ｃ）１７、ハードディスク装置（ＨＤＤ：Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）１０３等を有している。
【００３６】
なお、ノースブリッジ（ＮＢ）１３とＡＳＩＣ１６は、ＡＧＰ（Ａｃｃｅｌｅｒａｔｅｄ  Ｇｒａｐｈｉｃｓ  Ｐｏｒｔ）バス１５で接続されており、ＭＥＭ−Ｐ１２は、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）１２ａと、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ)１２ｂを有している。
【００３７】
ＣＰＵ１１は、複合機１００全体を統括的に制御するものであり、ＭＥＭ−Ｐ１２、ＮＢ１３、ＳＢ１４からなるチップセットを介して他の機器と接続される。
【００３８】
ＭＥＭ−Ｐ１２は、プログラムやデータの格納用及び展開用のメモリ、プリンタの描画用のメモリ等として用いられるシステムメモリである。なお、ＲＯＭ１２ａが、プログラムやデータの格納用のメモリとして用いられる読み出し専用のメモリであり、ＲＡＭ１２ｂが、プログラムやデータの展開用のメモリやプリンタの描画用のメモリなどとして用いられる書き込み／読み出し用のメモリである。
【００３９】
ＮＢ１３は、ＣＰＵ１１と、ＭＥＭ−Ｐ１２、ＳＢ１４、ＡＳＩＣ１６等を接続するためのブリッジであり、ＭＥＭ−Ｐ１２に対する読み書きなどを制御するメモリコントローラと、ＰＣＩマスタ及びＡＰターゲットとを有する。
【００４０】
ＳＢ１４は、ＮＢ１３と、ＰＣＩデバイス、周辺デバイス等とを接続するためのブリッジである。なお、このＳＢ１４は、ＰＣＩバスを介してＮＢ１３と接続されており、このＰＣＩバスには、ネットワークインタフェース（Ｉ／Ｆ）部なども接続される。
【００４１】
ＡＧＰ１５は、グラフィック処理を高速化するために提案されたグラフィックスアクセラレータカード用バスインタフェースであり、ＭＥＭ−Ｐ１２に高スループットで直接アクセスすることにより、グラフィックスアクセラレータカードを高速にするものである。
【００４２】
ＡＳＩＣ１６は、画像処理用のハードウェア要素を有する画像処理用途向けのＩＣ（Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）であり、ＡＧＰ１５、ＰＣＩバス、ＨＤＤ１０３及びＭＥＭ−Ｃ１７をそれぞれ接続するブリッジの役割を有する。
【００４３】
また、このＡＳＩＣ１６は、ＰＣＩターゲットと、ＡＧＰマスタと、このＡＳＩＣ１６の中核をなすアービタ（ＡＲＢ）と、ＭＥＭ−Ｃ１７を制御するメモリコントローラと、ハードウェアロジックなどにより画像データの回転などを行う複数のＤＭＡＣ（Ｄｉｒｅｃｔ  Ｍｅｍｏｒｙ  Ａｃｃｅｓｓ  Ｃｏｎｔｒｏｌｌｅｒ）と、エンジン部６０との間でＰＣＩバスを介したデータ転送を行うＰＣＩユニットなどから構成される。
【００４４】
さらに、このＡＳＩＣ１６には、ＰＣＩバスを介してＦＣＵ（Ｆａｃｓｉｍｉｌｅ  Ｃｏｎｔｒｏｌ  Ｕｎｉｔ）３０、ＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）４０、ＩＥＥＥ１３９４（ｔｈｅ  Ｉｎｓｔｉｔｕｔｅ  ｏｆ  Ｅｌｅｃｔｒｉｃａｌ  ａｎｄ  Ｅｌｅｃｔｒｏｎｉｃｓ  Ｅｎｇｉｎｅｅｒｓ  １３９４）インタフェース５０が接続されるとともに、操作表示部２０が信号線を介して接続されている。
【００４５】
ＭＥＭ−Ｃ１７は、コピー用画像バッファ、符号バッファ等として用いられるローカルメモリである。
【００４６】
ハードディスク装置（ＨＤＤ）１０３は、画像データ、プログラム、フォントデータ、フォーム等の蓄積を行うためのストレージである。
【００４７】
操作表示部２０は、複合機１００の各種機能を利用するための操作方法を表示するとともに、ユーザからの操作入力を受け付けるためのユーザインタフェースである。
【００４８】
エンジン部６０は、ＰＣＩバスに接続可能なプリンタエンジンなどであり、例えば、白黒プロッタ、１ドラムカラープロッタ、４ドラムカラープロッタ、スキャナまたはファックスユニット等である。なお、このエンジン部６０には、プロッタなどのいわゆるエンジン部分に加えて、誤差拡散やガンマ変換などの画像処理部分が含まれる。
【００４９】
図３は、複合機１００の機能的構成を説明するためのブロック図である。
【００５０】
図３に示すように、複合機１００は、白黒レーザプリンタ（Ｂ＆Ｗ  ＬＰ）１０１、カラーレーザプリンタ（Ｃｏｌｏｒ  ＬＰ）１０２、スキャナまたはファックスユニット、ハードディスク装置（ＨＤＤ）１０３、メモリやネットワークインタフェースなどのその他のハードウェアリソース１０４、通信Ｉ／Ｆ１０５等のエンジン部６０としてのハードウェアを有するとともに、プラットホーム１２０とアプリケーション１３０から構成されるソフトウェア群１１０を有している。
【００５１】
プラットホーム１２０は、汎用ＯＳ１２１と、一または複数のハードウェア資源の管理を行い、コントロールサービスからの獲得要求を調停するシステムリソースマネージャ（ＳＲＭ）１２３と、アプリケーションからの処理要求を解釈してハードウェア資源の獲得要求を発生させる種々のコントロールサービス（１２２、１２４〜１２９、１３１等）とを有している。なお、プラットホーム１２０は、予め定義された関数によりアプリケーション１３０から処理要求を受信可能とするアプリケーションプログラムインタフェース（ＡＰＩ）を有している。
【００５２】
ここで、汎用ＯＳ１２１は、ＵＮＩＸ（登録商標）などの汎用オペレーティングシステムであり、プラットホーム１２０及びアプリケーション１３０の各ソフトウェアをそれぞれプロセスとして並列に実行する。
【００５３】
また、前記のコントロールサービスとしては、ＳＣＳ（システムコントロールサービス）１２２、ＥＣＳ（エンジンコントロールサービス）１２４、ＭＣＳ（メモリコントロールサービス）１２５、ＯＣＳ（オペレーションパネルコントロールサービス）１２６、ＦＣＳ（ファックスコントロールサービス）１２７、ＮＣＳ（ネットワークコントロールサービス）１２８、ＮＲＳ（ニューリモートサービス）１２９、アプリインストール制御サービス１３１等を有している。
【００５４】
ＳＣＳ１２２のプロセスは、アプリ管理、操作部制御、システム画面表示、ＬＥＤ表示、リソース管理、割り込みアプリ制御等を行うものである。
【００５５】
ＳＲＭ１２３のプロセスは、ＳＣＳ１２２とともにシステムの制御及びリソースの管理を行うものである。また、ＳＲＭ１２３のプロセスは、スキャナ部やプリンタ部などのエンジン、メモリ、ＨＤＤファイル、ホストＩ／Ｏ（セントロＩ／Ｆ、ネットワークＩ／Ｆ、ＩＥＥＥ１３９４  Ｉ／Ｆ、Ｒ２３２Ｃ  Ｉ／Ｆ等）のハードウェア資源を利用する上位層からの要求に従って調停を行い、実行制御する。
【００５６】
より具体的には、ＳＲＭ１２３は、要求されたハードウェア資源が利用可能であるか、即ち、他の要求により利用されていないかどうかを判断し、利用可能であれば要求されたハードウェア資源が利用可能である旨を上位層に伝える処理を実行する。また、ＳＲＭ１２３は、上位層からの要求に対してハードウェア資源の利用スケジューリングを行い、プリンタエンジンにより紙搬送と作像動作、メモリ確保、ファイル生成等の要求内容を直接実施する。
【００５７】
ＥＣＳ１２４のプロセスは、白黒レーザプリンタ（Ｂ＆Ｗ  ＬＰ）１０１、カラーレーザプリンタ（Ｃｏｌｏｒ  ＬＰ）１０２、その他のハードウェアリソース１０４等のエンジン部６０の制御を行うものである。
【００５８】
ＭＣＳ１２５のプロセスは、画像メモリの取得及び解放、ハードディスク装置（ＨＤＤ）１０３の利用、画像データの圧縮及び伸張等を行うものである。
【００５９】
ＯＣＳ１２６のプロセスは、オペレータ（ユーザ）と本体制御間の情報伝達手段となる操作表示部（オペレーションパネル）２０（図２参照）の制御を行うものである。
【００６０】
より具体的には、ＯＣＳ１２６のプロセスは、操作表示部２０からキー押下またはタッチ操作をキーイベントとして取得し、該取得したキーに対応したキーイベント関数をＳＣＳ１２２に送信するＯＣＳプロセスの部分と、アプリケーション１３０または各種コントロールサービスからの要求により操作表示部２０に各種画面を描画出力する描画関数や、その他、操作表示部２０に対する制御を行う関数などが予め登録されたＯＣＳライブラリの部分とから構成される。なお、ＯＣＳライブラリは、アプリケーション１３０及びコントロールサービスの各モジュールにリンクされて実装されている。なお、ＯＣＳ１２６の全てをプロセスとして動作させるように構成しても良いし、ＯＣＳ１２６の全てをＯＣＳライブラリとして構成しても良い。
【００６１】
ＦＣＳ１２７のプロセスは、システムコントローラの各アプリ層からＰＳＴＮ／ＩＳＤＮ網を利用したファクシミリ送受信、ＢＫＭ（バックアップＳＲＡＭ）で管理されている各種ファクシミリデータの登録／引用、ファクシミリ読み取り、ファクシミリ受信印刷、融合送受信等を行うためのＡＰＩを提供するものである。
【００６２】
ＮＣＳ１２８のプロセスは、ネットワークＩ／Ｏを必要とするアプリケーションに対して共通に利用できるサービスを提供するものであり、より具体的には、ネットワーク側から各プロトコルによって受信したデータを各アプリケーションに振り分けたり、アプリケーションからデータをネットワーク側に送信したりする際の仲介を行うものである。
【００６３】
ＮＲＳ１２９は、ネットワークを介してデータを送受信する際のデータの変換を行うなど、ネットワークを介した遠隔管理に関する機能及びスケジューラ機能を実現するアプリケーションである。
【００６４】
アプリインストール制御サービス１３１は、複合機１００で利用されるアプリケーションソフトのインストールに係わる処理を実行するものであり、具体的には、外部アプリ１１８のインストール処理を実行するとともに、インストールされた外部アプリ１１８のライセンスを取得する処理を実行する。また、仲介装置２００からの定時情報の送信要求を受けて、複合機１００のハードディスク装置（ＨＤＤ）１０３やＲＡＭ１２ｂなどの記憶手段に記憶されている定時情報１００Ｄを取得し、仲介装置２００に送信する。
【００６５】
図４は、アプリインストール制御サービス１３１の詳細な構成を説明するための機能ブロック図である。
【００６６】
図４に示すように、アプリインストール制御サービス１３１は、インストール制御部１３１ａ、ライセンス取得部１３１ｂ、定時情報取得部１３１ｃ、データ受信部１３１ｄ、データ送信部１３１ｅ等を有している。
【００６７】
ここで、インストール制御部１３１ａは、仲介装置２００を介して受信した外部アプリ１１８を複合機１００にインストールする。
【００６８】
ライセンス取得部１３１ｂは、仲介装置２００を介して受信したライセンス情報によって、該当する外部アプリ１１８のライセンスを取得する。
【００６９】
定時情報取得部１３１ｃは、仲介装置２００から定時毎に定時情報１００Ｄの送信要求を受信した場合に、複合機１００のハードディスク装置（ＨＤＤ）１０３やＲＡＭ１２ｂなどの記憶手段に記憶されている複合機１００のサプライ情報、ジャム情報、カウンタ情報、バージョン情報、エラー情報、機器設定情報等の機器状態に関する情報を取得する。
【００７０】
データ受信部１３１ｄは、仲介装置２００から定時毎に送信される定時情報１００Ｄの送信要求を受信する。
【００７１】
データ送信部１３１ｅは、管理情報取得部１３１ｃによって取得された機器状態に関する情報を含んだ定時情報１００Ｄを仲介装置２００に送信する。
【００７２】
なお、前記したアプリインストール制御サービス１３１の各部（インストール制御部１３１ａ、ライセンス取得部１３１ｂ、管理情報取得部１３１ｃ、データ受信部１３１ｄ、データ送信部１３１ｅ等）は、ＣＰＵ（プロセッサ）１１がＲＯＭ１２ａまたはＨＤＤ１０３などに記憶されているプログラムをＲＡＭ１２ｂ上に展開して実行することにより実現されるものである。
【００７３】
図３に戻って、アプリケーション１３０は、ページ記述言語（ＰＤＬ）、ＰＣＬおよびポストスクリプト（ＰＳ）を有するプリンタ用のアプリケーションであるプリンタアプリ１１１と、コピー用アプリケーションであるコピーアプリ１１２と、ファクシミリ用アプリケーションであるファックスアプリ１１３と、スキャナ用アプリケーションであるスキャナアプリ１１４と、ネットワークファイル用アプリケーションであるネットファイルアプリ１１５と、工程検査用アプリケーションである工程検査アプリ１１６と、インターネットに接続されたＰＣ等のクライアント端末に対してＷＥＢサーバ（ｈｔｔｐサーバ）として動作し、クライアント端末上で動作するＷＥＢブラウザに各種画面を表示するＷＥＢアプリ１１７とを有している。
【００７４】
アプリケーション１３０の各プロセス、コントロールサービスの各プロセスは、関数呼び出しとその戻り値送信およびメッセージの送受信によってプロセス間通信を行いながら、コピー、プリンタ、スキャナ、ファクシミリなどの画像形成処理にかかるユーザサービスを実現している。
【００７５】
このように、実施の形態１にかかる複合機１００には、複数のアプリケーション１３０および複数のコントロールサービスが存在し、いずれもプロセスとして動作している。そして、これらの各プロセス内部には、一または複数のスレッドが生成されて、スレッド単位の並列実行が行われる。そして、コントロールサービスがアプリケーション１３０に対し共通サービスを提供しており、このため、これらの多数のプロセスが並列動作、およびスレッドの並列動作を行って互いにプロセス間通信を行って協調動作をしながら、コピー、プリンタ、スキャナ、ファクシミリなどの画像形成処理にかかるユーザサービスを提供するようになっている。
【００７６】
また、複合機１００には、コントロールサービス層の上のアプリケーション層に、複合機１００の顧客、サードベンダなどの第三者が開発した外部アプリ１１８を搭載することが可能となっている。なお、図３の例では、外部アプリ１１８として、複数の外部アプリ（１）１１８−１、・・・、外部アプリ（Ｍ）１１８−Ｍ（Ｍ：２以上の任意の整数）（以下、特定しない外部アプリを単に外部アプリ１１８と称する。）が搭載されている様子を示しているが、これに限らず、一つの外部アプリのみを搭載することも可能である。
【００７７】
なお、本実施形態の複合機１００では、複数のアプリケーション１３０のプロセスと複数のコントロールサービスのプロセスとが動作しているが、アプリケーション１３０とコントロールサービスのプロセスがそれぞれ単一の構成とすることも可能である。また、各アプリケーション１３０は、アプリケーションごとに追加または削除することができる。即ち、前記したように、外部アプリ１１８をインストール可能であり、かつアンインストールも可能となっている。
【００７８】
ここで、外部アプリ１１８は、複合機１００に出荷当初から搭載されている各種アプリケーション１１１〜１１７の機能を拡張するために追加される機能拡張用のアプリケーションソフトである。そして、この外部アプリ１１８は、出荷当初から搭載されている各種アプリケーション１１１〜１１７とは異なり、仕様変更、不具合修正等により比較的短いサイクルでバージョンアップされるものである。
【００７９】
図５は、仲介装置２００のハードウェア構成を説明するためのブロック図である。
【００８０】
図５に示すように、仲介装置２００は、通常のコンピュータを利用したハードウェア構成となっており、例えば、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）２０１と、ＲＴＣ（Ｒｅａｌ  Ｔｉｍｅ  Ｃｌｏｃｋ）２０２と、ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）２０３と、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）２０４と、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）２０５と、外部記憶装置２０６と、ＮＩＣ（Ｎｅｔｗｏｒｋ  Ｉｎｔｅｒｆａｃｅ  Ｃａｒｄ）２０７と、表示装置２０８と、入力装置２０９とを備えている。なお、各構成要素２０１〜２０９は、バス２１０で相互に接続されている。
【００８１】
ここで、ＣＰＵ２０１は、この仲介装置２００を統括的に制御するものである。また、ＲＴＣ２０２は、発振器、分周器等を備え、クロック信号を生成する内部時計である。また、ＨＤＤ２０３及びＲＯＭ２０４は、不揮発性記憶媒体であり、仲介装置２００で実行される種々のプログラムなどを記憶するものである。また、ＲＡＭ２０５は、ＲＯＭ２０４に記憶された各種プログラムを実行する際に各種データを維持的に保持するものである。また、外部記憶装置２０６は、ＣＤ−ＲＷ（Ｃｏｍｐａｃｔ  Ｄｉｓｋ  Ｒｅｗｒｉｔａｂｌｅ）などの外部記録媒体に対する読み書き及び書き込み処理を行う装置である。また、ＮＩＣ２０７は、内部ネットワークを介して複合機１００と、外部ネットワーク８０を介して外部装置（ライセンス管理サーバ３００、ソフトウェア配信サーバ４００、中央管理装置５００等）と接続するインタフェースである。また、表示装置２０８は、液晶パネルなどを利用した表示装置である。また、入力装置２０９は、キーボードやマウスなどの入力装置である。
【００８２】
図６は、仲介装置２００の機能的構成を説明するためのブロック図である。
【００８３】
図６に示すように、仲介装置２００は、アプリケーション層２７０、サービス層２８０及びプロトコル層２９０の３層から構成されている。
【００８４】
アプリケーション層２７０は、デバイス制御モジュール２７１とＮＲＳ機能モジュール群２７２とを有している。
【００８５】
デバイス制御モジュール２７１は、複合機１００の情報管理や通信の設定等を行うためのプログラムである。
【００８６】
ＮＲＳ機能モジュール群２７２は、複合機１００のカウンタ収集、即ち、定時情報１００Ｄの収集や、複合機１００の設定変更や、複合機１００のエラー状態確認や、中央管理装置５００へのカウンタ通知や、異常通知などの各メソッドを備え、中央管理装置５００からの要求に従って、複合機１００に動作を行なわせたりするためのプログラムである。また、本実施形態のＮＲＳ機能モジュール群２７２は、アプリインストール管理モジュール２７３を備えている。
【００８７】
サービス層２８０は、セキュリティサービス２８１、通信サービス２８２、スケジューラサービス２８３を備えている。
【００８８】
セキュリティサービス２８１は、内部情報等の外部への不正流出を予防するなどのジョブを生成して実行するモジュールである。
【００８９】
通信サービス２８２は、仲介装置２００と複合機１００との間の情報の送受信、及び、仲介装置２００と中央管理装置５００との間の情報の送受信を実現するモジュールである。
【００９０】
スケジューラサービス２８３は、所定の設定時間情報に基づいて、各メソッド群の処理を実施させるモジュールである。
【００９１】
プロトコル層２９０は、情報の送受信対象に応じたプロトコルを用いて情報の送受信を行うジョブを生成して実行するモジュールである。
【００９２】
図７は、アプリインストール管理モジュール２７３の機能的構成を説明する機能ブロック図である。
【００９３】
図７に示すように、このアプリインストール管理モジュール２７３は、定時管理部２７３ａ、機器状態管理部２７３ｂ、データ受信部２７３ｃ、データ送信部２７３ｄ等を有している。
【００９４】
定時管理部２７３ａは、スケジューラなどにより定時情報１００Ｄの取得要求を複合機１００に送信する時刻と達したか否か、即ち、中央管理装置５００への定時情報１００Ｄの通知の時刻に達したか否かを判定する。
【００９５】
機器状態管理部２７３ｂは、定時管理部２７３ａによって定時になった旨、即ち、一定時間が経過した旨の通知を受けた場合、後述のデータ送信部２７３ｄに複合機１００に対する定時情報１００Ｄの送信要求を出力する。また、この機器状態管理部２７３ｂは、複合機１００にインストールされている外部アプリ１１８の検索を行う。
【００９６】
データ受信部２７３ｃは、各複合機１００から、外部アプリ１１８のバージョンを示す情報（バージョン情報）を含む定時情報１００Ｄを受信する。
【００９７】
データ送信部２７３ｄは、機器状態管理部２７３ｂから入力した定時情報１００Ｄの送信要求を各複合機１００に送信するとともに、データ受信部２７３ｃで受信した各複合機１００からの定時情報１００Ｄを中央管理装置５００に送信する。また、このデータ送信部２７３ｄは、中央管理装置５００を介してアプリ管理サーバ４００から取得した外部アプリ１１８と、中央管理装置５００を介してライセンス管理サーバ３００から取得したライセンスとを複合機１００に送信する。
【００９８】
なお、前記アプリインストール管理モジュール２７３の各部（定時管理部２７３ａ、機器状態管理部２７３ｂ、データ受信部２７３ｃ、データ送信部２７３ｄ等）は、ＣＰＵ（プロセッサ）２０１がＨＤＤ２０３またはＲＯＭ２０４などに記憶されているプログラムをＲＡＭ２０５上に展開して実行することにより実現されるものである。
【００９９】
図８は、中央管理装置５００のハードウェア構成を説明するためのブロック図である。
【０１００】
図８に示すように、中央管理装置５００は、制御部５０１と、記憶部５０２と、入出力部５０３と、ネットワークＩ／Ｆ５０４とを主体に構成される。なお、各構成要素部は、バス５０５で相互に接続されている。
【０１０１】
ここで、制御部５０１は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）５０１ａ、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）５０１ｂ、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）５０１ｃ等から構成され、中央管理装置５００の制御全般を行い、複合機１００や仲介装置２００からの定時情報１００Ｄの受信機能を実現し、受信した定時情報１００Ｄによって複合機１００及び仲介装置２００の管理を行う。
【０１０２】
記憶部５０２は、各種情報を蓄積するものであり、パラメータ記憶エリア５０２ａとカウンタ記憶エリア５０２ｂとを有している。ここで、パラメータ記憶エリア５０２ａには、仲介装置２００や中央管理装置５００が複合機１００を管理する際に用いる各種管理パラメータや、中央管理装置５００で実行される管理プログラムや、オペレータが入力するデータなどが記憶される。また、カウンタ記憶エリア５０２ｃには、複合機１００における印刷枚数やスキャナ枚数等のカウンタ値が記憶される。
【０１０３】
入出力部５０３は、キーボード、マウス、ディスプレイ等で構成されたオペレータによる各種データの入力インタフェースである。
【０１０４】
ネットワークＩ／Ｆ５０４は、ネットワーク８０と通信接続するためのインタフェースである。
【０１０５】
図９は、中央管理装置５００の機能的構成を説明するための機能ブロック図である。
【０１０６】
図９に示すように、中央管理装置５００は、機能的構成として、機器状態管理モジュール５１０とアプリインストール処理モジュール５２０などを有している。
【０１０７】
機器状態管理モジュール５１０は、各複合機１００から送信された定時情報１００Ｄを仲介装置２００経由で受信する定時情報取得部５１０ａを有し、この定時情報取得部５１０ａで受信した定時情報１００Ｄに基づいて各複合機１００の機器状態を管理する処理を行うものである。
【０１０８】
アプリインストール処理モジュール５２０は、データ送受信部５２０ａ、アプリ取得部５２０ｂ、ライセンス取得部５２０ｃ、バージョン情報取得部５２０ｄ、検索部５２０ｅ、インストール要求部５２０ｆ等を有し、管理対象の複合機１００に対してアプリ管理サーバ４００から取得した外部アプリ１１８をインストールさせる処理を実行するものである。
【０１０９】
ここで、データ送受信部５２０ａは、Ｗｅｂサーバ（ポータルサイト）６００からのインストール要求信号（即ち、インストール要求ソフト名やプロダクトキーの情報を含むインストール要求信号）を受信したり、アプリ管理サーバ４００にソフトウェアの取得要求を送信したり、ライセンス管理サーバ３００にライセンスの取得要求を送信したり、複合機１００にインストール要求を送信するなどの各種データの送受信処理を行う。
【０１１０】
アプリ取得部５２０ｂは、データ送受信部５２０ａを介してＷｅｂサーバ６００からのインストール要求信号を受信した場合に、そのインストール要求信号で特定される外部アプリ１１８の割り出しを要求するソフトウェア情報取得信号を生成してデータ送受信部５２０ａに出力する。これにより、データ送受信部５２０ａがソフトウェア情報取得信号をアプリ管理サーバ４００に送信する。
【０１１１】
また、アプリ取得部５２０ｂは、データ送受信部５２０ａを介して、ソフトウェア情報取得信号に対応してアプリ管理サーバ４００から送信された外部アプリ情報、即ち、割り出された外部アプリ１１８を示す情報を取得した場合に、外部アプリ情報で特定される外部アプリ１１８の取得を要求する外部アプリ取得要求信号を生成してデータ送受信部５２０ａに出力する。その結果、データ送受信部５２０ａが外部アプリ取得要求信号をアプリ管理サーバ４００に送信することで、アプリ取得部５２０ｂは、データ送受信部５２０ａを介して、外部アプリ取得要求信号に対応してアプリ管理サーバ４００から送信された外部アプリ１１８を含む外部アプリデータを取得する。
【０１１２】
なお、この実施形態のアプリ管理サーバ４００では、取得要求のあった外部アプリ１１８として、最新のバージョンの外部アプリ１１８を選択するようになっている。
【０１１３】
ライセンス取得部５２０ｃは、アプリ取得部５２０ｂで取得した外部アプリ１１８に対応したライセンスの取得を要求するライセンス取得要求を生成してデータ送受信部５２０ａに出力する。その結果、データ送受信部５２０ａがライセンス取得要求信号をライセンス管理サーバ３００に送信することで、ライセンス取得部５２０ｃは、データ送受信部５２０ａを介して、ライセンス取得要求信号に対応してライセンス管理サーバ３００から送信されたライセンスデータを取得する。
【０１１４】
バージョン情報取得部５２０ｄは、アプリインストール処理モジュール５２０が、データ送受信部５２０ａを介して、Ｗｅｂサーバ（ポータルサイト）６００からのインストール要求を受信して、アプリ取得部５２０ｂが外部アプリデータを取得し、ライセンス取得部５２０ｃがライセンスデータを取得した後、定時情報取得部５１０ａで取得した定時情報（機器状態情報）１００Ｄから、ユーザの管理下で設置された複数の複合機１００にそれぞれインストールされている対象の外部アプリ１１８のバージョンを示すバージョン情報を取得する。
【０１１５】
検索部５２０ｅは、バージョン情報取得部５２０ｄで取得したバージョン情報を基に、中央管理装置に登録されている複数の複合機１００、即ち、インストール要求を行ったユーザの管理下に設置された複数の複合機１００の中から、対象の外部アプリ１１８がインストールされており、当該インストールされている対象の外部アプリ１１８のバージョンが予め指定された指定のバージョン（即ち、最新のバージョン）と一致しない複合機１００を検索する。
【０１１６】
インストール要求部５２０ｆは、検索部５２０ｅで検索された複合機１００に、指定のバージョン（最新のバージョン）の対象の外部アプリ１１８をインストールさせるためのインストール要求信号、即ち、対象の外部アプリ１１８を含む外部アプリデータ及び対象の外部アプリ１１８に対応したライセンスデータを含むインストール要求信号を生成してデータ送受信部５２０ａに出力する。その結果、データ送受信部５２０ａがインストール要求信号を対象の複合機１００に送信することで、当該対象の複合機１００において対象の外部アプリ１１８のインストール処理が実行される。
【０１１７】
なお、前記アプリインストール処理モジュール５２０の各部（データ送受信部５２０ａ、アプリ取得部５２０ｂ、ライセンス取得部５２０ｃ、バージョン情報取得部５２０ｄ、検索部５２０ｅ、インストール要求部５２０ｆ等）は、ＣＰＵ（プロセッサ）５０１ａがＲＯＭ５０１ｂなどに記憶されているプログラムをＲＡＭ５０１ｃ上に展開して実行することにより実現されるものである。
【０１１８】
（処理動作）
次に、前記説明した構成の機器管理システム１における各種処理動作について説明する。
【０１１９】
図１０は、機器管理システム１において実行される定時情報の取得処理手順を説明するためのシーケンス図である。
【０１２０】
図１０に示すように、このシーケンスでは、まず、仲介装置２００が、定時情報１００Ｄの取得要求を送信する時刻となった場合に、各複合機１００ａ〜１００ｃに対して定時情報１００Ｄの取得要求を送信する（ステップＳ１１）。
【０１２１】
すると、取得要求を受信した各複合機１００ａ〜１００ｃが、自己のＲＡＭ１２ｂに保存されている、サプライ情報、ジャム情報、カウンタ情報、バージョン情報、エラー情報、機器設定情報等の機器状態に関する情報を取得する（ステップＳ１２）。
【０１２２】
続いて、各複合機１００ａ〜１００ｃが、前記取得した機器状態に関する情報を含む定時情報１００Ｄを仲介装置２００に送信する（ステップＳ１３）。
【０１２３】
その後、仲介装置２００が、各複合機１００ａ〜１００ｃから定時情報１００Ｄを受信すると、受信した定時情報１００Ｄを中央管理装置５００に送信するとともに、次に定時情報１００Ｄの取得要求を送信する時刻を設定する（ステップＳ１４）。
【０１２４】
図１１は、図１０のシーケンスにおける各複合機１００ａ〜１００ｃの定時情報の取得処理手順の詳細を説明するためのフローチャートである。
【０１２５】
図１１に示すように、各複合機１００ａ〜１００ｃでは、ステップＳ１０１において、アプリインストール制御サービス１３１のデータ受信部１３１ｄが、仲介装置２００から定時情報１００Ｄの取得要求を受信すると、続いて、ステップＳ１０２〜ステップＳ１０７において、定時情報取得部１３１ｃが、ＲＡＭ１２ｂに保存されている、サプライ情報、ジャム情報、カウンタ情報、バージョン情報、エラー情報、機器設定情報等の機器状態に関する情報を取得する。
【０１２６】
続いて、ステップＳ１０８において、データ送信部１３１ｅが、ステップＳ１０２〜ステップＳ１０７の処理において、定時情報取得部１３１ｃが取得した機器状態に関する情報を含む定時情報１００Ｄを仲介装置２００に送信し、この一連の処理を終了する。
【０１２７】
なお、図１２は、図１０及び図１１で説明した定時情報１００Ｄに含まれるバージョン情報のデータ構造を説明するための図である。
【０１２８】
図１２に示すように、外部アプリ１１８のバージョン情報は、複数の外部アプリ１（プラグイン１）、外部アプリ２（２）、・・・、外部アプリＬ（Ｌ）の情報で構成され、各外部アプリ（プラグイン）の情報は、プログラム名、部番、バージョン等から構成されている。
【０１２９】
ここで、プログラム名とは、該当する外部アプリ（プラグイン）のプログラムの名称であり、部番とは、該当する外部アプリ（プラグイン）の属する部の番号のことであり、バージョンとは、該当する外部アプリ（プラグイン）の改訂や改良などの進み具合を表す数値を示すバージョン番号のことである。
【０１３０】
なお、各外部アプリ１（プラグイン１）、外部アプリ２（２）、・・・、外部アプリＬ（Ｌ）の情報には、バージョン別の固有のアプリＩＤ（識別情報）が対応付けられている。例えば、バージョン１．１の外部アプリ１（プラグイン１）の情報には、アプリＩＤ「００１」が対応付けられ、バージョン１．２の外部アプリ１（プラグイン１）の情報には、アプリＩＤ「００２」が対応付けられるなどのようになっている。
【０１３１】
図１３は、図１０のシーケンスにおける仲介装置２００の定時情報の取得処理手順の詳細を説明するためのフローチャートである。
【０１３２】
図１３に示すように、仲介装置２００では、ステップＳ２０１において、アプリインストール管理モジュール２７３の定時管理部２７３ａが、スケジューラなどにより定時情報１００Ｄの取得要求を送信する時刻に達したか否か、即ち、中央管理装置５００への定時情報１００Ｄの通知の時刻に達したか否かを判定する。
【０１３３】
この判定の結果、定時情報１００Ｄの通知の時刻に達していると判定された場合（ステップＳ２０１：ＹＥＳ）、続いて、ステップＳ２０２において、データ送信部２７３ｄが、機器状態管理部２７３ｂから入力した各複合機１００ａ〜１００ｃに対する定時情報１００Ｄの送信要求を各複合機１００ａ〜１００ｃに送信する。そして、この送信要求に対応して、各複合機１００ａ〜１００ｃから送信された定時情報１００Ｄを、データ受信部２７３ｃが受信する（ステップＳ２０２）。
【０１３４】
続いて、ステップＳ２０３において、データ送信部２７３ｄが、ステップＳ２０２の処理で受信した定時情報１００Ｄを中央管理装置５００に送信し、続いて、ステップＳ２０４において、定時管理部２７３ａが、次に定時情報１００Ｄの取得要求を送信する時刻を設定して、この一連の処理を終了する。
【０１３５】
図１４は、機器管理システム１において実行される複合機１００に対する外部アプリ（プラグイン）のインストールの処理手順を説明するためのシーケンス図である。
【０１３６】
図１４に示すように、このシーケンスでは、まず、ユーザのインストール要求指示に基づきパーソナルコンピュータなどのユーザ端末装置７００からＷＥｂサーバ（ポータルサイト）６００に対してインストール対象となる対象の外部アプリ（即ち、この実施形態では、最新のバージョンへのバージョンアップの対象となる外部アプリ）１１８のインストール要求が送信されると（ステップＳ２１）、続いて、Ｗｅｂサーバ（ポータルサイト）６００から中央管理装置５００に外部アプリ名（プログラム名）、固有のアプリＩＤ、プロダクトキー等を含むインストール要求が送信される（ステップＳ２２）。
【０１３７】
なお、本実施形態では、ユーザは、Ｗｅｂサーバ（ポータルサイト）６００において、自己の管理下で設置された複数の複合機１００を個別にインストール対象の複合機として指定するような煩雑な操作を行うことなく、ユーザを識別する情報（ユーザＩＤ）と対象の外部アプリ１１８を指定するという簡単な操作を行うだけで良く、その操作に基づいて、Ｗｅｂサーバ（ポータルサイト）６００からユーザの管理下に設置された全ての複合機１００に対するインストールを要求するインストール要求信号が中央管理装置５００に送信されるようになっている。
【０１３８】
すると、インストール要求を受信した中央管理装置５００が、アプリ管理サーバ４００に対してインストール対象となる対象の外部アプリ１１８のソフトウェア情報の取得要求を送信する（ステップＳ２３）。これにより、ソフトウェア情報の取得要求を受信したアプリ管理サーバ４００が、該当するソフトウェア情報を中央管理装置５００に送信する（ステップＳ２４）。即ち、ステップＳ２３及びステップＳ２４の処理が、インストール対象となる対象の外部アプリ１１８の割り出し処理である。
【０１３９】
続いて、ソフトウェア情報を受信した中央管理装置５００が、当該取得したソフトウェア情報を基に、アプリ管理サーバ４００に対して対象の外部アプリ１１８の取得要求を送信する（ステップＳ２５）。これにより、対象の外部アプリ１１８の取得要求を受信したアプリ管理サーバ４００が、該当する対象の外部アプリ１１８（ソフトウェア本体部）を含む外部アプリデータを中央管理装置５００に送信する（ステップＳ２６）。
【０１４０】
続いて、外部アプリデータを受信した中央管理装置５００が、ライセンス管理サーバ３００に対して対象の外部アプリ１１８のライセンスの取得要求を送信する（ステップＳ２７）。これにより、ライセンスの取得要求を受信したライセンス管理サーバ３００が、対象の外部アプリ１１８に対応するライセンスキーなどを含むライセンスデータを中央管理装置５００に送信する（ステップＳ２８）。
【０１４１】
続いて、ライセンスデータを受信した中央管理装置５００が、定時毎に仲介装置２００を介して受信する各複合機１００の定時情報１００Ｄに含まれるバージョン情報（バージョン別の固有のアプリＩＤ）と、受信したインストール要求信号に含まれる対象の外部アプリ１１８の固有のアプリＩＤなどに基づいて、各複合機１００にインストールされている対象の外部アプリ１１８のバージョンが最新のバージョンであるか否かの判定を行う（ステップＳ２９）。
【０１４２】
続いて、中央管理装置５００が、仲介装置２００に対して、上記ステップＳ２９の判定の結果、対象の外部アプリ１１８がインストールされており、当該インストールされている対象の外部アプリ１１８のバージョンが最新のバージョンでないと判定された複合機１００に対するインストール要求信号（即ち、対象の外部アプリ１１８を含む外部アプリデータとライセンスデータから構成されるインストール要求信号）を送信する（ステップＳ３０）。
【０１４３】
それにより、インストール要求信号を受信した仲介装置２００が、該当する複合機１００に対して当該受信したインストール要求信号を送信する（ステップＳ３１）。その結果、インストール要求信号を受信した複合機１００が、当該インストール要求信号に含まれる外部アプリ１１８のインストール処理を実行する（ステップＳ３２）。
【０１４４】
その後、該当する複合機１００において、対象の外部アプリ１１８（即ち、最新バージョンの外部アプリ１１８）のインストールが無事完了すると、当該複合機１００が、自己のソフトウェアの構成情報が変化したことにより、仲介装置２００に対して機器状態変更があった旨を通知する機器状態変更通知を送信する（ステップＳ３３）。これにより、機器状態変更通知を受信した仲介装置２００が、該受信した機器状態変更通知を中央管理装置５００に送信する（ステップＳ３４）。これにより、中央管理装置５００が複合機１００の外部アプリ１１８のバージョンが最新のバージョンにバージョンアップされたことを認識する。
【０１４５】
図１５は、図１４のシーケンスにおける中央管理装置５００の処理手順の詳細を説明するためのフローチャートである。
【０１４６】
図１５に示すように、中央管理装置５００では、ステップＳ５０１において、アプリインストール処理モジュール５２０が、データ送受信部５２０ａを介して、ユーザ端末７００からの指示に基づくＷｅｂサーバ（ポータルサイト）６００（図１４参照）からのインストール要求信号を受信すると、アプリ取得部５２０ｂが、データ送受信部５２０ａを介して対象の外部アプリ（プラグイン）１１８の本体（本実施形態では、最新のバージョンの対象の外部アプリ１１８の本体）を含む外部アプリデータを取得する処理を実行するとともに、ライセンス取得部５２０ｃが、データ送受信部５２０ａを介して対象の外部アプリ１１８に対応したライセンスキーを含むライセンスデータを取得する処理を行う。
【０１４７】
続いて、ステップＳ５０２において、検索部５２０ｅが、中央管理装置５００に登録されている管理対象の複合機１００があるか否か（即ち、ユーザの管理下に設置された複合機１００があるか否か）を判定し、この判定の結果、登録されている複合機１００があると判定されると（ステップＳ５０２：ＹＥＳ）、続いて、ステップＳ５０３において、バージョン情報取得部５２０ｂが、登録されている複合機１００の中から一つの複合機１００を選択し、該選択した複合機１００の定時情報１００Ｄからバージョン情報を取得する。
【０１４８】
続いて、ステップＳ５０４において、検索部５２０ｅが、取得したバージョン情報（バージョン別の固有のアプリＩＤ）、及び、受信したインストール要求信号に含まれる対象の外部アプリ１１８の固有のアプリＩＤなどに基づいて、当該複合機１００に対象の外部アプリ１１８がインストールされているか否かを判定し、この判定の結果、対象の外部アプリ１１８がインストールされていると判定されると（ステップＳ５０４：ＹＥＳ）、続いて、ステップＳ５０５において、当該複合機１００にインストールされている対象の外部アプリ１１８のバージョンが最新のバージョンであるか否かを判定する。
【０１４９】
ステップＳ５０５の判定の結果、最新のバージョンではないと判定されると（ステップＳ５０５：ＮＯ）、続いて、ステップＳ５０６において、インストール要求部５２０ｆが、当該複合機１００に対して最新のバージョンの外部アプリ１１８のインストールを要求するインストール要求信号を生成してデータ送受信部５２０ａに出力することで、データ送受信部５２０ａがインストール要求信号を対象の複合機１００に送信する。これにより、当該対象の複合機１００において対象の外部アプリ１１８のインストール処理が実行される。
【０１５０】
続いて、ステップＳ５０７及びステップＳ５０８において、所定時間内に当該複合機１００から機器状態変更通知を受信すると（ステップＳ５０７：ＹＥＳ）、続いて、ステップＳ５０９において、他に登録されている複合機１００があるか否かを判定し、この判定の結果、他に登録されている複合機１００があれば（ステップＳ５０９：ＹＥＳ）、ステップＳ５０３の処理に戻って以下同様の処理を行う。他方、他に登録されている複合機１００がなければ（ステップＳ５０９：ＮＯ）、ここでの処理を終了する。
【０１５１】
なお、ステップＳ５０２の判定において、登録されている複合機１００がないと判定された場合（ステップＳ５０２：ＮＯ）には、ここでの処理を終了する。また、ステップＳ５０４の判定において、対象の外部アプリ１１８がインストールされていないと判定された場合（ステップＳ５０４：ＮＯ）、ステップＳ５０５の判定において、最新のバージョンであると判定された場合（ステップＳ５０５：ＹＥＳ）、及び、ステップＳ５０８の判定において、タイムアウトした場合（ステップＳ５０８：ＹＥＳ）、処理をステップＳ５０９に移動させる。
【０１５２】
なお、ステップＳ５０１が、図１４のステップＳ２３〜ステップＳ２６などに相当し、また、ステップＳ５０２〜ステップＳ５０５が、図１４のステップＳ２９などに相当し、また、ステップＳ５０６が、図１４のステップＳ３０などに相当し、また、ステップＳ５０７及びステップＳ５０８が、図１４のステップＳ３４などに相当する。
【０１５３】
図１６は、図１５の処理における具体的な処理を説明するためのシーケンス図である。
【０１５４】
図１６に示すように、この例では、中央管理装置に登録されている複合機、即ち、図１４で説明したユーザの管理下に属する複合機が、複合機（１）１００−１、複合機（２）１００−２、・・・、複合機（Ｎ）１００−ＮのＮ台である場合において、図１５の処理手順により、全ての複合機１００−１〜複合機１００−Ｎに対象の外部アプリ１１８がインストールされていると判定され、且つ、複合機（３）１００−３〜複合機（Ｎ）１００−Ｎにインストールされている対象の外部アプリ１１８のバージョンが最新のバージョンであると判定され、他方、複合機（１）１００−１及び複合機（２）１００−２にインストールされている対象の外部アプリ１１８のバージョンが最新のバージョンでないと判定された場合であり（ステップＳ２９−１）、この場合、複合機（１）１００−１及び複合機（２）１００−２に対して、最新のバージョンである対象の外部アプリ１１８のインストール要求を行った様子を示している。
【０１５５】
以上説明してきた実施形態によれば、ユーザの指示により、複合機１００に対する購入対象の外部アプリ（プラグイン）１１８のインストール要求があった場合、中央管理装置５００が、ユーザの管理下に属する複数の複合機１００、即ち、ＬＡＮなどの内部ネットワークに接続された複数の複合機１００（１）１００−１〜複合機（Ｎ）１００−Ｎのうち、購入対象の外部アプリ１１８がインストールされており、当該インストールされている対象の外部アプリ１１８のバージョンが最新のバージョンと一致しない複合機１００を検索し、検索した複合機１００に対して最新のバージョンの外部アプリ１１８のインストール要求を行うように構成したため、複数の複合機１００にそれぞれインストールされている同種の外部アプリ１１８のバージョンを最新のバージョンなどの同一のバージョンに統一する場合のユーザの負担を軽減することが可能である。
【０１５６】
以上、例示的な実施形態に基づいて本発明を説明したが、本発明は前記した実施形態により限定されるものではなく、特許請求の範囲の記載により表される技術的思想の範囲内において種々の変更、改変を行うことが可能である。
【０１５７】
例えば、前記した実施形態では、ユーザからのインストール要求があった場合に、ユーザの管理下にある複数の複合機１００において、各複合機１００にインストールされる対象の外部アプリ１１８を最新のバージョンのものに統一するインストール処理手順について説明したが、これ以外にも、最新のバージョンではないが、ユーザなどにより指定された指定のバージョン（旧バージョン）の外部アプリ１１８に統一するような形態としても良い。なお、そのような形態にする場合には、例えば、図１５のステップＳ５０１の処理において、アプリ管理サーバ４００は、中央管理装置５００に送信する外部アプリ１１８として、指定のバージョンの外部アプリ１１８を選択する。
【０１５８】
また、前記した実施形態では、複合機１００のメーカのサービスセンタなどに設置された中央管理装置５００を用いて、複数の複合機１００の保守管理を行う機器管理システム１について説明したが、これ以外にも、ユーザ側に設置されたＬＡＮなどの内部ネットワークに接続された仲介装置２００を用いて、ユーザ側で複合機１００の保守管理を行うような機器管理システムとしても良い。なお、この場合には、前記した中央管理装置５００と同等の機能を仲介装置２００に実装する。
【０１５９】
また、前記した実施形態では、仲介装置２００が定時毎に各複合機１００に対して定時情報１００Ｄの取得要求を送信することにより、仲介装置２００経由で中央管理装置５００が各複合機１００の定時情報１００Ｄを取得する形態について説明したが、これ以外にも、例えば、各複合機１００が自ら定時毎に定時情報１００Ｄを仲介装置２００に送信するような形態としても良い。
【０１６０】
また、前記した実施形態では、仲介装置２００を備える形態の機器管理システム１について説明したが、これ以外にも、例えば、仲介装置２００を備えず、各複合機１００がインターネットなどのネットワーク８０と直接接続するような形態としても良い。なお、この場合には、各複合機１００の定時情報１００Ｄを中央管理装置５００が取得する方法として、前記したように、各複合機１００が自ら定時毎に定時情報１００Ｄを中央管理装置５００に送信することで中央管理装置５００が各複合機１００の定時情報１００Ｄを取得するような形態にする、または、中央管理装置５００が各複合機１００に対して定時情報１００Ｄの取得要求を送信することにより、中央管理装置５００が各複合機１００から定時情報１００Ｄを取得する。
【０１６１】
また、前記した実施形態では、仲介装置２００は、定時毎に各複合機１００の定時情報１００Ｄを取得する形態について説明したが、これ以外にも、その他のタイミングで取得した定時情報１００ＤをＲＯＭ２０４などの記憶手段に記憶しておき、定時毎に記憶手段に記憶してある定時情報１００Ｄを読み出して中央管理装置５００に送信するような形態としても良い。
【０１６２】
また、前記した実施形態では、複合機１００にインストールすべき対象の外部アプリ１１８の割り出し処理を、中央管理装置で行う形態について説明したが、これ以外にも、アプリ管理サーバ４００で行うような形態としても良い。
【０１６３】
また、前記した実施形態では、外部アプリ（プラグイン）１１８及びライセンスの取得を中央管理装置５００で行う形態について説明したが、これ以外にも、例えば、仲介装置２００で行うような形態としても良い。
【０１６４】
また、前記した実施形態では、中央管理装置５００で保守管理される画像形成装置として、プリンタ機能、コピー機能、ファクシミリ機能、スキャナ機能等の各機能のうちの少なくとも二つ以上の機能を有し、アプリ管理サーバ４００からダウンロードされた外部アプリ１１８をインストールすることが可能な複合機について説明したが、これ以外にも、例えば、アプリ管理サーバ４００からダウンロードされた外部アプリ１１８をインストールすることが可能なプリンタ装置、コピー装置、ファクシミリ装置、スキャナ装置等のその他の画像形成装置としても良い。
【０１６５】
また、前記した実施形態では、仲介装置２００、ライセンス管理サーバ３００、アプリ管理サーバ４００、中央管理装置５００等が、インターネットなどのネットワーク８０を介して接続され、仲介装置２００には、複数の複合機１００が、ネットワーク８０とは異なるＬＡＮなどのネットワークで接続される形態について説明したが、これ以外にも、例えば、複合機１００と、仲介装置２００、ライセンス管理サーバ３００、アプリ管理サーバ４００、中央管理装置５００等とがインターネット等の単一のネットワークに接続される形態としても良い。
【０１６６】
また、前記した実施形態の複合機（画像形成装置）１００、仲介装置（機器管理装置）２００及び中央管理装置５００で実行される各種プログラムは、インストール可能な形式または実行可能な形式のファイルでＣＤ−ＲＯＭ、フレキシブルディスク（ＦＤ）、ＣＤ−Ｒ、ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｋ）、ＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）等のコンピュータで読み取り可能な記録媒体に記録して提供するように構成してもよいし、インターネット等のネットワーク経由で提供または配布するように構成しても良い。
【０１６７】
また、前記した実施形態では、インストール対象となる情報処理装置として画像形成装置である複合機１００を例にした場合について説明したが、これに限定されず、他の装置であっても良く、例えば、一般的なパーソナルコンピュータ（ＰＣ）などの情報処理装置であっても良いものとする。
【０１６８】
その他、前記した実施形態における装置構成や機能構成、または、外部アプリ（プラグイン）などは単なる例として記載したものであり、本発明はこれらにより限定されない。
【符号の説明】
【０１６９】
１  機器管理システム（情報処理システム）
１００、１００−１、１００−２、・・・、１００−Ｎ  複合機（情報処理装置）
２００  仲介装置
３００  ライセンス管理サーバ
４００  アプリ管理サーバ（ソフトウェア管理サーバ）
５００  中央管理装置（管理装置）
８０  ネットワーク
９０  ファイアウォール
１０  コントローラ
２０  操作表示部
６０  エンジン部
１１８、１１８（１）〜１１８（Ｍ）  外部アプリ
１３１  アプリインストール制御サービス
１３１ａ  インストール制御部
１３１ｂ  ライセンス取得部
１３１ｃ  定時情報取得部
１３１ｄ  データ受信部
１３１ｅ  データ送信部
２７３  アプリインストール管理モジュール
２７３ａ  定時管理部
２７３ｂ  機器状態管理部
２７３ｃ  データ受信部
２７３ｄ  データ送信部
５１０  機器状態管理部
５１０ａ  定時情報取得部（取得手段）
５２０  アプリインストール処理モジュール
５２０ａ  データ送受信部
５２０ｂ  アプリ取得部
５２０ｃ  ライセンス取得部
５２０ｄ  バージョン情報取得部（取得手段）
５２０ｅ  検索部（検索手段）
５２０ｆ  インストール要求部（インストール要求手段）
１００Ｄ  定時情報
【先行技術文献】
【特許文献】
【０１７０】
【特許文献１】特開２００８−１５２３９９号公報
【図１】
2011170463.tif 000003
【図２】
2011170463.tif 000004
【図３】
2011170463.tif 000005
【図４】
2011170463.tif 000006
【図５】
2011170463.tif 000007
【図６】
2011170463.tif 000008
【図７】
2011170463.tif 000009
【図８】
2011170463.tif 000010
【図９】
2011170463.tif 000011
【図１０】
2011170463.tif 000012
【図１１】
2011170463.tif 000013
【図１２】
2011170463.tif 000014
【図１３】
2011170463.tif 000015
【図１４】
2011170463.tif 000016
【図１５】
2011170463.tif 000017
【図１６】
2011170463.tif 000018