(57)【要約】【課題】  複数の情報処理装置に最新のバージョンに対応したファームウエアを他の情報処理装置から取得して効率よくインストールする。【解決手段】    管理装置と、複数の他の情報処理装置と通信する情報処理装置において、管理装置からバージョン情報に対応づけられた所定のファームウエアをインストールするためのスクリプトを取得して、インストールした後、取得した所定のファームウエアを複数の他の情報処理装置のうちバージョン情報に対応する当該所定のファームウエアをインストールしていない複数の他の情報処理装置に公開する。そして、複数の他の情報処理装置が取得すべき所定のファームウエアの取得先を第２取得先とすべきことを管理装置に通知する。これにより、他の情報処理装置が自機のファームウエアのバージョンが異なる場合でも、必要なファームウエアを取得先が公開された情報処理装置から取得してインストールする構成を特徴とする。【選択図】  図８
2017111531.tif 000002
【特許請求の範囲】
【請求項１】
複数の情報処理装置と、管理装置とが通信する情報処理システムであって、
前記管理装置は、
所定のファームウエアを取得してインストールするためのスクリプトと、所定のファームウエアとを機種ＩＤに対応づけて管理する管理手段と、
前記所定のファームウエアを取得すべき第１の取得先を前記第１の情報処理装置から通知される第２取得先に変更、または、第１の取得先に加え第２の取得先も追加する更新手段とを備え、
各情報処理装置は、
自装置にインストール済のファームウエアのバージョン情報を管理するインストール済のファームウエアを管理するファームウエア管理手段と、
前記管理装置から前記機種ＩＤに対応づけられた所定のファームウエアをインストールするためのスクリプトを取得するスクリプト取得手段と、
前記スクリプト取得手段が取得した所定のファームウエアをインストールするインストール手段とを備え、
さらに、前記複数の情報処理装置のうちの第１の情報処理装置は、
前記スクリプトに設定された前記管理装置が前記機種ＩＤに対応づけて管理する第１の取得先から所定のファームウエアを取得する第１のファームウエア取得手段と、
前記第１のファームウエア取得手段が取得した所定のファームウエアを前記複数の情報処理装置のうち前記機種ＩＤに対応する当該所定のファームウエアをインストールしていない第２の情報処理装置が取得すべき所定のファームウエアの取得先を第２の取得先とすべきことを前記管理装置に通知する通知手段と、
前記第２の情報処理装置が前記第２の取得先に従って要求する前記所定のファームウエアを公開する公開手段と、
を備え、
前記第２の情報処理装置は、
前記管理装置が前記機種ＩＤに対応づけて管理するスクリプトに設定された前記第２の取得先に従って前記第１の情報処理装置が公開する所定のファームウエアを取得する第２のファームウエア取得手段と、
を備えることを特徴とする情報処理システム。
【請求項２】
複数の情報処理装置と、管理装置とが通信する情報処理システムであって、
前記管理装置は、
所定のファームウエアを取得してインストールするためのスクリプトと、所定のファームウエアとをバージョン情報に対応づけて管理する管理手段と、
前記所定のファームウエアを取得すべき第１の取得先を前記第１の情報処理装置から通知される第２取得先に変更、または、第１の取得先に加え第２の取得先も追加する更新手段とを備え、
各情報処理装置は、
自装置にインストール済のファームウエアのバージョン情報を管理するインストール済のファームウエアを管理するファームウエア管理手段と、
前記管理装置から前記バージョン情報に対応づけられた所定のファームウエアをインストールするためのスクリプトを取得するスクリプト取得手段と、
前記スクリプト取得手段が取得した所定のファームウエアをインストールするインストール手段とを備え、
さらに、前記複数の情報処理装置のうちの第１の情報処理装置は、
前記スクリプトに設定された前記管理装置が前記バージョン情報に対応づけて管理する第１の取得先から所定のファームウエアを取得する第１のファームウエア取得手段と、
前記第２の情報処理装置が取得すべき所定のファームウエアの取得先を第２取得先とすべきことを前記管理装置に通知する通知手段と、
前記第２の情報処理装置が前記第２の取得先に従って要求する前記バージョン情報に対応する前記所定のファームウエアを公開する公開手段と、
を備え、
前記第２の情報処理装置は、
前記管理装置が前記バージョン情報に対応づけて管理するスクリプトに設定された前記第２の取得先に従って前記第１の情報処理装置が公開する所定のファームウエアを取得する第２のファームウエア取得手段と、
を備えることを特徴とする情報処理システム。
【請求項３】
前記第２の情報処理装置は、
前記第２の取得先から所定のファームウエアを取得した場合、当該所定のファームウエアのバージョン情報と、インストール済みのファームウエアのバージョン情報とから前記第２の取得先から取得する前記所定のファームウエアをインストールできるかどうかを判断する判断手段を備え、
前記判断手段が取得する所定のファームウエアをインストールできないと判断した場合、前記管理装置からインストールすべきバージョンに対応する所定のファームウエアを取得してインストールすることを特徴とする請求項２に記載の情報処理システム。
【請求項４】
前記第２の情報処理装置は、
前記インストール手段は、前記判断手段が取得する所定のファームウエアをインストールできないと判断した場合、前記管理装置からインストールすべきバージョンに対応する所定のファームウエアの差分を取得してインストールすることを特徴とする請求項３に記載の情報処理システム。
【請求項５】
前記第２の情報処理装置は、
前記管理装置から取得した所定のファームウエアの差分を前記第２の取得先に設定された第１の情報処理装置に送信する送信手段を備え、
前記第１の情報処理装置は、
前記ファームウエア管理手段が前記第２の情報処理装置から取得した所定のファームウエアの差分を登録し、前記公開手段が当該差分を含むファームウエアを公開することを特徴とする請求項４に記載の情報処理システム。
【請求項６】
前記第２の情報処理装置は、
前記通知手段が前記管理装置から取得した所定のファームウエアの差分をインストールした場合、当該差分を含む所定のファームウエアを公開する第２の取得先を前記管理装置に通知することを請求項４に記載の情報処理システム。
【請求項７】
前記管理装置は、
前記更新手段が前記第２の情報処理装置から通知された前記第２の取得先を新たな第２の取得先に更新することを特徴とする請求項１に記載の情報処理システム。
【請求項８】
前記第２の取得先を公開した第１の情報処理装置は、
他の情報処理装置が実行するインストール処理の進捗に合わせて、所定のファームウエアを削除する削除手段を備えることを特徴とする請求項１に記載の情報処理システム。
【請求項９】
前記管理装置において、
前記管理手段は、所定のファームウエアを取得してインストールするためのスクリプトと、所定のファームウエアを共通のファームウエアと、前記複数の情報処理装置の機種に対応づけられた個別のファームウエアとをバージョン情報に対応づけてライブラリで管理することを特徴とする請求項１に記載の情報処理システム。
【請求項１０】
所定のファームウエアを取得してインストールするためのスクリプトと、所定のファームウエアとを機種ＩＤに対応づけて管理する管理装置と、複数の他の情報処理装置と通信する情報処理装置であって、
自装置にインストール済のファームウエアのバージョン情報を管理するインストール済のファームウエアを管理するファームウエア管理手段と、
前記管理装置から前記機種ＩＤに対応づけられた所定のファームウエアをインストールするためのスクリプトを取得するスクリプト取得手段と、
前記スクリプト取得手段が取得した所定のファームウエアをインストールするインストール手段と、
前記スクリプトに設定された前記管理装置が前記機種ＩＤに対応づけて管理する第１の取得先から所定のファームウエアを取得する第１のファームウエア取得手段と、
前記第１のファームウエア取得手段が取得した所定のファームウエアを前記複数の情報処理装置のうち前記機種ＩＤに対応する当該所定のファームウエアをインストールしていない第２の情報処理装置が取得すべき所定のファームウエアの取得先を第２の取得先とすべきことを前記管理装置に通知する通知手段と、
前記第２の情報処理装置が前記第２の取得先に従って要求する前記所定のファームウエアを公開する公開手段と、
を備えることを特徴とする情報処理装置。
【請求項１１】
所定のファームウエアを取得してインストールするためのスクリプトと、所定のファームウエアとをバージョン情報に対応づけて管理する管理装置と、複数の他の情報処理装置と通信する情報処理装置であって、
自装置にインストール済のファームウエアのバージョン情報を管理するインストール済のファームウエアを管理するファームウエア管理手段と、
前記管理装置から前記バージョン情報に対応づけられた所定のファームウエアをインストールするためのスクリプトを取得するスクリプト取得手段と、
前記スクリプト取得手段が取得した所定のファームウエアをインストールするインストール手段と、
前記スクリプトに設定された前記管理装置が前記バージョン情報に対応づけて管理する第１の取得先から所定のファームウエアを取得する第１のファームウエア取得手段と、
前記第２の情報処理装置が取得すべき所定のファームウエアの取得先を第２取得先とすべきことを前記管理装置に通知する通知手段と、
前記第２の情報処理装置が前記第２の取得先に従って要求する前記バージョン情報に対応する前記所定のファームウエアを公開する公開手段と、
を備えることを特徴とする情報処理装置。
【請求項１２】
所定のファームウエアを取得してインストールするためのスクリプトと、所定のファームウエアとを機種ＩＤに対応づけて管理する管理装置と、複数の他の情報処理装置と通信する情報処理装置の制御方法であって、
自装置にインストール済のファームウエアのバージョン情報を管理するインストール済のファームウエアを登録手段に登録して管理するファームウエア管理工程と、
前記管理装置から前記機種ＩＤに対応づけられた所定のファームウエアをインストールするためのスクリプトを取得するスクリプト取得工程と、
前記スクリプト取得工程が取得した所定のファームウエアをインストールするインストール工程と、
前記スクリプトに設定された前記管理装置が前記機種ＩＤに対応づけて管理する第１の取得先から所定のファームウエアを取得する第１のファームウエア取得工程と、
前記第１のファームウエア取得工程が取得した所定のファームウエアを前記複数の情報処理装置のうち前記機種ＩＤに対応する当該所定のファームウエアをインストールしていない第２の情報処理装置が取得すべき所定のファームウエアの取得先を第２の取得先とすべきことを前記管理装置に通知する通知工程と、
前記第２の情報処理装置が前記第２の取得先に従って要求する前記所定のファームウエアを公開する公開工程と、
を備えることを特徴とする情報処理装置の制御方法。
【請求項１３】
所定のファームウエアを取得してインストールするためのスクリプトと、所定のファームウエアとをバージョン情報に対応づけて管理する管理装置と、複数の他の情報処理装置と通信する情報処理装置の制御方法であって、
自装置にインストール済のファームウエアのバージョン情報を管理するインストール済のファームウエアを登録手段に登録して管理するファームウエア管理工程と、
前記管理装置から前記バージョン情報に対応づけられた所定のファームウエアをインストールするためのスクリプトを取得するスクリプト取得工程と、
前記スクリプト取得工程が取得した所定のファームウエアをインストールするインストール工程と、
前記スクリプトに設定された前記管理装置が前記バージョン情報に対応づけて管理する第１の取得先から所定のファームウエアを取得する第１のファームウエア取得工程と、
前記第２の情報処理装置が取得すべき所定のファームウエアの取得先を第２取得先とすべきことを前記管理装置に通知する通知工程と、
前記第２の情報処理装置が前記第２の取得先に従って要求する前記バージョン情報に対応する前記所定のファームウエアを公開する公開工程と、
を備えることを特徴とする情報処理装置の制御方法。
【請求項１４】
請求項１２または１３に記載の情報処理装置の制御方法をコンピュータに実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理システム、情報処理装置、情報処理装置の制御方法、及びプログラムに関するものである。
【背景技術】
【０００２】
情報処理装置、例えばＭＦＰ（多機能周辺装置）やＳＦＰ（単機能プリンタ）などの画像形成装置を新規に導入する際、顧客先での使用環境に応じた設置作業が必要である。画像形成装置の設置作業には多くの時間と手間がかかる。そのため、複数台の画像形成装置に対し、同様の設置作業を行えば良い場合には、予め使用環境として必要なソフトウエアや設定値、検証用のデータなどを用意しておく。そして、画像形成装置が、それらを設置作業の作業指示情報に従って処理していくことで、自動的にかつ効率良く設置作業を行うシステムが提案されている。このようなシステムの中には、インターネット上のサーバに、作業指示情報や使用環境として必要なソフトウエアなどを配置しておき、設置作業時に画像形成装置が取得するものがある。
【０００３】
このような構成のシステムでは、顧客先で顧客先のネットワーク環境を使用して設置作業を行う場合がある。画像形成装置を導入する顧客先は企業であることが多く、企業ではプロキシサーバが利用されることが多い。また、使用環境として必要なソフトウエアにはファームウエアなどの数百メガバイトのものが含まれている。
そのため、このような構成のシステムで、設置対象の画像形成装置が多くなると、顧客先のプロキシサーバ等の負荷が大きくなり、場合によっては顧客先のユーザがインターネットにアクセスしづらい状況になってしまう。
一方、プロキシサーバにはキャッシュ機能があるが、ＴＬＳ（Ｔｒａｎｓｐｏｒｔ  Ｌａｙｅｒ  Ｓｅｃｕｒｉｔｙ）での通信の際にはキャッシュできなかったり、顧客先の環境によってはキャッシュ機能が無効になっていたりする場合もある。また、プロキシサーバとは別に、インターネット上のサーバと画像形成装置の間のイントラネット内に、仲介装置となるソフトウエア管理サーバを配置するシステムが提案されている（特許文献１参照）。
このような構成であると、ソフトウエア管理サーバが多数の機器の代わりにインターネット上のサーバからソフトウエアを取得することができるので、プロキシサーバへの負荷は小さくなる。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１１−０６６５２１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、顧客先での設置作業は１度しか行わない為、別途ソフトウエア管理サーバを顧客先に配置して利用することは難しい。また、ソフトウエア管理サーバを顧客先で利用できるようにするためには、顧客環境のネットワークにつなげるための初期設定等などが新たに必要となり、作業者による設置作業負担が増大する等の課題があった。
さらに、従来のシステムの運用では、管理装置から取得するファームウエアは、情報処理装置の機種ＩＤや、既にインストールされたファームウエア自身のバージョン情報に適応したものでなければならない。
したがって、機種ＩＤが異なったり、情報処理装置の設置時に既にインストールされたファームウエアのバージョン情報が異なったりした場合、それぞれの情報処理装置に適応したファームウエアを効率よく管理できないという課題があった。
【０００６】
本発明は、上記の課題を解決するためになされたもので、本発明の目的は、管理装置から取得したファームウエアをインストールした情報処理装置と機種ＩＤが対応する他の情報処理装置にファームウエアを公開することで、ネットワークに負荷をかけることなく、複数の情報処理装置にファームウエアを効率よくインストールできる仕組みを提供することである。
さらに、本発明の目的は、管理装置から取得したファームウエアをインストールした情報処理装置と、バージョン情報が一致しない場合でも、管理装置から必要なファームウエアの差分を取得することで、ネットワークに負荷をかけることなく、複数の情報処理装置に最新のバージョンに対応したファームウエアを効率よくインストールできる仕組みを提供することである。
【課題を解決するための手段】
【０００７】
上記目的を達成する本発明の情報処理システムは以下に示す構成を備える。
複数の情報処理装置と、管理装置とが通信する情報処理システムであって、
前記管理装置は、所定のファームウエアを取得してインストールするためのスクリプトと、所定のファームウエアとを機種ＩＤに対応づけて管理する管理手段と、前記所定のファームウエアを取得すべき第１の取得先を前記第１の情報処理装置から通知される第２取得先に変更、または、第１の取得先に加え第２の取得先も追加する更新手段とを備え、各情報処理装置は、自装置にインストール済のファームウエアのバージョン情報を管理するインストール済のファームウエアを管理するファームウエア管理手段と、前記管理装置から前記機種ＩＤに対応づけられた所定のファームウエアをインストールするためのスクリプトを取得するスクリプト取得手段と、前記スクリプト取得手段が取得した所定のファームウエアをインストールするインストール手段とを備え、さらに、前記複数の情報処理装置のうちの第１の情報処理装置は、前記スクリプトに設定された前記管理装置が前記機種ＩＤに対応づけて管理する第１の取得先から所定のファームウエアを取得する第１のファームウエア取得手段と、前記第１ファームウエア取得手段が取得した所定のファームウエアを前記複数の情報処理装置のうち前記機種ＩＤに対応する当該所定のファームウエアをインストールしていない第２の情報処理装置に公開する公開手段と、前記第２の情報処理装置が取得すべき所定のファームウエアの取得先を第２取得先とすべきことを前記管理装置に通知する通知手段とを備え、前記第２の情報処理装置は、前記管理装置が前記機種ＩＤに対応づけて管理するスクリプトに設定された前記第２の取得先から所定のファームウエアを取得する第２のファームウエア取得手段と、を備えることを特徴とする。
【発明の効果】
【０００８】
本発明によれば、ネットワークに負荷をかけることなく、複数の情報処理装置にファームウエアを効率よくインストールできる。
【図面の簡単な説明】
【０００９】
【図１】情報処理システムの構成例を示す図である。
【図２】情報処理システムのハードウエア構成の例を示すブロック図である。
【図３】管理サーバのハードウエア構成の例を示すブロック図である。
【図４】ＭＦＰのソフトウエアの構成例を示すブロック図である。
【図５】ファームウエア構成の例を示す図である。
【図６】情報処理システムのソフトウエア構成の例を示すブロック図である。
【図７】情報処理システムで管理するデータテーブルの一例である。
【図８】情報処理装置の設置作業を説明する図である。
【図９】案件作成プログラムが表示するＵＩ画面を示す図である。
【図１０】設置作業手順を記述した設置用スクリプトの一例を示す図である。
【図１１】操作部に表示するＵＩ画面を示す図である。
【図１２】情報処理システムの制御方法を説明するフローチャートである。
【図１３】情報処理システムの制御方法を説明するフローチャートである。
【図１４】設置スクリプトとデバイスＩＤとを説明する図である。
【図１５】ファームウエアの更新処理を説明する図である。
【図１６】情報処理装置の制御方法を説明するフローチャートである。
【図１７】設置スクリプトとデバイスＩＤとを説明する図である。
【図１８】データ管理テーブルと公開ライブラリを説明する図である。
【発明を実施するための形態】
【００１０】
次に本発明を実施するための最良の形態について図面を参照して説明する。
＜システム構成の説明＞
〔第１実施形態〕
図１は、本発明の自動設置システムにおける情報処理システムの構成例を示す図である。本自動設置システムは、ＬＡＮ１０１およびＬＡＮ１０２があり、ＬＡＮ１０１と１０２は別のＬＡＮであることを示している。
図１において、ＬＡＮ１０１と１０２に接続された機器はそれぞれプロキシサーバ１０３と１０４越しにＷＡＮを介してインターネット上のサーバに接続される。ＬＡＮ１０１は設置を行う顧客環境のＬＡＮであり、ＭＦＰ１０５が複数台接続される。以下、情報処理装置の一例としてＭＦＰを適用するシステムについて詳述する。ＭＦＰ１０５は、顧客環境に設置を行うＭＦＰであり、複写機にスキャナ、プリンタ、ファクシミリ等の複数の機能を統合した画像形成装置である。
尚、ＭＦＰ１０５は、最初からＬＡＮ１０１に接続されているわけではなく、後述する設置の作業の中でＬＡＮに接続され、後述する自動設置プログラム４５０がインストールされている。
【００１１】
図４に示すＭＦＰ１０５の自動設置プログラム４５０は、案件管理サーバ１０７で管理されている作業指示書の一例である設置用スクリプトを取得し、設置用スクリプトの内容に従って自動での設置作業を実施する。
ＬＡＮ１０２は、設置の事前準備を行う環境のＬＡＮであり、クライアントＰＣ１０６が接続される。クライアントＰＣ１０６は、パーソナルコンピュータなどの情報処理装置であり、後述する案件作成プログラム５００がインストールされている。案件作成プログラム５００は、ＭＦＰ１０５に設置用スクリプトを含む案件データを生成する。
案件管理サーバ１０７は、後述する案件管理サーバプログラム５５０がインストールされている。案件管理サーバプログラム５５０は、クライアントＰＣ１０６を使用して生成し、ＭＦＰ１０５の設定内容を登録した案件データを管理する。案件データについては後述する。
ソフトウエア管理サーバ１０８は、ＭＦＰ１０５で利用可能なファームウエアや各種ライセンス情報等を管理するサーバである。ＭＦＰ１０５の自動設置プログラム４５０は、設置用スクリプトの内容に従って、ソフトウエア管理サーバ１０８から設置に必要なソフトウエアをダウンロードする。
なお、本実施形態では、案件管理サーバ１０７とソフトウエア管理サーバ１０８とを独立した構成としているが、１つの管理装置として構成してもよい。また、本実施形態では、情報処理装置の一例としてＭＦＰを挙げているが、もちろんその他ＳＦＰなどでもよい。
【００１２】
＜ＭＦＰ１０５の構成＞
図２は、図１に示した情報処理システムのハードウエア構成の例を示すブロック図である。図２の（Ａ）は、ＭＦＰ１０５のハードウエア構成の例である。ＭＦＰ１０５はコントローラユニット２００を含む以下の構成を含む。
図２の（Ａ）において、コントローラユニット２００には、画像入力デバイスであるスキャナ２１７や画像出力デバイスであるフィニッシャ２１６Ｆが装備されたプリンタ２１６、および操作部２０４が接続される。
コントローラユニット２００は、スキャナ２１７で読み取られた画像データをプリンタ２１６により印刷出力するコピー機能を実現するための制御を行う。また、ＭＦＰ１０５のオプション機能（装置）として、ファクシミリ装置（ＦＡＸ）２０５やフィニッシャ２１６Ｆを付加することも可能である。したがって、ＭＦＰ１０５は、ＦＡＸ２０５と通信して電話回線等に画像データを送受信する。また、ＭＦＰ１０５は、フィニッシャ２１６Ｆと通信して印刷後の紙データをステープルでまとめる等の特定のシート後処理を行う。これらオプション機能の命令や制御もコントローラユニット２００が行う。コントローラユニット２００はプロセッサであるＣＰＵ２０１を有する。
【００１３】
ＣＰＵ２０１は、ＲＯＭ２０７に格納されているブートプログラムによりオペレーションシステム（ＯＳ）を立ち上げる。そして、ＣＰＵ２０１は、ＯＳ上で、ＨＤＤ（ハードディスクドライブ）２０８に格納されているプログラムを実行し、作業領域としてＲＡＭ２０２を用い、各処理を実行する。ＨＤＤ２０８は各種データを格納する。ＣＰＵ２０１には、システムバス２１０を介して、操作部Ｉ／Ｆ２０３、ネットワークＩ／Ｆ２０６、画像バスＩ／Ｆ２１２が接続される。操作部Ｉ／Ｆは、タッチパネルを有する操作部２０４とのインタフェースであり、操作部２０４に表示すべき画像データを出力し、操作部２０４においてユーザにより入力された情報をＣＰＵ２０１に送出する。
【００１４】
ネットワークＩ／Ｆは、ＭＦＰ１０５をＬＡＮ１０１に接続するためのインタフェースである。画像バスＩ／Ｆ２１２は、システムバス２１０と、画像データを高速で転送する画像バス２１１とを接続し、データ形式を変換するためのバスブリッジである。画像バス２１１上には、デバイスＩ／Ｆ２１５、スキャナ画像処理部２１４、プリンタ画像処理部２１３が設けられ、デバイスＩ／Ｆには、スキャナ２１７およびプリンタ２１６が接続され、画像データの同期系／非同期系の変換を行う。スキャナ画像処理部２１４は入力画像データに対し編集等を、プリンタ画像処理部２１３はプリント出力画像データに対して解像度変換等を行う。
【００１５】
＜クライアントＰＣ＞
図２の（Ｂ）は、クライアントＰＣ１０６のハードウエア構成の例を示すブロック図である。
図２の（Ｂ）において、ＣＰＵ２５１を含む制御部２５０は、クライアントＰＣの全体の動作を制御する。ＣＰＵ２５１は、ＲＯＭ２５２に記憶された制御プログラムを読み出して各種制御処理を実行する。ＲＡＭ２５３は、ＣＰＵ２５１の主メモリ、ワークエリア等の一時記憶領域として用いられる。
【００１６】
ＨＤＤ２５４は、各種データやプログラムを記憶する。操作部Ｉ／Ｆ２５５は、クライアントＰＣで実行されるプログラムへの制御操作を入力するユーザインタフェース端末を接続する。本実施形態では、マウス２５９やキーボード２６０で構成されるが、その限りではない。ディスプレイＩ／Ｆ２５６は、クライアントＰＣで実行されるプログラムのＵＩを表示するディスプレイ端末を接続する。本実施形態ではディスプレイ２６１で構成されるが、その限りではない。ネットワークＩ／Ｆ２５８は、制御部２５０をＬＡＮ１０２に接続し、ネットワークを介して他の装置との間で各種情報を送受信する。
【００１７】
＜サーバの構成＞
図３は、図１に示した管理サーバのハードウエア構成の例を示すブロック図である。
なお、図３の（Ａ）は、案件管理サーバ１０７のハードウエア構成の例を、図３の（Ｂ）は、図１に示したソフトウエア管理サーバ１０８のハードウエア構成の例を示すブロック図である。
【００１８】
図３の（Ａ）および（Ｂ）において、ＣＰＵ３０１を含む制御部３００は、案件管理サーバ１０７全体の動作を制御する。ＣＰＵ３０５を含む制御部３５０は、ソフトウエア管理サーバ１０８全体の動作を制御する。
ＣＰＵ３０１は、ＲＯＭ３０２に記憶された制御プログラムを読み出して各種制御処理を実行する。ＣＰＵ３５１は、ＲＯＭ３５２に記憶された制御プログラムを読み出して各種制御処理を実行する。
ＲＡＭ３０３、３５３は、ＣＰＵの主メモリ、ワークエリア等の一時記憶領域として用いられる。ＨＤＤ３０４、３５４は、各種プログラムや後述する各種データテーブルを記憶する。ネットワークＩ／Ｆ３０５、３５５は、制御部（３００、３５０）をＬＡＮに接続し、ネットワークを介して他の装置との間で各種情報を送受信する。
【００１９】
＜ＭＦＰのソフトウエア構成＞
図４は、図１に示したＭＦＰ１０５のソフトウエアの構成例を示すブロック図である。
図４の（Ａ）において、ＯＳ４００上には、ネイティブプログラム４０１と拡張プログラム実行プラットフォーム４０２が動作している。ネイティブプログラム４０１は、プリンタ２１６やスキャナ２１７など元々備わっている機能の制御プログラムであり、拡張プログラム実行プラットフォーム４０２は拡張機能の制御プログラムである。更に、ネイティブプログラム４０１上には、ファームウエア更新サービス４０３、オプション有効化サービス４０４、設定管理サービス４０５が動作している。拡張プログラム実行プラットフォーム４０２上には、拡張プログラムシステムサービス４０６と拡張プログラム４０７が動作している。ファームウエア更新サービス４０３は、ファームウエアを更新するための各種機能を提供するサービスである。
【００２０】
例えば、ユーザから指定されたファームウエアを参照し、該ファームウエアの更新が必要か否かを判断し、ネイティブプログラム４０１に対し、または介し、ファームウエアを更新する。オプション有効化サービス４０４は、ネイティブプログラム４０１に予め組み込まれているオプション機能を有効化するためのサービスである。設定管理サービス４０５は、プリンタ２１６やスキャナ２１７などの各種設定情報を管理するためのサービスである。
【００２１】
尚、設定管理サービス４０５は、ユーザインタフェース（以下、ＵＩ）を持っており、ユーザはＭＦＰ１０５の操作部２０４を介して設定変更の指示ができる。拡張プログラムシステムサービス４０６は、拡張プログラム４０７に共通に有用なユーティリティライブラリで、システムから提供される。拡張プログラム４０７から拡張プログラムシステムサービス４０６の機能を呼び出すことにより、拡張プログラム４０７を開発する手間を省くことができる。拡張プログラム４０７は、拡張プログラム実行プラットフォーム４０２または拡張プログラムシステムサービス４０６を介してのみ、他の拡張プログラムやＭＦＰ１０５の各モジュールへアクセスすることができる。また、ＵＩを持つ拡張プログラムは、ＭＦＰ１０５の操作部２０４に表示されるメインメニュー画面にアイコンを表示することができる。このアイコンをユーザが選択したことを、操作部２０４を通じて操作部Ｉ／Ｆ２０３が検知すると、操作部Ｉ／Ｆはその旨をＣＰＵ２０１に送信し、ＣＰＵ２０１は、ユーザに選択された拡張プログラム４０７のＵＩを操作部２０４に表示する。
【００２２】
尚、本ソフトウエア構成は基本的な部分のみ記載したものであり、実施環境によっては他のサービス等が含まれていても良い。図４の（Ｃ）は、設置対象ＭＦＰのＨＤＤ２０８領域に保存・管理されていて、設置対象ＭＦＰにインストール済みの現ファームウエアのバージョンの例を示すブロック図である。この領域は、ネイティブプログラム４０１やファームウエア更新サービス４０３が保存または参照可能な領域である。ＭＦＰ１０５のファームウエアバージョン４７１の他に、必要なライブラリリスト４７２（図５を用いて後術する）、ライブラリバージョン４７３を保存・管理している。ファームウエア更新サービス４０３は、この現ファームウエアバージョンを参照し、該ファームウエアの更新が必要か否かを判断する。
【００２３】
＜自動設置プログラムのソフトウエア構成＞
図４の（Ｂ）は、ＭＦＰ１０５で動作する、自動設置プログラム４５０の機能構成の例を示すブロック図である。本実施形態において、自動設置プログラムは、ＭＦＰの拡張プログラム４０７の一つとして実装されるものとする。ＣＰＵ２０１が各機能に応じたプログラムを実行することにより、各機能は実現される。図４の（Ｂ）において、自動設置プログラム４５０は、ＵＩ制御部４５１、処理実行部４５２、スクリプト解析部４５３、Ｗｅｂサービス（Ｗｅｂサービス）管理部４５４、通信部４５５を有する。ＵＩ制御部４５１は、自動設置プログラム４５０を操作するためのＵＩを操作部２０４を通じてユーザに提供し、ユーザの操作を受け付ける。
【００２４】
処理実行部４５２は、ＵＩ制御部４５１の指示やスクリプト解析部の解析結果に従い、各種処理を行う。スクリプト解析部４５３は、設置作業指示情報である設置用スクリプトを解析し、処理実行部４５２が実行すべき処理や順序を決定する。Ｗｅｂサービス管理部４５４は、自動設置プログラム４５０が提供するＷｅｂサービスを管理しており、Ｗｅｂサービスを公開・非公開にしたりする。通信部４５５は、処理実行部４５２の指示に従い、案件管理サーバ１０７にデータを送信受信したり、処理実行部４５２の指示に従いソフトウエア管理サーバ１０８からファームウエアやライセンスファイルなどの各種ソフトウエアも取得する。
＜ファームウエア構成＞
【００２５】
図５は、ソフトウエア管理サーバ１０８で管理され、ＭＦＰ１０５で利用可能なファームウエア構成の例を示す図である。本実施形態において、ファームウエアは、ＭＦＰ１０５の機種別にバージョンで管理されており、ファームウエアの実体は、ソフトウエア管理サーバ１０８のＨＤＤ３５４内で保存・管理されている。図５の（Ａ）は機種１のファームウエア構成、図５の（Ｂ）は機種２のファームウエア構成の例を示す図である。ファームウエアは少なくとも１つ以上のライブラリから構成されている。
【００２６】
ライブラリは全てにバージョンが付加されており、同バージョンのライブラリであれば、異なるファームウエアバージョンに含まれていても同等である。例えば、ライブラリ−共通−Ｂ（行５０３）は、ファームウエアのバージョン１．００とバージョン２．００の異なるバージョンに含まれているが、ライブラリバージョンは１．０と同じため、同等のライブラリと判断できる。また、ライブラリは、全てのＭＦＰ１０５に共通な共通ライブラリ５０１（機種１対応）、５５１（機種２対応）と、オプション構成で使われるオプションライブラリ５０２（機種１対応）、５５２（機種２対応）がある。
共通ライブラリとは全てのＭＦＰ１０５で必要なライブラリであり、オプションライブラリとは該当するオプション装置が付いているＭＦＰ１０５のみで必要なライブラリである。
【００２７】
例えば、オプション構成のＦＡＸ２０５が付いていないＭＦＰ１０５では、ライブラリ−ＦＡＸ−Ａとライブラリ−ＦＡＸ−Ｂが不要である。
しかし、ＦＡＸ機能が付いているＭＦＰ１０５の場合は、ＦＡＸ機能を使用するためにライブラリ−ＦＡＸ−Ａとライブラリ−ＦＡＸ−Ｂが必要となる。このように、ＭＦＰ１０５は、オプション構成によって必要なライブラリが異なるため、それぞれ必要なライブラリリスト４７２（図４の（Ｃ））をバージョン情報に対応させて保持している。
ＭＦＰ１０５を納入先に設置する時、自動設置プログラム４５０が指定されたファームウエアバージョンの中から必要なライブラリおよびライブラリバージョンを判断し、必要なライブラリのみを自デバイス内にダウンロードし、インストールする。
【００２８】
＜案件作成プログラムのソフトウエア構成＞
図６は、図１に示したクライアントＰＣ１０６、案件管理サーバ１０７のソフトウエア構成、ソフトウエア管理サーバ１０８のソフトウエア構成を説明するブロック図である。
図６の（Ａ）は、クライアントＰＣ１０６で動作する案件作成プログラム６００の機能構成の例である。
なお、ＣＰＵ２５１が案件作成プログラム６００を実行することにより、各機能が実現される。本実施形態では、クライアントＰＣでプログラムが実行されることを想定するが、その限りではない。ネットワーク上にあるサーバやサービスで実行してもよい。
図６の（Ａ）において、案件作成プログラム６００は、ＵＩ制御部６０１、処理実行部６０２、案件データ生成部６０３とスクリプト生成部６０４、および通信部６０５を有する。
ＵＩ制御部４５１は、案件作成プログラム６００を操作するためのＵＩをディスプレイ２６１を通じて作業者に提供し、マウス２５９やキーボード２６０を通じて作業者の操作を受け付ける。
【００２９】
処理実行部６０２は、ＵＩ制御部６０１の指示に従い各種処理を行う。案件データ生成部６０３は、ＵＩ制御部６０１からの入力情報を基に処理実行部６０２の指示に従って案件データを生成する。スクリプト生成部６０４は、処理実行部６０２の指示に従い、案件データ生成部６０３で生成された案件データを基に設置用のスクリプトを生成する。通信部６０５は、処理実行部６０２の指示に従い、案件管理サーバ１０７に対して、案件データを送信受信したりする。
【００３０】
＜サーバのソフトウエア構成＞
図６の（Ｂ）は、案件管理サーバ１０７で動作する案件管理サーバプログラム６５０、および、データ格納部６５７の機能構成を示す例である。ＣＰＵ３０１が案件管理サーバプログラム６５０を実行することにより、各機能が実現される。図６の（Ｂ）において、案件管理サーバプログラム６５０は、制御部６５１、スクリプト編集部６５２、案件データ管理部６５３、作業状況データ管理部６５４、Ｗｅｂサービス公開データ管理部６５５、通信部６５６を有するＷｅｂアプリケーションである。制御部６５１は、通信部６５６が受信するリクエスト内容にしたがって、案件データ管理部６５３や作業状況データ管理部６５４に対して各データの格納、削除、更新、取得等の処理を指示する。
【００３１】
また、制御部６５１は、Ｗｅｂサービス公開データ管理部６５５に対して、Ｗｅｂサービス公開データの格納、削除、更新、取得等の処理を指示する。スクリプト編集部６５２は、制御部６５１から渡される設置用スクリプトの編集（図１２を用いて後述する）を行う。案件データ管理部６５３は、制御部６５１の指示に従い、後述するデータ格納部６５７に対して案件データの格納、削除、更新を行い、データ格納部６５７から案件データの取得などを行う。作業状況データ管理部６５４は、制御部６５１の指示に従い、データ格納部６５７に対して作業状況データの格納、削除、更新を行い、データ格納部６５７から作業状況データの取得などを行う。
【００３２】
Ｗｅｂサービス公開データ管理部６５５は、制御部６５１の指示に従い、データ格納部６５７に対して作業状況データの格納、削除、更新を行い、データ格納部６５７からＷｅｂサービス公開データの取得などを行う。通信部６５６は、クライアントＰＣ１０６などからのリクエストを受信して、制御部６５１にリクエスト内容を送信する。
更に、制御部６５１からリクエストに対する処理結果を受け取り、レスポンスデータを作成し、クライアントＰＣなどにレスポンスを送信する。データ格納部６５７は、案件管理サーバ１０７で動作するデータベースである。尚、本例では案件管理サーバ１０７にデータ格納部６５７が構成されているが、案件管理サーバプログラム６５０と連携できるようになっていれば別のサーバに配置されるような構成でも良い。データ格納部６５７で管理するデータの内容については図７を用いて説明する。
【００３３】
図６の（Ｃ）は、ソフトウエア管理サーバ１０８で動作するソフトウエア管理サーバプログラム６８０、および、データ格納部６８４の機能構成を示す例である。ＣＰＵ３５１がソフトウエア管理サーバプログラム６８０を実行することにより、各機能が実現される。図６の（Ｃ）において、ソフトウエア管理サーバプログラム６８０は、制御部６８１、ファームウエア管理部６８２、通信部６８３を有するＷｅｂアプリケーションである。制御部６８１は、通信部６８３が受信するリクエスト内容に従って、ファームウエア管理部６８２に対してライブラリの抽出を指示する。ファームウエア管理部６８２は、制御部６８１の指示に従い、必要なライブラリを、データ格納部から取得し、制御部６８１に結果を送信する。データ格納部６８４は、設置対象であるＭＦＰ１０５の全機種の全ファームウエアバージョンの実態を保存・管理しており、ソフトウエア管理サーバ１０８で動作するデータベースである。
【００３４】
尚、本例ではソフトウエア管理サーバ１０８にデータ格納部６８４が構成されているが、ソフトウエア管理サーバプログラム６８０と連携できるようになっていれば別のサーバに配置されるような構成でも良い。通信部６８３は、ＭＦＰ１０５からのリクエストを受信して、制御部６８１にリクエスト内容を送信する。更に、制御部６８１からリクエストに対する処理結果を受け取り、レスポンスデータを作成し、ＭＦＰ１０５などにレスポンスを送信する。
【００３５】
＜データ格納部で管理されるテーブル群＞
図７の（Ａ）から図７の（Ｅ）は、データ格納部６５７で管理するデータテーブルの一例である。
図７の（Ａ）から図７の（Ｃ）のテーブルが案件データ、図７の（Ｄ）が作業状況データ、図７の（Ｅ）がＷｅｂサービス公開データを示している。
尚、図７のテーブル構成は、説明をしやすくするために冗長な部分を残しているが、リレーショナルデータベースなどである場合は正規化を行い、冗長性を除く等、本例とは異なるテーブル構成であってもよい。
【００３６】
図７の（Ａ）は、案件概要管理テーブル７００を表している。案件概要管理テーブル７００は、案件の概要を格納しているテーブルであり、カラム７０１から７０３で構成され、１レコードが１つの案件を表している。
７０１は案件ＩＤ、７０２は案件名、７０３はコメントを表している。案件ＩＤは案件データを一意に識別するための識別子であり、コメントは案件の内容に関する補足説明である。
図７の（Ｂ）は、機種共通データ管理テーブル７２０を表している。機種共通データ管理テーブル７２０は、設置対象のＭＦＰ１０５に対して案件ごとの機種共通で設定するデータを管理するテーブルであり、カラム７２１から７２５で構成される。
【００３７】
カラム７２１は共通データＩＤ、カラム７２２は案件ＩＤ７０１、カラム７２３は機種名、カラム７２４は共通データ名、カラム７２５は共通データを表している。カラム７２１の共通データＩＤとは共通データを一意に識別するための識別子である。ここで、共通データとは機種共通で設定するデータであり、例えばＭＦＰ１０５に適用するファームウエアなどである。尚、本例では共通データの実体をカラム７２５に格納しているが、共通データのパスを格納し、実体は別の場所に置く構成でも良い。
カラム７２１ないしカラム７２３で共通データ、案件、機種を関連付けている。例えば、最初のレコードは、共通データＩＤ"Ｃ００１"が、案件ＩＤ"Ｍ００１"である案件の機種名"機種１"のＭＦＰ１０５に使用される。
【００３８】
図７の（Ｃ）は、個別データ管理テーブル７５０を表している。個別データ管理テーブル７５０は、設置対象のＭＦＰごとに設定するデータを管理するテーブルであり、カラム７５１から７５５で構成される。カラム７５１は個別データＩＤ、カラム７５２は案件ＩＤ７０１、カラム７５３は機種名、カラム７２３、７５４は個別データ名、カラム７５５はＭＦＰのデバイスＩＤ、カラム７５６は個別データを表している。
ここで、個別データＩＤは個別データを一意に識別するための識別子である。また、個別データとは、設置対象のＭＦＰごとに設定するデータであり、例えば、必要なライセンスの設定や設置場所などの設定である。
【００３９】
尚、本例では個別データの実体をカラム７５６に格納しているが、パスを格納し、実体は別の場所に置くような構成でも良い。カラム７５１、カラム７５２、カラム７５５で個別データ、案件、ＭＦＰを関連付けている。
例えば、最初のレコードは、個別データＩＤ"Ｘ００１"が、案件ＩＤ"Ｍ００１"において、デバイスＩＤ"Ｎ００１"であるＭＦＰ１０５に設定されるデータである。尚、個別データには設置用スクリプト（図１０を用いて後述する）も含まれる。
【００４０】
図７の（Ｄ）は、作業状況管理テーブル７７０を表している。作業状況管理テーブル７７０は、ＭＦＰ１０５の自動設置作業の作業状況を管理するテーブルであり、カラム７７１からカラム７７４で構成される。カラム７７１はＭＦＰのデバイスＩＤ７５５、カラム７７２はＭＦＰのデバイス名、カラム７７３は案件ＩＤ７０１、７７４はＭＦＰの自動設置の作業状況を表している。
カラム７７１、７７３で案件、ＭＦＰを関連付けている。例えば、最初のレコードであると案件ＩＤ"Ｍ００１"のデバイスＩＤ"Ｎ００１"であるＭＦＰの作業状況（完了）である。
図７の（Ｅ）は、Ｗｅｂサービス公開管理テーブル７９０を表している。Ｗｅｂサービス公開管理テーブル７９０は、ＭＦＰが公開しているＷｅｂサービスの情報を管理するテーブルであり、カラム７９１からカラム７９４で構成される。
カラム７９１は案件ＩＤ７０１、カラム７９２はデバイスＩＤ７５５、カラム７９３は機種名７２３、カラム７９４はＭＦＰが公開しているＷｅｂサービスのＵＲＬを表している。
【００４１】
＜ＭＦＰの設置作業手順＞
図８は、本実施形態を示す情報処理装置の設置作業を説明する図である。本例では、ＭＦＰ１０５の基本的な設置をするまでの作業フローを説明する。尚、図８では１案件で８台のＭＦＰ１０５の設置作業を行う例を記載している。
図中のＮ００１を機種１の第１情報処理装置、Ｎ００２を機種２の第１情報処理装置とする。さらに、Ｎ００３〜Ｎ００５を機種１の第２情報処理装置、Ｎ００６〜Ｎ００８を機種２の第２情報処理装置とし、各々の機種に適した所定のファームウエアを取得してインストールする例を詳細に説明する。
【００４２】
Ｓ８０１は、案件作成者８２０が案件の作成を行う作業である。案件の作成は、営業担当者が顧客と対話して決定した内容を設定したり、設置管理者がＭＦＰ１０５の入出庫を管理する倉庫で設定内容の微修正を行なったりする。
本例では営業担当者や設置管理者など案件を編集する人をまとめて案件作成者と表現する。
案件作成者は、ＭＦＰの構成とそれらの設定内容を、クライアントＰＣ１０６の案件作成プログラム６００を使用して入力する。ここで、ＭＦＰの構成とは、機種、オプション構成、アクティベートするオプション等のことである。その内容は案件データとして案件管理サーバ１０７へ送信され、案件管理サーバ１０７のデータ格納部６５７に保存される。
Ｓ８０２は、設置担当者８２１がＭＦＰ１０５を実際に設置する際に顧客先で行う作業である。倉庫からＭＦＰ１０５が設置先に配送されると、設置担当者は、ＭＦＰ１０５を顧客から依頼された場所へ配置し、ＭＦＰ１０５を顧客先のＬＡＮ１０１に接続する。
設置担当者が、ＭＦＰ１０５の自動設置プログラム４５０が操作部２０４に表示するＵＩで、設置ボタンを押下する。尚、ここで表示されるＵＩについては図１１の（Ｂ）等を用いて後述する。自動設置プログラム４５０は、設置ボタンが押下されたことを検知すると、自動での設置作業を開始する。自動での設置作業の処理については、図１２を用いて後術する。
【００４３】
ＭＦＰ１０５で自動での設置作業が開始すると、設置担当者はその場を離れ、次のＭＦＰ１０５の設置作業を行う。このようにデバイスＩＤ"Ｎ００１"、"Ｎ００２"と順番に"Ｎ００８"まで、Ｓ８０２の作業を繰り返し行うことで、すべてのＭＦＰ１０５の設置作業が完了する。
尚、本例では、Ｓ８０２において、毎回ソフトウエア管理サーバ１０８からファームウエアを取得するのではなく、Ｗｅｂサービスを公開した特定のＭＦＰ１０５から取得することでプロキシサーバ等への負担を軽減する例について説明する。
また、ファイルサイズが大きいファームウエアを例に記載するが、拡張プログラム４０７など他のファイルにも適用可能である。以上が本発明に関わるＭＦＰ１０５の基本的な設置をするまでの作業フローである。以下、図８で説明した基本的な設置をするまでの作業における各プログラムの詳細な処理について、図９乃至図１６を用いて詳細に説明する。
＜案件作成プログラム＞
【００４４】
図９は、図１に示したクライアントＰＣ１０６の案件作成プログラム６００が表示するＵＩ画面を示す図である。本ＵＩは、案件作成者８２０がＳ８０１の作業を行う際に操作する。
図９の（Ａ）は、案件作成プログラム６００の案件データを一覧表示するＵＩの一例である。ＵＩ９００は、案件データリスト９０１と、ボタン９０２ないしボタン９０４で構成される。案件作成プログラム６００は起動すると案件管理サーバ１０７から案件データの一覧を取得し、取得した案件データの一覧を案件データリストにセットし、ＵＩ９００に表示する。案件データリスト９０１は案件データの概要を表示するリストである。本例では、案件ＩＤ７０１、案件名７０２、コメント７０３を表示している。
【００４５】
９０２は案件データを新規で作成するための新規作成ボタン、９０３は案件データを編集するための編集ボタンである。編集ボタン９０３が押下されたことを検知すると案件作成プログラム６００は、案件データリスト９０１で選択状態のデータの詳細情報を案件管理サーバ１０７から取得する。そして、取得したデータの詳細情報をＵＩ９５０のテキストボックス等にセットして、ＵＩ（図９の（Ｂ））を表示する。終了ボタン９０４は案件作成プログラムを終了するためのボタンである。
図９の（Ｂ）は、図９の（Ａ）のＵＩ画面において、編集ボタン９０３が押下された際に、案件作成プログラム６００の案件データを編集するために表示するＵＩの一例である。ＵＩ９５０は、タブページ９５１ないしタブページ９５３、および、ボタン９６２、９６３で構成される。
【００４６】
ＵＩ９５０では、タブページ９５２がアクティブな状態で表示されている。タブページ９５２は、テキストボックスやボタンなどのテキストボックス９５４から９６１で構成される。
尚、ＵＩ９５０では、案件ＩＤがＭ００１である案件データの編集を行っている際の例を記載している。９５１は、案件データの概要を設定するためのタブページである。
９５２は、共通データの設定を行うためのタブページである。９５４は、共通データの名称を設定するためのテキストボックス、９５５は機種を設定するためのコンボボックス、９５６はインストールするファームウエアバージョンを設定するためのコンボボックスである。なお、適用するファームウエアを共通データとして設定するため、同一機種であれば同じファームウエアが適用される。
９５７は共通データの詳細設定を行うためのボタン、９５８は９５４から９５７で設定した共通データを案件データに追加するためのボタンである。ここで、ボタン９５８が押下されると、共通データリスト９５９に共通データを追加する。共通データリストは編集中の案件データに追加済の共通データを表示するためのリストである。９６０は、共通データをファイルから追加するためのボタンであり、押下されると、ファイルを指定するためのＵＩを表示する。
【００４７】
そのＵＩで共通データのファイルが指定されると、編集中の案件データに選択された共通データを追加する。
９６１は共通データリスト９５９で選択されている共通データを削除するためのボタンである。９６２は編集中の案件データを保存するためのボタンであり、当該ボタン９６２が押下されると、案件作成プログラム６００は、本案件データを案件管理サーバ１０７に送信する。
そして、案件管理サーバ１０７の案件管理サーバプログラム６５０は、案件データを受信すると、受信した案件データをデータ格納部６５７に保存する。９６３は、案件データの編集をキャンセルするためのボタンである。９５３は個別データの設定を行うためのタブページである。
【００４８】
＜設置用スクリプトの例＞
図１０は、図１に示したＭＦＰ１０５の設置を自動で実施するための設置作業手順を記述した設置用スクリプトの一例を示す図である。
図１０において、設置用スクリプト１０００は、ＵＩ９５０で作成された案件データの一部として案件管理サーバのデータ格納部６５７に格納されている。設置用スクリプト１０００は、ＭＦＰ１０５の自動設置プログラムの処理実行部４５２を介し、スクリプト解析部４５３によって解析される。スクリプト解析部によって解析された設置用スクリプト１０００は、処理実行部４５２によって記載された処理が実行される。
【００４９】
設置用スクリプト１０００は、ＸＭＬ（Ｅｘｔｅｎｓｉｂｌｅ Ｍａｒｋｕｐ Ｌａｎｇｕａｇｅ）で記載されており、案件データ識別部１００１、ＭＦＰ識別部１００２、コマンド記載部１０１０で構成されている。
尚、本図ではＸＭＬによりスクリプトを表現しているが、ＸＭＬに限定されず、シェルスクリプトなどで書かれていても良い。
案件データ識別部１００１は、案件ＩＤ７０１が記載され、＜ｓｅｔｕｐＩｄ＞で構成される。本例ではＭ００１といった４桁の文字列で記載しているが、ＧＵＩＤ（グローバル一意識別子）などを用いるのが望ましい。ＭＦＰ識別部１００２には、ＭＦＰを識別するためのデバイスＩＤ７５５が記載され、＜ｄｅｖｉｃｅＩｄ＞で構成される。
コマンド記載部１０１０は、設置するために必要なコマンド群が記載され、ファームウエア更新コマンド部１００３、拡張プログラムインストールコマンド部１００４、拡張プログラム開始コマンド部１００５を備える。さらに、コマンド記載部１０１０は、オプションアクティベートコマンド部１００６、デバイス設定情報インポートコマンド部１００７、再起動コマンド部１００８、Ｗｅｂサービス公開コマンド部１００９で構成される。各コマンドの中にはｏｒｄｅｒ属性が含まれ、本例ではｏｒｄｅｒの値に応じて処理の順番が決定する。
また、本例では、ファイルサイズが大きいファームウエアの更新例を説明するため、その他コマンドの詳細な説明は省略する。
【００５０】
ファームウエア更新コマンド部１００３は、ファームウエア更新サービス４０３を介してファームウエアを更新するコマンドである。ファームウエア更新コマンド部は、＜ｕｐｄａｔｅＦｉｒｍｗａｒｅＣｏｍｍａｎｄ＞で定義され、＜ｐａｔｈ＞と＜ｆｉｒｍｗａｒｅＶｅｒ＞により使用するファイルを特定する。
＜ｐａｔｈ＞には更新したいファームウエアの取得先のパスが記載され、ｐｒｉｏｒｉｔｙとｓｅｔＣｏｎｄｉｔｉｏｎ属性を有する。ｐｒｉｏｒｉｔｙは、複数の＜ｐａｔｈ＞がある場合、どの＜ｐａｔｈ＞からファームウエアを取得するかを表す優先順位である。複数の＜ｐａｔｈ＞がある場合の例については後述する。
ｓｅｔＣｏｎｄｉｔｉｏｎには、自動設置プログラム４５０が設置用スクリプト１０００を実行中に一時的に記憶しておく値が記載される。つまり、ｈｔｔｐｓ://ｓｏｆｔｗａｒｅＭａｎａｇｅｍｅｎｔＳｅｒｖｅｒ/ｘｘｘｘ…"からファームウエアを取得した場合、自動設置プグラムは、ｆａｌｓｅを一時的に記憶する。
【００５１】
尚、後述するが、このｓｅｔＣｏｎｄｉｔｉｏｎの値によって、ＭＦＰはＷｅｂサービスを公開するかを決定する。＜ｆｉｒｍｗａｒｅＶｅｒ＞には、更新したいファームウエアバージョンが指定され、本図においてはバージョン２．００が指定されている。
拡張プログラムインストールコマンド部１００４は、拡張プログラムをインストールするコマンドであり、＜ｉｎｓｔａｌｌＡｐｐｌｉｃａｔｉｏｎＣｏｍｍａｎｄ＞で定義される。拡張プログラム開始コマンド部１００５は、拡張プログラムを開始するコマンドであり、＜ｓｔａｒｔＡｐｐｌｉｃａｔｉｏｎＣｏｍｍａｎｄ＞で定義される。
オプションアクティベートコマンド部１００６は、オプション有効化サービス４０４を介して、オプション機能を有効化するコマンドであり、＜ａｃｔｉｖａｔｅＯｐｔｉｏｎＣｏｍｍａｎｄ＞で定義される。デバイス設定情報インポートコマンド部１００７は、設定管理サービス４０５を介して、デバイスの設定情報をインポートするコマンドであり、＜ｉｍｐｏｒｔＤｅｖｉｃｅＣｏｎｆｉｇＣｏｍｍａｎｄ＞で定義される。
【００５２】
再起動コマンド部１００８は＜ｒｅｂｏｏｔＣｏｍｍａｎｄ＞で構成され、一通りの設置処理が終了した後、ＭＦＰを再起動させて、デバイス設定情報やアプリケーション設定情報の設定をＭＦＰに反映するための処理である。
Ｗｅｂサービス公開コマンド部１００９は、ファームウエアを提供するためのＷｅｂサービスの公開をするコマンドである。Ｗｅｂサービス公開コマンド部は、＜ｏｐｅｎＦｉｒｍｗａｒｅＷｅｂＳｅｒｖｉｃｅ＞で定義され、＜ｉｆＣｏｎｄｉｔｉｏｎ＞はＷｅｂサービスを公開する条件を表す。
【００５３】
例えば、本例であるとファームウエア更新コマンド部１００３で記憶したｓｅｔＣｏｎｄｉｔｉｏｎの値が、＜ｉｆＣｏｎｄｉｔｉｏｎ＞の値であるｔｒｕｅと一致した場合に、Ｗｅｂサービスの公開コマンドを実行する。つまり、設置用スクリプト１０００の場合は一致しないため、Ｗｅｂサービスの公開コマンドを実行しない。
尚、本図で示す設置用のスクリプトの記述は、ＭＦＰの設置に必要な処理を限定するものではなく、必要に応じて処理の重複、増減があっても良い。
【００５４】
＜自動設置処理＞
図１１は、図１に示したＭＦＰの操作部２０４に表示するＵＩ画面を示す図である。本ＵＩは、設置担当者８２１がＳ８０２の作業を行う際に操作する。図１１の（Ａ）は、ＭＦＰのネイティブプログラム４０１のＵＩの一例である。ＵＩ１１００はボタン１１０１を有し、１１０１は自動設置プログラム４５０を起動するためのボタンである。ネイティブプログラム４０１は、ボタン１１０１が押下されたことを検知すると、自動設置プログラム４５０を起動する。
【００５５】
尚、本実施形態では分かり易く説明するため、ボタン１１０１のみを表示しているがその限りではない。
図１１の（Ｂ）は、自動設置プログラム４５０のＵＩの一例である。本ＵＩは、ＵＩ１１００のボタン１１０１を押下された際に表示するＵＩである。ＵＩ１１５０は、ボタン１１５１と１１５２を有し、特にデバイスＩＤ"Ｎ００１"であるＭＦＰ１０５の自動設置プログラム４５０が表示するＵＩである。１１５１は自動設置作業を実行するためのボタンであり、自動設置プログラム４５０は、ボタン１１５１が押下されたことを検知すると、自動設置作業を開始する。自動設置作業の処理については図１２を用いて後術する。１１５２は、自動設置プログラム４５０を終了するためのボタンである。
【００５６】
＜設置時のフロー＞
図１２は、本実施形態を示すＭＦＰ１０５と案件管理サーバ１０７の情報処理システムの制御方法を説明するフローチャートである。
本例は、自動設置作業におけるＭＦＰの自動設置プログラム４５０、および、案件管理サーバ１０７の案件管理サーバプログラム６５０の処理例である。なお、Ｓ１２０１からＳ１２１０までは、ＭＦＰの自動設置プログラム４５０の処理であり、ＣＰＵ２０１が自動設置プログラム４５０を実行することで実現される。
【００５７】
Ｓ１２０１で、通信部４５５は、案件管理サーバ１０７から自デバイスＩＤに対応する設置用スクリプト１０００を取得して、Ｓ１２０２に遷移する。具体的には自動設置プログラム４５０の通信部４５５が、案件管理サーバプログラム６５０の通信部５５６に対してＨＴＴＰのＧＥＴコマンドによるリクエストを行う。リクエストにはＭＦＰのデバイスＩＤ（カラム７５５）および機種（カラム７２３）を含む。
このＧＥＴコマンドのレスポンスに設置用スクリプト１０００が含まれる。Ｓ１２０２で、通信部４５５は、案件管理サーバ１０７の案件管理サーバプログラム６５０からレスポンスがあったかを監視する。レスポンスがあったと自動設置プログラムが判断した場合はＳ１２０３に遷移し、レスポンスがないと判断した場合は応答監視を続ける。
【００５８】
Ｓ１２０３で、スクリプト解析部４５３は、案件管理サーバプログラム６５０から取得した設置用スクリプト１０００を読み込み、Ｓ１２０４に遷移する。Ｓ１２０４で、スクリプト解析部４５３は、設置用スクリプト１０００を解析して次に処理すべきコマンドを取得し、Ｓ１２０５に遷移する。設置用スクリプト１０００を例にとると、自動設置プログラム４５０のスクリプト解析部４５３はコマンド記載部１０１０に記載されたファームウエア更新コマンド部１００３からＷｅｂサービス公開コマンド部１００９の各コマンド部をｏｒｄｅｒの順に取得する。
【００５９】
つまり最初に取得するのはファームウエア更新コマンド部１００３となる。Ｓ１２０５で、処理実行部４５２は、コマンドに記載された処理を実行してＳ１２０６に遷移する。ここで、処理実行部４５２は、スクリプトに設定された第１の取得先であるソフトウエア管理サーバ１０８から自機の機種ＩＤに対応するファームウエアを取得してインストールする作業を実行する。
なお、本件の特徴であるファームウエア更新コマンドの処理は図１３を用いて、Ｗｅｂサービス公開コマンドの処理については図１６の（Ａ）を用いて後述する。Ｓ１２０６で、処理実行部４５２は、Ｓ１２０５で実行したコマンドが成功したかを判断する。成功したと判断した場合はＳ１２０７に遷移し、エラーになったと判断した場合はＳ１２０８に遷移する。Ｓ１２０７で、スクリプト解析部４５３は、次のコマンドがあるかを判断する。
【００６０】
次のコマンドがあると判断した場合はＳ１２０４に遷移し、次のコマンドがないと判断した場合はＳ１２０９に遷移する。Ｓ１２０８で、ＵＩ制御部４５１は、コマンドの実行でエラーがあった旨を伝えるＵＩを表示して、Ｓ１２０９に遷移する。
Ｓ１２０９で、通信部４５５は、設置の結果情報を案件管理サーバ１０７に送信して、Ｓ１２１０に遷移する。具体的には自動設置プログラム４５０の通信部４５５が、案件管理サーバプログラム６５０の通信部６５６に対してＨＴＴＰのＰＵＴコマンド、または、ＰＯＳＴコマンドによるリクエストを行い、このリクエストに設置の結果情報を含む。
【００６１】
Ｓ１２１０で、通信部４５５は、案件管理サーバ１０７の案件管理サーバプログラム６５０からレスポンスがあったかを監視する。レスポンスがあったと判断した場合は終了し、レスポンスがないと判断した場合は案件管理サーバプログラム６５０からレスポンスの監視を続ける。以上が、自動設置処理における自動設置プログラの処理である。
【００６２】
Ｓ１２５１からＳ１２５７は、Ｓ１２０１の処理で自動設置プログラム４５０から送信されたスクリプト取得要求を受信してからレスポンスを返すまでの案件管理サーバ１０７の案件管理サーバプログラム６５０の処理である。Ｓ１２５１で、通信部６５６は、スクリプトの取得要求を受信したかを監視する。スクリプトの取得要求を受信したと判断した場合はＳ１２５２に遷移し、スクリプトの取得要求を受信していないと判断した場合は監視を続ける。
【００６３】
Ｓ１２５２で、Ｗｅｂサービス公開データ管理部６５５は、Ｗｅｂサービス公開管理テーブル６９０からＷｅｂサービス公開データを取得してＳ１２５３に遷移する。
具体的には、Ｓ１２５１で受信したスクリプトの取得要求に含まれるデバイスＩＤから特定される案件ＩＤ、および機種で絞ったＷｅｂサービス公開データを取得する。
例えば、案件ＩＤがＭ００１で、機種名が機種１であった場合、Ｗｅｂサービス公開管理テーブル６９０の最初と２つめのレコード情報を取得することになる。また、案件ＩＤが同じＭ００１でも、機種名が機種２であった場合は、３つめのレコード情報を取得することになる。Ｓ１２５３で、制御部６５１は、Ｓ１２５２で取得したＷｅｂサービス公開データからＷｅｂサービスを公開しているＭＦＰがあるかを判断する。
【００６４】
Ｗｅｂサービスを公開しているＭＦＰがあると判断した場合はＳ１２５４に遷移し、Ｗｅｂサービスを公開しているＭＦＰがないと判断した場合はＳ１２５７に遷移する。
Ｓ１２５４で、スクリプト編集部６５２は、設置用スクリプト１０００にＳ１２５２で取得したＷｅｂサービス公開データに含まれるＷｅｂサービスのＵＲＬを変更または追加して、Ｓ１２５５に遷移する。
具体的には、設置用スクリプト１０００のファームウエア更新コマンド部１００３の＜ｐａｔｈ＞のＷｅｂサービスＵＲＬを変更、または追加する。
【００６５】
追加した場合、＜ｐａｔｈ＞の値は、Ｗｅｂサービス公開データに含まれるＷｅｂサービスのＵＲＬであり、ｐｒｉｏｒｉｔｙ属性の値は１から順にインクリメントする。また、追加した＜ｐａｔｈ＞のｓｅｔＣｏｎｄｉｔｉｏｎ属性の値はｆａｌｓｅを設定する。
最後に、ソフトウエア管理サーバ１０８のＵＲＬを記載している＜ｐａｔｈ＞を追加し、ｐｒｉｏｒｉｔｙ属性の値の優先順位を最も低くし、ｓｅｔＣｏｎｄｉｔｉｏｎの値をｔｒｕｅにする。Ｓ１２５３の判断によりＳ１２５４に遷移した場合の編集した設置用スクリプト１０００は、後ほど、Ｓ１３０１で図１４の（Ａ）を用い後述する。
【００６６】
Ｓ１２５５で、通信部６５６は、設置用スクリプト１０００をＭＦＰの自動設置プログラムに送信してＳ１２５６に遷移する。Ｓ１２５６で、作業状況データ管理部６５４は、作業状況管理テーブル７７０の作業状況を作業中に更新して、本処理を終了する。
一方、Ｓ１２５７で、スクリプト編集部６５２は、ソフトウエア管理サーバ１０８のＵＲＬを記載している＜ｐａｔｈ＞のｓｅｔＣｏｎｄｉｔｉｏｎの値をｔｒｕｅに更新して、Ｓ１２５５に遷移する。
【００６７】
Ｓ１２７１からＳ１２７５は、Ｓ１２０９の処理で自動設置プログラム１０００から送信された設置結果を受信してからレスポンスを返すまでの、案件管理サーバプログラム６５０の処理である。
Ｓ１２７１で、通信部６５６は、第１情報処理装置として最初にファームウエアをインストールしたＭＦＰ１０５より設置結果を受信したかを監視する。
【００６８】
ここで、設置結果を受信したと判断した場合はＳ１２７２に遷移し、設置結果を受信していないと判断した場合はＭＦＰ１０５からの応答監視を続ける。Ｓ１２７２で、制御部６５１は、Ｓ１２７１で受信した設置結果の中にＭＦＰ１０５が公開したＷｅｂサービスのＵＲＬが含まれているかを判断する。ＷｅｂサービスのＵＲＬが含まれていると判断した場合はＳ１２７３に遷移し、ＷｅｂサービスのＵＲＬが含まれていないと判断した場合はＳ１２７４に遷移する。
尚、ＭＦＰの自動設置プログラムが設置結果に公開したＷｅｂサービスのＵＲＬを含める処理については、図１６の（Ａ）を用いて後述する。
【００６９】
Ｓ１２７３で、Ｗｅｂサービス公開データ管理部６５５は、設置結果に含まれるＷｅｂサービスのＵＲＬを含むＷｅｂサービス公開データをＷｅｂサービス公開管理テーブル７９０に格納し、Ｓ１２７４に遷移する。Ｓ１２７４で、作業状況データ管理部６５４は、作業状況管理テーブル７７０に設置結果を格納し、Ｓ１２７５に遷移する。Ｓ１２７５で、通信部６５６は、ＭＦＰ１０５の自動設置プログラム４５０に、設置結果の格納が完了したことを送信して終了する。
【００７０】
図１３は、本実施形態を示すＭＦＰ１０５およびソフトウエアサーバのファームウエア更新コマンドの処理制御を説明するフローチャートである。本例は、自動設置作業におけるＭＦＰ１０５の自動設置プログラム４５０、および、ソフトウエア管理サーバ１０８のソフトウエア管理サーバプログラム６８０の処理例である。このファームウエア更新コマンドの処理は、前述したように図１２のフローチャートで説明したＳ１２０５のコマンドを実行する処理である。また、ここでは、図８で示した設置作業順に沿ってＭＦＰ１０５を設置したと仮定して説明する。
【００７１】
＜ＭＦＰ１０５のデバイスＩＤ"Ｎ００３"の設置例＞
ＭＦＰ１０５のデバイスＩＤ"Ｎ００１"〜"Ｎ００２"の設置が終了し、設置担当者８２１が、デバイスＩＤ"Ｎ００３"の設置をする場合の処理手順を説明する。また、機種１のバージョンアップ対象のバージョンは、図５の（Ａ）のファームウエアバージョン３．００とする。また、デバイスＩＤ"Ｎ００１"と"Ｎ００３"のバージョンアップ前のファームウエアバージョンは、図５の（Ａ）のファームウエアバージョン２．００とする。
さらに、デバイスＩＤ"Ｎ００１"にはオプション構成がなく、デバイスＩＤ"Ｎ００３"にはＦＡＸ装置がオプション構成として付加されているものとする。
【００７２】
図１３でいう設置対象ＭＦＰはデバイスＩＤ"Ｎ００３"であり、Ｗｅｂサービスを公開しているＭＦＰ（以下、Ｗｅｂサービス公開ＭＦＰ）は既に設置が完了しているデバイスＩＤ"Ｎ００１"とする。また、デバイスＩＤ"Ｎ００１"のＷｅｂサービス公開の処理は、図１６の（Ａ）を用いて後述する。
図１４の（Ａ）は、Ｓ１２５４で編集された"Ｎ００３"設置時の設置スクリプト例を示す図である。図１４の（Ｂ）は、デバイスＩＤ"Ｎ００１"のライブラリおよびライブラリバージョン例を示す図である。図１４の（Ｃ）は、デバイスＩＤ"Ｎ００３"のライブラリおよびライブラリバージョンの例を示す図である。
【００７３】
また、図１５の（Ａ）は、デバイスＩＤ"Ｎ００３"の設置前のデバイスＩＤ"Ｎ００１"のＷｅｂサービス公開ライブラリ、図１５の（Ｂ）はデバイスＩＤ"Ｎ００３"の設置後の、デバイスＩＤ"Ｎ００１"のＷｅｂサービス公開ライブラリを示す例である。なお、Ｓ１３０１からＳ１３０９は、設置対象ＭＦＰの自動設置プログラム４５０の処理である。また、Ｓ１３０１からＳ１３０９は、ＣＰＵ２０１が自動設置プログラムを実行することで実現される。
【００７４】
Ｓ１３０１で、処理実行部４５２は、次の優先順位のファームウエア取得先があるかを判断する。ここで使用する設置用スクリプトとは、先ほどＳ１２５４で説明した案件管理サーバ１０７が作成した編集後の設置スクリプトである。デバイスＩＤ"Ｎ００３"の設置時には、デバイスＩＤ"Ｎ００１"の設置が既に完了し、既にＷｅｂサービス公開をしているため、Ｗｅｂサービス公開管理テーブル７９０となっている。
【００７５】
また、Ｓ１２５４の処理では、設置用スクリプト１０００のファームウエア更新コマンド部１００３を編集したのみであり、その他は変更がないため、以下、ファームウエア更新コマンド部１４００を説明する。図１４の（Ａ）のように、ファームウエア更新コマンド部１４００は、デバイスＩＤ"Ｎ００１"のＷｅｂサービスをファーム取得先とするｐｒｉｏｒｉｔｙ属性の値が１（１４０１）となっている。つまり、複数ある＜ｐａｔｈ＞の中で優先順位が最も高く、最初のファームウエア取得先であることを示している。
【００７６】
＜ｐａｔｈ＞１４０１のｓｅｔＣｏｎｄｉｔｉｏｎ属性の値がｆａｌｓｅとなっており、デバイスＩＤ"Ｎ００１"からファームウエアが取得できた場合には、後続のＷｅｂサービス公開コマンド部１００９（不図示）は実行しないことを示している。＜ｐａｔｈ＞１４０２の値は、ファームウエアの取得先がソフトウエア管理サーバ１０８であることを示している。
ｐｒｉｏｒｉｔｙ属性の値が２となっており、ファームウエア取得先はデバイスＩＤ"Ｎ００１"より優先順位が低いことを表している。Ｓ１２５４で説明したように、ソフトウエア管理サーバ１０８は優先度が最も低く設定される。ソフトウエア管理サーバ１０８に対する＜ｐａｔｈ＞は、管理情報に対応づけられるｓｅｔＣｏｎｄｉｔｉｏｎ属性の値はｔｒｕｅ（公開）となる。
よって、ソフトウエア管理サーバ１０８からファームウエアを取得した場合は、後続のＷｅｂサービス公開コマンド部１００９（不図示）を実行することを示している。
【００７７】
以上が、Ｓ１２５４の処理により編集された設置用スクリプト１０００の例の説明である。ファームウエア取得先があると判断した場合はＳ１３０２に遷移し、ファームウエア取得先がないと判断した場合は、Ｓ１３０７に遷移する。Ｓ１３０２で、通信部４５５は、Ｓ１３０１で見つけたファームウエア取得先にファームウエアの取得要求を送信して、Ｓ１３０３に遷移する。
【００７８】
ここで、デバイスＩＤ"Ｎ００３"は、図１４の（Ｃ）にあるように、ファームウエアバージョン２．００（１４６１）からファームウエアバージョン３．００（１４６２）にバージョンアップする。このため、差分ライブラリとして、ライブラリ−共通−Ｂのバージョン２．０（１４６３）、ライブラリ−ＦＡＸ−Ａのバージョン２．０（１４６４）が必要となる。ファームウエア更新コマンド１４０１を実行する際、デバイスＩＤ"Ｎ００１"に対して、これらの必要ライブラリを要求する。Ｓ１３０３で、処理実行部４５２は、ファームウエアが取得できたかを判断する。ファームウエアが取得できたと判断した場合はＳ１３０４に遷移し、ファームウエアが取得できなかったと判断した場合はＳ１３０１に遷移する。
【００７９】
本実施形態では、優先順位をつけて複数のファームウエア取得先から取得する。これにより、顧客先のＶＬＡＮのネットワーク構成によってＭＦＰ同士が通信できない場合にも最終的にはファームウエアを取得できるように構成されている。
尚、本例ではＳ１３０２で、ファームウエア取得要求を実際にファームウエア取得先に送信した後に、Ｓ１３０３でファームウエアを取得できたかを判断しているが、これに限らない。例えば、ファームウエア取得先となっているＭＦＰと、自動設置処理中のＭＦＰのＩＰアドレスの体系が異なるなど、明らかに通信できないことがわかる場合には、ファームウエア取得要求を送信せず、取得できないと判断するようにしてもよい。
Ｓ１３０４で、処理実行部４５２は、取得したライブラリがバージョンアップに必要なライブラリとして十分かどうかを判断する。ファームウエアが足りていると判断した場合はＳ１３０５に遷移し、ファームウエアが不十分であると判断した場合はＳ１３０８に遷移する。
【００８０】
前提として、デバイスＩＤ"Ｎ００１"は、図１４の（Ｂ）にあるように、ファームウエアバージョン２．００（１４５１）からファームウエアバージョン３．００（１４５２）にバージョンアップしたとした。バージョンアップ時に取得したライブラリは差分ライブラリのみであるため、共通ライブラリのライブラリ−共通−Ｂのバージョン２．０（１４５４）である。よって、図１５の（Ａ）のように、デバイスＩＤ"Ｎ００１"がＷｅｂサービスで公開しているライブラリは、ライブラリ−共通−Ｂのバージョン２．０となる。
【００８１】
また、デバイスＩＤ"Ｎ００３"が必要としているライブラリは、Ｓ１３０２で説明したように、ライブラリ−共通−Ｂのバージョン２．０、ライブラリ−ＦＡＸ−Ａのバージョン２．０となる。よって、Ｓ１３０２では、デバイスＩＤ"Ｎ００１"から、ライブラリ−共通−Ｂのバージョン２．０しか取得することができず、ライブラリ−ＦＡＸ−Ａのバージョン２．０が不足していると判断できる。Ｓ１３０８で、通信部４５５は、ソフトウエア管理サーバ１０８に不足ライブラリの取得要求を送信して、Ｓ１３０９に遷移する。
【００８２】
図１４の（Ａ）のファームウエア更新コマンド部１４００のｐｒｉｏｒｉｔｙ属性の値が最も優先度が低いｐａｔｈ（１４０２）であるソフトウエア管理サーバ１０８のコマンドを実行する。これにより、ソフトウエア管理サーバ１０８から不足しているライブラリ−ＦＡＸ−Ａのバージョン２．０を取得する。
Ｓ１３０９で、通信部４５５は、Ｓ１３０２で取得要求をしたＷｅｂサービスを公開しているＭＦＰに、Ｓ１３０８でソフトウエア管理サーバ１０８から取得した不足ライブラリを送信し、Ｓ１３０５に遷移する。ここでは、デバイスＩＤ"Ｎ００１"に、ライブラリ−ＦＡＸ−Ｂのバージョン２．０を送信する。Ｓ１３０５で、処理実行部４５２は、Ｓ１３０２で取得したライブラリとＳ１３０８で取得したライブラリをファームウエア更新サービス４０３に渡し、ファームウエアを更新し、Ｓ１３０６に遷移する。
【００８３】
ここでは、Ｓ１３０２で取得したライブラリ−共通−Ｂのバージョン２．０と、Ｓ１３０８で取得したライブラリ−ＦＡＸ−Ａのバージョン２．０をファームウエア更新サービスに渡し、ファームウエアを更新する。Ｓ１３０６で、処理実行部４５２は、Ｓ１３０２で実行したファームウエアの取得先の＜Ｐａｓｓ＞のｓｅｔＣｏｎｄｉｔｉｏｎ属性の値を一時的に記憶して終了する。ここでは、Ｓ１３０２で＜Ｐａｓｓ＞１４０１を実行しているため、ｆａｌｓｅを記憶することになる。Ｓ１３０７で、処理実行部４５２は、設置結果をエラーとして終了する。
【００８４】
Ｓ１３５１からＳ１３５５は、Ｗｅｂサービス公開ＭＦＰの自動設置プログラム４５０の処理である。また、Ｓ１３５１からＳ１３５５は、ＣＰＵ２０１が自動設置プログラム４５０を実行することで実現される。Ｓ１３５１で、通信部４５５は、ファームウエア取得要求を受信したかを監視する。ファームウエア取得要求を受信したと判断した場合はＳ１３５２に遷移し、ファームウエア取得要求を受信していないと判断した場合は監視を続ける。
【００８５】
Ｓ１３５２で、通信部４５５は、ファームウエアを設置対象ＭＦＰの自動設置プログラム４５０に送信して、本処理を終了する。Ｓ１３０４で説明したように、ここで、Ｗｅｂサービスを公開しているデバイスＩＤ"Ｎ００１"は、ライブラリ−共通−Ｂのバージョン２．０しか公開していないため、ライブラリ−共通−Ｂのバージョン２．０のみを送信し、終了する。Ｓ１３５３で、通信部４５５は、ファームウエア追加要求を受信したかを監視する。ファームウエア追加要求を受信したと判断した場合はＳ１３５４に遷移し、ファームウエア追加要求を受信していないと判断した場合は監視を続ける。
【００８６】
Ｓ１３５４で、通信部４５５は、Ｓ１３５３で取得した追加ライブラリを受信し、処理実行部４５２はＳ１３５３で取得した追加ライブラリをＷｅｂサービス管理部４５４に公開追加依頼をする。さらに、Ｗｅｂサービス管理部４５４は追加ライブラリを公開し、処理を終了する。
ここで、Ｗｅｂサービスを公開しているデバイスＩＤ"Ｎ００１"は、設置対象ＭＦＰのデバイスＩＤ"Ｎ００３"から、ライブラリ−ＦＡＸ−Ａのバージョン２．０を受信する。デバイスＩＤ"Ｎ００１"には、ＦＡＸ装置が付いていないため、ＦＡＸに関連するライブラリは不要であが、Ｗｅｂサービスとして公開可能なライブラリの種類を増やすため、保持していないライブラリを受信して、Ｗｅｂサービスとして公開する。
【００８７】
よって、図１５の（Ｂ）のように、デバイスＩＤ"Ｎ００１"がＷｅｂサービスで公開しているライブラリは、ライブラリ−共通−Ｂのバージョン２．０とライブラリ−ＦＡＸ−Ａのバージョン２．０となる。今後、ＦＡＸ装置が付いている機種１のデバイスから、Ｓ１３５１でファームウエア取得要求を受信した場合、デバイスＩＤ"Ｎ００１"は、Ｓ１３５２でＦＡＸ関連のライブラリが提供可能とる。
【００８８】
Ｓ１３７１からＳ１３７２は、ソフトウエア管理サーバプログラム６８０の処理である。また、Ｓ１３７１からＳ１３７２は、ＣＰＵ３５１がソフトウエア管理サーバ１０８のプログラムを実行することで実現される。Ｓ１３７１で、通信部６８３は、ファームウエア取得要求を受信したかを監視する。ファームウエア取得要求をしたと判断した場合はＳ１３７２に遷移し、ファームウエア取得要求を受信していないと判断した場合は監視を続ける。Ｓ１３７２で、通信部４５５は、Ｓ１３７１で処理実行部４５２が取得したファームウエア取得要求に基づいて取得したライブラリを設置対象ＭＦＰに送信し、処理を終了する。
【００８９】
図１６の（Ａ）は、自動設置作業におけるＭＦＰの自動設置プログラム４５０のＷｅｂサービス公開コマンドの処理例である。このＷｅｂサービス公開コマンドの処理は、前述したように図１２のフローチャートで説明したＳ１２０５のコマンドを実行する処理である。
Ｓ１６０１で、処理実行部４５２は、Ｗｅｂサービス公開コマンドに含まれる＜ｉｆＣｏｎｄｉｔｉｏｎ＞の値と、Ｓ１３０６で一時的に記憶したｓｅｔＣｏｎｄｉｔｉｏｎ属性の値が一致したかを判断する。値が一致していると判断した場合はＳ１６０２に遷移する。値が一致していないと判断した場合はＳ１６０４に遷移し、ファームウエアを削除して処理を終了する。
【００９０】
Ｓ１６０２で、Ｗｅｂサービス管理部４５４は、ファームウエアを提供するためのＷｅｂサービスを公開してＳ１６０３に遷移する。具体的には、他のＭＦＰからのＨＴＴＰのＧＥＴコマンドのリクエストを受け付け、レスポンスとしてファームウエアを返すＷｅｂサービスを公開する。Ｓ１６０３で、処理実行部は、設置結果にＳ１６０２で公開したＷｅｂサービスのＵＲＬを追加して終了する。
【００９１】
次に、Ｗｅｂサービスを公開したＭＦＰの自動設置プログラム４５０が、Ｗｅｂサービスを非公開にする処理について説明する。
図１６の（Ｂ）は、本実施形態を示す情報処理装置の制御方法を説明するフローチャートである。本例は、ＭＦＰの自動設置プログラムが、Ｗｅｂサービスを非公開にする処理例である。なお、各ステップは、ＣＰＵ２０１が自動設置プログラムを実行することで実現される。
【００９２】
Ｓ１６５１で、処理実行部４５２は、一定時間が経過したかを監視する。一定時間が経過していると判断した場合はＳ１６５２に遷移し、一定時間経過していないと判断した場合には監視を続ける。Ｓ１６５２で、通信部４５５は、案件管理サーバ１０７の案件管理サーバプログラム６５０から案件の設置結果情報を取得して、Ｓ１６５３に遷移する。
【００９３】
尚、案件管理サーバプログラム６５０は、作業状況管理テーブル７７０に同一案件のＭＦＰの作業状況が完了となっている場合に、その案件の設置が完了したと判断し、その他は作業中またはエラーと判断する。Ｓ１６５３で、処理実行部は、Ｓ１６５２で取得した案件の設置結果情報が完了であるかを判断する。ここで、完了であると判断した場合はＳ１６５４に遷移し、完了していないと判断した場合はＳ１６５１に遷移する。Ｓ１６５４で、Ｗｅｂサービス管理部４５４は公開していたＷｅｂサービスを非公開にしてＳ１６５５に遷移する。Ｓ１６５５で、処理実行部４５２はファームウエアをインストール作業の進捗に応じて削除して、Ｓ１６５６に遷移する。Ｓ１６５６で、通信部４５５は、案件管理サーバ１０７にＷｅｂサービスを非公開にしたことを通知して終了する。通知を受信した案件管理サーバプログラム５５０は、データ格納部６５７に格納されているＷｅｂサービスの情報を非公開に更新する。
【００９４】
具体的には、案件管理サーバプログラム６５０のＷｅｂサービス公開データ管理部６５５は、通知のあったＭＦＰのデバイスＩＤのＷｅｂサービス公開管理テーブル７９０のレコードを削除する。このように案件の設置が完了したのを確認してからＷｅｂサービスを非公開にすることでファームウエアが残ったままになったり、設置が完了する前にＷｅｂサービスを非公開にしてしまったりすることがなくなる。尚、案件の設置が完了したことの確認の方法はこれに限らない。例えば、ＭＦＰ同士が通信できる場合は、その案件の最後に設置が完了したＭＦＰが、Ｗｅｂサービスを公開しているＭＦＰに対して、案件の設置が完了したことを通知するように構成してもよい。
【００９５】
以上、本実施形態によれば、同一案件、同一機種において自動設置処理を行う１台目のＭＦＰがファームウエア（ライブラリ）を提供可能なＷｅｂサービスを公開することで、顧客先のプロキシサーバ等への負荷を軽減できる。
つまり、第１の情報処理装置がファームウエアをインストールした後、当該情報処理装置が公開したファームウエアの取得先（第２取得先）を第２の情報処理装置が取得するスクリプトに設定できる。
これによって、これ以降に設置される情報処理装置は、既にファームウエアがインストールされた情報処理装置が公開する第２取得先からファームウエアを取得してインストールすることができる。
【００９６】
また、本実施形態によれば、同一案件、同一機種において自動設置処理を行った１台目のＭＦＰがオプション構成の関係で、Ｗｅｂサービスで公開したファームウエア（ライブラリ）が少ないものであった場合がある。そのような場合、これ以降に設置されたオプション構成ありの情報機器装置からオプション構成のライブラリを受信し、Ｗｅｂサービスで公開するようにする。このようにすることで、今後、オプション構成ありの情報機器装置にも十分なファームウエア（ライブラリ）を提供できる。
また、本実施形態では、顧客先のネットワーク構成によって、Ｗｅｂサービスを公開しているＭＦＰと自動設置処理中のＭＦＰが通信できない場合には、自動設置処理中のＭＦＰもＷｅｂサービスを公開する。
これにより、顧客先のネットワーク環境にあった形でＭＦＰがＷｅｂサービスを公開することができる。また、本実施形態によれば、顧客先での設置作業のようなソフトウエア管理サーバといった仲介装置を別途配置するのが難しいような場合においても、顧客先のプロキシサーバ等への負荷を軽減できる。
【００９７】
〔第２実施形態〕
第１実施形態においては、自動設置処理を行う１台目のＭＦＰが他のＭＦＰにファームウエアを提供するＷｅｂサービスを公開する説明をした。また、オプション構成の違いで起こるファームウエア内のライブラリの必要性有無により、Ｗｅｂサービスとして公開可能なライブラリが不十分な場合がある。
【００９８】
そのような場合でも、順次設置されるＭＦＰからオプション構成に必要な追加ライブラリを取得して、徐々に１台目のＭＦＰがＷｅｂサービス公開可能なライブラリ数を増やし充実させていくことを説明した。
また、顧客先のネットワーク構成によってＷｅｂサービスを公開しているＭＦＰと通信できなかったＭＦＰもＷｅｂサービスを公開する説明をした。
一般的に、ＭＦＰなどの画像形成装置は、工場から出荷される際、ファームウエアバージョンは出荷時期によって異なる。顧客先にＭＦＰを納品する際、基本的には複数台納品するケースが多く、納品数が膨大な数だとＭＦＰの工場出荷の時期が異なる可能性があり、設置するＭＦＰの初期状態のファームウエアバージョンが異なる可能性がある。以下、第２実施形態では、ファームウエアバージョンが異なるＭＦＰを設置する際のファームウエア等のインストール処理例について説明する。
【００９９】
システム構成、ハードウエア構成、設置時の処理フローについては、第１実施形態と同じであるため説明を省略する。第１実施形態と異なるのは、設置中デバイスのライブラリおよびライブラリバージョン、Ｗｅｂサービス公開ライブラリの例のため、これら以外は説明を省略する。
図１３のファームウエア更新処理を用いて、本実施形態について説明する。第２実施形態においては、図８で示した設置作業順に沿ってＭＦＰを設置したと仮定し、デバイスＩＤ"Ｎ００１"〜"Ｎ００３"の設置が終了し、デバイスＩＤ"Ｎ００４"を設置する例について説明する。設置対象のデバイスＩＤ"Ｎ００４"のバージョンアップ前のファームウエアバージョンは、第１実施形態のデバイスＩＤ"Ｎ００１"のファームウエアバージョン２．０とは異なり、図５の（Ａ）のファームウエアバージョン１．０とする。また、デバイスＩＤ"Ｎ００４"のオプション構成は、なしとする。
【０１００】
＜デバイスＩＤ"Ｎ００４"の設置例＞
図１３でいう設置対象ＭＦＰはデバイスＩＤ"Ｎ００４"であり、Ｗｅｂサービス公開ＭＦＰは、既に設置が完了しているデバイスＩＤ"Ｎ００１"とする。図１７の（Ａ）は、図１４の（Ａ）同様デバイスＩＤ"Ｎ００４"設置時の設置スクリプトの一部を示す図である。図１７の（Ｂ）はデバイスＩＤ"Ｎ００４"のライブラリおよびライブラリバージョンを示す図である。図１７の（Ｃ）は、デバイスＩＤ"Ｎ００４"設置後のデバイスＩＤ"Ｎ００１"のＷｅｂサービス公開ライブラリの例を示す図である。なお、Ｓ１３０１からＳ１３０９までは、第１実施形態同様、設置対象ＭＦＰの自動設置プログラム４５０の処理であり、ＣＰＵ２０１が自動設置プログラムを実行することで実現される。
【０１０１】
Ｓ１３０６からＳ１３０７は、第１実施形態と同様のため、説明を省略する。Ｓ１３５１からＳ１３５５までは、Ｗｅｂサービス公開ＭＦＰの自動設置プログラム４５０の処理であり、ＣＰＵ２０１が自動設置プログラム４５０を実行することで実現される。また、Ｓ１３５１からＳ１３５３、およびＳ１３７１からＳ１３７２は、第１実施形態と同様のため、説明を省略する。
【０１０２】
Ｓ１３０１は、第１実施形態と同様であり、デバイスＩＤ"Ｎ００４"のファームウエア更新コマンド１７００となっている。ここで、＜ｐａｔｈ＞１７０１は既に設置が完了しているデバイスＩＤ"Ｎ００１"であり、＜ｐａｔｈ＞１７０２はソフトウエア管理サーバ１０８である。
【０１０３】
このとき、デバイスＩＤ"Ｎ００３"までの設置が完了しているため、デバイスＩＤ"Ｎ００１"のＷｅｂサービスで公開しているライブラリは、第１実施形態で説明したように、図１５の（Ｂ）となっている。Ｓ１３０２で、通信部４５５は、デバイスＩＤ"Ｎ００１"にファームウエアの取得要求を送信して、Ｓ１３０３に遷移する。ここで、デバイスＩＤ"Ｎ００４"は図１７の（Ｂ）にあるように、ファームウエアバージョン１．００（１７５１）からファームウエアバージョン３．００（１７５２）にバージョンアップする。デバイスＩＤ"Ｎ００４"は、差分ライブラリとして、ライブラリ−共通−Ａのバージョン２．０、ライブラリ−共通−Ｂのバージョン２．０が必要となり、デバイスＩＤ"Ｎ００１"に対して、これらの必要ライブラリを要求する。
【０１０４】
Ｓ１３０３で、処理実行部４５２は、ファームウエアが取得できたかを判断し、ファームウエアが取得できたと判断した場合はＳ１３０４に遷移し、ファームウエアが取得できなかったと判断した場合はＳ１３０１に遷移する。Ｓ１３０４で、処理実行部４５２は、取得したライブラリがバージョンアップに必要なライブラリとして十分かどうかを判断する。ファームウエアが足りていると判断した場合はＳ１３０５に遷移し、ファームウエアが不十分であると判断した場合はＳ１３０８に遷移する。
【０１０５】
図１５の（Ｂ）のように、デバイスＩＤ"Ｎ００１"がＷｅｂサービスで公開しているライブラリは、ライブラリ−共通−Ｂのバージョン２．０、ライブラリ−ＦＡＸ−Ａのバージョン２．０となる。デバイスＩＤ"Ｎ００４"が必要としているライブラリは、ライブラリ−共通−Ａのバージョン２．０、ライブラリ−共通−Ｂのバージョン２．０となる。よって、Ｓ１３０２では、デバイスＩＤ"Ｎ００１"からライブラリ−共通−Ｂのバージョン２．０しか取得することができず、ライブラリ−共通−Ａのバージョン２．０が不足していると判断できる。Ｓ１３０８で、通信部４５５は、ソフトウエア管理サーバ１０８から不足しているライブラリを取得して、Ｓ１３０９に遷移する。
【０１０６】
ｐｒｉｏｒｉｔｙ属性の値が最も優先度が低い＜ｐａｔｈ＞１７０２を実行し、ソフトウエア管理サーバ１０８から不足しているファームウエアバージョン３．００のライブラリ−共通−Ａのバージョン２．０を取得する。Ｓ１３０９で、通信部は、デバイスＩＤ"Ｎ００１"に、ライブラリ−共通−Ａのバージョン２．０を送信する。Ｓ１３０５で、処理実行部４５２は、Ｓ１３０２で取得したライブラリ−共通−Ｂのバージョン２．０と、Ｓ１３０８で取得したライブラリ−共通−Ａのバージョン２．０をファームウエア更新サービスに渡し、ファームウエアを更新する。
【０１０７】
Ｓ１３５４で、Ｗｅｂサービスを公開しているデバイスＩＤ"Ｎ００１"は、設置対象ＭＦＰのデバイスＩＤ"Ｎ００４"から、ライブラリ−共通−Ａのバージョン２．０を受信する。図１７の（Ｃ）のように、デバイスＩＤ"Ｎ００１"がＷｅｂサービスで公開しているライブラリとして、ライブラリ−共通−Ｂのバージョン２．０とライブラリ−ＦＡＸ−Ａの他に、ライブラリ−共通−Ａの２．０も追加される。
【０１０８】
今後、工場出荷時のファームウエアバージョンが１．０の機種１のデバイスから、Ｓ１３５１でファームウエア取得要求を受信した場合、デバイスＩＤ"Ｎ００１"は、Ｓ１３５２でファームウエア１．０からの差分ライブラリも提供可能となる。
【０１０９】
以上、本実施形態によれば、同一案件、同一機種において自動設置処理を行った１台目のＭＦＰが工場出荷時のファームウエアバージョンの関係で、Ｗｅｂサービスで公開したファームウエア（ライブラリ）が少ないものであった場合がある。そのような場合でも、これ以降に設置されたファームウエアバージョンの低い情報機器装置から差分ライブラリを受信し、Ｗｅｂサービスで公開する。これにより、今後、様々なファームウエアバージョンの情報機器装置にも十分なファームウエア（ライブラリ）を提供できる。
【０１１０】
〔第３実施形態〕
第１、第２実施形態では、オプション構成の違いやファームウエアバージョンの違いで起こるファームウエア内のライブラリの必要性有無により、Ｗｅｂサービスとして公開可能なライブラリが不十分な場合でも、順次設置されるＭＦＰから追加ライブラリを取得して、徐々に１台目のＭＦＰがＷｅｂサービス公開可能なライブラリ数を増やし充実させていくことを説明した。第３実施形態では、Ｗｅｂサービス公開に設定するＭＦＰを１台に限定しない例を説明する。
【０１１１】
システム構成、ハードウエア構成、設置時の処理フローについては、第１実施形態と同じであるため説明を省略する。第１実施形態と異なるのは、設置用スクリプトの解釈のみのため、これ以外は説明を省略する。図１０の設置用スクリプト、図１３のファームウエア更新処理および図１６の（Ａ）のＷｅｂサービス公開コマンド処理を用いて、本実施形態について説明する。
【０１１２】
第３実施形態においては、図８で示した設置作業順に沿ってＭＦＰを設置したと仮定し、デバイスＩＤ"Ｎ００１"〜"Ｎ００２"の設置が終了し、機種１のデバイスＩＤ"Ｎ００３"を設置する例について説明する。バージョンアップ対象のファームウエアバージョン（バージョン３．００）、デバイスＩＤ"Ｎ００１"のＷｅｂサービス公開ライブラリ（図１５の（Ａ））、設置対象のデバイスＩＤ"Ｎ００３"のファームウエアバージョン（図１４の（Ｃ））、およびオプション構成（図８）は、第１実施形態と同様とする。
＜デバイスＩＤ"Ｎ００３"の設置例＞
【０１１３】
図１３でいう設置対象ＭＦＰはデバイスＩＤ"Ｎ００３"であり、Ｗｅｂサービス公開ＭＦＰは、既に設置が完了しているデバイスＩＤ"Ｎ００１"とする。また、図１８の（Ａ）は、デバイスＩＤ"Ｎ００３"設置後のＷｅｂサービス公開管理テーブルを示している。図１８の（Ｂ）および（Ｃ）は、デバイスＩＤ"Ｎ００３"設置後のデバイスＩＤ"Ｎ００１"と"Ｎ００３"それぞれのＷｅｂサービス公開ライブラリの例を示す図である。
【０１１４】
なお、Ｓ１３０１からＳ１３０９までは、第１および第２実施形態同様、設置対象ＭＦＰの自動設置プログラム４５０の処理である。ここで、Ｓ１３０１からＳ１３０５、Ｓ１３０７からＳ１３０９、Ｓ１３５３からＳ１３５４、および、Ｓ１３７１からＳ１３７２は、第１実施形態と同様のため、説明を省略する。
【０１１５】
Ｓ１３０６で、処理実行部４５２は、Ｓ１３０２で実行したファームウエアの取得先の＜Ｐａｓｓ＞のｓｅｔＣｏｎｄｉｔｉｏｎ属性の値ではなく、最終的に実行したファームウエア取得先の＜Ｐａｓｓ＞のｓｅｔＣｏｎｄｉｔｉｏｎ属性の値を一時的に記憶して終了する。ここでは、Ｓ１３０８でソフトウエア管理サーバの＜Ｐａｓｓ＞１４０２を実行しているため、ｔｒｕｅを記憶することになる。
【０１１６】
Ｓ１６０２からＳ１６０４は、第１実施形態と同様のため、説明を省略する。Ｓ１６０１で、処理実行部４５２は、Ｗｅｂサービス公開コマンドに含まれる＜ｉｆＣｏｎｄｉｔｉｏｎ＞の値と、Ｓ１３０６で一時的に記憶したｓｅｔＣｏｎｄｉｔｉｏｎ属性の値が一致したかを判断する。ここでは、Ｓ１３０６でｔｒｕｅを記憶しており、設置スクリプトの＜ｉｆＣｏｎｄｉｔｉｏｎ＞１００９もｔｒｕｅとなっているため一致する。よってＳ１６０２に遷移する。以降、デバイスＩＤ"Ｎ００３"もＷｅｂサービスを公開することとなる。
【０１１７】
Ｓ１３０８で、ソフトウエア管理サーバ１０８よりバージョンアップに必要なライブラリを取得した時点で、デバイスＩＤ"Ｎ００３"は、図１４の（Ｃ）に記載のライブラリ差分である、ライブラリ−共通−Ｂのバージョン２．００と、ライブラリ−ＦＡＸ−Ａのバージョン２．０を保持している。
一方、Ｗｅｂサービスを公開しているデバイスＩＤ"Ｎ００１"は、図１５の（Ａ）にあるように、ライブラリ−共通−Ｂのバージョン２．０のみを保持している。第１実施形態の場合、デバイスＩＤ"Ｎ００１"に取得した不足分のライブラリを送信し、Ｓ１６０４で自デバイス内のライブラリを削除する。
【０１１８】
しかし、本実施形態のように、デバイスＩＤ"Ｎ００３"の方が、ライブラリ数が多い場合、デバイスＩＤ"Ｎ００１"に取得した不足分のライブラリを送信し、さらに、デバイスＩＤ"Ｎ００３"もＷｅｂサービスを公開させる方が効率が良い。
デバイスＩＤ"Ｎ００３"の設置後、Ｗｅｂサービス公開管理テーブル１８０１のように機種１のデバイスＩＤ"Ｎ００３"のＵＲＬが追加される。また、デバイスＩＤ"Ｎ００１"およびデバイスＩＤ"Ｎ００３"のＷｅｂサービスで公開するライブラリは、図１８の（Ｂ）および（Ｃ）のように、それぞれ、ライブラリ−共通−Ｂのバージョン２．０と、ライブラリ−ＦＡＸ−Ａのバージョン２．０となる。
図８のように、これ以降に設置される機種１のデバイスＩＤ"Ｎ００４"と"Ｎ００５"には、設置スクリプトのファームウエア更新コマンド部１００３の＜Ｐａｔｈ＞に、第２取得先として、デバイスＩＤ"Ｎ００１"に加えて"Ｎ００３"が記載されることになる。
【０１１９】
尚、本例では、不足分のライブラリをデバイスＩＤ"Ｎ００１"に送信し、最終的にデバイスＩＤ"Ｎ００１"とデバイスＩＤ"Ｎ００３"をＷｅｂサービス公開ＭＦＰとしたが、これに限らない。
例えば、Ｓ１３０９において、不足分のライブラリをデバイスＩＤ"Ｎ００１"には送信せず、デバイスＩＤ"Ｎ００３"がデバイスＩＤ"Ｎ００１"に替わり、Ｗｅｂサービスを公開してもよい。さらに、例えば、Ｓ１３０９において、不足分のライブラリをデバイスＩＤ"Ｎ００１"には送信せず、デバイスＩＤ"Ｎ００１"は図１５の（Ａ）のデバイスＩＤ"Ｎ００３"の設置前と変わらないライブラリ、デバイスＩＤ"Ｎ００３"は図１８の（Ｃ）のライブラリをＷｅｂサービスで公開してもよい。
【０１２０】
以上、本実施形態によれば、同一案件、同一機種において自動設置処理を行った２台目以降のＭＦＰが、Ｗｅｂサービスを公開しているＭＦＰより十分なファームウエアが取得できず、ソフトウエア管理サーバ１０８から再度取得した場合でも、Ｗｅｂサービスを公開しているＭＦＰに不足したファームウエアを追加送信すると共に、設置台対象のＭＦＰもＷｅｂサービスを公開する。これによって、これ以降に設置されたＭＦＰに対して、複数の第２取得先を提供することが可能となる。
さらに、上記実施形態では、案件管理サーバとソフトウエア管理サーバを独立したシステムとして構成する場合を示したが、それぞれのサーバ機能を１つのサーバで構成することも、本発明の趣旨に沿うのである。
【０１２１】
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステムまたは装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサがプログラムを読み出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えばＡＳＩＣ）によっても実現可能である。
【符号の説明】
【０１２２】
１０５  ＭＦＰ
１０６  クライアントＰＣ
１０７  案件管理サーバ
【図１】
2017111531.tif 000003
【図２】
2017111531.tif 000004
【図３】
2017111531.tif 000005
【図４】
2017111531.tif 000006
【図５】
2017111531.tif 000007
【図６】
2017111531.tif 000008
【図７】
2017111531.tif 000009
【図８】
2017111531.tif 000010
【図９】
2017111531.tif 000011
【図１０】
2017111531.tif 000012
【図１１】
2017111531.tif 000013
【図１２】
2017111531.tif 000014
【図１３】
2017111531.tif 000015
【図１４】
2017111531.tif 000016
【図１５】
2017111531.tif 000017
【図１６】
2017111531.tif 000018
【図１７】
2017111531.tif 000019
【図１８】
2017111531.tif 000020