(57)【要約】 【課題】 モジュール更新時に保守要員による入替え作業を不要とするクライアントサーバシステムを提供する。【解決手段】サーバ100とネットワークを介して接続し、クライアント端末200上で動作するモジュールを管理するモジュール更新プログラムであって、クライアント端末200で取得したモジュールの情報を異なるバージョンも含めて記憶する蓄積モジュール一覧207と、利用者ごとに適用するモジュールを記憶する利用者モジュール一覧208を有し、業務サービスの利用開始時に取得したバージョン設定ファイルにより、更新が必要と判定したときは適用すべきモジュールを取得する自動更新処理部202と、クライアント端末の管理者権限を有して動作し、取得したモジュールのバックアップを管理し、指定されるバージョンのモジュールの情報を蓄積モジュール一覧207から利用者モジュール一覧208にコピーする更新代行処理部203とを有する。【選択図】   図１
2007011645.tif 000002
【特許請求の範囲】
【請求項１】
業務サービスを提供する計算機システムであって、
前記業務サービスに適用するプログラムモジュールの識別子とバージョン情報を記述したバージョン設定ファイルを格納するバージョン設定ファイル格納部と、
前記モジュールを格納する適用モジュールファイル格納部と、
前記適用モジュールファイル格納部に格納された前記モジュールを蓄積する蓄積モジュールファイル格納部と、
利用者識別子の入力を受け付ける利用者識別子受付部と、
前記モジュールの識別子、バージョン情報及び前記蓄積モジュールファイル格納部上の格納場所を蓄積する蓄積モジュール一覧記憶部と、
前記利用者識別子ごとに定義され、前記モジュールの識別子及び前記蓄積モジュールファイル格納部上の格納場所を記憶する利用者モジュール一覧記憶部と、
前記バージョン設定ファイルに設定されたモジュールの識別子及びバージョン情報が前記蓄積モジュール一覧記憶部になければ前記適用モジュールファイル格納部から前記モジュールを取得し、前記蓄積モジュールファイル格納部に蓄積される前記モジュールに関する情報の更新を依頼する自動更新処理部と、
前記自動更新処理部の依頼に基づいて、前記取得されたモジュールを前記蓄積モジュールファイル格納部に格納し、前記取得したモジュールの識別子、バージョン情報及び前記蓄積モジュールファイル格納部上の格納場所を前記蓄積モジュール一覧記憶部に登録し、前記モジュールの識別子及び前記蓄積モジュールファイル格納部上の格納場所を前記蓄積モジュール一覧記憶部から取得して前記利用者モジュール一覧記憶部に登録する更新代行処理部と、
からなることを特徴とする計算機システム。
【請求項２】
クライアント端末に適用すべきプログラムモジュールを格納し、前記モジュールの識別子とバージョン情報を前記クライアント端末に通知するサーバに接続される前記クライアント端末を、
利用者識別子の入力を受け付け、前記サーバから前記モジュールの識別子とバージョン情報の通知を受け取る利用者識別子受付部と、
前記クライアント端末の管理者権限でのみ更新可能な領域に、前記モジュールの識別子とバージョン情報及び前記モジュールを格納する蓄積モジュールファイル格納部と、
前記クライアント端末の管理者権限でのみ更新可能な領域に、前記モジュールの識別子、バージョン情報及び前記蓄積モジュールファイル格納部上の格納場所を蓄積する蓄積モジュール一覧記憶部と、
前記利用者識別子ごとに定義され、前記モジュールの識別子及び前記蓄積モジュールファイル格納部上の格納場所を記憶する利用者モジュール一覧記憶部と、
前記サーバから通知された前記モジュールの識別子及びバージョン情報が前記蓄積モジュール一覧記憶部になければ前記適用すべきモジュールを前記サーバから取得し、前記蓄積モジュールファイル格納部に蓄積される前記モジュールに関する情報の更新を依頼する自動更新処理部と、
クライアント端末の管理者権限を有して動作し、前記自動更新処理部の依頼に基づいて、前記取得したモジュールを前記蓄積モジュールファイル格納部に格納し、前記取得したモジュールの識別子、バージョン情報及び前記蓄積モジュールファイル格納部上の格納場所を前記蓄積モジュール一覧記憶部に登録し、前記サーバから通知されたモジュールの識別子及び前記蓄積モジュールファイル格納部上の格納場所を前記蓄積モジュール一覧記憶部から取得して前記利用者モジュール一覧記憶部に登録する更新代行処理部として、
機能させることを特徴とするモジュール更新プログラム。
【請求項３】
請求項２に記載のモジュール更新プログラムであって、
前記クライアント端末をさらに、
前記クライアント端末の管理者権限でのみ更新可能な領域に、前記蓄積モジュールファイル格納部に格納されている前記モジュールの識別子及び前記蓄積モジュールファイル格納部上の格納場所を記憶するモジュール一覧記憶部として機能させ、
前記更新代行処理部は、さらに、前記自動更新処理部の依頼に基づいて、前記自動更新処理部が取得した前記モジュールを前記モジュール一覧記憶部に登録することを特徴とするモジュール更新プログラム。
【請求項４】
請求項３に記載のモジュール更新プログラムであって、
前記自動更新処理部は、前記適用すべきモジュールをバックアップの不要なモジュールと判定したときは、前記サーバから通知された前記モジュールの識別子を有し、前記モジュール一覧記憶部に登録されているモジュールのバージョンと前記サーバから通知された前記モジュールのバージョン情報とを比較し、前記サーバから通知された前記モジュールのバージョン情報のほうが新しければ、前記適用すべきモジュールを前記サーバから取得するように前記クライアント端末を機能させることを特徴とするモジュール更新プログラム。
【請求項５】
請求項４に記載のモジュール更新プログラムであって、
前記自動更新処理部は、前記サーバから通知された制御コードに基づいて、前記適用すべきモジュールがバックアップの必要なモジュールかバックアップの不要なモジュールかを判定するように前記クライアント端末を機能させることを特徴とするモジュール更新プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
クライアントサーバシステムにおけるモジュール更新時のモジュール更新方法に関する。
【背景技術】
【０００２】
システム構築業務では、顧客に提供したシステムの障害対応や機能追加等で修正又は作成したモジュールに対して、試験環境において動作テストを行なった後、運用環境においても再度動作テストが行なわれる。
【０００３】
運用環境での検証作業では、顧客（システムの利用者）と日程調整を行い、モジュール入れ替え作業が行なわれる。通常、この作業は、業務時間終了後の深夜か顧客がシステムを利用しない休日等に行なわれることが多い。  
【０００４】
しかし、入れ替えられた新しいモジュールの機能を顧客が検証するのは実質的に翌稼働日ということになり、顧客が利用してみて初めて障害が正常に対応されている、又は要求した機能が正常に追加されている等の確認が行なわれる。この確認を受けることにより、上記プログラムモジュールの障害対応や機能追加対応で更新されたモジュールの検証作業が完了となる。
【０００５】
顧客のシステム環境での検証が完了した後は、顧客の各部署に散在している全クライアント端末に対し、更新されたモジュールの入れ替え作業が行なわれ、上記作業が完了後に更新後のシステムの運用が開始されることとなる。
【０００６】
この入れ替え作業は、運用環境の規模に応じて入れ替え対象となるクライアントの台数が増加するため、運用環境の規模が大きくなるほど入替え作業に要する時間及び労力が大きくなり、作業要員の人為的ミスが生じる可能性が高くなる。
そのため、運用環境の規模が大きくなるほど、更新後のシステム全体での不整合が生じる危険が高くなる。
【０００７】
さらに、運用環境の規模が大きい場合、更新後のシステム全体での不整合が生じることによる顧客業務への影響範囲も大きくなり、入替え作業による障害が発生した場合、システム構築業者にとって顧客からの信用を失う度合も大きくなることにも繋がる。
【０００８】
そこで、複数台の端末とサーバとで構成されるシステムにおいて、各端末にインストールされているモジュールのバージョンをシステム全体で統一する技術として、特許文献１がある。特許文献１では、ネットワーク上のサーバによってクライアントマシンのプログラムのインストール処理およびバージョンアップ処理を自動的に行うことにより、クライアントのソフトウェアのインストール作業およびバージョンアップ作業の効率化を図る技術が開示されている。
【特許文献１】特開平１０−３１５９０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００９】
特許文献１では、ネットワーク上のサーバに全クライアントに適用するモジュールを格納し、さらに、ネットワーク上の全クライアントの情報を一元管理している。サーバで管理しているクライアントの情報としては、各クライアントに適用するモジュールのバージョン及びモジュールの格納場所等となる。そして、特許文献１の方法では、管理者の指示に基づくサーバの処理により、システムで利用される複数のクライアントに対してモジュールの適用が行われる。
【００１０】
このモジュールの適用処理は、サーバの処理により一元的に管理された情報に基づいて行なわれるため、クライアントの台数に応じてサーバの負荷が高くなるという問題があった。この問題に対応するために、従来は負荷に耐えうる性能を有したサーバを導入したり、または、一定期間内におけるサーバの処理においてモジュールの適用対象となるクライアントの台数に制限を設けることによりサーバの負荷を平滑化することがおこなわれてきた。前者の場合、システムの規模が大きくなるに従い、システムの保守作業のための設備費用も大きくなり、経済的に効率が良くなかった。また、後者の場合、保守作業を分割して行なうため、システムの規模が大きくなるに従い、システム全体の整合性を確保できるまでに多くの時間が必要となり、システムを利用する顧客業務への悪影響が生じる。
【００１１】
上記問題を解決する方法として、システムの利用開始に先立ってクライアントで使用するモジュールをダウンロードさせて動的に適用する方法がある。この方法では、クライアントで使用するモジュールを常に最新のバージョンに維持することが可能となり、サーバへの負荷を分散することも可能となる。
【００１２】
しかしながら、システム利用開始に先立って動的に適用する方法では、クライアント上の資源のセキュリティ確保のために、適用するモジュールで実現できる機能に制限を設けていたり、または、動的に適用可能とする利用者の権限に制限を設けることが行なわれている。そのため、実現できる機能に制限を設けないモジュールを適用する場合には、特定の権限を付与された利用者により、システムの利用準備を行なう必要がある。しかしながら、通常のシステム運用における一般利用者は、動的適用の実行を許可された権限を付与されていない。そのため、システムの利用開始に先立って動的に適用される方法であっても、各クライアントに対して、特定の権限を有した保守要員による入替え作業が必要となる。運用環境での検証が失敗に終わって再び試験環境に戻す場合や、運用環境での動作と試験環境での動作を比較したいときなども含めると、保守要員による入替え作業の工数は莫大なものとなる。
【００１３】
そこで、本発明は、モジュール更新時に保守要員による入替え作業を不要とするクライアントサーバシステムを提供することを目的とする。
【課題を解決するための手段】
【００１４】
本発明は、業務サービスを提供する計算機システムであって、前記業務サービスに適用するプログラムモジュールの識別子とバージョン情報を記述したバージョン設定ファイルを格納するバージョン設定ファイル格納部と、前記モジュールを格納する適用モジュールファイル格納部と、前記適用モジュールファイル格納部に格納された前記モジュールを蓄積する蓄積モジュールファイル格納部と、利用者識別子の入力を受け付ける利用者識別子受付部と、前記モジュールの識別子、バージョン情報及び前記蓄積モジュールファイル格納部上の格納場所を蓄積する蓄積モジュール一覧記憶部と、前記利用者識別子ごとに定義され、前記モジュールの識別子及び前記蓄積モジュールファイル格納部上の格納場所を記憶する利用者モジュール一覧記憶部と、前記バージョン設定ファイルに設定されたモジュールの識別子及びバージョン情報が前記蓄積モジュール一覧記憶部になければ前記適用モジュールファイル格納部から前記モジュールを取得し、前記蓄積モジュールファイル格納部に蓄積される前記モジュールに関する情報の更新を依頼する自動更新処理部と、前記自動更新処理部の依頼に基づいて、前記取得されたモジュールを前記蓄積モジュールファイル格納部に格納し、前記取得したモジュールの識別子、バージョン情報及び前記蓄積モジュールファイル格納部上の格納場所を前記蓄積モジュール一覧記憶部に登録し、前記モジュールの識別子及び前記蓄積モジュールファイル格納部上の格納場所を前記蓄積モジュール一覧記憶部から取得して前記利用者モジュール一覧記憶部に登録する更新代行処理部と、からなることを特徴とする。
【００１５】
また、本発明は、モジュール更新プログラムであって、クライアント端末に適用すべきプログラムモジュールを格納し、前記モジュールの識別子とバージョン情報を前記クライアント端末に通知するサーバに接続される前記クライアント端末を、利用者識別子の入力を受け付け、前記サーバから前記モジュールの識別子とバージョン情報の通知を受け取る利用者識別子受付部と、前記クライアント端末の管理者権限でのみ更新可能な領域に、前記モジュールの識別子とバージョン情報及び前記モジュールを格納する蓄積モジュールファイル格納部と、前記クライアント端末の管理者権限でのみ更新可能な領域に、前記モジュールの識別子、バージョン情報及び前記蓄積モジュールファイル格納部上の格納場所を蓄積する蓄積モジュール一覧記憶部と、前記利用者識別子ごとに定義され、前記モジュールの識別子及び前記蓄積モジュールファイル格納部上の格納場所を記憶する利用者モジュール一覧記憶部と、前記サーバから通知された前記モジュールの識別子及びバージョン情報が前記蓄積モジュール一覧記憶部になければ前記適用すべきモジュールを前記サーバから取得し、前記蓄積モジュールファイル格納部に蓄積される前記モジュールに関する情報の更新を依頼する自動更新処理部と、クライアント端末の管理者権限を有して動作し、前記自動更新処理部の依頼に基づいて、前記取得したモジュールを前記蓄積モジュールファイル格納部に格納し、前記取得したモジュールの識別子、バージョン情報及び前記蓄積モジュールファイル格納部上の格納場所を前記蓄積モジュール一覧記憶部に登録し、前記サーバから通知されたモジュールの識別子及び前記蓄積モジュールファイル格納部上の格納場所を前記蓄積モジュール一覧記憶部から取得して前記利用者モジュール一覧記憶部に登録する更新代行処理部として、機能させることを特徴とする。
【００１６】
また、本発明は、前記モジュール更新プログラムであって、前記クライアント端末をさらに、前記クライアント端末の管理者権限でのみ更新可能な領域に、前記蓄積モジュールファイル格納部に格納されている前記モジュールの識別子及び前記蓄積モジュールファイル格納部上の格納場所を記憶するモジュール一覧記憶部として機能させ、前記更新代行処理部は、さらに、前記自動更新処理部の依頼に基づいて、前記自動更新処理部が取得した前記モジュールを前記モジュール一覧記憶部に登録することを特徴とする。
【００１７】
また、本発明は、前記モジュール更新プログラムであって、前記自動更新処理部は、前記適用すべきモジュールをバックアップの不要なモジュールと判定したときは、前記サーバから通知された前記モジュールの識別子を有し、前記モジュール一覧記憶部に登録されているモジュールのバージョンと前記サーバから通知された前記モジュールのバージョン情報とを比較し、前記サーバから通知された前記モジュールのバージョン情報のほうが新しければ、前記適用すべきモジュールを前記サーバから取得するように前記クライアント端末を機能させることを特徴とする。
【００１８】
また、本発明は、前記モジュール更新プログラムであって、前記自動更新処理部は、前記サーバから通知された制御コードに基づいて、前記適用すべきモジュールがバックアップの必要なモジュールかバックアップの不要なモジュールかを判定するように前記クライアント端末を機能させることを特徴とする。
【発明の効果】
【００１９】
本発明では、非管理者権限を有する一般利用者であってもシステムの利用開始に先立って動的にモジュールの適用を行なうことが可能となり、また、異なるバージョンのモジュールを同時に実行することも可能となる。さらに、サーバから取得したモジュールが適用すべきバージョンであるかをクライアント端末にて確認することにより、間違ったバージョンの適用を防止することが可能となる。
【００２０】
以上より、モジュール更新時に保守要員による入替え作業が不要となり、人為的なミスによるシステム全体の不整合を抑止することが可能となる。さらに、同一のクライアント端末で異なるバージョンのモジュールを実行することができるため、検証作業におけるクライアント端末の台数を節約することが可能となる。
【発明を実施するための最良の形態】
【００２１】
以下、実施例を図面に基づいて説明する。
【実施例１】
【００２２】
本発明の実施形態を、図１を用いて以下に説明する。
【００２３】
図１は、本発明のシステムの構成の一実施例を示した図である。本発明のシステムは、サーバ100とネットワークを介して接続される１つ以上のクライアント200で構成されている。サーバ100は、Ｗｅｂサーバ101とバージョン設定ファイル102と画面構成ファイル103と適用モジュールファイル104を含んで構成されている。Ｗｅｂサーバ101、バージョン設定ファイル102、画面構成ファイル103、適用モジュールファイル104は必ずしも同一のサーバ上にある必要はないが、本実施例では同一のサーバ上にあるとして説明する。
【００２４】
バージョン設定ファイル102は、自動更新処理部202のバージョン情報、適用モジュールの数、各適用モジュールのバージョン情報等が格納されている。
【００２５】
クライアント200は、ブラウザ201と自動更新処理部202と更新代行処理部203と自己更新処理部204を含み、さらに、モジュール一覧205と蓄積モジュールファイル206と蓄積モジュール一覧207と利用者モジュール一覧208を含んで構成される。
【００２６】
ブラウザ201は、例えばＷｅｂブラウザであり、具体的にはHTTPプロトコルの送受信機能、及びＨＴＭＬ文書のレンダリング機能等を備えている。自動更新処理部202は、ブラウザ201からの依頼を受けてモジュールの更新処理を行う機能を備えており、ブラウザと同様に、利用者の権限と同じ権限で実行される。更新代行処理部203は自動更新処理部202の依頼を受けてクライアント端末上にモジュールを適用する機能を備えており、クライアントのオペレーティングシステムにより、クライアントの資源を管理する管理者と同じか又はそれ以上の権限で実行される。自己更新処理部204は、自動更新処理部202の依頼を受けて、自動更新処理部202及び更新代行処理部203の更新を行う機能を有する。
【００２７】
モジュール一覧205、蓄積モジュール一覧207、利用者モジュール一覧208には、クライアント200に保持されている既存のモジュールに関する情報が格納されている。
具体的には、図３に示すように、モジュールを一意に特定するモジュールＩＤ2051,2071,2081、モジュールの格納場所2052,2072,2082が格納されている。
【００２８】
モジュール一覧205、蓄積モジュール一覧207、利用者モジュール一覧208のモジュール格納場所2052,2072,2082で示される蓄積モジュールファイル206には、図４に示すようにモジュールＩＤ2061とバージョン情報2062、及びバイナリーデータ2063が格納されている。
【００２９】
次に、図２を用いてモジュール適用処理の流れを説明する。
まず、クライアント200のブラウザ201は、利用者の指示を受けてシステム利用開始画面の取得要求をサーバ100へ送信する（図２のＳ１０１）。サーバ100のWebサーバ101は、ネットワークを介して、クライアント200のシステム利用開始画面の取得要求を受信し、画面構成ファイル103からシステム利用開始画面ファイルを取得する（図２のＳ１０２）。
さらに、サーバ100のWebサーバ101は、取得したシステム利用開始画面ファイルをクライアント200へ返信する（図２のＳ１０３）。
【００３０】
クライアント200は、サーバ100より受信したシステム利用開始画面ファイルを解析し（図２のＳ１０４）、利用開始画面ファイル中に記述されているモジュールの初期化処理を実行する（図２のＳ１０５）。図６に示す画面構成ファイルの内容例は、利用開始画面ファイルの内容例を示したもので、<OBJECT>タグの属性CLASSIDで、使用するモジュールのモジュールＩＤを指定している（図６の1031）。また、<SCRIPT>タグでは、モジュールに実装されている処理を呼び出すコマンドが記述されている（図６の1032）。この例では、モジュールの初期化処理を実行する内容例が示されており、その引数としてバージョン設定ファイルを格納するサーバのＵＲＬが指定されている。
このとき、上述の画面構成ファイルを受信したブラウザは、<OBJECT>タグの属性CLASSIDで定義されているモジュールＩＤと一致する内容で登録されているモジュールをモジュール一覧205から取得し、<OBJECT>タグの属性IDで定義されている識別子（図６の例では"SYSTEM_START"）に取得したモジュールの関連付けを行なう。
上述の<SCRIPT>タグで記述されているコマンドの処理は、<OBJECT>タグで定義したモジュールに定義されており、ブラウザは、上述のモジュール一覧を参照することにより必要なモジュールを特定し、<SCRIPT>タグに記述されている処理を実行する。
【００３１】
図６に示す例では、<OBJECT>タグの属性ID｛xxxx-xxxx-0001｝でモジュール一覧205に登録されているモジュールの格納場所2052「/ddworks21/AutoUpdate/FDDAxUpd.ocx」に格納されているモジュールには、<SCRIPT>タグで記述されたコマンド「ExecActiveXCheck」の処理が定義されており、モジュール「/ddworks21/AutoUpdate/FDDAxUpd.ocx」に格納されているコマンドは引数「"http://www.system.ftk.fujitsu.co.jp/"」を受けて実行されることとなる。
なお、モジュール一覧205は、その内容を更新する際にクライアント端末の管理者権限を要するが、更新を伴わない参照のみであれば管理者権限を有さない一般利用者権限でも実行することが可能となっている。
【００３２】
モジュール初期化処理の実行指示を受けた自動更新処理部202は、バージョン設定ファイルの取得要求を、前述のシステム開始画面ファイルの1032で指定されたＵＲＬのサーバ100へ送信する（図２のＳ１０６）。
【００３３】
バージョン設定ファイルの取得要求を受信したサーバ100のWebサーバ101は、図示しない設定ファイルに定義された場所に格納されているバージョン設定ファイル102を取得し（図２のＳ１０７）、取得したバージョン設定ファイル102をクライアント200へ返信する（図２のＳ１０８）。
【００３４】
クライアント200は、サーバ100より受信したバージョン設定ファイル102を解析し（図２のＳ１０９）、自己バージョンチェック処理を行う（図２のＳ１１０）。
【００３５】
バージョン設定ファイル102の内容例を図５に示す。
図５のバージョン設定ファイル102は、自己バージョン情報102a（図5の例では[UpdaterVersion]より始まる定義体）と、適用モジュール一覧情報102b（図5の例ではModuleNum,Module[n]の定義体）と、モジュールバージョン情報102c（図5の例では[FDCFileCtl]より始まる定義体）が格納されている。
自動更新処理部202は、バージョン設定ファイルの自己バージョン情報102aで示される自己バージョン1022と、クライアント200の自動更新処理部及び更新代行処理部のバージョンとを比較し、更新が必要であると判定した場合には、自己更新処理部204により、自動更新処理部202及び更新代行処理部203の更新処理を行う。
【００３６】
上述の自己バージョンチェック処理の流れを図７に示す。
【００３７】
まず、バージョン設定ファイルより自己バージョン情報102aを取得し、取得した自己バージョン情報102aに指定されているバージョンと自動更新処理部及び更新代行処理部のモジュールのバージョンとを比較する（図７のＳ２００）。その結果、更新が不要の場合（図７のＳ２００でＹｅｓ）は何もせずに処理Ｓ１１１の実行に移る。
【００３８】
更新が必要であると判定した場合（図７のＳ２００でＮｏ）、自動更新処理部202は、バージョン設定ファイルの自己バージョン情報で指定されるダウンロードＵＲＬ1023（DownloadUrl）から自己モジュールのダウンロードを実行する（図７のＳ２０１、Ｓ２０２及びＳ２０３）。
【００３９】
自己モジュールをダウンロードした自動更新処理部202は、ダウンロードした自己モジュールに格納されているモジュールＩＤ2061及びバージョン情報2062と、既存の自動更新処理部及び更新代行処理部のモジュールに格納されているモジュールＩＤ及びバージョン設定ファイルの自己バージョン情報で指定されているバージョンとを比較し、一致していることを確認する（図７のＳ２０４）。
【００４０】
なお、自己バージョン情報102aの置換モードフラグ（ModeFlag）1026は、自己モジュールを適用する際の自動更新処理部の動作を制御する。
【００４１】
例えば、置換モードフラグ（ModeFlag）1026に「1」が設定されている場合、サーバから指定されるバージョンとクライアントに適用済みのバージョンとの一致性のみの判定を行なう。すなわち、サーバから指定されたバージョンよりクライアントのバージョンが新しくても、サーバから指定された古い方のバージョンをダウンロードすることになる。
【００４２】
また、置換モードフラグ（ModeFlag）1026に「0」が設定されている場合、サーバから指定されるバージョンとクライアントに適用済みのバージョンとの一致性のみならず、サーバから指定されるバージョンがクライアントのバージョンより新しいときに、サーバから指定された新しいバージョンをダウンロードすることになる。
【００４３】
上述の制御により、置換モードフラグ1026に「0」を設定しておくことで、適用すべきモジュールのバージョンを間違って古いものをサーバに格納した場合においても、サーバからモジュールの取得を行なうことなくクライアント端末上の最新のモジュールを維持することが可能となる。
【００４４】
また、適用したモジュールに障害が発生した場合に、置換モードフラグ1026に「1」を設定しておくことで、障害が起きていない以前のバージョンを各クライアント端末上に適用することが可能となり、モジュールの動作検証を行なう検証環境と検証済みのモジュールでの運用を行なう本番環境との切換を容易に行なうことができる。
【００４５】
ここで、ダウンロード後の自己モジュールのバージョンチェックを行なうことにより、サーバで格納しているバージョン設定ファイルの定義に誤りがあった場合、例えば、バージョン設定ファイルの自己バージョン情報で指定したバージョンと自己モジュールに格納されているバージョンとが整合しない場合（図７のＳ２０４でＮｏ）に、クライアントに間違ったバージョンの自己モジュールを適用することを未然に防ぐことができる。図７に示す例では、バージョン設定ファイルの自己バージョン情報で指定したバージョンと自己モジュールに格納されているバージョンとが整合しない場合（図７のＳ２０４でＮｏ）に、自動更新処理部202はサーバ100にエラー情報を送信し、エラー情報を受信したサーバ100のWebサーバ101は警告メッセージを画面に表示又は予め指定された管理者のメールアドレスへ警告メールを送信する（図７のＳ２０５）。
【００４６】
上述のダウンロード後の自己バージョンチェックで、ダウンロードした自己モジュールのバージョンが指定されたバージョンと一致する場合（図７のＳ２０４でＹｅｓ）、モジュールの適用を更新代行処理部203に依頼する（図７のＳ２０６）。依頼を受けた更新代行処理部203は、自己更新処理部204を起動する（図７のＳ２０７）。更新代行処理部203より起動指示を受けた自己更新処理部204は、更新代行処理部203と同じ権限で動作する（図７のＳ２０７’）。すなわち、自己更新処理部204は、クライアントの資源を管理する管理者権限を有する動作状態となり、同権限を有する更新代行処理部203の活動を停止させることが可能となる。上述の動作状態において、一般利用者権限で動作する自動更新処理部の活動を停止させることも可能である。
【００４７】
自己更新処理部204は、ブラウザ201を終了させ（図７のＳ２０８）、自動更新処理部202及び更新代行処理部203に対して、停止命令を通知する（図７のＳ２０９）。
停止命令を受けた自動更新処理部202及び更新代行処理部203は、自らが動作する権限と同一か又はそれ以上の権限を有して動作する自己更新処理部204からの停止命令を受理し、処理を停止する（図７のＳ２０９’）。
【００４８】
自動更新処理部202及び更新代行処理部203の停止を受けた自己更新処理部204は、自動更新処理部202及び更新代行処理部203のモジュールをダウンロードした自己モジュールで置き換える（図７のＳ２１０）。
【００４９】
次に、自己更新処理部204は、置換え後のモジュールを用いて、自動更新処理部202及び更新代行処理部203を再起動させる（図７のＳ２１１、Ｓ２１１’）。
その際、自動更新処理部202は利用者の権限で実行し、更新代行処理部203は自己更新処理部204と同じ権限で実行させる。
【００５０】
自動更新処理部202及び更新代行処理部203が正常に起動したのを受けて、自己更新処理部204は、ブラウザ201を起動し（図７のＳ２１２）、ブラウザ201にモジュール適用処理の再実行を命令した（図７のＳ２１３）のち、処理を終了する。
【００５１】
以上が、自己バージョンチェック処理の流れとなる。
【００５２】
次に、自動更新処理部202は、適用モジュールがバックアップを必要とするモジュールかどうかをチェックする（図２のＳ１１１）。
【００５３】
まず、自動更新処理部202は、適用モジュール一覧情報102bで指定されるモジュール数1027（ModuleNum）により適用すべきモジュールの数を取得し、適用モジュール情報名(Module[n])1028を取得する。すなわち、モジュール数1027で指定された数だけ適用モジュール情報名が定義されている。
【００５４】
自動更新処理部202は、取得した適用モジュール情報名1028と一致するモジュール情報名1029を有するモジュール情報102cを取得し、取得したモジュール情報102cで指定される置換モードフラグ（ModeFlag）1034を取得することによりバックアップの必要性を判断する。
【００５５】
例えば、置換モードフラグ1034に「１」が設定されている場合にはバックアップが必要と判断し、「０」が設定されている場合にはバックアップ不要と判断する。
【００５６】
バックアップ不要の場合（図２のＳ１１１でＮｏ）には、次に、適用モジュールの指定されたバージョンと蓄積モジュールファイル206に格納された同一モジュールのバージョンとを比較する（図２のＳ１１２）。
【００５７】
自動更新処理部202は、取得した適用モジュール情報名1028と一致するモジュール情報名1029を有するモジュール情報102cを取得し、取得したモジュール情報102cで指定されるモジュールＩＤ1032（CLSID）と一致するモジュールＩＤ2051に対応付けて登録されているモジュール格納場所2052をモジュール一覧205より取得する。
さらに、モジュール格納場所2052で特定される蓄積モジュールファイル206よりバージョン情報2062を取得し、バージョン設定ファイルで指定されるモジュール情報102cのバージョン情報1030と比較する。
【００５８】
バージョン設定ファイルで指定されるモジュールＩＤ1032（CLSID）と一致するモジュールＩＤ2051のモジュールが蓄積モジュールファイル206に存在しない場合を含め、バージョン設定ファイルで指定されるモジュール情報102cのバージョン情報1030のほうが新しければ（図２のＳ１１２でＹｅｓ）、自動更新処理部202は、バージョン設定ファイル102のモジュール情報102cで指定されるダウンロードＵＲＬ1031（DownloadUrl）から適用モジュールのダウンロードを実行する（図２のＳ１１３、Ｓ１１４及びＳ１１５）。
適用モジュールをダウンロードした自動更新処理部202は、適用モジュールに格納されているモジュールＩＤ及びバージョン情報と、バージョン設定ファイルのモジュール情報で指定されるモジュールＩＤ及びバージョン情報とを比較し、一致していることを確認する（図２のＳ１１６）。
【００５９】
ここでダウンロード後の適用モジュールのバージョンチェックを行なうことにより、サーバで格納しているバージョン設定ファイルの定義に誤りがあった場合、例えば、バージョン設定ファイルのモジュール情報で指定したバージョンとモジュールに格納されているバージョンとが整合しない場合（図２のＳ１１６でＮｏ）に、クライアントに間違ったバージョンのモジュールを適用することを未然に防ぐことができる。
【００６０】
図２に示す例では、バージョン設定ファイルのモジュール情報で指定したバージョンとモジュールに格納されているバージョンとが整合しない場合（図２のＳ１１６でＮｏ）に、自動更新処理部202はサーバ100にエラー情報を送信し、エラー情報を受信したサーバ100のWebサーバ101は警告メッセージを画面に表示又は予め指定された管理者のメールアドレスへ警告メールを送信する（図２のＳ１１７）。
【００６１】
上述のダウンロード後のバージョンチェックで、ダウンロードしたモジュールのバージョンが指定されたバージョンと一致する場合（図２のＳ１１６でＹｅｓ）、自動更新処理部202は、更新代行処理部203にモジュールの格納を依頼する（図２のＳ１１８）。更新代行処理部203はモジュールを蓄積モジュールファイル206に格納し、モジュール一覧205に登録する（図２のＳ１１９）。このとき、指定されたモジュールＩＤと同一のモジュールＩＤを持つモジュールが蓄積モジュールファイル206に存在すれば、このモジュールは削除され、新しいモジュールが格納される。また、指定されたモジュールＩＤと同一のモジュールＩＤ2051を持つモジュール情報がモジュール一覧205に既に登録されていれば、格納場所2052が書き換えられる。
【００６２】
これらの処理により、たとえば下位互換性のあるモジュールを適用する場合には、バックアップ不要の扱いとし、最新版のみを保持しておくことによって、古いモジュールを指定されても新たにダウンロードすることなく業務サービスを受けることができる。
【００６３】
このあと、ブラウザ201が業務システムのシステム利用開始画面を表示して、業務システムの利用が開始される（図２の１３２）。
【００６４】
バージョンが同じあるいは、バージョン設定ファイルで指定されるモジュール情報102cのバージョン情報1030のほうが古ければ（図２のＳ１１２でＮｏ）、更新の必要なしとして更新処理を終了し、ブラウザ201が業務システムのシステム利用開始画面を表示して、業務システムの利用が開始される（図２の１３２）。
【００６５】
バックアップが必要な場合（図２のＳ１１１でＹｅｓ）、自動更新処理部202は、蓄積モジュール一覧207にバックアップが存在するかどうかをチェックする（図２のＳ１２０）。
【００６６】
自動更新処理部202は、バージョン設定ファイルで指定されるモジュール情報102cのモジュールＩＤ1032（CLSID）と一致するモジュールＩＤ2071に対応付けて登録されているモジュール格納場所2072を蓄積モジュール一覧207より取得する。さらに、モジュール格納場所2072で特定される蓄積モジュールファイル206よりバージョン情報2062を取得し、バージョン設定ファイルで指定されるモジュール情報102cのバージョン情報1030と一致すれば（図２のＳ１２０でＹｅｓ）、これを適用するように更新代行処理部203に依頼する（図２のＳ１３０）。更新代行処理部203は蓄積モジュール一覧207からこのモジュールのモジュールＩＤ2071及び格納場所2072を利用者モジュール一覧208にコピーし、モジュールＩＤ2081及び格納場所2082として登録する（図２のＳ１３１）。このあと、ブラウザ201が業務システムのシステム利用開始画面を表示して、業務システムの利用が開始される（図２の１３２）。
【００６７】
バックアップ済みでない場合（図２のＳ１２０でＮｏ）、すなわち、バージョン設定ファイルで指定されるモジュール情報102cのモジュールＩＤ1032（CLSID）と一致するモジュールＩＤ2071が蓄積モジュール一覧207に存在しない場合、あるいは、バージョン設定ファイルで指定されるモジュール情報102cのモジュールＩＤ1032（CLSID）と一致するモジュールＩＤ2071が蓄積モジュール一覧207に存在するが、対応する格納場所2072にある蓄積モジュールファイルのバージョン情報2062がバージョン設定ファイルで指定されるモジュール情報102cのバージョン情報1030と一致しない場合、自動更新処理部202は、バージョン設定ファイル102のモジュール情報102cで指定されるダウンロードＵＲＬ1031（DownloadUrl）から適用モジュールのダウンロードを実行する（図２のＳ１２１、Ｓ１２２及びＳ１２３）。
【００６８】
適用モジュールをダウンロードした自動更新処理部202は、適用モジュールに格納されているモジュールＩＤ及びバージョン情報と、バージョン設定ファイルのモジュール情報で指定されるモジュールＩＤ及びバージョン情報とを比較し、一致していることを確認する（図２のＳ１２４）。
【００６９】
ここでダウンロード後の適用モジュールのバージョンチェックを行なうことにより、サーバで格納しているバージョン設定ファイルの定義に誤りがあった場合、例えば、バージョン設定ファイルのモジュール情報で指定したバージョンとモジュールに格納されているバージョンとが整合しない場合（図２のＳ１２４でＮｏ）に、クライアントに間違ったバージョンのモジュールを適用することを未然に防ぐことができる。
【００７０】
図２に示す例では、バージョン設定ファイルのモジュール情報で指定したバージョンとモジュールに格納されているバージョンとが整合しない場合（図２のＳ１２４でＮｏ）に、自動更新処理部202はサーバ100にエラー情報を送信し、エラー情報を受信したサーバ100のWebサーバ101は警告メッセージを画面に表示又は予め指定された管理者のメールアドレスへ警告メールを送信する（図２のＳ１２５）。
【００７１】
ダウンロードしたモジュールのバージョンが指定されたバージョンと一致する場合（図２のＳ１２４でＹｅｓ）、自動更新処理部202は、更新代行処理部203にモジュールの格納を依頼する（図２のＳ１２６）。更新代行処理部203はモジュールを蓄積モジュールファイル206に格納し、モジュール一覧205に登録する（図２のＳ１２７）。このとき、指定されたモジュールＩＤと同一のモジュールＩＤを持つモジュールが蓄積モジュールファイル206に存在しても、このモジュールは削除されず、新しいモジュールが追加格納される。また、指定されたモジュールＩＤと同一のモジュールＩＤ2051を持つモジュール情報がモジュール一覧205に既に登録されていれば、格納場所2052が書き換えられる。
【００７２】
続いて、自動更新処理部202は、適用モジュールのバックアップを更新代行処理部203に依頼する（図２のＳ１２８）。バックアップ依頼を受けた更新代行処理部203は、モジュール一覧205から適用モジュールのモジュールＩＤ2051、格納場所2052を蓄積モジュール一覧207にコピーしてモジュールＩＤ2071、格納場所2072とし、さらに、格納場所2072に存在する蓄積モジュールファイル206のバージョン情報2062を蓄積モジュール一覧207にコピーしてバージョン情報2073とし、これらを追加登録する（図２のＳ１２９）。
【００７３】
自動更新処理部202はさらにモジュールの適用を更新代行処理部203に依頼する（図２のＳ１３０）。適用依頼を受けた更新代行処理部203は、蓄積モジュール一覧207から適用モジュールのモジュールＩＤ2071、格納場所2072を利用者モジュール一覧208にコピーし、モジュールＩＤ2081、格納場所2082として登録する（図２のＳ１３１）。
【００７４】
これらの処理により、たとえば下位互換性のないモジュールを適用する場合には、バックアップ必要の扱いとし、各バージョンのモジュールを蓄積することによって、異なるバージョンのモジュールを指定されるたびに新たにダウンロードすることなく業務サービスを受けることができる。
【００７５】
さらに、バックアップ不要のときに、蓄積モジュール一覧207にはバックアップをとっておく運用としてもよい。この場合、たとえば、蓄積モジュールファイル206には最新バージョンだけを置き、蓄積モジュール一覧207の同一モジュールＩＤの各バージョンの格納場所はすべて最新バージョンの格納場所とする。こうすることにより、後日、このモジュールの下位互換性を保証しなくなったとしても、旧バージョンのモジュールがバックアップされており、特別の措置をとらなくとも、引き続きサービスを利用することができる。
【００７６】
なお、モジュール一覧205、蓄積モジュールファイル206、及び蓄積モジュール一覧207は特定の権限を有したプロセスのみ更新可能とする記憶領域に配置され、例えば一般ユーザ権限で実行されているユーザアプリケーションのプロセスでは更新することができない。上述の更新代行処理部203は、クライアントのオペレーティングシステムにより、クライアントの利用者の権限のいかんにかかわらずに、モジュール一覧205、蓄積モジュール一覧207、及び利用者モジュール一覧208を更新可能とする権限を有して実行される。そのため、クライアントの利用者が一般ユーザ権限であっても、モジュール一覧205、及び蓄積モジュール一覧207が更新可能となり、利用者の権限に関係なくモジュール適用を動的に行なうことが可能となる。特に、通常の利用者は、一般利用者権限でクライアントを利用するため、システムを利用する際のモジュールの更新に対する権限を有していない場合が多い。
しかし、上述の更新代行処理部により、一般利用者権限でのクライアントの利用を継続したまま、クライアント環境の整備が自動的に実行でき、利用者の負荷が大幅に軽減されるとともに、更新漏れの防止にもなり、品質向上につながる。
【００７７】
上述のモジュールの適用処理が終了した後、クライアント200のブラウザ201は、業務システムのシステム利用開始画面を表示して、業務システムの利用が開始される（図２の１３２）。業務システムの利用が開始されると、クライアント200のオペレーティングシステムは実行すべき業務モジュールをブラウザ201の利用者用に定義された利用者モジュール一覧208で検索し、実行する。必要な業務モジュールが利用者モジュール一覧208で見つからない場合には、モジュール一覧205で検索し、実行する。
【００７８】
なお、上述の実施例では、更新対象をモジュールの場合としたが、各種定義体であっても良い。定義体としては、例えば、帳票定義体、表計算やワープロソフトなどのＯＡソフトにおけるテンプレート等が考えられる。この場合、従来技術では表計算やワープロなどのＯＡソフトにおけるテンプレートに値を埋めて帳票形式にしたものをクライアントに送信していたが、各種定義体やテンプレートは事前に置き換えられているため、クライアントへの送信はデータ（値）のみとなり、ネットワーク上のトラフィック量を軽減することが可能となる。
【００７９】
上述のように、本実施例により、モジュール更新時に保守要員による入替え作業を不要となり、人為的なミスによるシステム全体の不整合を抑止することが可能となる。さらに、同一のクライアント端末で異なるバージョンのモジュールを実行することができるため、検証作業におけるクライアント端末の台数を節約することが可能となる。
（付記１）上記実施例１を含む実施形態に関し、更に以下の付記１を開示する。
【００８０】
業務サービスを提供する計算機システムであって、前記業務サービスに適用するプログラムモジュールの識別子とバージョン情報を記述したバージョン設定ファイルを格納するバージョン設定ファイル格納部と、前記モジュールを格納する適用モジュールファイル格納部と、前記適用モジュールファイル格納部に格納された前記モジュールを蓄積する蓄積モジュールファイル格納部と、利用者識別子の入力を受け付ける利用者識別子受付部と、前記モジュールの識別子、バージョン情報及び前記蓄積モジュールファイル格納部上の格納場所を蓄積する蓄積モジュール一覧記憶部と、前記利用者識別子ごとに定義され、前記モジュールの識別子及び前記蓄積モジュールファイル格納部上の格納場所を記憶する利用者モジュール一覧記憶部と、前記バージョン設定ファイルに設定されたモジュールの識別子及びバージョン情報が前記蓄積モジュール一覧記憶部になければ前記適用モジュールファイル格納部から前記モジュールを取得し、前記蓄積モジュールファイル格納部に蓄積される前記モジュールに関する情報の更新を依頼する自動更新処理部と、前記自動更新処理部の依頼に基づいて、前記取得されたモジュールを前記蓄積モジュールファイル格納部に格納し、前記取得したモジュールの識別子、バージョン情報及び前記蓄積モジュールファイル格納部上の格納場所を前記蓄積モジュール一覧記憶部に登録し、前記モジュールの識別子及び前記蓄積モジュールファイル格納部上の格納場所を前記蓄積モジュール一覧記憶部から取得して前記利用者モジュール一覧記憶部に登録する更新代行処理部と、からなることを特徴とする計算機システム。
（付記２）上記実施例１を含む実施形態に関し、更に以下の付記２を開示する。
【００８１】
クライアント端末に適用すべきプログラムモジュールを格納し、前記モジュールの識別子とバージョン情報を前記クライアント端末に通知するサーバに接続される前記クライアント端末を、利用者識別子の入力を受け付け、前記サーバから前記モジュールの識別子とバージョン情報の通知を受け取る利用者識別子受付部と、前記クライアント端末の管理者権限でのみ更新可能な領域に、前記モジュールの識別子とバージョン情報及び前記モジュールを格納する蓄積モジュールファイル格納部と、前記クライアント端末の管理者権限でのみ更新可能な領域に、前記モジュールの識別子、バージョン情報及び前記蓄積モジュールファイル格納部上の格納場所を蓄積する蓄積モジュール一覧記憶部と、前記利用者識別子ごとに定義され、前記モジュールの識別子及び前記蓄積モジュールファイル格納部上の格納場所を記憶する利用者モジュール一覧記憶部と、前記サーバから通知された前記モジュールの識別子及びバージョン情報が前記蓄積モジュール一覧記憶部になければ前記適用すべきモジュールを前記サーバから取得し、前記蓄積モジュールファイル格納部に蓄積される前記モジュールに関する情報の更新を依頼する自動更新処理部と、クライアント端末の管理者権限を有して動作し、前記自動更新処理部の依頼に基づいて、前記取得したモジュールを前記蓄積モジュールファイル格納部に格納し、前記取得したモジュールの識別子、バージョン情報及び前記蓄積モジュールファイル格納部上の格納場所を前記蓄積モジュール一覧記憶部に登録し、前記サーバから通知されたモジュールの識別子及び前記蓄積モジュールファイル格納部上の格納場所を前記蓄積モジュール一覧記憶部から取得して前記利用者モジュール一覧記憶部に登録する更新代行処理部として、機能させることを特徴とするモジュール更新プログラム。
（付記３）上記実施例１を含む実施形態に関し、更に以下の付記３を開示する。
【００８２】
付記２に記載のモジュール更新プログラムであって、前記クライアント端末をさらに、前記クライアント端末の管理者権限でのみ更新可能な領域に、前記蓄積モジュールファイル格納部に格納されている前記モジュールの識別子及び前記蓄積モジュールファイル格納部上の格納場所を記憶するモジュール一覧記憶部として機能させ、前記更新代行処理部は、さらに、前記自動更新処理部の依頼に基づいて、前記自動更新処理部が取得した前記モジュールを前記モジュール一覧記憶部に登録することを特徴とするモジュール更新プログラム。
（付記４）上記実施例１を含む実施形態に関し、更に以下の付記４を開示する。
【００８３】
付記３に記載のモジュール更新プログラムであって、前記自動更新処理部は、前記適用すべきモジュールをバックアップの不要なモジュールと判定したときは、前記サーバから通知された前記モジュールの識別子を有し、前記モジュール一覧記憶部に登録されているモジュールのバージョンと前記サーバから通知された前記モジュールのバージョン情報とを比較し、前記サーバから通知された前記モジュールのバージョン情報のほうが新しければ、前記適用すべきモジュールを前記サーバから取得するように前記クライアント端末を機能させることを特徴とするモジュール更新プログラム。
（付記５）上記実施例１を含む実施形態に関し、更に以下の付記５を開示する。
【００８４】
付記４に記載のモジュール更新プログラムであって、前記自動更新処理部は、前記サーバから通知された制御コードに基づいて、前記適用すべきモジュールがバックアップの必要なモジュールかバックアップの不要なモジュールかを判定するように前記クライアント端末を機能させることを特徴とするモジュール更新プログラム。
（付記６）上記実施例１を含む実施形態に関し、更に以下の付記６を開示する。
付記２乃至５に記載のモジュール更新プログラムであって、前記自動更新処理部は、前記サーバから取得したモジュールの識別子及びバージョンと、前記サーバから通知されたモジュールの識別子及びバージョンとの整合性を確認し、整合しないときには、前記サーバへ警告を通知するとともに、前記サーバから取得したモジュールの登録を行なわないように前記クライアント端末を機能させることを特徴とするモジュール更新プログラム。
（付記７）上記実施例１を含む実施形態に関し、更に以下の付記７を開示する。
【００８５】
付記２乃至６に記載のモジュール更新プログラムであって、前記クライアント端末をさらに、前記更新代行処理部と同じ権限で動作し、前記自動更新処理部及び前記更新代行処理部の実行を停止させ、前記自動更新処理部及び前記更新代行処理部のモジュールを更新し、前記更新後のモジュールを用いて前記自動更新処理部及び前記更新代行処理部を再起動させる自己更新処理部として前記クライアント端末を機能させ、前記自動更新処理部は、さらに、前記サーバから通知されたモジュール更新プログラムのバージョンと、前記モジュール一覧記憶部に登録されているモジュール更新プログラムのバージョンとを比較し、更新が必要であると判定したときは、前記サーバから通知されたモジュール更新プログラムのモジュールを前記サーバから取得することを特徴とするモジュール更新プログラム。
（付記８）上記実施例１を含む実施形態に関し、更に以下の付記８を開示する。
【００８６】
付記７に記載のモジュール更新プログラムであって、前記自動更新処理部は、前記サーバから通知された制御コードに基づいて、前記サーバから通知されたモジュール更新プログラムのバージョンが前記モジュール一覧記憶部に登録されているモジュール更新プログラムのバージョンより新しいときにのみ更新するか、前記サーバから通知されたモジュール更新プログラムのバージョンが前記モジュール一覧記憶部に登録されているモジュール更新プログラムのバージョンと一致しないときに更新するかを、切り換えて動作するように前記クライアント端末を機能させることを特徴とするモジュール更新プログラム。
（付記９）上記実施例１を含む実施形態に関し、更に以下の付記９を開示する。
【００８７】
クライアント端末に適用すべきプログラムモジュールを格納し、前記モジュールの識別子とバージョン情報を前記クライアント端末に通知するサーバに接続される前記クライアント端末であって、利用者識別子の入力を受け付け、前記サーバから前記モジュールの識別子とバージョン情報の通知を受け取る利用者識別子受付部と、前記クライアント端末の管理者権限でのみ更新可能な領域に、前記モジュールの識別子とバージョン情報及び前記モジュールを格納する蓄積モジュールファイル格納部と、前記クライアント端末の管理者権限でのみ更新可能な領域に、前記モジュールの識別子、バージョン情報及び前記蓄積モジュールファイル格納部上の格納場所を蓄積する蓄積モジュール一覧記憶部と、前記利用者識別子ごとに定義され、前記モジュールの識別子及び前記蓄積モジュールファイル格納部上の格納場所を記憶する利用者モジュール一覧記憶部と、前記サーバから通知された前記モジュールの識別子及びバージョン情報が前記蓄積モジュール一覧記憶部になければ前記適用すべきモジュールを前記サーバから取得し、前記蓄積モジュールファイル格納部に蓄積される前記モジュールに関する情報の更新を依頼する自動更新処理部と、クライアント端末の管理者権限を有して動作し、前記自動更新処理部の依頼に基づいて、前記取得したモジュールを前記蓄積モジュールファイル格納部に格納し、前記取得したモジュールの識別子、バージョン情報及び前記蓄積モジュールファイル格納部上の格納場所を前記蓄積モジュール一覧記憶部に登録し、前記サーバから通知されたモジュールの識別子及び前記蓄積モジュールファイル格納部上の格納場所を前記蓄積モジュール一覧記憶部から取得して前記利用者モジュール一覧記憶部に登録する更新代行処理部と、からなることを特徴とするクライアント端末。
（付記１０）上記実施例１を含む実施形態に関し、更に以下の付記１０を開示する。
【００８８】
付記９に記載のクライアント端末であって、さらに、前記クライアント端末の管理者権限でのみ更新可能な領域に、前記蓄積モジュールファイル格納部に格納されている前記モジュールの識別子及び前記蓄積モジュールファイル格納部上の格納場所を記憶するモジュール一覧記憶部を有し、前記更新代行処理部は、さらに、前記自動更新処理部の依頼に基づいて、前記自動更新処理部が取得した前記モジュールを前記モジュール一覧記憶部に登録することを特徴とするクライアント端末。
（付記１１）上記実施例１を含む実施形態に関し、更に以下の付記１１を開示する。
【００８９】
付記１０に記載のクライアント端末であって、前記自動更新処理部は、前記適用すべきモジュールをバックアップの不要なモジュールと判定したときは、前記サーバから通知された前記モジュールの識別子を有し、前記モジュール一覧記憶部に登録されているモジュールのバージョンと前記サーバから通知された前記モジュールのバージョン情報とを比較し、前記サーバから通知された前記モジュールのバージョン情報のほうが新しければ、前記適用すべきモジュールを前記サーバから取得することを特徴とするクライアント端末。
（付記１２）上記実施例１を含む実施形態に関し、更に以下の付記１２を開示する。
【００９０】
付記１１に記載のクライアント端末であって、前記自動更新処理部は、前記サーバから通知された制御コードに基づいて、前記適用すべきモジュールがバックアップの必要なモジュールかバックアップの不要なモジュールかを判定することを特徴とするクライアント端末。
（付記１３）上記実施例１を含む実施形態に関し、更に以下の付記１３を開示する。
付記９乃至１２に記載のクライアント端末であって、前記自動更新処理部は、前記サーバから取得したモジュールの識別子及びバージョンと、前記サーバから通知されたモジュールの識別子及びバージョンとの整合性を確認し、整合しないときには、前記サーバへ警告を通知するとともに、前記サーバから取得したモジュールの登録を行なわないことを特徴とするクライアント端末。
（付記１４）上記実施例１を含む実施形態に関し、更に以下の付記１４を開示する。
【００９１】
付記９乃至１３に記載のクライアント端末であって、さらに、前記更新代行処理部と同じ権限で動作し、前記自動更新処理部及び前記更新代行処理部の実行を停止させ、前記自動更新処理部及び前記更新代行処理部のモジュールを更新し、前記更新後のモジュールを用いて前記自動更新処理部及び前記更新代行処理部を再起動させる自己更新処理部を有し、前記自動更新処理部は、さらに、前記サーバから通知されたモジュール更新プログラムのバージョンと、前記モジュール一覧記憶部に登録されているモジュール更新プログラムのバージョンとを比較し、更新が必要であると判定したときは、前記サーバから通知されたモジュール更新プログラムのモジュールを前記サーバから取得することを特徴とするクライアント端末。
（付記１５）上記実施例１を含む実施形態に関し、更に以下の付記１５を開示する。
【００９２】
付記１４に記載のクライアント端末であって、前記自動更新処理部は、前記サーバから通知された制御コードに基づいて、前記サーバから通知されたモジュール更新プログラムのバージョンが前記モジュール一覧記憶部に登録されているモジュール更新プログラムのバージョンより新しいときにのみ更新するか、前記サーバから通知されたモジュール更新プログラムのバージョンが前記モジュール一覧記憶部に登録されているモジュール更新プログラムのバージョンと一致しないときに更新するかを、切り換えて動作することを特徴とするクライアント端末。
【図面の簡単な説明】
【００９３】
【図１】本発明によるシステムの構成の一実施形態を示す図
【図２】モジュール適用処理の流れを示すフローチャート
【図３】モジュール一覧、蓄積モジュール一覧、及び利用者モジュール一覧の内容例を示す図
【図４】蓄積モジュールファイルの内容例を示す図
【図５】バージョン設定ファイルの内容例を示す図
【図６】画面構成ファイルの内容例を示す図
【図７】自己バージョンチェック処理の流れを示すフローチャート
【符号の説明】
【００９４】
１００：  サーバ
１０１：  Ｗｅｂサーバ
１０２：  バージョン設定ファイル
１０３：  画面構成ファイル
１０４：  適用モジュールファイル
２００：  クライアント
２０１：  ブラウザ
２０２：  自動更新処理部
２０３：  更新代行処理部
２０４：  自己更新処理部
２０５：  モジュール一覧
２０５１、２０６１、２０７１、２０８１：  モジュールＩＤ
２０５２、２０７２、２０８２：  格納場所
２０６：  蓄積モジュールファイル
２０６２、２０７３：  バージョン情報
２０６３：  バイナリデータ
２０７：  蓄積モジュール一覧
２０８：  利用者モジュール一覧
【図１】
2007011645.tif 000003
【図２】
2007011645.tif 000004
【図３】
2007011645.tif 000005
【図４】
2007011645.tif 000006
【図５】
2007011645.tif 000007
【図６】
2007011645.tif 000008
【図７】
2007011645.tif 000009