(57)【要約】【課題】複数のユーザによるソフトウエアの更新または追加の際に、依存関係を考慮した処理を行うソフトウエアの更新・追加管理装置、ソフトウエアの更新・追加管理プログラム及び複合機を提供する。【解決手段】ユーザがソフトウエアの更新処理または追加処理を指示すると、更新・追加受付部２８がこれらの指示を受け付け、上記指示に基づき、対象ソフトウエアを選択する。参照値変更部３４は、当該対象ソフトウエアの参照値に１を加える。依存関係抽出部３０が、上記対象ソフトウエアが依存関係を有する依存ソフトウエアを抽出し、参照値変更部３４が、当該依存ソフトウエアの参照値にも１を加える。中止判定部３８は、更新処理または追加処理の中止指示を受け付けたときに、上記参照値を参照し、０のときのみに更新処理または追加処理を中止し、依存ソフトウエアの処理を中止することを回避する。【選択図】図３
2011055248.tif 000002
【特許請求の範囲】
【請求項１】
ソフトウエアの更新処理または追加処理の指示を受け付ける更新・追加受付手段と、
前記更新処理または追加処理の対象であるソフトウエアが依存関係を有する依存ソフトウエアを抽出する依存関係抽出手段と、
前記更新処理または追加処理を受け付けたソフトウエア及び前記依存関係抽出手段が抽出した依存ソフトウエアに参照値を関連付ける参照値関連付手段と、
前記ソフトウエアまたは前記依存ソフトウエアに対して更新処理または追加処理の指示があった場合、及び前記ソフトウエアまたは前記依存ソフトウエアがさらに他のソフトウエアの依存ソフトウエアとして抽出された場合に、前記参照値を進め、前記更新処理または追加処理の中止が指示されたときに対象であるソフトウエアまたは依存ソフトウエアの参照値を減じる参照値変更手段と、
前記更新処理または追加処理の中止指示を受け付けたときに、前記参照値に基づいて前記中止指示を実行するか否かを判定する中止判定手段と、
を備えることを特徴とするソフトウエアの更新・追加管理装置。
【請求項２】
請求項１記載のソフトウエアの更新・追加管理装置において、前記更新・追加受付手段は、更新処理または追加処理中のソフトウエアより版が古いソフトウエアの更新処理または追加処理の指示の受け付けを拒否することを特徴とするソフトウエアの更新・追加管理装置。
【請求項３】
請求項１または請求項２に記載のソフトウエアの更新・追加管理装置が、前記依存関係抽出手段が依存ソフトウエアを抽出した場合に、依存ソフトウエアの更新処理若しくは追加処理の作業状況または更新処理若しくは追加処理の指示を通知する通知手段を備えることを特徴とするソフトウエアの更新・追加管理装置。
【請求項４】
請求項１から請求項３のいずれか一項に記載のソフトウエアの更新・追加管理装置と、
前記ソフトウエアの更新・追加管理装置による更新処理または追加処理の対象となるソフトウエアと、
を備えることを特徴とする複合機。
【請求項５】
コンピュータを、
ソフトウエアの更新処理または追加処理の指示を受け付ける更新・追加受付手段、
前記更新処理または追加処理の対象であるソフトウエアが依存関係を有する依存ソフトウエアを抽出する依存関係抽出手段、
前記更新処理または追加処理を受け付けたソフトウエア及び前記依存関係抽出手段が抽出した依存ソフトウエアに参照値を関連付ける参照値関連付手段、
前記ソフトウエアまたは前記依存ソフトウエアに対して更新処理または追加処理の指示があった場合、及び前記ソフトウエアまたは前記依存ソフトウエアがさらに他のソフトウエアの依存ソフトウエアとして抽出された場合に、前記参照値を進め、前記更新処理または追加処理の中止が指示されたときに対象であるソフトウエアまたは依存ソフトウエアの参照値を減じる参照値変更手段、
前記更新処理または追加処理の中止指示を受け付けたときに、前記参照値に基づいて前記中止指示を実行するか否かを判定する中止判定手段、
として機能させることを特徴とするソフトウエアの更新・追加管理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ソフトウエアの更新・追加管理装置、ソフトウエアの更新・追加管理プログラム及び複合機に関する。
【背景技術】
【０００２】
従来より、スキャナ、印刷装置、複写機、ファクシミリ等の機能を有する複合機等に搭載されるソフトウエアの多機能化に伴い、モジュール単位でソフトウエアの更新処理（バージョンアップ）を行う装置及びプログラムが提案されている（例えば、下記特許文献１参照）。また、モジュール単位でソフトウエアを更新し、あるいは追加する際に、ユーザ毎に更新・追加を行うことにより、ソフトウエアのカスタマイズが可能になる。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００８−２６９１２８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
本発明の目的は、複数のユーザによるソフトウエアの更新または追加の際に、依存関係を考慮した処理を行うソフトウエアの更新・追加管理装置、ソフトウエアの更新・追加管理プログラム及び複合機を提供することにある。
【課題を解決するための手段】
【０００５】
上記目的を達成するために、請求項１記載のソフトウエアの更新・追加管理装置の発明は、ソフトウエアの更新処理または追加処理の指示を受け付ける更新・追加受付手段と、前記更新処理または追加処理の対象であるソフトウエアが依存関係を有する依存ソフトウエアを抽出する依存関係抽出手段と、前記更新処理または追加処理を受け付けたソフトウエア及び前記依存関係抽出手段が抽出した依存ソフトウエアに参照値を関連付ける参照値関連付手段と、前記ソフトウエアまたは前記依存ソフトウエアに対して更新処理または追加処理の指示があった場合、及び前記ソフトウエアまたは前記依存ソフトウエアがさらに他のソフトウエアの依存ソフトウエアとして抽出された場合に、前記参照値を進め、前記更新処理または追加処理の中止が指示されたときに対象であるソフトウエアまたは依存ソフトウエアの参照値を減じる参照値変更手段と、前記更新処理または追加処理の中止指示を受け付けたときに、前記参照値に基づいて前記中止指示を実行するか否かを判定する中止判定手段と、を備えることを特徴とする。
【０００６】
請求項２記載の発明は、請求項１記載の発明において、前記更新・追加受付手段が、更新処理または追加処理中のソフトウエアより版が古いソフトウエアの更新処理または追加処理の指示の受け付けを拒否することを特徴とする。
【０００７】
請求項３記載の発明は、請求項１または請求項２に記載の発明が、前記依存関係抽出手段が依存ソフトウエアを抽出した場合に、依存ソフトウエアの更新処理若しくは追加処理の作業状況または更新処理若しくは追加処理の指示を通知する通知手段を備えることを特徴とする。
【０００８】
請求項４記載の複合機の発明は、請求項１から請求項３のいずれか一項に記載のソフトウエアの更新・追加管理装置と、前記ソフトウエアの更新・追加管理装置による更新処理または追加処理の対象となるソフトウエアと、を備えることを特徴とする。
【０００９】
請求項５記載のソフトウエアの更新・追加管理プログラムの発明は、コンピュータを、ソフトウエアの更新処理または追加処理の指示を受け付ける更新・追加受付手段、前記更新処理または追加処理の対象であるソフトウエアが依存関係を有する依存ソフトウエアを抽出する依存関係抽出手段、前記更新処理または追加処理を受け付けたソフトウエア及び前記依存関係抽出手段が抽出した依存ソフトウエアに参照値を関連付ける参照値関連付手段、前記ソフトウエアまたは前記依存ソフトウエアに対して更新処理または追加処理の指示があった場合、及び前記ソフトウエアまたは前記依存ソフトウエアがさらに他のソフトウエアの依存ソフトウエアとして抽出された場合に、前記参照値を進め、前記更新処理または追加処理の中止が指示されたときに対象であるソフトウエアまたは依存ソフトウエアの参照値を減じる参照値変更手段、前記更新処理または追加処理の中止指示を受け付けたときに、前記参照値に基づいて前記中止指示を実行するか否かを判定する中止判定手段、として機能させることを特徴とする。
【発明の効果】
【００１０】
請求項１または請求項５の発明によれば、本構成を有しない場合に較べて、複数のユーザによるソフトウエアの更新または追加の際に、各ソフトウエア間の依存関係を考慮し、処理対象のソフトウエアと依存関係を有するソフトウエアの更新処理または追加処理が中止されることを防止できる。
【００１１】
請求項２の発明によれば、本構成を有しない場合に較べて、最新のバージョンのソフトウエアにより更新処理または追加処理を実行できる。
【００１２】
請求項３の発明によれば、本構成を有しない場合に較べて、依存ソフトウエアの作業状況及び必要な依存ソフトウエアの更新処理若しくは追加処理をユーザが認識することができる。
【００１３】
請求項４の発明によれば、本構成を有しない場合に較べて、複数のユーザによるソフトウエアの更新または追加の際に、各ソフトウエア間の依存関係を考慮し、処理対象のソフトウエアと依存関係を有するソフトウエアの更新処理または追加処理が中止されることを防止できる複合機を実現できる。
【図面の簡単な説明】
【００１４】
【図１】実施形態にかかるソフトウエアの更新・追加管理装置を適用したソフトウエアの更新・追加システムの構成例を示す図である。
【図２】実施形態にかかるソフトウエアの更新・追加管理装置を構成するコンピュータのハードウェア構成の例を示す図である。
【図３】実施形態にかかるソフトウエアの更新・追加管理装置の一実施形態の機能ブロック図である。
【図４】実施形態にかかるソフトウエアの更新・追加管理装置の動作例のフロー図である。
【図５】ユーザがソフトウエアの更新または追加の指示を行った場合の指示及びソフトウエアの流れの説明図である。
【図６】ユーザがソフトウエアの更新または追加の指示を行った場合に、ソフトウエアの更新・追加管理装置が管理する管理情報リストの例を示す図である。
【発明を実施するための形態】
【００１５】
以下、本発明を実施するための形態（以下、実施形態という）を、図面に従って説明する。
【００１６】
図１には、実施形態にかかるソフトウエアの更新・追加管理装置を適用したソフトウエアの更新・追加システムの構成例が示される。図１において、複合機１００には、ソフトウエアの更新・追加管理装置１０２が搭載されており、更新または追加用のソフトウエアを提供するソフトウエア提供サーバ１０４と、ネットワーク等の通信手段１０６を介して接続されている。
【００１７】
複合機１００は、例えばスキャナ、印刷装置、複写機、ファクシミリ等の機能を有し、それぞれの機能がモジュール単位のソフトウエアとハードウエアにより実現されている。なお、本実施形態では、複合機１００を例に説明しているが、モジュール単位のソフトウエアを複数のユーザにより更新または追加できるものであれば限定されない。また、更新・追加管理装置１０２については後述する。
【００１８】
ソフトウエア提供サーバ１０４は、ユーザからの要求に応じて、上記複合機１００のソフトウエアを更新しまたは追加するためのソフトウエアを提供する。
【００１９】
通信手段１０６は、上述したように、ネットワーク等により構成される。具体的には、インターネット、イントラネット等が好適に使用される。
【００２０】
図２には、実施形態にかかるソフトウエアの更新・追加管理装置１０２を構成するコンピュータのハードウェア構成の例が示される。図２において、ソフトウエアの更新・追加管理装置１０２は、中央処理装置（例えばマイクロプロセッサ等のＣＰＵを用いるとよい）１０、ランダムアクセスメモリ（ＲＡＭ）１２、読み出し専用メモリ（ＲＯＭ）１４、通信装置１６、入力装置１８、表示装置２０及びハードディスク装置（ＨＤＤ）２２を含んで構成されている。また、これらの構成要素は、バス２４により互いに接続されている。なお、通信装置１６、入力装置１８、表示装置２０及びハードディスク装置２２は、それぞれ各入出力インターフェース２６ａ、２６ｂ、２６ｃ、２６ｄを介してバス２４に接続されている。
【００２１】
ＣＰＵ１０は、ＲＡＭ１２またはＲＯＭ１４に格納されている制御プログラムに基づいて、後述する各部の動作を制御する。ＲＡＭ１２は主としてＣＰＵ１０の作業領域として機能し、ＲＯＭ１４にはＢＩＯＳ等の制御プログラムその他のＣＰＵ１０が使用するデータが格納されている。
【００２２】
また、通信装置１６は、ＵＳＢ（ユニバーサルシリアルバス）ポート、ネットワークポート、無線通信ポートその他の適宜なインターフェースにより構成され、ＣＰＵ１０がネットワーク等の通信手段を介して外部の装置とデータをやり取りするために使用する。なお、無線通信ポートとしては、例えば赤外線通信、非接触型ＩＣカード等による通信に対応しているものを使用できるが、これらには限定されない。上記データのやり取りの例としては、例えば複合機１００のソフトウエアを更新しまたは追加するためのソフトウエアのやり取りがある。また、ユーザが携帯端末等から赤外線通信、非接触型ＩＣカードあるいはインターネット等を使用して送信したソフトウエアの更新処理または追加処理の指示またはこれらの処理を中止する指示を受信することも例示される。
【００２３】
また、入力装置１８は、キーボード、ポインティングデバイス、タッチパネル等により構成され、使用者が動作指示等を入力するために使用する。なお、この入力装置１８は、複合機１００の入力パネルとして使用することもできる。
【００２４】
また、表示装置２０は、液晶ディスプレイ、タッチパネル等により構成され、ＣＰＵ１０による処理結果、例えばソフトウエアの更新処理または追加処理の結果等を表示する。なお、この表示装置２０は、複合機１００の表示パネルとして使用することもできる。
【００２５】
また、ハードディスク装置２２は記憶装置であり、後述する処理に必要となる種々のデータを記憶する。なお、ハードディスク装置２２の代わりに、ＥＥＰＲＯＭ等の不揮発性記憶装置を使用してもよい。
【００２６】
図３には、実施形態にかかるソフトウエアの更新・追加管理装置１０２の一実施形態の機能ブロック図が示される。図３において、ソフトウエアの更新・追加管理装置１０２は、更新・追加受付部２８、依存関係抽出部３０、管理情報設定部３２、参照値変更部３４、更新・追加部３６、中止判定部３８、通知部４０及び通信制御部４２を含んで構成されており、これらの機能は例えばＣＰＵ１０とＣＰＵ１０の処理動作を制御するプログラムにより実現される。なお、上記機能の一部の構成を専用のハードウェア（例えばＡＳＩＣ等）で構成してもよい。
【００２７】
更新・追加受付部２８は、ソフトウエアの更新処理または追加処理の指示をユーザから受け付ける。この場合、上記指示を複数のユーザから複数受け付けることができる。また、上記指示は、ユーザが携帯端末等の通信機器を使用して送信し、通信装置１６を介して受信する構成とすることができる。
【００２８】
依存関係抽出部３０は、上記更新処理または追加処理の対象であるソフトウエアが依存関係を有する依存ソフトウエアを抽出する。ここで、依存関係とは、一方のソフトウエアの一部または全部のアルゴリズム等を他方のソフトウエアが使用する関係をいう。
【００２９】
管理情報設定部３２は、更新・追加受付部２８が更新処理または追加処理の指示を受け付けたソフトウエア及び依存関係抽出部３０が抽出した依存ソフトウエアの管理情報を設定する。管理情報としては、ソフトウエアの版（バージョン）や、ソフトウエアの更新処理または追加処理の進行状況を表す情報としてソフトウエアに関連付けられる参照値等がある。この参照値は、例えば０または正の整数とすることができるが、これに限定されることはない。
【００３０】
参照値変更部３４は、更新処理または追加処理の対象であるソフトウエアまたはこれと依存関係を有する依存ソフトウエアに対して更新処理または追加処理の指示があった場合、及び上記ソフトウエアまたは上記依存ソフトウエアがさらに他のソフトウエアの依存ソフトウエアとして抽出された場合に、参照値を進め（例えば参照値に１を加える）、上記更新処理または追加処理を中止する指示が出されたときに対象であるソフトウエアまたは依存ソフトウエアの参照値を減じる（例えば参照値から１を減じる）。なお、上記更新処理または追加処理が終了した場合には、参照値を初期値（例えば０）に変更する。
【００３１】
更新・追加部３６は、更新・追加受付部２８が受け付けた更新処理または追加処理の指示に基づき、ソフトウエアの更新処理または追加処理を実行する。
【００３２】
中止判定部３８は、更新処理または追加処理の中止指示を受け付けたときに、上記参照値に基づいて中止指示を実行するか否かを判定する。例えば、参照値を０または正の整数とし、初期値を０とした場合に、参照値が１以上である場合は、更新処理または追加処理の指示があり、かつこれらの処理が終了していないことを意味する。特に、他のソフトウエアが依存関係を有し、当該他のソフトウエアの動作に必要なソフトウエアは、このソフトウエア自身の必要性がなくなったとしても当該他のソフトウエアのために更新処理または追加処理を続行する必要がある。これは、例えばあるユーザが上記ソフトウエアの追加処理を指示し、その参照値が参照値変更部３４により０から１に変更された後、他のユーザが上記ソフトウエアに依存関係を有する他のソフトウエアの追加処理を指示した場合、依存関係抽出部３０により依存関係が抽出され、参照値変更部３４が上記ソフトウエアの参照値を１から２に変更する。この状態で、上記あるユーザが上記ソフトウエアの追加処理の中止指示を入力した場合等に（この場合、参照値変更部３４により参照値が２から１に変更される）、中止判定部３８は、上記ソフトウエアの参照値を参照し、その値が０となっていないときに、上記ソフトウエアの追加処理を中止する指示がされても、他のソフトウエアの依存関係によりなお追加処理が必要な場合と判定して、中止指示の実行を拒否する。一方、上記参照値が０である場合には、他のソフトウエアのために必要となる等の事情がないと判定し、中止指示を実行する。
【００３３】
通知部４０は、依存関係抽出部３０が依存ソフトウエアを抽出した場合に、その旨をユーザに通知する。この通知は、例えば表示装置２０に表示することにより実行する。この通知の内容は、例えば依存ソフトウエアの更新処理若しくは追加処理の作業状況、または更新処理若しくは追加処理を促すためのユーザへの指示であるのが好適である。
【００３４】
通信制御部４２は、通信装置１６による、ソフトウエア提供サーバ１０４との間、あるいはユーザの携帯端末との間の、上記複合機１００のソフトウエアを更新しまたは追加するためのソフトウエア、あるいは更新、追加またはその中止等の情報の通信を制御する。
【００３５】
図４には、実施形態にかかるソフトウエアの更新・追加管理装置１０２の動作例のフローが示される。また、図５には、ユーザがソフトウエアの更新または追加の指示を行った場合の指示及びソフトウエアの流れの説明図が示される。また、図６（ａ），（ｂ），（ｃ）には、ユーザがソフトウエアの更新または追加の指示を行った場合に、ソフトウエアの更新・追加管理装置１０２が管理する管理情報リストの例が示される。この管理情報リストは、管理情報設定部３２が設定する。
【００３６】
図４において、ユーザが携帯端末等からソフトウエアの更新処理または追加処理の指示を送信すると、更新・追加受付部２８がこれらの指示を受け付ける（Ｓ１）。更新・追加受付部２８は、受け付けた更新処理または追加処理の指示に基づき、更新処理または追加処理の対象のソフトウエア（対象ソフトウエアという）を選択し、通信制御部４２を介してソフトウエア提供サーバ１０４に当該ソフトウエアを要求する（Ｓ２）。
【００３７】
具体的には、例えば図５において、複合機１００には、ソフトウエアＡ、ソフトウエアＢ、ソフトウエアＣ等が搭載されており、３人のユーザ（ユーザ１、ユーザ２、ユーザ３）が複合機１００を使用している。この場合、例えばユーザ１がソフトウエアＡとソフトウエアＢを、ユーザ２がソフトウエアＡとソフトウエアＢとソフトウエアＣを、ユーザ３がソフトウエアＣをそれぞれ使用している。また、ソフトウエア提供サーバ１０４は、更新または新規追加用のソフトウエアＡ、ソフトウエアＢ、ソフトウエアＣ、ソフトウエアＤ等を提供できるものとする。この状態において、例えばユーザ１がソフトウエアＡの更新をソフトウエアの更新・追加管理装置１０２に指示すると、更新・追加受付部２８がこの指示を受け付けて、ソフトウエア提供サーバ１０４にソフトウエアＡの更新用の版（バージョン）を要求する。
【００３８】
次に、更新・追加受付部２８は、上記対象ソフトウエアが更新または追加の作業中（ソフトウエア提供サーバ１０４からダウンロード中またはインストール中）であるか否かを判断する（Ｓ３）。例えば、他のユーザが先行して対象ソフトウエアの更新処理または追加処理を指示している場合には、更新または追加の作業中と判断される。上記対象ソフトウエアが作業中である場合には、当該作業中の対象ソフトウエアとＳ２で要求した対象ソフトウエア（要求ソフトウエアという）とのバージョンを比較して、上記要求ソフトウエアが上記作業中の対象ソフトウエアより上位（新しい）バージョンであるか否かを判定する（Ｓ４）。Ｓ４において、要求ソフトウエアが作業中の対象ソフトウエアより上位バージョンでない場合には、要求ソフトウエアのダウンロードを中止する（Ｓ５）。一方、Ｓ４において、要求ソフトウエアが作業中の対象ソフトウエアより上位バージョンである場合には、上記作業中の対象ソフトウエアのダウンロードを中止する（Ｓ６）。
【００３９】
Ｓ３で上記対象ソフトウエアが作業中でない場合、及びＳ６で作業中の対象ソフトウエアのダウンロードを中止した場合には、管理情報設定部３２が上記要求ソフトウエアを対象ソフトウエアとして管理情報リストに追加する（Ｓ７）。また、参照値変更部３４が、管理情報リストに追加した対象ソフトウエアの参照値を変更し、上記対象ソフトウエアが更新処理中または追加処理中であることを示す（Ｓ８）。
【００４０】
具体的には、例えばユーザ１がソフトウエアＡの更新を指示した場合、図６（ａ）に示される一覧表形式の管理情報リストの作業中バージョンに、更新用のソフトウエアＡのバージョン（１．０１）が追加される。また、更新の対象であるソフトウエアＡの参照値は、参照値変更部３４が１としている。なお、図６（ａ）の例では、搭載済みのソフトウエアのバージョン及び参照値も示されている。また、参照値の空欄は参照値が０である（ソフトウエアが更新または追加の作業中ではない）ことを示しており、更新処理または追加処理の指示がある毎に１ずつ加えられ、更新処理または追加処理が中止されると１ずつ減じられる。
【００４１】
次に、依存関係抽出部３０が、上記対象ソフトウエアが依存関係を有する依存ソフトウエアを抽出する（Ｓ９）。依存ソフトウエアが存在する（Ｓ９で抽出された）場合には（Ｓ１０）、依存ソフトウエアが既に更新または追加の作業中であるか否かを依存関係抽出部３０が判定する（Ｓ１１）。なお、依存ソフトウエアが抽出された場合には、通知部４０がその旨をユーザに通知してもよい。
【００４２】
Ｓ１１において、依存ソフトウエアが更新または追加の作業中でない場合には、管理情報設定部３２が依存ソフトウエアを管理情報リストに追加し、参照値変更部３４が、管理情報リストに追加した依存ソフトウエアの参照値を変更する（Ｓ１２）。また、依存ソフトウエアが更新または追加の作業中である場合には、既に管理情報リストに追加されている依存ソフトウエアの参照値を、参照値変更部３４が変更する（Ｓ１３）。
【００４３】
具体的には、例えば図５において、ユーザ３がソフトウエアＤの追加をソフトウエアの更新・追加管理装置１０２に指示すると、更新・追加受付部２８がこの指示を受け付けて、ソフトウエア提供サーバ１０４にソフトウエアＤを要求する。このとき、依存ソフトウエアとしてソフトウエアＡ及びソフトウエアＢが抽出されると、図６（ｂ）に示されるように、管理情報設定部３２がソフトウエアＤのバージョン（１．００）を管理情報リストに追加し、参照値変更部３４がソフトウエアＡの参照値を２に、ソフトウエアＢ及びソフトウエアＤの参照値をそれぞれ１に変更する。ソフトウエアＡは、図６（ａ）の段階（更新処理の指示）で参照値が１となっていたが、ソフトウエアＤの依存ソフトウエアとして抽出され、依存ソフトウエアとしても更新処理が必要になったことを示すために、参照値にさらに１が加えられ、２となる。
【００４４】
なお、上述した中止判定部３８は、ユーザから更新処理または追加処理の中止指示を受け付けたときに、上記参照値を参照し、参照値が０であるときにのみ更新処理または追加処理を中止する。例えば、図６（ｂ）の状態でユーザ１からソフトウエアＡの更新処理を中止する指示があった場合、参照値変更部３４はソフトウエアＡの参照値から１を減じて当該参照値が１となる。このとき中止判定部３８は、ソフトウエアＡの参照値が０でない（１である）ことから、ソフトウエアＡの更新処理の中止を実行しない。ソフトウエアＡの更新処理はユーザ１にとって不要となっても、ユーザ３が追加処理を指示したソフトウエアＤにとって必要だからである。このように、参照値が０でない場合には、当初更新処理または追加処理を指示したユーザにとって不要となった処理が、他のユーザの更新処理または追加処理の指示の対象であるソフトウエアにとっては尚必要であることを意味しているので、中止判定部３８が上記更新処理または追加処理を中止しない旨の判断を行う。
【００４５】
Ｓ１０で依存ソフトウエアが存在していない場合には、更新・追加部３６が、Ｓ１で受け付けた対象ソフトウエアの更新処理または追加処理を実行する。また、Ｓ１０で依存ソフトウエアが存在している場合には、更新・追加部３６が、上記対象ソフトウエア及び存ソフトウエアの更新処理または追加処理（ダウンロード）を実行する（Ｓ１４）。この場合、対象ソフトウエアと依存ソフトウエアのダウンロードの順序は制限されず、同時であってもよい。
【００４６】
図６（ｃ）では、更新・追加部３６により、ソフトウエアＡの更新処理が終了したときの管理情報リストの例が示される。図６（ｃ）において、ソフトウエアＡの参照値は更新処理の終了により０とされている。また、ソフトウエアＢは更新処理が終了しておらず、参照値は１に維持されている。また、ソフトウエアＤも、追加処理が終了しておらず、参照値は１に維持されている。
【００４７】
上述した、図４の各ステップを実行するためのプログラムは、記録媒体に格納することも可能であり、また、そのプログラムを通信手段によって提供しても良い。その場合、例えば、上記説明したプログラムについて、「プログラムを記録したコンピュータ読み取り可能な記録媒体」の発明または「データ信号」の発明として捉えても良い。
【符号の説明】
【００４８】
１０  ＣＰＵ、１２  ＲＡＭ、１４  ＲＯＭ、１６  通信装置、１８  入力装置、２０  表示装置、２２  ハードディスク装置、２４  バス、２６ａ、２６ｂ、２６ｃ、２６ｄ  入出力インターフェース、２８  更新・追加受付部、３０  依存関係抽出部、３２  管理情報設定部、３４  参照値変更部、３６  更新・追加部、３８  中止判定部、４０  通知部、４２  通信制御部、１００  複合機、１０２  ソフトウエアの更新・追加管理装置、１０４  ソフトウエア提供サーバ、１０６  通信手段。
【図１】
2011055248.tif 000003
【図２】
2011055248.tif 000004
【図３】
2011055248.tif 000005
【図４】
2011055248.tif 000006
【図５】
2011055248.tif 000007
【図６】
2011055248.tif 000008