(57)【特許請求の範囲】
【請求項１】
ソフトウェアの利用状況を監視する起動ソフト監視手段と、
前記ソフトウェアの過去の利用状況から前記ソフトウェアの次回の利用予測日を予測するソフト利用状況判定手段と、
前記ソフトウェアの過去の利用状況及び前記ソフトウェアの次回の利用予測日が記録されるソフト情報データベースと、
前記ソフト情報データベースを定期的に参照して前記ソフトウェアの更新確認の要否を判定し、更新確認要の場合に通信路を介してパッチを配布するパッチ配布サーバに前記ソフトウェアの更新の有無を確認するパッチ適用判定手段と、
前記パッチ適用判定手段が更新有りを確認した場合に前記パッチ配布サーバから通信路を介して配布されるパッチの適用を行うパッチ適用手段とを具え、
前記パッチ適用判定手段は、前記ソフトウェアの次回の利用予測日と現在日時とを比較して、現在日時が前記ソフトウェアの次回の利用予測日以降である場合に、前記ソフトウェアの更新確認要と判定することを特徴とするソフトウェア更新システム。
【請求項２】
ソフトウェアの利用状況を記録するプログラムと、
前記ソフトウェアを更新するプログラムと、をコンピュータに実行させるソフトウェア更新方法であって、
前記ソフトウェアの利用状況を記録するプログラムが、
前記ソフトウェアの利用状況をソフトウェア情報データベースに記録するステップと、
前記ソフトウェア情報データベースに記録された過去の前記ソフトウェアの利用状況から前記ソフトウェアの次回の利用予測日を算出して前記ソフト情報データベースに記録するステップと、を前記コンピュータに実行させ、
前記ソフトウェアを更新するプログラムが、
前記ソフト情報データベースから前記ソフトウェアの次回の利用予測日を読み込むステップと、
現在の日付と前記ソフトウェアの次回の利用予測日とを比較するステップと、
前記利用予測日を経過している場合に、前記ソフトウェアの更新確認の必要ありと判定するステップと、を前記コンピュータに実行させることを特徴とする方法。
【請求項３】
さらに、前記ソフトウェアを更新するプログラムが、前記ソフトウェアの更新確認の必要ありと判定された場合に、前記ソフトウェアの確認方法が設定されていないときは、前記ソフトウェアの利用者に更新確認を行うよう通知し、
前記ソフトウェアの確認方法が設定されているときは、通信路を介してパッチを配布するパッチ配布サーバに前記ソフトウェアの更新の有無を確認するステップを前記コンピュータに実行させることを特徴とする請求項２に記載のソフトウェア更新方法。
【請求項４】
さらに、前記ソフトウェアを更新するプログラムが、前記ソフトウェアの更新有りが確認された場合に、前記ソフトウェアの利用者に前記ソフトウェアの更新の実施を通知し、前記パッチ配布サーバから通信路を介して配布されるパッチの適用を行うステップを前記コンピュータに実行させることを特徴とする請求項３に記載のソフトウェア更新方法。
【請求項５】
請求項２〜４のいずれか１項に記載の、前記ソフトウェアを更新するプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、パッチ配布サーバから通信路を介して配布されるパッチの適用を行うことでソフトウェアの一部を変更するためのパッチ適用手段を有するソフトウェア更新システム、ソフトウェア更新方法及びプログラムに関する。
【背景技術】
【０００２】
コンピュータが搭載しているアプリケーションソフトウェアの一部を変更（例えば、アップデート）するには、コンピュータの利用者が、ソフトウェアの一部を変更するためのプログラムであるパッチプログラムを、サーバ側から通信路（ネットワーク）を介して配信を受けることでコンピュータに格納し、ソフトウェアの更新処理を行う（例えば、特許文献１参照）。
【０００３】
【特許文献１】特開２００２−２６８８９２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
上記のような従来におけるソフトウェアの更新処理は、ソフトウェアの実行時（起動時）にユーザ自身が行っている。このため、特に、使用頻度が少ないが定期的に実行されるソフトウェアの場合、それを実行する度に利用者が更新の確認及び更新処理を行わなければならず、利用者にとって負担が大きくなっている。
【０００５】
以上のような課題に鑑みて、本発明は、ソフトウェアの更新の確認及び更新処理といった作業を、ソフトウェアの利用時期を予測した上で事前に行うことで、ソフトウェアの利用者の負担を軽減するようなソフトウェア更新システム、ソフトウェア更新方法及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００６】
前記課題を解決するために本発明に係るソフトウェア更新システムは、ソフトウェアの利用状況を監視する起動ソフト監視手段と、ソフトウェアの過去の利用状況からソフトウェアの次回の利用予測日を予測するソフト利用状況判定手段と、ソフトウェアの過去の利用状況及びソフトウェアの次回の利用予測日が記録されるソフト情報データベースと、ソフト情報データベースを定期的に参照してソフトウェアの更新確認の要否を判定し、更新確認要の場合に通信路（ネットワーク）を介してパッチを配布するパッチ配布サーバ（例えば、実施形態におけるベンダサイト２００）にソフトウェアの更新の有無を確認するパッチ適用判定手段と、パッチ適用判定手段が更新有りを確認した場合にパッチ配布サーバから通信路を介して配布されるパッチの適用を行うパッチ適用手段と、を有する。
【０００７】
また、上記構成のソフトウェア更新システムにおいて、パッチ適用判定手段は、ソフトウェアの次回の利用予測日と現在日時とを比較して、現在日時がソフトウェアの次回の利用予測日以降であると判定された場合に、ソフトウェアの更新確認要と判定するのが好ましい。
【０００８】
一方、前記課題を解決するために本発明に係るソフトウェア更新方法は、ソフトウェアの利用状況を記録するプログラムと、ソフトウェアを更新するプログラムと、をコンピュータに実行させるソフトウェア更新方法であって、ソフトウェアの利用状況を記録するステップが、ソフトウェアが利用状況をソフトウェア情報データベースに記録するステップと、ソフトウェア情報データベースに記録されたソフトウェアの過去の利用状況からソフトウェアの次回の利用予測日を算出してソフト情報データベースに記録するステップとをコンピュータに実行させる。
【０００９】
さらに、上記構成のソフトウェア更新方法において、ソフトウェアを更新するプログラムが、ソフト情報データベースからソフトウェアの次回の利用予測日を読み込むステップと、現在の日付とソフトウェアの次回の利用予測日とを比較するステップと、利用予測日を経過している場合に、ソフトウェアの更新確認の必要ありと判定するステップとをコンピュータに実行させるのが好ましい。
【００１０】
さらに、上記構成のソフトウェア更新方法において、ソフトウェアを更新するプログラムが、ソフトウェアの更新確認の必要ありと判定された場合に、ソフトウェアの確認方法が設定されていないときは、ソフトウェアの利用者に更新確認を行うよう通知し、ソフトウェアの確認方法が設定されているときは、通信路を介してパッチを配布するパッチ配布サーバにソフトウェアの更新の有無を確認するステップをコンピュータに実行させるのが好ましい。
【００１１】
また、上記構成のソフトウェア更新方法において、ソフトウェアを更新するプログラムが、ソフトウェアの更新有りが確認された場合に、ソフトウェアの利用者にソフトウェアの更新の実施を通知し、パッチ配布サーバから通信路を介して配布されるパッチの適用を行うステップをコンピュータに実行させるのが好ましい。
【発明の効果】
【００１２】
本発明のソフトウェア更新システム、ソフトウェア更新方法及びプログラムによれば、ソフトウェアの過去の利用状況からソフトウェアの利用予測日を事前に予測して、ソフトウェアの更新の確認及び更新処理を自動的に行うため、利用頻度が少ないが定期的に実行されるソフトウェアであっても利用者に負担を掛けることない。
【発明を実施するための最良の形態】
【００１３】
以下、本発明に係るソフトウェア更新システム、ソフトウェア更新方法及びプログラムの好ましい実施形態について図１及び図２を参照しながら説明する。
【００１４】
図１に、本発明に係るソフトウェア更新システム１００を示す。図１に示すように、このシステム１００は、ソフト利用状況判定手段１０１と、起動ソフト監視手段１０２と、ソフト更新監視手段１０３と、ソフト情報データベース（ＤＢ）１０４と、パッチ適用判定手段１０５と、パッチ適用手段１０６とから成る。本システム１００は、例えば一般的なパーソナルコンピュータであり、ソフト利用状況判定手段１０１、起動ソフト監視手段１０２、ソフト更新監視手段１０３、パッチ適用判定手段１０５、パッチ適用手段１０６は、いずれも、コンピュータに内蔵された処理装置上でプログラムが動作することにより実現される。一方、ソフト情報データベース１０４は、例えばコンピュータに内蔵された記憶領域に登録される。
【００１５】
起動ソフト監視手段１０２は、利用者のソフトウェアが起動されたかを常に監視してソフト情報データベース１０４に記録する。ソフト利用状況判定手段１０１は、後に詳述するように、ソフトウェアの過去の利用状況の情報から次回のソフトウェアの利用日を予測する。ソフト更新監視手段１０３は、ソフトウェアの更新を監視して記録する。ソフト情報データベース１０４には、起動ソフト監視手段１０２の監視によるソフトウェアの過去の起動日時、ソフト利用状況判定手段１０１の予測による次回の利用予測日、ソフト更新監視手段１０３の監視によるソフトウェアの更新状況が記録される。パッチ適用判定手段１０５は、一定期間毎に起動され、ソフト情報データベース１０４に記録された情報からソフトウェアの更新確認の要否を判定し、更新確認要の場合に更新の有無をベンダサイト２００に確認し、更新が見付かった場合はコンピュータの表示画面に表示することによってソフトウェアの利用者に通知するとともに、パッチ適用手段１０６への通知を行う。パッチ適用手段１０６は、パッチ適用情報を元にパッチの適用（パッチプログラムを用いたソフトウェアの更新処理を行い）、パッチ適用の成否をソフト更新監視手段１０３に通知する。
【００１６】
次に、図２を参照して、以上のように構成されたソフトウェア更新システム１００の動作について説明する。ソフトウェア更新システム１００の動作は、ソフトウェアの次回の利用日の予測（ステップＡ１及びステップＡ２）を行うためのプログラムと、ソフトウェアの更新処理（ステップＡ３〜ステップＡ７）を行うためのプログラムとを、それぞれコンピュータに実行させることで行われる。なお、上記次回の利用日の予測を行うためのプログラムと上記更新処理を行うためのプログラムとは、別々のプログラムである必要はなく、各々を１つのプログラムにおける各プログラムモジュールで構成してもよい。
【００１７】
まず、コンピュータ内にインストールされている、更新の対象となる所定のソフトウェアが起動されると、起動ソフト監視手段１０２がこの起動を監視し、起動された日時をソフトウェア情報データベース１０４に蓄積する（ステップＡ１）。そして、ソフト利用状況判定手段１０１が、起動ソフト監視手段１０２によって呼び出される。ソフト利用状況判定手段１０１は、ソフト情報データベース１０４に記録されたソフトウェアの過去の起動記録とソフトウェアの最新の起動情報、すなわちソフトウェアが起動された日時とから、ソフトウェアの次回の利用予測日を算出して、ソフト情報データベース１０４にこれを記録する（ステップＡ２）。
【００１８】
ソフトウェアの次回の利用予測日の算出方法として、いくつかのパターンが挙げられる。例えば、第１の方法では、ソフトウェア情報データベース１０４に蓄積された、ソフトウェアの前２回の起動日時の記録から、ソフトウェアの次回の利用予測日を予測する。この方法では、例えば、前回と、前々回のソフトウェア起動間隔が１０日である場合、前回使用日の１０日後を利用予測日とする。また、第２の方法では、ソフトウェアの過去数回の起動記録の平均値を取り、前回の使用日から平均値だけ経過した日を利用予測日とする。さらに、第３の方法では、月末の３日間に起動された過去の記録から、次回の利用予測日を次の月末の３日間の初日であると予測する。なお、これらは、あくまでも一例であって、利用予測日の算出方法は、上記３つの方法に限られない。
【００１９】
一方、コンピュータにおいては、ソフトウェアを更新処理するためのプログラムが一定期間毎に起動される。このプログラムでは、まず、パッチ適用判定手段１０５によって、ソフト情報データベース１０４からこれに記録されたソフトウェアの利用予測日が読み込まれる（ステップＡ３）。そして、パッチ適用判定手段１０５が、現在の日付と利用予測日とを比較し、ソフトウェアの更新確認の要否を判定する（ステップＡ４）。
【００２０】
ここで、現在の日付が利用予測日前である場合には、ソフトウェアの更新確認は不要と判定されてソフトウェアを更新処理するためのプログラムが終了する。一方、現在の日付が利用予測日を経過している場合は、ソフトウェア更新の確認方法が設定されているかを調査する（ステップＡ５，Ａ６）。
【００２１】
ここで、確認方法が設定されていない場合は、コンピュータの表示画面に表示することによってソフトウェアの利用者に更新確認を行うよう通知して終了する（ステップＡ７）。一方、確認方法が設定されている場合は、ネットワーク（通信路）を介してパッチを配布するベンダサイト２００にソフトウェアの更新の有無を確認する（ステップＡ８，Ａ９）。
【００２２】
ここで、ソフトウェアの更新有りの場合は、コンピュータの表示画面に表示することによってソフトウェアの利用者に更新実施を通知する（ステップＡ１０）とともに、パッチ適用手段１０６への通知を行う。最後に、パッチ適用手段１０６がパッチ配布サーバからネットワーク（通信路）を介して配布されるパッチの適用（ソフトウェアの更新）を行い、パッチ適用の成否をソフト更新監視手段１０３に通知する。ソフト更新監視手段１０３は、ソフト情報データベース１０４にソフトウェアの更新を登録し、ソフトウェアを更新処理するためのプログラムを終了する（ステップＡ１１）。一方、ステップＡ９でソフトウェアの更新無しと確認された場合は、ソフトウェアの更新を行わずにソフトウェアを更新処理するためのプログラムを終了する。
【００２３】
以上説明したように、本発明のソフトウェア更新システム、ソフトウェア更新方法及びプログラムによれば、ソフトウェアの過去の利用状況からソフトウェアの利用予測日を事前に予測して、ソフトウェアの更新の確認及び更新処理を自動的に行うため、利用頻度が少ないが定期的に実行されるソフトウェアであっても利用者に負担を掛けることない。
【図面の簡単な説明】
【００２４】
【図１】本発明に係るソフトウェア更新システムの構成を示すブロック図である。
【図２】上記システムの動作を説明するフローチャートである。
【符号の説明】
【００２５】
１００  ソフトウェア更新システム
１０１  ソフト利用状況判定手段
１０２  起動ソフト監視手段
１０３  ソフト更新監視手段
１０４  ソフト情報データベース
１０５  パッチ適用判定手段
１０６  パッチ適用手段
２００  ベンダサイト（パッチ配布サーバ）
【図１】
0004946926.tif 000002
【図２】
0004946926.tif 000003