(57)【要約】【課題】複数の情報処理装置のそれぞれがバージョンアップ用サーバーなしで、自情報処理装置のソフトウェアコンポーネントを容易にバージョンアップできるようにする。【解決手段】ネットワークを介して更新ソフトウェアコンポーネントを取得することによりバージョンを更新するソフトウェアコンポーネントのバージョン更新方法において、ＰＣ１内のバージョン情報収集部３４が他の各ＰＣ１で稼動している特定のソフトウェアコンポーネントのバージョン情報を収集し、バージョン情報表示部３５がそのバージョン情報の一覧を表示して１つのバージョン情報を選択させ、バージョンアップ部３６が、選択されたバージョン情報に対応したソフトウェアコンポーネントをそのバージョン情報提供元のＰＣ１から取得し、自ＰＣ１内のソフトウェアコンポーネントのバージョンを更新する。【選択図】図３
2008171289.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークを介してソフトウェアコンポーネントを取得することにより自情報処理装置のソフトウェアコンポーネントのバージョンを更新するソフトウェアのバージョン更新方法において、他の各情報処理装置で稼動している特定のソフトウェアコンポーネントのバージョン情報をそれぞれの情報処理装置から収集し、収集したバージョン情報から１つのバージョン情報を選択し、選択したバージョン情報に対応したソフトウェアコンポーネントを当該バージョン情報提供元の情報処理装置から取得してソフトウェアのバージョンを更新することを特徴とするソフトウェアのバージョン更新方法。
【請求項２】
請求項１記載のソフトウェアのバージョン更新方法において、自情報処理装置のバージョン情報を他の情報処理装置からの取得要求に応じて提供するとともに、提供した該バージョン情報に対応したソフトウェアコンポーネントを保持しておき、該ソフトウェアコンポーネントを他の情報処理装置からの取得要求に応じて提供することを特徴とするソフトウェアのバージョン更新方法。
【請求項３】
請求項１または２記載のソフトウェアのバージョン更新方法において、他の情報処理装置から収集した１つまたは複数のバージョン情報を表示し、表示したなかの１つのバージョン情報が指示されたとき、指示されたバージョン情報に対応したソフトウェアコンポーネントを当該バージョン情報提供元の情報処理装置から取得してソフトウェアのバージョンを更新することを特徴とするソフトウェアのバージョン更新方法。
【請求項４】
請求項１、２または３記載のソフトウェアのバージョン更新方法において、現在稼動している前記特定のソフトウェアコンポーネントの累積稼動時間を計測することにより、該累積稼動時間を該ソフトウェアコンポーネントのバージョン情報中に含む構成とし、他の情報処理装置から収集したバージョン情報を表示する際に該バージョン情報に含まれている累積稼動時間を表示することを特徴とするソフトウェアのバージョン更新方法。
【請求項５】
請求項１、２または３記載のソフトウェアのバージョン更新方法において、現在稼動している前記特定のソフトウェアコンポーネント使用時の該ソフトウェアコンポーネントに係る異常発生回数を計数することにより、該異常発生回数を該ソフトウェアコンポーネントのバージョン情報中に含む構成とし、他の情報処理装置から収集したバージョン情報を表示する際に該異常発生回数を表示することを特徴とするソフトウェアのバージョン更新方法。
【請求項６】
請求項１、２または３記載のソフトウェアのバージョン更新方法において、現在稼動している前記特定のソフトウェアコンポーネント使用時の稼動ＯＳ種情報を該ソフトウェアコンポーネントのバージョン情報中に含む構成とし、他の情報処理装置から収集したバージョン情報を表示する際に該稼動ＯＳ種情報を表示することを特徴とするソフトウェアのバージョン更新方法。
【請求項７】
請求項１、２または３記載のソフトウェアのバージョン更新方法において、現在稼動している前記特定のソフトウェアコンポーネントのバージョンダウンを行なったときにその旨を示すバージョンダウン履歴情報を保持することにより、該バージョンダウン履歴情報を該ソフトウェアコンポーネントのバージョン情報中に含む構成とし、他の情報処理装置から収集したバージョン情報を表示する際に該バージョンダウン履歴情報を表示することを特徴とするソフトウェアのバージョン更新方法。
【請求項８】
請求項１または２記載のソフトウェアのバージョン更新方法において、前記他の情報処理装置のバージョン情報を収集したとき、収集したバージョン情報のうち最新のバージョンをもつ情報処理装置から該バージョンのソフトウェアコンポーネントを取得し、該ソフトウェアコンポーネントにバージョンアップすることを特徴とするソフトウェアのバージョン更新方法。
【請求項９】
請求項８記載のソフトウェアのバージョン更新方法において、バージョンアップ条件を指定させ、該バージョンアップ条件情報を保持しておくとともに、現在稼動している前記特定のソフトウェアコンポーネントの実績情報を含むバージョン情報を前記各情報処理装置から収集し、収集したバージョン情報のなかに指定されたバージョンアップ条件を満たす前記実績情報が存在するとき当該情報処理装置から前記最新のバージョンのソフトウェアコンポーネントを取得し、該ソフトウェアコンポーネントにバージョンアップすることを特徴とするソフトウェアのバージョン更新方法。
【請求項１０】
請求項９記載のソフトウェアのバージョン更新方法において、前記バージョンアップ条件として最小稼動時間を指定させ、該最小稼動時間を保持しておくとともに、現在稼動している前記特定のソフトウェアコンポーネントの累積稼動時間を含むバージョン情報を前記各情報処理装置から収集し、収集したバージョン情報のなかに最新のバージョンをもち、且つ累積稼動時間が前記最小稼動時間以上のものが存在するとき当該情報処理装置から前記最新のバージョンのソフトウェアコンポーネントを取得し、該ソフトウェアコンポーネントにバージョンアップすることを特徴とするソフトウェアのバージョン更新方法。
【請求項１１】
請求項９記載のソフトウェアのバージョン更新方法において、前記バージョンアップ条件として最大異常発生回数を指定させ、該最大異常発生回数を保持しておくとともに、現在稼動している前記特定のソフトウェアコンポーネント使用時の異常発生回数を含むバージョン情報を前記各情報処理装置から収集し、収集したバージョン情報のなかに最新のバージョンをもち、且つ異常発生回数が前記最大異常発生回数以下のものが存在するとき当該情報処理装置から前記最新のバージョンのソフトウェアコンポーネントを取得し、該ソフトウェアコンポーネントにバージョンアップすることを特徴とするソフトウェアのバージョン更新方法。
【請求項１２】
請求項９記載のソフトウェアのバージョン更新方法において、前記バージョンアップ条件として稼動ＯＳ種が指定された場合、稼動ＯＳ種を含むバージョン情報を前記各情報処理装置から収集したとき、収集したバージョン情報のなかに最新のバージョンをもち且つ稼動ＯＳ種が自情報処理装置の稼動ＯＳ種と同一のものが存在するとき当該情報処理装置から前記最新のバージョンのソフトウェアコンポーネントを取得し、該ソフトウェアコンポーネントにバージョンアップすることを特徴とするソフトウェアのバージョン更新方法。
【請求項１３】
請求項９記載のソフトウェアのバージョン更新方法において、各情報処理装置は稼動中の前記特定のソフトウェアコンポーネントのバージョンダウンを行なったときに前記バージョン情報としてその旨を示すバージョンダウン履歴情報を保持する構成であって、前記バージョンアップ条件としてバージョンダウン履歴が指定された場合、前記バージョンダウン履歴情報を含むバージョン情報を前記各情報処理装置から収集したとき、収集したバージョン情報のなかに最新のバージョンをもち且つ前記バージョンダウン情報を持たないものが存在するとき当該情報処理装置から前記最新のバージョンのソフトウェアコンポーネントを取得し、該ソフトウェアコンポーネントにバージョンアップすることを特徴とするソフトウェアのバージョン更新方法。
【請求項１４】
請求項８乃至１３のいずれか１項に記載のソフトウェアのバージョン更新方法において、設定されたバージョンアップ条件を満たすバージョン情報が収集したバージョン情報のなかに複数あった場合、累積稼動時間が最長のバージョン情報または異常発生回数が最小のバージョン情報に対応したソフトウェアコンポーネントを取得し、該ソフトウェアコンポーネントにバージョンアップすることを特徴とするソフトウェアのバージョン更新方法。
【請求項１５】
請求項１乃至１４のいずれか１項に記載の方法のバージョン更新を情報処理装置に実行させるためのプログラム。
【請求項１６】
請求項１５記載のプログラムを記録した情報処理装置が読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置のＯＳ（オペレイティングシステム）上で動作するアプリケーションソフトウェア（プログラム）などのバージョンアップ技術に係り、特に、ネットワークを介したバージョンアップ技術に関する。
【背景技術】
【０００２】
ソフトウェアコンポーネント（プログラム）のバージョンアップ方法として、ネットワークに接続された管理用サーバーがソフトウェアコンポーネントの最新バージョンをパーソナルコンピュータなど情報処理装置にネットワーク経由で配布するという方法がある。このようなバージョンアップの方法は管理者がネットワークに接続された各情報処理装置の特定のソフトウェアコンポーネントのバージョンを管理する方法として普及している。特に、対象が業務ソフトウェアのように強制的にバージョンアップを行なう必要があるソフトウェアコンポーネントの場合には一般的である。
他方、各情報処理装置で利用するソフトウェアコンポーネントのバージョンを各情報処理装置の利用者自身が選択する場合も少なくない。
【０００３】
以下、特許文献１に示された関連従来技術について説明する。
この従来技術では、複数の画像形成装置が連結されていて、それらが印刷作業を分担して行なっている。そのような画像形成装置群を構成している自画像形成装置のソフトウェアコンポーネントが更新された際、他の画像形成装置で用いられている同じソフトウェアコンポーネントのバージョンを確認し、自画像形成装置よりも古いバージョンのソフトウェアコンポーネントを用いている画像形成装置があった場合、その画像形成装置に対してバージョンアップ用のデータを送信してそのソフトウェアコンポーネントをバージョンアップさせる。
【０００４】
詳細には、自画像形成装置のソフトウェアコンポーネントが更新された際、他の画像形成装置に対してそのソフトウェアコンポーネントのバージョンを示すバージョン情報の送信を要求するバージョン通知要求コマンドを送信し、そのコマンドに応じて他の画像形成装置から送信されてきたバージョン情報を受信し、自画像形成装置のバージョン情報と他の画像形成装置から取得したバージョン情報を比較し、自画像形成装置よりも古いバージョンのソフトウェアコンポーネントが用いられている他の画像形成装置に対してバージョンアップ用データを送信する。
【特許文献１】特開２００６−１８４９４０公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、特別な管理用サーバーを設けてソフトウェアコンポーネントのバージョンアップを行なわせるのは適切でない。バージョンアップ処理は時々行なわれるだけであるので、その管理用サーバーは使われていない時間が大半となってしまうからである。なお、特許文献１に示された従来技術は他の画像形成装置のバージョンアップを行なわせるのが目的であって、自情報処理装置のバージョンアップが目的である本発明とは目的が異なる。
本発明は、このような従来技術の問題を解決しようとするものであり、ネットワークに接続され、且つ同じソフトウェアコンポーネントを用いている複数の情報処理装置のそれぞれが、特定のバージョンアップ用サーバーを準備することなく、自情報処理装置のソフトウェアコンポーネントを容易にバージョンアップできるバージョンアップ技術を提供することを目的とする。
【課題を解決するための手段】
【０００６】
請求項１記載の発明は、ネットワークを介してソフトウェアコンポーネントを取得することにより自情報処理装置のソフトウェアコンポーネントのバージョンを更新するソフトウェアのバージョン更新方法において、他の各情報処理装置で稼動している特定のソフトウェアコンポーネントのバージョン情報をそれぞれの情報処理装置から収集し、収集したバージョン情報から１つのバージョン情報を選択し、選択したバージョン情報に対応したソフトウェアコンポーネントを当該バージョン情報提供元の情報処理装置から取得してソフトウェアのバージョンを更新することを特徴とする。
請求項２記載の発明は、請求項１記載のソフトウェアのバージョン更新方法において、自情報処理装置のバージョン情報を他の情報処理装置からの取得要求に応じて提供するとともに、提供した該バージョン情報に対応したソフトウェアコンポーネントを保持しておき、該ソフトウェアコンポーネントを他の情報処理装置からの取得要求に応じて提供することを特徴とする。
【０００７】
請求項３記載の発明は、請求項１または２記載のソフトウェアのバージョン更新方法において、他の情報処理装置から収集した１つまたは複数のバージョン情報を表示し、表示したなかの１つのバージョン情報が指示されたとき、指示されたバージョン情報に対応したソフトウェアコンポーネントを当該バージョン情報提供元の情報処理装置から取得してソフトウェアのバージョンを更新することを特徴とする。
請求項４記載の発明は、請求項１、２または３記載のソフトウェアのバージョン更新方法において、現在稼動している前記特定のソフトウェアコンポーネントの累積稼動時間を計測することにより、該累積稼動時間を該ソフトウェアコンポーネントのバージョン情報中に含む構成とし、他の情報処理装置から収集したバージョン情報を表示する際に該バージョン情報に含まれている累積稼動時間を表示することを特徴とする。
【０００８】
請求項５記載の発明は、請求項１、２または３記載のソフトウェアのバージョン更新方法において、現在稼動している前記特定のソフトウェアコンポーネント使用時の該ソフトウェアコンポーネントに係る異常発生回数を計数することにより、該異常発生回数を該ソフトウェアコンポーネントのバージョン情報中に含む構成とし、他の情報処理装置から収集したバージョン情報を表示する際に該異常発生回数を表示することを特徴とする。
請求項６記載の発明は、請求項１、２または３記載のソフトウェアのバージョン更新方法において、現在稼動している前記特定のソフトウェアコンポーネント使用時の稼動ＯＳ種情報を該ソフトウェアコンポーネントのバージョン情報中に含む構成とし、他の情報処理装置から収集したバージョン情報を表示する際に該稼動ＯＳ種情報を表示することを特徴とする。
【０００９】
請求項７記載の発明は、請求項１、２または３記載のソフトウェアのバージョン更新方法において、現在稼動している前記特定のソフトウェアコンポーネントのバージョンダウンを行なったときにその旨を示すバージョンダウン履歴情報を保持することにより、該バージョンダウン履歴情報を該ソフトウェアコンポーネントのバージョン情報中に含む構成とし、他の情報処理装置から収集したバージョン情報を表示する際に該バージョンダウン履歴情報を表示することを特徴とする。
請求項８記載の発明は、請求項１または２記載のソフトウェアのバージョン更新方法において、前記他の情報処理装置のバージョン情報を収集したとき、収集したバージョン情報のうち最新のバージョンをもつ情報処理装置から該バージョンのソフトウェアコンポーネントを取得し、該ソフトウェアコンポーネントにバージョンアップすることを特徴とする。
【００１０】
請求項９記載の発明は、請求項８記載のソフトウェアのバージョン更新方法において、バージョンアップ条件を指定させ、該バージョンアップ条件情報を保持しておくとともに、現在稼動している前記特定のソフトウェアコンポーネントの実績情報を含むバージョン情報を前記各情報処理装置から収集し、収集したバージョン情報のなかに指定されたバージョンアップ条件を満たす前記実績情報が存在するとき当該情報処理装置から前記最新のバージョンのソフトウェアコンポーネントを取得し、該ソフトウェアコンポーネントにバージョンアップすることを特徴とする。
請求項１０記載の発明は、請求項９記載のソフトウェアのバージョン更新方法において、前記バージョンアップ条件として最小稼動時間を指定させ、該最小稼動時間を保持しておくとともに、現在稼動している前記特定のソフトウェアコンポーネントの累積稼動時間を含むバージョン情報を前記各情報処理装置から収集し、収集したバージョン情報のなかに最新のバージョンをもち、且つ累積稼動時間が前記最小稼動時間以上のものが存在するとき当該情報処理装置から前記最新のバージョンのソフトウェアコンポーネントを取得し、該ソフトウェアコンポーネントにバージョンアップすることを特徴とする。
【００１１】
請求項１１記載の発明は、請求項９記載のソフトウェアのバージョン更新方法において、前記バージョンアップ条件として最大異常発生回数を指定させ、該最大異常発生回数を保持しておくとともに、現在稼動している前記特定のソフトウェアコンポーネント使用時の異常発生回数を含むバージョン情報を前記各情報処理装置から収集し、収集したバージョン情報のなかに最新のバージョンをもち、且つ異常発生回数が前記最大異常発生回数以下のものが存在するとき当該情報処理装置から前記最新のバージョンのソフトウェアコンポーネントを取得し、該ソフトウェアコンポーネントにバージョンアップすることを特徴とする。
請求項１２記載の発明は、請求項９記載のソフトウェアのバージョン更新方法において、前記バージョンアップ条件として稼動ＯＳ種が指定された場合、稼動ＯＳ種を含むバージョン情報を前記各情報処理装置から収集したとき、収集したバージョン情報のなかに最新のバージョンをもち且つ稼動ＯＳ種が自情報処理装置の稼動ＯＳ種と同一のものが存在するとき当該情報処理装置から前記最新のバージョンのソフトウェアコンポーネントを取得し、該ソフトウェアコンポーネントにバージョンアップすることを特徴とする。
【００１２】
請求項１３記載の発明は、請求項９記載のソフトウェアのバージョン更新方法において、各情報処理装置は稼動中の前記特定のソフトウェアコンポーネントのバージョンダウンを行なったときに前記バージョン情報としてその旨を示すバージョンダウン履歴情報を保持する構成であって、前記バージョンアップ条件としてバージョンダウン履歴が指定された場合、前記バージョンダウン履歴情報を含むバージョン情報を前記各情報処理装置から収集したとき、収集したバージョン情報のなかに最新のバージョンをもち且つ前記バージョンダウン情報を持たないものが存在するとき当該情報処理装置から前記最新のバージョンのソフトウェアコンポーネントを取得し、該ソフトウェアコンポーネントにバージョンアップすることを特徴とする。
【００１３】
請求項１４記載の発明は、請求項８乃至１３のいずれか１項に記載のソフトウェアのバージョン更新方法において、設定されたバージョンアップ条件を満たすバージョン情報が収集したバージョン情報のなかに複数あった場合、累積稼動時間が最長のバージョン情報または異常発生回数が最小のバージョン情報に対応したソフトウェアコンポーネントを取得し、該ソフトウェアコンポーネントにバージョンアップすることを特徴とする。
請求項１５記載の発明は、請求項１乃至１４のいずれか１項に記載の方法のバージョン更新を情報処理装置に実行させるためのプログラムとする。
請求項１６記載の発明は、請求項１５記載のプログラムを記録した情報処理装置が読み取り可能な記録媒体とする。
【発明の効果】
【００１４】
本発明によれば、他の各情報処理装置で稼動している特定のソフトウェアコンポーネントのバージョン情報をそれぞれの情報処理装置から収集し、収集したバージョン情報から１つのバージョン情報を選択し、選択したバージョン情報に対応したソフトウェアコンポーネントをそのバージョン情報提供元の情報処理装置から取得することにより、自情報処理装置のソフトウェアコンポーネントのバージョンを更新できるので、特定のバージョンアップ用サーバーを準備することなく、自情報処理装置のソフトウェアコンポーネントを容易にバージョンアップできる。また、利用者の指定したバージョンアップ条件に従って自動的にバージョンアップを行なうことができるので、利用者の手を煩わせないで済む。
【発明を実施するための最良の形態】
【００１５】
以下、図面を参照して本発明の実施形態を詳細に説明する。但し、この実施形態に記載される構成要素、種類、組み合わせ、形状、その相対位置などは特定的な記載がない限りこの説明の範囲をそれのみに限定する主旨ではなく、単なる説明例に過ぎない。
図１は本発明の一実施形態としてネットワークシステムの概略構成を示すシステム構成図である。図示したように、複数のパーソナルコンピュータ（以下、ＰＣと称する，請求項記載の情報処理装置に相当する）１がデータ通信網（ネットワーク）２に接続された構成である。
図２はＰＣ１のハードウェアの概略構成を示すブロック図である。図示したように、ＰＣ１は、プログラム（ソフトウェア）に従って動作するＣＰＵ１１、基本的なプログラムが書き込まれているＲＯＭ１２、プログラムやデータを一時的に記憶するＲＡＭ１３、プログラムやデータを保存しておくハードディスク記憶装置（以下、ＨＤＤと称する）１４、そのＨＤＤ１４に対するデータの読み書きなどを制御するＨＤＤ制御部（以下、ＨＤＣと称する）１５、キーボードやマウスなどを有してデータを入力したり指示情報を入力したりする入力装置１６、表示装置１７、これら入力装置１６および表示装置１７を制御する入出力インタフェース部１８、データ通信網２を介して行なわれる他のＰＣ１などとの通信を制御するネットワークインタフェース部１９、着脱可能な記録媒体２３に対する読み書きを行なうメディア（記録媒体）駆動装置（以下、ＭＤＤと称する）２０、そのＭＤＤ２０に対するデータの読み書きなどを制御するメディア駆動制御部（以下、ＭＤＤＣと称する）２１、このＰＣ１が管理している現在時刻（以下、システム時刻と称する）を計時して出力する時計回路２２などを備えている。
以下、本発明の各実施例を説明する。
【実施例１】
【００１６】
図３は各ＰＣ１内に実現されるバージョンアップ処理部の構成を示すブロック図である。このバージョンアップ処理部３０はＲＡＭ１３（図２参照）に読み出されたプログラムとＣＰＵ１１とにより実現される。図示したように、バージョンアップ処理部３０は、バージョンアップに先立ってバージョンアップの条件を利用者に設定させるバージョンアップ条件設定部３１、自ＰＣ（例えばＰＣ１ａ）内の特定のソフトウェアコンポーネント（以下、単にソフトウェアコンポーネントと称する）のバージョン情報を管理・保存するバージョン情報保存部３２、保存されているバージョン情報を要求に応じて他のＰＣ１（例えばＰＣ１ｂ）に提供するバージョン情報公開部３３、ＰＣ１ｂなど他のＰＣ１のバージョン情報公開部３３が提供するバージョン情報を収集するバージョン情報収集部３４、そのバージョン情報収集部３４が収集したバージョン情報の一覧を表示させるバージョン情報表示部３５、表示されたバージョン情報一覧中の指示されたバージョン情報に対応したＰＣ１からそのバージョン情報のソフトウェアコンポーネントを取得して自ＰＣのソフトウェアコンポーネントのバージョンアップを行なうバージョンアップ部３６、ソフトウェアコンポーネントを要求に応じて他のＰＣ１（例えばＰＣ１ｂ）に提供するソフトウェア公開部３７などを備える。なお、図３に示したように、ＨＤＤ１４には、各バージョンのソフトウェアコンポーネントＣ、およびそれぞれのバージョン情報が保存される。
【００１７】
図４は、このようなバージョンアップ処理部３０によって実行されるバージョンアップ処理の動作フローである。以下、この動作フローを説明する。
まず、利用者のバージョンアップ指示により起動されたバージョン情報収集部３４が、同報通信機能を用いたバージョン情報要求メッセージの送信により、稼動しているソフトウェアコンポーネントのバージョン情報をデータ通信網２に接続されている各ＰＣ１から収集する（ステップ１）。そして、バージョン情報表示部３５が収集されたバージョン情報の一覧を表示装置１７に表示させる（ステップ２）。
【００１８】
表示例を図５に示す。図示したように、１行から成る各レコードはそれぞれ他のＰＣ１から収集されたバージョン情報で、その内容としてＰＣのＩＰアドレス、ソフトウェアコンポーネントのバージョン番号、そのソフトウェアコンポーネントの累積稼動時間、そのソフトウェアコンポーネント使用時の異常発生回数、バージョンダウン履歴の有無などをもつ。累積稼動時間、異常発生回数、バージョンダウン履歴の有無などをバージョン情報としてもたせているのは、そのような情報がソフトウェアコンポーネントの信頼性を判断するうえで有効であるからである。
バージョン情報としてそれぞれのＰＣで稼動しているＯＳ種の情報をもたせてもよい。他のＰＣ１で稼動していたソフトウェアコンポーネントが自ＰＣで確実に動作するかどうかは稼動ＯＳ種に依存するところが大であるからである。なお、異常発生回数は例えば、対象としているソフトウェアコンポーネントを使用した際にそのソフトウェアコンポーネントが正常終了しなかった場合に１回発生と数える。また、バージョンダウンとはバージョンを古いバージョンに戻すことである。
【００１９】
バージョン情報表示部３５はこのような一覧のなかから利用者に１つを選択させ（ステップ３）、選択が行なわれると、バージョンアップ部３６が、選択されたバージョン情報のソフトウェアコンポーネントを、そのバージョン情報を送ってきたＰＣ１から取得する（ステップ４）。
続いて、バージョンアップ部３６は取得したソフトウェアコンポーネントをＨＤＤ１４に保存し、そのソフトウェアコンポーネントのインストールを行なってバージョンアップする（ステップ５）。
さらに、そのソフトウェアコンポーネントのバージョン情報を作成し、その初期値をバージョンアップ履歴としてＨＤＤ１４に保存する（ステップ６）。初期値の一例を以下に示す。
バージョン          ：バージョン３
稼動ＯＳ種          ：自ＰＣの稼動ＯＳ種
稼動時間            ：０
異常発生回数        ：０
バージョンダウン履歴：Ｎｏ
【００２０】
この後、バージョン情報保存部３２は定期的に現行バージョンの履歴を記録する。図６に、その１つとして、このソフトウェアコンポーネントの稼動時間履歴記録（ロギング）の動作フローを示す。以下、この動作フローを説明する。
まず、図６(ａ)に示したように、対象としているソフトウェアコンポーネントが起動されたとき、バージョン情報保存部３２が時計回路２２からそのときのシステム時刻を取得し、内部値としてＲＡＭ１３に保存（記憶）しておく（ステップ１１）。
その後、そのソフトウェアコンポーネントが動作を終了するとき、図６(ｂ)に示したように、バージョン情報保存部３２は再びそのときのシステム時刻を取得する（ステップ１５）。そして、そのシステム時刻から起動時に保存したシステム時刻を減算して稼動時間を算出する（ステップ１６）。
続いて、バージョン情報保存部３２はＨＤＤ１４内のバージョン情報テーブル中の最新バージョン（現行バージョン）情報レコードからこれまでの累積稼動時間を取得する（ステップ１７）。そして、その値に今回の稼動時間を加算して新たな累積稼動時間を算出し（ステップ１８）、その最新バージョン情報レコードにその累積稼動時間を書き込んで累積稼動時間を更新する（ステップ１９）。
【００２１】
異常発生回数については、対象のソフトウェアコンポーネントが起動時に所定のフラグ（変数）を立て終了時にそのフラグを降ろすようにする一方、バージョン情報保存部３２が周期的にそのフラグを確認し、そのソフトウェアコンポーネントが起動されていないにもかかわらずフラグが立っていた場合にＨＤＤ１４内のバージョン情報テーブル中の最新バージョン情報レコードからこれまでの異常発生回数を取得し、その値に１を加え、加えた後の値を最新バージョン情報レコードに書き込んで更新する。なお、バージョン情報保存部３２はフラグ確認を行なった際、フラグを降ろしておく。
また、対象の稼動中ソフトウェアコンポーネントを古いバージョンに戻した場合には、バージョン情報保存部３２は最新バージョン情報レコード中のバージョンダウン履歴部分に「Ｙｅｓ」を示す値を書き込む。
【００２２】
図７にバージョン情報テーブルの実施例を示す。図７において、各行はそれぞれのバージョンに対応したバージョン情報レコードである。なお、左側にレコードと書いた１番上の行は説明のための行で、実際には存在しない。図７から明らかなように、バージョンの変更が行なわれるごとにレコードは１つずつ増えていく。この例では、１．２のバージョンを組み込んだが、異常発生頻度が高いので、１．１のバージョンにバージョンダウンし、現在は１．１のバージョンで稼動していることを示している。
【００２３】
図８は各バージョンのソフトウェアコンポーネントのデータ構築法を示す実施例で、図８(ａ)では各バージョンとも個別に実行に必要なすべてのデータをもつのに対して、図８(ｂ)では以前のバージョンに対する差分（異なる部分）だけをもつ。バージョンアップは主として機能追加のために行なわれるので後者も有効になる。図８（ｂ）の例はバージョン１．０に対する差分をもつようにしており、この場合、例えばバージョン１．２の実行時にはバージョン１．０とバージョン１．２の両方を用いる。
こうして、この実施例によれば、同じソフトウェアコンポーネントを用いている複数の情報処理装置のそれぞれが、特定のバージョンアップ用サーバーを準備することなく、自情報処理装置のソフトウェアコンポーネントを容易にバージョンアップできる。
【実施例２】
【００２４】
実施例２では、あらかじめバージョンアップの条件を設定しておくことにより図３に示した構成のバージョンアップ処理部３０が自動バージョンアップを行なう。以下、図９および図１０に示した動作フローに従ってこの実施例を説明する。
図９はバージョンアップするか否かを判定する動作フローで、バージョンアップ条件設定部３１が利用者にバージョンアップの条件をあらかじめ指定させ、それを取得しておく（ステップ２１）。例えば更新対象のソフトウェアコンポーネントについて、自ＰＣの現在のバージョンのものよりも新しいバージョンのものの累積稼動時間が何時間以上であればそのバージョンにバージョンアップするというようなことを指定させる。
【００２５】
図１１はバージョンアップ条件設定部３１により実行されるバージョンアップ条件設定の際に表示されるユーザーインタフェース画面である。図から明らかなように、この実施例では、自動バージョンアップを行なうタイミングと自動バージョンアップ条件を設定できる。タイミングは「今すぐ実行」か、ＰＣ起動時、ＰＣ終了時、または指定した時刻である。バージョンアップ条件としては、累積稼動時間、異常発生回数、同一ＯＳであること、バージョンダウンの履歴がないことなどを設定できる。
その後、利用者のバージョンアップ指示により起動されたバージョン情報収集部３４が同報通信機能を用いたバージョン情報要求メッセージの送信によりデータ通信網２に接続されている各ＰＣ１から稼動している該当ソフトウェアコンポーネントのバージョン情報を収集する（ステップ２２）。なお、バージョン情報収集部３４は利用者からの指示でなく、周期的に自動的に起動されるようにしてもよい。
【００２６】
他のＰＣ１からバージョン情報が収集されると、バージョン情報収集部３４によりバージョンアップ部３６が起動され、そのバージョンアップ部３６は収集されたそれぞれのバージョン情報内のバージョン番号が自ＰＣの現在のバージョン番号より大きいか否か、つまり現在のバージョンより新しいか否かを判定する（ステップ２３）。そして、収集したすべてのバージョン情報の示すバージョン番号中に新しいバージョンのものがなければ（ステップ２３でＮｏ）、バージョンアップしないと判定し、この動作フローを抜ける。
それに対して、収集したバージョン情報中に１つでも現在のバージョンよりも新しいバージョンのものがあれば（ステップ２３でＹｅｓ）、バージョンアップ条件として稼動時間制限が有効になっていた場合（ステップ２４でＹｅｓ）、収集した新しいバージョンのバージョン情報中からソフトウェアコンポーネントの累積稼動時間がそれぞれバージョンアップ条件として設定された制限稼動時間を超えているか否かを判定する（ステップ２５）。そして、超えているものがなければ（ステップ２５でＮｏ）、バージョンアップしないと判定し、この動作フローを抜ける。
【００２７】
一方、稼動時間制限が有効でなかった場合（ステップ２４でＮｏ）、および制限稼動時間を超えているものがあった場合（ステップ２５でＹｅｓ）、バージョンアップ条件として異常発生回数制限が有効になっていたならば（ステップ２６でＹｅｓ）、これまでのバージョンアップ条件をパスしたバージョン情報中から各ソフトウェアコンポーネント稼動中の異常発生回数がそれぞれバージョンアップ条件として設定された制限異常発生回数を超えているか否かを判定する（ステップ２７）。そして、すべてのものが超えていたならば（ステップ２７でＹｅｓ）、バージョンアップしないと判定し、この動作フローを抜ける。
それに対して、異常発生回数制限が有効でなかった場合（ステップ２６でＮｏ）、および制限異常発生回数を超えていないものがあった場合（ステップ２７でＮｏ）、バージョンアップ条件として稼動ＯＳ種の指定が有効になっていたならば（ステップ２８でＹｅｓ）、これまでのバージョンアップ条件をパスしたバージョン情報中から各ソフトウェアコンポーネントの稼動ＯＳ種がそれぞれ自ＰＣの稼動ＯＳ種と同一か否かを判定する（ステップ２９）。そして、同一の稼動ＯＳ種のものがなければ（ステップ２９でＮｏ）、バージョンアップしないと判定し、この動作フローを抜ける。
一方、稼動ＯＳ種の指定が有効でなかった場合（ステップ２８でＮｏ）、および同一の稼動ＯＳ種のものがあった場合（ステップ２９でＹｅｓ）、バージョンアップすると判定し、この動作フローを抜ける。
【００２８】
次に、図１０に従って、バージョンアップ部３６によって実行される、バージョンアップ処理の動作フローを説明する。
ここでは、図９に示したバージョンアップ判定を行なって（ステップ３１）、バージョンアップを行なわないという判定の場合は（ステップ３２でＮｏ）この動作フローを抜け、バージョンアップを行なうという判定の場合（ステップ３２でＹｅｓ）、該当する最新バージョンのソフトウェアコンポーネントを所有しているＰＣ１からそのソフトウェアコンポーネントを取得する（ステップ３３）。なお、該当するバージョンのものが複数あった場合には、例えば累積稼動時間が最長のバージョン情報か異常発生回数が最小のバージョン情報を提供したＰＣ１からソフトウェアコンポーネントを取得する。
続いて、取得した最新バージョンのソフトウェアコンポーネントをＨＤＤ１４に保存する（ステップ３４）。さらに、そのソフトウェアコンポーネントのバージョン情報を作成し、その初期値をバージョンアップ履歴としてＨＤＤ１４に保存する（ステップ３５）。
こうして、この実施例によれば、実施例１と同様な効果が得られるとともに、全自動であるので利用者の手を煩わせないで済む。
【００２９】
以上、本発明のソフトウェアバージョンアップ方法を一実施形態について説明したが、説明したようなバージョンアップ方法に従ってプログラミングしたプログラム（ソフトウェア）を着脱可能な記録媒体に記録し、その記録媒体をこれまで本発明によったバージョンアップを行なえなかったパーソナルコンピュータなど情報処理装置に装着することにより、または、そのようなプログラムをネットワーク経由でそのような情報処理装置へ転送することにより、そのような情報処理装置においても本発明によったソフトウェアバージョンアップを行なうことができる。
【図面の簡単な説明】
【００３０】
【図１】本発明の一実施形態としてネットワークシステムの概略構成を示すシステム構成図である。
【図２】本発明の一実施形態としてパーソナルコンピュータのハードウェアの概略構成を示すブロック図である。
【図３】本発明の第１の実施例として各パーソナルコンピュータ内に実現されるバージョンアップ処理部の構成を示すブロック図である。
【図４】本発明の第１の実施例としてバージョンアップ処理の動作フローを示すフロー図である。
【図５】本発明の第１の実施例としてバージョン情報一覧の表示例を示す画面図である。
【図６】本発明の第１の実施例として稼動時間履歴記録の動作フローを示すフロー図である。
【図７】本発明の第１の実施例としてバージョン情報テーブルの構成例を示すデータ構成図である。
【図８】本発明の第１の実施例として各バージョンのソフトウェアコンポーネントのデータ構築法を示す説明図である。
【図９】本発明の第２の実施例としてバージョンアップするか否かを判定する動作フローを示すフロー図である。
【図１０】本発明の第２の実施例としてバージョンアップ処理の動作フローを示すフロー図である。
【図１１】本発明の第２の実施例としてバージョンアップ条件設定画面を示す画面図である。
【符号の説明】
【００３１】
１  パーソナルコンピュータ
１１  ＣＰＵ
１４  ハードディスク記憶装置
１７  表示装置
１９  ネットワークインタフェース部
２２  時計回路
３０  バージョンアップ処理部
３１  バージョンアップ条件設定部
３２  バージョン情報保存部
３３  バージョン情報公開部
３４  バージョン情報収集部
３５  バージョン情報表示部
３６  バージョンアップ部
３７  ソフトウェア公開部
【図１】
2008171289.tif 000003
【図２】
2008171289.tif 000004
【図３】
2008171289.tif 000005
【図４】
2008171289.tif 000006
【図５】
2008171289.tif 000007
【図６】
2008171289.tif 000008
【図７】
2008171289.tif 000009
【図８】
2008171289.tif 000010
【図９】
2008171289.tif 000011
【図１０】
2008171289.tif 000012
【図１１】
2008171289.tif 000013