(57)【要約】      （修正有）【課題】ソフトウェアの配布処理を、任意のフェースに分割して実行できるようにし、また、最適なフェーズから再開できるようにする。【解決手段】クライアント装置１はソフトウェア定義を作成して配布管理装置２のソフトウェア定義記憶部２１に登録する。その後、クライアント装置１は配布管理装置２に対して定義したソフトウェアの配信要求を行う。配布管理部２２はソフトウェア定義記憶部２１に登録されているソフトウェア定義と配布記憶部２３とを参照してソフトウェア配信処理を始める適切なフェーズを決定する。配布記憶部２３には配布対象装置３のソフトウェア配布処理の結果がフェーズ単位で記憶されている。配布管理部２２は決定したフェーズから配布処理を開始する。配布管理部２２は配布処理の結果をフェーズ単位で配布記憶部２３に登録する。【選択図】図１
2006085460.tif 000002
【特許請求の範囲】
【請求項１】
ソフトウェアを配布先に配布するソフトウェア配布システムであって、
配布対象のソフトウェアを示す情報ならびに前記ソフトウェアの配布処理を細分化したフェーズのフェーズ情報と前記フェーズで実行する処理内容記述との組から成るフェーズ定義を含むソフトウェア定義を記憶するソフトウェア定義記憶部と、
配布処理の結果をフェーズ単位で記憶する配布記憶部と、
ソフトウェアの配布を要求されたときに前記配布記憶部の配布処理結果を参照して配布処理のフェーズを決定する手段と、
前記決定したフェーズに対応する処理内容記述を前記ソフトウェア定義記憶部から読み出して実行することで配布処理を行う手段と、
前記配布処理の結果をフェーズ単位で前記配布記憶部に登録する手段とを有する、
ことを特徴とするソフトウェア配布システム。
【請求項２】
クライアント装置と配布管理装置と配布対象装置とを含み前記クライアント装置の要求するソフトウェアを前記配布対象装置に配布するソフトウェア配布システムであって、
前記クライアント装置は、
ソフトウェアの配布要求を前記配布管理装置に送信する手段を有し、
前記配布管理装置は、
配布対象のソフトウェアを示す情報ならびに前記ソフトウェアの配布処理を細分化したフェーズのフェーズ情報と前記フェーズで実行する処理内容記述との組から成るフェーズ定義を含むソフトウェア定義を記憶するソフトウェア定義記憶部と、
配布処理の結果をフェーズ単位で記憶する配布記憶部と、
前記クライアント装置からソフトウェアの配布要求を受信したときに前記ソフトウェア定義記憶部のフェーズ定義と前記配布記憶部の配布処理結果とを参照して配布処理のフェーズを決定する手段と、
前記決定したフェーズに対応する処理内容記述を前記ソフトウェア定義記憶部から読み出して実行することで配布処理を行う手段と、
前記配布処理の結果をフェーズ単位で前記配布記憶部に登録する手段とを有する、
ことを特徴とするソフトウェア配布システム。
【請求項３】
クライアント装置と配布管理装置と配布対象装置とを含み前記クライアント装置の要求するソフトウェアを前記配布対象装置に配布するソフトウェア配布システムであって、
前記クライアント装置は、
配布処理の結果をフェーズ単位で記憶する配布記憶部と、
前記配布記憶部を参照して配布処理のフェーズを決定しソフトウェアの配布要求を前記配布管理装置に送信する手段と、
前記配布管理装置から受信した配布処理の結果をフェーズ単位で前記配布記憶部に登録する手段とを有し、
前記配布管理装置は、
配布対象のソフトウェアを示す情報ならびに前記ソフトウェアの配布処理を細分化したフェーズのフェーズ情報と前記フェーズで実行する処理内容記述との組から成るフェーズ定義を含むソフトウェア定義を記憶するソフトウェア定義記憶部と、
前記クライアント装置から受信したソフトウェアの配布要求に含まれるフェーズを基に配布処理のフェーズを決定する手段と、
前記決定したフェーズに対応する処理内容記述を前記ソフトウェア定義記憶部から読み出して実行することで配布処理を行う手段と、
前記配布処理の結果をフェーズ単位で前記クライアント装置に送信する手段とを有する、
ことを特徴とするソフトウェア配布システム。
【請求項４】
前記ソフトウェア定義がソフトウェアのグループごとに作成されるとともに、前記ソフトウェアを示す情報が前記グループに属する配布対象のソフトウェアのリストを含む、
こと特徴とする請求項１，２または３記載のソフトウェア配布システム。
【請求項５】
前記フェーズ情報および前記処理内容記述が操作者により設定される、
ことを特徴とする請求項１，２または３記載のソフトウェア配布システム。
【請求項６】
前記配布処理の結果として最後に成功したフェーズのフェーズ情報を前記配布記憶部に登録し、前記配布記憶部に登録されている最後に成功したフェーズの次のフェーズを配布処理のフェーズとして決定する、
ことを特徴とする請求項１，２または３記載のソフトウェア配布システム。
【請求項７】
ソフトウェアを配布先に配布するソフトウェア配布方法であって、
配布対象のソフトウェアを示す情報ならびに前記ソフトウェアの配布処理を細分化したフェーズのフェーズ情報と前記フェーズで実行する処理内容記述との組から成るフェーズ定義を含むソフトウェア定義をソフトウェア定義記憶部に登録し、
ソフトウェアの配布を要求し、
前記ソフトウェアの配布を要求されたときに配布記憶部に登録されている配布処理結果を参照して配布処理のフェーズを決定し、
前記決定したフェーズに対応する処理内容記述を前記ソフトウェア定義記憶部から読み出して実行することで配布処理を行い、
前記配布処理の結果をフェーズ単位で配布記憶部に登録する、
ことを特徴とするソフトウェア配布方法。
【請求項８】
前記配布処理の結果として最後に成功したフェーズのフェーズ情報を前記配布記憶部に登録し、
前記配布記憶部に登録されている最後に成功したフェーズの次のフェーズを配布処理のフェーズとして決定する、
ことを特徴とする請求項７記載のソフトウェア配布方法。
【請求項９】
フェーズを指定して前記ソフトウェアの配布を要求されたときに指定されたフェーズを配布処理のフェーズとして決定する、
ことを特徴とする請求項７記載のソフトウェア配布方法。
【請求項１０】
ソフトウェアの配布を管理する配布管理装置であって、
配布対象のソフトウェアを示す情報ならびに前記ソフトウェアの配布処理を細分化したフェーズのフェーズ情報と前記フェーズで実行する処理内容記述との組から成るフェーズ定義を含むソフトウェア定義を記憶するソフトウェア定義記憶部と、
配布処理の結果をフェーズ単位で記憶する配布記憶部と、
ソフトウェアの配布を要求されたときに前記ソフトウェア定義記憶部のフェーズ定義と前記配布記憶部の配布処理結果とを参照して配布処理のフェーズを決定する手段と、
前記決定したフェーズに対応する処理内容記述を前記ソフトウェア定義記憶部から読み出して実行することで配布処理を行う手段と、
前記配布処理の結果をフェーズ単位で前記配布記憶部に登録する手段とを有する、
ことを特徴とする配布管理装置。
【請求項１１】
前記配布処理の結果として最後に成功したフェーズのフェーズ情報を前記配布記憶部に登録し、前記配布記憶部に登録されている最後に成功したフェーズの次のフェーズを配布処理のフェーズとして決定する、
ことを特徴とする請求項１０記載の配布管理装置。
【請求項１２】
フェーズを指定して前記ソフトウェアの配布を要求されたときに指定されたフェーズを配布処理のフェーズとして決定する手段を含む、
ことを特徴とする請求項１０記載の配布管理装置。
【請求項１３】
ソフトウェアの配布を管理する配布管理装置のプログラムであって、
配布管理装置に、
配布対象のソフトウェアを示す情報ならびに前記ソフトウェアの配布処理を細分化したフェーズのフェーズ情報と前記フェーズで実行する処理内容記述との組から成るフェーズ定義を含むソフトウェア定義をソフトウェア定義記憶部に登録する機能、
ソフトウェアの配布を要求されたときに前記ソフトウェア定義記憶部のフェーズ定義と配布記憶部に登録されている配布処理結果とを参照して配布処理のフェーズを決定する機能、
前記決定したフェーズに対応する処理内容記述を前記ソフトウェア定義記憶部から読み出して実行することで配布処理を行う機能、
前記配布処理の結果をフェーズ単位で配布記憶部に登録する機能、
を実現させるためのプログラム。
【請求項１４】
前記配布処理の結果として最後に成功したフェーズのフェーズ情報を前記配布記憶部に登録する機能、
前記配布記憶部に登録されている最後に成功したフェーズの次のフェーズを配布処理のフェーズとして決定する機能、
を実現させるための請求項１３記載のプログラム。
【請求項１５】
フェーズを指定して前記ソフトウェアの配布を要求されたときに指定されたフェーズを配布処理のフェーズとして決定する機能、
を実現させるための請求項１３記載のプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ソフトウェア配布システムおよび方法ならびに配布管理装置およびそのプログラムに関し、特に、配布処理を細分化して管理するソフトウェア配布システムおよび方法ならびに配布管理装置およびそのプログラムに関する。
【背景技術】
【０００２】
従来のソフトウェア配布システムの一例が以下の文献に開示されている。
【０００３】
特許文献１では、配布元マシンからネットワークを介して配布先マシンに配布ファイルを配布する。配布元マシンには、配布実行タイミングに基づいて分割された配布ファイル配布手順が記述されているスクリプトファイル及び配布ファイルを配布先マシンに転送する配布元ファイル転送部を備えている。配布先マシンには、スクリプトファイルの配布ファイル配布手順を分割された単位で実行し、転送された配布ファイルを配布ファイル配布手順に基づいて配布処理するスクリプト実行部を備えている。スクリプト実行部は、スクリプトファイルに書かれた記述を実行するタイミングを、スクリプト実行部が特定するキーワードにより分割し、分割された記述をそれぞれ決められたタイミングで実行する。
【０００４】
また、特許文献２では、配信管理コンピュータが、配布先リストファイルに登録された配布先コンピュータ全てに対し配布処理を行う。配信管理コンピュータは、配信先リストファイルをもとに、通信処理装置を介して、配布先コンピュータの記憶装置上にあるモジュール一時保存領域へ、配信モジュール保存領域に格納された最新モジュールを配布する。配布先コンピュータは、モジュール一時保存領域からモジュール保存領域へ最新モジュールをコピーする。管理者は、結果ファイルを参照し、配布が失敗して再配布が必要な場合、配信管理コンピュータの配信先リストファイルへ配布先コンピュータを再登録しモジュールの再配信を行う。
【０００５】
【特許文献１】特開平９−３０５５００号公報
【特許文献２】特開２０００−３２２３４９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、上述した背景技術では、以下のような問題点がある。
【０００７】
すなわち、第１に、配布処理を任意に分割して実行できないことである。例えば、特許文献１では、予めスクリプト実行部で決められているキーワードに従ってスクリプトファイルに書かれた記述を分割して実行するが、スクリプトファイルに書かれた記述を任意に分割して実行することはできない。
【０００８】
第２に、配布処理を途中から続けることができないことである。例えば、特許文献２では、配布が失敗した場合に配信先リストファイルへ再登録しモジュールの再配信をやり直しており、途中から続けて行うことができない。また、特許文献１も、分割した途中の処理からやり直すことができない。
【０００９】
本発明の目的は、上記の問題点を解決し、配布処理を任意のフェーズに分割して実行でき、最適なフェーズから再開できるソフトウェア配布システムおよび方法ならびに配布管理装置およびそのプログラムを提供することにある。
【課題を解決するための手段】
【００１０】
本願第１の発明のソフトウェア配布システムは、ソフトウェアを配布先に配布するソフトウェア配布システムであって、配布対象のソフトウェアを示す情報ならびに前記ソフトウェアの配布処理を細分化したフェーズのフェーズ情報と前記フェーズで実行する処理内容記述との組から成るフェーズ定義を含むソフトウェア定義を記憶するソフトウェア定義記憶部と、配布処理の結果をフェーズ単位で記憶する配布記憶部と、ソフトウェアの配布を要求されたときに前記配布記憶部の配布処理結果を参照して配布処理のフェーズを決定する手段と、前記決定したフェーズに対応する処理内容記述を前記ソフトウェア定義記憶部から読み出して実行することで配布処理を行う手段と、前記配布処理の結果をフェーズ単位で前記配布記憶部に登録する手段とを有する。
【００１１】
本願第２の発明のソフトウェア配布システムは、クライアント装置と配布管理装置と配布対象装置とを含み前記クライアント装置の要求するソフトウェアを前記配布対象装置に配布するソフトウェア配布システムであって、前記クライアント装置は、ソフトウェアの配布要求を前記配布管理装置に送信する手段を有し、前記配布管理装置は、配布対象のソフトウェアを示す情報ならびに前記ソフトウェアの配布処理を細分化したフェーズのフェーズ情報と前記フェーズで実行する処理内容記述との組から成るフェーズ定義を含むソフトウェア定義を記憶するソフトウェア定義記憶部と、配布処理の結果をフェーズ単位で記憶する配布記憶部と、前記クライアント装置からソフトウェアの配布要求を受信したときに前記ソフトウェア定義記憶部のフェーズ定義と前記配布記憶部の配布処理結果とを参照して配布処理のフェーズを決定する手段と、前記決定したフェーズに対応する処理内容記述を前記ソフトウェア定義記憶部から読み出して実行することで配布処理を行う手段と、前記配布処理の結果をフェーズ単位で前記配布記憶部に登録する手段とを有する。
【００１２】
本願第３の発明のソフトウェア配布システムは、クライアント装置と配布管理装置と配布対象装置とを含み前記クライアント装置の要求するソフトウェアを前記配布対象装置に配布するソフトウェア配布システムであって、前記クライアント装置は、配布処理の結果をフェーズ単位で記憶する配布記憶部と、前記配布記憶部を参照して配布処理のフェーズを決定しソフトウェアの配布要求を前記配布管理装置に送信する手段と、前記配布管理装置から受信した配布処理の結果をフェーズ単位で前記配布記憶部に登録する手段とを有し、前記配布管理装置は、配布対象のソフトウェアを示す情報ならびに前記ソフトウェアの配布処理を細分化したフェーズのフェーズ情報と前記フェーズで実行する処理内容記述との組から成るフェーズ定義を含むソフトウェア定義を記憶するソフトウェア定義記憶部と、前記クライアント装置から受信したソフトウェアの配布要求に含まれるフェーズを基に配布処理のフェーズを決定する手段と、前記決定したフェーズに対応する処理内容記述を前記ソフトウェア定義記憶部から読み出して実行することで配布処理を行う手段と、前記配布処理の結果をフェーズ単位で前記クライアント装置に送信する手段とを有する。
【００１３】
本願第４の発明のソフトウェア配布システムは、第１，第２または第３の発明において前記ソフトウェア定義がソフトウェアのグループごとに作成されるとともに、前記ソフトウェアを示す情報が前記グループに属する配布対象のソフトウェアのリストを含む、こと特徴とする。
【００１４】
本願第５の発明のソフトウェア配布システムは、第１，第２または第３の発明において前記フェーズ情報および前記処理内容記述が操作者により設定される、ことを特徴とする。
【００１５】
本願第６の発明のソフトウェア配布システムは、第１，第２または第３の発明において前記配布処理の結果として最後に成功したフェーズのフェーズ情報を前記配布記憶部に登録し、前記配布記憶部に登録されている最後に成功したフェーズの次のフェーズを配布処理のフェーズとして決定する、ことを特徴とする。
【００１６】
本願第７の発明のソフトウェア配布方法は、ソフトウェアを配布先に配布するソフトウェア配布方法であって、配布対象のソフトウェアを示す情報ならびに前記ソフトウェアの配布処理を細分化したフェーズのフェーズ情報と前記フェーズで実行する処理内容記述との組から成るフェーズ定義を含むソフトウェア定義をソフトウェア定義記憶部に登録し、ソフトウェアの配布を要求し、前記ソフトウェアの配布を要求されたときに配布記憶部に登録されている配布処理結果を参照して配布処理のフェーズを決定し、前記決定したフェーズに対応する処理内容記述を前記ソフトウェア定義記憶部から読み出して実行することで配布処理を行い、前記配布処理の結果をフェーズ単位で配布記憶部に登録する、ことを特徴とする。
【００１７】
本願第８の発明のソフトウェア配布方法は、第７の発明において前記配布処理の結果として最後に成功したフェーズのフェーズ情報を前記配布記憶部に登録し、前記配布記憶部に登録されている最後に成功したフェーズの次のフェーズを配布処理のフェーズとして決定する、ことを特徴とする。
【００１８】
本願第９の発明のソフトウェア配布方法は、第７の発明においてフェーズを指定して前記ソフトウェアの配布を要求されたときに指定されたフェーズを配布処理のフェーズとして決定する、ことを特徴とする。
【００１９】
本願第１０の発明の配布管理装置は、ソフトウェアの配布を管理する配布管理装置であって、配布対象のソフトウェアを示す情報ならびに前記ソフトウェアの配布処理を細分化したフェーズのフェーズ情報と前記フェーズで実行する処理内容記述との組から成るフェーズ定義を含むソフトウェア定義を記憶するソフトウェア定義記憶部と、配布処理の結果をフェーズ単位で記憶する配布記憶部と、ソフトウェアの配布を要求されたときに前記ソフトウェア定義記憶部のフェーズ定義と前記配布記憶部の配布処理結果とを参照して配布処理のフェーズを決定する手段と、前記決定したフェーズに対応する処理内容記述を前記ソフトウェア定義記憶部から読み出して実行することで配布処理を行う手段と、前記配布処理の結果をフェーズ単位で前記配布記憶部に登録する手段とを有する。
【００２０】
本願第１１の発明の配布管理装置は、第１０の発明において前記配布処理の結果として最後に成功したフェーズのフェーズ情報を前記配布記憶部に登録し、前記配布記憶部に登録されている最後に成功したフェーズの次のフェーズを配布処理のフェーズとして決定する、ことを特徴とする。
【００２１】
本願第１２の発明の配布管理装置は、第１０の発明においてフェーズを指定して前記ソフトウェアの配布を要求されたときに指定されたフェーズを配布処理のフェーズとして決定する手段を含む。
【００２２】
本願第１３の発明のプログラムは、ソフトウェアの配布を管理する配布管理装置のプログラムであって、配布管理装置に、配布対象のソフトウェアを示す情報ならびに前記ソフトウェアの配布処理を細分化したフェーズのフェーズ情報と前記フェーズで実行する処理内容記述との組から成るフェーズ定義を含むソフトウェア定義をソフトウェア定義記憶部に登録する機能、ソフトウェアの配布を要求されたときに前記ソフトウェア定義記憶部のフェーズ定義と配布記憶部に登録されている配布処理結果とを参照して配布処理のフェーズを決定する機能、前記決定したフェーズに対応する処理内容記述を前記ソフトウェア定義記憶部から読み出して実行することで配布処理を行う機能、前記配布処理の結果をフェーズ単位で配布記憶部に登録する機能、を実現させる。
【００２３】
本願第１４の発明のプログラムは、第１３の発明において前記配布処理の結果として最後に成功したフェーズのフェーズ情報を前記配布記憶部に登録する機能、前記配布記憶部に登録されている最後に成功したフェーズの次のフェーズを配布処理のフェーズとして決定する機能、を実現させる。
【００２４】
本願第１５の発明のプログラムは、第１３の発明においてフェーズを指定して前記ソフトウェアの配布を要求されたときに指定されたフェーズを配布処理のフェーズとして決定する機能、を実現させる。
【発明の効果】
【００２５】
本発明の効果は、ソフトウェアの配布を効率的に行い、配布時間を短縮することができることである。
【００２６】
その理由は、配布するソフトウェアの特性に応じて配布処理をフェーズに分割して定義し、フェーズ単位で配布処理を行うようにしたからである。
【発明を実施するための最良の形態】
【００２７】
本発明は、ＯＳ（オペレーティングシステム），パッチ，ＡＰ（アプリケーションプログラム）あるいはＰＰ（プロダクトプログラム）などのソフトウェアの配布処理をソフトウェアの特性に応じたフェーズに分割して定義し、フェーズ単位に管理して配布処理を行うことを特徴とする。配布処理には、前準備、配布（転送）、インストール、カスタマイズ等の処理を含む。更に、配布処理の結果をフェーズ単位に記憶し、配布処理の結果を基に次回の配布処理を行うフェーズを決定することを特徴とする。これにより、配布処理の最適化を図ることができる。
【００２８】
次に、本発明を実施するための最良の形態の構成について、図面を用いて詳細に説明する。
図１は本発明の実施例の構成を示す図である。
【００２９】
図１を参照すると、本実施例は、クライアント装置１と、配布管理装置２と、配布対象装置３とを備え、クライアント装置１と配布管理装置２と配布対象装置３とはネットワーク４で接続されている。図１においては配布対象装置を１つ図示しているが、配布対象装置の数に制約はない。
【００３０】
クライアント装置１は、プログラム制御で動作する情報処理装置で、例えばパーソナルコンピュータである。クライアント装置１は、ソフトウェア定義作成手段１１とソフトウェア配布要求手段１２とを含んでいる。
【００３１】
ソフトウェア定義作成手段１１は、配布予定のソフトウェアリストおよびフェーズ定義を入力してソフトウェア定義を作成し、作成したソフトウェア定義を配布管理装置２に送信する機能を有する。また、配布管理装置２に登録されたソフトウェア定義を更新する機能を有する。
【００３２】
ソフトウェア定義は、配布予定のソフトウェア名が登録され、ソフトウェアリストとフェーズ定義とを含む。ソフトウェア定義は、ソフトウェアの特性（例えば、ＯＳ，パッチ，ＡＰあるいはＰＰ等のカテゴリ）に応じてソフトウェアをグループ分けし、各グループ毎に作成される。
【００３３】
ソフトウェアリストには、配布予定のソフトウェア名を指定する。ソフトウェアリストは、同じカテゴリに属するソフトウェア名の集合である。
【００３４】
フェーズ定義には、配布処理を細分化したフェーズのフェーズ情報およびフェーズで実行する処理内容記述を指定する。各フェーズ毎に、フェーズのフェーズ情報（フェーズ識別子、例えばフェーズ番号）とそのフェーズで実行される処理内容記述とを組（ペア）にして指定する。処理内容記述は、スクリプトやプログラミング言語等により記述される。フェーズ定義に、処理内容記述をスクリプトやプログラム言語等で直接記述してもよい。また、フェーズ定義では処理内容を記述したスクリプトやプログラム等の名前を指定し、指定したスクリプトやプログラム等の実体をソフトウェア記憶部２５に登録しておくようにしてもよい。
【００３５】
ソフトウェア配布要求手段１２は、配布するソフトウェアと配布対象装置とを指定して、配布管理装置２にソフトウェアの配布要求を行う機能を有する。配布するソフトウェアとして、ソフトウェア定義テーブル２１１のソフトウェアリスト２１２に登録されているソフトウェア名を指定する。また、フェーズを指定して配布要求を行う場合、フェーズの指定は、単一指定でもよいし、範囲指定でもよい。
【００３６】
配布管理装置２は、プログラム制御で動作する情報処理装置で、例えばサーバ装置等である。配布管理装置２は、クライアント装置１からの配布要求に基づき、配布対象装置３に対してソフトウェアの配布を行う。配布管理装置２は、ソフトウェア定義登録手段２４と、ソフトウェア定義記憶部２１と、配布管理部２２と、配布記憶部２３と、ソフトウェア記憶部２５とを含んでいる。ソフトウェア定義記憶部２１と配布記憶部２３とソフトウェア記憶部２５とは、例えば磁気ディスク等の補助記憶装置などに確保される。また、配布管理装置２は、ネットワーク４を介して配布対象装置３をリモートで制御する手段を有する。リモートで配布対象装置３を制御する方法は公知の方法による。
【００３７】
ソフトウェア定義記憶部２１は、ソフトウェア定義テーブル２１１を記憶する。ソフトウェアの特性に応じて複数のソフトウェア定義テーブルが記憶される。
【００３８】
ソフトウェア定義テーブル２１１は、配布予定のソフトウェア名が登録され、ソフトウェアリスト２１２とフェーズ定義２１３とを含む。
【００３９】
ソフトウェアリスト２１２には、配布予定のソフトウェア名が登録される。図２のソフトウェア定義テーブル２１１を参照すると、例として、ソフトウェアリスト２１２に「ソフトウェアＡ」が指定されている。
【００４０】
フェーズ定義２１３には、配布処理がどのようなフェーズから成るかが登録される。フェーズとは、ソフトウェアの特性に応じて配布処理を細分化して定義したものである。図２のソフトウェア定義テーブル２１１を参照すると、例として、フェーズ定義２１３に「フェーズ１」と「フェーズ２」とが指定されている。
【００４１】
配布管理部２２は、クライアント装置１からの配布要求を受信し、配布対象装置３に対してソフトウェアの配布を行い、配布処理の結果をフェーズ単位で配布記憶部２３に登録する。また、配布処理の結果をクライアント装置１に送信するようにしてもよい。配布管理部２２は、第１配布手段２２１と、第２配布手段２２２とを含む。
【００４２】
第１配布手段２２１は、最適なフェーズから自動的に配布処理を行う。すなわち、第１配布手段２２１は、クライアント装置１からソフトウェアの配布要求を受け付けると、ソフトウェア定義記憶部２１からそのソフトウェアが含まれるソフトウェア定義テーブル２１１を検索して、そのフェーズ定義２１３を参照する。次に、配布記憶部２３を参照し配布先である配布対象装置３の該当ソフトウェアの配布結果２３１を取得する。次に、取得したフェーズ定義２１３と配布結果２３１の情報を基に、ソフトウェアの配布処理を始める適切なフェーズを決定し、そのフェーズから配布処理を開始する。フェーズの配布処理については後述する。最後に、配布処理の結果を配布結果２３１としてフェーズ単位で配布記憶部２３に記憶する。
【００４３】
第２配布手段２２２は、クライアント装置１の指示したフェーズから配布処理を行う。すなわち、第２配布手段２２２は、クライアント装置１が指示したフェーズをソフトウェアの配布処理を始めるフェーズとして決定し、そのフェーズの配布処理を開始する。そして、配布処理の結果を配布結果２３１としてフェーズ単位で配布記憶部２３に記憶する。
【００４４】
配布記憶部２３は、ソフトウェアの配布結果を記憶する。配布記憶部２３は、配布結果２３１を含む。
【００４５】
配布結果２３１は、配布対象装置３ごとにフェーズ単位でソフトウェアの配布結果を記憶する。配布結果２３１には最後に成功したフェーズが記憶される。
【００４６】
ソフトウェア定義登録手段２４は、クライアント装置１からソフトウェア定義を受信し、受信したソフトウェア定義をソフトウェア定義記憶部２１のソフトウェア定義テーブル２１１に登録する。
【００４７】
ソフトウェア記憶部２５は、配布するソフトウェア本体を記憶している。また、スクリプトあるいはプログラム言語等で記述されたフェーズの処理内容記述を記憶するようにしてもよい。
【００４８】
配布対象装置３は、ソフトウェアの配布対象となる装置である。配布対象装置３は、プログラム制御で動作し、例えばサーバやパーソナルコンピュータなどの情報処理装置である。
【００４９】
上述した第１配布手段２２１で行うフェーズの配布処理について説明する。
【００５０】
第１配布手段２２１は、フェーズを決定した後に、決定したフェーズの処理内容記述をフェーズ定義２１３から読み出し、読み出した処理内容記述を実行する。この処理内容記述の実行により、該当フェーズに記述された配布処理が行われる。例えば、フェーズ定義２１３の該当フェーズの処理内容記述に「ソフトウェア記憶部２５に格納されているプログラムＡを配布対象装置３に転送する」旨の内容がスクリプトで記述されていたとする。第１配布手段２２１は、フェーズ定義２１３から該当フェーズの処理内容記述を読み出して処理内容記述を実行する。処理内容記述を実行することにより記述されているスクリプトが実行され、ソフトウェア記憶部２５に格納されているプログラムＡが配布対象装置３に転送される。以上の動作は、第２配布手段２２２においても同様である。
【００５１】
次に、本発明を実施するための最良の形態の動作について、図１〜図３を用いて詳細に説明する。
図２は本発明の実施例の動作を説明する図である。
図３は本発明の実施例の動作のフローを示す図である。
【００５２】
先ず、図２を参照して概略を説明する。
【００５３】
クライアント装置１は、あらかじめ配布予定のソフトウェアを配布管理装置２のソフトウェア定義記憶部２１のソフトウェア定義テーブル２１１に定義しておく（図２の（１））。
【００５４】
その後、クライアント装置１は、配布するソフトウェアを指定して配布管理装置２に対してソフトウェアの配布要求を行う（図２の（２））。
【００５５】
配布管理部２２は、そのソフトウェアが含まれるソフトウェア定義テーブル２１１を検索して、そのフェーズ定義２１３を参照する（図２の（３））。
【００５６】
配布管理部２２は、配布記憶部２３から配布対象装置３に対する該当ソフトウェアの配布結果２３１を取得する（図２の（４））。
【００５７】
配布管理部２２は、取得したフェーズ定義２１３と配布結果２３１を基にソフトウェアの配布処理を適切なフェーズから開始する（図２の（５））。
【００５８】
配布管理部２２は、配布処理の結果を取得し（図２の（６））、配布結果をフェーズ単位で配布記憶部２３に登録する（図２の（７））。
【００５９】
続いて、図１〜図３を参照して詳細に説明する。
【００６０】
図３のステップＡ１において、クライアント装置１は、あらかじめ配布予定のソフトウェアを配布管理装置２のソフトウェア定義記憶部２１に定義する。ソフトウェア定義記憶部２１に、既に適切なソフトウェア定義テーブル２１１が存在する場合はソフトウェアリスト２１２にそのソフトウェア名を追加する。適切なソフトウェア定義テーブルが存在しない場合は、新たにソフトウェア定義テーブルを作成する。
【００６１】
図３のステップＡ２において、クライアント装置１は配布するソフトウェアを指定してソフトウェアの配布要求を配布管理部２２に行う。この時、第１配布手段２２１と第２配布手段２２２のいずれかを指定する。
【００６２】
図３のステップＡ３において、上述したステップＡ２で第１配布手段２２１が指定された場合、第１配布手段２２１は、ソフトウェア配布処理を始める適切なフェーズを配布記憶部２３の配布結果２３１を参照して決定する。配布記憶部２３では配布対象装置３に対するソフトウェアの配布結果２３１がフェーズ単位で記憶されている（最後に成功したフェーズが記憶されている）。第１配布手段２２１は、配布結果２３１を参照して成功したフェーズの次のフェーズから配布処理を開始することを決定する。
【００６３】
図３のステップＡ３において、ステップＡ２で第２配布手段２２２が指定された場合、第２配布手段２２２は、クライアント装置１が指定したフェーズから配布処理を開始することを決定する。
【００６４】
図３のステップＡ４において、決定したフェーズの配布処理を行う。
【００６５】
図３のステップＡ５において、配布処理が成功したか否かを判定する。成功した場合にはステップ６に進み、成功しなかった場合にはステップＡ８に進む。
【００６６】
図３のステップＡ６〜Ａ７において、次のフェーズを決定してステップＡ４に進む。最後のフェーズまで済んだ場合はステップＡ８に進む。
【００６７】
図３のステップＡ８において、配布管理部２２は配布処理の結果をフェーズ単位で配布記憶部２３に登録する。配布処理が完了あるいは途中で失敗した場合、処理は終了となり、最後に成功したフェーズが配布記憶部２３に配布結果２３１として登録される。
【００６８】
更に、具体例を用いて本実施例の動作を説明する。
図４は配布処理を説明する図である。
【００６９】
ここでは、アプリケーションソフトウェア「ＡＰ−３」を配布先「サーバＡ」へ配布する場合を例として図４を用いて説明する。
【００７０】
ソフトウェア定義テーブル２１４のソフトウェアリストには、「ＡＰ−１」と「ＡＰ−２」が登録されているものとする。また、ソフトウェア定義テーブル２１４のフェーズ定義には、フェーズ１の処理内容記述として「ＯＳ再起動」、フェーズ２の処理内容記述として「インストール」、フェーズ３の処理内容記述として「カスタマイズ（１）」、フェーズ４の処理内容記述として「カスタマイズ（２）」、フェーズ５の処理内容記述として「ＡＰ起動」の処理が記述されているものとする。
【００７１】
「ＡＰ−３」を配布するために、新たなソフトウェア定義テーブルを作成するのではなく、あらかじめ作成されているソフトウェア定義テーブル２１４のソフトウェアリストに「ＡＰ−３」を追加するものとする（ステップＡ１）。
【００７２】
クライアント装置１は、ソフトウェア定義を作成しソフトウェア定義記憶部２１に登録してから、「サーバＡ」への「ＡＰ−３」の配布を指示する。このとき、配布手段として第１配布手段２２１を指定する（ステップＡ２）。
【００７３】
配布管理部２２の第１配布手段２２１は、「ＡＰ−３」の配布要求を受けると、「ＡＰ−３」が含まれるソフトウェア定義テーブルを検索して、そのフェーズ定義を取得する。図４では、「ＡＰ−３」の配布処理はフェーズ１からフェーズ５まで定義されている。次に、配布記憶部２３を参照して、配布先「サーバＡ」における「ＡＰ−３」の配布結果２３１を取得する。図４では、「サーバＡ」における「ＡＰ−３」の配布結果としてフェーズ番号「フェーズ２」が登録されているので、配布処理はフェーズ２まで終了している。これらの情報を基に、第１配布手段２２１は、「ＡＰ−３」の配布処理の開始フェーズをフェーズ番号「フェーズ３」に決定する（ステップＡ３）。
【００７４】
配布管理部２２の第１配布手段２２１は、フェーズ３の配布処理を行う（ステップ４）。第１配布手段２２１は、フェーズ３の処理内容記述を読み出して実行する。この実行により、配布先「サーバＡ」にインストールされている「ＡＰ−３」の「カスタマイズ（１）」が行われる。「ＡＰ−３」はフェーズ２の「インストール」により配布先「サーバＡ」にインストールされている。フェーズ３が終了するとフェーズ４、フェーズ５と順次配布処理を行う。フェーズ３，フェーズ４あるいはフェーズ５で失敗すると、そこで配布処理を終了する。
【００７５】
配布処理が終了したとき、配布管理部２２は配布記憶部２３にその配布結果２３１をフェーズ単位で登録する（ステップＡ８）。最後に成功したフェーズのフェーズ番号が配布結果として登録される。
【００７６】
上記説明したように、本発明では、ＯＳ，パッチ，ＡＰあるいはＰＰ等のソフトウェア配布処理をフェーズ単位で実行し、配布処理の結果をフェーズ単位で管理し、次回の配布では適切なフェーズから処理を行う。
【００７７】
配布処理を任意のフェーズに分割して定義して実行するので、ソフトウェアの配布処理を繰り返し行う場合に、配布時間を短縮する効果を奏する。また、配布処理の結果をフェーズ単位で管理し、次回の配布では適切なフェーズから処理を行うので、システムの可用性を向上させる効果を奏する。
【００７８】
次に、本発明の他の実施例について説明する。
【００７９】
先ず、本発明の他の実施例の構成について図面を参照して説明する。
図５は本発明の他の実施例の構成を示す図である。
【００８０】
図５を参照すると、本発明の他の実施例は、図１に示す実施例における配布記憶部２３が配布管理装置２から独立している点と、配布管理部２２がクライアントから指示されたフェーズから配布処理を行う第２配布手段２２２しか持っていない点が異なる。
【００８１】
本発明の他の実施例の構成について、上述した図１に示す実施例と異なる部分について説明する。
【００８２】
クライアント装置５は、上述した実施例のクライアント装置１の機能に加えて、配布管理部６２から配布処理の結果を取得し配布記憶部７に配布結果７１を登録する機能を有する。また、配布記憶部７の配布結果７１を参照して適切な開始フェーズを決定し、配布管理装置６の配布管理部６２に通知する機能を有する。
【００８３】
配布管理部６２は、クライアント装置５からの配布要求を受信し、配布対象装置３に対してソフトウェアの配布を行う。配布処理の結果をフェーズ単位でクライアント装置５に送信する。配布管理部６２は、第２配布手段２２２を含む。
【００８４】
配布記憶部７は、クライアント装置５に接続され、配布処理の結果である配布結果７１を記憶する。配布記憶部７は、クライアント装置５に内蔵してもよい。
【００８５】
続いて、本実施の他の実施例の動作について図面を参照して詳細に説明する。
図６は本発明の他の実施例の動作のフローを示す図である。
【００８６】
図６のステップＡ１およびステップＡ３〜ステップＡ８で示す動作は、図３のステップＡ１〜ステップＡ７で示す動作と同一のため、説明は省略する。
【００８７】
図６のステップＡ２では、ステップＡ３でソフトウェアの配布処理要求を行う前に、図５の配布記憶部７を参照して開始フェーズを決定する。
【００８８】
図６のステップＡ９では、クライアント装置５は配布処理の結果を配布管理装置６から取得して、配布記憶部７に配布結果７１として登録する。
【００８９】
更に、具体例を用いて動作を説明する。
図７は配布処理を説明する図である。
【００９０】
図７ではアプリケーションソフトウェア「ＡＰ−３」を配布先「サーバＡ」に配布する処理を示している。
【００９１】
「サーバＡ」への「ＡＰ−３」の配布要求を行う場合、図７のステップＡ２において、図５のクライアント装置５は、配布記憶部７の「サーバＡ」への配布結果７１を参照して、適切な開始フェーズを決定する。配布結果７１に登録されているフェーズ２の次のフェーズ（フェーズ３）を開始フェーズと決定する。
【００９２】
図７のステップＡ５において、図５の配布管理部６２は第２配布手段２２２によってフェーズ３の配布処理を行う。
【００９３】
図７のステップＡ９において、クライアント装置５は配布管理部６２から配布処理の結果を取得して、配布記憶部７に配布結果７１として登録する。
【００９４】
このように、本実施例では、配布処理を行う配布管理装置６ではなく、プロビジョニングシステムのようなクライアント装置５が配布結果７１を記憶しておくので、ソフトウェアの配布処理をより最適化することができるという効果を奏する。
【００９５】
本発明による上述した実施の形態において、配布管理装置の処理動作を実行するためのプログラム等を、データとして配布管理装置の磁気ディスクやＲＯＭ等の記録媒体（図示せず）に記録するようにし、記録されたデータを読み出して配布管理装置を動作させるために用いる。このように、本発明による配布管理装置を動作させるデータを記録媒体に記録させ、この記録媒体をインストールすることにより配布管理装置の機能が実現できるようになる。
【産業上の利用可能性】
【００９６】
単純なソフトウェアインストールシステムから、状況に応じたダイナミックなシステム構成変更を行うプロビジョニングシステムといった用途に適用できる。また、ＯＳやパッチ、ＡＰ等に特化したインストールシステムにも適用できる。
【図面の簡単な説明】
【００９７】
【図１】本発明の実施例の構成を示す図
【図２】本発明の実施例の動作を説明する図
【図３】本発明の実施例の動作のフローを示す図
【図４】配布処理を説明する図
【図５】本発明の他の実施例の構成を示す図
【図６】本発明の他の実施例の動作のフローを示す図
【図７】配布処理を説明する図
【符号の説明】
【００９８】
１    クライアント装置
２    配布管理装置
３    配布対象装置
４    ネットワーク
５    クライアント装置
６    配布管理装置
７    配布記憶部
１１    ソフトウェア定義作成手段
１２    ソフトウェア配布要求手段
２１    ソフトウェア定義記憶部
２２    配布管理部
２３    配布記憶部
２４    ソフトウェア定義登録手段
２５    ソフトウェア記憶部
６２    配布管理部
７１    配布結果
２１１    ソフトウェア定義テーブル
２１２    ソフトウェアリスト
２１３    フェーズ定義
２１４    ソフトウェア定義テーブル
２２１    第１配布手段
２２２    第２配布手段
２３１    配布結果
【図１】
2006085460.tif 000003
【図２】
2006085460.tif 000004
【図３】
2006085460.tif 000005
【図４】
2006085460.tif 000006
【図５】
2006085460.tif 000007
【図６】
2006085460.tif 000008
【図７】
2006085460.tif 000009