(57)【要約】【課題】生産を開始する際に，生産に必要なアプリケーションが最新版であることを保証できるアプリケーション更新管理システムを提供する。【解決手段】クライアント装置１２には，起動管理するアプリケーション１２２のリストであるアプリケーションリストを保持し，アプリケーションリストに含まれるアプリケーション１２２の起動を管理するコンピュータプログラムであるランチャー１２０がインストールされている。ランチャー１２０は，アプリケーション１２２を起動する処理を実行する前に，管理装置１０を利用して，起動するアプリケーション１２２が最新版であるか確認し，最新版でない場合，最新版へ更新するためのアプリケーション更新プログラムをデータベースサーバ１１から取得して，アプリケーション１２２の更新を実行することで，起動するアプリケーション１２２を最新版に更新する。【選択図】図１
2011128827.tif 000002
【特許請求の範囲】
【請求項１】
起動管理するアプリケーションのアプリケーションリストを保持し，前記アプリケーションリストの中から選択された前記アプリケーションを起動させるランチャーが実装されたクライアント装置と，前記アプリケーションを更新するためのアプリケーション更新プログラム及び最新版の前記アプリケーションのバージョンが示されたアプリケーション更新情報を前記アプリケーション毎に記憶している管理装置とから，少なくとも構成されるアプリケーション更新管理システムであって，
前記クライアント装置に実装されている前記ランチャーは，前記アプリケーションを起動させる際に，起動する前記アプリケーションの前記アプリケーション更新情報を前記管理装置から取得し，起動する前記アプリケーションと前記アプリケーション更新情報のバージョンが異なる場合，起動する前記アプリケーションに対応する前記アプリケーション更新プログラムを前記管理装置から取得して前記アプリケーションを更新した後，前記アプリケーションを起動させることを特徴とするアプリケーション更新管理システム。
【請求項２】
前記管理装置は，管理者側で設定した前記アプリケーションリストである管理リストを前記クライアント装置毎に記憶し，更に，前記アプリケーションを前記クライアント装置にインストールするインストーラを前記アプリケーション毎に記憶し，
前記ランチャーは起動すると，前記ランチャーが起動している前記クライアント装置に対応する前記管理リストを前記管理装置から取得し，該管理リストに基づいて前記アプリケーションリストを更新する処理を実行した後，起動する前記アプリケーションが前記クライアント装置にインストールされていない場合，起動する前記アプリケーションの前記インストーラを前記管理装置から取得して前記アプリケーションをインストールすることを特徴とする，請求項１に記載のアプリケーション更新管理システム。
【請求項３】
前記管理装置が記憶している前記管理リストには，強制インストールが要求されている前記アプリケーションが示され，前記ランチャーは，前記ランチャーを起動させる前に，強制インストールが要求されている前記アプリケーションが前記アプリケーションリストに含まれていない場合，強制インストールが要求されている前記アプリケーションの前記インストーラを前記管理装置から取得して該アプリケーションをインストールすることを特徴とする，請求項２に記載のアプリケーション更新管理システム。
【請求項４】
前記管理装置は，最新版の前記ランチャーのバージョンが示されたランチャー更新情報と，最新版へ前記ランチャーを更新するためのランチャー更新プログラムを記憶し，
前記クライアント装置には前記ランチャーを起動管理する前記ランチャー起動プログラムがインストールされ，前記ランチャー起動プログラムは，前記ランチャーを起動させる際に，前記ランチャー更新情報を前記管理装置から取得し，起動する前記ランチャーと前記ランチャー更新情報のバージョンが異なる場合，前記ランチャー更新プログラムを前記管理装置から取得して前記ランチャーを更新した後，前記ランチャーを起動させることを特徴とする，請求項１から請求項３のいずれか一つに記載のアプリケーション更新管理システム。
【請求項５】
前記管理装置は，前記クライアント装置に設定されたグループ毎に前記管理リストを記憶し，前記クライアント装置の前記管理リストを，前記クライアント装置が属する前記グループの前記管理リストに合わせる処理を実行する管理モジュールを備えていることを特徴とする，請求項２から請求項４のいずれか一つに記載のアプリケーション更新管理システム。
【請求項６】
起動管理するアプリケーションのアプリケーションリストを保持し，前記アプリケーションリストの中から選択された前記アプリケーションを起動させるコンピュータプログラムであって，起動する前記アプリケーションが選択されたことを検知するステップａ，ネットワーク上の装置から，起動する前記アプリケーションの最新版のバージョンが示されたアプリケーション更新情報を取得するステップｂ，起動する前記アプリケーションと前記アプリケーション更新情報のバージョンが異なる場合，起動する前記アプリケーションに対応する前記アプリケーション更新プログラムを前記装置から取得して該アプリケーションを更新した後，前記ステップaで選択された前記アプリケーションを起動するステップｃ，をコンピュータに実行させるためのコンピュータプログラム。
【請求項７】
前記ステップａの前に，管理者側で設定した前記アプリケーションリストである管理リストを前記装置から取得し，前記管理リストに基づいて前記アプリケーションリストを更新するステップａ１を実行し，
前記ステップａの後に，起動するアプリケーションがインストールされていない場合，起動する前記アプリケーションの前記インストーラを前記装置から取得して該アプリケーションをインストールするステップｂ１を実行した後に，前記ステップｃを実行することを特徴とする，請求項６に記載のコンピュータプログラム。
【請求項８】
ステップａ１において，強制インストールが要求されている前記アプリケーションが管理リストに含まれ，更に，該アプリケーションがインストールされていない場合，強制インストールが要求されている前記アプリケーションのインストーラを前記装置から取得して前記アプリケーションをインストールすることを特徴とする，請求項７に記載のコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は，アプリケーションの更新を管理するための技術に関する。
【背景技術】
【０００２】
生産設備が設置される工場にイントラネットが構築され，生産設備や事務所などに接続されたコンピュータを一元管理するためのサーバ装置を工場のイントラネット上に設け，このサーバ装置を利用して，工場内に設置するコンピュータを集中管理できるようになった。
【０００３】
工場の生産設備や事務所に接続されたコンピュータには，生産に必要な様々なアプリケーションがインストールされ，汎用のコンピュータに実装されたコンピュータプログラム（例えば，オペレーティングシステム）と同様に，これらのアプリケーションの更新の管理も必要となる。
【０００４】
実際に，複数のコンピュータに同じアプリケーションが実装されている場合，何らかの不具合や仕様修正に対応する更新を実行していないコンピュータがあれば，このコンピュータで生産した場合に何らかの不具合が発生しまう。
【０００５】
コンピュータにインストールされたアプリケーションを更新する発明に関しては，既に様々な発明が開示されている。例えば、特許文献１では，更新するアプリケーションの配布先を記憶しておき、更新するアプリケーションの配布先を検索し，検索した配布先に対してアプリケーションの更新プログラムを送信する発明が開示されている。
【０００６】
しかし，特許文献１の発明では，更新プログラムの配布先が多量にあった場合、更新プログラムを配布する装置のスペックによっては，すべての配布先にスムーズに更新プログラムを配信できないし，また，更新プログラムの配布に伴いネットワークの負荷が大きくなってしまう問題がある。
【０００７】
このような問題を解決する発明として，特許文献２では，コンテンツデータを配信する装置と、サーバを頂点として階層構造で多層に論理接続される複数の端末装置とから少なくとも構成され、サーバから配信されるコンテンツデータが端末装置の中継機能により順次下流に中継されることで，端末装置全てにコンテンツデータが配信されるシステムが開示されている。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開平０３−２８６３４５号公報
【特許文献２】特開２００７−２３３６５２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
最新版でないアプリケーションを利用して生産すると思わぬトラブルが発生する可能性あるが，特許文献１及び特許文献２で開示されている発明は，ネットワーク上に装置から更新プログラムが配信されるので，生産に必要なアプリケーションを利用して生産を開始する際に，該アプリケーションが最新版であることを保証できなかった。
【００１０】
例えば，ネットワーク上に装置が更新プログラムを配信するときに，クライアント装置の電源が切れていると更新プログラムを受信できず，生産に必要なアプリケーションが更新されない。
【００１１】
そこで，本発明は，生産を開始する際に，生産に必要なアプリケーションが最新版であることを保証できるシステム及びコンピュータプログラムを提供することを目的とする。
【課題を解決するための手段】
【００１２】
上述から課題を解決する第１の発明は，起動管理するアプリケーションのアプリケーションリストを保持し，前記アプリケーションリストの中から選択された前記アプリケーションを起動させるランチャーが実装されたクライアント装置と，前記アプリケーションを更新するためのアプリケーション更新プログラム及び最新版の前記アプリケーションのバージョンが示されたアプリケーション更新情報を前記アプリケーション毎に記憶している管理装置とから，少なくとも構成されるアプリケーション更新管理システムであって，
前記クライアント装置に実装されている前記ランチャーは，前記アプリケーションを起動させる際に，起動する前記アプリケーションの前記アプリケーション更新情報を前記管理装置から取得し，起動する前記アプリケーションと前記アプリケーション更新情報のバージョンが異なる場合，起動する前記アプリケーションに対応する前記アプリケーション更新プログラムを前記管理装置から取得して前記アプリケーションを更新した後，前記アプリケーションを起動させることを特徴とするアプリケーション更新管理システムである。
【００１３】
第１の発明によれば，前記クライアント装置にインストールされた前記ランチャーを利用して前記アプリケーションを起動する操作を行うと，起動する前記アプリケーションが更新されるので，生産を開始する際に，前記アプリケーション１が最新版であることを保証できる。
【００１４】
更に，第２の発明は，前記管理装置は，管理者側で設定した前記アプリケーションリストである管理リストを前記クライアント装置毎に記憶し，更に，前記アプリケーションを前記クライアント装置にインストールするインストーラを前記アプリケーション毎に記憶し，
前記ランチャーは起動すると，前記ランチャーが起動している前記クライアント装置に対応する前記管理リストを前記管理装置から取得し，該管理リストに基づいて前記アプリケーションリストを更新する処理を実行した後，起動する前記アプリケーションが前記クライアント装置にインストールされていない場合，起動する前記アプリケーションの前記インストーラを前記管理装置から取得して前記アプリケーションをインストールすることを特徴とする第１の発明に記載のアプリケーション更新管理システムである。
【００１５】
第２に発明によれば，管理者側で設定した前記管理リストを前記クライアント装置毎に前記管理装置に記憶させておき，前記ランチャー起動プログラムが，前記管理リストの内容を，前記ランチャーの前記アプリケーションリストに反映させることで，前記ランチャーが起動管理する前記アプリケーションを前記クライアント装置毎に管理することもできる。
【００１６】
更に，第３の発明は，前記管理装置が記憶している前記管理リストには，強制インストールが要求されている前記アプリケーションが示され，前記ランチャーは，前記ランチャーを起動させる前に，強制インストールが要求されている前記アプリケーションが前記アプリケーションリストに含まれていない場合，強制インストールが要求されている前記アプリケーションの前記インストーラを前記管理装置から取得して該アプリケーションをインストールすることを特徴とする第２の発明に記載のアプリケーション更新管理システムである。
【００１７】
第３の発明によれば，前記管理リスト内に，強制インストールが必要な前記アプリケーションを示しておけば，強制インストールが必要な前記アプリケーションが前記クライアント装置にインストールされていない場合，前記ランチャーが起動した後に，前記クライアント装置に該アプリケーションをインストールできるようになる。
【００１８】
更に，第４の発明は，前記管理装置は，最新版の前記ランチャーのバージョンが示されたランチャー更新情報と，最新版へ前記ランチャーを更新するためのランチャー更新プログラムを記憶し，前記クライアント装置には前記ランチャーを起動管理する前記ランチャー起動プログラムがインストールされ，前記ランチャー起動プログラムは，前記ランチャーを起動させる際に，前記ランチャー更新情報を前記管理装置から取得し，起動する前記ランチャーと前記ランチャー更新情報のバージョンが異なる場合，前記ランチャー更新プログラムを前記管理装置から取得して前記ランチャーを更新した後，前記ランチャーを起動させることを特徴とする第１の発明から第３の発明のいずれか一つに記載のアプリケーション更新管理システムである。
【００１９】
第４の発明によれば，前記ランチャー起動プログラムを前記クライアント装置にインストールしておき，前記ランチャーの更新に係わるファイルを前記管理装置に記憶させておけば，前記ランチャーを起動する前に前記ランチャー自身を更新することもできる。
【００２０】
更に，第５の発明は，前記管理装置は，前記クライアント装置に設定されたグループ毎に前記管理リストを記憶し，前記クライアント装置の前記管理リストを，前記クライアント装置が属する前記グループの前記管理リストに合わせる処理を実行する管理モジュールを備えていることを特徴とする第２の発明から第４の発明のいずれか一つに記載のアプリケーション更新管理システムである。
【００２１】
第５の発明によれば，管理者側で，前記クライアント装置をグループ分けし，グループ毎に前記管理リストを設定しておき，前記クライアント装置の前記管理リストと前記クライアント装置が属する前記グループの前記管理リストを一致させるようにしておけば，前記グループの前記管理リストを変更するだけで，前記グループに属する前記クライアント装置の前記管理リストを一斉に変更できるようになる。
【００２２】
更に，第６の発明は，起動管理するアプリケーションのアプリケーションリストを保持し，アプリケーションリストの中から選択されたアプリケーションを起動させるコンピュータプログラムであって，起動するアプリケーションが選択されたことを検知するステップａ，起動するアプリケーションのアプリケーション更新情報をネットワーク上の装置から取得するステップｂ，起動するアプリケーションとアプリケーション更新情報のバージョンが異なる場合，起動するアプリケーションに対応するアプリケーション更新プログラムを装置から取得してアプリケーションを更新した後，アプリケーションを起動するステップｃをコンピュータに実行させるためのコンピュータプログラムである。
【００２３】
更に，第７の発明は，ステップａの前に，管理者側で設定したアプリケーションのリストである管理リストを装置から取得し，管理リストに基づいてアプリケーションリストを更新するステップａ１を実行し，ステップａ１の後に，起動するアプリケーションがインストールされていない場合，起動するアプリケーションのインストーラを装置から取得してアプリケーションをインストールするステップｂ１を実行した後に，ステップｃを実行することを特徴とする第６の発明に記載のコンピュータプログラムである。
【００２４】
更に，第８の発明は，ステップａ１において，強制インストールが要求されているアプリケーションがアプリケーションリストに含まれている場合，強制インストールが要求されているアプリケーションのインストーラを装置から取得してアプリケーションをインストールすることを特徴とする第７の発明に記載のコンピュータプログラムである。
【００２５】
なお，第６の発明から第８の発明は，クライアント装置にインストールするランチャーに係わる発明である。
【発明の効果】
【００２６】
上述した発明によれば，生産を開始する際に，生産に必要なアプリケーションが最新版であることを保証できるシステム及びコンピュータプログラムを提供できる。
【図面の簡単な説明】
【００２７】
【図１】アプリケーション更新管理システムの構成を説明する図。
【図２】市販のコンピュータ装置に備えられたハードウェアを説明する図。
【図３】管理装置のブロック図。
【図４】データベースサーバのブロック図。
【図５】クライアント装置のブロック図。
【図６】クライアント装置のファイル構造を説明する図。
【図７】ランチャー起動プログラムの動作を説明するフロー図。
【図８】ランチャーの動作を説明するフロー図。
【図９】アプリケーションを更新する動作を説明するフロー図。
【図１０】ランチャー起動プログラムの起動画面の一例を説明する図。
【図１１】ランチャーの起動画面の一例を説明する図。
【発明を実施するための形態】
【００２８】
ここから，本願発明の実施形態について，本願発明の技術分野に係わる当業者が，本願発明の内容を理解し，本願発明を実施できる程度に説明する。
【００２９】
図１は，本実施形態におけるアプリケーション更新管理システム１の構成を説明する図で，図１に図示したように，本実施形態におけるアプリケーション更新管理システム１は，アプリケーション１２２の更新情報などが記憶される管理装置１０と，アプリケーション１２２を更新するためのアプリケーション更新プログラムなどを記憶するデータベースサーバ１１と，管理装置１０及びデータベースサーバ１１にリモートアクセスするクライアント装置１２とから，少なくとも構成されている。
【００３０】
なお，図１で図示したアプリケーション更新管理システム１では，アプリケーション１２２の更新情報が記憶される管理装置１０と，アプリケーション更新プログラムやインストーラなどを記憶するデータベースサーバ１１を別にしているが，管理装置１０にデータベースサーバ１１の機能を備えさせることも当然可能である。
【００３１】
クライアント装置１２には，起動管理するアプリケーション１２２のリストであるアプリケーションリストを保持し，アプリケーションリストに含まれるアプリケーション１２２の起動を管理するコンピュータプログラムであるランチャー１２０がインストールされている。
【００３２】
ランチャー１２０は，アプリケーション１２２を起動する処理を実行する前に，管理装置１０を利用して，起動するアプリケーション１２２が最新版であるか確認し，最新版でない場合，最新版へ更新するためのアプリケーション更新プログラムをデータベースサーバ１１から取得して，アプリケーション１２２の更新を実行することで，起動するアプリケーション１２２を最新版に更新する。
【００３３】
このように，図１で図示したアプリケーション更新管理システム１によれば，クライアント装置１２にインストールされたランチャー１２０を利用してアプリケーション１２２を起動する操作を行うと，起動するアプリケーション１２２が更新されるので，生産を開始する際に，アプリケーション１２２が最新版であることを保証できる。
【００３４】
また，アプリケーション１２２を更新するタイミングをアプリケーション１２２の起動操作とすることで，アプリケーション１２２を更新するタイミングはクライアント装置１２毎で異なるため，アプリケーション１２２を更新する処理が集中することもなく，スペックの比較的に低いコンピュータ装置を利用して管理装置１０及びデータベースサーバ１１を実現することができるようになる。
【００３５】
更に，アプリケーション１２２を更新するタイミングがクライアント装置１２毎で異なることで，アプリケーション更新プログラムの配布に伴いネットワークの負荷が異常に大きくなることも防止できる。
【００３６】
また，ランチャー１２０を起動させるコンピュータプログラムであるランチャー起動プログラム１２１をクライアント装置１２にインストールしておき，ランチャー１２０の更新に係わるファイルを管理装置１０及びデータベースサーバ１１に記憶させておけば，ランチャー１２０を起動する前にランチャー１２０自身を更新することもできる。
【００３７】
また，管理者側で設定したアプリケーション１２２のリストである管理リストをクライアント装置１２毎に管理装置１０に記憶させておき，クライアント装置１２で起動したランチャー起動プログラム１２１が，管理者側で設定した管理リストの内容を，ランチャー１２０のアプリケーションリストに反映させることで，ランチャー１２０が起動管理するアプリケーション１２２をクライアント装置１２毎に管理することもできる。
【００３８】
この際，アプリケーション１２２のインストーラをデータベースサーバ１１に記憶させておけば，ランチャー１２０によって起動するアプリケーション１２２が，ランチャー１２０のアプリケーションリストに新規追加されたアプリケーション１２２で，クライアント装置１２にインストールされていない場合，ランチャー１２０がアプリケーション１２２をインストールすることが可能になる。
【００３９】
更に，管理リスト内に，強制インストールが必要なアプリケーション１２２を示しておけば，ランチャー１２０のアプリケーションリストに新規追加され，かつ，強制インストールが必要なアプリケーション１２２がある場合，ランチャー１２０が起動した後に，クライアント装置１２に該アプリケーション１２２をインストールできるようになる。
【００４０】
また，管理者側で，クライアント装置１２をグループ分けし，グループ毎に管理リストを設定しておき，クライアント装置１２の管理リストとクライアント装置１２が属するグループの管理リストを一致させるようにしておけば，グループの管理リストを変更するだけで，グループに属するクライアント装置１２の管理リストを一斉に変更できるようになる。
【００４１】
本実施形態におけるアプリケーション更新管理システム１を構成する管理装置１０，データベースサーバ１１及びクライアント装置１２について説明する。
【００４２】
本実施形態におけるアプリケーション更新管理システム１を構成する管理装置１０，データベースサーバ１１及びクライアント装置１２は，市販のコンピュータ装置を利用して実現される。図２は，管理装置１０，データベースサーバ１１及びクライアント装置１２として利用される市販のコンピュータ装置２に備えられたハードウェアを説明する図である。
【００４３】
市販のコンピュータ装置には，ハードウェアとして，ＣＰＵ２ａ（CPU: Central Processing Unit）と、ＢＩＯＳが実装されるＲＯＭ２ｂ（ROM: Read-Only Memory）と、コンピュータのメインメモリであるＲＡＭ２ｃ（RAM: Random Access Memory）と、外部記憶装置として大容量のデータ記憶装置２ｄ（例えば，ハードディスク）と，外部デバイスとデータ通信するための入出力インターフェース２ｅと、ネットワーク通信するためのネットワークインターフェース２ｆと、ディスプレイ２ｇと，文字入力デバイス２ｈと，ポインティングデバイス２ｉなどが備えられている。
【００４４】
管理装置１０及びデータベースサーバ１１として利用するコンピュータ装置２のデータ記憶装置２ｄには，本発明に係わる管理装置１０及びデータベースサーバ１１として機能させるためのコンピュータプログラムやデータベース(DB: Data Base)が記憶され，クライアント装置１２として利用するコンピュータ装置２のデータ記憶装置２ｄには，本発明のクライアント装置１２として機能させるためのコンピュータプログラムやデータが記憶されている。
【００４５】
図３は，アプリケーション更新管理システム１を構成する管理装置１０のブロック図である。
【００４６】
図３に図示したように，アプリケーション更新管理システム１を構成する管理装置１０には，ＸＭＬ形式のファイルを記憶するＤＢとして，アプリケーション更新情報ファイル及びランチャー更新情報ファイルを記憶する更新情報ＤＢ１０２と，アプリケーション管理システムの対象となるクライアント装置１２に係わる情報が記述されるクライアント情報ファイルを記憶するクライアントＤＢ１０３と，クライアント装置１２に設定されているグループに係わる情報が記述されるグループ情報ファイルを記憶するグループＤＢ１０４と，アプリケーション管理システムのユーザに係わる情報が記述されたユーザ情報ファイルを記憶するユーザＤＢ１０５を備えている。
【００４７】
また，管理装置１０には，上述したＤＢを利用するコンピュータプログラムとして，クライアント装置１２から要求されたファイルのダウンロードする処理を実行するファイル転送モジュール１００と，管理装置１０に備えられたグループＤＢ１０４の変更内容をクライアントＤＢ１０３に反映させる管理モジュール１０１とが実装されている。
【００４８】
管理装置１０に備えられた更新情報ＤＢ１０２には，アプリケーション更新管理システム１で管理されるアプリケーション１２２毎にアプリケーション更新情報ファイルが記憶されている。アプリケーション更新情報ファイルには，最新版のアプリケーション１２２の更新情報に係わる情報として，アプリケーション１２２の名称，アプリケーション１２２のバージョン，アプリケーション１２２の実行ファイル名，データベースサーバ１１のＩＰアドレス，データベースサーバ１１へ接続する際のユーザ名，データベースサーバ１１へ接続する際のパスワード，アプリケーション更新プログラムが記憶されているパス，アプリケーション１２２のインストーラが記憶されているパスなどが含まれている。
【００４９】
また，管理装置１０の更新情報ＤＢ１０２にはランチャー更新情報ファイルも記憶され，ランチャー更新情報ファイルには，最新版のランチャー１２０に係わる情報として，ランチャー１２０の名称，ランチャー１２０のバージョン，ランチャー１２０の実行ファイル名，データベースサーバ１１のＩＰアドレス，データベースサーバ１１へ接続する際のユーザ名，データベースサーバ１１へ接続する際のパスワード，ランチャー更新プログラムが記憶されているパスが含まれている。
【００５０】
また，管理装置１０に備えられたクライアントＤＢ１０３には，アプリケーション管理システムの対象となるクライアント装置１２毎にクライアント情報ファイルが記憶されている。クライアント情報ファイルには，クライアント装置１２に係わる情報として，クライアント装置１２の識別子（例えば，ＩＰアドレス），クライアント装置１２の名称，クライアント装置１２が属するグループの名称及び管理リストが含まれ，管理リストには，管理リストに含ませるアプリケーション１２２毎にアプリケーション１２２の名称及び強制インストールフラグなどが記述される。なお，強制インストールフラグとは，アプリケーション１２２を強制イントールするか否かを示すフラグである。
【００５１】
また，管理装置１０に備えられたグループＤＢ１０４には，アプリケーション更新管理システム１に設定されているクライアント装置１２のグループ毎にグループ情報ファイルが記憶され，グループ情報ファイルには，グループの名称に加え，グループに属するクライアント装置１２のクライアント装置１２情報ファイルに含ませる管理リストが含まれる。
【００５２】
また，管理装置１０に備えられたユーザＤＢ１０５には，アプリケーション更新管理システム１の管理対象となるユーザ毎にユーザ情報ファイルが記憶されている。ユーザ情報ファイルには，ユーザに係わる情報が記憶として，クライアント装置１２を利用するユーザのユーザＩＤ，ユーザの氏名，ユーザのパスワード，ユーザの操作権限フラグが含まれている。
【００５３】
管理装置１０に備えられたファイル転送モジュール１００は，クライアント装置１２からＵＲＬ（URL: Uniform Resource Locator）などを用いて指定されたファイルをＤＢから検索し，検索したファイルをクライアント装置１２に送信する機能を有するコンピュータプログラムで，管理装置１０に備えられたＤＢに記憶されているファイルの形式はＸＭＬ形式であるため，管理装置１０とクライアント装置１２間のファイル転送にはＨＴＴＰ（HyperText Transfer Protocol）を利用する。
【００５４】
管理装置１０に備えられた管理モジュール１０１は，グループＤＢ１０４の内容をクライアントＤＢ１０３に反映させるためコンピュータプログラムである。
【００５５】
管理モジュール１０１は，ユーザＩＤ及びパスワードをクライアント装置１２から取得するウェブページを備え，ユーザＤＢ１０５に記憶されているユーザ管理情報ファイルを参照し，クライアント装置１２から取得したパスワードを照合することで，ユーザＩＤで特定されるユーザをユーザ認証し，ユーザ認証に成功したユーザのユーザ情報ファイルに記述された操作権限フラグによって，グループＤＢ１０４及びクライアントＤＢ１０３の内容を編集できる権限を有することが示されている場合のみ，グループＤＢ１０４及びクライアントＤＢ１０３の内容を変更する操作を許可する。
【００５６】
管理モジュール１０１は，クライアントＤＢ１０３の内容を編集するためのウェブページとして，クライアント情報ファイルを追加・削除するためのウェブページに加え，それぞれのクライアント情報ファイルの内容を編集するためのウェブページを備える。
【００５７】
クライアント情報ファイルの追加するウェルページでは，追加するクライアント情報ファイルのクライアント装置１２の識別子，クライアント装置１２の名称，クライアント装置１２が属するグループの名称のみをユーザに入力させ，クライアント情報ファイルのアプリケーションリストは，入力されたグループの名称に対応するグループ情報ファイルのアプリケーションリストがコピーされる。
【００５８】
管理モジュールは，グループＤＢ１０４の内容を編集するためのウェブページとして，グループ情報ファイルを追加・削除するためのウェブページに加え，それぞれのグループ情報ファイルの内容を編集するためのウェブページを備え，グループ情報ファイルの管理リストが変更されると，グループ情報ファイルに記述されているグループの名称を含んでいるクライアント情報ファイルの管理リストを，グループ情報ファイルの管理リストに変更する処理を実行する。
【００５９】
このように，グループＤＢ１０４の内容をクライアントＤＢ１０３に反映させることで，管理リストの内容を変更する際，グループ情報ファイルの管理リストを変更すればよく，複数のクライアント情報ファイルの管理リストを変更する必要はなくなる。
【００６０】
図４は，アプリケーション更新管理システム１を構成するデータベースサーバ１１のブロック図である。
【００６１】
図３に図示したように，アプリケーション更新管理システム１を構成するデータベースサーバ１１は，ＤＢとして，アプリケーション更新プログラム及びインストーラをアプリケーション１２２毎に記憶し，更に，ランチャー更新プログラムを記憶する更新プログラムＤＢ１１１を備え，コンピュータプログラムとして，アプリケーション１２２やランチャー１２０の更新プログラムなどをクライアント装置１２に転送するファイル転送モジュール１１０が実装されている。なお，データベースサーバ１１からクライアント装置１２へはアプリケーション更新プログラムなどが転送されるため，ファイル転送にはＦＴＰ（File Transfer Protocol）が利用される。
【００６２】
データベースサーバ１１は，リモートアクセスするクライアント装置１２の認証を必要とし，データベースサーバ１１にリモートアクセスする際，アプリケーション更新情報ファイル又はランチャー更新情報ファイルに記述されているユーザ名・パスワードが認証情報として利用される。
【００６３】
データベースサーバ１１は，リモートアクセスするクライアント装置１２の認証に成功すると，クライアント装置１２からのリモートアクセスを許可し，クライアント装置１２が指定したファイルをクライアント装置１２に対して送信する処理を実行する。なお，クライアント装置１２がファイルを指定する際，アプリケーション更新情報ファイル又はランチャー更新情報ファイルに記述されているパスが利用される。
【００６４】
次に，管理装置１０やデータベースサーバ１１にリモートアクセスするクライアント装置１２について説明する。図５，アプリケーション更新管理システム１を構成するクライアント装置１２のブロック図である。
【００６５】
図５に図示したように，クライアント装置１２には，コンピュータプログラムとして，アプリケーション１２２の起動管理を行うコンピュータプログラムであるランチャー１２０と，ランチャー１２０を起動するコンピュータプログラムであるランチャー起動プログラム１２１と，ランチャー１２０が操作されることによって起動する少なくとも一つのアプリケーション１２２がインストールされている。
【００６６】
図６は，クライアント装置１２のファイル構造を説明する図である。図６に図示したように，クライアント装置１２には，ランチャー１２０に係わるファイルを記憶するフォルダ１２ａと，ランチャー１２０に登録されたアプリケーション１２２の数だけ，アプリケーション１２２に係わるファイルを記憶するフォルダ１２ｂが生成されている。
【００６７】
ランチャー１２０に係わるファイルを記憶するフォルダ１２ａには，ランチャー１２０とランチャー起動プログラム１２１の実行ファイル等に加え，ランチャー１２０が実行するときに読み込まれるランチャー設定ファイルと，ランチャー１２０で起動管理するアプリケーション１２２のリストであるアプリケーションリストなどが記述されるインストール情報ファイルが記憶される。
【００６８】
また，アプリケーション１２２に係わるファイルを記憶するフォルダ１２ｂには，アプリケーション１２２の実行ファイル等に加え，アプリケーション１２２が実行するときに読み込まれるアプリケーション設定ファイルが記憶される。
【００６９】
ランチャー設定ファイルは，ランチャー１２０がインストールされたときに生成されるＸＭＬ形式のファイルで，ランチャー設定ファイルには，ランチャー１２０が起動するために必要な情報が記憶され，ランチャー１２０の実行ファイル名，バージョン，ランチャー１２０の更新日などに加え，ランチャー１２０のライブラリに含まれるファイル名などが記述される。
【００７０】
インストール情報ファイルは，ランチャー１２０がインストールされたときに生成されるＸＭＬ形式のファイルで，インストール情報ファイルには，クライアント装置１２の識別子，クライアント装置１２の名称及びグループの名称に加え，アプリケーション１２２の名称，アプリケーション１２２のバージョン，アプリケーション１２２の更新日時，アプリケーション１２２の実行ファイル名のパスがアプリケーション１２２毎に記述されるアプリケーションリストが含まれる。
【００７１】
なお，インストール情報ファイルのクライアント装置１２の識別子，クライアント装置１２の名称及びグループの名称は，ランチャー１２０を初回インストールする際に入力させるようにしてもよいが，管理装置１０のクライアントＤＢ１０３の名称とランチャー１２０をインストールするクライアント装置１２の識別子を指定してクライアント情報ファイルの転送を要求し，管理サーバからファイル転送されたクライアント情報ファイルに記述されたこれらの情報を用いる機能をランチャー１２０のインストーラに備えさせておくとよい。
【００７２】
アプリケーション設定ファイルは，アプリケーション１２２がインストールされたときに生成されるＸＭＬ形式のファイルで，アプリケーション設定ファイルには，アプリケーション１２２の名称，アプリケーション１２２のバージョン，アプリケーション１２２の更新日時，アプリケーション１２２の実行ファイルが記憶されているパス，アプリケーション１２２のライブラリに含まれるファイル名が含まれる。
【００７３】
ここから，クライアント装置１２にインストールされたランチャー起動プログラム１２１及びランチャー１２０の動作について説明する。図７は，ランチャー起動プログラム１２１の動作を説明するフロー図である。
【００７４】
ランチャー起動プログラム１２１は，クライアント装置１２に表示されるランチャー起動プログラム１２１のアイコンがポインティングデバイスでクリックされることでランチャー起動プログラム１２１は起動し（Ｓ１），ランチャー起動プログラム１２１は起動すると，ランチャー起動プログラム１２１の起動画面をクライアント装置１２のディスプレイに表示させる。
【００７５】
図１０は，ランチャー起動プログラム１２１の起動画面の一例を説明する図である。図１０で図示したランチャー起動プログラム１２１の起動画面３ａには，ランチャー１２０を起動させるときにクリックするボタンオブジェクト３ａ１が少なくとも含まれる。
【００７６】
ランチャー起動プログラム１２１は，ランチャー１２０の起動操作（図１０では，ボタンオブジェクト３ａ１をクリックする操作）が実行されると，ランチャー起動プログラム１２１はランチャー１２０を起動させる処理を開始する（Ｓ２）。
【００７７】
ランチャー起動プログラム１２１は，ランチャー起動プログラム１２１はランチャー１２０を起動させる処理を開始すると，ランチャー１２０のフォルダに記憶されているランチャー設定ファイルの内容を格納した後（Ｓ３），管理装置１０にリモートアクセスし，ランチャー１２０の更新を確認する処理を実行する（Ｓ４）。
【００７８】
ランチャー起動プログラム１２１は，更新情報ＤＢ１０２のパス名とランチャー更新情報ファイルのファイル名を指定してファイル転送要求を管理装置１０に行い，管理装置１０からファイル転送されたランチャー更新情報ファイルに記述されているバージョンと，ランチャー設定ファイルに記述されているバージョンを比較することで，ランチャー１２０が更新されていないか確認する。
【００７９】
ランチャー１２０が更新されている場合，すなわち，ランチャー更新情報ファイルとランチャー設定ファイルのバージョンが異なる場合，管理装置１０からファイル転送されたランチャー更新情報ファイルに含まれているユーザ名・パスワードを利用してデータベースサーバ１１にリモートアクセスし，ランチャー更新情報ファイルに含まれている更新プログラムのパスを指定してファイル転送要求することで，ランチャー更新プログラムをデータベースサーバ１１から取得する（Ｓ５）。
【００８０】
ランチャー起動プログラム１２１は，ランチャー更新プログラムを取得すると，ランチャー更新プログラムを実行することでランチャー１２０を更新する処理を実行した後（Ｓ６），ランチャー１２０の実行ファイルを起動する（Ｓ７）。なお，ランチャー１２０が更新されていない場合，ランチャー１２０を更新する処理は実行することなく，ランチャー１２０の実行ファイルを起動し，図７で図示した手順を終了する。
【００８１】
ここから，クライアント装置１２にインストールされたランチャー１２０に付いて説明する。図８は，ランチャー１２０の動作を説明するフロー図である。
【００８２】
ランチャー起動プログラム１２１によって起動されたランチャー１２０は，まず，イントール情報ファイルの内容を格納する処理を実行した後（Ｓ１０），管理装置１０を利用して，新規のアプリケーション１２２を強制インストールすることが必要であるか判断する（Ｓ１１）。
【００８３】
具体的には，ランチャー１２０は，クライアントＤＢ１０３の名称とランチャー１２０が起動しているクライアント装置１２の識別子を指定してファイル転送要求し，ランチャー１２０が起動しているクライアント装置１２に対応するクライアント情報ファイルを管理装置１０から取得する。
【００８４】
そして，管理装置１０から取得したクライアント情報ファイルに含まれているアプリケーションリストの中に，インストール情報ファイルに記述されておらず，かつ，強制インストールフラグが立っているアプリケーション１２２の名称があれば，新規のアプリケーション１２２を強制インストールすることが必要であると判断する。
【００８５】
ランチャー１２０は，新規のアプリケーション１２２を強制インストールすることが必要であると判断したとき，更新情報ＤＢ１０２のパス名と強制インストールすることが必要であるアプリケーション１２２の名称を指定することでファイル転送要求し，強制インストールすることが必要であるアプリケーション１２２に対応するアプリケーション更新情報ファイルを管理装置１０から取得する（Ｓ１２）。
【００８６】
そして，ランチャー１２０は，管理装置１０からファイル転送されたアプリケーション更新情報ファイルに含まれているユーザ名・パスワードを利用してデータベースサーバ１１にリモートアクセスし，アプリケーション更新情報ファイルに含まれているインストーラのパスを指定してファイル転送要求することで，強制インストールするアプリケーション１２２のインストーラをデータベースサーバ１１から取得する（Ｓ１３）。
【００８７】
ランチャー１２０は，強制インストールが必要と判断したアプリケーション１２２のインストーラを取得すると，このインストーラを実行することでアプリケーション１２２をインストールする処理を実行した後（Ｓ１４），アプリケーション１２２のインストールの結果をインストール情報ファイルのアプリケーションリストに反映することで，インストール情報ファイルを更新する（Ｓ１５）。
【００８８】
ランチャー１２０は，強制インストールが必要と判断したアプリケーション１２２が無い場合，又は，強制インストールが必要と判断したアプリケーション１２２のインストールに係わる処理が終了すると，ランチャー１２０の起動画面をクライアント装置１２のディスプレイに表示する処理を実行し（Ｓ１６），図８の手順を終了する。
【００８９】
図１１は，ランチャー１２０の起動画面の一例を説明する図である。図１１で図示したランチャー１２０の起動画面３ｂには，ランチャー１２０が起動しているクライアント装置１２にインストールされているアプリケーション１２２のリストを表示するリストボックス３ｂ１に加え，リストボックス３ｂ１で選択されたアプリケーション１２２（図１１では，品質管理システム）を起動させるためのボタンオブジェクト３ｂ２が含まれている。
【００９０】
ここから，クライアント装置１２にインストールされたアプリケーション１２２を更新する内容について説明する。図９は，アプリケーション１２２を更新する動作を説明するフロー図である。
【００９１】
ランチャー起動プログラム１２１によって起動されたランチャー１２０は，選択されたアプリケーション１２２の起動操作（図１１では，ボタンオブジェクト３ｂ２がクリックされる操作）を検知すると（Ｓ２０），ランチャー１２０は，起動するアプリケーション１２２がインストールされているか確認する（Ｓ２１）。
【００９２】
起動するアプリケーション１２２がインストールされているかの確認は，起動するアプリケーション１２２のフォルダが生成されているか確認することでなされ，起動するアプリケーション１２２がインストールされている場合，起動するアプリケーション１２２のフォルダに記憶されているアプリケーション設定ファイルを格納する処理を実行する（Ｓ２２）。
【００９３】
そして，ランチャー１２０は，更新情報ＤＢ１０２のパス名とアプリケーション１２２の名称を指定してファイル転送要求することで，起動するアプリケーション１２２のアプリケーション更新情報ファイルを管理装置１０から取得し，取得したアプリケーション更新情報ファイルに含まれるバージョンと，アプリケーション設定ファイルに含まれるバージョンを比較することで，起動するアプリケーション１２２が更新されているか確認する（Ｓ２３）。
【００９４】
ランチャー１２０は，起動するアプリケーション１２２が更新されている場合，すなわち，管理装置１０から取得したアプリケーション更新情報ファイルとアプリケーション設定ファイルのバージョンが異なる場合，管理装置１０からファイル転送されたアプリケーション更新情報ファイルに含まれているユーザ名・パスワードを利用してデータベースサーバ１１にリモートアクセスし，アプリケーション更新情報ファイルに含まれている更新プログラムのパスを指定してファイル転送要求することで，アプリケーション１２２の更新プログラムをデータベースサーバ１１から取得する（Ｓ２４）。
【００９５】
ランチャー１２０は，最新版ではないと判断したアプリケーション１２２の更新プログラムを取得すると，この更新プログラムを実行することでアプリケーション１２２をインストールする処理を実行した後（Ｓ２５），アプリケーション１２２の更新の結果をインストール情報ファイルのアプリケーションリストに反映することで，インストール情報ファイルを更新する（Ｓ２６）。
【００９６】
また，Ｓ２２において，起動するアプリケーション１２２がインストールされていない場合，管理装置１０からファイル転送されたアプリケーション更新情報ファイルに含まれているユーザ名・パスワードを利用してデータベースサーバ１１にリモートアクセスし，アプリケーション更新情報ファイルに含まれているインストーラのパスを指定してファイル転送要求することで，アプリケーション１２２のインストーラをデータベースサーバ１１から取得する（Ｓ２７）。
【００９７】
ランチャー１２０は，アプリケーション１２２のインストーラを取得すると，このインストーラを実行することでアプリケーション１２２をインストールする処理を実行した後（Ｓ２８），アプリケーション１２２のインストールの結果をインストール情報ファイルのアプリケーションリストに反映することで，インストール情報ファイルを更新する（Ｓ２９）。
【００９８】
ランチャー１２０は，Ｓ２３アプリケーションが更新されていないと判断した場合，若しくは，アプリケーション１２２の更新又はインストールに係わる処理が終了すると，アプリケーションを起動し（Ｓ３０），図９の手順を終了する。
【符号の説明】
【００９９】
１    アプリケーション更新管理システム
１０  管理サーバ
１００  ファイル転送モジュール
１０１  管理モジュール
１０２  更新情報ＤＢ
１０３  クライアントＤＢ
１０４  グループＤＢ
１０５  ユーザＤＢ
１１  データベースサーバ
１１０  ファイル転送モジュール
１１１  更新プログラムＤＢ１１１
１２  クライアント装置
１２０  ランチャー
１２１  ランチャー起動プログラム
１２２  アプリケーション
【図１】
2011128827.tif 000003
【図２】
2011128827.tif 000004
【図３】
2011128827.tif 000005
【図４】
2011128827.tif 000006
【図５】
2011128827.tif 000007
【図６】
2011128827.tif 000008
【図７】
2011128827.tif 000009
【図８】
2011128827.tif 000010
【図９】
2011128827.tif 000011
【図１０】
2011128827.tif 000012
【図１１】
2011128827.tif 000013