(57)【特許請求の範囲】
【請求項１】
ソフトウェアの更新データを供給するためのサーバとネットワークを介して接続されたソフトウェアの管理装置であって、
前記ソフトウェアを構成する一式のファイルを記憶する記憶部と、
前記ソフトウェアを更新するための更新データの送付を前記サーバに対して要求する要求部と、
前記要求に応じて前記サーバから送付された更新データであって、前記ソフトウェアの更新の順序に従った複数回の更新の内容を包含する包含更新データを入力する更新データ入力部と、
前記包含更新データに基づいて前記ソフトウェアを更新する更新部とを備え、
前記包含更新データは、
前記一式のファイルのいずれかをそれぞれ置き換えるための複数の新規ファイルと、
各新規ファイルのファイル名を含み、各新規ファイルを同一ファイル名の更新前のファイルに置き換えるべきことを更新内容として指示する更新指示ファイルとを備え、
前記更新部は、前記更新指示ファイルの指示に従ってファイルの置き換えを行うことによって、前記ソフトウェアの複数回の更新を前記包含更新データを用いた１回の更新で実行する、管理装置。
【請求項２】
請求項１記載の管理装置であって、
前記要求部は、前記更新に利用する包含更新データを選択するための情報として、前記クライアントに保存されている前記ソフトウェアの現在のバージョン番号を含む情報を、前記サーバに送信する管理装置。
【請求項３】
クライアントとネットワークで接続され、該クライアントに保存されたソフトウェアの更新の順序に従った複数回の更新の内容を包含する包含更新データを供給する更新データ供給サーバであって、
前記包含更新データは、前記ソフトウェアの複数回の更新を１回の更新で実行するためのデータであり、
前記包含更新データは、
前記ソフトウェアの一式のファイルのいずれかをそれぞれ置き換えるための複数の新規ファイルと、
各新規ファイルのファイル名を含み、各新規ファイルを同一ファイル名の更新前のファイルに置き換えるべきことを更新内容として指示する更新指示ファイルとを備え、
前記更新データ供給サーバは、
前記ソフトウェアの更新前後のバージョン番号と、前記更新前のバージョン番号から前記更新後のバージョン番号への前記ソフトウェアの更新を行うための包含更新データと、を互いに関連付ける関連情報と、前記包含更新データとを蓄積する蓄積部と、
前記クライアントに保存されている前記ソフトウェアの現在のバージョン番号を含む要求データであって、前記ソフトウェアの更新データを要求する要求データを前記クライアントから取得する取得部と、
前記要求を解析し、前記関連情報に基づいて前記包含更新データを選択する選択部と、
該選択された前記包含更新データを前記クライアント宛に出力する出力部とを備える更新データ供給サーバ。
【請求項４】
クライアントとネットワークで接続されたサーバを用いて、該クライアントに保存されたソフトウェアの更新の順序に従った複数回の更新の内容を包含する包含更新データを供給させる更新データ供給方法であって、
前記包含更新データは、前記ソフトウェアの複数回の更新を１回の更新で実行するためのデータであり、
前記包含更新データは、
前記ソフトウェアの一式のファイルのいずれかをそれぞれ置き換えるための複数の新規ファイルと、
各新規ファイルのファイル名を含み、各新規ファイルを同一ファイル名の更新前のファイルに置き換えるべきことを更新内容として指示する更新指示ファイルとを備え、
前記方法は、
前記サーバが、前記ソフトウェアの更新前後のバージョン番号と、前記更新前のバージョン番号から前記更新後のバージョン番号への前記ソフトウェアの更新を行うための包含更新データと、を互いに関連付ける関連情報と、前記包含更新データとを蓄積する工程と、
前記サーバが、前記クライアントに保存されている前記ソフトウェアの現在のバージョン番号を含む要求データであって、前記ソフトウェアの更新データを要求する要求データを前記クライアントから取得する工程と、
前記サーバが、前記要求を解析し、前記関連情報に基づいて前記包含更新データを選択する工程と、
前記サーバが、該選択された前記包含更新データを前記クライアント宛に出力する工程とを備える方法。
【請求項５】
クライアントとネットワークで接続されたサーバに、該クライアントに保存されたソフトウェアの更新の順序に従った複数回の更新の内容を包含する包含更新データを供給させるためのコンピュータプログラムであって、
前記包含更新データは、前記ソフトウェアの複数回の更新を１回の更新で実行するためのデータであり、
前記包含更新データは、
前記ソフトウェアの一式のファイルのいずれかをそれぞれ置き換えるための複数の新規ファイルと、
各新規ファイルのファイル名を含み、各新規ファイルを同一ファイル名の更新前のファイルに置き換えるべきことを更新内容として指示する更新指示ファイルとを備え、
前記サーバに、前記ソフトウェアの更新前後のバージョン番号と、前記更新前のバージョン番号から前記更新後のバージョン番号への前記ソフトウェアの更新を行うための包含更新データと、を互いに関連付ける関連情報と、前記包含更新データとを蓄積させる機能と、
前記サーバに、前記クライアントに保存されている前記ソフトウェアの現在のバージョン番号を含む要求データであって、前記ソフトウェアの更新データを要求する要求データを前記クライアントから取得させる機能と、
前記サーバに、前記要求を解析し、前記関連情報に基づいて前記包含更新データを選択させる機能と、
前記サーバに、該選択された前記包含更新データを前記クライアント宛に出力させる機能とを実現させるためのコンピュータプログラム。
【請求項６】
請求項５記載のコンピュータプログラムを記録したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ソフトウェアを更新する技術に関する。
【背景技術】
【０００２】
ネットワークを介して複数のクライアントがプリンタを共有する環境下では、プリンタのマネージメントを行うソフトウェアが活用されている。例えばかかるソフトウェアは、新製品のプリンタに対応した機能の拡充を図ったり不具合を修正したりするために適宜更新する必要がある。
【０００３】
ソフトウェアは、追加または変更されるファイルを新たにインストールすることにより更新される。旧バージョンのソフトウェア全体を新バージョンのソフトウェアに置換する更新が採られることもあるが、旧バージョンと新バージョンとの差分に相当する差分ファイルのみをパーケージとして提供することにより更新時に要求されるファイルサイズを縮小することができる。更新データが大きなサイズである場合には差分データを利用して更新を行う技術が利用される。例えば更新前のソフトウェアが「ａ，ｂ」の２つのファイルで構成され、更新後のソフトウェアが「ａ，β」場合に、差分データは要素「β」と更新対象「ｂ」の指定とから構成する。更新前後のソフトウェア間の重複部分は不要であるから差分でデータは小さなサイズとできる。
【発明の開示】
【発明が解決しようとする課題】
【０００４】
通常の場合にソフトウェアの更新は、一度で完了するものではなく何度も繰り返し行われることが多い。ここで全ユーザがソフトウェアを常に最新のバージョンに更新するとは限らないから、更新用の差分ファイルのパッケージは、ユーザが保持している可能性のあるバージョンに応じて多種類用意する必要がある。
【０００５】
例えば、ソフトウェアのバージョンについて、１．０→１．０１→１．０２と２段階更新された場合を考える。必要な更新用パッケージは、バージョン１．０→１．０１及びバージョン１．０→１．０２、バージョン１．０１→１．０２についの三種類となる。さらに多くの段階について利用する場合、必要な更新用パッケージの種類は爆発的に増大する。従来、このように多種多様なパッケージの作成・管理を行う負担が非常に大きかった。
【０００６】
本発明は、上述の課題を解決するためになされたものであり、ソフトウェアの更新に関し、多種多様なパッケージの作成・管理に係る負担の軽減を図ることを目的とする。
【課題を解決するための手段】
【０００７】
上記課題の少なくとも一部を解決するために、本発明では、次の構成を適用した。
【０００８】
本発明の一形態による管理装置は、ソフトウェアの管理装置は、ソフトウェアの更新データを供給するためのサーバとネットワークを介して接続されたソフトウェアの管理装置であって、
前記ソフトウェアを構成する一式のファイルを記憶する記憶部と、
前記ソフトウェアを更新するための更新データの送付を前記サーバに対して要求する要求部と、
前記要求に応じて前記サーバから送付された更新データであって、前記ソフトウェアの更新の順序に従った複数回の更新の内容を包含する包含更新データを入力する更新データ入力部と、
前記包含更新データに基づいて前記ソフトウェアを更新する更新部とを備え、
前記包含更新データは、
前記一式のファイルのいずれかをそれぞれ置き換えるための複数の新規ファイルと、
各新規ファイルのファイル名を含み、各新規ファイルを同一ファイル名の更新前のファイルに置き換えるべきことを更新内容として指示する更新指示ファイルとを備え、
前記更新部は、前記更新指示ファイルの指示に従ってファイルの置き換えを行うことによって、前記ソフトウェアの複数回の更新を前記包含更新データを用いた１回の更新で実行する。
【０００９】
このようにすることで、ソフトウェアの更新に関して、多種多様なパッケージを複数の更新データの組み合わせに基づいて構成して利用し、データの作成や送配付、管理などの処理の煩雑さを低減することができる。
【００１０】
なお、新規ファイルは、分離した複数のものであってもよいし、一体的に構成していてもよい。また、更新指示ファイルは、新規ファイルの全部又は一部と一体的に構成していてもよい。
【００１１】
ここで、更新データ入力部が行う更新データの入力は、インターネットや無線通信網その他のネットワークを介して行うものであってもよいし、ＣＤ（Ｃｏｍｐａｃｔ  Ｄｉｓｋ）やＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｉｄｅｏ  Ｄｉｓｋ）、Ｆｌａｓｈ  Ｍｅｍｏｒｙを利用したメモリーカード等の情報記憶媒体を利用して行うものとしてもよい。
【００１２】
上記管理装置において、
従前の更新履歴を記憶する更新履歴記憶部を備え、
前記更新部は、前記更新履歴に基づき、前記参照すべき更新指示ファイルを選択するものとしてもよい。
【００１３】
このようにすることで、従前に行った更新を再び無駄に繰り返して行うことを避けることができる。これにより、更新データの送配付などの煩雑な処理を減少することができる。
【００１４】
なお、更新履歴に基づき、従前の更新を取り消して、ソフトウェアを更新前の状態に戻すことができるものとしても良い。
【００１５】
上記管理装置において、
前記更新指示ファイル間には更新すべき順序が設定されており、
前記更新部は、該順序に従って、前記更新指示ファイルを参照するものとしてもよい。
【００１６】
ソフトウェアの更新には、多種類の機能を並列的に追加する場合と、段階的に機能向上を図る場合とがある。上記態様によれば、後者の場合において、適切な更新を実現することができる。
【００１７】
上記管理装置は、
前記更新データを供給するためのサーバと、ネットワークを介して接続されており、
該サーバに対し、前記更新データの送付を要求する要求部を備え、
前記更新データ入力部は、前記サーバから前記入力を行うものとしてもよい。
【００１８】
このようにすることで、新しい更新データの供給・取得を簡便に行うことができる。
【００１９】
なお、要求部は、定期的に要求を発し続けるものとしても良いし、ユーザの指示その他の条件に従って、単発的に要求を発するものとしても良い。
【００２０】
ここでネットワークとしては、インターネットのような広域的なネットワーク、およびローカルエリアネットワーク、イントラネットなどの限定的なネットワークの双方を含む。またネットワークは、無線ＬＡＮや携帯無線電話通信技術を利用したネットワークであってもよい。
【００２１】
上記管理装置において、
前記要求部は、前記更新に利用する更新データを選択するための情報を、前記更新対象のソフトウェアに基づいて前記サーバに送信するものとしてもよい。
【００２２】
このようにすることで、更新対象のソフトウェアの情報に基づいてサーバが更新データを利用することができる。従前に行った更新を再び無駄に繰り返し行うことを避けることができるとともに、送信される更新データ量を減らすことができる。例えば、必要となる更新データを管理装置が選択し、それを特定する情報をサーバに送信し、これに基づいてサーバが必要となる更新データを選択して送信する態様をとっても良い。
【００２３】
また、本発明の他の形態による更新データ供給サーバは、クライアントとネットワークで接続され、該クライアントに保存されたソフトウェアの更新の順序に従った複数回の更新の内容を包含する包含更新データを供給する更新データ供給サーバであって、
前記包含更新データは、前記ソフトウェアの複数回の更新を１回の更新で実行するためのデータであり、
前記包含更新データは、
前記ソフトウェアの一式のファイルのいずれかをそれぞれ置き換えるための複数の新規ファイルと、
各新規ファイルのファイル名を含み、各新規ファイルを同一ファイル名の更新前のファイルに置き換えるべきことを更新内容として指示する更新指示ファイルとを備え、
前記更新データ供給サーバは、
前記ソフトウェアの更新前後のバージョン番号と、前記更新前のバージョン番号から前記更新後のバージョン番号への前記ソフトウェアの更新を行うための包含更新データと、を互いに関連付ける関連情報と、前記包含更新データとを蓄積する蓄積部と、
前記クライアントに保存されている前記ソフトウェアの現在のバージョン番号を含む要求データであって、前記ソフトウェアの更新データを要求する要求データを前記クライアントから取得する取得部と、
前記要求を解析し、前記関連情報に基づいて前記包含更新データを選択する選択部と、
該選択された前記包含更新データを前記クライアント宛に出力する出力部とを備える
【００２４】
このようにすることで、クライアントの要求に基づいて選択した更新データを送付することができ、データ量を低減できる。
【００２５】
上記更新データ供給サーバにおいて、
例えば、前記要求データは、更新対象たる前記ソフトウェアの情報を含み、
前記選択部は、該情報と前記更新データ間の関連の情報とを対比することで前記選択から除外するものを決定するものとしてもよい。
【００２６】
このようにすることで、従前に行った更新を再び無駄に行うことを避けることができる。これにより、更新データの送配付などの煩雑な処理を減少することができる。
【００２７】
上記更新データ供給サーバにおいて、
前記蓄積部は、前記複数の更新データの内容を包含した多重更新データを蓄積し、
前記送付部は、対応する該多重更新データが存在しない場合に前記複数の更新データを、存在する場合には該多重更新データを出力するものとしてもよい。
【００２８】
このようにすることで、複数の更新データによって実現される更新を、単一のデータで簡便に指示することが可能となる。例えば更新指示ファイルが複数の更新データを特定することで多重更新データを構成するものとしてもよい。
【００２９】
本発明は、ソフトウェアの管理装置、更新データ供給サーバとしての態様の他、コンピュータを用いてソフトウェア管理を行う方法や、コンピュータを用いて更新データ供給を行う方法として構成するこも可能である。また、コンピュータにソフトウェア管理を行わせるためのコンピュータプログラムや、コンピュータに更新データ供給を行わせるためのコンピュータプログラムなど種々の態様で構成することが可能である。さらにた、コンピュータにソフトウェア管理を行わせるためのコンピュータプログラムや、コンピュータに更新データ供給を行わせるためのコンピュータプログラムと同視し得る信号として構成してもよいし、これらのコンピュータプログラムを記録した記録媒体として構成してもよい。
【００３０】
ここで記憶媒体としては、フレキシブルディスクやＣＤ−ＲＯＭ、光磁気ディスク、ＩＣカード、ＲＯＭカートリッジ、パンチカード、バーコードなどの符号が印刷された印刷物、コンピュータの内部記憶装置（ＲＡＭやＲＯＭなどのメモリ）および外部記憶装置などコンピュータが読取り可能な種々の媒体を利用できる。
【発明を実施するための最良の形態】
【００３１】
以下、本発明の実施の形態について、実施例に基づき以下の順序で説明する。
Ａ．第１実施例：
Ａ１．システム構成：
Ａ２．処理：
Ａ３．変形例：
Ｂ．第２実施例：
【００３２】
Ａ．第１実施例：
A１．システム構成：
図１は、ソフトウェア更新システムの全体構成を示す説明図である。ソフトウェア更新システムは、パーソナルコンピュータ１００と更新データサーバ２００とからなる。ネットワークＩＮＴは、パーソナルコンピュータ１００と更新データサーバ２００とを接続するネットワークである。なお、パーソナルコンピュータ１００が、本発明におけるソフトウェアの管理装置に相当する。また、更新データサーバ２００が、本発明における更新データ供給サーバに相当する。
【００３３】
更新データサーバ２００は、パーソナルコンピュータ１００にインストールされたソフトウェアをバージョンアップするための更新データを供給するサーバである。パーソナルコンピュータ１００は更新データサーバ２００に要求データを送付する。更新データサーバは取得する要求データに基づいて更新データを選択して返送する。これによりパーソナルコンピュータ１００は保持するソフトウェアを更新することができる。
【００３４】
パーソナルコンピュータ１００は、自らが保持するソフトウェアを更新するために、更新データサーバ２００に要求データを送付する。要求データ送付により、更新データサーバ２００から更新データを取得することで、ソフトウェアの更新を行うことができる。
【００３５】
図１にはパーソナルコンピュータ１００と更新データサーバ２００との機能ブロック構成を併せて示した。パーソナルコンピュータ１００と更新データサーバ２００とは、それぞれ、ＣＰＵおよびメモリ等を備えたマイクロコンピュータとして構成された制御ユニットを備えている。図示する機能ブロックは、それぞれの制御ユニットの機能としてソフトウェア的に構成されている。もっとも、それぞれの機能ブロックはハードウェア的に構成しても構わない。
【００３６】
まず、更新データサーバ２００の機能ブロックについての説明を行う。取得部４１０は、ソフトウェア更新についの要求データをパーソナルコンピュータ１００から取得する。蓄積部４２０は更新データを蓄積している。ここでは、更新対象ソフトウェアのバージョン段階に応じてデータ間を互いに関連付けて蓄積する（この態様の詳細については後述する）。選択部４３０は、要求データの解析を行うことで更新データの選択を行う。このとき解析は、蓄積における関連付けを参照して行う。出力部４４０は、選択された更新データをパーソナルコンピュータ１００に送付する。
【００３７】
次に、パーソナルコンピュータ１００の機能ブロックについての説明を行う。記憶部３４０は、更新対象のソフトウェアを保持している（このソフトウェアの詳細については後述する）。履歴記憶部３３０は、更新の履歴を記憶する。要求部３５０は、履歴記憶部３３０が記憶する更新履歴を参照するとともに、更新データサーバ２００に対して要求データを送付する。更新データ入力部３１０はインターネットＩＮＴを介して更新データサーバ２００から更新データを取得して入力する。更新部３２０は、更新データ入力部３１０が入力する更新データに基づき、記憶部３４０が記憶するソフトウェアの更新を行うとともに履歴記憶部３３０にその更新内容を記憶する。
【００３８】
本実施例では、LANに接続された種々のデバイスを管理するためのマネージメントソフトウェアが記憶部３４０にインストールされている場合を例にとって、ソフトウェアの更新方法を説明する。
【００３９】
図２は、マネージメントソフトウェアの機能を示す説明図である。パーソナルコンピュータ１００の記憶部３４０はマネージメントソフトウェアを構成する一式のファイルを記憶している。図２では、マネージメントソフトウェアを中心として構成されるデバイスマネージメントシステムの概略構成を示している。以下図２を用いつつマネージメントソフトウェアの機能について説明する。
【００４０】
実施例のマネージメントソフトウェアは、ネットワークＬＡＮに、パーソナルコンピュータ１００及び種々のデバイス、クライアントが接続された環境下で利用される。またネットワークＬＡＮは、パーソナルコンピュータ１００を介して外部のインターネットＩＮＴと接続する。図２では、デバイスとしてプリンタＰＲＴ１〜ＰＲＴ４を、クライアントとしてコンピュータＰＣ１〜ＰＣ３をそれぞれ例示した。もっとも更に多数のデバイスやクライアントを備えるものとしてもよい。
【００４１】
各クライアントＰＣ１〜ＰＣ３は、出力先を特定してネットワークＬＡＮに印刷ジョブを投入することにより、プリンタＰＲＴ１〜ＰＲＴ４を用いて印刷を行うことができる。印刷を行うためには、クライアントにプリンタＰＲＴ１〜ＰＲＴ４に適合したプリンタドライバがインストールされる必要がある。プリンタドライバは、パーソナルコンピュータ１００に保存されている。クライアントＰＣ１〜ＰＣ３のユーザは、プリンタドライバが必要な場合には、パーソナルコンピュータ１００にアクセスしてプリンタドライバのインストールを行うことができる。
【００４２】
マネージメントソフトウェアは、ネットワークＬＡＮ上で必要となるプリンタドライバ一式を保存し、クライアントＰＣ１〜ＰＣ３の要求に応じてプリンタドライバを供給する。プリンタドライバは、プリンタＰＲＴ１〜ＰＲＴ４のメーカによって提供されるが、繰り返し複雑なバージョンアップが行われることが多い。バージョンアップされたプリンタドライバは、プリンタドライバデータサーバ（図示せず）によりインターネットＩＮＴを介して供給される。マネージメントソフトウェアは、プリンタドライバデータサーバにアクセスしてプリンタドライバを取得・保持する。
【００４３】
また、マネージメントソフトウェアは、プリンタＰＲＴ１〜ＰＲＴ４のマネージメントを行う機能を有する。マネージメントソフトウェアはプリンタＰＲＴ１〜ＰＲＴ４のステータス情報を取得してマネージメントに利用する。ステータス情報としては、継続中の印刷ジョブについての実行状況や、印刷用紙・インク等消耗品の状態、電源の状態等を含む。マネージメントソフトウェアは、これらの情報を、パーソナルコンピュータ１００を操作するユーザやクライアントＰＣ１〜ＰＣ３を操作するユーザに提供することができる。
【００４４】
さらに、パーソナルコンピュータ１００を操作するユーザは、マネージメントソフトウェアを利用して、プリンタＰＲＴ１〜ＰＲＴ４の動作設定やネットワーク設定を変更したり、搭載するソフトウェアを書き換えたりすることができる。
【００４５】
マネージメントソフトウェアは、マネージメント可能なプリンタの機能を拡張するため、新機種のプリンタの発売に合わせて更新される。また、マネージメント機能の追加・変更・削除などを図るための更新も行われる。
【００４６】
図３は、更新データの構成を示す説明図である。更新データはマネージメントソフトウェアの更新に利用される。
【００４７】
更新データは指示ファイルを含む。指示ファイルは、更新データ中の他のファイルを特定しつつ更新内容を指示する。パーソナルコンピュータ１００は、指示ファイルを参照することでマネージメントソフトウェアの更新を実行することができる。
【００４８】
ここでかかる更新処理は、パーソナルコンピュータ１００に備えられた更新ソフトウェアが更新データの内容を読み出しつつ行う。なお、かかる更新ソフトウェアについては、更新データサーバ２００が更新データに含めて供給するものとしてもよい。
【００４９】
図３では、ファイル名、ディレクトリ名等を並べて更新データの構成を示している。図中でファイル「ＭＫ＿１０１０Ｃ．ｉｎｉ」は指示ファイルである。指示ファイルは、図中に示したように、更新データに含む画像データ等を特定することで更新内容を指示する。図３の例ではファイル「ＬＱ＿９８２０．ｅｔｆ」及び「ｍｋ１０１０ｃ．ｇｉｆ」、「ｍｋ１０１０ｃ．ｄｌｌ」などを特定しつつ、更新内容を指示している。ここでファイル「ＬＱ＿９８２０．ｅｔｆ」はプリンタのオプション装着状態を示すテンプレートファイルであり、ファイル「ｍｋ１０１０ｃ．ｇｉｆ」はプリンタの外観イメージのファイルである。
【００５０】
なお、実施例において更新データ中の複数のファイルは、分離した複数のファイルとして、ディレクトリ構造を伴って構成する場合を例示した。これらのファイルは、ファイルごとに分離されていてもよいし一体的に構成してもよいし。
【００５１】
図４は、蓄積部４２０が蓄積するデータの構成を示す説明図である。蓄積部４２０は更新データ蓄積部４２２及び関連情報蓄積部４２４を備えている。
【００５２】
更新データ蓄積部４２２は、図３に示した更新データを複数記憶する。各更新データは、マネージメントソフトウェアの各バージョンアップに対応して用意されている。
【００５３】
関連情報蓄積部４２４は、更新データを互いに関連付ける関連情報を記憶している。具体的には、更新前後のバージョン・ナンバーを組にした更新パタンと、その更新パタンを実現する更新データとの関連を記憶する。図中では、更新パタン「バージョン１．３０→１．３１」と更新データ５，６との関連付け、及び、更新パタン「バージョン１．３１→１．３２」と更新データ７，８との関連付けを記憶する場合を例示している。
【００５４】
パーソナルコンピュータ１００は、更新データ５，６とを利用することで更新パタン「バージョン１．３０→１．３１」を利用することができる。更新パタン「バージョン１．３１→１．３２」を利用する場合も同様である。
【００５５】
更新パタン「バージョン１．３０→１．３２」を利用したい場合には、更新パタン「バージョン１．３０→１．３１」及び「バージョン１．３１→１．３２」の両者に係る更新データが必要となる。このとき、更新データは、バージョンアップの順序に基づいて利用しなければならない。具体的には５，６→７，８の順序で適用する。なお、更新データ５，６、更新データ７，８との適用順序に制限はない。
【００５６】
A２．更新処理：
図５は、ソフトウェア更新処理を示すフローチャートである。ここには、更新データサーバ２００が行う更新データ出力処理と、パーソナルコンピュータ１００が行うソフトウェア更新処理とを併せて示した。
【００５７】
パーソナルコンピュータ１００において、ステップＳ１０１では、要求部３５０が、履歴記憶部３３０に記憶する内容を参照することで、記憶部３４０に現在記憶するマネージメントソフトウェアのバージョン情報を取得する。ステップＳ１０２では、要求部３５０が、バージョン情報を含む要求データを更新データサーバ２００に送付する。
【００５８】
更新データサーバ２００において、ステップＳ００２では取得部４１０が要求データを取得する。これは、パーソナルコンピュータ１００におけるステップＳ１０２の処理と同期して行われる。ステップＳ００３では、選択部４３０が返送すべき更新データの準備を行う。ここで選択部４３０は、取得した要求データと関連情報蓄積部４２４の内容とを対比しつつ更新データ蓄積部４２２から更新データを読み出す。ステップＳ００４では、準備された更新データをパーソナルコンピュータ１００に送付する。
【００５９】
ここで、送付すべき更新データは、パーソナルコンピュータ１００におけるマネージメントソフトウェアを最新バージョンに更新するために必要な更新データである。現在のバージョン情報に基づき、最新バージョンに至る何段階かのバージョンアップの更新パタンを特定することで、対応する更新データを更新データ蓄積部４２２から取り出す。
【００６０】
パーソナルコンピュータ１００において、ステップＳ１０４では、更新データ入力部３１０が更新データの取得を行う。これは、更新データサーバ２００のステップＳ００４の処理と同期して行われる。取得した更新データは、ステップＳ１０５〜Ｓ１０７におけるループ処理に基づき、更新データ単位で順次インストール処理を行う。ステップＳ１０５〜Ｓ１０７より構成するループ処理では、バージョンアップの順序に応じて更新データをインストールする。例えば図４で示した更新パタン「バージョン１．３０→１．３２」の場合には、更新データ５，６を、更新データ７，８よりも先にインストールする。
【００６１】
ステップＳ１０５では、更新部３２０が更新データのインストール処理を行う。記憶部３４０にアクセスしてマネージメントソフトウェアの書き換えや追加記憶等の処理を行う。また、ステップＳ１０６では、かかるインストール処理の内容を履歴記憶部３３０に記憶する。例えば、ファイルの削除や追加・置き換えについての記憶を行う。ステップＳ１０７では、取得した更新データのインストールが全て完了したか否かを調べる。全て完了していればソフトウェア更新処理を終了するが、残された更新データが存在すればループ処理を続行する。
【００６２】
本実施例におけるソフトウェア更新システムによれば、ソフトウェアの更新において、多種多様なパッケージの作成・管理に係る負担の軽減を実現することができる。複数の更新データの組み合わせに基づくパッケージを利用して多種多様な更新パタンを実現することができる。
【００６３】
ここで、更新に利用する更新データの選択を行う処理はサーバ側で一括して行うために、クライアント側の負担を軽減することができる。
【００６４】
なお、蓄積部４２０は、複数の更新データの内容を包含した包含更新データを蓄積していてもよい。例えば、図４に示す更新データ５，６，７，８を包含し、更新パタン「バージョン１．３０→１．３２」を実現する包含更新データを独立して保持するものとしても良い。
【００６５】
Ａ３．変形例：
図６は、更新データの選択に係る変形例を示す説明図である。実施例において要求データはバージョン情報を含むものであり、バージョン情報と関連情報とを対比すること更新データの選択を行っていた。本変形例では、要求データはカテゴリ１，２の２区分の情報を含んで、より柔軟な要求内容を示す。
【００６６】
図６には、本変形例において関連情報蓄積部４２４ａに記憶するデータの一例を示した。要求データはカテゴリ１，２の２区分の情報を含む。カテゴリ１では、バージョンアップの系列を指定する。図示するように、マネージメントソフトウェアの系列の他に、ＰＭプリンタシリーズの系列を指定することができる。
【００６７】
カテゴリ１でマネージメントソフトウェアの系列を指定される場合、カテゴリ２で指定するバージョン情報に基づいて、実施例と同様の処理が行われる。
【００６８】
カテゴリ１でＰＭプリンタシリーズの系列を指定する場合には、ＰＭプリンタシリーズのインストールを行うことができる。カテゴリ２でＰＭプリンタシリーズのＰＭ２００，ＰＭ２２０，ＰＭ２４０等のバージョン情報を指定することで、後続機種に係る更新データのインストールを行うことができる。
【００６９】
図６に示すデータ構成を利用する更新データサーバを利用することで、多種多様な更新データの要求に応じることができる。このとき、多様な要求に応えるために、更新データを組み合わせて利用することで、更新データの作成・管理における負担を低減することができる。
【００７０】
図７は、蓄積部の構成に係る変形例を示す説明図である。図中には、更新データ１，２，３を示した。更新データ１に含む指示ファイル「ＬＰ＿１０１０Ｃ．ｉｎｉ」は、指示ファイルの内容中に更新データ２，３を特定する記述を含む。
【００７１】
更新データ２，３は、更新データ１とは独立して記憶する。更新を行うパーソナルコンピュータは、更新データ１〜３を取得し、更新データ１の指示ファイル内容に応じて更新データ２，３を併せて利用することができる。このとき、更新データ２，３に含む指示ファイルを利用することで、それぞれ、更新データ２，３のインストールを行う。
【００７２】
なお、更新データ１の指示ファイル中の記述に従って、更新データ１に更新データ２，３を併合して送付してもよいし、各別に分離したまま送付してもよい。また、更新データサーバは当初は更新データ１のみの送付を行い、パーソナルコンピュータは更新データ１の指示ファイルに応じて更新データ２，３の要求を行うものとしてもよい。
【００７３】
ここで蓄積部において更新データ２，３は、更新データ１以外の更新データにおける指示ファイルからも特定される。また更新データ２，３は、それ自体、独立して送付の対象となる。例えば更新データ２，３は、複数のプリンタにかかる共通更新データであってもよいし、特定の汎用的な処理に係る共通更新データであってもよい。
【００７４】
上記のように構成する更新データを利用することで、蓄積部における記憶容量を削減することができる。また、新たな更新パタンを利用したい場合に、既存の更新データをそのまま利用しつつ簡便に更新を実現することができる。
【００７５】
Ｂ．第２実施例：
図８は、第２実施例におけるシステム構成を示す説明図である。本実施例でパーソナルコンピュータ１００ｂは、更新データ記憶装置２００ｂとネットワークＩＮＴを介して接続して更新データを読み出す。更新データ記憶装置２００ｂは、更新データ選択機能を有さない点で既述の更新データサーバ２００と相違する。ただし本実施例において、パーソナルコンピュータ１００ｂは更新データの選択機能を有する。更新データ記憶装置２００ｂは記憶する更新データの要約情報の出力を行い、パーソナルコンピュータ１００ｂはかかる要約情報を利用して選択処理を行うことで、更新データの要求を行う。
【００７６】
図８にはパーソナルコンピュータ１００ｂの機能ブロック構成を併せて示した。以下では、第１実施例の場合と相違する点に注目しつつ図示する機能ブロックの説明を行う。
【００７７】
はじめに要求部３５０ｂは要約情報の要求を行う。更新部３２０ｂは、取得する要約情報を、履歴記憶部３３０ｂの記憶内容と対比することで、第１実施例の更新データサーバ２００と同様に更新データの選択を行う。ここで要約情報には、記憶する更新データの一覧を表にした情報や、更新データと更新パタンとを関連付けた表の情報を含む。
【００７８】
要求部３５０ｂは、更新部３２０ｂの選択処理に基づいて更新データの要求を発する。更新データ入力部３１０ｂは、要求に基づいた更新データを入力する。更新部３２０ｂは、選択結果に応じた更新データを利用して記憶部３４０ｂに記憶するソフトウェアの更新を行うとともに、更新内容に応じて履歴記憶部３３０ｂの履歴情報を改訂する。
【００７９】
図９は、第２実施例における処理を示すフローチャートである。これはパーソナルコンピュータ１００ｂが行う処理である。
【００８０】
ステップＳ３０１では、要約情報の読み出しを行う。要求部３５０ｂが要求を発し、更新データ入力部３１０ｂが読み出しを行う。ステップＳ３０２で、要約情報を履歴記憶部３３０ｂの記憶内容と対比することで更新データの選択を行う。ステップＳ３０３では、選択結果に基づいて実際に更新データを読み出す。この後、図５に示したステップＳ１０５〜Ｓ１０７におけるループ処理を行ってインストール等の処理を行う。
【００８１】
本実施例におけるソフトウェア更新システムによれば、簡潔な構成の更新データ記憶装置を利用してソフトウェア更新システムを実現することができる。要約情報に基づいて予め選択した更新データのみが通信されるために、更新データ量を低減することができる。
【００８２】
なお、要約情報の要求を行うことなく、要求部３５０ｂは所定の属性を有する更新データを全て取り出すものとしてもよい。更新部３２０ｂは、読み出した更新データの全てをインストールしてもよいし、選択処理を行った後にその結果に基づいてインストールを行っても良い。
【００８３】
なお、第１実施例の更新データサーバ２００に第２実施例のパーソナルコンピュータ１００ｂが接続する場合も考えられる。このときには、サーバ側とクライアント側の両者で選択処理を備えることとなる。２段階の選択で絞り込みを行うものとしてもよいし、クライアント側のコンピュータを操作するユーザのユーザ入力その他の条件に従っていずれかの選択処理のみを利用するものとしてもよい。
【００８４】
ここで指示ファイルは例えば、「．ｉｎｉ」など特定の拡張子を有するファイルとして更新データ中で特定されるものとしても良い。また、一定のファイル名を有するものとしてもよいし、更新データ中の先頭に位置するファイルとして特定されるものとしてもよく、種々の構成を利用することができる。
【００８５】
以上、実施例に基づき本発明にかかるを説明してきたが、上述した発明の実施の形態は、本発明の理解を容易にするためのものであり、本発明を限定するものではない。例えば、マネージメントソフトウェアの更新だけでなく、本発明は種々のソフトウェアの更新に適用可能である。また、その趣旨並びに特許請求の範囲を逸脱することなく、本発明は変更・改良され得る。
【図面の簡単な説明】
【００８６】
【図１】ソフトウェア更新システムの全体構成を示す説明図である。
【図２】デバイスのマネージメントソフトウェアの機能を示す説明図である。
【図３】更新データの構成を示す説明図である。
【図４】蓄積部が蓄積するデータの構成を示す説明図である。
【図５】ソフトウェア更新処理を示すフローチャートである。
【図６】更新データの選択に係る変形例を示す説明図である。
【図７】蓄積部の構成に係る変形例を示す説明図である。
【図８】第２実施例におけるシステム構成を示す説明図である。
【図９】第２実施例における処理を示すフローチャートである。
【符号の説明】
【００８７】
１００…パーソナルコンピュータ
２００…更新データサーバ
３１０…更新データ入力部
３２０…更新部
３３０…履歴記憶部
３４０…記憶部
３５０…要求部
４１０…取得部
４２０…蓄積部
４２２…更新データ蓄積部
４２４…関連情報蓄積部
４３０…選択部
４４０…出力部
４２４ａ…関連情報蓄積部
１００ｂ…パーソナルコンピュータ
３１０ｂ…更新データ入力部
３２０ｂ…更新部
３３０ｂ…履歴記憶部
３４０ｂ…記憶部
３５０ｂ…要求部
【図１】
0004155331.tif 000002
【図２】
0004155331.tif 000003
【図３】
0004155331.tif 000004
【図４】
0004155331.tif 000005
【図５】
0004155331.tif 000006
【図６】
0004155331.tif 000007
【図７】
0004155331.tif 000008
【図８】
0004155331.tif 000009
【図９】
0004155331.tif 000010