JP2005174025A - ネットワークに接続可能なサーバ、クライアント及びこれらを備えるアプリケーション配布システム、情報処理装置の制御方法、プログラム並びに記録媒体 - Google Patents
ネットワークに接続可能なサーバ、クライアント及びこれらを備えるアプリケーション配布システム、情報処理装置の制御方法、プログラム並びに記録媒体 Download PDFInfo
- Publication number
- JP2005174025A JP2005174025A JP2003413816A JP2003413816A JP2005174025A JP 2005174025 A JP2005174025 A JP 2005174025A JP 2003413816 A JP2003413816 A JP 2003413816A JP 2003413816 A JP2003413816 A JP 2003413816A JP 2005174025 A JP2005174025 A JP 2005174025A
- Authority
- JP
- Japan
- Prior art keywords
- application
- version
- file
- client
- list
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
Images
Landscapes
- Stored Programmes (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
【課題】複数のフレームを参照する場合に、効率良くメモリを使用できる画像処理装置、画像処理方法、プログラム及び記憶媒体を提供すること。
【解決手段】 本アプリケーション配布システムは、ネットワーク20に接続可能な各種サーバ10、11、12及びクライアント30を備える。本アプリケーション配布システムは、例えば、アプリケーションの各機能を実現するためのファイルのバージョンを管理するバージョン管理手段150と、バージョン管理手段150により管理されたファイルを実行可能な形式に変換するビルド手段50と、ネットワーク20に接続されたクライアント30からの要求に応じて、ビルド手段50により実行可能な形式に変換されたファイルのうち、クライアント30が利用可能なバージョンのファイルの一覧をアプリケーションリストとして生成するアプリケーションリスト生成手段70と、アプリケーションリストに対するクライアント30からの要求に応じたファイルを配布する配布手段90と、を備える。
【選択図】 図1
【解決手段】 本アプリケーション配布システムは、ネットワーク20に接続可能な各種サーバ10、11、12及びクライアント30を備える。本アプリケーション配布システムは、例えば、アプリケーションの各機能を実現するためのファイルのバージョンを管理するバージョン管理手段150と、バージョン管理手段150により管理されたファイルを実行可能な形式に変換するビルド手段50と、ネットワーク20に接続されたクライアント30からの要求に応じて、ビルド手段50により実行可能な形式に変換されたファイルのうち、クライアント30が利用可能なバージョンのファイルの一覧をアプリケーションリストとして生成するアプリケーションリスト生成手段70と、アプリケーションリストに対するクライアント30からの要求に応じたファイルを配布する配布手段90と、を備える。
【選択図】 図1
Description
本発明は,ネットワークに接続可能なサーバ、クライアント及びこれらを備えるアプリケーション配布システム、情報処理装置の制御方法、プログラム並びに記録媒体に関するものである。
従来、インターネットやイントラネットを利用してユーザにアプリケーションを提供するWebサーバやファイルサーバ等のシステムが広く普及している。ユーザは、ネットワーク上のこれらのサーバからアプリケーションをパーソナルコンピュータにダウンロードし,インストールすることによって,パーソナルコンピュータ上でアプリケーションを実行することができる。ユーザは、アプリケーションが更新された場合は、再度アプリケーションをダウンロードし,インストールする必要がある。これに対し、アプリケーションの更新情報を監視し、アプリケーションが更新された場合に、ユーザのパーソナルコンピュータ上のアプリケーションを更新する機能を持つアプリケーションも存在している。
特開平7-49844号公報
特開平10-293683号公報
しかしながら、従来では、アプリケーションのバージョン管理、ビルド、ユーザ認証、アクセス制限、配布及び更新は、システム毎に別々に運用されているため、開発から配布まで一貫してバージョン管理等を行うことができず、開発者の意図しないバージョンがユーザに利用されるという問題があった。
また、アプリケーションの実行結果に対して高い精度が要求されるケースでは、利用者(開発者、研究者等)から機能毎に新旧のアルゴリズムによる実行結果を比較したいという要求がしばしば発生するが、これらのシステムによって配布されるアプリケーションで実行結果の比較を行うためには、新旧複数のバージョンのアプリケーションを同時に起動させた後に、それぞれのアプリケーションの画面上で適切なユーザインターフェイス(以下、UIと省略)を選択しなければならない。その結果、操作ステップ数が増大したり、複数のバージョンのアプリケーションを同時に起動することによって画面が煩雑化したりする等の問題があった。
また、アプリケーション配布システムによっては、異なるバージョンのアプリケーションを同時に起動できないものもあった。このようなシステムで実行結果の比較を行うには、あるバージョンのアプリケーション上で所定の機能を実行した後に、アプリケーションのバージョンを変更し(バージョンアップあるいはバージョンダウン)、バージョンを変更した後のアプリケーション上で同様の機能を再度実行しなければならず、比較作業に多大な労力・時間を要していた。
また、特許文献1では、ネットワークに接続された複数の処理装置上で異なるバージョンのプログラムを実行するシステムが開示されているが、これはアクセプタンステストを不要にするためのシステムであり、アプリケーションに組み込まれている機能の処理結果の比較を行う技術とは無関係である。
また、特許文献2では、コンパイラのバージョンの差異によって生じるアセンブリ言語プログラムのコードの相違を解析して、コードに差異がある場合はその部分を表示するシステムが開示されているが、アプリケーションに組み込まれている機能の実行結果の比較を行うことは考慮されていない。
したがって、従来では、新旧複数のバージョンのアルゴリズムの実行結果の比較を容易に行うことができるアプリケーション及びその配布システムはなかった。
本発明は、上記の背景に基づいてなされたものであり、開発者が意図するバージョンのアプリケーションをユーザに提供することを目的とする。また、本発明は、新旧複数のアルゴリズムによる実行結果を容易に比較できることを目的とする。
本発明の第1の側面は、ネットワークに接続可能なサーバに係り、アプリケーションの各機能を実現するためのファイルのバージョンを管理するバージョン管理手段と、前記バージョン管理手段により管理されたファイルを実行可能な形式に変換するビルド手段と、前記ネットワークに接続されたクライアントからの要求に応じて、前記ビルド手段により実行可能な形式に変換されたファイルのうち、前記クライアントが利用可能なバージョンのファイルの一覧をアプリケーションリストとして生成するアプリケーションリスト生成手段と、前記アプリケーションリストに対する前記クライアントからの要求に応じたファイルを配布する配布手段と、を備えることを特徴とする。
本発明の好適な実施の形態によれば、前記クライアントから送信された認証情報に基づいて、前記ファイルへのアクセス権を制御するアクセス権制御手段を備え、前記配布手段は、前記アクセス権制御手段によりアクセスが許可された前記クライアントに対して前記ファイルを配布することが望ましい。
本発明の好適な実施の形態によれば、前記アプリケーションは、そのアプリケーションの各機能の実行結果を表示するためのウィンドウを有し、かつ、前記各機能に対応する新旧複数のバージョンのアルゴリズムの実行結果を前記ウィンドウ内に並列して表示する機能を有することが望ましい。
本発明の好適な実施の形態によれば、前記アプリケーションは、前記ウィンドウ上に、前記各機能に対応する項目を示すユーザインターフェースを強調表示する第1表示手段と、前記強調表示されたユーザインターフェースから派生して、前記各機能の新旧複数のバージョンのアルゴリズムを選択的に実行するためのサブユーザインターフェースを表示する第2表示手段と、前記サブユーザインターフェース上に、前記各機能の新旧複数のバージョンのアルゴリズムを単独で実行するための項目と、前記各機能の新旧複数のバージョンのアルゴリズムを並列で実行するための項目と、を並列して表示する第3表示手段と、前記サブユーザインターフェース上で、前記単独で実行するための項目が選択されたときに、該項目に対応するバージョンのアルゴリズムを有するプログラムを起動し、その計算結果を表示する第4表示手段と、前記サブユーザインターフェース上で、前記並列で実行するための項目が選択されたときに、該項目に対応する新旧複数のバージョンのアルゴリズムを有するプログラムを並列で又は順次に起動し、それらの複数の計算結果を並列して表示する第5表示手段と、を有することが望ましい。
本発明の好適な実施の形態によれば、前記バージョン設定手段は、前記アプリケーションの各機能のうち、所定バージョンより以前のバージョンのアルゴリズムが存在するファイルを有するものについては、そのファイルを全て前記所定バージョンに設定することが望ましい。
本発明の好適な実施の形態によれば、前記アプリケーションの各機能のアルゴリズムのバージョンを格納したアルゴリズムバージョンテーブルを有し、前記バージョン設定手段は、前記アルゴリズムバージョンテーブルに基づいて前記所定バージョンを設定することが望ましい。
本発明の好適な実施の形態によれば、前記ウィンドウのユーザインターフェースを構成するための情報を含むアプリケーションユーザインターフェース構成リストを有し、前記アプリケーションは、前記アプリケーションユーザインターフェース構成リストに基づいて、前記ユーザインターフェースを表示することが望ましい。
本発明の第2の側面は、前記ネットワークに接続可能なクライアントに係り、上記のサーバから配布された前記ファイルを起動し実行する起動手段と、前記ファイルの実行時に作成されたデータを暗号化してメモリに格納し、前記起動したファイルを再度実行するときに該メモリから該データを復号化して読み出す入出力管理手段と、を備えることを特徴とする。
本発明の第3の側面は、ネットワークに接続可能なサーバと、該ネットワークに接続可能なクライアントとを備えるアプリケーション配布システムであって、前記サーバは、アプリケーションの各機能を実現するためのファイルのバージョンを管理するバージョン管理手段と、前記バージョン管理手段により管理されたファイルを実行可能な形式に変換するビルド手段と、前記ネットワークに接続されたクライアントからの要求に応じて、前記ビルド手段により実行可能な形式に変換されたファイルのうち、前記クライアントが利用可能なバージョンのファイルの一覧をアプリケーションリストとして生成するアプリケーションリスト生成手段と、前記アプリケーションリストに対する前記クライアントからの要求に応じたファイルを配布する配布手段と、を備え、前記クライアントは、前記サーバから配布された前記ファイルを起動し実行する起動手段を備えることを特徴とする。
本発明の好適な実施の形態によれば、前記サーバは、前記クライアントから送信された認証情報に基づいて、前記ファイルへのアクセス権を制御するアクセス権制御手段を備え、前記配布手段は、前記アクセス権制御手段によりアクセスが許可された前記クライアントに対して前記ファイルを配布することが望ましい。
本発明の好適な実施の形態によれば、前記アプリケーションは、そのアプリケーションの各機能の実行結果を表示するためのウィンドウを有し、かつ、前記各機能に対応する新旧複数のバージョンのアルゴリズムの実行結果を前記ウィンドウ内に並列して表示する機能を有することが望ましい。
本発明の好適な実施の形態によれば、前記アプリケーションは、前記ウィンドウ上に、前記各機能に対応する項目を示すユーザインターフェースを強調表示する第1表示手段と、前記強調表示されたユーザインターフェースから派生して、前記各機能の新旧複数のバージョンのアルゴリズムを選択的に実行するためのサブユーザインターフェースを表示する第2表示手段と、前記サブユーザインターフェース上に、前記各機能の新旧複数のバージョンのアルゴリズムを単独で実行するための項目と、前記各機能の新旧複数のバージョンのアルゴリズムを並列で実行するための項目と、を並列して表示する第3表示手段と、前記サブユーザインターフェース上で、前記単独で実行するための項目が選択されたときに、該項目に対応するバージョンのアルゴリズムを有するプログラムを起動し、その計算結果を表示する第4表示手段と、前記サブユーザインターフェース上で、前記並列で実行するための項目が選択されたときに、該項目に対応する新旧複数のバージョンのアルゴリズムを有するプログラムを並列で又は順次に起動し、それらの複数の計算結果を並列して表示する第5表示手段と、を有することが望ましい。
本発明の好適な実施の形態によれば、前記サーバは、前記バージョン設定手段は、前記アプリケーションの各機能のうち、所定バージョンより以前のバージョンのアルゴリズムが存在するファイルを有するものについては、そのファイルを全て前記所定バージョンに設定することが望ましい。
本発明の好適な実施の形態によれば、前記サーバは、前記アプリケーションの各機能のアルゴリズムのバージョンを格納したアルゴリズムバージョンテーブルを有し、前記バージョン設定手段は、前記アルゴリズムバージョンテーブルに基づいて前記所定バージョンを設定することが望ましい。
本発明の好適な実施の形態によれば、前記ウィンドウのユーザインターフェースを構成するための情報を含むアプリケーションユーザインターフェース構成リストを有し、前記アプリケーションは、前記アプリケーションユーザインターフェース構成リストに基づいて、前記ユーザインターフェースを表示することが望ましい。
本発明の好適な実施の形態によれば、前記クライアントは、ファイルの実行時に作成されたデータを暗号化してメモリに格納し、前記ファイルを再度実行するときに該メモリから該データを復号化して読み出す入出力管理手段を備えることが望ましい。
本発明の第4の側面は、ネットワークに接続可能な情報処理装置の制御方法に係り、アプリケーションの各機能を実現するためのファイルのバージョンを管理するバージョン管理工程と、前記バージョン管理工程で管理されたファイルを実行可能な形式に変換するビルド工程と、前記ビルド工程で実行可能な形式に変換されたファイルのうち、前記ネットワークに接続されたクライアントが利用可能なバージョンのファイルの一覧をアプリケーションリストとして生成するアプリケーションリスト生成工程と、前記アプリケーションリストに基づいて前記クライアントに前記ファイルを配布する配布工程と、を含むことを特徴とする。
本発明の好適な実施の形態によれば、前記配布工程により配布されたファイルを受信する工程と、前記受信したファイルの新旧複数のバージョンのアルゴリズムの実行結果をウィンドウ内に並列して表示する工程と、を含むことが望ましい。
本発明の第5の側面は、ネットワークに接続可能なサーバの制御方法に係り、アプリケーションの各機能を実現するためのファイルのバージョンを管理するバージョン管理工程と、前記バージョン管理工程で管理されたファイルを実行可能な形式に変換するビルド工程と、前記ビルド工程で実行可能な形式に変換されたファイルのうち、前記ネットワークに接続されたクライアントが利用可能なバージョンのファイルの一覧をアプリケーションリストとして生成するアプリケーションリスト生成工程と、前記アプリケーションリストに基づいて前記クライアントに前記ファイルを配布する配布工程と、を含むことを特徴とする。
本発明の好適な実施の形態によれば、前記配布工程により配布された前記ファイルを起動し実行する起動工程を含むことが望ましい。
本発明の好適な実施の形態によれば、前記起動工程では、前記受信したファイルの新旧複数のバージョンのアルゴリズムの実行結果をウィンドウ内に並列して表示することが望ましい。
本発明の第6の側面は、プログラムに係り、上記の情報処理装置の制御方法をコンピュータによって実行させることを特徴とする。
本発明の第7の側面は、上記の情報処理装置の制御方法をコンピュータによって実行させるためのプログラムを格納することを特徴とする。
本発明によれば、開発者が意図するバージョンのアプリケーションをユーザに提供することができる。また、本発明によれば、新旧複数のアルゴリズムによる実行結果を容易に比較できる。
本発明の実施の形態に係るアプリケーション配布システムとして、ネットワークに接続されたアプリケーション管理サーバ、認証サーバ及びバージョン管理サーバを用いて、当該ネットワークに接続されたクライアントに開発者の意図するバージョンのアプリケーションを提供する例を示す。なお、ここでは、サーバーを3つの情報処理装置に分けて説明したが、本実施形態はこれに限定されるものではなく、例えば、これらのサーバを組み合わせた情報処理装置を用いてもよい。
図1は、本発明の好適な実施の形態に係るアプリケーション配布システムの構成を示す概念図である。
図1において,本システムは、ネットワーク20を介して認証サーバとして機能する情報処理装置1、バージョン管理サーバとして機能する情報処理装置2、アプリケーション管理サーバとして機能する情報処理装置3、アプリケーション管理クライアントとして機能する情報処理装置4で構成されている。
アプリケーション管理サーバ10、認証サーバ11、バージョン管理サーバ12及びアプリケーション管理クライアント30は、これらの情報処理装置に組み込まれており、ネットワーク20を介して通信する機能を持つ。アプリケーション管理サーバ10は、ネットワーク20を介してアプリケーション管理クライアント30にアプリケーションを配布する。開発ユーザは、アプリケーション管理クライアント30の表示デバイス130上に表示されるバージョン設定フォーム170に、アプリケーションIDとリリースバージョン名とを入力する。入力されたアプリケーションIDとリリースバージョン名とは、バージョン管理サーバ12に送信され、アプリケーションのリリースバージョンが保管されているファイルセット200に、バージョン設定手段40によってアプリケーションのバージョンが設定される。リリースバージョンが設定されると,アプリケーション管理サーバ10のビルド手段50が、リリースバージョンが設定されたファイルセット200を実行可能な形式である実行ファイルセット180に変換する。アプリケーション管理サーバ10のアプリケーション情報管理手段60は,アプリケーション情報ファイル160から利用ユーザに配布するアプリケーションに関する情報を抽出したり,これらの情報を追加したりする。アプリケーション管理サーバ10のアプリケーションリスト生成手段70は,アプリケーション管理サーバ10にアクセスしているユーザが利用可能なアプリケーションを、アプリケーション情報ファイル160から抽出してリストを作成する。
アプリケーション管理クライアント30は、ユーザによって起動されると、認証情報230が存在するか否かを認証手段100によって確認する。認証情報230が存在しない場合は、アプリケーション管理クライアント30がアプリケーション管理サーバ10にアクセスしてユーザ認証を行う。このユーザ認証は、認証サーバ11によって行われる。すなわち、アプリケーション管理サーバ10が認証サーバ11にアクセスして、認証サーバ11の認証手段101が起動し、アプリケーション管理クライアント30にログインフォーム210を送信する。ログインフォーム210が表示デバイス130上に表示されると,ユーザが入力デバイス140を介してUser IDとPasswordとを入力する。入力されたUser IDとPasswordとは、認証サーバ11に送信される。認証サーバ11の認証手段101は,アプリケーション管理クライアント30から送信されたUser IDとPasswordとの整合性を、ユーザリスト220に基づいて確認する。アプリケーション管理サーバ10のアクセス権制御手段80は,認証サーバ11から送信されたUser IDのアプリケーションに対するアクセス権をアクセス権リスト190から抽出し,アプリケーションへのアクセスを制御する。アプリケーション管理クライアント30の起動手段110は,ダウンロードしたアプリケーションを実行する。実行したアプリケーション内でデータの入出力要求があった場合では,入出力管理手段120が起動し,入出力データの暗号/復号を行なう。
アプリケーション管理クライアント30は、利用者PC上でアプリケーションを動作させる情報処理装置4に含まれる。情報処理装置4は、アプリケーション管理クライアント用のソフトウェア30の他に、例えば、アプリケーション・プログラムや入出力データ等を格納するための記憶手段(例えば、不揮発性のメモリ等)103、アプリケーション・プログラムをロードしてデータを処理するメモリ103'、アプリケーション・プログラムの実行結果を表示するための表示デバイス(例えば、ディスプレイ等)130、アプリケーション・プログラムに対して各種の指示やデータを入力するための入力デバイス(例えば、マウスやキーボード等)140、これらを制御するアプリケーション制御手段101で構成される。
次に、開発ユーザが開発しているアプリケーションをビルドし、テストを行なう動作について説明する。
開発ユーザは,アプリケーション管理サーバ10にアクセスして,バージョン設定を要求する。アプリケーション管理サーバ10は、バージョン設定手段40を起動し,バージョン設定処理を行なう。バージョン設定が行われると、ビルド手段50が起動し,バージョン管理サーバ12からファイルセット200を受信し,ファイルセット200を実行可能な形式の実行ファイルセット180に変換する。次に、開発ユーザは,ビルドしたアプリケーションの実行テストを行なうため,アプリケーション管理クライアント30を起動し,テスト可能なアプリケーションリストを送信する。アプリケーション管理サーバ10は,アプリケーションリスト生成手段70を起動し,テスト可能なアプリケーションリストを生成して,アプリケーション管理クライアント30に送信する。アプリケーション管理クライアント30は、表示デバイス130上にアプリケーションリストを表示し,開発ユーザによってテストを行なうアプリケーションが選択される。アプリケーションが選択されと、アプリケーション管理クライアント30は、選択されたアプリケーションのダウンロードをアプリケーション管理サーバ10に要求する。アプリケーション管理サーバ10は、配布手段90を起動して,アプリケーションの実行ファイルセット180をアプリケーション管理クライアント30に送信する。アプリケーション管理クライアント30は、送信された実行ファイルセット180を起動手段110により起動し実行する。次に、開発ユーザは,テストを行なったアプリケーションを利用ユーザが利用できるように公開設定を行なう。まず,アプリケーション管理クライアント30から公開設定要求をアプリケーション管理サーバ10に送信される。アプリケーション管理サーバ10は、アプリケーション情報管理手段60を起動し,アプリケーション情報を抽出して,抽出された情報に公開フラグを設定する。
開発ユーザは,アプリケーション管理サーバ10にアクセスして,バージョン設定を要求する。アプリケーション管理サーバ10は、バージョン設定手段40を起動し,バージョン設定処理を行なう。バージョン設定が行われると、ビルド手段50が起動し,バージョン管理サーバ12からファイルセット200を受信し,ファイルセット200を実行可能な形式の実行ファイルセット180に変換する。次に、開発ユーザは,ビルドしたアプリケーションの実行テストを行なうため,アプリケーション管理クライアント30を起動し,テスト可能なアプリケーションリストを送信する。アプリケーション管理サーバ10は,アプリケーションリスト生成手段70を起動し,テスト可能なアプリケーションリストを生成して,アプリケーション管理クライアント30に送信する。アプリケーション管理クライアント30は、表示デバイス130上にアプリケーションリストを表示し,開発ユーザによってテストを行なうアプリケーションが選択される。アプリケーションが選択されと、アプリケーション管理クライアント30は、選択されたアプリケーションのダウンロードをアプリケーション管理サーバ10に要求する。アプリケーション管理サーバ10は、配布手段90を起動して,アプリケーションの実行ファイルセット180をアプリケーション管理クライアント30に送信する。アプリケーション管理クライアント30は、送信された実行ファイルセット180を起動手段110により起動し実行する。次に、開発ユーザは,テストを行なったアプリケーションを利用ユーザが利用できるように公開設定を行なう。まず,アプリケーション管理クライアント30から公開設定要求をアプリケーション管理サーバ10に送信される。アプリケーション管理サーバ10は、アプリケーション情報管理手段60を起動し,アプリケーション情報を抽出して,抽出された情報に公開フラグを設定する。
次に,ユーザがアプリケーションをダウンロードする動作について説明する。
まず、利用ユーザは、アプリケーション管理クライアント30を起動する。アプリケーション管理クライアント30は、認証手段100を起動し,認証情報230が存在するか否かを確認する。認証情報230が存在しない場合は,アプリケーション管理クライアント30は、アプリケーション管理サーバ10にアクセスし,認証を要求する。認証を要求されたアプリケーション管理サーバ10は、認証サーバ11にアクセスする。認証サーバ11は、認証手段101を起動し,認証処理を実行する。認証が終了したら,利用ユーザのUser IDをアプリケーション管理サーバ10に送信する。アプリケーション管理サーバ10は、アクセス権制御手段80を起動し,利用ユーザが利用可能なアプリケーションのリストを生成し,アプリケーション管理クライアント30に送信する。アプリケーション管理クライアント30は、表示デバイス130上にアプリケーションリストを表示する。利用ユーザは、このアプリケーションリストからダウンロードするアプリケーションを選択する。アプリケーション管理サーバ10は、ユーザによりアプリケーションリストから選択されたアプリケーションの実行ファイルセット180をアプリケーション管理クライアント30に送信する。アプリケーション管理クライアント30は、送信された実行ファイルセット180をローカルディスク上に保存する。
次に、アプリケーションを更新する動作について説明する。
まず、利用ユーザは、アプリケーション管理クライアント30が表示するアプリケーションリストから更新したいアプリケーションを選択し,アプリケーション管理サーバ10に更新を要求する。アプリケーション管理クライアント30からアプリケーション管理サーバ10にこのアプリケーションのIDとそのバージョンが送信されると,アプリケーション管理サーバ10は、アプリケーション情報管理手段60を起動し,このアプリケーションの最新バージョンを抽出し,送信されたバージョンと比較する。ここで、アプリケーションが更新されている場合は,最新バージョンをアプリケーション管理クライアント30に送信し,アプリケーション管理クライアント30にダウンロードされる。また,利用ユーザがアプリケーションの起動を要求したときも、アプリケーション管理クライアント30は、アプリケーション管理サーバ10に更新を要求し,更新があった場合はアプリケーションの更新を行なってからアプリケーションを起動する。
次に,アプリケーションのバージョンを戻す動作について説明する。
利用ユーザはアプリケーション管理クライアント30の表示デバイス130上に表示されるアプリケーションリストからバージョンダウンしたいアプリケーションを選択し,バージョンダウンメニューからバージョンダウンを要求する。すると、戻したいバージョン番号を入力するためのウィンドウが表示デバイス130上に表示され,バージョン番号の入力が促される。入力されたバージョン番号は、アプリケーション管理サーバ10に送信されて、そのバージョンのアプリケーションがアプリケーション管理クライアント30にダウンロードされる。これにより,アプリケーションのバージョンを以前のものに戻すことができる。
また,利用ユーザがアプリケーションの起動中に、アプリケーションを用いて作成したデータをパーソナルコンピュータ上に保管する場合には,アプリケーション管理クライアント30は、入出力管理手段120を起動する。入出力管理手段120は,このデータを暗号化して所定のメモリに保存する。更に,その保存したデータをアプリケーションで利用する場合には,入出力管理手段120が起動され,このデータを復号化してアプリケーションにデータを渡す。これによって,利用ユーザは意識することなく,アプリケーションを用いて作成したデータの暗号化/復号化を行なうことができる。
また、本発明の好適な実施の形態に係るアプリケーション配布システムによって配布されるアプリケーションは、図32、図33に示すように、新旧複数のバージョンのアルゴリズムを1つのウィンドウ320で実行し、その実行結果をこの1つのウィンドウ内に併記することができる。すなわち、当該アプリケーションに組み込まれている複数の機能のうち新旧複数のバージョンのアルゴリズムを有するものについては、利用ユーザが各機能を実行させるためのUIの項目10103を選択すると(図32(a)を参照)、アルゴリズム選択実行用のUI10104が表示される(図32(b)を参照)。利用ユーザは、アルゴリズム選択実行用のUI10104の中から各アルゴリズムの単独で実行するための項目10105、10106を選択すると、図33(a)、(b)に示すように、それぞれに対応するアルゴリズムによる処理結果が表示される。図33(a)は項目10105を選択した場合、図33(b)は項目10106を選択した場合の実行結果をそれぞれ示す。また、利用ユーザが、アルゴリズム選択実行用のUI10104の中から新旧複数のバージョンのアルゴリズムを並列で実行するための項目10107を選択すると、これらを並列で実行した複数の結果が併記される。その結果、同一機能の新旧複数のアルゴリズムによる実行結果を容易に比較することができる。
以下に本発明を実施例に基づき説明するが、本発明はこれらの実施例に限定されない。
本実施例は、アプリケーション配布システムに関するものである。図1において、ネットワーク20は,TCP/IPを通信プロトコルとするイントラネットであるものとする。アプリケーション管理サーバ10は,TCP/IP上でアプリケーション管理クライアント30,認証サーバ11及びバージョン管理サーバ12と通信する機能を持つものとする。ユーザは,開発ユーザと利用ユーザが居るものとする。バージョン管理サーバは,CVS(ConcurrentVersion System)サーバであるものとする。アプリケーション情報ファイル160は、図2のようにXML形式で記述されているものとする。なお、これらは本実施例を説明するために例示的に示したものであり、本発明はこれらに限定されない。
ここで,図3〜5を用いて,開発ユーザがリリースバージョンを設定し,実行可能な形式のファイルを生成するまでの処理の流れを具体的に示す。
ステップS1-1では(図では[STEP1-1]で示される。以下も同様に示される。)、開発ユーザは,アプリケーション管理サーバ10にバージョン設定フォーム170を要求する。
ステップS1-2では、アプリケーション管理サーバ10は、バージョン設定手段40を起動する。ここで、バージョン設定手段40は、図4のステップS1−2−1〜ステップS1−2−6までの処理を実行する.
ステップS1-2-1では、バージョン設定手段40は、バージョン設定フォーム170をアプリケーション管理クライアント30に送信する。
ステップS1-2-1では、バージョン設定手段40は、バージョン設定フォーム170をアプリケーション管理クライアント30に送信する。
ステップS1-2-2では、アプリケーション管理クライアント30は、送信されたバージョン設定フォーム170を表示デバイス130に表示する。ここで,図6に示すようにバージョン設定フォーム170が表示デバイス130上に表示されているものとする。
ステップS1-2-3では、利用ユーザは、入力デバイス140を用いて,バージョン設定フォーム170中のアプリケーションリストからバージョンを設定するアプリケーションを選択し,テキスト入力部にバージョン番号を入力する。ここで、利用ユーザは、以下の入力を行なったものとする。
選択されたアプリケーションID = 1
バージョン番号 = 1.0.1
次に,利用ユーザは、送信ボタンを選択して,入力した値をアプリケーション管理サーバ10に送信する。
選択されたアプリケーションID = 1
バージョン番号 = 1.0.1
次に,利用ユーザは、送信ボタンを選択して,入力した値をアプリケーション管理サーバ10に送信する。
ステップS1-2-4では、アプリケーション管理サーバ10は、バージョン設定手段40にステップS1-2-3で送信されたアプリケーションIDとバージョン番号とを渡す。
ステップS1-2-5では、バージョン設定手段40は,アプリケーション情報管理手段60にアプリケーションIDを渡す。,アプリケーション管理手段60は、アプリケーション情報ファイル160から,アプリケーションIDに対応するアプリケーション情報を抽出し,そのアプリケーション情報からバージョン管理サーバ12のアプリケーション特定キーを取得して,このアプリケーション特定キーをバージョン設定手段40に渡す。ここで,以下の値がアプリケーション特定キーとして取得されたものとする。
KEY = “application1”
ステップS1-2-6では、バージョン設定手段40は,バージョン管理サーバ12が管理しているアプリケーション構成ファイルセットにリリースバージョンを設定する。ここで,バージョン管理サーバ12はCVSサーバであるので,以下のコマンドを実行することで,KEYで特定されるアプリケーションの構成ファイルセットに対して,リリースバージョンを設定することができる。
cvs tag release-1_0_1
ここで、上記コマンドはCVSサーバに保管されているアプリケーション構成ファイルのその時点での各ファイルの開発バージョンに対して,”release-1_0_1”というリリースバージョンを設定したことを示している。
KEY = “application1”
ステップS1-2-6では、バージョン設定手段40は,バージョン管理サーバ12が管理しているアプリケーション構成ファイルセットにリリースバージョンを設定する。ここで,バージョン管理サーバ12はCVSサーバであるので,以下のコマンドを実行することで,KEYで特定されるアプリケーションの構成ファイルセットに対して,リリースバージョンを設定することができる。
cvs tag release-1_0_1
ここで、上記コマンドはCVSサーバに保管されているアプリケーション構成ファイルのその時点での各ファイルの開発バージョンに対して,”release-1_0_1”というリリースバージョンを設定したことを示している。
また、この際、バージョン設定手段40は、図34に示すようなアルゴリズムバージョンテーブル(アプリケーションの各バージョンが有する機能のアルゴリズムのバージョンを格納したリストで、バージョン管理サーバ12等の適切な場所に格納されているものとする。なお、リスト上で複数バージョンのアルゴリズムが存在する機能には“*”が付けられている。)を参照し、アプリケーションのリリースバージョンが有する機能(例えば、図中の“機能A”、“機能B”、“機能D”、“機能E”)について、以前のアルゴリズムも含めて“release-1_0_1”というリリースバージョンを設定する。その結果、図中の“*”を付けたアルゴリズムに関連するファイルについて“release-1_0_1”というリリースバージョンが設定される。なお、現リリースバージョンに組み込まれていない“機能C”については、そのリスト中の関連ファイルへリリースバージョンを設定しない。
ただし、バージョン設定サーバ(CVSサーバ)がリリースバージョン設定済みファイルに対して、追加して新しいリリースバージョンを設定することが不可能な場合は、バージョン管理サーバ12等が、当該アルゴリズムを含むファイルの複製を作成した後、当該リリースバージョンの設定を行うものとする。
ステップS1-3では、アプリケーションの実行ファイルを生成するため,アプリケーション管理サーバ10は、ビルド手段50にアプリケーションIDを渡し,ビルド手段50を起動する。ビルド手段50は、図5に示すステップS1−3−1〜ステップS1−3−4までの処理を実行する。
ステップS1-3-1では、ステップS1-2-5と同様にして、アプリケーション特定キーを取得し,取得したアプリケーション特定キーとバージョン番号とをバージョン管理サーバ12に送信してアプリケーション構成ファイルセット200を要求する。
ここで,バージョン管理サーバ12は、CVSサーバであるため,ビルド手段50は以下のコマンドを実行することでアプリケーション構成ファイルセット200を取得することができる。
cvs checkout -r release-1_0_1 application1
上記コマンドは,CVSサーバのapplication1以下に保管されているアプリケーション構成ファイルセット200の開発バージョンのうち,リリースバージョン”release-1_0_1”が設定された開発バージョンのファイルを抽出することを示している。
cvs checkout -r release-1_0_1 application1
上記コマンドは,CVSサーバのapplication1以下に保管されているアプリケーション構成ファイルセット200の開発バージョンのうち,リリースバージョン”release-1_0_1”が設定された開発バージョンのファイルを抽出することを示している。
ステップS1-3-2では、バージョン管理サーバ12は、対象のアプリケーション構成ファイルセット200をアプリケーション管理サーバ10に送信する。
ステップS1-3-3では、ビルド手段50は,ステップS1-3-2で送信されたアプリケーション構成ファイルセット200を実行可能な形式のファイルセット800に変換する。
ここでは、一例として、ステップS1-3-2で送信されたアプリケーション構成ファイルセット200の各ファイルは、Java(登録商標)のソースコードファイルであるものとして説明する。そのため,ビルド手段50は,ソースコードファイルをコンパイルし,クラスファイルを生成する。更に,生成された各クラスファイルを一つのJarファイルにまとめることにより,実行可能な形式に変換できる。
以下、本実施例では説明を簡略化するために、UIの一例として「メニュー」を扱うが、これに限定されない。
以下、本実施例では説明を簡略化するために、UIの一例として「メニュー」を扱うが、これに限定されない。
本システムにより利用者に配布されるアプリケーションの典型的な動作内容であるアルゴリズム選択処理を実現するための適切なメニューの構造、すなわち、図8のアプリケーションUI構成リストに示すようなメニューの構造を有するようにビルドを行い、当該アプリケーションの実行形式として取得する。
ただし、このアプリケーションUI構成リストはアプリケーションの各バージョン毎のメニューの構成情報を含むもので、あらかじめ前記アプリケーションアルゴリズムリスト等に基づいて適切に作成されているものとする。
ステップSTEP1-3-4では、ビルド手段50は暗号化プログラムを呼び出し,ステップS1-3-3で生成されたファイルセット800を暗号化する。ここで、作成された暗号化されたJarファイルは,application1.jarという名称で/applications/archive/ 以下に保管されたものとする。
ステップSTEP1-4では、アプリケーション情報ファイル160にアプリケーションを新規登録またはバージョンを追加する。まず、アプリケーション管理サーバ10は、アプリケーション情報管理手段60を起動する。起動されたアプリケーション情報管理手段60は、アプリケーション情報ファイル160にステップS1-2-3で送信されたデータをアプリケーション情報リストに追加する。
図7は、ステップS1-2-3で送信されたデータを追加し,更新したアプリケーション情報ファイル160を表わしている。ここまでが,開発しているアプリケーションの構成ファイルの開発バージョンを管理しているバージョン管理サーバ12にリリースバージョンを設定し,実行可能な形式を生成するまでの処理の流れである。
次に,図ステップS2-1に進み、開発ユーザがステップS1-1〜S1-4でビルドしたアプリケーションを利用ユーザに公開する前に動作確認し,公開するまでの処理の流れを,図8〜10を用いて具体的に説明する。
ステップS2-1では、ユーザがアプリケーション管理クライアント30を起動し,テスト可能なアプリケーションのリスト(以下「アプリケーションリスト」という。)をアプリケーション管理サーバ10に要求する。
ステップS2-2では、アプリケーション管理サーバ10は、アプリケーションリスト生成手段70を起動する。アプリケーション生成手段は、図9に示すステップS2−2−1〜ステップS2−2−2までの処理を実行する。
ステップS2-2-1では、アプリケーション情報ファイル160に登録されているアプリケーションのうち,テスト待ち状態のアプリケーションの情報を抽出し,アプリケーション管理クライアント30で表示可能な形式にアプリケーションリストを生成する。
ここで、アプリケーション管理クライアント30は,HTML形式で表示可能であるものとする。テスト待ち状態のアプリケーションは、versionタグのavailable属性で示されており,available=falseのときは,テスト待ち状態であるものとする。ここで、アプリケーション情報ファイル160には,アプリケーションID1のバージョン番号1.0.1とアプリケーションID3のバージョン番号1.0.2のavailable属性がfalseになっているため,図11のようなテスト可能なアプリケーションリストを生成する。
ステップS2-2-2では、STEP2-2-1で生成したアプリケーションリストをアプリケーション管理クライアント30に送信する。
ステップS2-3では、アプリケーション管理クライアント30は,ステップS2-2-3で送信されたアプリケーションリストを表示デバイス130上に表示する。ここで,図12のようにアプリケーションリストが表示デバイス130上に表示されているものとする。
ステップS2-4では、開発ユーザは,入力デバイス140を用いて表示されたアプリケーションリストからテストするアプリケーションを選択し,送信ボタンを押下する。ここで,開発ユーザはアプリケーションID=1のアプリケーションを選択したものとする。アプリケーション管理クライアント30は、アプリケーションIDをアプリケーション管理サーバ10に送信し,アプリケーションIDを持つIDのアプリケーションの実行に必要なファイルセット180を要求する。
ステップS2-5では、アプリケーション管理サーバ10は、配布手段90を起動する。配布手段90は、図10に示すステップS2-5−1〜ステップS2-5−2までの処理を実行する。
ステップS2-5-1では、アプリケーション情報管理手段60を起動し,アプリケーション情報ファイル160から,アプリケーション管理クライアント30より送信されたアプリケーションIDを持つアプリケーションの実行に必要なファイルセット180を特定する。ここで,以下のデータが抽出されたものとする。
<fileset>
<filepath=“/applications/archive/appilcation1_1.0.1.jar”/>
<file path=“/applications/lib/lib1.jar”/>
<file path=“/applications/lib/lib2.jar”/>
</fileset>
ここで、アプリケーションIDのアプリケーションが実行するのに必要なファイルは,“/applications/archive/”ディレクトリに置かれている“appilcation1_1.0.1.jar”と,“/applications/lib/”ディレクトリに置かれている“lib1.jar”,“lib2.jar”であることが示されている。
<fileset>
<filepath=“/applications/archive/appilcation1_1.0.1.jar”/>
<file path=“/applications/lib/lib1.jar”/>
<file path=“/applications/lib/lib2.jar”/>
</fileset>
ここで、アプリケーションIDのアプリケーションが実行するのに必要なファイルは,“/applications/archive/”ディレクトリに置かれている“appilcation1_1.0.1.jar”と,“/applications/lib/”ディレクトリに置かれている“lib1.jar”,“lib2.jar”であることが示されている。
ステップS2-5-2では、アプリケーション管理サーバ10は、ステップS2-5-1で特定したファイルセット180をアプリケーション管理クライアント30に送信する。
ステップS2-6では、アプリケーション管理クライアント30は、起動手段110を起動する。起動手段110は、復号プログラムを呼び出し,ステップS2-5-3で送信されたファイルセット180を復号化して実行する。
以上が,開発ユーザがステップS1でビルドしたアプリケーションの動作確認のための環境を開発ユーザに提供するまでの処理の流れである。
次に,図13のステップS3-1に進み、開発ユーザがステップS1でビルドしたアプリケーションを利用ユーザに公開できるように設定するまでの処理の流れを,図13,14を用いて具体的に説明する。
ステップS3-1では、アプリケーション管理クライアント30は,アプリケーションIDを送信し,アプリケーションIDを持つアプリケーションの公開の設定を要求する。
ステップS3-2では、アプリケーション管理サーバ10は、アプリケーション情報管理手段60を起動する。アプリケーション情報管理手段60は、図14に示すステップS3−2−1〜ステップS3−2−3までの処理を実行する。
ステップS3-2-1では、アプリケーションIDと一致するIDをもつアプリケーション情報をアプリケーション情報ファイル160から抽出する。ここで,以下のデータが抽出できたものとする。
<application id=“1”>
<name>App1</name>
<versions>
<version id=“1.0.1”available=“false”>
</version>
</versions>
</application>
ステップS3-2-2では、ステップS3-2-1で抽出したアプリケーション情報に公開フラグを設定する。ここで,以下のように公開フラグを設定したものとする。
<version id=”1.0.1” available=”true”>
これは,available=”true”とすることにより,リリースバージョン1.0.1に登録されているファイルセット180が利用可能になったことを示している。
<application id=“1”>
<name>App1</name>
<versions>
<version id=“1.0.1”available=“false”>
</version>
</versions>
</application>
ステップS3-2-2では、ステップS3-2-1で抽出したアプリケーション情報に公開フラグを設定する。ここで,以下のように公開フラグを設定したものとする。
<version id=”1.0.1” available=”true”>
これは,available=”true”とすることにより,リリースバージョン1.0.1に登録されているファイルセット180が利用可能になったことを示している。
ステップS3-3-3では、公開フラグを設定したアプリケーション情報をアプリケーション情報ファイル160に保管する。
ここまでが,開発ユーザがアプリケーションのバージョンを設定し,そのバージョンのアプリケーションの実行可能ファイルを生成し,動作を確認して,アプリケーションを公開するまでの処理の流れである。
次に,図15のステップS4-1に進み、利用ユーザが公開されたアプリケーションをダウンロードするまでの処理の流れを,図15を用いて具体的に説明する。
ステップS4-1では、利用ユーザがアプリケーション管理クライアント30を起動する。
ステップS4-2では、アプリケーション管理クライアント30は認証手段100を起動する。認証手段100は、図16に示すステップS4−2−1〜ステップS4−2−6までの処理を実行する。
ステップS4-2-1では、認証手段100は、認証情報230が存在するか確認する。存在する場合は(ステップS4−2−1でYES),図15に示すステップS4-3に進む。存在しない場合は(ステップS4−2−1でNO),ステップS4-2-2 に進む。ここでは,認証情報230は存在しないものとして,ステップS4-2-2に処理を進める。
ステップS4-2-2では、認証手段100は、アプリケーション管理サーバ10にアクセスする。
ステップS4-2-3では、アプリケーション管理サーバ10は認証サーバ11にアクセスする。
ステップS4-2-4では、認証サーバ11は、ログインフォーム210をアプリケーション管理クライアント30に送信する。
ステップS4-2-5では、アプリケーション管理クライアント30は、ログインフォーム210を表示デバイス130上に表示する。ここで,ログインフォーム210は、図19のような構成で表示されているものとする。
ステップS4-2-6では、利用ユーザはログインフォーム210中のテキスト入力部にUser IDとPasswordを入力し,送信ボタンを選択し,入力したデータを認証サーバ11に送信する。ここで,利用ユーザは以下のデータを入力したものとする。
{User ID, Password} = {yoshida, canon}
次に、図17のステップS4-2-7に進み、ステップS4-2-7では、認証サーバ11は,ユーザリスト220からUser IDと一致するIDを持つレコードを抽出する。ここで,ユーザリスト220には図20に示すようなデータが保管されているものとする。
{User ID, Password} = {yoshida, canon}
次に、図17のステップS4-2-7に進み、ステップS4-2-7では、認証サーバ11は,ユーザリスト220からUser IDと一致するIDを持つレコードを抽出する。ここで,ユーザリスト220には図20に示すようなデータが保管されているものとする。
ステップS4-2-8では、User IDと一致するIDを持つデータが存在するならば(ステップS4-2-8でYES),ステップS4-2-9に進む。存在しないならば(ステップS4-2-8でNO),エラーメッセージをアプリケーション管理クライアント30に送信し,処理を終了する。ここで,以下のデータが取得できたものとする。
{User ID, Password} = {yoshida, canon}
ステップS4-2-9では、図16に示すステップS4-2-5で送信されたデータと図17に示すステップS4-2-7で取得したデータを比較し,UserIDとPasswordが一致するかを確認する。
{User ID, Password} = {yoshida, canon}
ステップS4-2-9では、図16に示すステップS4-2-5で送信されたデータと図17に示すステップS4-2-7で取得したデータを比較し,UserIDとPasswordが一致するかを確認する。
ステップS4-2-10では、User IDとPasswordが一致しないならば(ステップS4−2−10でNO),エラーメッセージをアプリケーション管理サーバ10に送信し,処理を終了する。UserIDとPasswordが一致するならば(ステップS4−2−10でYES),ステップS4−2−11に進む。
ステップS4−2−11では、User IDをアプリケーション管理サーバ10に送信する。ここで,User IDとPasswordが一致しているので,User IDをアプリケーション管理サーバ10に送信する。次に、図15のステップS4-3に進む。
ステップS4-3では、アプリケーション管理サーバ10は,アクセス権制御手段80を起動する。起動されたアクセス権制御手段80は,アクセス権リスト190からUser IDと一致するアプリケーションIDとを取得する。一致するアプリケーションIDが存在しないならば,エラーメッセージをアプリケーション管理クライアント30に送信し,処理を終了する。存在するならば,STEP4-4に処理を進める。ここで,以下のアプリケーションIDが取得できたものとする。
Application ID = {1, 3}
これは,User IDを持つユーザがアプリケーションID1と3のアプリケーションがダウンロード可能であることを示す。
Application ID = {1, 3}
これは,User IDを持つユーザがアプリケーションID1と3のアプリケーションがダウンロード可能であることを示す。
ステップS4-4では、アプリケーション管理サーバ10は,アプリケーションリスト生成手段70を起動する。起動されたアプリケーションリスト生成手段70は、次のステップS4−4−1〜S4−4−3の処理を実行する。
ステップS4-4-1では、アプリケーション情報リストから,ステップS4-3で取得したアプリケーションIDと一致するアプリケーション情報を取得する。
ステップS4−4−2では、アプリケーションIDと一致するアプリケーション情報が存在するか否かを判断する。存在しない場合は(ステップS4−4−2でNO),エラーメッセージをアプリケーション管理クライアント30に送信し,処理を終了し、存在する場合は(ステップS4−4−2でYES)、ステップS4−4−3に進む。
ステップS4-4-3では、ステップS4-4-1で取得した情報から,アプリケーションリストを生成し,アプリケーション管理クライアント30に送信する。次に、図15のステップS4-5に進む。
ステップS4-5では、アプリケーション管理クライアント30は、ステップS4-4-2で送信されたアプリケーションリストを表示デバイス130上に表示する。ここで,表示デバイス130上には図21のように表示されている。
ステップSTEP4-6では、利用ユーザは、入力デバイス140を用いて,表示されているアプリケーションリストからダウンロードしたいアプリケーションを選択し,ダウンロードを要求する。
ステップS4-7では、アプリケーション管理クライアント30は、選択されたアプリケーションのアプリケーションIDをアプリケーション管理サーバ10に送信する。
ステップS4-8では、ステップS2-5と同様の処理を実施する。
ステップS4-9では、アプリケーション管理クライアント30は,ステップS4-8-3で送信された実行ファイルをアプリケーション保存ディレクトリに保存する。ここで,以下の場所にファイルを保存したものとする。
C:\applications\application1\1.0.1\
ここまでが,ユーザがアプリケーション管理クライアント30を起動してから,利用したいアプリケーションをダウンロードするまでの処理の流れである。
C:\applications\application1\1.0.1\
ここまでが,ユーザがアプリケーション管理クライアント30を起動してから,利用したいアプリケーションをダウンロードするまでの処理の流れである。
次に,図22のステップS5-1に進み、ダウンロードしたアプリケーションを起動し,アプリケーションがバージョンアップしている場合に,アプリケーションを更新する処理の流れを,図22,23を用いて具体的に示す。ここで、ステップS4-1からステップS4-5までの処理が終了しているものとする。
ステップS5-1では、利用ユーザがアプリケーションを選択し,アプリケーションの更新を要求する。ここで,アプリケーション管理クライアント30は、図24のようなウィンドウで表示されているものとする。また,メニューには図25のような項目があるものとする。ここで,利用ユーザは、アプリケーションリストから更新したいアプリケーションを選択し,メニューの更新項目を選択する。
ステップS5-2では、アプリケーション管理クライアント30は,アプリケーション管理サーバ10にステップS5-1で利用ユーザが選択したアプリケーションのアプリケーションIDと,現在のアプリケーションを保存するディレクトリに保存されているアプリケーションのバージョン番号とを送信し,更新情報を要求する。ここで,アプリケーション保存ディレクトリに保存されているバージョン番号は1.0.1であるので,アプリケーションID=1,バージョン番号=1.0.1をアプリケーション管理サーバ10に送信する。
ステップS5-3では、アプリケーション管理サーバ10は、アプリケーション情報管理手段60を起動し,起動されたアプリケーション情報管理手段60は、図23に示す処理ステップS5−3−1〜ステップS5−3−5を実行する。
ステップS5-3-1では、送信されたアプリケーションIDと一致するIDを持つアプリケーション情報をアプリケーション情報リストから抽出し,最新のバージョン番号を取得する。ここで、以下のバージョン番号が取得できたものとする。
Version = 1.0.2
ステップS5-3-2では、ステップS5-3-2で取得されたバージョン番号とステップS5-2でアプリケーション管理クライアント30から送信されたバージョン番号とを比較する。
Version = 1.0.2
ステップS5-3-2では、ステップS5-3-2で取得されたバージョン番号とステップS5-2でアプリケーション管理クライアント30から送信されたバージョン番号とを比較する。
ステップS5-3-3では、ステップS5-3-2の比較結果に基づいて、バージョン番号が更新されているか否かを判断する。ステップS5-3-1で取得されたバージョン番号の方が大きい場合は(更新されている)ステップS5-3-4に進み(ステップS5-3-3でYES),ステップS5-3-1で取得した最新のバージョン番号をアプリケーション管理クライアント30に送信する。そうでない場合はステップS5-3-5に進み(ステップS5-3-3でNO),ステップS5-2に進みアプリケーション管理クライアント30から送信されたバージョン番号をアプリケーション管理クライアント30に送信する。
ここで、ステップS5-3-1で取得されたバージョン番号とステップS5-2でアプリケーション管理クライアント30から送信されたバージョン番号を比較してみると,バージョン番号はversion = 1.0.1,バージョン番号はversion = 1.0.2でバージョン番号の方が大きいため,ステップS5-3-1で取得したバージョン番号をアプリケーション管理クライアント30に送信する。次に、図22のステップS5-4に進む。
ステップS5-4では、アプリケーション管理クライアント30は,ステップS5-3-3で送信されたバージョン番号とステップS5-2で送信されたバージョン番号とを比較し,一致するならばステップS5の処理を終了し(ステップS5でYES)、異なるならばステップS5-6に進む(ステップS5でNO)。ここでは,送信したバージョン番号と異なるため,ステップS5-6に処理を進める。
ステップS5-6では、アプリケーション管理クライアント30は,アプリケーションIDとステップS5-4で取得したバージョン番号をアプリケーション管理サーバ10に送信し,ダウンロードを要求する。ここまでが,利用ユーザがアプリケーションの更新を要求したときの,更新されるまでの処理の流れである。
次に,利用ユーザが明示的にアプリケーションの更新を要求するのではなく,アプリケーションの起動を要求した際に,アプリケーションが更新されている場合に保存しているアプリケーションを更新して起動するまでの処理の流れを,図26を用いて具体的に説明する。ここでもステップS4-1〜ステップS4-5までの処理が終了しているものとする。
ステップS6-1では、利用ユーザがアプリケーションを選択し,起動を要求する。ここで,利用ユーザはアプリケーションID=1のアプリケーションを選択したものとする。
ステップS6-2では、以下,ステップS5-2と同様の処理を行なう。
ステップS6-3では、アプリケーション管理クライアント30は、起動手段110を起動し,起動された起動手段110は,STEP2-6と同様の処理を行なう。この処理によって,利用ユーザがアプリケーションの更新を意識すること無く,アプリケーションの更新を行なうことが出来る。
次に,アプリケーションのバージョンを以前のバージョンに戻す処理の流れを,図27を用いて具体的に説明する。ここでもステップS4-1〜ステップS4-5までの処理が終了しているものとする。
ステップS7-1では、利用ユーザがアプリケーションを選択し,バージョンダウンを要求する。ここで,アプリケーション管理クライアント30は、図24のようなウィンドウで表示されているものとする。また,メニューには図25のような項目があるものとする。ここで,利用ユーザはアプリケーションリストからバージョンダウンしたいアプリケーションを選択し,メニューのバージョンダウン項目を選択する。
ステップS7-2では、アプリケーション管理クライアント30は,バージョン入力ウィンドウを表示デバイス130上に表示する。ここで,バージョン入力ウィンドウは、図28のような表示のウィンドウであるものとする。
ステップS7-3では、利用ユーザは,バージョン入力ウィンドウのテキスト入力部にバージョン番号を入力し,送信ボタンを選択する。
ステップS7-4では、以下,ステップS5-6,ステップS6と同様の処理を行なう。
以上の処理により,利用ユーザが要求するバージョンにアプリケーションを戻すことが出来る。
次に,利用ユーザがアプリケーション利用中にデータをパーソナルコンピュータ上に保存するときと,保存したデータを読み込むときの処理の流れを,図29,30を用いて具体的に説明する。ここでもステップS4-1〜ステップS4-5までの処理が行われているものとし,利用ユーザはアプリケーションを実行中であると仮定する。
ステップS8-1では、利用ユーザがアプリケーションの機能において,データの保存を要求する。ここで、利用ユーザは、データをディレクトリ”C:\applications\data\data1.dat”に保存することを要求したとする。
ステップS8-2では、アプリケーション管理クライアント30は,入出力管理手段120を起動し,入出力管理手段120は次のステップS8−2−1〜ステップS8−2−5までの処理を実行する。
ステップS8-2-1では、実行中のアプリケーションの出力プロセスを取得する。
ステップS8-2-2では、取得した出力プロセスから,出力データを取得する。
ステップS8-2-3では、暗号化プログラムを起動し,ステップS8-2-2で取得した出力データを暗号化する。
ステップS8-2-4では、出力プロセスから,利用ユーザが要求した保存先のファイルパスを取得する。ここで,ステップS8-1で利用ユーザが要求したファイルパスが取得されたものとする。
ステップS8-2-5では、ステップS8-2-4で取得したファイルパスにステップS8-2-3で暗号化したデータを保存する。ここまでが,アプリケーション利用中に利用ユーザが保存したデータに対する処理である。次に,保存したデータをアプリケーションで利用するまでの処理の流れを,図30,31を用いて具体的に説明する。
ステップS9-1では、利用ユーザがアプリケーションの機能において,データのロードを要求する。
ステップS9-2では、アプリケーション管理クライアント30は、入出力管理手段120を起動し,入出力管理手段120は次のステップS9−2−1〜ステップS9−2−6までの処理を実行する。
ステップSTEP9-2-1では、実行中のアプリケーションの入力プロセスを取得する。
ステップS9-2-2では、取得した入力プロセスから,利用ユーザが要求したデータのファイルパスを取得する。ここで,ステップS8で保存したデータの読み込みを利用ユーザが要求したものとする。従って,ここで得られるファイルパスは”C:\applications\data\data1.dat”となる。
ステップS9-2-3では、ステップS9-2-2で取得したファイルパスから,ファイルを呼び出し,データを読みこむ。
ステップS9-2-4では、復号プログラムを起動し,ステップS9-2-3で取得したデータを復号する。
ステップS9-2-5では、入力プロセスにステップS9-2-4で復号したデータを渡す。これにより,ステップS8で暗号化して保存したデータを,アプリケーションが利用可能な形に復号し,アプリケーションで利用することができる。
以下、アプリケーション利用中にアルゴリズムを選択的に実行する処理について、図1、図32、図35及び図37を用いて具体的に説明する。
利用ユーザが入力デバイス140によって表示デバイス130の画面上に表示されたアプリケーションの起動用アイコンをクリックすると、アプリケーション・プログラムがメモリ103'に読み込まれ、アプリケーションが起動する。
図35のステップS601では、利用ユーザが、アプリケーションの画面上で機能メニュー、例えば、図32(a)の“ツール”項目10101の階層下にある項目10102,10301のいずれかをマウス等の入力デバイス140により選択する。次に、アプリケーション制御手段101が、ステップS601で選択されたメニュー項目による分岐を行う。
ステップS602では、サブメニューの連結があるか否かを判断する。サブメニューの連結がある項目については(ステップS602でYES)ステップS603に進み、サブメニューの連結がない項目については(ステップS602でNO)ステップS605に進む。
ステップS603では、アプリケーション制御手段101は、図1のメモリ103に格納された図36のアプリケーションUI構成リストを参照し、S601で選択された項目に対応するサブメニューを、表示デバイス130の画面上に表示する。
例えば、図36のアプリケーションUI構成リスト中で10901で示されるサブメニューの階層1は、図32(a)の10102のように表示され(機能A〜機能Fが表示されている)、10902で示されるアルゴリズム選択用のサブメニューの階層2は、10104のように表示される。特に限定しないが、10104は、図32(b)に示すように、“アルゴリズムX―XXを実行”のように、適当なテキストを補ってメニュー項目に表示されるのが望ましい。
ステップS604では、アプリケーション制御手段101は、図1のメモリ103'に格納されたアプリケーションUI構成リストを参照し、アルゴリズム選択用のサブメニューの階層2(例えば、図36の10902の項目)を派生する階層1の項目(ここでは、図36の“機能B”であり、図32の10103に対応する)を、例えば他の項目とは異なる表示(例えば、すること等)をして描画することで強調表示する(その他、異なる色を付けたり、異なる色を一定間隔で点滅させたり(ブリンク表示)、明るさを変えたり、することで強調表示してもよい)。
ステップS605では、アプリケーション制御手段101は、ステップS601で選択された項目がアルゴリズム選択用サブメニュー上で選ばれた項目かどうかを判断し、真ならば(ステップS605でYES)ステップS608へ進み、偽ならば(ステップS605でNO)ステップS607へ進む。
ステップS607では、アプリケーション制御手段101は、アルゴリズム選択サブメニュー上の項目以外の項目に対応した機能の処理を実行する(この際、必要に応じてパラメータの入力を行う)。
ステップS608では、アプリケーション制御手段101は、アルゴリズム選択サブメニュー上のどの項目が選択されたかを判断し、その項目に応じて以下の(a)〜(c)のいずれかに分岐する。
(a)新アルゴリズム(例えばB-003)の実行用の項目10105の場合では、ステップS609へ進む。
(b)旧アルゴリズム(例えばB-001)の実行用の項目10106の場合では、ステップS611へ進む。
(c)新旧アルゴリズム(例えばB-003とB-001)を並列で実行するための項目10107の場合では、ステップS613へ進む。
(a)新アルゴリズム(例えばB-003)の実行用の項目10105の場合では、ステップS609へ進む。
(b)旧アルゴリズム(例えばB-001)の実行用の項目10106の場合では、ステップS611へ進む。
(c)新旧アルゴリズム(例えばB-003とB-001)を並列で実行するための項目10107の場合では、ステップS613へ進む。
ステップS609では、利用者は、キーボード(入力デバイス140)から、新アルゴリズム(例えばB-003)用のパラメータを入力する。
ステップS610では、アプリケーションは、入力されたパラメータを新アルゴリズム(例えばB-003)のプログラムに入力して処理させ、結果を表示する(図33(a)参照)。
ステップS611では、利用者は、キーボード(入力デバイス140)から、旧アルゴリズム(例えばB-001)のパラメータを入力する。
ステップS612では、アプリケーション制御手段101は、入力されたパラメータを旧アルゴリズム(例えばB-001)のプログラムに入力して処理させ、結果を表示する(図33(b)参照)。
ステップS613では、利用者は、入力デバイス140を用いて新旧両アルゴリズム(例えばB-003、B-001)の両方のパラメータを入力する。ただし、両アルゴリズムのパラメータが全く同じ場合は、一度で入力できるように構成されてもよい。
ステップS614では、アプリケーション制御手段101は、入力されたパラメータを新旧両アルゴリズム(例えばB-003、B-001)の各プログラムに入力して、図33(c)に示すように、両方の結果を併記して表示する。このとき、両アルゴリズムによる処理を複数のプロセスを生成し、同時並行で処理して結果を表示してもよいし、1つ1つ順番に処理して夫々の結果を時間差を置いて表示してもよい。このように、新旧アルゴリズムの実行結果を1つのウィンドウ内に併記することができるため、画面が煩雑化したり、新旧アルゴリズムの機能を再度実行する必要がなく、アプリケーションが有する機能毎に、新旧のアルゴリズムのバージョンの違いによる処理結果の比較が容易となる。
以上のように、本発明によれば、アプリケーション開発側のアプリケーション構成ファイルのバージョン管理とアプリケーション配布のためのバージョン管理,ビルド,テスト,公開設定,ユーザ認証・アクセス制御を組したアプリケーションの配布,バージョンアップ,バージョンダウンを一貫して行なうことで,開発者の意図しないバージョンの使用を減らすことができる。
さらに、本発明のアプリケーション配布システムが配布するアプリケーションは、そのアプリケーションに組み込まれている機能の中で新旧複数のバージョンのアルゴリズムを有するものについては、その機能に対応したメニューやボタン等のユーザインターフェイス(以下UIと省略)の項目を強調表示する手段、同UI項目の位置から派生してアルゴリズム選択実行用のサブUI(サブメニュー等)を表示する手段、同サブUI上にその機能の新旧複数のバージョンのアルゴリズムを単独で実行するための項目、および新旧複数のアルゴリズムを並列で実行するための項目を並べて表示する手段、前記サブUIから前記アルゴリズムを単独で実行するための項目が選択された際には対応するバージョンのアルゴリズムによるプログラムを起動し計算結果を表示する手段、同サブUIから前記複数アルゴリズムを並列で実行するための項目が選択された際には対応する複数のプログラムを並列で又は順次に起動し複数の計算結果を併記して表示する手段を有することで、同一機能の新旧のアルゴリズムによる処理結果の比較を容易に行うことができる。
10 アプリケーション管理サーバ
11 認証サーバ
12 バージョン管理サーバ
20 ネットワーク
30 アプリケーション管理クライアント
40 バージョン設定手段
50 ビルド手段
60 アプリケーション情報管理手段
70 アプリケーションリスト生成手段
80 アクセス権制御手段
90 配布手段
100 認証手段
110 起動手段
120 入出力管理手段
130 表示デバイス
140 入力デバイス
150 バージョン管理手段
160 アプリケーション情報ファイル
170 バージョン設定フォーム
180 実行ファイルセット
190 アクセス権リスト
200 ファイルセット
210 ログインフォーム
220 ユーザリスト
230 認証情報
10101 メインメニュー上の“ツール”項目
10102 “ツール”項目を押したときに表示されるサブメニュー
10103 強調表示されたメニュー項目
10104 アルゴリズム選択実行用サブメニュー
10105 新バージョン・アルゴリズムを単独で実行するための項目
10106 旧バージョン・アルゴリズムを単独で実行するための項目
10107 新旧複数バージョンのアルゴリズムを並列で実行するための項目
101 アプリケーション制御手段
102 記憶手段
103, 103'メモリ
10901 サブメニュー用の情報の例
10902 アルゴリズム選択実行用サブメニュー用の情報の例
11 認証サーバ
12 バージョン管理サーバ
20 ネットワーク
30 アプリケーション管理クライアント
40 バージョン設定手段
50 ビルド手段
60 アプリケーション情報管理手段
70 アプリケーションリスト生成手段
80 アクセス権制御手段
90 配布手段
100 認証手段
110 起動手段
120 入出力管理手段
130 表示デバイス
140 入力デバイス
150 バージョン管理手段
160 アプリケーション情報ファイル
170 バージョン設定フォーム
180 実行ファイルセット
190 アクセス権リスト
200 ファイルセット
210 ログインフォーム
220 ユーザリスト
230 認証情報
10101 メインメニュー上の“ツール”項目
10102 “ツール”項目を押したときに表示されるサブメニュー
10103 強調表示されたメニュー項目
10104 アルゴリズム選択実行用サブメニュー
10105 新バージョン・アルゴリズムを単独で実行するための項目
10106 旧バージョン・アルゴリズムを単独で実行するための項目
10107 新旧複数バージョンのアルゴリズムを並列で実行するための項目
101 アプリケーション制御手段
102 記憶手段
103, 103'メモリ
10901 サブメニュー用の情報の例
10902 アルゴリズム選択実行用サブメニュー用の情報の例
Claims (23)
- ネットワークに接続可能なサーバであって、
アプリケーションの各機能を実現するためのファイルのバージョンを管理するバージョン管理手段と、
前記バージョン管理手段により管理されたファイルを実行可能な形式に変換するビルド手段と、
前記ネットワークに接続されたクライアントからの要求に応じて、前記ビルド手段により実行可能な形式に変換されたファイルのうち、前記クライアントが利用可能なバージョンのファイルの一覧をアプリケーションリストとして生成するアプリケーションリスト生成手段と、
前記アプリケーションリストに対する前記クライアントからの要求に応じたファイルを配布する配布手段と、
を備えることを特徴とするサーバ。 - 前記クライアントから送信された認証情報に基づいて、前記ファイルへのアクセス権を制御するアクセス権制御手段を備え、前記配布手段は、前記アクセス権制御手段によりアクセスが許可された前記クライアントに対して前記ファイルを配布することを特徴とする請求項1に記載のサーバ。
- 前記アプリケーションは、そのアプリケーションの各機能の実行結果を表示するためのウィンドウを有し、かつ、前記各機能に対応する新旧複数のバージョンのアルゴリズムの実行結果を前記ウィンドウ内に並列して表示する機能を有することを特徴とする請求項1又は請求項2に記載のサーバ。
- 前記アプリケーションは、
前記ウィンドウ上に、前記各機能に対応する項目を示すユーザインターフェースを強調表示する第1表示手段と、
前記強調表示されたユーザインターフェースから派生して、前記各機能の新旧複数のバージョンのアルゴリズムを選択的に実行するためのサブユーザインターフェースを表示する第2表示手段と、
前記サブユーザインターフェース上に、前記各機能の新旧複数のバージョンのアルゴリズムを単独で実行するための項目と、前記各機能の新旧複数のバージョンのアルゴリズムを並列で実行するための項目と、を並列して表示する第3表示手段と、
前記サブユーザインターフェース上で、前記単独で実行するための項目が選択されたときに、該項目に対応するバージョンのアルゴリズムを有するプログラムを起動し、その計算結果を表示する第4表示手段と、
前記サブユーザインターフェース上で、前記並列で実行するための項目が選択されたときに、該項目に対応する新旧複数のバージョンのアルゴリズムを有するプログラムを並列で又は順次に起動し、それらの複数の計算結果を並列して表示する第5表示手段と、
を有することを特徴とする請求項3に記載のサーバ。 - 前記バージョン設定手段は、前記アプリケーションの各機能のうち、所定バージョンより以前のバージョンのアルゴリズムが存在するファイルを有するものについては、そのファイルを全て前記所定バージョンに設定することを特徴とする請求項1乃至請求項4のいずれか1項に記載のサーバ。
- 前記アプリケーションの各機能のアルゴリズムのバージョンを格納したアルゴリズムバージョンテーブルを有し、前記バージョン設定手段は、前記アルゴリズムバージョンテーブルに基づいて前記所定バージョンを設定することを特徴とする請求項1乃至請求項5のいずれか1項に記載のサーバ。
- 前記ウィンドウのユーザインターフェースを構成するための情報を含むアプリケーションユーザインターフェース構成リストを有し、前記アプリケーションは、前記アプリケーションユーザインターフェース構成リストに基づいて、前記ユーザインターフェースを表示することを特徴とする請求項1乃至請求項6のいずれか1項に記載のサーバ。
- 前記ネットワークに接続可能なクライアントであって、
請求項1乃至請求項7のいずれか1項に記載のサーバから配布された前記ファイルを起動し実行する起動手段と、
前記ファイルの実行時に作成されたデータを暗号化してメモリに格納し、前記起動したファイルを再度実行するときに該メモリから該データを復号化して読み出す入出力管理手段と、
を備えるクライアント。 - ネットワークに接続可能なサーバと、該ネットワークに接続可能なクライアントとを備えるアプリケーション配布システムであって、
前記サーバは、
アプリケーションの各機能を実現するためのファイルのバージョンを管理するバージョン管理手段と、
前記バージョン管理手段により管理されたファイルを実行可能な形式に変換するビルド手段と、
前記ネットワークに接続されたクライアントからの要求に応じて、前記ビルド手段により実行可能な形式に変換されたファイルのうち、前記クライアントが利用可能なバージョンのファイルの一覧をアプリケーションリストとして生成するアプリケーションリスト生成手段と、
前記アプリケーションリストに対する前記クライアントからの要求に応じたファイルを配布する配布手段と、
を備え、
前記クライアントは、
前記サーバから配布された前記ファイルを起動し実行する起動手段を備えることを特徴とするアプリケーション配布システム。 - 前記サーバは、前記クライアントから送信された認証情報に基づいて、前記ファイルへのアクセス権を制御するアクセス権制御手段を備え、前記配布手段は、前記アクセス権制御手段によりアクセスが許可された前記クライアントに対して前記ファイルを配布することを特徴とする請求項9に記載のアプリケーション配布システム。
- 前記アプリケーションは、そのアプリケーションの各機能の実行結果を表示するためのウィンドウを有し、かつ、前記各機能に対応する新旧複数のバージョンのアルゴリズムの実行結果を前記ウィンドウ内に並列して表示する機能を有することを特徴とする請求項9又は請求項10に記載のアプリケーション配布システム。
- 前記アプリケーションは、
前記ウィンドウ上に、前記各機能に対応する項目を示すユーザインターフェースを強調表示する第1表示手段と、
前記強調表示されたユーザインターフェースから派生して、前記各機能の新旧複数のバージョンのアルゴリズムを選択的に実行するためのサブユーザインターフェースを表示する第2表示手段と、
前記サブユーザインターフェース上に、前記各機能の新旧複数のバージョンのアルゴリズムを単独で実行するための項目と、前記各機能の新旧複数のバージョンのアルゴリズムを並列で実行するための項目と、を並列して表示する第3表示手段と、
前記サブユーザインターフェース上で、前記単独で実行するための項目が選択されたときに、該項目に対応するバージョンのアルゴリズムを有するプログラムを起動し、その計算結果を表示する第4表示手段と、
前記サブユーザインターフェース上で、前記並列で実行するための項目が選択されたときに、該項目に対応する新旧複数のバージョンのアルゴリズムを有するプログラムを並列で又は順次に起動し、それらの複数の計算結果を並列して表示する第5表示手段と、
を有することを特徴とする請求項11に記載のアプリケーション配布システム。 - 前記サーバは、前記バージョン設定手段は、前記アプリケーションの各機能のうち、所定バージョンより以前のバージョンのアルゴリズムが存在するファイルを有するものについては、そのファイルを全て前記所定バージョンに設定することを特徴とする請求項9乃至請求項12のいずれか1項に記載のアプリケーション配布システム。
- 前記サーバは、前記アプリケーションの各機能のアルゴリズムのバージョンを格納したアルゴリズムバージョンテーブルを有し、前記バージョン設定手段は、前記アルゴリズムバージョンテーブルに基づいて前記所定バージョンを設定することを特徴とする請求項9乃至請求項13のいずれか1項に記載のアプリケーション配布システム。
- 前記ウィンドウのユーザインターフェースを構成するための情報を含むアプリケーションユーザインターフェース構成リストを有し、前記アプリケーションは、前記アプリケーションユーザインターフェース構成リストに基づいて、前記ユーザインターフェースを表示することを特徴とする請求項9乃至請求項14のいずれか1項に記載のアプリケーション配布システム。
- 前記クライアントは、ファイルの実行時に作成されたデータを暗号化してメモリに格納し、前記ファイルを再度実行するときに該メモリから該データを復号化して読み出す入出力管理手段を備えることを特徴とする請求項9乃至請求項15のいずれか1項に記載のアプリケーション配布システム。
- ネットワークに接続可能な情報処理装置の制御方法であって、
アプリケーションの各機能を実現するためのファイルのバージョンを管理するバージョン管理工程と、
前記バージョン管理工程で管理されたファイルを実行可能な形式に変換するビルド工程と、
前記ビルド工程で実行可能な形式に変換されたファイルのうち、前記ネットワークに接続されたクライアントが利用可能なバージョンのファイルの一覧をアプリケーションリストとして生成するアプリケーションリスト生成工程と、
前記アプリケーションリストに基づいて前記クライアントに前記ファイルを配布する配布工程と、
を含むことを特徴とする情報処理装置の制御方法。 - 前記配布工程により配布されたファイルを受信する工程と、
前記受信したファイルの新旧複数のバージョンのアルゴリズムの実行結果をウィンドウ内に並列して表示する工程と、
を含むことを特徴とする請求項17に記載の情報処理装置の制御方法。 - ネットワークに接続可能なサーバの制御方法であって、
アプリケーションの各機能を実現するためのファイルのバージョンを管理するバージョン管理工程と、
前記バージョン管理工程で管理されたファイルを実行可能な形式に変換するビルド工程と、
前記ビルド工程で実行可能な形式に変換されたファイルのうち、前記ネットワークに接続されたクライアントが利用可能なバージョンのファイルの一覧をアプリケーションリストとして生成するアプリケーションリスト生成工程と、
前記アプリケーションリストに基づいて前記クライアントに前記ファイルを配布する配布工程と、
を含むことを特徴とする情報処理装置の制御方法。 - 前記配布工程により配布された前記ファイルを起動し実行する起動工程を含むことを特徴とする請求項19に記載の情報処理装置の制御方法。
- 前記起動工程では、前記受信したファイルの新旧複数のバージョンのアルゴリズムの実行結果をウィンドウ内に並列して表示することを特徴とする請求項20に記載の情報処理装置の制御方法。
- 請求項17乃至請求項21のいずれか1項に記載の情報処理装置の制御方法をコンピュータによって実行させることを特徴とするプログラム。
- 請求項17乃至請求項21のいずれか1項に記載の情報処理装置の制御方法をコンピュータによって実行させるためのプログラムを格納することを特徴とする記憶媒体。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003413816A JP2005174025A (ja) | 2003-12-11 | 2003-12-11 | ネットワークに接続可能なサーバ、クライアント及びこれらを備えるアプリケーション配布システム、情報処理装置の制御方法、プログラム並びに記録媒体 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003413816A JP2005174025A (ja) | 2003-12-11 | 2003-12-11 | ネットワークに接続可能なサーバ、クライアント及びこれらを備えるアプリケーション配布システム、情報処理装置の制御方法、プログラム並びに記録媒体 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2005174025A true JP2005174025A (ja) | 2005-06-30 |
Family
ID=34733840
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003413816A Withdrawn JP2005174025A (ja) | 2003-12-11 | 2003-12-11 | ネットワークに接続可能なサーバ、クライアント及びこれらを備えるアプリケーション配布システム、情報処理装置の制御方法、プログラム並びに記録媒体 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2005174025A (ja) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009218787A (ja) * | 2008-03-10 | 2009-09-24 | Canon Inc | 画像形成装置、画像形成装置の制御方法及びプログラム |
JP2011022712A (ja) * | 2009-07-14 | 2011-02-03 | Canon Inc | 配信システム、配信装置、及び配信方法 |
WO2021207997A1 (en) * | 2020-04-16 | 2021-10-21 | Citrix Systems, Inc. | Selecting applications based on features of a file |
CN113805934A (zh) * | 2021-08-26 | 2021-12-17 | 土巴兔集团股份有限公司 | 应用程序打包方法、装置、计算机设备及存储介质 |
KR102637168B1 (ko) * | 2023-07-20 | 2024-02-16 | 인스피언 주식회사 | 애플리케이션 서비스 제공 장치, 애플리케이션 서비스 제공 방법 및 애플리케이션 서비스 제공하는 프로그램이 저장된 컴퓨터가 판독 가능한 기록매체 |
-
2003
- 2003-12-11 JP JP2003413816A patent/JP2005174025A/ja not_active Withdrawn
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009218787A (ja) * | 2008-03-10 | 2009-09-24 | Canon Inc | 画像形成装置、画像形成装置の制御方法及びプログラム |
US8554751B2 (en) | 2008-03-10 | 2013-10-08 | Canon Kabushiki Kaisha | Image forming apparatus, method of controlling the image forming apparatus, and storage medium |
JP2011022712A (ja) * | 2009-07-14 | 2011-02-03 | Canon Inc | 配信システム、配信装置、及び配信方法 |
WO2021207997A1 (en) * | 2020-04-16 | 2021-10-21 | Citrix Systems, Inc. | Selecting applications based on features of a file |
US11625252B2 (en) | 2020-04-16 | 2023-04-11 | Citrix Systems, Inc. | Selecting applications based on features of a file |
CN113805934A (zh) * | 2021-08-26 | 2021-12-17 | 土巴兔集团股份有限公司 | 应用程序打包方法、装置、计算机设备及存储介质 |
KR102637168B1 (ko) * | 2023-07-20 | 2024-02-16 | 인스피언 주식회사 | 애플리케이션 서비스 제공 장치, 애플리케이션 서비스 제공 방법 및 애플리케이션 서비스 제공하는 프로그램이 저장된 컴퓨터가 판독 가능한 기록매체 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6944857B1 (en) | Method, system, computer program product, and article of manufacture for updating a computer program according to a stored configuration | |
US20210271472A1 (en) | Application Wrapping for Application Management Framework | |
US8850424B2 (en) | Processing, modification, distribution of installation packages | |
JP4838610B2 (ja) | 文書管理装置、文書管理方法、プログラム | |
US20130219307A1 (en) | System and method for runtime user interface management | |
US20090300151A1 (en) | System and method for managing a virtual appliance lifecycle | |
JP2003050781A (ja) | 個人認証装置、バージョン管理装置、個人認証方法、バージョン管理方法、個人認証方法をコンピュータに実行させるプログラム、およびバージョン管理方法をコンピュータに実行させるプログラム | |
US20070240150A1 (en) | Simplifying installation of a suite of software products | |
JP2009037455A (ja) | 情報処理装置、クライアント装置及びライセンス管理システム | |
US20160371071A1 (en) | Account-based software upgrades in a multi-tenant ecosystem | |
JP2013117949A (ja) | 画像表示装置、画像表示システム及び画像表示方法 | |
JP5445692B2 (ja) | 情報処理装置およびプログラム | |
US9032541B2 (en) | Information processing system, information processing apparatus, and computer-readable storage medium | |
US7703092B1 (en) | Method, system, computer program product, and article of manufacture for installation and configuration of a computer program according to a stored configuration | |
JP5963420B2 (ja) | 画像処理システム、画像処理装置及びその制御方法、並びにプログラム | |
JP2005174025A (ja) | ネットワークに接続可能なサーバ、クライアント及びこれらを備えるアプリケーション配布システム、情報処理装置の制御方法、プログラム並びに記録媒体 | |
US20090177755A1 (en) | Script serving apparatus and method | |
JP2005141427A (ja) | 情報処理装置及びその制御方法、情報処理システム、プログラム | |
JP4197343B2 (ja) | 制御用通信システム、および制御用通信プログラムを記録したコンピュータ読み取り可能な記録媒体 | |
CN115315696A (zh) | 网站的自动创建和部署 | |
JP6216673B2 (ja) | データ管理方法及びデータ管理システム | |
JP2005107708A (ja) | アプリケーション配布システム | |
Bhatia et al. | Extending grid protocols onto the desktop using the mozilla framework | |
JPH11282884A (ja) | ネットワーク型cadシステム | |
JP7311740B2 (ja) | 情報処理システム、その制御方法、及びプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Application deemed to be withdrawn because no request for examination was validly filed |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20070306 |