(57)【要約】【課題】  アプリケーションのバージョン管理、ビルド、認証、配付及び変更を一貫して行うことができる情報処理システム及び方法を提供する。【解決手段】  アプリケーション管理サーバ１０は、アプリケーションを構成するためのファイルを管理するバージョン管理サーバ１２に対してバージョンを設定するバージョン設定部４０と、ファイルをビルドして実行可能な形式に変換するビルド部５０とを備え、ビルドされた実行ファイルセット１８０を保持する。また、アプリケーションリスト生成部７０は、認証されたユーザが利用可能なアプリケーションのリストを生成し、当該リストに基づいてネットワーク２０上に接続されたアプリケーション管理クライアント３０にアプリケーションを配付する。また、他のバージョンに変更する要求がされた場合、アプリケーション管理サーバ１０は、保持している他のバージョンのアプリケーションを配付する。【選択図】  図１
2005165849.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークを介して接続された端末にアプリケーションを配付する情報処理システムであって、
前記アプリケーションを構成するためのファイルを管理する管理手段と、
前記ファイルのバージョンを設定する設定手段と、
設定された前記バージョンで前記ファイルをビルドして実行可能な形式のアプリケーションに変換するビルド手段と、
ビルドされた前記アプリケーションを前記バージョンと対応させて保持する保持手段と、
前記端末を利用するユーザの認証を行う認証手段と、
認証された前記ユーザが利用可能なアプリケーションのリストを生成するリスト生成手段と、
前記リストに基づいて前記端末から指定されたアプリケーションを前記端末に配付する配付手段とを備え、
前記配付手段は、前記端末から該端末に配付済みのアプリケーションを他のバージョンに変更する要求がされた場合、前記保持手段で保持されている前記他のバージョンのアプリケーションを前記端末に配付する
ことを特徴とする情報処理システム。
【請求項２】
前記管理手段が、前記ネットワーク上に接続されたＣＶＳサーバに備えられていることを特徴とする請求項１に記載の情報処理システム。
【請求項３】
前記認証手段が、前記ネットワーク上に接続された認証サーバに備えられており、該認証サーバは、前記アプリケーションを利用可能なユーザのユーザ情報を記憶する記憶手段をさらに備え、
該認証手段は、前記端末で入力されたユーザ情報と前記記憶手段に記憶されているユーザ情報とに基づいて、前記端末を利用する前記ユーザを認証する
ことを特徴とする請求項１又は２に記載の情報処理システム。
【請求項４】
前記認証手段で認証されたユーザが利用可能なアプリケーションのＩＤ情報を取得する取得手段をさらに備え、
前記リスト生成手段が、前記保持手段に保持されたアプリケーションから前記取得手段で取得されたＩＤ情報に対応するアプリケーションのリストを生成する
ことを特徴とする請求項１から３までのいずれか１項に記載の情報処理システム。
【請求項５】
前記ビルド手段でビルドされたアプリケーションの公開設定を行う公開設定手段をさらに備え、
前記リスト生成手段が、前記ビルド手段でビルドされたアプリケーションのうち、実行テストが可能なアプリケーションのリストを生成し、
前記配付手段が、前記実行テストが可能なアプリケーションを前記端末に配付し、
前記公開設定手段が、前記端末で行われた実行テストの結果に基づいて、前記アプリケーションの公開設定を行い、
前記リスト生成手段が、公開設定がされたアプリケーションであって、認証された前記ユーザが利用可能なアプリケーションのリストを生成する
ことを特徴とする請求項１から４までのいずれか１項に記載の情報処理システム。
【請求項６】
前記端末に配付済みのアプリケーションのバージョンと前記保持手段で保持されている前記アプリケーションの最新バージョンとを比較する比較手段をさらに備え、
前記配付手段は、前記端末に配付済みのアプリケーションのバージョンが古い場合、前記保持手段で保持されている前記アプリケーションについての最新のバージョンのアプリケーションを該端末に配付する
ことを特徴とする請求項１から５までのいずれか１項に記載の情報処理システム。
【請求項７】
前記端末に配付済みのアプリケーションのバージョンと前記保持手段で保持されている前記アプリケーションの最新バージョンとを比較する比較手段をさらに備え、
前記配付手段は、前記アプリケーションについての前記端末から要求されたバージョンのアプリケーションを該端末に配付して、該アプリケーションのバージョンアップ又はバージョンダウンを行う
ことを特徴とする請求項１から５までのいずれか１項に記載の情報処理システム。
【請求項８】
前記アプリケーションが、Ｊａｖａ（登録商標）ソースコードで記述されており、
前記ビルド手段が、前記アプリケーションのソースコードをコンパイルしてクラスファイルを生成し、それぞれのクラスファイルを１つのＪａｒファイルにまとめることにより該アプリケーションを実行可能な形式に変換する
ことを特徴とする請求項１から７までのいずれか１項に記載の情報処理システム。
【請求項９】
ネットワークを介して接続された端末にアプリケーションを配付する情報処理方法であって、
前記アプリケーションを構成するためのファイルを管理する管理装置に対して、前記ファイルのバージョンを設定する設定工程と、
設定された前記バージョンで前記ファイルをビルドして実行可能な形式のアプリケーションに変換するビルド工程と、
ビルドされた前記アプリケーションを前記バージョンと対応させて保持装置に保持する保持工程と、
前記端末を利用するユーザの認証を行う認証工程と、
認証された前記ユーザが利用可能なアプリケーションのリストを生成するリスト生成工程と、
前記リストに基づいて前記端末から指定されたアプリケーションを前記端末に配付する配付工程とを有し、
前記配付工程は、前記端末から該端末に配付済みのアプリケーションを他のバージョンに変更する要求がされた場合、前記保持装置で保持されている前記他のバージョンのアプリケーションを前記端末に配付する
ことを特徴とする情報処理方法。
【請求項１０】
コンピュータに、ネットワークを介して接続された端末に対してアプリケーションを配付させるためのプログラムであって、
前記アプリケーションを構成するためのファイルを管理する管理装置に対して、前記ファイルのバージョンを設定させる設定手順と、
設定された前記バージョンで前記ファイルをビルドして実行可能な形式のアプリケーションに変換させるビルド手順と、
ビルドされた前記アプリケーションを前記バージョンと対応させて保持装置に保持させる保持手順と、
前記端末を利用するユーザの認証を行わせる認証手順と、
認証された前記ユーザが利用可能なアプリケーションのリストを生成させるリスト生成手順と、
前記リストに基づいて前記端末から指定されたアプリケーションを前記端末に配付させる配付手順とを実行させ、
前記配付手順は、前記端末から該端末に配付済みのアプリケーションを他のバージョンに変更する要求がされた場合、前記保持装置で保持されている前記他のバージョンのアプリケーションを前記端末に配付させる
ことを特徴とするプログラム。
【請求項１１】
請求項１０に記載のプログラムを格納したことを特徴とするコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワークに接続されたサーバ／クライアント型のシステムであって、サーバからクライアントに対して実行可能な形式のアプリケーションを配付する情報処理システム及び方法に関する。
【背景技術】
【０００２】
Ｗｅｂサーバやファイルサーバ等を備え、インターネットやイントラネット等のネットワークを介して、ユーザにアプリケーションを提供する情報処理システムが広く普及している。このような情報処理システムを利用して、ユーザは、ネットワーク上のサーバから所望のアプリケーションを個々のパーソナルコンピュータにダウンロードし、インストールすることで、パーソナルコンピュータ上でアプリケーションを実行することが可能である。
【０００３】
ここで、ユーザがパーソナルコンピュータ上にダウンロードし、インストールしたアプリケーションがサーバ上で更新された場合、ユーザは、更新されたアプリケーションを再度ダウンロードして、パーソナルコンピュータ上にインストールする必要がある。これに対し、サーバ上でアプリケーションが更新された場合に、パーソナルコンピュータ上のアプリケーションを起動するときに、サーバにおけるアプリケーションの更新に関する情報を監視し、パーソナルコンピュータ上のアプリケーションを更新する機能を持つアプリケーションは、ＳＵＮ  Ｍｉｃｒｏｓｙｓｔｅｍ社よりＪａｖａ（登録商標）TM  Ｗｅｂ  Ｓｔａｒｔとして製品化されている（例えば、特許文献１参照。）。
【特許文献１】特表２００３−５２１０３６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、上述したような従来の情報処理システムでは、配付対象となるアプリケーション構成ファイルのバージョン管理システム、アプリケーションのビルド、テスト、配付、ユーザ認証、更新（変更）等は、それぞれのシステム毎で運用されていた。このため、アプリケーションの開発から配付まで一貫したバージョン管理、アクセス制御、更新等を行うことが困難であり、開発者の意図しないバージョンのアプリケーションをユーザが利用し続けることがあった。
【０００５】
本発明は、このような事情を考慮してなされたものであり、アプリケーションのバージョン管理、ビルド、認証、配付及び変更を一貫して行うことができる情報処理システム及び方法を提供することを目的とする。
【課題を解決するための手段】
【０００６】
上記課題を解決するために、本発明は、ネットワークを介して接続された端末にアプリケーションを配付する情報処理システムであって、
前記アプリケーションを構成するためのファイルを管理する管理手段と、
前記ファイルのバージョンを設定する設定手段と、
設定された前記バージョンで前記ファイルをビルドして実行可能な形式のアプリケーションに変換するビルド手段と、
ビルドされた前記アプリケーションを前記バージョンと対応させて保持する保持手段と、
前記端末を利用するユーザの認証を行う認証手段と、
認証された前記ユーザが利用可能なアプリケーションのリストを生成するリスト生成手段と、
前記リストに基づいて前記端末から指定されたアプリケーションを前記端末に配付する配付手段とを備え、
前記配付手段は、前記端末から該端末に配付済みのアプリケーションを他のバージョンに変更する要求がされた場合、前記保持手段で保持されている前記他のバージョンのアプリケーションを前記端末に配付する
ことを特徴とする。
【０００７】
また、本発明は、ネットワークを介して接続された端末にアプリケーションを配付する情報処理方法であって、
前記アプリケーションを構成するためのファイルを管理する管理装置に対して、前記ファイルのバージョンを設定する設定工程と、
設定された前記バージョンで前記ファイルをビルドして実行可能な形式のアプリケーションに変換するビルド工程と、
ビルドされた前記アプリケーションを前記バージョンと対応させて保持装置に保持する保持工程と、
前記端末を利用するユーザの認証を行う認証工程と、
認証された前記ユーザが利用可能なアプリケーションのリストを生成するリスト生成工程と、
前記リストに基づいて前記端末から指定されたアプリケーションを前記端末に配付する配付工程とを有し、
前記配付工程は、前記端末から該端末に配付済みのアプリケーションを他のバージョンに変更する要求がされた場合、前記保持装置で保持されている前記他のバージョンのアプリケーションを前記端末に配付する
ことを特徴とする。
【発明の効果】
【０００８】
本発明によれば、アプリケーションのバージョン管理、ビルド、認証、配付及び変更を一貫して行うことができる。これにより、利用ユーザがアプリケーション開発者の意図しないバージョンのアプリケーションを使用し続けることを防ぐことができる。
【発明を実施するための最良の形態】
【０００９】
以下、図面を参照して、本発明に係るアプリケーション配付を行う情報処理システムの一実施形態について説明する。
【００１０】
＜情報処理システムの構成＞
図１は、本発明の一実施形態に係る情報処理システムの構成を示すブロック図である。図１に示す情報処理システムでは、ネットワーク２０を介して、アプリケーション管理サーバ１０、認証サーバ１１、バージョン管理サーバ１２、及びアプリケーション管理クライアント３０が互いに接続されており、各種データや指示等の授受が可能である。ここで、アプリケーション管理サーバ１０は、アプリケーション管理クライアント３０に実行可能な形式に変換されたアプリケーション（以下、「アプリケーション」と略す。）を配付する。
【００１１】
アプリケーション管理サーバ１０は、アプリケーションやその情報等を扱うために、バージョン設定部４０、ビルド部５０、アプリケーション情報管理部６０、アプリケーションリスト生成部７０、アクセス権制御部８０、配付部９０を備えている。バージョン設定部４０は、アプリケーションの開発ユーザが、アプリケーション管理クライアント３０の表示デバイス１３０上に表示されるバージョン設定フォーム１７０に入力したアプリケーションＩＤとリリースバージョン名を、バージョン管理サーバ１２に保管されバージョン管理部１５０が管理しているビルド前のアプリケーション構成ファイルセット２００に対して設定する。アプリケーション構成ファイルセット２００にリリースバージョンが設定されると、ビルド部５０は、リリースバージョンが設定された当該アプリケーション構成ファイルセット２００を実行可能な形式である実行ファイルセット１８０に変換する。
【００１２】
また、アプリケーション管理サーバ１０において、アプリケーション情報管理部６０は、利用ユーザに配付するアプリケーションについての情報が記載されているアプリケーション情報ファイル１６０からの情報抽出処理や、情報の追加処理を行う。さらに、アプリケーションリスト生成部７０は、アプリケーション管理サーバ３０にアクセスしているユーザが利用可能なアプリケーションを、アプリケーション情報ファイル１６０から抽出し、リストを生成する。
【００１３】
一方、アプリケーション管理クライアント３０において、認証部１００は、ユーザがアプリケーション管理クライアント３０を起動した際に、認証情報２３０が当該アプリケーション管理クライアント３０内に存在しているかどうかを確認し、存在していない場合はアプリケーション管理サーバ１０にアクセスしてユーザ認証を行う。そして、認証サーバ１１の認証部１０１は、アプリケーション管理サーバ１０が認証サーバ１１にアクセスすると起動し、アプリケーション管理クライアント３０にログインフォーム２１０を送信する。
【００１４】
ログインフォーム２１０がアプリケーション管理クライアント３０の表示デバイス１３０上に表示されると、ユーザは入力デバイス１４０を用いてユーザＩＤとパスワードを入力し、それらを認証サーバ１１に送信する。そして、認証サーバ１１の認証部１０１は、送信されたユーザＩＤとパスワードの整合性をユーザリスト２２０の情報に基づいて確認する。
【００１５】
また、アプリケーション管理サーバ１０におけるアクセス権制御部８０は、認証サーバ１１から送信されてきたユーザＩＤのアプリケーションに対するアクセス権をアクセス権リスト１９０から抽出し、当該アプリケーションへのアクセスを制御する。
【００１６】
さらに、アプリケーション管理クライアント３０において、起動部１１０は、ダウンロードされたアプリケーションを実行するために起動する。また、入出力管理部１２０は、実行されたアプリケーション内でデータの入出力要求があった場合に起動し、入出力データの暗号／復号を行う。
【００１７】
＜アプリケーションのビルド、テスト＞
ここで、開発ユーザが、開発しているアプリケーションをビルドし、テストを行う場合のアプリケーション管理サーバ１０及びアプリケーション管理クライアント３０の動作について説明する。
【００１８】
アプリケーションの開発ユーザは、アプリケーション管理サーバ１０にアクセスして、バージョン設定を要求する。そこで、アプリケーション管理サーバ１０はバージョン設定部４０を起動し、バージョン設定処理を行う。次に、アプリケーション管理サーバ１０はビルド部５０を起動し、バージョン管理サーバ１２からアプリケーション構成ファイルセット２００を受信し、当該アプリケーション構成ファイルセット２００を実行可能な形式の実行ファイルセット１８０に変換する。
【００１９】
次に、開発ユーザは、ビルドしたアプリケーションの実行テストを行うために、アプリケーション管理クライアント３０を起動し、テスト可能なアプリケーションリストを要求する。アプリケーション管理サーバ１０は、アプリケーションリスト生成部７０を起動し、テスト可能なアプリケーションリストを生成して、アプリケーション管理クライアント３０に送信する。
【００２０】
アプリケーション管理クライアント３０は、受信したアプリケーションリストを表示デバイス１３０上に表示し、開発ユーザはその表示に基づいてテストを行うアプリケーションを選択する。そして、アプリケーション管理クライアント３０から、選択されたアプリケーションのダウンロードがアプリケーション管理サーバ１０に要求されると、アプリケーション管理サーバ１０は、配付部９０を起動して、アプリケーションの実行ファイルセット１８０をアプリケーション管理クライアント３０に送信する。アプリケーション管理クライアント３０は、送信されてきた実行ファイルセット１８０を起動部１１０に渡し、その後起動部１１０が当該アプリケーションを実行する。
【００２１】
次に、開発ユーザは、テストを行ったアプリケーションを利用ユーザが利用できるように公開設定を行う。そこで、アプリケーション管理クライアント３０から公開設定要求をアプリケーション管理サーバ１０に要求する。アプリケーション管理サーバ１０は、公開設定処理として、アプリケーション情報管理部６０を起動し、アプリケーション情報ファイル１６０からアプリケーション情報を抽出して、抽出された情報に公開フラグを設定する。
【００２２】
以上の処理によって、開発ユーザは、開発しているアプリケーションをビルドし、テストを行うことができる。
【００２３】
＜アプリケーションのダウンロード＞
次に、利用ユーザが、アプリケーションのダウンロードを行う場合のアプリケーション管理サーバ１０及びアプリケーション管理クライアント３０の動作について説明する。
【００２４】
利用ユーザは、まず、アプリケーション管理クライアント３０を起動する。アプリケーション管理クライアント３０は、認証部１００を起動し、認証情報２３０が当該アプリケーション管理クライアント３０内に存在するかどうかを確認する。その結果、存在しない場合は、アプリケーション管理サーバ１０にアクセスして、認証を要求する。そして、認証を要求されたアプリケーション管理サーバ１０は、認証サーバ１１にアクセスする。認証サーバ１１は、認証部１０１を起動して、認証処理を実行する。そして、認証が終了した後、利用ユーザのユーザＩＤをアプリケーション管理サーバ１０に送信する。
【００２５】
一方、アプリケーション管理サーバ１０は、アクセス権制御部８０を起動して、利用ユーザが利用可能なアプリケーションのリストを生成し、アプリケーション管理クライアント３０に送信する。アプリケーション管理クライアント３０は、受信したアプリケーションリストを表示デバイス１３０上に表示し、利用ユーザは、ダウンロードするアプリケーションを選択する。そして、アプリケーション管理サーバ１０は、アプリケーション管理クライアント３０で選択されたアプリケーションの実行ファイルセット１８０をアプリケーション管理クライアント３０に送信する。アプリケーション管理クライアント３０は、送信されてきた実行ファイルセット１８０を利用ユーザの所定のパーソナルコンピュータ等のローカルディスク上に保存する。
【００２６】
以上の処理によって、利用ユーザは、アプリケーションを所定の保管場所にダウンロードすることができる。
【００２７】
＜アプリケーションの更新＞
次に、利用ユーザが、アプリケーションをバージョンアップして更新する場合のアプリケーション管理サーバ１０及びアプリケーション管理クライアント３０の動作について説明する。まず、利用ユーザがアプリケーションの更新要求を行う。利用ユーザは、アプリケーション管理クライアント３０において表示デバイス１３０上で表示されるアプリケーションリストから更新したいアプリケーションを選択し、その更新を要求する。これによって、アプリケーション管理クライアント３０が、アプリケーション管理サーバ１０に対して、選択されたアプリケーションのＩＤと保存されているバージョンを送信すると、アプリケーション管理サーバ１０は、アプリケーション情報管理部６０を起動し、最新バージョンを抽出して比較する。その結果、アプリケーションのバージョンが異なっている場合（即ち、アプリケーション管理クライアントで保存されているバージョンが古いバージョンの場合）、アプリケーション管理サーバ１０は、最新バージョンをアプリケーション管理クライアント３０に送信する。そして、アプリケーション管理クライアント３０はダウンロードを要求する。
【００２８】
以上の処理により、アプリケーションを最新のバージョンに更新することができる。尚、利用ユーザがアプリケーションの起動を要求した場合、アプリケーション管理クライアント３０がアプリケーション管理サーバ１０に対して常にアプリケーションの更新（バージョンアップ）を要求するようにしておき、サーバ上でアプリケーションの更新がされているような場合はクライアント側のアプリケーションの更新を行った後に、最新のアプリケーションを起動するようにしてもよい。
【００２９】
次に、アプリケーションのバージョンを戻す更新処理（バージョンダウン）について説明する。利用ユーザは、アプリケーション管理クライアント３０の表示で場オス１３０上で表示されるアプリケーションリストからバージョンダウンしたいアプリケーションを選択し、バージョンダウンメニューからバージョンダウンを要求する。これにより、アプリケーション管理クライアント３０は、戻したいバージョン番号を入力するためのウィンドウを表示し、バージョン番号の入力を利用ユーザに促す。そして、アプリケーション管理クライアント３０は、利用ユーザによって入力されたバージョン番号をアプリケーション管理サーバ１０に送信してダウンロードを要求する。これにより、アプリケーションのバージョンを以前のものに戻すことができる。同様にして、利用ユーザがアプリケーションリストに基づいて、所望のバージョンを指定することにより、任意のバージョンへのバージョンアップ・／バージョンダウンができ、配付部９０は、該当するバージョンのアプリケーションを実行ファイルセット１８０から抽出して配付することができる。
【００３０】
また、利用ユーザがアプリケーション起動中にアプリケーションを用いて作成したデータをネットワーク２０上に接続されている所定のパーソナルコンピュータ上に保管する要求を出した場合、アプリケーション管理クライアント３０は、入出力管理部１２０を起動する。入出力管理部１２０は、作成された当該データを暗号化し、所定の保管場所に保存する。さらに、その保存したデータをアプリケーションで利用することをユーザが要求したとき、入出力管理部１２０が起動し、当該データを復号化してアプリケーションに渡す。これにより、利用ユーザが意識することなく、データの暗号化／復号を行うことができる。以上のように、本発明に係る情報処理システムにおいてはそれぞれの処理を好適に実施することができる。
【００３１】
＜実施例＞
以下、本発明に係る情報処理システムの実施例について、図面を参照して詳細に説明する。ここで、ネットワーク２０は、以下では、一例として、ＴＣＰ／ＩＰを通信プロトコルとするイントラネットを用いる。もちろん、その他の種類のネットワークであってもよい。また、アプリケーション管理サーバ１０は、ＴＣＰ／ＩＰ上でアプリケーション管理クライアント３０、認証サーバ１１、及びバージョン管理サーバ１２との通信機能を持つと仮定する。さらに、ユーザとして、開発ユーザと利用ユーザが存在し、二人が本情報処理システムを利用すると仮定する。さらに、バージョン管理サーバ１２は、ＣＶＳ（Ｃｏｎｃｕｒｒｅｎｔ  Ｖｅｒｓｉｏｎ  Ｓｙｓｔｅｍ）サーバであると仮定する。さらにまた、アプリケーション情報ファイル１６０は、図２で示されるようにＸＭＬ形式で記述されているものとする。すなわち、図２は、本実施形態で使用されるアプリケーション情報ファイル１６０のＸＭＬ形式の記述例を示す図である。
【００３２】
≪実行可能な形式のファイルの生成処理≫
まず、開発ユーザがリリースバージョンを設定し、実行可能な形式のファイルを生成するまでの処理を具体的に説明する。
【００３３】
図３は、本実施形態に係る情報処理システムを利用して、開発ユーザがリリースバージョンを設定し、実行可能な形式のファイルを生成する処理手順を説明するためのフローチャートである。まず、開発ユーザは、アプリケーション管理サーバ１０にバージョン設定フォーム１７０を要求する（ステップＳ１１）。これにより、アプリケーション管理サーバ１０は、バージョン設定部４０を起動して、以下の処理を実行する（ステップＳ１２）。
【００３４】
図４は、ステップＳ１２でアプリケーション管理サーバ１０のバージョン設定部４０が実行する処理の細部手順を説明するためのフローチャートである。まず、バージョン設定部４０は、バージョン設定フォーム１７０をアプリケーション管理クライアント３０に送信する（ステップＳ１２１）。アプリケーション管理クライアント３０は、受信したバージョン設定フォーム１７０を表示デバイス１３０上に表示する（ステップＳ１２２）。図６は、本実施形態の表示デバイス１３０上に表示されるバージョン設定フォーム１７０のイメージ図である。ここで、開発ユーザは、入力デバイス１４０を操作して、バージョン設定フォーム１７０中のアプリケーションリストからバージョンを設定するアプリケーションを選択し、テキスト入力部にバージョン番号を入力する。本実施形態において開発ユーザは、入力デバイス１４０を用いて、
選択されたアプリケーションＩＤ＝１
バージョン番号＝１．０．１
という入力を行ったものとする。さらに、開発ユーザは、送信ボタンを選択して、入力した値をアプリケーション管理サーバ１０に送信する（ステップＳ１２３）。
【００３５】
そして、アプリケーション管理サーバ１０は、受信したバージョン番号とアプリケーションＩＤをバージョン管理サーバ１２に渡す（ステップＳ１２４）。また、バージョン設定部４０は、アプリケーション情報管理部６０にアプリケーションＩＤを渡す。アプリケーション情報管理部６０は、アプリケーション情報ファイル１６０からアプリケーションＩＤを持つＩＤのアプリケーション情報を抽出し、そのアプリケーション情報からバージョン管理サーバ１２のアプリケーション特定キーを取得して、当該アプリケーション特定キーをバージョン設定部４０に渡す（ステップＳ１２５）。尚、本実施形態では、アプリケーション特定キーとして、
ＫＥＹ＝”ａｐｐｌｉｃａｔｉｏｎ１”
が取得されたものとする。
【００３６】
次いで、バージョン設定部４０は、バージョン管理サーバ１２のバージョン管理部１５０が管理しているアプリケーション構成ファイルにリリースバージョンを設定する（ステップＳ１２６）。ここで、バージョン管理サーバ１２はＣＶＳサーバであるので、以下のコマンドを実行することで、ＫＥＹで特定できるアプリケーションの構成ファイルに対して、リリースバージョンを設定することができる。
【００３７】
ｃｖｓ  ｃｈｅｃｋｏｕｔ  −ｒ  ｒｅｌｅａｓｅ−１＿０＿１  ａｐｐｌｉｃａｔｉｏｎ１
尚、上記コマンドは、ＣＶＳサーバに保管されているアプリケーション構成ファイルのその時点での各ファイルの開発バージョンに対して、”ｒｅｌｅａｓｅ−１＿０＿１”というリリースバージョンを設定したことを示している。
【００３８】
ステップＳ１２において上述したようにバージョン設定部４０が処理を実行した後、アプリケーションの実行ファイルを生成するために、アプリケーション管理サーバ１０は、ビルド部５０にアプリケーションＩＤを渡して起動する。これにより、ビルド部５０が処理を実行する（ステップＳ１３）。
【００３９】
図５は、ステップＳ１３でビルド部５０が実行する処理の細部手順を説明するためのフローチャートである。まず、ビルド部５０は、ステップＳ１２５と同様にアプリケーション特定キーを取得し、取得したアプリケーション特定キーとバージョン番号をバージョン管理サーバ１２に送信して、アプリケーション構成ファイルセット２００を要求する（ステップＳ１３１）。
【００４０】
ここで、バージョン管理サーバ１２はＣＶＳサーバであるため、ビルド部５０は、コマンド”ｃｖｓ  ｃｈｅｃｋｏｕｔ−ｒ  ｒｅｌｅａｓｅ−１＿０＿１  ａｐｐｌｉｃａｔｉｏｎ１”を実行することで、アプリケーション構成ファイルセット２００を取得することができる。尚、上記コマンドは、ＣＶＳサーバのａｐｐｌｉｃａｔｉｏｎ１以下に保管されているアプリケーション構成ファイル２００の開発バージョンのうち、リリースバージョン”ｒｅｌｅａｓｅ−１＿０＿１”が設定された開発バージョンのファイルを抽出することを示している。
【００４１】
次に、バージョン管理サーバ１２は、対象のアプリケーション構成ファイルセット２００をアプリケーション管理サーバ１０に送信する（ステップＳ１３２）。そして、ビルド部５０は、ステップＳ１３２で送信されてきたアプリケーション構成ファイルセット２００を実行可能な形式に変換する（ステップＳ１３３）。ここで、ステップＳ１３２で送信されてきたアプリケーション構成ファイルセット２００の各ファイルは、Ｊａｖａ（登録商標）のソースコードファイルであると仮定する。そのため、ビルド部５０は、ソースコードファイルをコンパイルし、クラスファイルを生成する。さらに、ビルド部５０は、生成された各クラスファイルを１つのＪａｒファイルにまとめることにより、実行可能な形式に変換することができる。
【００４２】
次いで、ビルド部５０は、暗号化プログラムを呼び出し、ステップＳ１３３で生成されたファイルを暗号化する（ステップＳ１３４）。ここで作成された暗号化されたＪａｒファイルは、”ａｐｐｌｉｃａｔｉｏｎ１．ｊａｒ”という名称で／ａｐｐｌｉｃａｔｉｏｎｓ／ａｒｃｈｉｖｅ／以下に保管されることとする。
【００４３】
そして、上述したようにステップＳ１３でビルド部５０が処理を実行した後に、アプリケーション情報管理部６０は、アプリケーション情報ファイル１６０にアプリケーションを新規登録する、又はバージョンを追加する（ステップＳ１４）。このため、アプリケーション管理サーバ１０はアプリケーション情報管理部６０を起動し、起動されたアプリケーション情報管理部５０が、アプリケーション情報ファイル１６０にステップＳ１２３で送信されてきたデータをアプリケーション情報リストに追加する。図７は、ステップＳ１２３で送信されてきたデータを追加して更新したアプリケーション情報ファイル１６０の一例を示す図である。
【００４４】
以上が、本実施形態に係る情報処理システムを利用して、開発しているアプリケーション構成ファイルの開発バージョンを管理しているアプリケーション管理サーバ１０にリリースバージョンを設定し、実行可能な形式のファイルを生成するまでの処理の流れである。
【００４５】
≪ビルドしたアプリケーションを公開するまでの処理≫
次に、開発ユーザが、図３のフローチャートで示した各ステップでビルドしたアプリケーションを利用ユーザに公開する前に動作確認し、公開するまでの処理の流れを、具体的に説明する。
【００４６】
図８は、本実施形態に係る情報処理システムを利用して、ビルドされたアプリケーションを動作確認した後に利用ユーザに公開する処理手順を説明するためのフローチャートである。
【００４７】
まず、開発ユーザが、アプリケーション管理クライアント３０を起動し、テスト可能アプリケーションリストをアプリケーション管理サーバ１０に要求する（ステップＳ２１）。次に、アプリケーション管理サーバ１０は、アプリケーションリスト生成部７０を起動する。これによって、アプリケーションリスト生成部７０は次に説明する処理を実行する（ステップＳ２２）。図９は、ステップＳ２２におけるアプリケーションリスト生成部７０における処理の細部手順を説明するためのフローチャートである。
【００４８】
すなわち、アプリケーションリスト生成部７０は、アプリケーション情報ファイル１６０に登録されているアプリケーションのうち、テスト待ち状態のアプリケーションの情報を抽出し、アプリケーション管理クライアント３０で表示可能な形式にアプリケーションリストを生成する（ステップＳ２２１）。本実施形態では、アプリケーション管理クライアント３０は、ＨＴＭＬ形式で表示可能であるとする。今、テスト待ち状態のアプリケーションはｖｅｒｓｉｏｎタグのａｖａｉｌａｂｌｅ属性で示されており、ａｖａｉｌａｂｌｅ＝ｆａｌｓｅのとき、テスト待ち状態であるものとする。ここで、アプリケーション情報ファイル１６０には、アプリケーションＩＤ１のバージョン番号１．０．１と、アプリケーションＩＤ３のバージョン番号１．０．２のａｖａｉｌａｂｌｅ属性がｆａｌｓｅになっているため、図１１に示すようなテスト可能なアプリケーションリストを生成する。すなわち、図１１は、アプリケーションリスト生成部７０で生成されるテスト可能なアプリケーションリストの一例を示す図である。
【００４９】
そして、アプリケーションリスト生成部７０でステップＳ２２１で生成されたアプリケーションリストをアプリケーション管理クライアント３０に送信する（ステップＳ２２２）。
【００５０】
次いで、アプリケーション管理クライアント３０は、上述したステップＳ２２で送信されたアプリケーションリストを表示デバイス１３０上に表示する（ステップＳ２３）。図１２は、本実施形態に係る表示デバイス１３０上に表示される、ステップＳ２２で送信されたアプリケーションリストの表示例を示すイメージ図である。
【００５１】
さらに、開発ユーザは、入力デバイス１４０を用いて表示されたアプリケーションリストからテストするアプリケーションを選択し、送信ボタンを押下する（ステップＳ２４）。尚、本実施形態において、開発ユーザはアプリケーションＩＤ＝１のアプリケーションを選択したものとする。そして、アプリケーション管理クライアント３０は、選択されたアプリケーションＩＤをアプリケーション管理サーバ１０に送信し、当該アプリケーションＩＤを持つＩＤのアプリケーションの実行に必要な実行ファイルセット１８０を要求する。
【００５２】
そして、アプリケーション管理サーバ１０は配付部９０を起動し、当該配付部９０は以下の処理を実行する（ステップＳ２５）。図１０は、ステップＳ２５における配付部９０における処理の細部手順を説明するためのフローチャートである。
【００５３】
まず、アプリケーション情報管理部６０を起動し、アプリケーション情報ファイル１６０から、アプリケーションＩＤを持つアプリケーションの実行に必要なファイルセット１８０を特定する（ステップＳ２５１）。ここで、
＜ｆｉｌｅｓｅｔ＞
＜ｆｉｌｅ  ｐａｔｈ＝”／ａｐｐｌｉｃａｔｉｏｎｓ／ａｒｃｈｉｖｅ／ａｐｐｌｉｃａｔｉｏｎ１＿１．０．１．ｊａｒ”／＞
＜ｆｉｌｅ  ｐａｔｈ＝”／ａｐｐｌｉｃａｔｉｏｎｓ／ｌｉｂ／ｌｉｂ１．ｊａｒ”／＞
＜ｆｉｌｅ  ｐａｔｈ＝”／ａｐｐｌｉｃａｔｉｏｎｓ／ｌｉｂ／ｌｉｂ２．ｊａｒ”／＞
＜／ｆｉｌｅｓｅｔ＞
というデータが抽出されたものとする。
【００５４】
上記データでは、アプリケーションＩＤのアプリケーションが実行するのに必要なファイルは、 ”／ａｐｐｌｉｃａｔｉｏｎｓ／ａｒｃｈｉｖｅ／”ディレクトリに置かれている”ａｐｐｌｉｃａｔｉｏｎｓ１＿１．０．１．ｊａｒ”と、”／ａｐｐｌｉｃａｔｉｏｎｓ／ｌｉｂ／”ディレクトリに置かれている”ｌｉｂ．ｊａｒ”、”ｌｉｂ２．ｊａｒ”であることが示されている。
【００５５】
次に、配付部９０は、ステップＳ２５１で特定したファイルセット１８０をアプリケーション管理クライアント３０に送信する（ステップＳ２５２）。
【００５６】
上述したように、配付部９０が処理をした後、アプリケーション管理クライアント３０は起動部１１０を起動し、起動部１１０は復号プログラムを呼び出して、ステップＳ２５２で送信されてきたファイルセット１８０を復号して実行する（ステップＳ２６）。
【００５７】
以上が、開発ユーザによって、図３のフローチャートを用いて説明したようにビルドしたアプリケーションの動作確認のための環境を、開発ユーザに提供するまでの処理の流れである。
【００５８】
次に、開発ユーザがビルドした上記アプリケーションを利用ユーザに公開できるように設定するまでの処理の流れを、図１３及び図１４を用いて具体的に説明する。図１３は、開発ユーザがビルドしたアプリケーションを利用ユーザに公開できるように設定するまでの処理手順を説明するためのフローチャートである。
【００５９】
まず、アプリケーション管理クライアント３０は、アプリケーションＩＤを送信し、アプリケーションＩＤを持つアプリケーションの公開の設定を要求する（ステップＳ３１）。次いで、アプリケーション管理サーバ１０がアプリケーション情報管理部６０を起動し、アプリケーション情報管理部６０は、以下の処理を実行する（ステップＳ３２）。図１４は、ステップＳ３２におけるアプリケーション情報管理部６０の処理の細部手順を説明するためのフローチャートである。
【００６０】
まず、アプリケーション情報管理部６０は、アプリケーションＩＤと一致するＩＤを持つアプリケーション情報をアプリケーション情報ファイル１６０から抽出する（ステップＳ３２１）。
【００６１】
本実施形態では、
＜ａｐｐｌｉｃａｔｉｏｎ  ｉｄ＝”１”＞
＜ｎａｍｅ＞Ａｐｐ１＜／ｎａｍｅ＞
＜ｖｅｒｓｉｏｎｓ＞
＜ｖｅｒｓｉｏｎ  ｉｄ＝”１．０．１”  ａｖａｉｌａｂｌｅ＝”ｆａｌｓｅ”＞
＜ｖｅｒｓｉｏｎ＞
＜／ｖｅｒｓｉｏｎｓ＞
＜／ａｐｐｌｉｃａｔｉｏｎ＞
というデータが抽出されたものとする。
【００６２】
次いで、アプリケーション情報管理部６０は、ステップＳ３２１で抽出したアプリケーション情報に公開フラグを設定する（ステップＳ３２２）。ここで、本実施形態では、
＜ｖｅｒｓｉｏｎ  ｉｄ＝”１．０．１”  ａｖａｉｌａｂｌｅ＝”ｔｒｕｅ”＞
という公開フラグを設定したものとする。これは、ａｖａｉｌａｂｌｅ＝”ｔｒｕｅ”とすることにより、リリースバージョン１．０．１に登録されているファイルセット１８０が利用可能になったことを示している。
【００６３】
そして、アプリケーション情報管理部６０は、公開フラグを設定したアプリケーション情報をアプリケーション情報ファイル１６０に保存（保管）する（ステップＳ３２３）。
【００６４】
ここまでが、開発ユーザがアプリケーションのバージョンを設定し、そのバージョンのアプリケーションの実行可能ファイルを生成し、動作を確認して、アプリケーションを公開するまでの処理の流れである。
【００６５】
≪公開されたアプリケーションのダウンロード≫
次に、利用ユーザが公開されたアプリケーションをダウンロードするまでの処理の流れを、具体的に説明する。図１５は、本実施形態に係る情報処理システムを用いて利用ユーザが公開されたアプリケーションをダウンロードするまでの処理の流れを説明するためのフローチャートである。
【００６６】
まず、利用ユーザは、アプリケーション管理クライアント３０を起動する（ステップＳ４１）。次いで、アプリケーション管理クライアント３０が認証部１００を起動し、認証部１００は次の処理を実行する（ステップＳ４２）。図１６及び図１７は、ステップＳ４２における認証部１００の処理の細部手順を説明するためのフローチャートである。
【００６７】
まず、認証部１００は、認証情報２３０がアプリケーション管理クライアント３０内に存在するか否かを確認する（ステップＳ４２１）。その結果、認証情報２３０が存在する場合（ステップＳ４２２でＹｅｓの場合）は、後述するステップＳ４３の処理に進む。一方、認証情報２３０が存在しない場合（ステップＳ４２２でＮｏの場合）、認証部１００はアプリケーション管理サーバ１０にアクセスする（ステップＳ４２３）。そして、アプリケーション管理サーバ１０は認証サーバ１１にアクセスする（ステップＳ４２４）。認証サーバ１１は、ログインフォーム２１０をアプリケーション管理クライアント３０に送信する（ステップＳ４２５）。
【００６８】
アプリケーション管理クライアント３０は、受信したログインフォーム２１０を表示デバイス１３０上に表示する（ステップＳ４２６）。図１９は、表示デバイス１３０上に表示されるログインフォーム２１０の表示例を示すイメージ図である。そこで、利用ユーザは、図１９に示すようなログインフォーム２１０中のテキスト入力部に、ユーザＩＤ（Ｕｓｅｒ  ＩＤ）とパスワード（Ｐａｓｓｗｏｒｄ）をそれぞれ入力して送信ボタンを選択し、入力したデータを認証サーバ１１に送信する（ステップＳ４２７）。
【００６９】
本実施形態において、利用ユーザは、以下のデータ、すなわち、
｛Ｕｓｅｒ  ＩＤ，Ｐａｓｓｗｏｒｄ｝＝｛ＡＡＡ，ＢＢＢ｝
を入力したものとする。
【００７０】
そして、認証サーバ１１は、ユーザリスト２２０から上記Ｕｓｅｒ  ＩＤ（ＡＡＡ）と一致するＩＤを持つレコードを有無を確認して取得する（ステップＳ４２８）。ここで、ユーザリスト２２０には図２０に示すようなデータが保管されているものとする。すなわち、図２０は、ユーザリスト２２０に保管されているデータの一例を示す図である。
【００７１】
そして、ユーザリスト２２０内からＵｓｅｒ  ＩＤと一致するＩＤを持つデータが取得できたかどうかを判断する（ステップＳ４２９）。その結果、データが取得できなかった場合（Ｎｏ）、エラーメッセージをアプリケーション管理クライアント３０に送信する等して、本処理を終了する。一方、データが取得できた場合（Ｙｅｓ）は、ステップＳ４２９に進む。ここで、本実施形態では、以下のデータ、
｛Ｕｓｅｒ  ＩＤ，Ｐａｓｓｗｏｒｄ｝＝｛ＡＡＡ，ＢＢＢ｝
が取得できたものとする。
【００７２】
次いで、ステップＳ４２５で送信されたデータとステップＳ４２８で取得したデータとを比較して、Ｕｓｅｒ  ＩＤとＰａｓｓｗｏｒｄが一致するかどうかを確認する（ステップＳ４３０）。そしてその確認結果を判断し（ステップＳ４３１）、一致しない場合（Ｎｏ）は、エラーメッセージをアプリケーション管理サーバ１０に送信する等して、本処理を終了する。一方、一致する場合（Ｙｅｓ）は、Ｕｓｅｒ  ＩＤをアプリケーション管理サーバ１０に送信する（ステップＳ４３２）。本実施例では、上述のようにＵｓｅｒ  ＩＤとＰａｓｓｗｏｒｄが一致しているので、上記Ｕｓｅｒ  ＩＤをアプリケーション管理サーバ１０に送信することとなる。
【００７３】
次いで、アプリケーション管理サーバ１０は、アクセス権制御部８０を起動する。これによって、起動されたアクセス権制御部８０は、アクセス権リスト１９０からＵｓｅｒ  ＩＤと一致するアプリケーションＩＤを取得する（ステップＳ４３）。尚、一致するアプリケーションＩＤが存在しない場合は、エラーメッセージをアプリケーション管理クライアント３０に送信し、処理を終了させる。
【００７４】
ここで、本実施形態では、
Ａｐｐｌｉｃａｔｉｏｎ  ＩＤ＝｛１，３｝
というアプリケーションＩＤが取得できたものとする。これは、Ｕｓｅｒ  ＩＤを持つユーザが、アプリケーションＩＤ１と３のアプリケーションがダウンロード可能であることを示す。
【００７５】
そして、アプリケーション管理サーバ１０は、アプリケーションリスト生成部７０を起動し、以下で説明する処理を実行する（ステップＳ４４）。図１８は、ステップＳ４４でアプリケーションリスト生成部７０が実行する処理の細部手順を説明するためのフローチャートである。
【００７６】
アプリケーションリスト生成部７０は、まず、アプリケーション情報リストから、ステップＳ４３で取得したアプリケーションＩＤと一致するアプリケーション情報を取得する（ステップＳ４４１）。そして、一致するアプリケーション情報が存在するか否かを判断する（ステップＳ４４２）。その結果、一致するアプリケーション情報が存在しない場合（Ｎｏ）は、エラーメッセージをアプリケーション管理クライアント３０に送信して、当該処理を終了する。一方、存在する場合（Ｙｅｓ）、アプリケーション生成部７０は、ステップＳ４４１で取得した情報から、アプリケーションリストを生成し、アプリケーション管理クライアント３０に送信する（ステップＳ４４３）。
【００７７】
アプリケーション管理クライアント３０は、上記ステップＳ４４３で送信されてきたアプリケーションリストを表示デバイス１３０上に表示する（ステップＳ４５）。ここで、図２１は、表示デバイス１３０上に表示されるアプリケーションリストの表示例を示すイメージ図である。
【００７８】
ここで、利用ユーザは、入力デバイス１４０を用いて、表示デバイス１３０に表示されているアプリケーションリストの中から、ダウンロードしたいアプリケーションを選択して、ダウンロードを要求する（ステップＳ４６）。そして、アプリケーション管理クライアント３０は、選択されたアプリケーションのアプリケーションＩＤをアプリケーション管理サーバ１０に送信する（ステップＳ４７）。そして、配付部９０は、ステップＳ２６で説明した手順に従って、ファイルセットを送信する（ステップＳ４８）。
【００７９】
これによって、アプリケーション管理クライアント３０は、配付部９０から送信されてきた実行ファイルを所定のディレクトリに保存する（ステップＳ４９）。ここで、本実施形態では、
Ｃ：／ａｐｐｌｉｃａｔｉｏｎｓ／ａｐｐｌｉｃａｔｉｏｎ１／１．０．１／
で示される場所に当該実行ファイルを保存したものとする。
【００８０】
以上説明した処理が、ユーザによってアプリケーション管理クライアント３０が起動されてから、利用したいアプリケーションをダウンロードするまでの処理の流れである。
【００８１】
≪アプリケーションの更新≫
次に、ダウンロードしたアプリケーションを起動し、アプリケーションがバージョンアップしている場合に、アプリケーションを更新する処理の流れを具体的に説明する。図２２は、アプリケーションがバージョンアップしている場合に当該アプリケーションを更新する処理の手順を説明するためのフローチャートである。尚、本フローチャートを適用する際に、図１５のフローチャートを用いて説明したステップＳ４１からＳ４５までの処理（アプリケーション管理クライアント３０の起動からアプリケーションリスト表示までの処理）は終了しているものとする。
【００８２】
そこで、利用ユーザは、表示デバイス１３０上に表示に基づいてアプリケーションを選択し、その更新を要求する（ステップＳ５１）。図２４は、アプリケーション管理クライアント３０の表示デバイス１３０上に表示されるウィンドウの一例を示すイメージ図である。また、図２５は、図２４に示すウィンドウにおける選択可能なメニュー項目例を表示した表示例を示すイメージ図である。そして、利用ユーザは、アプリケーションリストから更新したいアプリケーションを選択し、メニューの更新項目を選択する。
【００８３】
アプリケーション管理クライアント３０は、アプリケーション管理サーバ１０にステップＳ５１で利用ユーザに選択されたアプリケーションのアプリケーションＩＤと、アプリケーション保存ディレクトリに現在保存されているアプリケーションのバージョン番号とを送信し、更新情報を要求する（ステップＳ５２）。尚、本実施形態では、アプリケーション保存ディレクトリに保存されているバージョン番号は１．０．１であるため、アプリケーションＩＤ＝１、バージョン番号＝１．０．１をアプリケーション管理サーバ１０に送信するものとする。
【００８４】
次いで、アプリケーション管理サーバ１０は、アプリケーション情報管理部６０を起動して以下に示す処理を実行する（ステップＳ５３）。図２３は、ステップＳ５３でアプリケーション情報管理部６０が実行する処理の細部手順を説明するためのフローチャートである。
【００８５】
まず、アプリケーション情報管理部６０は、送信されたアプリケーションＩＤと一致するＩＤを持つアプリケーション情報をアプリケーション情報リストから抽出し、最新バージョン番号を取得する（ステップＳ５３１）。ここで、本実施形態では、
ｖｅｒｓｉｏｎ＝１．０．２
というバージョン番号が取得できたものとする。
【００８６】
次いで、ステップＳ５３１で取得されたバージョン番号とステップＳ５２でアプリケーション管理クライアント３０から送信されたバージョン番号とを比較する（ステップＳ５３２）。そして、バージョン番号が更新されているかどうかを判断する（ステップＳ５３３）。
【００８７】
その結果、ステップＳ５３１で取得されたバージョン番号の方が大きい場合は更新されていると判断して（Ｙｅｓ）、ステップＳ５３１で取得したバージョン番号をアプリケーション管理クライアント３０に送信する（ステップＳ５３４）。一方、ステップＳ５３１で取得されたバージョン番号の方が大きくない場合は更新されていないと判断して（Ｎｏ）、ステップＳ５２でアプリケーション管理クライアント３０から送信されたバージョン番号をアプリケーション管理クライアント３０に送信する（ステップＳ５３５）。
【００８８】
ここで、上記例では、ステップＳ５３１で取得されたバージョン番号とステップＳ５２でアプリケーション管理クライアント３０から送信されたバージョン番号とを比較してみると、前者のバージョン番号はｖｅｒｓｉｏｎ＝１．０．１、後者のバージョン番号はｖｅｒｓｉｏｎ＝１．０．２で後者のバージョン番号の方が大きいため、ステップＳ５３１で取得したバージョン番号をアプリケーション管理クライアント３０に送信することとなる。
【００８９】
アプリケーション管理クライアント３０は、ステップＳ５３３又はステップＳ５３４で送信されたバージョン番号とステップＳ５２で送信されたバージョン番号とを比較する（ステップＳ５４）。そして、それらのバージョン番号が一致するかどうかを判断する（ステップＳ５５）。その結果、一致すると判断された場合（Ｙｅｓ）は、本処理を終了する。一方、一致しないと判断された場合（Ｎｏ）は、ステップＳ５６に処理を進める。尚、本実施形態では、送信したバージョン番号と異なると判断されるため、ステップＳ５６に処理を進めることとなる。
【００９０】
アプリケーション管理クライアント３０は、アプリケーションＩＤとステップＳ５４で取得したバージョン番号をアプリケーション管理サーバ１０に送信し、ダウンロードを要求する（ステップＳ５６）。そして、以降はステップＳ４６と同様の処理を行う（ステップＳ５７）。
【００９１】
以上の説明が、利用ユーザがアプリケーションの更新を要求したときの、更新されるまでの処理の流れである。
【００９２】
次に、利用ユーザが明示的にアプリケーションの更新を要求するのではなく、アプリケーションの起動を要求した際にアプリケーションが更新されている場合に、保存しているアプリケーションを更新して起動するまでの処理の流れを説明する。図２６は、起動時に保存しているアプリケーションを更新して起動するまでの処理の流れを説明するためのフローチャートである。尚、本フローチャートを適用する際も同様に、図１５のフローチャートを用いて説明したステップＳ４１からＳ４５までの処理は終了しているものとする。
【００９３】
まず、利用ユーザは、アプリケーションを選択し、起動を要求する（ステップＳ６１）。本実施形態では、利用ユーザはアプリケーションＩＤ＝１のアプリケーションを選択したものとする。次に、ステップＳ５２と同様の処理を行う（ステップＳ６２）。そして、アプリケーション管理クライアント３０は、起動部１１０を起動し、起動された起動部１１０が、ステップＳ２７と同様の処理を行う（ステップＳ６３）。本処理によって、利用ユーザがアプリケーションの更新を意識すること無く、アプリケーションの更新を行うことが可能となる。
【００９４】
次に、アプリケーションのバージョンを以前のバージョンに戻す処理の流れについて、具体的に説明する。図２７は、アプリケーションのバージョンを以前のバージョンに戻す処理手順を説明するためのフローチャートである。尚、本フローチャートを適用する際も同様に、図１５のフローチャートを用いて説明したステップＳ４１からＳ４５までの処理は終了しているものとする。
【００９５】
まず、利用ユーザがアプリケーションを選択し、バージョンダウンを要求する（ステップＳ７１）。ここで、アプリケーション管理クライアント３０では、図２４に示すようなウィンドウが表示されているものとする。また、選択可能なメニューには図２５に示すような項目があるものとする。ここで、利用ユーザはアプリケーションリストからバージョンダウンしたいアプリケーションを選択し、メニューのバージョンダウン項目を選択する。
【００９６】
次いで、アプリケーション管理クライアント３０は、バージョン入力ウィンドウを表示デバイス１３０上に表示する（ステップＳ７２）。そして、利用ユーザは、バージョン入力ウィンドウのテキスト入力部にバージョン番号を入力し、送信ボタンを選択する（ステップＳ７３）。その後は、前述したステップＳ５５、６と同様の処理を行う。以上の処理により、利用ユーザが要求するバージョンにアプリケーションを戻すことができる。
【００９７】
≪アプリケーション利用中のデータの保存及び読み込み≫
次に、利用ユーザがアプリケーション利用中にデータをパーソナルコンピュータ上に保存するときと、保存したデータを読み込むときの処理の流れを説明する。図２８は、アプリケーション利用中における出力データに関する処理手順を説明するためのフローチャートである。尚、本フローチャートを適用する際も同様に、図１５のフローチャートを用いて説明したステップＳ４１からＳ４５までの処理は終了しているものとする。また、利用ユーザは、アプリケーションを実行中であると仮定する。
【００９８】
まず、利用ユーザがアプリケーションの機能において、データの保存を要求する（ステップＳ８１）。ここで、利用ユーザは、データをディレクトリ”Ｃ：／ａｐｐｌｉｃａｔｉｏｎｓ／ｄａｔａ／ｄａｔａ１．ｄａｔ”に保存することを要求したとする。
【００９９】
次いで、アプリケーション管理クライアント３０は、入出力管理部１２０を起動し、入出力管理部１２０は以下の処理を実行する（ステップＳ８２）。図２９は、入出力管理部１２０で実行されるステップＳ８２の処理の細部手順を説明するためのフローチャートである。
【０１００】
まず、実行中のアプリケーションの出力プロセスを取得する（ステップＳ８２１）。そして、取得した出力プロセスから、出力データを取得する（ステップＳ８２２）。さらに、暗号化プログラムを起動し、ステップＳ８２２で取得した出力データを暗号化する（ステップＳ８２３）。そして、出力プロセスから、利用ユーザが要求した保存先のファイルパスを取得する（ステップＳ８２４）。ここでは、ステップＳ８１で利用ユーザが要求したファイルパスが取得されたものとする。そして、ステップＳ８２４で取得したファイルパスに、ステップＳ８２３で暗号化したデータを保存する（ステップＳ８２５）。
【０１０１】
ここまでが、アプリケーション利用中に利用ユーザが保存したデータに対する処理である。次に、保存したデータをアプリケーションで利用するまでの処理の流れを具体的に説明する。図３０は、保存したデータをアプリケーションで利用するまでの処理手順を説明するためのフローチャートである。
【０１０２】
まず、利用ユーザが、アプリケーションの機能において、データのロードを要求する（ステップＳ９１）。そして、アプリケーション管理クライアント３０は、入出力管理部１２０を起動し、入出力管理部１２０は以下で示す処理を実行する（ステップＳ９２）。図３１は、入出力管理部１２０で実行されるステップＳ９２の処理の細部手順を説明するためのフローチャートである。
【０１０３】
まず、実行中のアプリケーションの入力プロセスを取得する（ステップＳ９２１）。次いで、取得した入力プロセスから、利用ユーザが要求したデータのファイルパスを取得する（ステップＳ９２２）。ここで、ステップＳ８で保存したデータの読み込みを利用ユーザが要求したものとする。従って、ここで得られるファイルパスは、”Ｃ：／ａｐｐｌｉｃａｔｉｏｎｓ／ｄａｔａ／ｄａｔａ１．ｄａｔ”となる。そして、ステップＳ９２２で取得したファイルパスから、ファイルを呼び出し、データを読み込む（ステップＳ９２３）。
【０１０４】
さらに、復号プログラムを起動し（ステップＳ９２４）、ステップＳ９２３で取得したデータを復号する（ステップＳ９２５）。そして、入力プロセスにステップＳ９２４で復号したデータを渡す（ステップＳ９２６）。これにより、ステップＳ８で暗号化して保存したデータを、アプリケーションが利用可能な形に復号し、アプリケーションで利用することができる。
【０１０５】
以上、実施形態例を詳述したが、本発明は、例えば、システム、装置、方法、プログラム若しくは記憶媒体等としての実施態様をとることが可能であり、具体的には、複数の機器から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。
【０１０６】
尚、本発明は、前述した実施形態の機能を実現するソフトウェアのプログラム（実施形態では図に示すフローチャートに対応したプログラム）を、システムあるいは装置に直接あるいは遠隔から供給し、そのシステムあるいは装置のコンピュータが該供給されたプログラムコードを読み出して実行することによっても達成される場合を含む。
【０１０７】
従って、本発明の機能処理をコンピュータで実現するために、該コンピュータにインストールされるプログラムコード自体も本発明を実現するものである。つまり、本発明は、本発明の機能処理を実現するためのコンピュータプログラム自体も含まれる。
【０１０８】
その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、ＯＳに供給するスクリプトデータ等の形態であっても良い。
【０１０９】
プログラムを供給するための記録媒体としては、例えば、フロッピー（登録商標）ディスク、ハードディスク、光ディスク、光磁気ディスク、ＭＯ、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＣＤ−ＲＷ、磁気テープ、不揮発性のメモリカード、ＲＯＭ、ＤＶＤ（ＤＶＤ−ＲＯＭ，ＤＶＤ−Ｒ）などがある。
【０１１０】
その他、プログラムの供給方法としては、クライアントコンピュータのブラウザを用いてインターネットのホームページに接続し、該ホームページから本発明のコンピュータプログラムそのもの、もしくは圧縮され自動インストール機能を含むファイルをハードディスク等の記録媒体にダウンロードすることによっても供給できる。また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるＷＷＷサーバも、本発明に含まれるものである。
【０１１１】
また、本発明のプログラムを暗号化してＣＤ−ＲＯＭ等の記憶媒体に格納してユーザに配布し、所定の条件をクリアしたユーザに対し、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせ、その鍵情報を使用することにより暗号化されたプログラムを実行してコンピュータにインストールさせて実現することも可能である。
【０１１２】
また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現される他、そのプログラムの指示に基づき、コンピュータ上で稼動しているＯＳなどが、実際の処理の一部または全部を行い、その処理によっても前述した実施形態の機能が実現され得る。
【０１１３】
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行い、その処理によっても前述した実施形態の機能が実現される。
【図面の簡単な説明】
【０１１４】
【図１】本発明の一実施形態に係る情報処理システムの構成を示すブロック図である。
【図２】本実施形態で使用されるアプリケーション情報ファイル１６０のＸＭＬ形式の記述例を示す図である。
【図３】本実施形態に係る情報処理システムを利用して、開発ユーザがリリースバージョンを設定し、実行可能な形式のファイルを生成する処理手順を説明するためのフローチャートである。
【図４】ステップＳ１２でアプリケーション管理サーバ１０のバージョン設定部４０が実行する処理の細部手順を説明するためのフローチャートである。
【図５】ステップＳ１３でビルド部５０が実行する処理の細部手順を説明するためのフローチャートである。
【図６】本実施形態の表示デバイス１３０上に表示されるバージョン設定フォーム１７０のイメージ図である。
【図７】ステップＳ１２３で送信されてきたデータを追加して更新したアプリケーション情報ファイル１６０の一例を示す図である。
【図８】本実施形態に係る情報処理システムを利用して、ビルドされたアプリケーションを動作確認した後に利用ユーザに公開する処理手順を説明するためのフローチャートである。
【図９】ステップＳ２２におけるアプリケーションリスト生成部７０における処理の細部手順を説明するためのフローチャートである。
【図１０】ステップＳ２５における配付部９０における処理の細部手順を説明するためのフローチャートである。
【図１１】アプリケーションリスト生成部７０で生成されるテスト可能なアプリケーションリストの一例を示す図である。
【図１２】本実施形態に係る表示デバイス１３０上に表示される、ステップＳ２２で送信されたアプリケーションリストの表示例を示すイメージ図である。
【図１３】開発ユーザがビルドしたアプリケーションを利用ユーザに公開できるように設定するまでの処理手順を説明するためのフローチャートである。
【図１４】ステップＳ３２におけるアプリケーション情報管理部６０の処理の細部手順を説明するためのフローチャートである。
【図１５】本実施形態に係る情報処理システムを用いて利用ユーザが公開されたアプリケーションをダウンロードするまでの処理の流れを説明するためのフローチャートである。
【図１６】ステップＳ４２における認証部１００の処理の細部手順を説明するためのフローチャートである。
【図１７】ステップＳ４２における認証部１００の処理の細部手順を説明するためのフローチャートである。
【図１８】ステップＳ４４でアプリケーションリスト生成部７０が実行する処理の細部手順を説明するためのフローチャートである。
【図１９】表示デバイス１３０上に表示されるログインフォーム２１０の表示例を示すイメージ図である。
【図２０】ユーザリスト２２０に保管されているデータの一例を示す図である。
【図２１】表示デバイス１３０上に表示されるアプリケーションリストの表示例を示すイメージ図である。
【図２２】アプリケーションがバージョンアップしている場合に当該アプリケーションを更新する処理の手順を説明するためのフローチャートである。
【図２３】ステップＳ５３でアプリケーション情報管理部６０が実行する処理の細部手順を説明するためのフローチャートである。
【図２４】アプリケーション管理クライアント３０の表示デバイス１３０上に表示されるウィンドウの一例を示すイメージ図である。
【図２５】図２４に示すウィンドウにおける選択可能なメニュー項目例を表示した表示例を示すイメージ図である。
【図２６】起動時に保存しているアプリケーションを更新して起動するまでの処理の流れを説明するためのフローチャートである。
【図２７】アプリケーションのバージョンを以前のバージョンに戻す処理手順を説明するためのフローチャートである。
【図２８】アプリケーション利用中における出力データに関する処理手順を説明するためのフローチャートである。
【図２９】入出力管理部１２０で実行されるステップＳ８２の処理の細部手順を説明するためのフローチャートである。
【図３０】保存したデータをアプリケーションで利用するまでの処理手順を説明するためのフローチャートである。
【図３１】入出力管理部１２０で実行されるステップＳ９２の処理の細部手順を説明するためのフローチャートである。
【符号の説明】
【０１１５】
１０  アプリケーション管理サーバ
１１  認証サーバ
１２  バージョン管理サーバ
２０  ネットワーク
３０  アプリケーション管理クライアント
４０  バージョン設定部
５０  ビルド部
６０  アプリケーション情報管理部
７０  アプリケーションリスト生成部
８０  アクセス権制御部
９０  配付部
１００、１０１  認証部
１１０  起動部
１２０  入出力管理部
１３０  表示デバイス
１４０  入力デバイス
１５０  バージョン管理部
１６０  アプリケーション情報ファイル
１７０  バージョン設定フォーム
１８０  実行ファイルセット
１９０  アクセス権リスト
２００  アプリケーション構成ファイルセット
２１０  ログインフォーム
２２０  ユーザリスト
２３０  認証情報
【図１】
2005165849.tif 000003
【図２】
2005165849.tif 000004
【図３】
2005165849.tif 000005
【図４】
2005165849.tif 000006
【図５】
2005165849.tif 000007
【図６】
2005165849.tif 000008
【図７】
2005165849.tif 000009
【図８】
2005165849.tif 000010
【図９】
2005165849.tif 000011
【図１０】
2005165849.tif 000012
【図１１】
2005165849.tif 000013
【図１２】
2005165849.tif 000014
【図１３】
2005165849.tif 000015
【図１４】
2005165849.tif 000016
【図１５】
2005165849.tif 000017
【図１６】
2005165849.tif 000018
【図１７】
2005165849.tif 000019
【図１８】
2005165849.tif 000020
【図１９】
2005165849.tif 000021
【図２０】
2005165849.tif 000022
【図２１】
2005165849.tif 000023
【図２２】
2005165849.tif 000024
【図２３】
2005165849.tif 000025
【図２４】
2005165849.tif 000026
【図２５】
2005165849.tif 000027
【図２６】
2005165849.tif 000028
【図２７】
2005165849.tif 000029
【図２８】
2005165849.tif 000030
【図２９】
2005165849.tif 000031
【図３０】
2005165849.tif 000032
【図３１】
2005165849.tif 000033