(57)【要約】      （修正有）【課題】更新管理装置から端末装置へのデータ転送による回線帯域の圧迫を低減することができる更新管理システムを得る。【解決手段】更新管理システム１０００において、リングネットワーク上に接続された端末装置１０１〜１０４のソフトウェアの更新管理を行う更新管理装置５００は、必要なソフトウェア構成部品のデータのみの集合であるソフトウェア集合データを生成する。更新管理装置５００からソフトウェア集合データを受信する最初の端末装置１０１が予め定められており、最初の端末装置１０１以外の端末装置１０２〜１０４は、予め定められたデータ転送順序に従って端末装置間を順次転送されるソフトウェア集合データを受信する。ソフトウェア集合データを受信した端末装置は、自端末に必要なソフトウェア構成部品のデータを抽出し、ソフトウェアを更新する。【選択図】図１
2018136727.tif 000002
【特許請求の範囲】
【請求項１】
更新管理対象のソフトウェアを構成する複数のソフトウェア構成部品のデータのうちの、必要とされるソフトウェア構成部品のデータのみの集合であるソフトウェア集合データを生成するソフトウェア集合データ生成手段と、前記更新管理対象のソフトウェアを有する複数の端末装置が接続されたネットワークに前記ソフトウェア集合データを送信する送信手段とを有する更新管理装置と、
前記ネットワークに接続されて、受信した前記ソフトウェア集合データから自端末に必要な前記ソフトウェア構成部品のデータを抽出し、自端末のソフトウェアの更新を行うソフトウェア更新手段と、前記ソフトウェア集合データを送信する送信手段とを有する複数の端末装置と
を備えた更新管理システムであって、
前記複数の端末装置は、前記更新管理装置からデータを受信する最初の端末装置と各端末装置間におけるデータ転送順序が予め定められ、それぞれの端末装置が前記ソフトウェア集合データを前記データ転送順序に従って順次転送することを特徴とする更新管理システム。
【請求項２】
前記複数の端末装置は、自端末におけるソフトウェアの更新に必要な前記ソフトウェア構成部品を識別する更新対象識別情報を前記ソフトウェア構成部品の一覧であるソフトウェア一覧データに設定する更新対象識別情報設定手段を備え、
前記ソフトウェア集合データ生成手段は、前記更新対象識別情報が設定された前記ソフトウェア一覧データに基づいて必要なソフトウェア構成部品データを抽出することを特徴とする請求項１に記載の更新管理システム。
【請求項３】
前記更新管理装置は、前記ソフトウェア一覧データを生成するソフトウェア一覧データ生成手段を備え、
前記複数の端末装置は、前記最初の端末装置が前記更新管理装置から受信した前記ソフトウェア一覧データを前記データ転送順序に従って順次転送し、最後に前記ソフトウェア一覧データを受信した前記端末装置が前記更新対象識別情報を設定された前記ソフトウェア一覧データを前記更新管理装置に送信することを特徴とする請求項２に記載の更新管理システム。
【請求項４】
前記更新管理装置は、前記ネットワークの利用可能な帯域幅が予め定められた値以下である場合に、前記ソフトウェア集合データを分割して前記最初の端末装置に送信することを特徴とする請求項１から３のいずれか１項に記載の更新管理システム。
【請求項５】
前記更新対象識別情報は、対応する前記ソフトウェア構成部品を必要とする前記端末装置の台数を示すカウンタであり、前記ソフトウェア集合データは、対応する前記カウンタの値が１以上である前記ソフトウェア構成部品のみから構成されることを特徴とする請求項２または３に記載の更新管理システム。
【請求項６】
前記更新管理装置は、前記ネットワークの利用可能な帯域幅が予め定められた値以下である場合に、前記ソフトウェア一覧データを分割して前記最初の端末装置に送信することを特徴とする請求項３に記載の更新管理システム。
【請求項７】
前記複数の端末装置は、更新前の前記ソフトウェア構成部品を保存する記憶装置を備え、前記更新管理装置は、ソフトウェアの更新に失敗した前記端末装置に対して更新前のソフトウェアを起動させることを特徴とする請求項１から６のいずれか１項に記載の更新管理システム。
【請求項８】
前記ソフトウェア一覧データは、前記端末装置ごとの更新可否を決定する更新端末フラグを備えたことを特徴とする請求項２または３に記載の更新管理システム。
【請求項９】
前記更新対象識別情報設定手段は、前記ソフトウェア構成部品のバージョン情報に基づいて前記ソフトウェア構成部品が必要か否かを判定することを特徴とする請求項２または３に記載の更新管理システム。
【請求項１０】
前記更新対象識別情報設定手段は、前記ソフトウェア構成部品のハッシュ値に基づいて前記ソフトウェア構成部品が必要か否かを判定することを特徴とする請求項２または３に記載の更新管理システム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、ネットワークに接続された端末装置のソフトウェアを自動的に更新する更新管理システムに関する。
【背景技術】
【０００２】
従来、遠隔地にある端末装置のソフトウェアをネットワーク経由で更新する場合は、更新済ソフトウェアファイルを格納した管理用コンピュータをネットワークに接続し、この管理用コンピュータから更新済ソフトウェアファイルを更新対象の端末装置に転送した後、ネットワーク越しに端末装置を制御して更新対象の端末装置のソフトウェアを更新していた。ここで、管理用コンピュータのネットワーク接続、ファイル転送プロトコルを用いた更新済ソフトウェアファイルの転送、端末制御プロトコルを用いたソフトウェア更新命令は全て作業者により行われており、これに伴うソフトウェアのバージョンの確認や更新要否の判定、更新完了後の再起動等も作業者によって行われていた。そして、更新対象の端末装置が複数台ある場合は装置の台数分だけ同じ作業を繰り返す必要があったため、更新対象の端末装置の台数が多いと作業時間が非常に長くなるとともに、ファイル転送による回線帯域の圧迫が他の通信を妨げる原因となっていた。さらに、ソフトウェアの一部のみを更新する場合でもソフトウェアファイル全体を転送する必要があったため、転送効率が悪く、回線帯域圧迫の問題をさらに悪化させていた。
【０００３】
そこで、パッチデータを保有する遠隔保守センタから、対応するユーザ端末に転送可能なパッチ転送一覧表を予め転送し、各ユーザ端末で必要なパッチデータを選択、要求した後、遠隔保守センタが要求されたパッチデータのみを転送するように構成されたものがある。（例えば、特許文献１参照）。これによれば、遠隔保守センタは必要最小限のパッチデータのみをユーザ端末に転送するので、転送効率が改善される。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開平４−３７３０３７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、上記のようなものでは、更新管理装置としての遠隔保守センタは更新対象となっている全てのユーザ端末のそれぞれと通信を行うため、遠隔保守センタからのデータ転送が繰り返し行われて転送時間が長期化する。また、例えばリングネットワークのように、遠隔保守センタ付近の回線で複数のユーザ端末との通信が集中する場合、回線帯域が長時間圧迫されて他の通信を妨げる可能性がある。
【０００６】
この発明は、上述のような問題点を解決するためになされたもので、更新管理装置から端末装置へのデータ転送による回線帯域の圧迫を低減することができる更新管理システムを得るものである。
【課題を解決するための手段】
【０００７】
この発明の更新管理システムは、更新管理対象のソフトウェアを構成する複数のソフトウェア構成部品のデータのうちの、必要とされるソフトウェア構成部品のデータのみの集合であるソフトウェア集合データを生成するソフトウェア集合データ生成手段と、更新管理対象のソフトウェアを有する複数の端末装置が接続されたネットワークにソフトウェア集合データを送信する送信手段とを有する更新管理装置と、ネットワークに接続されて、
受信したソフトウェア集合データから自端末に必要なソフトウェア構成部品のデータを抽出し、自端末のソフトウェアの更新を行うソフトウェア更新手段と、ソフトウェア集合データを送信する送信手段とを有する複数の端末装置とを備えた更新管理システムであって、複数の端末装置は、更新管理装置からデータを受信する最初の端末装置と各端末装置間におけるデータ転送順序が予め定められ、それぞれの端末装置がソフトウェア集合データをデータ転送順序に従って順次転送するものである。
【発明の効果】
【０００８】
この発明によれば、必要なソフトウェア構成部品のデータの集合であるソフトウェア集合データを最初の端末装置のみが更新管理装置から受信し、残りの端末装置は予め定められたデータ転送順序に従って端末装置間を転送されてくるソフトウェア集合データを受信するので、更新管理装置付近の回線で通信が集中することがない。このため、更新管理装置から端末装置へのデータ転送による回線帯域の圧迫を低減することができる。
【図面の簡単な説明】
【０００９】
【図１】この発明の実施の形態１における更新管理システムを示す全体構成図である。
【図２】この発明の実施の形態１に係る更新管理装置の構成を示すブロック図である。
【図３】この発明の実施の形態１に係るソフトウェア一覧データを示す図である。
【図４】この発明の実施の形態１に係るソフトウェア集合データを示す図である。
【図５】この発明の実施の形態１に係る端末装置の構成を示すブロック図である。
【図６】この発明の実施の形態１に係る通信テーブルデータを示す図である。
【図７】この発明の実施の形態１に係る更新管理方法の流れを示すフロー図である。
【図８】この発明の実施の形態１に係るソフトウェア一覧データの更新処理の流れを示すフロー図である。
【図９】この発明の実施の形態１に係るソフトウェアの更新処理の流れを示すフロー図である。
【図１０】この発明の実施の形態１の他の例に係るソフトウェアの更新処理の流れを示すフロー図である。
【図１１】この発明の実施の形態２に係る更新管理方法の流れを示すフロー図である。
【図１２】この発明の実施の形態２に係るソフトウェア一覧データの更新処理の流れを示すフロー図である。
【図１３】この発明の実施の形態３に係る更新管理方法の流れを示すフロー図である。
【図１４】この発明の実施の形態３に係るソフトウェアの更新処理の流れを示すフロー図である。
【図１５】この発明の実施の形態４に係るソフトウェア一覧データを示す図である。
【図１６】この発明の実施の形態４に係るソフトウェア一覧データの更新処理の流れを示すフロー図である。
【図１７】この発明の実施の形態５に係るソフトウェアの更新処理及び更新後の再起動処理の流れを示すフロー図である。
【図１８】この発明の実施の形態６に係るソフトウェア一覧データを示す図である。
【図１９】この発明の実施の形態６に係るソフトウェア集合データを示す図である。
【図２０】この発明の実施の形態６に係る端末装置の構成を示すブロック図である。
【図２１】この発明の実施の形態６に係るソフトウェア一覧データの更新処理の流れを示すフロー図である。
【図２２】この発明の実施の形態６に係るソフトウェアの更新処理の流れを示すフロー図である。
【発明を実施するための形態】
【００１０】
実施の形態１．
以下に、この発明の実施の形態１を図１から図１０に基づいて説明する。図１は、実施の形態１における更新管理システムを示す全体構成図である。更新管理システム１０００は、図１に示すように更新対象となる４台の端末装置１０１〜１０４がリングネットワーク９０１上に接続されている。リングネットワーク９０１は、データの送受信が可能な通信回線９０１Ａ〜９０１Ｅによって構成されており、通信回線９０１Ａ、９０１Ｂ、９０１Ｃは、それぞれ端末装置１０１と端末装置１０２、端末装置１０２と端末装置１０３、端末装置１０４を接続している。端末装置１０４と端末装置１０１の間を接続する通信回線９０１Ｄ及び９０１Ｅの間には、通信回線９０２を介して更新管理装置５００に接続されたネットワーク中継装置９０３が配置されている。通信回線９０１Ａ〜９０１Ｅ及び９０２は、例えばイーサネット（登録商標）回線であり、ネットワーク中継装置９０３は、例えばレイヤ２スイッチである。なお、本実施の形態では端末装置の台数を４台としているが、これに限られるものではなく、２台以上であればよい。
【００１１】
端末装置１０１〜１０４は、各種命令を実行するＣＰＵ１０１Ａ〜１０４Ａと、記憶装置１０１Ｂ〜１０４Ｂをそれぞれ備えている。記憶装置１０１Ｂ〜１０４Ｂは、それぞれの端末装置のＣＰＵの命令によって書き換え可能な記憶装置であり、例えばフラッシュＲＯＭである。また、記憶装置１０１Ｂ〜１０４Ｂは、バージョン情報やハッシュ値などの固有情報を持つソフトウェア構成部品１０１Ｃ〜１０４Ｃをそれぞれ保持している。ソフトウェア構成部品１０１Ｃ〜１０４Ｃは、それぞれの端末装置で動作するソフトウェアを構成するものであり、ＣＰＵ１０１Ａ〜１０４Ａが実行可能なバイナリファイルであってもよいし、ＣＰＵ１０１Ａ〜１０４Ａにコンパイルされてから実行されるソースコードから構成されるテキストファイルであってもよい。
【００１２】
更新管理装置５００は、各端末装置で動作するソフトウェアを更新管理対象としており、各種命令を実行するＣＰＵ５００Ａと、記憶装置５００Ｂを備えている。記憶装置５００Ｂは、読み取り可能な記憶装置であり、例えばハードディスクである。また、記憶装置５００Ｂは構成部品５００Ｃを複数保持している。ソフトウェア構成部品５００Ｃは、ソフトウェア構成部品１０１Ｃ〜１０４Ｃと同様に端末装置１０１〜１０４で動作するソフトウェアを構成するものであり、ＣＰＵ１０１Ａ〜１０４Ａが実行可能なバイナリファイルであってもよいし、ＣＰＵ１０１Ａ〜１０４Ａにコンパイルされてから実行されるソースコードから構成されるテキストファイルであってもよい。また、ソフトウェア構成部品５００Ｃはバージョン情報やハッシュ値などの固有情報を持っている。
【００１３】
次に、更新管理装置５００及び端末装置１０１〜１０４の機能について説明する。図２は、本実施の形態に係る更新管理装置の構成を示すブロック図、図３は、本実施の形態に係るソフトウェア一覧データを示す図であり、図４は、本実施の形態に係るソフトウェア集合データを示す図である。更新管理装置５００は、図３に示すソフトウェア一覧データ８２を生成するソフトウェア一覧データ生成手段５１と、図４に示すソフトウェア集合データ８３を生成するソフトウェア集合データ生成手段５２と、外部機器との間でデータの送受信を行うデータ送受信手段５９とを備えている。
ソフトウェア一覧データ生成手段５１は、更新管理装置５００が記憶装置５００Ｂに保有しているソフトウェア構成部品５００Ｃのバージョン情報等からそれぞれのソフトウェア構成部品が利用可能かを確認する保有ソフトウェア構成部品確認手段５１１と、利用可能なソフトウェア構成部品の名前及び一意の識別情報を抽出するソフトウェア構成部品抽出手段５１２と、抽出されたソフトウェア構成部品を図３に示すような一覧データに変換する抽出ソフトウェア構成部品リスト化手段５１３を有している。
ソフトウェア一覧データ８２は、図３（ａ）示すようにソフトウェア構成部品名８２ａ
、一意な識別情報としてのバージョン情報８２ｂ、更新フラグ８２ｃ、すなわち更新対象識別情報を備えたリスト形式のデータであり、更新フラグ８２ｃの初期値は“ｎｏ”（更新しない）に設定されている。すなわち、ソフトウェア一覧データ生成手段５１によって生成された段階のソフトウェア一覧データ８２では、全てのソフトウェア構成部品について更新フラグ８２ｃが“ｎｏ”となっている。
なお、ソフトウェア一覧データ８２では、ソフトウェア構成部品を識別する一意の値がそれぞれのソフトウェア構成部品名８２ａに対応付けられていればよいので、バージョン情報８２ｂに代えて図３（ｂ）に示すようハッシュ値８２ｂ１をそれぞれのソフトウェア構成部品に対応させてもよい。
【００１４】
ソフトウェア集合データ生成手段５２は、ソフトウェア一覧データ８２の更新フラグ８２ｃを確認する更新対象識別手段５２１と、端末装置１０１〜１０４のソフトウェアの更新に必要なソフトウェア構成部品データを記憶装置５００Ｂから抽出するソフトウェア構成部品データ抽出手段５２２と、抽出されたソフトウェア構成部品データを集合させて結合し、図４に示すようなソフトウェア集合データに変換する抽出ソフトウェア構成部品データ集合手段５２３を有している。本実施の形態において、ソフトウェア構成部品データ抽出手段５２２は、対応する更新フラグ８２ｃが“ｙｅｓ”となっているソフトウェア構成部品のソフトウェア構成部品データのみを必要なデータとして記憶装置５００Ｂから抽出しているが、ユーザが予め指定したソフトウェア構成部品データを抽出する構成にしてもよい。
ソフトウェア集合データ８３は、図４に示すようにソフトウェア構成部品名８３ａ及びソフトウェア構成部品データ８３ｂを備えている。このソフトウェア集合データ８３は、データ送受信手段５９によってネットワーク中継用の形式に変換された後、データ送受信手段５９によって送信される。
【００１５】
なお、上記したソフトウェア一覧データ生成手段５１及びソフトウェア集合データ生成手段５２の各機能は、ＣＰＵ５００Ａ等によって実現されている。
【００１６】
図５は、本実施の形態に係る端末装置の構成を示すブロック図である。図５では端末装置１０１の構成を示しているが、端末装置１０２〜１０４についても同様である。端末装置１０１は、更新フラグ８２ｃを設定してソフトウェア一覧データ８２を更新するソフトウェア一覧データ更新手段１１と、ソフトウェア集合データ８３を用いて自端末のソフトウェアを更新するソフトウェア更新手段１２と、外部機器との間でデータの送受信を行うデータ送受信手段１９とを備えている。
ソフトウェア一覧データ更新手段１１は、受信したソフトウェア一覧データ８２を一時的に記憶装置１０１Ｂに保存するソフトウェア一覧データ保存手段１１１と、自端末ソフトウェア一覧データ（図示なし）を生成する自端末ソフトウェア一覧データ生成手段１１２と、ソフトウェア構成部品のバージョン情報またはハッシュ値に基づいて自端末ソフトウェア一覧データとソフトウェア一覧データ８２の差分を検出する差分検出手段１１３と、差分検出手段１１３が検出した差分に対応する更新フラグ８２ｃを“ｙｅｓ”に変更する更新フラグ設定手段１１４を有している。ここで、自端末ソフトウェア一覧データとは、自端末で動作しているソフトウェアを構成するソフトウェア構成部品の一覧である。
ソフトウェア更新手段１２は、受信したソフトウェア集合データ８３を一時的に保存するソフトウェア集合データ保存手段１２１と、自端末に必要なソフトウェア構成部品データをソフトウェア集合データ８３から抽出するソフトウェア構成部品データ抽出手段１２２と、抽出されたソフトウェア構成部品を自端末のソフトウェアに適用するソフトウェア構成部品適用手段１２３を有している。
【００１７】
なお、上記したソフトウェア一覧データ更新手段１１及びソフトウェア更新手段１２の各機能は、ＣＰＵ１０１Ａ及び記憶装置１０１Ｂ等によって実現されている。他の端末装
置についても同様である。
【００１８】
なお、本実施の形態ではソフトウェア一覧データ８２が最初から更新フラグ８２ｃを有しているが、最初は更新フラグを付加せず、端末装置１０１〜１０４において更新フラグ８２ｃを付加してもよい。この場合、更新フラグ設定手段１１４は差分が検出されたソフトウェア構成部品については、“ｙｅｓ”の更新フラグ８２ｃを付加し、差分が検出されなかったソフトウェア構成部品については“ｎｏ”の更新フラグ８２ｃを付加する。
【００１９】
次に、本実施の形態におけるデータ転送について説明する。端末装置１０１〜１０４及び更新管理装置５００は、図６に示すような通信テーブルデータ８１を保持しており、ソフトウェア一覧データ８２又はソフトウェア集合データ８３を送信する際は、送信元データ８１ａ中で自端末を示す箇所を検索し、次いで対応する送信先データ８１ｂを取得する。これにより、ソフトウェア一覧データ８２及びソフトウェア集合データ８３が転送される場合は、更新管理装置５００→端末装置１０１→端末装置１０２→端末装置１０３→端末装置１０４→更新管理装置５００の順にデータが転送されていくこととなる。このため、更新管理装置５００からソフトウェア一覧データ８２及びソフトウェア集合データ８３を直接受信するのは端末装置１０１のみとなり、端末装置１０２〜１０４は、端末装置１０１から順次転送されてくるソフトウェア一覧データ８２及びソフトウェア集合データ８３を受信することとなる。また、更新管理装置５００にデータを直接送信するのは端末装置１０４のみである。このように、端末装置１０１を「最初の端末装置」、端末装置１０４を「最後の端末装置」として、ソフトウェア一覧データ８２及びソフトウェア集合データ８３の転送順序を予め定めているので、複数の端末装置と更新管理装置５００との間で同時にデータの送受信が起こって更新管理装置５００付近の回線で通信が集中することがない。
なお、本実施の形態では通信テーブルデータ８１を全ての端末装置に予め取得させているが、通信テーブルデータ８１が参照されるのは次の端末装置にデータを送信する時であるので、通信テーブルデータ８１をソフトウェア一覧データ８２又はソフトウェア集合データ８３に添付して端末装置１０１〜１０４に取得させてもよい。
【００２０】
次に、動作について説明する。図７は実施の形態１に係る更新管理方法の流れを示すフロー図である。なお、以下の説明では「ソフトウェア」を「Ｓ／Ｗ」と記すことがある。まず、更新管理装置５００は、ソフトウェア一覧データ生成手段５１によって記憶装置５００Ｂに格納されたソフトウェア構成部品５００ＣからＳ／Ｗ一覧データ８２を生成する（ステップＳＴ００１）。そして、更新管理装置５００は通信回線９０２が使用可能であることを確認した後、データ送受信手段５９によってＳ／Ｗ一覧データ８２を最初の端末装置である端末装置１０１に送信する（ステップＳＴ００２）。
【００２１】
次に、最初の端末装置である端末装置１０１が更新管理装置５００からのＳ／Ｗ一覧データ８２を受信し（ステップＳＴ００３）、それぞれの端末装置１０１〜１０４は、ソフトウェア一覧データ更新手段１１によって自端末に必要なＳ／Ｗ構成部品について更新フラグ８２ｃを設定し、Ｓ／Ｗ一覧データ８２を更新する。また、更新したＳ／Ｗ一覧データ８２を通信テーブルデータ８１で定められたデータ転送順序に従って順次転送していき、全ての端末装置について更新フラグ８２ｃの設定処理を行う（ステップＳＴ００４）。その後、最後の端末装置である端末装置１０４は更新フラグ８２ｃが設定されたＳ／Ｗ一覧データ８２を更新管理装置５００に送信する（ステップＳＴ００５）。
【００２２】
次に、更新管理装置５００は最後の端末装置である端末装置１０４から更新フラグ８２ｃが設定されたＳ／Ｗ一覧データ８２を受信し（ステップＳＴ００６）、更新フラグ８２ｃの確認（ステップＳＴ００７）と、更新フラグ８２ｃの設定状況に基づくＳ／Ｗ集合データ８３の生成（ステップＳＴ００８）をソフトウェア集合データ生成手段５２によって行う。そして、更新管理装置５００は通信回線９０２が使用可能であることを確認した後、データ送受信手段５９によってＳ／Ｗ集合データ８３を最初の端末装置である端末装置１０１に送信する（ステップＳＴ００９）。Ｓ／Ｗ集合データ８３の生成においては、上述したように、更新フラグ８２ｃが“ｙｅｓ”となっているソフトウェア構成部品のソフトウェア構成部品データのみを必要なデータとして記憶装置５００Ｂから抽出している。すなわち、更新フラグ８２ｃが“ｎｏ”であるＳ／Ｗ構成部品はいずれの端末装置も更新を必要としていないため、Ｓ／Ｗ集合データ８３に含めない。
【００２３】
次に、最初の端末装置である端末装置１０１が更新管理装置５００からのＳ／Ｗ集合データ８３を受信し（ステップＳＴ０１０）、それぞれの端末装置１０１〜１０４は、ソフトウェア更新手段１２によって必要なソフトウェア構成部品を適用して自端末のＳ／Ｗを更新しながら、Ｓ／Ｗ集合データ８３を通信テーブルデータ８１で定められたデータ転送順序に従って順次転送していき、全ての端末装置についてソフトウェアの更新処理を行う（ステップＳＴ０１１）。
【００２４】
次に、それぞれの端末装置１０１〜１０４におけるソフトウェア一覧データの更新処理についてより詳細に説明する。図８は、各端末装置におけるソフトウェア一覧データの更新処理の流れを示すフロー図である。Ｓ／Ｗ一覧データ８２を受信した端末装置は、受信したＳ／Ｗ一覧データ８２をソフトウェア一覧データ保存手段１１１に保存した後、自端末ソフトウェア一覧データ生成手段１１２により自端末Ｓ／Ｗ一覧データ（図示なし）を生成し、受信したＳ／Ｗ一覧データ８２と自端末Ｓ／Ｗ一覧データの差分を差分検出手段１１３によって検出する（ステップＳＴ００４Ａ）。自端末Ｓ／Ｗ一覧データは、Ｓ／Ｗ一覧データ８２と同様にソフトウェア構成部品名及びソフトウェア構成部品を識別する一意の値であるバージョン情報やハッシュ値を含んでおり、Ｓ／Ｗ一覧データ８２に含まれるソフトウェア構成部品と自端末Ｓ／Ｗ一覧データに含まれるソフトウェア構成部品の差分の検出は、それぞれのバージョン情報等を比較することで行う。
【００２５】
次に、更新フラグ設定手段１１４により、ステップＳＴ００４Ａで差分が検出されたソフトウェア構成部品の更新フラグ８２ｃの値を“ｎｏ”から“ｙｅｓ”に変更する（ステップＳＴ００４Ｂ）。更新フラグ８２ｃがない場合、差分が検出されたソフトウェア構成部品には“ｙｅｓ”の更新フラグを付加し、差分が検出されなかったソフトウェア構成部品には“ｎｏ”の更新フラグを付加する。
【００２６】
次に、自端末が最後の端末装置、すなわち端末装置１０４であるかを判定する（ステップＳＴ００４Ｃ）。最後の端末装置でない場合、ステップＳＴ００４Ｂで更新フラグ８２ｃの設定を行ったＳ／Ｗ一覧データ８２を次の端末装置に送信する（ステップＳＴ００４Ｄ１）。次の端末装置は、Ｓ／Ｗ一覧データ８２を受信して、ステップＳＴ００４Ａ以降の処理を実施する（ステップＳＴ００４Ｄ２）。
以上を繰り返すことにより、全ての端末装置１０１〜１０４においてＳ／Ｗ一覧データ８２の更新処理が行われる。
自端末が最後の端末装置である場合は、Ｓ／Ｗ一覧データ８２を転送する端末装置がないので処理終了となり、図７のステップＳＴ００５へ進む。そして、最後の端末装置である端末装置１０４は、全ての端末装置について更新フラグ８２ｃが設定されたＳ／Ｗ一覧データ８２を更新管理装置５００に送信する。
【００２７】
次に、それぞれの端末装置１０１〜１０４におけるソフトウェアの更新処理についてより詳細に説明する。図９は、各端末装置におけるソフトウェアの更新処理の流れを示すフロー図である。Ｓ／Ｗ集合データ８３を受信した端末装置は、受信したＳ／Ｗ集合データ８３をソフトウェア集合データ保存手段１２１によって一時的に記憶装置１０１Ｂ〜１０４Ｂに保存した後、ソフトウェア構成部品データ抽出手段１２２によってＳ／Ｗ集合データ８３から必要なＳ／Ｗ構成部品データ８３ｂを抽出し（ステップＳＴ０１１Ａ）、自端末の記憶装置に保存する。抽出時における必要なＳ／Ｗ構成部品データ８３ｂの決定は、Ｓ／Ｗ一覧データ８２の更新処理時に生成した自端末Ｓ／Ｗ一覧データとＳ／Ｗ集合データ８３との比較により行ってもよいし、ソフトウェア一覧データの更新処理時に更新フラグ８２ｃを“ｙｅｓ”としたＳ／Ｗ構成部品のＳ／Ｗ構成部品名を端末装置側で保存しておき、これに基づいて必要なＳ／Ｗ構成部品データ８３ｂを決定してもよい。
【００２８】
次に、自端末が最後の端末装置、すなわち端末装置１０４であるかを判定する（ステップＳＴ０１１Ｂ）。最後の端末装置でない場合、Ｓ／Ｗ集合データ８３を次の端末装置に送信した後（ステップＳＴ０１１Ｃ２）、ステップＳＴ０１１Ａで抽出したＳ／Ｗ構成部品データ８３ｂをソフトウェア構成部品適用手段１２３によって適用することで自端末のＳ／Ｗを更新する（ステップＳＴ０１１Ｃ３）。Ｓ／Ｗ集合データを受信した次の端末装置は、ステップＳＴ０１１Ａ以降の処理を実施する（ステップＳＴ０１１Ｃ４）。以上を繰り返すことにより、全ての端末装置１０１〜１０４でＳ／Ｗの更新処理が行われる。
自端末が最後の端末装置である場合は、自端末のＳ／Ｗを更新して（ステップＳＴ０１１Ｃ１）で処理終了となる。ソフトウェアの更新が完了した端末装置では、更新されたソフトウェアが次回の起動時に動作することとなる。
なお、ソフトウェアの更新にあまり時間がかからない場合は、ステップＳＴ０１１Ｃ３とステップＳＴ０１１Ｃ２の順序を入れ替え、次の端末装置にＳ／Ｗ集合データ８３を送信する前に自端末のＳ／Ｗの更新を実施してもよい。本実施の形態では、Ｓ／Ｗ更新に時間がかかる場合に次以降の端末装置の処理が遅れることを防ぐ観点から、Ｓ／Ｗ集合データ８３を次の端末装置に送信してから自端末のＳ／Ｗの更新を行うこととしている。
【００２９】
実施の形態１によれば、各端末装置が接続されたリングネットワークにソフトウェア構成部品のデータの集合を送信するにあたり、各端末装置のソフトウェアの更新に必要なソフトウェア構成部品データのみを抽出して生成したソフトウェア集合データを送信しており、更新管理装置が送信したソフトウェア集合データは、最初の端末装置のみが受信している。残りの端末装置は、予め定められたデータ転送順序に従って順次転送されてくるソフトウェア集合データを受信するので更新管理装置とは通信を行わず、更新管理装置付近の回線で通信が集中することがない。このため、更新管理装置から端末装置へのデータ転送による回線帯域の圧迫を低減することができる。
【００３０】
また、ソフトウェア集合データに生成にあたっては、各端末装置に適用可能なソフトウェア構成部品の一覧であるソフトウェア一覧データを用い、各端末装置において設定された更新フラグに基づいて必要なソフトウェア構成部品のデータの抽出を行っている。このため、必要なソフトウェア構成部品のデータを過不足なく抽出することができる。
【００３１】
また、更新管理装置が送信したソフトウェア一覧データは、最初の端末装置のみが受信し、残りの端末装置は、予め定められたデータ転送順序に従って順次転送されてくるソフトウェア一覧データを受信して、最後の端末装置が各端末装置で更新フラグが設定されたソフトウェア一覧データを更新管理装置に送信するので、ソフトウェア一覧データの更新において更新管理装置との間で通信を行うのは最初の端末装置と最後の端末装置のみであり、通信タイミングも異なる。このため、ソフトウェア一覧データの更新においても更新管理装置付近の回線で通信が集中することがなく、回線帯域の圧迫をさらに低減することができる。
【００３２】
また、各端末装置におけるソフトウェアの更新処理において、抽出したソフトウェア構成部品を適用して自端末のソフトウェアを更新する前にソフトウェア集合データを次の端末装置に送信するため、前方の端末装置でソフトウェアの更新に時間がかかる場合でも後方の端末装置の更新処理の開始が遅れることがない。
【００３３】
なお、図１０に示す他の例のように、最初に最後の端末装置か否かの判定（ステップＳＴ０１１Ｂ）を行ってもよい。この場合、自端末が最後の端末であるときは必要なＳ／Ｗ構成部品の抽出（ステップＳＴ０１１Ａ１）と自端末のＳ／Ｗの更新（ステップＳＴ０１１Ｃ１）を行い、自端末が最後の端末装置でないときはＳ／Ｗ集合データ８３を自端末の記憶装置に保存して次の端末装置にＳ／Ｗ集合データ８３を送信した後（ステップＳＴ０１１Ｃ２）、Ｓ／Ｗ構成部品の抽出（ステップＳＴ０１１Ａ２）と自端末のＳ／Ｗの更新（ステップＳＴ０１１Ｃ４）を行う。これにより、Ｓ／Ｗ構成部品の抽出に時間がかかる場合でも次以降の端末装置の処理が遅れることを防ぐことができる。
【００３４】
また、本実施の形態において各端末装置はリングネットワークに接続されているが、図６に示した通信テーブルに従ってデータ転送を行えばよいので、各端末装置を接続するネットワークはバス型ネットワーク等のリングネットワーク以外のネットワークであってもよい。
【００３５】
実施の形態２．
以下に、この発明の実施の形態２を図１１及び図１２に基づいて説明する。なお、図１から図１０と同一又は相当部分については同一の符号を付し、その説明を省略する。実施の形態２は、所定の条件の下でソフトウェア一覧データを分割する点が実施の形態１と異なる。図１１は、実施の形態２に係る更新管理方法の流れを示すフロー図である。まず、更新管理装置５００は、ソフトウェア一覧データ生成手段５１によって記憶装置５００Ｂに格納されたソフトウェア構成部品５００ＣからＳ／Ｗ一覧データ８２を生成する（ステップＳＴ１０１）。次に、更新管理装置５００は、通信回線９０２における利用可能な帯域幅Ｂｗを計測し（ステップＳＴ１０１１）、利用可能な帯域幅Ｂｗが所定の閾値Ｂｗ０以下か否かを判定する（ステップＳＴ１０１２）。ＢｗがＢｗ０以下である場合は、Ｓ／Ｗ一覧データ８２を分割し、Ｓ／Ｗ一覧データ８２をより小さなサイズにした後（ステップＳＴ１０１３）、データ送受信手段５９によって最初の端末装置である端末装置１０１に送信する（ステップＳＴ１０２）。ＢｗがＢｗ０より大きい場合は、実施の形態１と同様にＳ／Ｗ一覧データ８２をそのまま端末装置１０１に送信する。
【００３６】
次に、最初の端末装置である端末装置１０１が更新管理装置５００からのＳ／Ｗ一覧データ８２、あるいは分割されたＳ／Ｗ一覧データ８２を受信し（ステップＳＴ１０３）、それぞれの端末装置１０１〜１０４は、ソフトウェア一覧データ更新手段１１によって自端末に必要なソフトウェア構成部品について更新フラグ８２ｃを設定し、Ｓ／Ｗ一覧データ８２を更新する。また、更新したＳ／Ｗ一覧データ８２を通信テーブルデータ８１で定められた順序に従ってＳ／Ｗ一覧データ８２を転送していき、全ての端末装置について更新フラグ８２ｃの設定処理を行う（ステップＳＴ１０４）。その後、最後の端末装置である端末装置１０４は更新フラグ８２ｃが設定されたＳ／Ｗ一覧データ８２を更新管理装置５００に送信する（ステップＳＴ１０５）。
【００３７】
図１２は、実施の形態２に係るソフトウェア一覧データの更新処理の流れを示すフロー図である。Ｓ／Ｗ一覧データ８２を受信した端末装置は、受信したＳ／Ｗ一覧データ８２が分割されているか否かをチェックし（ステップＳＴ１０４Ａ１）、Ｓ／Ｗ一覧データが分割されている場合は分割されたＳ／Ｗ一覧データを結合してＳ／Ｗ一覧データ８２を再生成する（ステップＳＴ１０４Ａ２）。次に、実施の形態１と同様に、Ｓ／Ｗ一覧データ８２をソフトウェア一覧データ保存手段１１１に保存した後、自端末Ｓ／Ｗ一覧データと受信したＳ／Ｗ一覧データ８２の差分を検出する（ステップＳＴ１０４Ａ３）。以降のステップＳＴ１０４Ｂ〜ステップＳＴ１０４Ｄ２は、実施の形態１のステップＳＴ００４Ｂ〜ステップＳＴ００４Ｄ２と同様である。最後の端末装置である端末装置１０４においてソフトウェア一覧データの更新処理が終わったら、図１１のステップＳＴ１０５に進み、
更新管理装置５００に更新フラグ８２ｃが設定されたＳ／Ｗ一覧データを更新管理装置５００に送信する。
なお、ステップＳＴ１０４Ｄ１又はステップＳＴ１０５においても、利用可能な帯域幅に応じてＳ／Ｗ一覧データ８２を分割してから次の端末装置又は更新管理装置５００への送信を行ってもよい。
【００３８】
ステップＳＴ１０６〜ＳＴ１１１は、実施の形態１のステップＳＴ００６〜ＳＴ０１１と同様であるので、その説明を省略する。
なお、本実施の形態では利用可能な帯域幅によって分割の可否を決定しているが、ソフトウェア一覧データ８２のサイズと利用可能な帯域幅からソフトウェア一覧データ８２の送信にかかる時間を計算して、この時間が所定の時間以上であればソフトウェア一覧データ８２を分割するようにしてもよい。また、ソフトウェア一覧データ８２を分割するか否か制御するディップスイッチなどのスイッチを設け、ユーザ自身が分割の可否を決定する構成にしてもよい。
その他については実施の形態１と同様であるので、その説明を省略する。
【００３９】
実施の形態２によれば、実施の形態１と同様の効果を得ることができる。
【００４０】
また、ソフトウェア一覧データの送信において、利用可能な帯域幅が所定の閾値以下である場合などにソフトウェア一覧データを分割して送信するので、利用可能な帯域幅が小さい場合やソフトウェア一覧データのサイズが大きい場合でもソフトウェア一覧データの送信による回線占有時間を一定値以下に抑制することができる。このため、動作中の他のサービスの通信を妨げることを防ぎ、他のサービスを実行させながらソフトウェアの更新を行うことができる。
【００４１】
実施の形態３．
以下に、この発明の実施の形態３を図１３及び図１４に基づいて説明する。なお、図１から図１０と同一又は相当部分については同一の符号を付し、その説明を省略する。実施の形態３は、所定の条件の下でソフトウェア集合データを分割する点が実施の形態１と異なる。図１３は、実施の形態２に係る更新管理方法の流れを示すフロー図である。まず、実施の形態１と同様に、Ｓ／Ｗ一覧データの生成からＳ／Ｗ集合データの生成までが行われる。すなわち、ステップＳＴ２０１〜ステップＳＴ２０８は、実施の形態１のステップＳＴ００１〜ステップＳＴ００８と同様である。次に、更新管理装置５００は、通信回線９０２における利用可能な帯域幅Ｂｗを計測し（ステップＳＴ２０８１）、利用可能な帯域幅Ｂｗが所定の閾値Ｂｗ１以下か否かを判定する（ステップＳＴ２０８２）。ＢｗがＢｗ１以下である場合は、Ｓ／Ｗ集合データ８３を分割し、Ｓ／Ｗ集合データ８３をより小さなサイズにした後（ステップＳＴ２０８３）、データ送受信手段５９によって最初の端末装置である端末装置１０１に送信する（ステップＳＴ２０９）。ＢｗがＢｗ１より大きい場合は、実施の形態１と同様にＳ／Ｗ一覧データ８２をそのまま端末装置１０１に送信する。
【００４２】
次に、最初の端末装置である端末装置１０１が更新管理装置５００からのＳ／Ｗ集合データ８３、あるいは分割されたＳ／Ｗ集合データ８３を受信し（ステップＳＴ２１０）、それぞれの端末装置１０１〜１０４は、ソフトウェア更新手段１２によって必要なソフトウェア構成部品を適用して自端末のＳ／Ｗを更新しながら、Ｓ／Ｗ集合データ８３を通信テーブルデータ８１で定められたデータ転送順序に従って転送していき、全ての端末装置について必要なソフトウェアの更新処理を行う（ステップＳＴ２１１）。
【００４３】
図１４は、実施の形態３に係るソフトウェアの更新処理の流れを示すフロー図である。Ｓ／Ｗ集合データ８３を受信した端末装置は、受信したＳ／Ｗ集合データ８３が分割され
ているか否かをチェックし（ステップＳＴ２１１Ａ１）、Ｓ／Ｗ集合データ８３が分割されている場合は分割されたＳ／Ｗ集合データ８３を結合してＳ／Ｗ集合データ８３を再生成する（ステップＳＴ２１１Ａ２）。次に、実施の形態１と同様に、Ｓ／Ｗ集合データをソフトウェア集合データ保存手段１２１に保存した後、Ｓ／Ｗ集合データ８３から必要なＳ／Ｗ構成部品データ８３ｂを抽出し（ステップＳＴ２１１Ａ３）、抽出したＳ／Ｗ構成部品データ８３ｂを自端末の記憶装置に保存する。以降のステップＳＴ２１１Ｂ〜ステップＳＴ２１１Ｃ４は、実施の形態１のステップＳＴ０１１Ｂ〜ステップＳＴ０１１Ｃ４と同様である。
なお、ステップＳＴ２１１Ｃ２においても、利用可能な帯域幅に応じてＳ／Ｗ集合データ８３を分割してから次の端末装置への送信を行ってもよい。
【００４４】
なお、本実施の形態では利用可能な帯域幅によって分割の可否を決定しているが、ソフトウェア集合データのサイズと利用可能な帯域幅からソフトウェア集合データの送信にかかる時間を計算して、この時間が所定の時間以上であればソフトウェア集合データを分割するようにしてもよい。また、ソフトウェア集合データを分割するか否かを制御するディップスイッチなどのスイッチを設け、ユーザ自身が分割の可否を決定する構成にしてもよい。
その他については実施の形態１と同様であるので、その説明を省略する。
【００４５】
実施の形態３によれば、実施の形態１と同様の効果を得ることができる。
【００４６】
また、ソフトウェア集合データの送信において、利用可能な帯域幅が所定の閾値以下である場合などにソフトウェア集合データを分割して送信するので、利用可能な帯域幅が小さい場合やソフトウェア集合データのサイズが大きい場合でもソフトウェア集合データの送信による回線占有時間を一定値以下に抑制することができる。このため、動作中の他のサービスの通信を妨げることを防ぎ、他のサービスを実行させながらソフトウェアの更新を行うことができる。
【００４７】
実施の形態４．
以下に、この発明の実施の形態４を図１５及び図１６に基づいて説明する。なお、図１から図１０と同一又は相当部分については同一の符号を付し、その説明を省略する。実施の形態４は、ソフトウェアの更新の要否を端末装置毎に設定する点が実施の形態１と異なる。図１５は、実施の形態４に係るソフトウェア一覧データを示す図である。ソフトウェア一覧データ８２１は、図１５に示すようにソフトウェア構成部品名８２１ａ、一意な識別情報としてのバージョン情報８２１ｂ、更新フラグ８２１ｃを含むリスト形式のデータである。更新フラグ８２１ｃの初期値は“ｎｏ”（更新しない）に設定されている。また、ソフトウェア一覧データ８２１は、端末装置毎のソフトウェアの更新の要否を示す更新端末フラグ８２１ｄを備えている。更新端末フラグ８２１ｄが“ｙｅｓ”である場合、対応する端末装置は更新対象であることを示し、“ｎｏ”である場合、対応する端末装置は更新対象でないことを示す。
【００４８】
図１６は、実施の形態４に係るソフトウェア一覧データの更新処理の流れを示すフロー図である。実施の形態４に係るソフトウェア一覧データの更新処理では、まず自端末の更新端末フラグ８２１ｄより、自端末が更新対象であるかを判定する（ステップＳＴ３０４Ａ１）。自端末が更新対象である場合、以降は実施の形態１と同様に更新フラグ８２１ｃの設定を行う。すなわち、ステップＳＴ３０４Ａ２〜ステップＳＴ３０４Ｄ２は、ステップＳＴ００４Ａ〜ステップＳＴ００４Ｄ２と同様である。ステップＳＴ３０４Ａ１で自端末が更新対象でないと判定された場合、ステップＳＴ３０４Ａ２とステップＳＴ３０４Ｂは実施されない。この場合、自端末Ｓ／Ｗ一覧データは生成されず、Ｓ／Ｗ一覧データ８２１と自端末Ｓ／Ｗ一覧データの差分の検出も行われないため、後のソフトウェアの更新
処理でも自端末ではソフトウェアの更新が行われないこととなる。このように、本実施の形態ではＳ／Ｗ一覧データ８２１と自端末Ｓ／Ｗ一覧データの差分の検出及びこの差分に基づくＳ／Ｗ構成部品ごとの更新フラグ８２１ｃの設定に先だって自端末におけるＳ／Ｗの更新可否を判定している。
【００４９】
なお、本実施の形態では更新端末フラグ８２１ｄによって各端末装置におけるＳ／Ｗの更新可否を決定しているが、各端末にディップスイッチなどのスイッチを設け、ユーザ自身が更新の可否を決定する構成にしてもよい。
その他については実施の形態１と同様であるので、その説明を省略する。
【００５０】
実施の形態４によれば、実施の形態１と同様の効果を得ることができる。
【００５１】
また、ソフトウェア構成部品ごとの更新フラグの設定に先だって自端末におけるソフトウェアの更新可否を判定しているので、リングネットワーク上の端末装置に稼働を停止できない端末装置がある場合や、実験的に一部の端末装置のみについて最新版のソフトウェアを適用したい場合にも対応することができる。
【００５２】
実施の形態５．
【００５３】
以下に、この発明の実施の形態５を図１７に基づいて説明する。なお、図１から図１０と同一又は相当部分については同一の符号を付し、その説明を省略する。実施の形態５は、何らかの原因によりソフトウェアの更新に失敗した場合に処理を切り換える点が実施の形態１と異なる。図１７は、実施の形態５に係るソフトウェアの更新処理及び更新後の再起動処理の流れを示すフロー図であり、図１７（ａ）が各端末装置におけるソフトウェア更新時の処理の流れを示し、図１７（ｂ）が更新完了後の再起動時の処理の流れを示している。端末装置１０１〜１０４は、実施の形態１におけるステップＳＴ０１１Ｃ１又はステップＳＴ０１１Ｃ３における自端末のＳ／Ｗの更新において、更新に先立って更新前のＳ／Ｗを自端末の記憶装置に保存した後に（ステップＳＴ４０１）自端末のＳ／Ｗの更新を行う（ステップＳＴ４０２）。また、端末装置１０１〜１０４はＳ／Ｗの更新が正常に完了したかをチェックして（ステップＳＴ４０３）、正常に完了したと判定した場合に更新管理装置５００に更新完了フラグを送信する（ステップＳＴ４０４）。
更新管理装置５００は、各端末装置から送信されてきた更新完了フラグを受信し端末装置ごとに更新完了フラグを記憶装置５００Ｂに保存する。
【００５４】
更新完了後の再起動時には、まず更新管理装置５００が更新完了フラグのチェックを行い、更新完了フラグを送信していない端末装置に対して更新取消命令を送信する（ステップＳＴ４０６）。端末装置１０１〜１０４は、更新完了後の起動にあたり、まず更新取消命令を受信しているか否かをチェックする（ステップＳＴ４０７）。更新取消命令を受信した端末装置は、ステップＳＴ４０１で記憶装置に保存した更新前のＳ／Ｗを記憶装置より読み出し、更新前のＳ／Ｗを起動する（ステップＳＴ４０８１）。更新取消命令を受信していない端末装置は、更新後のＳ／Ｗを起動する（ステップＳＴ４０８２）。その他については実施の形態１と同様であるので、その説明を省略する。
【００５５】
実施の形態５によれば、実施の形態１と同様の効果を得ることができる。
【００５６】
また、ソフトウェアの更新が正常に完了せず、更新完了フラグを送信していない端末装置に対して更新管理装置が更新取消命令を送信し、更新取消命令を受信した端末装置は予め保存した更新前のソフトウェアを起動するので、ソフトウェアの更新に失敗した場合でも正常に更新されていないソフトウェアを起動してしまうことを防ぐことができる。
実施の形態６．
以下に、この発明の実施の形態６を図１８から図２２に基づいて説明する。なお、図１から図１０と同一又は相当部分については同一の符号を付し、その説明を省略する。実施の形態６は、ソフトウェア一覧データが有する更新対象識別情報が実施の形態１と異なる。全体構成は同様であり、図示省略しているが後述する４台の端末装置２０２〜２０４は実施の形態１の端末装置１０１〜１０４と同様にリングネットワーク９０１に接続されている。
【００５７】
図１８は、実施の形態６に係るソフトウェア一覧データを示す図である。ソフトウェア一覧データ８２２は、図に示すようにソフトウェア構成部品名８２２ａ、一意な識別情報としてのバージョン情報８２２ｂ、更新カウンタ８２２ｃ、すなわち更新対象識別情報を含むリスト形式のデータである。更新カウンタ８２２ｃは、対応するソフトウェア構成部品を必要とする端末装置の台数を示す値で、その初期値は“０”に設定されている。なお、実施の形態１と同様に、一意な識別情報としてのバージョン情報８２２ｂをハッシュ値としてもよい。
【００５８】
図１９は、実施の形態６に係るソフトウェア集合データを示す図である。ソフトウェア集合データ８３２は、図に示すようにソフトウェア構成部品名８３２ａ、ソフトウェア構成部品データ８３２ｂ及び更新カウンタ８３２ｃを備えている。ソフトウェア集合データ８３２の更新カウンタ８３２ｃは、対応するソフトウェア構成部品データ８３２ｂを必要とする端末装置が残り何台かを示す。
ソフトウェア一覧データ８２２及びソフトウェア集合データ８３２は、実施の形態１と同様に更新管理装置５００で生成される。
【００５９】
図２０は、実施の形態６に係る端末装置の構成を示すブロック図である。図２０では端末装置２０１の構成を示しているが、端末装置２０２〜２０４についても同様である。端末装置２０１は、更新カウンタ８２２ｃの値を設定してソフトウェア一覧データ８２２を更新するソフトウェア一覧データ更新手段２１と、ソフトウェア集合データ８３２から自端末のソフトウェアを更新するソフトウェア更新手段２２と、外部機器との間でデータの送受信を行うデータ送受信手段２９とを備えている。
ソフトウェア一覧データ更新手段２１は、受信したソフトウェア一覧データ８２２を一時的に保存するソフトウェア一覧データ保存手段２１１と、自端末ソフトウェア一覧データ（図示なし）を生成する自端末ソフトウェア一覧データ生成手段２１２と、ソフトウェア構成部品のバージョン情報またはハッシュ値に基づいて自端末ソフトウェア一覧データとソフトウェア一覧データ８２２の差分を検出する差分検出手段２１３と、差分検出手段２１３が検出した差分に対応する更新カウンタ８２２ｃの値を１増やす更新カウンタ設定手段２１４を有している。
ソフトウェア更新手段２２は、受信したソフトウェア集合データ８３２を一時的に保存するソフトウェア集合データ保存手段２２１と、自端末に必要なソフトウェア構成部品データをソフトウェア集合データ８３２から抽出するソフトウェア構成部品データ抽出手段２２２と、抽出されたソフトウェア構成部品を自端末のソフトウェアに適用するソフトウェア構成部品適用手段２２３と、ソフトウェア構成部品データ抽出手段２２２が抽出したソフトウェア構成部品に対応する更新カウンタ８３２ｃの値を１減らす更新カウンタ設定手段２２４有している。
【００６０】
次に、動作について説明する。全体のフローは実施の形態１と同様であり、まず更新管理装置５００がソフトウェア一覧データ８２２を生成する。次に、最初の端末装置である端末装置２０１にソフトウェア更新処理を送信し、端末装置２０１〜２０４においてソフトウェア一覧データ８２２の更新処理を行う。
図２１は、実施の形態６に係るソフトウェア一覧データの更新処理の流れを示すフロー図である。Ｓ／Ｗ一覧データ８２２を受信した端末装置は、受信したＳ／Ｗ一覧データ８
２２をソフトウェア一覧データ保存手段２１１に保存した後、自端末ソフトウェア一覧データ生成手段２１２により自端末Ｓ／Ｗ一覧データ（図示なし）を生成し、受信したＳ／Ｗ一覧データ８２と自端末Ｓ／Ｗ一覧データの差分を差分検出手段２１３によって検出する（ステップＳＴ５０４Ａ）。
【００６１】
次に、更新カウンタ設定手段２１４によりステップＳＴ５０４Ａで差分が検出されたソフトウェア構成部品の更新カウンタ８２２ｃの値を１増やす（ステップＳＴ５０４Ｂ）。
【００６２】
次に、自端末が最後の端末装置、すなわち端末装置２０４であるかを判定する（ステップＳＴ５０４Ｃ）。最後の端末装置でない場合、ステップＳＴ５０４Ｂで更新カウンタ８２２ｃの設定を行ったＳ／Ｗ一覧データ８２２を次の端末装置に送信する（ステップＳＴ５０４Ｄ１）。次の端末装置は、Ｓ／Ｗ一覧データを受信してステップＳＴ５０４Ａ以降の処理を実施する（ステップＳＴ５０４Ｄ２）。以上を繰り返すことにより、全ての端末装置２０１〜２０４でソフトウェア一覧データの更新処理が行われる。
自端末が最後の端末装置である場合は、Ｓ／Ｗ一覧データを転送する端末装置がないため処理終了となる。そして、最後の端末装置である端末装置２０４は、全ての端末装置について更新カウンタ８２２ｃが設定されたＳ／Ｗ一覧データ８２２を更新管理装置５００に送信する。この段階で、あるソフトウェア構成部品に対応する更新カウンタの値は、そのソフトウェア構成部品のデータを必要とする端末装置の台数と等しくなっている。
【００６３】
端末装置２０４からＳ／Ｗ一覧データを受信した更新管理装置５００は、Ｓ／Ｗ集合データ８３２を生成して最初の端末装置である端末装置２０１に送信する。Ｓ／Ｗ集合データ８３２の生成においては、更新カウンタ８２２ｃの値が１以上となっているソフトウェア構成部品のソフトウェア構成部品データ８３２ｂのみを必要なデータとして記憶装置５００Ｂから抽出している。すなわち、更新カウンタ８２２ｃの値が０であるＳ／Ｗ構成部品はいずれの端末装置も更新を必要としていないため、Ｓ／Ｗ集合データ８３２に含まれない。
【００６４】
図２２は、実施の形態６に係るソフトウェアの更新処理の流れを示すフロー図である。Ｓ／Ｗ集合データ８３２を受信した端末装置は、受信したＳ／Ｗ集合データ８３２をソフトウェア集合データ保存手段２２１に保存した後、ソフトウェア構成部品データ抽出手段２２２によってＳ／Ｗ集合データ８３２から必要なＳ／Ｗ構成部品データ８３２ｂを抽出し（ステップＳＴ５１１Ａ１）、自端末の記憶装置に保存する。また、Ｓ／Ｗ構成部品データの抽出後、抽出したＳ／Ｗ構成部品に対応する更新カウンタの値を更新カウンタ設定手段２２４により１減らす（ステップＳＴ５１１Ａ２）。必要なＳ／Ｗ構成部品データ８３２ｂの決定は、ソフトウェア一覧データの更新処理時に生成した自端末Ｓ／Ｗ一覧データとＳ／Ｗ集合データ８３２との比較により行ってもよいし、ソフトウェア一覧データの更新処理時に更新カウンタ８２２ｃの値を１増やしたＳ／Ｗ構成部品のＳ／Ｗ構成部品名を端末装置側で保存しておき、これに基づいての必要なＳ／Ｗ構成部品データ８３２ｂを決定してもよい。
【００６５】
次に、自端末が最後の端末装置、すなわち端末装置２０４であるかを判定する（ステップＳＴ５１１Ｂ）。最後の端末装置でない場合、まずＳ／Ｗ構成部品ごとにＳ／Ｗ集合データ８３２を分割し（ステップＳＴ５１１Ｃ２）、更新カウンタの値が１以上のＳ／Ｗ構成部品のみでＳ／Ｗ集合データ８３２を再生成する（ステップＳＴ５１１Ｃ３）。その後は実施の形態１と同様に、Ｓ／Ｗ集合データ８３２を次の端末装置に送信した後（ステップＳＴ５１１Ｃ４）、ステップＳＴ５１１Ａ１で抽出したＳ／Ｗ構成部品データ８３２ｂをソフトウェア構成部品適用手段２２３によって適用することで自端末のＳ／Ｗを更新する（ステップＳＴ５１１Ｃ５）。Ｓ／Ｗ集合データ８３２を受信した次の端末装置は、ステップＳＴ５１１Ａ１以降の処理を実施する（ステップＳＴ５１１Ｃ４）。以上を繰り返すことにより、全ての端末装置２０１〜２０４でＳ／Ｗの更新処理が行われる。
自端末が最後の端末装置である場合は、自端末のＳ／Ｗを更新して（ステップＳＴ５１１Ｃ１）処理終了となる。
【００６６】
上記のとおり、実施の形態６では、各端末装置においてＳ／Ｗ構成部品データ８３２ｂの抽出が行われるたびに対応する更新カウンタ８３２ｃの値が１減らされ、更新カウンタ８３２ｃの値が０となったＳ／Ｗ構成部品のＳ／Ｗ構成部品データ８３２ｂは、ステップＳＴ５１１Ｃ３のＳ／Ｗ集合データの再生成において除外される。このため、ある時点のＳ／Ｗ集合データ８３２を構成するソフトウェア構成部品データ８３２ｂは、対応する更新カウンタ８３２ｃの値が１以上のもののみであり、必要とされていないＳ／Ｗ構成部品データは後方の端末装置に転送されない。
【００６７】
実施の形態６によれば、実施の形態１と同様の効果を得ることができる。
【００６８】
また、対応するソフトウェア構成部品を必要とする端末装置の台数を示す更新カウンタを更新対象識別情報として用い、対応するソフトウェア構成部品のデータが抽出されるたびに更新カウンタの値を減らして、更新カウンタの値がゼロになったソフトウェア構成部品データは後方の端末装置に転送しない。このため、必要とされているソフトウェア構成部品データのみを後方の端末装置に転送することが可能となり、リングネットワークの通信回線をより効率的に利用することができる。
【００６９】
なお、この発明は、その発明の範囲内において、各実施の形態を自由に組み合わせたり、各実施の形態を適宜、変形、省略することが可能である。
【符号の説明】
【００７０】
１１、２１  ソフトウェア一覧データ更新手段、１１２、２１２  自端末ソフトウェア一覧データ生成手段、１１３、２１３  差分検出手段、１１４  更新フラグ設定手段、２１４、２２４  更新カウンタ設定手段、１２、２２  ソフトウェア更新手段、１２２、２２２  ソフトウェア構成部品データ抽出手段、５１  ソフトウェア一覧データ生成手段、５１２  ソフトウェア構成部品抽出手段、５１３  抽出ソフトウェア構成部品リスト化手段、５２  ソフトウェア集合データ生成手段、５２１  更新対象識別手段、５２２  ソフトウェア構成部品データ抽出手段、５２３  抽出ソフトウェア構成部品データ集合手段、８１  通信テーブルデータ、８２、８２１  ソフトウェア一覧データ、８２ａ、８２１ａ、８２２ａ  ソフトウェア構成部品名、  ８２ｂ、８２１ｂ、８２２ｂ  バージョン情報、８２ｂ１  ハッシュ値、８２ｃ、８２１ｃ  更新フラグ、８２２ｃ  更新カウンタ、８２１ｄ  更新端末フラグ、８３、８３２  ソフトウェア集合データ、８３ａ、８３２ａ  ソフトウェア構成部品名、８３ｂ、８３２ｂ  ソフトウェア構成部品データ、８３２ｃ  更新カウンタ、１０１〜１０４、２０１  端末装置、５００  更新管理装置、１０１Ａ〜１０４Ａ、５００Ａ  ＣＰＵ、１０１Ｂ〜１０４Ｂ、５００Ｂ  記憶装置、１０１Ｃ〜１０４Ｃ、５００Ｃ  ソフトウェア構成部品、９０１  リングネットワーク、１０００  更新管理システム
【図１】
2018136727.tif 000003
【図２】
2018136727.tif 000004
【図３】
2018136727.tif 000005
【図４】
2018136727.tif 000006
【図５】
2018136727.tif 000007
【図６】
2018136727.tif 000008
【図７】
2018136727.tif 000009
【図８】
2018136727.tif 000010
【図９】
2018136727.tif 000011
【図１０】
2018136727.tif 000012
【図１１】
2018136727.tif 000013
【図１２】
2018136727.tif 000014
【図１３】
2018136727.tif 000015
【図１４】
2018136727.tif 000016
【図１５】
2018136727.tif 000017
【図１６】
2018136727.tif 000018
【図１７】
2018136727.tif 000019
【図１８】
2018136727.tif 000020
【図１９】
2018136727.tif 000021
【図２０】
2018136727.tif 000022
【図２１】
2018136727.tif 000023
【図２２】
2018136727.tif 000024