(57)【要約】      （修正有）【課題】分散計算機システムを構成する計算機に対して、その計算機を使用するユーザのプログラム配布要求時または職制変更などが発生した際の管理者のプログラム管理負担やユーザの負担を抑える。【解決手段】管理サーバ１０１は、エージェント１０７、１０８を生成して、計算機１０９〜１１１に送りこみ、各計算機の資産情報とユーザの属性情報とを収集する。資産配布管理システムは、収集した情報をもとにポリシー情報を作成し、管理者による審査／改善の後に、業務に必要となるプログラムを分散計算機システム内の各計算機に配布し、または、業務に不要となるプログラムの削除を行う。【選択図】図１
2007219826.tif 000002
【特許請求の範囲】
【請求項１】
複数の計算機と管理サーバとが接続されて構成される分散計算機システムにおける前記複数の計算機のそれぞれに対するプログラムの配布、削除方法において、
前記複数の計算機のそれぞれが、資産情報を持ち、前記管理サーバが、属性情報テーブルと、ポリシー情報テーブルと、部署クラスタテーブルと、職位クラスタテーブルと、就業形態クラスタテーブルと、配布プログラムとを持ち、
前記管理サーバは、前記計算機の１つからプログラム配布要求があった場合、または、職制変更などの理由により当該計算機を使用するユーザの属性情報に差が生じた場合、前記属性情報テーブルを検索し、プログラム配布要求のあったユーザの属性情報を抽出し、前記ポリシー情報テーブルと部署クラスタテーブルとを参照し、これらのテーブルにユーザの所属する部署に対して対象となるプログラムのポリシー情報が設定されていなかった場合、前記部署クラスタテーブル、職位クラスタテーブル、就業形態クラスタテーブルを参照して、これらのテーブルから共通する職制、職位、就業形態を選択し、これらに対応するポリシーテンプレートを生成し、当該ポリシーテンプレートの内容の管理者による承認、修正を受けたポリシーに基づいて、前記複数の計算機のそれぞれに対するプログラムの配布、削除を行うことを特徴とするプログラムの配布、削除方法。
【請求項２】
前記部署クラスタテーブルからの職制の選択時、前記部署クラスタテーブル内に共通の職種情報が複数あった場合、最も構成数の多い部署クラスタを選択し、同数の構成数の部署クラスタが存在した場合には、登録番号の最も小さい部署クラスタを選択することを特徴とする請求項１記載のプログラムの配布、削除方法。
【請求項３】
前記職位クラスタテーブルからの職位の選択時、前記職位クラスタテーブル内に共通の職位情報が複数あった場合、最も構成数の多い職位クラスタを選択し、同数の構成数の職位クラスタが存在した場合には、登録番号の最も小さい職位クラスタを選択することを特徴とする請求項１または２記載のプログラムの配布、削除方法。
【請求項４】
前記就業形態クラスタテーブルからの就業形態の選択時、前記就業形態クラスタテーブル内に共通の就業形態情報が複数あった場合、最も構成数の多い就業形態クラスタを選択し、同数の構成数の就業形態クラスタが存在した場合には、登録番号の最も小さい就業形態クラスタを選択することを特徴とする請求項１、２または３記載のプログラムの配布、削除方法。
【請求項５】
複数の計算機と管理サーバとが接続され、前記管理サーバが前記複数の計算機のそれぞれに対するプログラムの配布、削除を行う分散計算機システムにいて、
前記複数の計算機のそれぞれが、資産情報を持ち、前記管理サーバが、属性情報テーブルと、ポリシー情報テーブルと、部署クラスタテーブルと、職位クラスタテーブルと、就業形態クラスタテーブルと、配布プログラムとを持ち、
前記管理サーバは、前記計算機の１つからプログラム配布要求があった場合、または、職制変更などの理由により当該計算機を使用するユーザの属性情報に差が生じた場合、前記属性情報テーブルを検索し、プログラム配布要求のあったユーザの属性情報を抽出し、前記ポリシー情報テーブルと部署クラスタテーブルとを参照し、これらのテーブルにユーザの所属する部署に対して対象となるプログラムのポリシー情報が設定されていなかった場合、前記部署クラスタテーブル、職位クラスタテーブル、就業形態クラスタテーブルを参照して、これらのテーブルから共通する職制、職位、就業形態を選択し、これらに対応するポリシーテンプレートを生成し、当該ポリシーテンプレートの内容の管理者による承認、修正を受けたポリシーに基づいて、前記複数の計算機のそれぞれに対するプログラムの配布、削除を行うことを特徴とする分散計算機システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プログラムの配布、削除方法及び分散計算機システムに係り、特に、分散システムを構成する計算機に対してプログラムを配布、削除するプログラムの配布、削除方法及び分散計算機システムに関する。
【背景技術】
【０００２】
従来、管理サーバから分散計算機システム内の計算機に対してプログラムを配布するシステムは、どの計算機にどのプログラムを配布する必要があるのかということを、管理サーバの管理者がその都度判断して、計算機毎に配布操作を行う必要があった。計算機が分散計算機システム内に多数存在している場合、前述の操作を計算機毎に行うことは、管理者にとって非常に大きな負担となる。また、管理者の誤操作によってプログラムが誤った計算機に対して配布される可能性も高い。
【０００３】
前述のような問題を解決することのできる従来技術として、例えば、特許文献１等に記載された技術が知られている、この従来技術は、配布情報選択装置により、プログラムを配布する際に使用する送信属性と当該プログラムとの対応関係を予め定義しておくことにより、管理者がプログラムの配布時に該当プログラムを指定するだけで分散計算機システム内の計算機に対してプログラムの配布を行うことができ、その結果、管理者の負担を軽減することができるようにしたものである。
【特許文献１】特開２００１−７５８１１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかし、前述した従来技術は、管理者が全ての属性情報に対して業務に必要なプログラム、または、必要ではないプログラムであるかを判断し、全てのプログラムに対する送信属性を設定する必要があり、このための作業が管理者に対する大きな負担となるという問題点を有している。
【０００５】
本発明の目的は、前述した従来技術の問題点を解決し、管理者が業務に不要なプログラムを抑止または削除するために、対象となるプログラムを調べ、逐一そのプログラムの要、不要を設定する必要性をなくすことにより、管理者の負担を軽減することができるようにしたプログラムの配布、削除方法及び分散計算機システムを提供することにある。
【課題を解決するための手段】
【０００６】
本発明によれば前記目的は、複数の計算機と管理サーバとが接続されて構成される分散計算機システムにおける前記複数の計算機のそれぞれに対するプログラムの配布、削除方法において、前記複数の計算機のそれぞれが、資産情報を持ち、前記管理サーバが、属性情報テーブルと、ポリシー情報テーブルと、部署クラスタテーブルと、職位クラスタテーブルと、就業形態クラスタテーブルと、配布プログラムとを持ち、前記管理サーバが、前記計算機の１つからプログラム配布要求があった場合、または、職制変更などの理由により当該計算機を使用するユーザの属性情報に差が生じた場合、前記属性情報テーブルを検索し、プログラム配布要求のあったユーザの属性情報を抽出し、前記ポリシー情報テーブルと部署クラスタテーブルとを参照し、これらのテーブルにユーザの所属する部署に対して対象となるプログラムのポリシー情報が設定されていなかった場合、前記部署クラスタテーブル、職位クラスタテーブル、就業形態クラスタテーブルを参照して、これらのテーブルから共通する職制、職位、就業形態を選択し、これらに対応するポリシーテンプレートを生成し、当該ポリシーテンプレートの内容の管理者による承認、修正を受けたポリシーに基づいて、前記複数の計算機のそれぞれに対するプログラムの配布、削除を行うことにより達成される。
【発明の効果】
【０００７】
本発明によれば、管理者が業務に不要なプログラムを抑止または削除するために対象となるプログラムを調べ、逐一そのプログラムの要、不要を設定する必要性をなくすことができ、管理者の負担を軽減することができる。
【発明を実施するための最良の形態】
【０００８】
以下本発明によるプログラムの配布、削除方法及び分散計算機システムの実施形態を図面により詳細に説明する。
【０００９】
本発明は、分散計算機システム内の各計算機に、資産配布管理システムによりプログラムを配布することによってのみプログラムインストールすることができる環境を前提とする。従って、本発明を用いた資産配布管理システムを使用する分散計算機システムの環境では、クライアントであるユーザが使用する計算機に対して、プログラムを自由にインストールすることはできない。
【００１０】
本発明は、
・ユーザが計算機からプログラムの配布要求を行った場合、
・業務に必要とされるプログラムが計算機にインストールされていない場合、
・分散計算機システム内の計算機に障害が発生し、使用していた全てのプログラムを再インストールする必要がある場合、
・分散計算機システム内の計算機が老朽化して取り替える必要があり、それまで使用していた全てのプログラムを再インストールする必要がある場合、
・ユーザが部署移動や昇格による職制変更があった場合、それに伴って必要となるプログラムをユーザが使用する計算機に配布し、または、不要なプログラムを削除する場合
に有効である。
【００１１】
図１は本発明の一実施形態による分散計算機システムの構成を示すブロック図である。図１において、１００はデータベース、１０１は管理サーバ、１０２はポリシー判定部、１０３はクラスタリング部、１０４はパッケージ生成部、１０５はエージェント生成部、１０６はエージェント状態情報管理部、１０７はエージェントＡ、１０８はエージェントＢ、１０９〜１１１は計算機、１１２はネットワーク、１１３は属性情報テーブル、１１４はポリシー情報テーブル、１１５は部署クラスタテーブル、１１６は職位クラスタテーブル、１１７は就業形態クラスタテーブル、１１８はエージェント状態情報テーブル、１１９は宛先情報テーブル、１２０は資産情報テーブル、１２１はポリシーテンプレート情報、１２２は配布プログラムである。
【００１２】
図１に示す本発明の実施形態による分散計算機システムは、データベース１００及び管理サーバ１０１により構成される資産配布システムと、複数の計算機１０９〜１１１とがネットワーク１１２を介して接続されて構成されている。管理サーバ１０１及び複数の計算機１０９〜１１１は、図示しないが、ＣＰＵ、メモリ、ＨＤＤ等による記憶装置、キーボード、マウス等の入力装置、表示装置を備えて構成され、後述する各種の機能は、メモリにロードされたプログラムをＣＰＵが実行することにより実現される。
【００１３】
データベース１００は、属性情報テーブル１１３（詳細を図１９に示す）と、ポリシー情報テーブル１１４（詳細を図２０に示す）と、部署クラスタテーブル１１５（詳細を図２１に示す）と、職位クラスタテーブル１１６（詳細を図２２に示す）と、就業形態クラスタテーブル１１７（詳細を図２３に示す）と、エージェント状態情報テーブル１１８（詳細を図２４に示す）と、宛先情報テーブル１１９（詳細を図２５に示す）と、資産情報テーブル１２０（詳細を図２６に示す）と、ポリシーテンプレート情報１２１（詳細を図２７と図２８とにその例を示す）と、分散計算機システム内の各計算機に配布するプログラム１２２とを格納して管理している。
【００１４】
管理サーバ１０１は、ポリシー判定部１０２と、クラスタリング部１０３と、パッケージ生成部１０４と、エージェント生成部１０５と、エージェント状態情報管理部１０６と、エージェントＡ１０７と、エージェントＢ１０８とを備えて構成されている。
【００１５】
前述において、ポリシー判定部１０２は、クライアントとしてのユーザから計算機１０９〜１０１の１つを用いてプログラム配布要求があった場合、業務に必要とされるプログラム１２２がインストールされていない場合、分散計算機システム内の計算機において障害が発生した際にそれまで使用していた全てのプログラム１２２を再インストールする必要がある場合、分散計算機システム内の計算機が老朽化し取り替える必要がある際にそれまで使用していた全てのプログラム１２２を再インストールする必要がある場合、または、ユーザが部署移動や昇格した際にそれに伴って必要となるプログラム１２２の配布または不要となるプログラムの削除がある場合に、ポリシー情報を元にプログラム１２２を配布してよいか否かを判定する。
【００１６】
クラスタリング部１０３は、管理者によって設定されたポリシー情報を参照し、もし、クラスタに該当するものがなければ、新規にクラスタ群を作成する。ＤＢ部やシステム設計部等のように職種が設計部署であるものなど関連のある部署を探し出し、クラスタリングを行うことによりポリシーテンプレート情報１２１を作成する。
【００１７】
パッケージ生成部１０４は、パッケージのポリシー情報を資産情報テーブル１２０に更新し、１つ以上のプログラム１２２をパッケージとして作成する。パッケージとは、複数の配布したいデータやインストールしたいプログラムを小包のようにひとまとめにしたものである。パッケージ生成部１０４は、パッケージ作成後、エージェント生成部１０５を呼び出して、エージェントＢ１０８を作成してパッケージを配布する。
【００１８】
エージェント生成部１０５は、エージェントＡ１０７とエージェントＢ１０８とを作成する。エージェント生成部１０５は、分散計算機システム内の全計算機にエージェントＡ１０７を送り込み、資産情報とクライアントユーザの属性情報とを取得させる。また、エージェント生成部１０５は、ユーザからプログラム配布要求があり、ポリシーで認められている場合、エージェントＢ１０８を送り込みプログラム１２２を配布する。
【００１９】
エージェント状態情報管理部１０６は、管理サーバ１０１がエージェントＡ１０７とエージェントＢ１０８から状態情報通知を受信した際に、エージェント状態情報テーブル１１８（詳細を図２３に示す）の状態情報を更新する。
【００２０】
エージェントＡ１０７は、分散計算機システム環境下の計算機の資産情報またはクライアントとしてのユーザの属性情報を取得するプログラムである。
【００２１】
エージェントＢ１０８は、ユーザから計算機を介してプログラムの配布要求があったり、ユーザ自身の部署異動や職位変更があった場合に、分散計算機システム環境下の計算機に移動し、要求されたプログラム１２２を配布したり、ポリシー情報に従って不要なプログラムを削除するプログラムである。
【００２２】
計算機１０９〜１１１は、クライアントであるユーザが使用する計算機であり、以下に説明する本発明の実施形態では、各計算機とユーザとは、１対１にリンクしており、ユーザが勤務部署を移動した場合等にも、ユーザは、自分が使用している計算機を持って移動するものとする。また、図示例では、計算機１０９〜１１１には、エージェントＡ１０７が計算機の資産情報とユーザの属性情報とを取得するために移動してきている計算機であるとしている。また、計算機１１０には、クライアントとしてのユーザからプログラムの配布要求があり、エージェントＢ１０８が要求されたプログラム１２２を配布するために移動してきている計算機であるとしている。
【００２３】
図２はエージェントＡ１０７の構成を示すブロック図である。エージェントＡ１０７は、資産情報収集部２００と資産情報登録部２０１と属性情報収集部２０２と属性情報登録部２０３とからなる。エージェントＡ１０７の資産情報収集部２００は、分散計算機システム環境下の計算機の資産情報を収集し、収集した資産情報を資産情報登録部２０１に提供する。収集する資産情報の詳細については図１６と図２６とにより後述する。エージェントＡ１０７の資産情報登録部２０１は、分散計算機システム環境下の計算機の資産情報を収集し、エージェントＡ１０７が管理サーバ１０１に戻った後にデータベース１００に収集した資産情報を登録する。また、エージェントＡ１０７は、分散計算機システム環境下の計算機を使用するユーザから属性情報を収集し、属性情報登録部２０３に提供する。収集する属性情報の詳細は、図１６と図１９とにより後述する。エージェントＡ１０７の属性情報登録部２０３は、分散計算機システム環境下の計算機のユーザから属性情報を収集し、エージェントＡ１０７が管理サーバ１０１に戻った後にデータベース１００に収集した属性情報を登録する。
【００２４】
図３はエージェントＢ１０８の構成を示すブロック図である。エージェントＢ１０８は、宛先情報管理部３００とパッケージ管理部３０１とプログラム配布／削除実行部３０２と任務完了通知部３０３とからなる。エージェントＢ１０８の宛先情報管理部３００は、エージェントＢ１０８がプログラム１２２の配布または削除するために向かう計算機の宛先情報テーブル１１９（詳細を図２５に示す）を管理する。エージェントＢ１０８は、宛先情報テーブル１１９を参照して目的の計算機へ移動し、業務に必要となるプログラム１２２の配布し、また、業務に不要なプログラムの削除を行う。エージェントＢ１０８のパッケージ管理部３０１は、ユーザから計算機を介して要求のあった幾つかのプログラム１２２（パッケージ）を保管する場所である。エージェントＢ１０８のプログラム配布／削除実行部３０２は、エージェントＢ１０８が、プログラム配布要求のあった計算機、または、職制変更に伴うクライアントユーザの使用可能なプログラム１２２の変更があった計算機に移動した場合に、業務に必要なプログラム１２２の配布処理、または、業務に不要なプログラムの削除処理を行う実行部である。エージェントＢ１０８の任務完了通知部３０３は、エージェントＢ１０８が業務に必要なプログラム１２２の配布処理または業務に不要なプログラムの削除処理を完了した際に、その旨を管理サーバ１０１に通知する機能を実行する。
【００２５】
図４は分散計算機システム内の計算機に対して、ポリシー情報に基づいた業務に必要となるプログラム１２２の配布または業務に不要なプログラムの削除を完了するまでの本発明の実施形態の全体の処理動作を説明するフローチャートであり、次に、これについて説明する。
【００２６】
（１）最初に、管理者が部署／職位／就業形態毎に使用できるプログラム１２２のポリシー情報を設定し、資産管理システムに登録するための処理を行う（ステップ４００）。
【００２７】
（２）ポリシー情報が設定された後、管理サーバ１０１は、分散計算機システム環境下の全計算機における資産情報またはユーザの属性情報を取得するエージェントＡ１０７（オリジナルエージェント）とエージェントＡ１０７のクローンエージェントとを生成する。この処理の詳細は、図１５により後述する（ステップ４０１）。
【００２８】
（３）次に、管理サーバ１０１は、ステップ４０１の処理で生成したエージェントＡ１０７のクローンエージェントを分散計算機システム環境下の各計算機、ここでは計算機１０９及び計算機１１０に送信する。この処理の詳細は、図１６により後述する（ステップ４０２、４０３）。
【００２９】
（４）計算機1０９及び計算機１１０に移動したエージェントＡ１０７のクローンエージェントは、計算機１０９及び計算機１１０の資産情報やユーザの属性情報を取得する。この処理の詳細は、図１６により後述する（ステップ４０４、４０６）。
【００３０】
（５）また、計算機1０９及び計算機１１０に移動したエージェントＡ１０７のクローンエージェントは、管理サーバ１０１にいるオリジナルエージェントに取得した計算機の資産情報やユーザの属性情報をエージェント通信により送信する。この処理の詳細は、図１６により後述する（ステップ４０５、４０８）。
【００３１】
（６）次に、管理サーバ１０１のエージェントＡ１０７のオリジナルエージェントは、ステップ４０５、４０８の処理で送信されてきた分散計算機システム環境下における各計算機の資産情報やユーザの属性情報をデータベース１００に格納し、管理サーバ１０１に処理結果を通知する。この処理の詳細は、図１６、図１７により後述する（ステップ４０７、４０９）。
【００３２】
管理サーバ１０１は、一定時間おきに、エージェント生成部１０５に対して、エージェントＡ１０７の移動要求を出し、分散計算機システム環境下の計算機から資産情報とユーザの属性情報とを取得する前述の処理を実行する。この処理の詳細は、図１５、図１６、図１７により後述する。
【００３３】
（７）次に、管理サーバ１０１は、データベース１００から分散計算機システム環境下における各計算機の資産情報とユーザの属性情報とを取り出し、ポリシーテンプレート情報１２１を生成する。ポリシーテンプレート情報１２１の生成後、管理者にポリシー確認要求を出し、管理者は修正の必要がなければ承認し、修正の必要があれば変更し、ポリシーテンプレート情報１２１をポリシー情報として登録する。この処理の詳細は、図５〜図９、図１１〜図１４により後述する（ステップ４１０）。
【００３４】
（８）次に、計算機１１０からプログラム配布要求、または、クライアントとしてのユーザの属性情報の変更通知があったものとする（ステップ４１１）。
【００３５】
（９）ステップ４１１での要求または通知を受け取った管理サーバ１０１は、要求のあったプログラム１２２を配布するためにパッケージを生成する。この処理の詳細は、図１０により後述する（ステップ４１２）。
【００３６】
（10）次に、管理サーバ１０１は、エージェントＢ１０８を生成し（ステップ４１３）、生成したエージェントＢ１０８に移動要求を出して、エージェントＢ１０８を計算機１１０に移動させる。この処理の詳細は、図１０、図１５、図１８により後述する（ステップ４１３〜４１５）。
【００３７】
（11）エージェントＢ１０８は、移動先の計算機１１０において、業務に必要なパッケージの配布、または、業務に不要なプログラムの削除を行う。この処理の詳細は、図１８により後述する（ステップ４１６）。
【００３８】
（12）次に、エージェントＢ１０８は、管理サーバ１０１に処理結果を通知し、管理サーバ１０１に処理結果を通知後、消滅する。この処理の詳細は、図１７、図１８により後述する（ステップ４１７、４１８）。
【００３９】
前述したステップ４００からステップ４１８までの一連の処理は、管理者による強制終了やシステムの異常終了がない限り繰り返し実行される。
【００４０】
図５はポリシー判定部１０２での処理動作を説明するフローチャートであり、次に、これについて説明する。
【００４１】
（１）まず、管理者がポリシー情報を設定する。その後、後述する処理フローから戻ってくるループポイントを示す処理０を経て、エージェント生成部１０５を呼び出して、エージェントＡ１０７を生成する。エージェントＡ１０７の生成後、エージェントＡ１０７を分散計算機システム内の全計算機に移動させ、各計算機内の資産情報とクライアントとしてのユーザの属性情報とを収集させる（ステップ５００〜５０２）。
【００４２】
（２）次に、データベース１００に格納されている属性情報テーブル１１３（図１９）を参照する。属性情報テーブル１１３には、エージェントＡ１０７が収集してきた分散計算機システム内の全計算機におけるユーザの属性情報が格納されて管理されている（ステップ５０３）。
【００４３】
（３）次に、前回にチェックした情報と差分がないか否かをチェックし、属性情報に変更があった場合、図６により後述する差分情報抽出処理（処理１）に移行する（ステップ５０４、５０５）。
【００４４】
（４）ステップ５０４のチェックで、属性情報に変更がなかった場合、クライアントであるユーザからプログラムの配布要求がきているか否かをチェックし、プログラムの配布要求がなかった場合、ステップ５０３からの処理に戻って処理を続け、プログラムの配布要求があった場合、属性情報抽出処理（処理２）に移行する（ステップ５０６、５０７）。
【００４５】
図６は図５におけるステップ５０５での差分情報抽出処理（処理１）の動作を説明をするフローチャートであり、次に、これについて説明する。
【００４６】
（１）まず、前回、エージェントＡ１０７が収集したクライアントユーザの属性情報と今回、エージェントＡ１０７が収集したクライアントユーザの属性情報との差分を抽出する（ステップ６００）。
【００４７】
（２）次に、後述するプログラム配布許可判定処理（処理３）を実行し、その後、職制変更等の理由によりユーザの属性情報に差分が生じた場合、エージェントＢ１０８を用いて業務に不要なプログラムを削除し、業務に不要なプログラムの削除処理が成功したか否かを判定する（ステップ６０１、６０２）。
【００４８】
（３）ステップ６０２の判定で、業務に不要なプログラムの削除処理が成功していなかった場合、ステップ６０２からの処理に戻って、さらに、削除処理を続け、業務に不要なプログラムの削除処理が成功していた場合、データベース１００の資産情報を更新する（ステップ６０３）。
【００４９】
（４）データベース１００の資産情報の更新後、管理者に資産情報の更新が完了したことを通知し、その後、処理０に移行する（ステップ６０４、６０５）。
【００５０】
図７は図５におけるステップ５０７での属性情報抽出処理（処理２）の動作を説明するフローチャートであり、次に、これについて説明する。
【００５１】
（１）クライアントとしてのユーザからプログラム配布要求があった場合、または、職制変更などの理由により属性情報に差が生じた場合、データベース１００内にある属性情報テーブル１１４を検索する（ステップ７００）。
【００５２】
（２）次に、プログラム配布要求のあったユーザの属性情報を抽出し、その後、図６におけるステップ６０１のプログラム配布許可判定処理（処理３）に移行する（ステップ７０１、７０２）。
【００５３】
図８は図６、図７におけるステップ６０１、７０２のプログラム配布許可判定処理（処理３）の動作を説明するフローチャートであり、次に、これについて説明する。
【００５４】
（１）まず、データベース１００内のポリシー情報テーブル１１４（図２０により後述）と部署クラスタテーブル１１５（図２１により後述）を参照し、これらのテーブルにライアントであるユーザの所属する部署に対して対象となるプログラム１２２のポリシー情報が設定されているか否かをチェックする（ステップ８００、８０１）。
【００５５】
（２）ステップ８０１のチェックで、プログラムのポリシーが設定されていなかった場合、後述するクラスタリング処理（処理４）に移行し、ポリシー情報が設定されていた場合、その計算機に対して、プログラム１２２の配布が許可されているか否かをチェックする（ステップ８０５、８０２）。
【００５６】
（３）ステップ８０２のチェックで、プログラム１２２の配布が許可されていた場合、後述するパッケージ生成処理（処理５）に移行し、プログラム１２２の配布が許可されていなかった場合、計算機を使用するユーザに対して、プログラム１２２の配布は認められないという拒否通知を出す（ステップ８０４、８０３）。
【００５７】
図９は図８におけるステップ８０５でのクラスタリング処理（処理４）の動作を説明するフローチャートであり、次に、これについて説明する。
【００５８】
（１）図８のステップ８０１のチェックで、クライアントユーザの所属する部署に対して対象となるプログラム１２２のポリシーが設定されていなかったことにより、まず、部署クラスタテーブル１１５を参照し、共通の職種情報（設計部署や販売部署等）があるか否かをチェックし、共通の職種情報があった場合、後述する部署クラスタ選択処理（処理６）に移行する（ステップ９００、９０１）。
【００５９】
（２）ステップ９００のチェックで、共通の職種情報がなかった場合、新規に部署クラスタを作成し、共通の職制情報があるか否かをチェックし、共通の職制情報があった場合、後述する職位クラスタ選択処理（処理７）に移行する（ステップ９０２〜９０４）。
【００６０】
（３）ステップ９０３のチェックで、共通の職制情報がなかった場合は、新規に職制クラスタを作成し、次に、共通の就業形態情報があるか否かをチェックする（ステップ９０５、９０６）。
【００６１】
（４）ステップ９０６のチェックで、共通の就業形態情報があった場合、後述する就業形態クラスタ選択処理（処理８）に移行し、、共通の就業形態情報がなかった場合、新規に就業形態クラスタを作成して、ステップ９０１の処理６に移行する（ステップ９０７、９０８）。
【００６２】
図１０は図８におけるステップ８０４でのパッケージ生成処理（処理５）の動作を説明するフローチャートであり、次に、これについて説明する。
【００６３】
（１）図８のステップ８０２のチェックで、クライアントとしてのユーザの所属する部署に対して対象となるプログラム１２２のポリシーが設定されていて、その計算機に対してプログラム１２２の配布が許可されていたことにより、まず、パッケージ生成部１０４を呼び出す（ステップ１０００）。
【００６４】
（２）パッケージに登録するプログラム１２２を選択し、次に、パッケージを取得できる部署クラスタと職位クラスタと就業形態クラスタとを設定する（ステップ１１０１、１００２）。
【００６５】
（３）次に、パッケージ情報をデータベース１００内にあるポリシー情報テーブル１１４に登録し、パッケージを作成した後、図１５により後述するエージェント生成処理（処理１０）に移行する。（ステップ１００３、１００５）。
【００６６】
（４）処理１０によりエージェントＢ１０８を生成後、エージェントＢ１０８をプログラム配布要求のあった計算機またはプログラム削除の必要がある計算機に移動させる。エージェントＢ１０８がプログラム配布要求のあった計算機に移動後に、パッケージの配布または業務に不要なプログラムの削除処理が成功したか否かの通知をしてくるので、これを受け取って、成功したか否かをチェックし、失敗していた場合、ステップ１００５の処理１０からの処理に戻って処理を繰り返す（ステップ１００６）。
【００６７】
（５）ステップ１００６のチェックで、パッケージを配布または不要プログラムの削除を行う処理が成功していた場合、管理者に処理の完了通知を出し、処理０に移行する（ステップ１００７、１００８）。
【００６８】
図１１は図９におけるステップ９０１での部署クラスタ選択処理（処理６）の動作を説明するフローチャートであり、次に、これについて説明する。
【００６９】
（１）クライアントであるユーザの所属する部署に対して対象となるプログラム１２２のポリシーが設定されておらず、部署クラスタテーブル１１５に共通の職種情報（設計部署や販売部署等）があったことにより、部署クラスタテーブル１１５（詳細を図２１に示す）に複数の部署情報があるか否かをチェックする（ステップ１１００）。
【００７０】
（２）ステップ１１００のチェックで、複数の部署情報があった場合、最も構成数の多い部署クラスタを選択し、同数の構成数の部署クラスタが存在した場合には、登録番号の最も小さい部署クラスタを選択する（ステップ１１０１）。
【００７１】
（３）ステップ１１０１の処理の後、または、ステップ１１００のチェックで、複数の部署情報がなかった場合、後述するポリシー情報作成処理（処理９）に移行する（ステップ１１０２）。
【００７２】
図１２は図９におけるステップ９０４での職位クラスタ選択処理（処理７）の動作を説明するフローチャートであり、次に、これについて説明する。
【００７３】
（１）図９のステップ９０３のチェックで、クライアントユーザの所属する部署に対して対象となるプログラム１２２のポリシーが設定されておらず、部署クラスタテーブル１１５に共通の職制情報があったことにより、複数の職位情報があるか否かをチェックする（ステップ１２００）。
【００７４】
（２）ステップ１２００のチェックで、複数の職位情報があった場合、最も構成数の多い職位クラスタを選択し、同数の構成数の職位クラスタが存在した場合には、登録番号の最も小さい職位クラスタを選択する（ステップ１２０１）。
【００７５】
（３）ステップ１２０１の処理の後、または、ステップ１２００のチェックで、複数の職位情報がなかった場合、後述するポリシー情報作成処理（処理９）に移行する（ステップ１２０２）。
【００７６】
図１３は図９におけるステップ９０７での就業形態クラスタ選択処理（処理８）の動作を説明するフローチャートであり、次に、これについて説明する。
【００７７】
（１）図９のステップ９０６のチェックで、クライアントであるユーザの所属する部署に対して対象となるプログラム１２２のポリシーが設定されておらず、部署クラスタテーブル１１５に共通の就業形態があったことにより、複数の就業形態情報があるか否かをチェックする（ステップ１３００）。
【００７８】
（２）ステップ１３００のチェックで、複数の就業形態情報があった場合、最も構成数の多い就業形態クラスタを選択し、同数の構成数の就業形態クラスタが存在した場合には、登録番号の最も小さい就業形態クラスタを選択する（ステップ１３０１）。
【００７９】
（３）ステップ１３０１の処理の後、または、ステップ１３００のチェックで、複数の就業形態情報がなかった場合、ポリシー情報作成処理（処理９）に移行する（ステップ１３０２）。
【００８０】
図１４は図１１〜図１３におけるステップ１１０２、１２０２、１３０２でのポリシー情報作成処理（処理９）の動作を説明するフローチャートであり、次に、これについて説明する。
【００８１】
（１）処理が開始されると、まず、選択された部署クラスタ、職種クラスタ、就業形態クラスタを組み合わせた新規ポリシー情報を元にポリシーテンプレート情報１２１を作成する（ステップ１４００）。
【００８２】
（２）ステップ１４００の処理でポリシーテンプレート情報１２１を作成した後、これを管理者に通知し、ポリシーテンプレート情報１２１の内容を確認してもらう（ステップ１４０１）。
【００８３】
（３）管理者によってポリシー情報が承認されたか否かをチェックし、管理者によってポリシーが承認されない場合、管理者自身がポリシーテンプレート情報１２１の内容が修正される（ステップ１４０２、１４０５）。
【００８４】
（４）ステップ１４０２のチェックで、管理者に承認された場合、ステップ１４００の処理で生成したポリシーテンプレートの情報を、また、ステップ１４０５の処理で管理者が修正した場合、その修正したポリシーテンプレートの情報をデータベース１００のポリシー情報テーブル１１４（詳細を図２０により説明する）を更新し、すでに説明したプログラム配布許可判定処理（処理３）に移行する（ステップ１４０３、１４０４）。
【００８５】
図１５は図１０におけるステップ１００５でのエージェント生成処理（処理１０）の動作を説明するフローチャートであり、次に、これについて説明する。
【００８６】
（１）処理が開始されると、まず、エージェント生成部１０５を呼び出し、パッケージ生成部１０４からエージェントＡ１０７の作成要求を受信したか否かをチェックする（ステップ１５００、１５０１）。
【００８７】
（２）ステップ１５０１のチェックで、エージェントＡ１０７の作成要求を受信していた場合、エージェントＡ１０７を生成し、生成したエージェントＡ１０７に、資産情報テーブル１２０（詳細を図２６により説明する）を搭載すると共に、宛先情報テーブル１１９（詳細を図２５により説明する）を搭載する（ステップ１５０２、１５０３）。
【００８８】
（３）さらに、生成したエージェントＡ１０７に、属性情報テーブル１１３（詳細を図１９により説明する）を搭載して、エージェントＡ１０７のクローンエージェントを作成する（ステップ１５０４、１５０５）。
【００８９】
（４）その後、エージェントＡ１０７のクローンエージェントに対して移動要求を出し、エージェントＡ１０７のクローンエージェントが移動後、図１７により後述するエージェント状態情報管理処理（処理１１）の処理に移行し、エージェントＡ１０７が移動中であることを通知する（ステップ１５０６、１５０７）。
【００９０】
（５）ステップ１５０１のチェックで、パッケージ生成部１０４からエージェントＡ１０７の作成要求を受信していなかった場合、エージェントＢ１０８の作成要求を受信したか否かをチェックし、エージェントＢ１０８の作成要求を受信していなかった場合、ステップ１５０１からの処理に戻って処理を続ける（ステップ１５０８）。
【００９１】
（６）ステップ１５０８のチェックで、エージェントＢ１０８の作成要求を受信していた場合、エージェントＢ１０８を生成し、生成したエージェントＢ１０８に、すでに生成したパッケージを搭載すると共に、資産情報テーブル１２０（詳細を図２６により説明する）を搭載する（ステップ１５０９、１５１０）。
【００９２】
（７）さらに、生成したエージェントＢ１０８に、宛先情報テーブル１１９（詳細を図２５により説明する）を搭載して、エージェントＢ１０８に対して移動要求を出す（ステップ１５１１、１５１２）。
【００９３】
（８）エージェントＢ１０８が移動後、図１７により後述するエージェント状態情報管理処理（処理１１）の処理に移行し、エージェントＢ１０８が移動中であることを通知する（ステップ１５１３）。
【００９４】
図１６はエージェントＡ１０７の処理動作を説明するフローチャートであり、次に、これについて説明する。
【００９５】
（１）エージェントＡ１０７は、生成された後、エージェント生成部１０５から移動要求を受信したか否かをチェックし、受信していなかった場合、受信するまで待機する（ステップ１６００）。
【００９６】
（２）ステップ１６００のチェックで、エージェント生成部１０５から移動要求を受信した場合、宛先情報テーブル１１９（詳細を図２５に示す）を参照し、要求先の計算機に作成したエージェントＡ１０７のクローンエージェントを移動させる（ステップ１６０１）。
【００９７】
（３）クローンエージェントは、到着後に移動先の計算機に常駐し、計算機の資産情報とクライアントユーザの属性情報とを収集する。このとき、クライアントとしてのユーザに属性情報設定通知を出し、属性情報を設定させる（ステップ１６０２）。
【００９８】
（４）エージェントＡ１０７のクローンエージェントは、計算機の資産情報とクライアントユーザの属性情報とを収集した後、管理サーバ１０１にいるオリジナルエージェントに対して、エージェント通信により収集した情報を送信する（ステップ１６０３）。
【００９９】
（５）オリジナルエージェントは、クローンエージェントから情報を受信した後、収集した計算機の資産情報とクライアントユーザの属性情報とをデータベース１００内に格納されている資産情報テーブル１２０（図２６）と属性情報テーブル１１３（図１９）に格納してテーブルを更新する（ステップ１６０４）。
【０１００】
（６）次に、エージェント状態情報管理処理（処理１１）に移行し、エージェントＡ１０７での処理が完了したことを通知し、その後、一定時間おきにステップ１６０２からの処理に戻って、前述した処理を繰り返す（ステップ１６０５）。
【０１０１】
図１７は図１５におけるステップ１５０７、１５１３、図１６におけるステップ１６０５でのエージェント状態情報管理処理（処理１１）の動作を説明するフローチャートであり、次に、これについて説明する。
【０１０２】
（１）処理が開始されると、まず、エージェント状態情報管理部１０６を呼び出し、エージェントＡ１０７またはエージェントＢ１０８から状態情報の通知を受信しているか否かをチェックする（ステップ１７００、１７０１）。
【０１０３】
（２）ステップ１７０１のチェックで、状態情報通知を受信していた場合、データベース１００のエージェント状態情報テーブル１１８（詳細を図２４により説明する）を受信した情報により更新する（ステップ１７０２）。
【０１０４】
（３）もし、ステップ１７０１のチェックで、エージェントＡ１０７またはエージェントＢ１０８から状態情報通知が一定時間内にきていなかった場合、エージェントＡ１０７またはエージェントＢ１０８が何かしらの原因で消滅したとみなし、クローンエージェントを作成し、作成したクローンエージェントを、消滅したエージェントのいた計算機に移動させる（ステップ１７０３、１７０４）。
【０１０５】
図１８はエージェントＢ１０８の処理動作を説明するフローチャートであり、次に、これについて説明する。
【０１０６】
（１）エージェントＢ１０８は、生成された後、エージェント生成部１０５から移動要求を受信したか否かをチェックし、受信していなかった場合、受信するまで待機する（ステップ１８００）。
【０１０７】
（２）ステップ１８００のチェックで、エージェント生成部１０５から移動要求を受信した場合、エージェントＢ１０８は、宛先情報テーブル１１９（詳細を図２５に示す）を参照し、要求先の計算機に移動する（ステップ１８０１）。
【０１０８】
（３）エージェントＢ１０８は、移動先の計算機において、パッケージを配布し、パッケージの配布後、資産情報テーブル１２０（詳細を図２６に示す）を参照し、削除対象のプログラムがないか否かを確認する（ステップ１８０２、１８０３）。
【０１０９】
（４）ステップ１８０３のチェックで、削除対象のプログラムがなかった場合、すでに説明したエージェント状態情報管理処理（処理１１）に移行して、エージェントＢ１０８が処理状態を通知する（ステップ１８０４）。
【０１１０】
（５）次に、エージェントの状態が処理完了であるか否かをチェックし、処理が完了であった場合、エージェントＢ１０８は消滅する（ステップ１８０５、１８０６）。
【０１１１】
（６）ステップ１８０５のチェックで、処理が完了していなかった場合、エージェントが何らかの原因で消滅したと判断し、（すでに、処理１１において作成したクローンエージェントがパッケージ配布を行うために消滅したエージェントがいた計算機に移動しているため）ステップ１８０２からの処理に戻って、パッケージ配布を続ける。
【０１１２】
（７）ステップ１８０３のチェックで、パッケージを配布後、資産情報テーブル１２０（詳細を図２６に示す）を参照し、業務に不要な（削除対象の）プログラムあった場合、そのプログラムの削除処理を行い、業務に不要なプログラムの削除処理が成功したか否かをチェックする（ステップ１８０７、１８０８）。
【０１１３】
（８）ステップ１８０８のチェックで、業務に不要なプログラムの削除処理に成功していた場合、ステップ１８０４のすでに説明したエージェント状態情報管理処理（処理１１）に移行し、業務に不要なプログラムの削除処理が失敗していた場合、ステップ１８０７からの処理に戻って、プログラムの削除処理を続ける。
【０１１４】
図１９は属性情報テーブル１１３の構成例を示す図である。属性情報テーブル１１３は、分散計算機システム環境下の各計算機を使用しているクライアントとしてのユーザの属性情報を管理している。ここで管理される属性情報は、名前情報、部署情報、職制情報、就業形態情報であり、管理サーバ１０１が業務に必要となるプログラム１２２を配布し、または、業務に不要なプログラムを削除する際に参照される。
【０１１５】
図２０はポリシー情報テーブル１１４の構成例を示す図である。ポリシー情報テーブル１１４は、パッケージ名と、プログラム名（管理者が分散計算機システム内の各計算機に対して業務上必要であると判断し、配布するプログラム１２２）と、プログラムのインストールを許可されている対象のポリシー情報（部署クラスタと職位クラスタと就業形態クラスタの組み合わせ）を管理している。
【０１１６】
資産配布管理システムは、ポリシー情報テーブル１１４の情報と属性情報テーブル１１３の情報とを参照し、属性情報の部署情報と職制情報と就業形態情報とのすべての条件が、ポリシー情報と合致すればプログラムの配布または削除を行う。ここでいうクラスタとは、管理者が似ていると定義したデータ同士を１つのグループにまとめて、１つの大きなデータの集合を小さなデータの集合に分割したデータの集まりのことである。
【０１１７】
資産配布管理システムのクラスタリング処理前のポリシー情報テーブル１１４の例を図２０（ａ）に示しており、この例における、１つめの例として、プログラムＡとプログラムＢとプログラムＣをパッケージングしたパッケージ１は、品質保証部（Ａ１０）で、かつ、派遣または通常（Ｃ３）で、かつ、担当（Ｂ１）がインストールすることができるポリシー情報が設定されている。また、２つめの例として、プログラムＤとプログラムＥとをパッケージングしたパッケージ２は、ＤＢ部（Ａ２）で、かつ、派遣または通常（Ｃ３）で、かつ、主任または課長（Ｂ１３）がインストールすることができるポリシー情報が設定されている。また、資産配布管理システムのクラスタリング処理が行われた後のポリシー情報テーブル１１４の例を図２０（ｂ）に示しており、この例における、３つめの例として、プログラムＤとプログラムＥとをパッケージングしたパッケージ２は、ＤＢ部またはシステム設計部（Ａ１１）で、かつ、派遣または通常（Ｃ３）で、かつ、主任または課長（Ｂ１３）がインストールすることができるポリシー情報に変更されていることを示している。
【０１１８】
図２１は部署クラスタテーブル１１５の構成例を示す図である。部署クラスタテーブル１１５は、単一または複数の部署から構成される部署クラスタ名と、対象部署名と、部署の職種と、部署クラスタを構成するデータ数（構成数）とを管理している。
【０１１９】
図２２は職位クラスタテーブル１１６の構成例を示す図である。職位クラスタテーブル１１６は、単一または複数の職位から構成される職位クラスタ名と、対象（職位）名と、職位クラスタを構成するデータ数（構成数）とを管理している。
【０１２０】
図２３は就業形態クラスタテーブル１１７の構成例を示す図である。就業形態クラスタテーブル１１７は、単一または複数の就業形態から構成される就業形態クラスタ名と、対象（就業形態）名と、就業形態クラスタを構成するデータ数（構成数）を管理している。
【０１２１】
図２４はエージェント状態情報テーブル１１８の構成例を示す図である。エージェント状態情報テーブル１１８は、計算機の資産情報やクライアントユーザの属性情報を収集するエージェントや、業務に必要となるプログラム１２２を配布または業務に不要なプログラムの削除を行うエージェントの名前と、エージェントの状態とを管理している。
【０１２２】
図２５は宛先情報テーブル１１９の構成例を示す図である。宛先情報テーブル１１９は、エージェント名と、エージェントが移動する計算機名と、そのＩＰアドレスとを管理している。
【０１２３】
図２６は資産情報テーブル１２０の構成例を示す図である。資産情報テーブル１２０は、分散環境下の計算機の資産情報として、計算機名と、プログラム名と、ユーザ名と、業務に不要なプログラムの削除対象とを管理している。
【０１２４】
図２７はポリシーテンプレート作成時におけるクラスタリング処理前の職種、部署クラスタ、プログラムの相互の関係を示す図、図２８はポリシーテンプレート作成時におけるクラスタリング処理後の職種、部署クラスタ、プログラムの相互の関係を示す図であり、次に、図２７、図２８を参照して、クラスタリング処理前後の職種、部署クラスタ、プログラムの相互の関係の変化の例について説明する。
【０１２５】
いま、エージェントＡ１０７が分散計算機システム内の計算機から資産情報を収集し、資産情報の１つである属性情報の中にシステム設計部、主任という情報が含まれていたとする。システム設計部のポリシーには、何も設定されていないので、図２７ではシステム設計部とプログラムとの間を接続している矢印が示されていない。クラスタリング部１０３は、システム設計部が設計部署であるということから、すでに登録されている設計部署がないかをデータベースの部署クラスタテーブル１１３を検索する。図２７に示す例では、すでに、ＤＢ部と品質保証部とのポリシー情報が設定されて、プログラムへの矢印が示されている。
【０１２６】
ＤＢ部のポリシー情報は、接続している線が示しているように、対象職制として、課長と主任とが設定されており、かつ、就業形態として、派遣と通常とが対象となっている。また、ＤＢ部は、ＤＢ部からの矢印で示しているプログラムＤとプログラムＥとが使用できる対象プログラムとなっている。品質保証部のポリシー情報は、接続している線が示しているように、対象となる職制が担当であり、就業形態としては、派遣と通常とが対象となっている。また、品質保証部の使用できる対象プログラムは、品質保証部からの矢印で示しているプログラムＡとプログラムＢとプログラムＣとが使用できる対象プログラムとなっている。
【０１２７】
この時点では、システム設計部のポリシー情報が設定されていないが、設計部署であることから、クラスタリング部１０３は、システム設計部がＤＢ部と同じ設計クラスタに属すると推論する。ＤＢ部のポリシー情報では、課長職と主任職との人がプログラムＣとプログラムＤの使用を許可されているため、クラスタリング部１０３は、図２８に点線で示すように、システム設計部の課長職と主任職との人が使用できるというポリシー情報を設定し、また、図２８に点線の矢印で示しているように、プログラムＤとプログラムＥとが使用できる対象プログラムであると設定する。
【０１２８】
前述の例では、プログラムを配布できるポリシー情報を設定する例となっているが、プログラム１２２を配布できないポリシー情報を設定することも可能である。また、提案したポリシー情報として部署情報、職位情報、就業形態をあげたが、この他にアドレス情報も判断基準の例として挙げることができる。
【０１２９】
図２９はユーザの属性が変更になった場合の本発明の実施形態での処理例について説明する図である。
【０１３０】
図２９において、Ａ氏がシステム設計部から情報システム部に異動になったものとする。この場合、資産配布管理システムは、エージェントが収集した計算機の資産情報により、Ａ氏の所属部署が変更したことを検知する。そして、資産配布管理システムは、ポリシー情報テーブルを参照し、該当するポリシー情報を検索する。該当ポリシーを検索後、インストール可能なプログラムと削除するべき差分プログラム情報とを抽出し、必要なプログラムの配布処理と、不要なプログラムの削除処理とを行う。
【０１３１】
また、Ｂ氏の使用している計算機に障害が発生して復旧ができなくなり、ＯＳを入れ替えたものとする。この場合、資産配布管理システムは、エージェントが収集した計算機の資産情報により、Ｂ氏の計算機に、業務に必要なソフトウェアが入っていないことを検知し、ポリシー情報テーブルを参照した後、該当するポリシー情報を検索する。そして、資産配布管理システムは、該当するポリシー情報を検索後、インストール可能なプログラムの配布処理を行う。
【０１３２】
また、Ｃ氏が昇進により職制情報を担当から主任になったとする。この場合、資産配布管理システムは、ポリシー情報テーブルを参照し、該当するポリシー情報を検索する。そして、資産配布管理システムは、該当ポリシーを検索後、インストール可能なプログラムと削除するべき差分プログラム情報とを抽出し、必要なプログラムの配布処理と、不要なプログラムの削除処理とを行う。
【０１３３】
なお、前述において、属性の変更は、各ユーザが、自分が使用している計算機に登録してもよく、あるいは、図示しない人事等を管理するシステムから自動的に登録されてもよい。
【０１３４】
前述した本発明の実施形態での各処理は、プログラムにより構成し、管理サーバが備えるＣＰＵに実行させることができ、また、それらのプログラムは、ＦＤ、ＣＤ−ＲＯＭ、ＤＶＤ等の記録媒体に格納して提供することができ、また、ネットワークを介してディジタル情報により提供することができる。
【０１３５】
前述した本発明の実施形態によれば、資産配布管理システムは、管理者の判断情報がデータベースに蓄積されていくにつれ、システムにおける推論の精度が高まっていき、管理者の負担を軽減することができる。また、管理者の負担を軽減するだけでなく、クライアントユーザに対しても作業の迅速化と効率化を図ることができる。
【０１３６】
前述したように本発明の実施形態で使用される資産配布管理システムは、エージェントを利用して分散計算機システム内の計算機の資産情報またはユーザの属性情報を収集し、属性情報をもとに推論したポリシー情報に基づいてプログラムの配布処理または削除処理を行う。これにより、管理者は、資産配布システムが推論したポリシー情報に誤りがあった場合にのみ、ポリシー情報を修正するだけで済み、プログラムが業務に必要なプログラムであるか否かを逐一調査し、分散計算機システム内のクライアント計算機に対してプログラムの配布または削除を行う管理者負担を軽減することができる。
【０１３７】
本発明の実施形態では、管理者は、予め最低限設定しておくべき属性情報に対して、業務に必要なプログラム、または、業務に不要なプログラムのポリシー情報を定義する（例えば、設定画面上で部署クラスタ、職位クラスタ、就業形態クラスタなどのクラスタ情報を組み合わせ、配布するプログラム情報を定義することによりポリシー情報を設定する）だけでよい。その後、資産配布管理システムは、まだ管理者によって設定されていない属性情報に対して、計算機の資産情報やクライアントユーザの属性情報を元に関連付けを行い、インストール可能なプログラムのポリシーテンプレート情報を生成する。管理者は、生成されたポリシーテンプレート情報を修正するだけで済み、管理者のポリシー情報に関する判断情報がデータベースに蓄積されていくにつれ、システムにおける推論の制度が高まっていき、管理者の負担を軽減することができる。また、管理者の負担を軽減するだけでなく、ユーザに対しても作業の迅速化と効率化を図ることができる。
【０１３８】
例えば、業務に必要とされるプログラムがインストールされていない計算機があった場合、クライアントであるユーザがプログラム配布要求を出さなくても、資産配布管理システムがポリシー情報に基づいて、当該計算機にプログラムを配布することができる。また、分散計算機システム内の計算機において、障害の発生により計算機の復旧が不可能になったり、老朽化による計算機の交換を行う必要が生じた場合等に、それまで使用していた全てのプログラムを再インストールする必要があるが、そのような場合にも、本発明の実施形態では、資産配布管理システムがクライアントユーザの所属する職種、部署、職位、就業形態等のポリシー情報に基づいて、当該計算機にプログラムを配布するため、ユーザによる環境構築の負担を軽減することができる。
【図面の簡単な説明】
【０１３９】
【図１】本発明の一実施形態による分散計算機システムの構成を示すブロック図である。
【図２】エージェントＡの構成を示すブロック図である。
【図３】エージェントＢの構成を示すブロック図である。
【図４】分散計算機システム内の計算機に対するプログラムの配布または削除を完了するまでの本発明の実施形態の全体の処理動作を説明するフローチャートである。
【図５】ポリシー判定部での処理動作を説明するフローチャートである。
【図６】図５におけるステップ５０５での差分情報抽出処理（処理１）の動作を説明をするフローチャートである。
【図７】図５におけるステップ５０７での属性情報抽出処理（処理２）の動作を説明するフローチャートである。
【図８】図６、図７におけるステップ６０１、７０２のプログラム配布許可判定処理（処理３）の動作を説明するフローチャートである。
【図９】図８におけるステップ８０５でのクラスタリング処理（処理４）の動作を説明するフローチャートである。
【図１０】図８におけるステップ８０４でのパッケージ生成処理（処理５）の動作を説明するフローチャートである。
【図１１】図９におけるステップ９０１での部署クラスタ選択処理（処理６）の動作を説明するフローチャートである。
【図１２】図９におけるステップ９０４での職位クラスタ選択処理（処理７）の動作を説明するフローチャートである。
【図１３】図９におけるステップ９０７での就業形態クラスタ選択処理（処理８）の動作を説明するフローチャートである。
【図１４】図１１〜図１３におけるステップ１１０２、１２０２、１３０２でのポリシー情報作成処理（処理９）の動作を説明するフローチャートである。
【図１５】図１０におけるステップ１００５でのエージェント生成処理（処理１０）の動作を説明するフローチャートである。
【図１６】エージェントＡ１０７の処理動作を説明するフローチャートである。
【図１７】図１５におけるステップ１５０７、１５１３、図１６におけるステップ１６０５でのエージェント状態情報管理処理（処理１１）の動作を説明するフローチャートである。
【図１８】エージェントＢ１０８の処理動作を説明するフローチャートである。
【図１９】属性情報テーブルの構成例を示す図である。
【図２０】ポリシー情報テーブルの構成例を示す図である。
【図２１】部署クラスタテーブルの構成例を示す図である。
【図２２】職位クラスタテーブルの構成例を示す図である。
【図２３】就業形態クラスタテーブルの構成例を示す図である。
【図２４】エージェント状態情報テーブルの構成例を示す図である。
【図２５】宛先情報テーブルの構成例を示す図である。
【図２６】資産情報テーブルの構成例を示す図である。
【図２７】ポリシーテンプレート作成時におけるクラスタリング処理前の職種、部署クラスタ、プログラムの相互の関係を示す図である。
【図２８】ポリシーテンプレート作成時におけるクラスタリング処理後の職種、部署クラスタ、プログラムの相互の関係を示す図である。
【図２９】ユーザの属性が変更になった場合の本発明の実施形態での処理例について説明する図である。
【符号の説明】
【０１４０】
１００  データベース
１０１  管理サーバ
１０２  ポリシー判定部
１０３  クラスタリング部
１０４  パッケージ生成部
１０５  エージェント生成部
１０６  エージェント状態情報管理部
１０７  エージェントＡ
１０８  エージェントＢ
１０９  計算機
１１０  計算機
１１１  計算機
１１２  ネットワーク
１１３  属性情報テーブル
１１４  ポリシー情報テーブル
１１５  部署クラスタテーブル
１１６  職位クラスタテーブル
１１７  就業形態クラスタテーブル
１１８  エージェント状態情報テーブル
１１９  宛先情報テーブル
１２０  資産情報テーブル
１２１  ポリシーテンプレート情報
１２２  配布プログラム
【図１】
2007219826.tif 000003
【図２】
2007219826.tif 000004
【図３】
2007219826.tif 000005
【図４】
2007219826.tif 000006
【図５】
2007219826.tif 000007
【図６】
2007219826.tif 000008
【図７】
2007219826.tif 000009
【図８】
2007219826.tif 000010
【図９】
2007219826.tif 000011
【図１０】
2007219826.tif 000012
【図１１】
2007219826.tif 000013
【図１２】
2007219826.tif 000014
【図１３】
2007219826.tif 000015
【図１４】
2007219826.tif 000016
【図１５】
2007219826.tif 000017
【図１６】
2007219826.tif 000018
【図１７】
2007219826.tif 000019
【図１８】
2007219826.tif 000020
【図１９】
2007219826.tif 000021
【図２０】
2007219826.tif 000022
【図２１】
2007219826.tif 000023
【図２２】
2007219826.tif 000024
【図２３】
2007219826.tif 000025
【図２４】
2007219826.tif 000026
【図２５】
2007219826.tif 000027
【図２６】
2007219826.tif 000028
【図２７】
2007219826.tif 000029
【図２８】
2007219826.tif 000030
【図２９】
2007219826.tif 000031