(57)【要約】【課題】アプリケーションを利用するユーザを一元管理し、バージョンが異なるアプリケーションを複数のユーザに提供する。【解決手段】実施形態のコンピュータシステムは、１つのアプリケーションを複数の異なるバージョンで区分し、各バージョンに対応する複数のアプリケーションプログラムを格納するアプリケーション格納部と、接続するユーザ端末機からの操作入力に応じてアプリケーションプログラムに基づくアプリケーション制御を遂行するアプリケーション制御部と、アプリケーションを利用するユーザ別にバージョンを関連付けたユーザ別バージョン管理情報を記憶する記憶部と、ユーザ端末機からの利用要求に基づいてユーザに関連付けられたアプリケーションのバージョンを識別し、バージョン別に予め設定された接続情報を用いてユーザ端末機をアプリケーション制御部に接続させる接続制御部とを含む。【選択図】図２
2013077220.tif 000002
【特許請求の範囲】
【請求項１】
１つのアプリケーションを複数の異なるバージョンで区分し、前記各バージョンに対応する複数のアプリケーションプログラムを格納するアプリケーション格納部と、
接続するユーザ端末機からの操作入力に応じて前記アプリケーションプログラムに基づくアプリケーション制御を遂行するアプリケーション制御部と、
前記アプリケーションを利用するユーザ別に前記バージョンを関連付けたユーザ別バージョン管理情報を記憶する記憶部と、
前記ユーザ端末機からの利用要求に基づいて、前記ユーザに関連付けられた前記アプリケーションのバージョンを識別し、前記バージョン別に予め設定された接続情報を用いて前記ユーザ端末機を前記アプリケーション制御部に接続させる接続制御部と、を含み、
前記アプリケーション制御部は、前記接続情報に基づいて接続する前記ユーザ端末機に提供されるアプリケーションのバージョンを識別し、識別されたバージョンのアプリケーションプログラムに基づく前記アプリケーション制御を遂行することを特徴とする特徴とするコンピュータシステム。
【請求項２】
前記ユーザ別バージョン管理情報は、一ユーザに対して複数のバージョンが関連付けられており、
前記接続制御部は、前記利用要求に含まれる前記ユーザ端末機から入力された前記アプリケーションのバージョン指定情報に対応するバージョンが前記ユーザと関連付けられているか否かを判別し、前記バージョン指定情報に対応するバージョンの前記接続情報を用いて前記ユーザ端末機を前記アプリケーション制御部に接続させることを特徴とする請求項１に記載のコンピュータシステム。
【請求項３】
１つのアプリケーションを複数の異なるバージョンで区分して前記各バージョンに対応する複数のアプリケーションプログラムを格納するとともに、接続するユーザ端末機からの操作入力に応じて前記アプリケーションプログラムに基づくアプリケーション制御を遂行するアプリケーションサーバと、前記ユーザ端末機との接続制御を遂行するマルチバージョン管理装置であって、
前記アプリケーションを利用するユーザ別に前記バージョンを関連付けたユーザ別バージョン管理情報と、前記アプリケーションのバージョン毎に設定された前記アプリケーションサーバの接続先ＵＲＬ情報と記憶する記憶部と、
前記ユーザ端末機からの利用要求に基づいて、前記ユーザに関連付けられた前記アプリケーションのバージョンを識別し、前記識別されたバージョンに対応する前記接続先ＵＲＬ情報を用いて前記ユーザ端末機を前記アプリケーションサーバに接続させる接続制御部と、
を含むことを特徴とするアプリケーションのマルチバージョン管理装置。
【請求項４】
前記ユーザ別バージョン管理情報は、一ユーザに対して複数のバージョンが関連付けられており、
前記接続制御部は、前記利用要求に含まれる前記ユーザ端末機から入力された前記アプリケーションのバージョン指定情報に対応するバージョンが前記ユーザと関連付けられているか否かを判別し、前記バージョン指定情報に対応するバージョンの前記接続先ＵＲＬ情報を用いて前記ユーザ端末機を前記アプリケーションサーバに接続させることを特徴とする請求項３に記載のアプリケーションのマルチバージョン管理装置。
【請求項５】
同一の前記アプリケーションサーバが複数設けられ、
各アプリケーションサーバの稼動状況に関するサーバ監視情報を収集するサーバ監視部と、
前記サーバ監視情報を参照して前記複数のアプリケーションサーバの中から予め設定された前記稼動状況に関連するサーバ選択ルールを満たすアプリケーションサーバを決定するサーバ選択部と、をさらに含み、
前記接続制御部は、前記ユーザ端末機を前記決定されたアプリケーションサーバに接続させることを特徴とする請求項４又は５に記載のアプリケーションのマルチバージョン管理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、アプリケーションのマルチバージョン管理及びそのアクセス制御に関する。
【背景技術】
【０００２】
アプリケーションサービス（アプリケーションシステム）では、ネットワークを介して接続する多数のユーザに各種サービス（アプリケーション）を提供するが、サービス提供側は、ユーザの要望やメンテナンス等に鑑みて１つのアプリケーションをバージョンアップし、最新バージョンのアプリケーションが利用できるように管理している。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００５−２０２５７３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
アプリケーションを利用するユーザを一元管理し、バージョンが異なるアプリケーションを複数のユーザに提供することができるコンピュータシステム及びマルチバージョン管理装置を提供する。
【課題を解決するための手段】
【０００５】
実施形態のコンピュータシステムは、１つのアプリケーションを複数の異なるバージョンで区分し、各バージョンに対応する複数のアプリケーションプログラムを格納するアプリケーション格納部と、接続するユーザ端末機からの操作入力に応じてアプリケーションプログラムに基づくアプリケーション制御を遂行するアプリケーション制御部と、アプリケーションを利用するユーザ別にバージョンを関連付けたユーザ別バージョン管理情報を記憶する記憶部と、ユーザ端末機からの利用要求に基づいて、ユーザに関連付けられたアプリケーションのバージョンを識別し、バージョン別に予め設定された接続情報を用いてユーザ端末機をアプリケーション制御部に接続させる接続制御部と、を含む。アプリケーション制御部は、接続情報に基づいて接続するユーザ端末機に提供されるアプリケーションのバージョンを識別し、識別されたバージョンのアプリケーションプログラムに基づくアプリケーション制御を遂行する。
【図面の簡単な説明】
【０００６】
【図１】第１実施形態のネットワーク構成例を示す図である。
【図２】第１実施形態のコンピュータシステムの構成ブロック例を示す図である。
【図３】第１実施形態のユーザ情報の一例を示す図である。
【図４】第１実施形態のアプリケーション管理情報の一例を示す図である。
【図５】第１実施形態のアプリケーション格納部の一例を示す図である。
【図６】第１実施形態のマルチバージョン制御の処理フローを示す図である。
【図７】第２実施形態のユーザ情報（ユーザ別バージョン管理情報）の一例を示す図である。
【図８】第２実施形態のマルチバージョン制御の処理フローを示す図である。
【図９】第３実施形態のネットワーク構成例を示す図である。
【図１０】第３実施形態のマルチバージョン管理装置の構成ブロック例を示す図である。
【図１１】第３実施形態のアプリケーション管理情報の一例を示す図である。
【図１２】第３実施形態のサーバ選択ルール情報（ａ）、サーバ監視情報（ｂ）の一例を示す図である。
【図１３】第３実施形態のサーバ選択制御の処理フローを示す図である。
【発明を実施するための形態】
【０００７】
以下、実施形態につき、図面を参照して説明する。
【０００８】
（第１実施形態）
図１から図６は、第１実施形態を示す図である。図１は、本実施形態のアプリケーションシステムのネットワーク構成図である。コンピュータシステムであるアプリケーションシステム１００は、ユーザ端末機３００がインターネット等のネットワークＮを介して接続する。アプリケーションシステム１００は、接続するユーザ端末機３００のユーザに対して所定のアプリケーション（サービス）機能を提供する。
【０００９】
ユーザは、アプリケーションシステム１００が提供するアプリケーションをブラウザ等のソフトウェアを通じて利用することができる。アプリケーションは、文書作成、データ管理（データ入力）、計算などの所定の目的のために設計された機能を提供するソフトウェアであり、ブラウザから入力されたデータや操作入力に基づいて該当機能に対応する処理を遂行し、処理結果をユーザに提供する。
【００１０】
アプリケーションシステム１００とユーザ端末機３００の接続は、インターネット等のネットワーク構成に限らず、例えば、ＬＡＮ（ローカルエリアネットワーク）環境のネットワーク構成であってもよい。
【００１１】
また、ユーザ端末機３００は、携帯電話機やＰＤＡ(Personal Digital Assistant)等の移動通信端末装置、パーソナルコンピュータなどの通信機能及び演算機能を備えた情報処理端末装置等が含まれる。ユーザ端末機３００は、アプリケーションシステム１００が提供するアプリケーション画面を表示する表示制御機能（例えば、ブラウザ）を備え、ＣＰＵ、メモリ及びアプリケーションシステム１００との間の通信制御を遂行する通信制御部等を含む。また、マウスやキーボード、タッチパネル等の操作入力装置及び表示装置を備えることができる。
【００１２】
なお、本実施形態では、バージョンが異なる１つのアプリケーションを複数のユーザに提供する態様を一例に説明するが、本実施形態のアプリケーションシステム１００は、１つ又は複数のアプリケーションを提供することができ、アプリケーション毎に複数のバージョンを管理し、バージョンが異なる１つのアプリケーションをユーザが利用できるマルチバージョン管理機能を提供する。また、バージョンは、１つのアプリケーションが提供する機能が追加されたり、既存の機能を修正・変更するに際してその各サービス提供内容を管理する情報である。１つのアプリケーションが備える機能に対する追加、変更等によってバージョンアップする度に、異なる各バージョンのアプリケーションが個別に管理される。
【００１３】
本実施形態のアプリケーションシステム１００は、ユーザ端末機３００とのネットワークＮを介した接続及びデータ通信等を制御する通信制御部１１０、管理制御部１２０、記憶部１３０、アプリケーション制御部１４０、及びアプリケーション格納部１５０を含んで構成される。
【００１４】
管理制御部１２０は、ユーザ認証部１２１、接続制御部１２２及びバージョン管理部１２３を含む。ユーザ認証部１２１は、所定のログイン画面を介してユーザ端末機３００に入力されたユーザ情報を用いて認証処理を遂行し、アプリケーションシステム１００が提供するサービスの利用権限をユーザ毎に管理する。図３（ａ）は記憶部１３０に記憶されるユーザ情報１３１のユーザ認証情報例であり、各ユーザを識別するユーザＩＤ、ユーザ名、利用無効フラグ等を含む。
【００１５】
記憶部１３０に記憶されるユーザ情報１３１は、アプリケーションシステム１００を利用するユーザによって又はシステム管理者によって予め登録された情報であり、ユーザ認証部１２１は、ユーザ端末機３００から送信されるユーザＩＤやパスワード等を用いて利用ユーザを識別し認証処理を遂行する。例えば、ユーザ情報（ユーザ認証情報）に登録されていないユーザや登録されているものの利用無効フラグがＯＮ（「１」）となっているユーザを、アプリケーションシステム１００が提供するサービスを利用できないユーザであると判断し、ユーザの利用権限を制御する。
【００１６】
接続制御部１２２は、バージョンの異なるアプリケーションへの接続制御を遂行する。本実施形態では、１つのアプリケーションが複数のバージョン毎に管理される。言い換えれば、バージョンの異なるアプリケーションが複数ある。図４に示すように、１つのアプリケーションのバージョンが、バージョンＩＤ、バージョン名（ｖ１．０．０等）、接続先ＵＲＬ（該当バージョンの各アプリケーションを利用する際に接続する接続先情報であり、本実施形態では、バージョン名を含む）、バージョン無効フラグを含むアプリケーション管理情報１３２（マルチバージョン管理情報）が記憶部１３０に記憶される。なお、バージョン無効フラグは、バージョンアップ等によって利用不可となったバージョンのアプリケーションを識別するために用いられる情報である。
【００１７】
接続制御部１２２は、ユーザ認証部１２１の認証処理を経て認証ＯＫであるユーザのユーザ別バージョン管理情報を識別する。図３（ｂ）は、ユーザ情報１３１のユーザ別バージョン管理情報の一例であり、ユーザＩＤと１つのアプリケーションの異なる各バージョンとが関連付けられている。接続制御部１２２は、認証ＯＫのユーザのユーザＩＤに基づいて、当該ユーザが利用できる（利用する）アプリケーションのバージョンをユーザ別バージョン管理情報を参照して識別することができる。
【００１８】
接続制御部１２２は、識別したユーザのバージョンＩＤに該当するバージョンの接続先ＵＲＬをアプリケーション管理情報１３２から抽出する。接続制御部１２２は、抽出した接続先ＵＲＬを用いたリダイレクト処理（ＨＴＴＰリダイレクト処理等）を遂行し、該当バージョンの接続先ＵＲＬに従ってユーザ端末機３００（ブラウザ）とアプリケーション制御部１４０とを接続させる。
【００１９】
バージョン管理部１２３は、アプリケーションのバージョンアップを制御する。本実施形態のバージョン管理部１２３は、アプリケーションがバージョンアップされる場合に、システム管理者から入力される新たなバージョンＩＤ、バージョン名、接続先ＵＲＬをアプリケーション管理情報１３２に格納（登録）する。また、システム管理者からの操作入力に基づいてバージョン無効フラグのＯＮ／ＯＦＦ（１／０）を更新する。新たなバージョンのアプリケーションプログラムは、アプリケーション格納部１５０に格納されるが、バージョン管理１２３がバージョン情報と関連付けて新たなアプリケーションプログラムをアプリケーション格納部１５０に格納するように構成することもできる。
【００２０】
また、バージョン管理部１２３は、ユーザ別バージョン管理情報を更新する。新たに登録されたユーザ（登録済みユーザを含む）とアプリケーションの各バージョンとの関連付けは、上述したようにユーザによって又はシステム管理者によって行われ、所定の登録画面や管理画面を介して入力されたユーザとバージョンの関連付け操作入力に基づいてユーザ別バージョン管理情報を更新（新規登録、変更、削除等）する。
【００２１】
アプリケーション制御部１４０及びアプリケーション格納部１５０は、接続するユーザ端末機３００にアプリケーションサービスを提供するアプリケーション提供機能を構成する。
【００２２】
アプリケーション制御部１４０は、リダイレクト処理（接続先ＵＲＬ）に基づいて接続されるユーザ端末機３００に提供するアプリケーション機能の制御を行う。アプリケーション格納部１５０は、バージョン別のアプリケーションプログラムを複数記憶する。つまり、バージョン数と同じ数の各バージョンに対応する複数のアプリケーションプログラムが格納される。また、各バージョンのアプリケーションで使用される各種情報（画面情報や設定値等）やユーザから入力された情報等を格納する。なお、アプリケーションで使用する各種情報、ユーザから入力された情報、アプリケーション機能により生成等された情報は、バージョン毎に独立して管理（記憶）することもでき、またはバージョン間で共有するように管理することができる。
【００２３】
図５は、本実施形態のアプリケーション格納部１５０に記憶される情報例を示す図であり、アプリケーション格納部１５０は、アプリケーションプログラム等を記憶する記憶手段である。図５（ａ）は、アプリケーションバージョン情報であり、図４に示したアプリケーション管理情報１３２と同期されている。図５（ａ）のアプリケーションバージョン情報は、複数のバージョンに対応する各アプリケーションプログラムの対応関係を示しており、例えば、１つのアプリケーションＡの５つのバージョンの各プログラムファイル名を含む。また、図５（ｂ）に示すように、１つのアプリケーションＡの各バージョンのプログラムファイルが、バージョンファイル名別に記憶されている。
【００２４】
アプリケーション制御部１４０は、ユーザ別に該当バージョンのアプリケーション機能を提供するサービス提供制御手段であり、ユーザ端末機３００からの操作入力に応答して各バージョンのアプリケーションプログラムをアプリケーション格納部１５０から取得し、所定のアプリケーション機能を遂行（実行）する。アプリケーション制御部１４０は、接続先ＵＲＬに従って接続されるユーザ端末機３００との接続処理において、接続先ＵＲＬに含まれるバージョン情報を識別し、接続するユーザに提供するアプリケーションのバージョンを識別してアプリケーション制御を遂行することができる。なお、本実施形態では、接続先ＵＲＬにバージョン情報が含まれているが、例えば、接続先ＵＲＬがバージョン情報を含まないように構成し、アプリケーション制御部１４０がユーザ別バージョン管理情報を参照し、接続するユーザに提供するアプリケーションのバージョンを識別してアプリケーション制御を遂行することもできる。
【００２５】
図６は、本実施形態のマルチバージョン制御の処理フローを示す図である。
【００２６】
アプリケーションシステム１００は、ユーザ端末機３００から接続要求があった場合（Ｓ１０１）、ユーザ認証処理を遂行する（ステップＳ１０２）。アプリケーションシステム１００は、接続要求（利用要求）に含まれる、所定のログイン画面を介して入力されたユーザＩＤ及びパスワードを受信し、受信したユーザＩＤ等を用いて記憶部１３０のユーザ情報（ユーザ認証情報）を参照し、認証処理を遂行する。
【００２７】
アプリケーションシステム１００は、ステップＳ１０２での認証処理の結果、認証ＯＫである場合にはステップＳ１０５に進み、認証ＮＧの場合にはステップＳ１０４に進み、エラー処理を遂行する（Ｓ１０３）。ステップＳ１０４のエラー処理は、例えば、ログインできない旨のメッセージをユーザ端末機３００に伝送し、処理を終了する。
【００２８】
ステップＳ１０５においてアプリケーションシステム１００は、ユーザ別バージョン管理情報を用いて、当該ユーザのユーザＩＤに関連付けられたアプリケーションのバージョンＩＤを取得（ユーザが利用するバージョンを識別）する。
【００２９】
アプリケーションシステム１００は、識別されたバージョンＩＤに基づいてアプリケーション管理情報１３２を参照し、バージョンＩＤに紐付く利用無効フラグのＯＮ／ＯＦＦを判別する。利用無効フラグがＯＮの場合には、当該バージョンでのアプリケーションが利用できない旨のメッセージをユーザ端末機３００に伝送して処理を終了する。
【００３０】
利用無効フラグのＯＮ／ＯＦＦ判別の結果、識別されたバージョンＩＤの利用無効フラグがＯＦＦの場合、アプリケーションシステム１００は、アプリケーション管理情報１３２から該当の接続先ＵＲＬを抽出する（Ｓ１０６）。
【００３１】
アプリケーションシステム１００は、抽出した接続先ＵＲＬを用いたＵＲＬリダイレクト処理を遂行し、接続先ＵＲＬに従う接続先とユーザ端末機３００との接続制御を遂行する（Ｓ１０７）。
【００３２】
アプリケーションシステム１００は、リダイレクト処理に基づいて接続するユーザ端末機３００に提供されるアプリケーション機能の制御を遂行する（Ｓ１０８）。ユーザ端末機３００から終了指示が入力された場合（Ｓ１０９）、アプリケーションシステム１００は、アプリケーション制御を終了し、アプリケーションシステム１００とユーザ端末機３００との通信接続を終了する処理（ログアウト処理）を遂行して処理を終了する（Ｓ１１０）。
【００３３】
本実施形態のマルチバージョン管理機能は、１つのアプリケーションをバージョン別に管理するとともに、バージョン別に利用者（ユーザ）を識別してアプリケーションサービスを提供するので、複数のユーザそれぞれが異なるバージョンのアプリケーションを利用することが可能となる。
【００３４】
特に、ユーザ別にバージョンが異なるアプリケーション、言い換えれば、各バージョンで提供されるアプリケーションの機能を、ユーザはバージョン別に利用できる。このため、最新バージョンのアプリケーションに旧バージョンの機能を反映させたり、バージョン間で整合性を維持するための開発コスト（費用及び時間）が低減でき、また、バージョン間でアプリケーションが提供する機能を分けて提供できるので、バージョンアップによって旧バージョンのアプリケーション機能や操作性が変化することによる不慣れさや不便さなどをユーザに与えることなく、ユーザ毎に異なるバージョンでのアプリケーションサービスを提供することが可能となる。
【００３５】
また、１つのアプリケーションがバージョンアップされる場合、ユーザが利用するアプリケーションがバージョンによって識別・管理しているので、バージョンアップ中にアプリケーションの利用を停止させずに、最新バージョンのアプリケーションを提供することが可能となる。
【００３６】
（第２実施形態）
図７、図８は、第２実施形態を示す図である。本実施形態は、上記第１実施形態に対してユーザが１つのアプリケーション中の任意のバージョンを指定してサービスを利用できる実施態様である。なお、以下の説明では、上記第１実施形態と同様の構成及び処理について同符号を付して説明を省略するとともに、相違する箇所を中心に述べる。
【００３７】
図７は、本実施形態のアプリケーションシステム１００の記憶部１３０に記憶されるユーザ別バージョン管理情報の一例である。本実施形態では、１ユーザに複数のバージョンＩＤが関連付けられ、各バージョンＩＤに対してバージョン利用無効フラグが設けられている。バージョン利用無効フラグは、図４のアプリケーション管理情報のバージョン無効フラグとは異なり、ユーザが利用可能なバージョンを管理するための情報である。
【００３８】
図７は、本実施形態のマルチバージョン制御の処理フローを示す図である。
【００３９】
アプリケーションシステム１００は、ユーザ端末機３００から接続要求があった場合（Ｓ１０１）、ユーザ認証処理を遂行する（ステップＳ１０２）。このとき、ユーザは、アプリケーションシステム１００から提供される所定のログイン画面からユーザＩＤ及びパスワードを入力するとともに、ログイン画面又は別途のバージョン指定画面から利用するアプリケーションのバージョンＩＤを入力又は選択する。
【００４０】
ユーザ端末機３００から受信する接続要求には、ユーザによってユーザＩＤ及びパスワードとともに、ユーザが指定したバージョンＩＤ（バージョン指定情報）を含む。アプリケーションシステム１００は、ステップＳ１０２での認証処理の結果、認証ＯＫである場合にはステップＳ１０５ａに進み、ユーザ別バージョン管理情報を参照してバージョン利用チェック処理を遂行する。
【００４１】
アプリケーションシステム１００は、ユーザＩＤに紐付くバージョンＩＤの中で指定されたバージョンＩＤが存在するか否かを判別し、存在する場合は、該当のバージョンＩＤのバージョン利用無効フラグのＯＮ／ＯＦＦを識別する。指定されたバージョンＩＤがユーザ別バージョン管理情報に登録されていない場合は、当該バージョンでのアプリケーションが利用できない旨のメッセージをユーザ端末機３００に伝送して処理を終了する。
【００４２】
アプリケーションシステム１００は、指定されたバージョンＩＤに該当するユーザ別バージョン管理情報のバージョンＩＤにおけるバージョン利用無効フラグがＯＮである場合には、当該他のバージョンでのアプリケーションが利用できる旨や指定したバージョンが利用できない旨のメッセージをユーザ端末機３００に伝送して処理を終了し、指定されたバージョンＩＤの利用無効フラグがＯＦＦの場合、アプリケーションシステム１００は、アプリケーション管理情報１３２から該当の接続先ＵＲＬを抽出する（Ｓ１０６ａ）。
【００４３】
本実施形態では、ユーザがバージョンを指定して任意のバージョンのアプリケーションを利用できるので、バージョン毎に異なるアプリケーション機能や操作性に応じてユーザが所望するアプリケーションサービスを提供することが可能となる。
【００４４】
（第３実施形態）
図９から図１３は、第３実施形態を示す図である。図９は本実施形態のネットワーク構成例を示す図である。本実施形態では、上記第１、２実施形態に対し、マルチバージョン管理機能とアプリケーション提供機能とを分離し、図９に示すように、マルチバージョン管理機能を遂行するマルチバージョン管理装置１００ａがアプリケーションを提供する複数のアプリケーションサーバ２００と接続される実施態様である。
【００４５】
また、本実施形態は、複数のアプリケーションサーバ２００の稼動状況を監視し、サーバ監視に基づいて、複数のアプリケーションサーバ２００の中から最適なアプリケーションサーバ２００を接続先として決定する。
【００４６】
本実施形態のアプリケーションサーバ２００は、図１に示したアプリケーション制御部１４０及びアプリケーション格納部１５０のアプリケーション提供機能を担うサーバ装置である。つまり、図１のアプリケーション制御部１４０及びアプリケーション格納部１５０を別途のサーバ装置で構成したものである。
【００４７】
また、本実施形態のアプリケーションサーバ２００それぞれは、図５に示したアプリケーション格納部１５０に記憶される同じアプリケーションプログラム情報及びアプリケーションプログラムを備えたサーバ装置である。
【００４８】
図１１は、本実施形態の記憶部１３０のアプリケーション管理情報１３２の一例を示す図である。本実施形態のアプリケーション管理情報１３２の接続先ＵＲＬは、複数のアプリケーションサーバ２００毎（サーバＩＤ別）に各バージョンに対応する複数の接続先ＵＲＬを含んでいる。
【００４９】
図１０に示すように、本実施形態のマルチバージョン管理装置１００ａは、複数の各アプリケーションサーバ２００に接続してサーバ稼動状況を監視し、サーバ稼動状況に関する所定のサーバ監視情報を収集するサーバ監視部１６０を含んで構成されるとともに、管理制御部１２０の接続制御部１２２がサーバ選択部１２２ａを備えている。また、記憶部１３０は、サーバ選択ルール情報１３３及びサーバ監視情報１３４を記憶する。
【００５０】
図１２（ａ）は、サーバ選択ルール情報１３３の一例を示す図であり、このサーバ選択ルール情報１３３は、サーバ監視部１６０によって収集されたサーバ監視情報に基づいて、ユーザ端末機３００が接続するアプリケーションサーバ２００を決定するためのサーバ選択ルールである。
【００５１】
具体的には、リクエストを順番に振り分ける、接続元IPアドレスのハッシュ値に基づいて振り分ける、接続数の最も少ないサーバに振り分ける、応答速度の最も早いサーバに振り分ける、などの複数の選択アルゴリズムを含み、これら複数の選択アルゴリズムの中からサービス提供側のシステム管理者等が１つの選択アリゴリズムを設定する。この設定に基づいてサーバ選択ルールとして設定された選択アルゴリズムの適用フラグがＯＮに設定され、サーバ選択部１２２ａは、サーバ選択処理において適用する選択アルゴリズム（サーバ選択ルール）を識別する。
【００５２】
図１２（ｂ）は、サーバ監視情報１３４の一例を示す図である。サーバ監視情報１３４は、各アプリケーションサーバ２００に割り当てられるサーバＩＤ別に、コネクション数、応答速度、ＣＵＰ使用率、ディスクＩ／Ｏ量、応答有無などを含む。サーバ監視部１６０は、収集したこれらサーバ稼動状況に関する情報を記憶部１３０に記憶する。
【００５３】
図１３は、本実施形態のサーバ選択制御の処理フローを示す図である。本実施形態のサーバ選択制御処理は、図６及び図８のステップ１０６に含まれて遂行される。なお、各フラグ参照による判別処理やエラー処理については、上記第１、第２実施形態と同様であるので説明を省略する。
【００５４】
ステップＳ１０５においてユーザ別バージョン管理情報を用いて、当該ユーザのユーザＩＤに関連付けられたアプリケーションのバージョンＩＤを取得すると、アプリケーションシステム１００は、サーバ選択制御処理を遂行する。
【００５５】
アプリケーションシステム１００（サーバ選択部１２２ａ）は、サーバ選択ルール情報１３３を参照し、適用フラグがＯＮ（「１」）である選択アルゴリズムを取得する（Ｓ１０６１）。
【００５６】
次にアプリケーションシステム１００は、サーバ監視情報１３４を参照し（Ｓ１０６２）、取得した選択アルゴリズムに基づいて、複数のアプリケーションサーバ２００の中から該当するサーバ稼動状況であるアプリケーションサーバ２００を決定する（Ｓ１０６３）。つまり、サーバ監視情報１３４を参照して選択アルゴリズムを満たすアプリケーションサーバ２００を、複数のアプリケーションサーバ２００の中から決定する。
【００５７】
アプリケーションシステム１００は、決定されたアプリケーションサーバ２００のサーバＩＤに基づいてアプリケーション管理情報１３２を参照し、ステップ１０５で識別されたバージョンＩＤ及びサーバＩＤを用いて接続先ＵＲＬを抽出する（Ｓ１６０４）。
【００５８】
本実施形態は、アプリケーションを提供する複数のアプリケーションサーバ２００に接続するマルチバージョン管理機能を遂行するマルチバージョン管理装置１００ａを実現し、マルチバージョン管理装置１００ａが、上記第１、第２実施形態と同様に１つのアプリケーションをバージョン別に管理し、バージョン別に利用者（ユーザ）を識別してアプリケーションサービスを提供するとともに、各アプリケーションサーバ２００の負荷状況や障害状況等に応じてマルチバージョン管理機能を遂行するので、別途のロードバランサ等を用いることなくユーザ端末機３００が接続する最適なアプリケーションサーバ２００を選択してアプリケーションサービスを実現することが可能となる。
【００５９】
以上、実施形態のマルチバージョン管理方法によれば、１つのアプリケーションをバージョン別に管理するとともに、バージョン別に利用者（ユーザ）を識別してアプリケーションサービスを提供するので、複数のユーザそれぞれが異なるバージョンのアプリケーションを利用することが可能となる。
【００６０】
なお、各実施形態のマルチバージョン管理方法を説明したが、第１実施形態、第２実施形態及び第３実施形態で説明した各機能は、任意に組み合わせ可能であり、またこれら各実施形態全ての機能を含むマルチバージョン管理方法を実現することも可能である。
【００６１】
また、第１実施形態のアプリケーションシステム１００において、第３実施形態と同様に、アプリケーション提供機能を担うアプリケーションサーバとマルチバージョン管理機能を担うマルチバージョン管理装置とで構成することも可能である。
【００６２】
また、上記実施形態において、アプリケーションサーバ２００を各バージョン毎に設けることも可能である。例えば、１つのアプリケーションの各バージョンに対応する複数のアプリケーションプログラムそれぞれを、複数の各アプリケーションサーバに割り当てるように構成し、１つのアプリケーションサーバが、１つのバージョンのアプリケーションプログラムを保持して当該バージョンのみのアプリケーションサービスを提供するようにすることも可能である、この場合、アプリケーション管理情報は、各バージョン別に各アプリケーションサーバが指定された接続先ＵＲＬを含むようになる。
【００６３】
また、上述の実施形態の各処理は、コンピュータで実行可能なプログラムとして実現することも可能であり、当該プログラムがインストールされたコンピュータは、実施形態に係る各処理を遂行する情報処理装置として動作することが可能である。例えば、不図示の補助記憶装置に当該プログラムが格納され、ＣＰＵ等の制御部が補助記憶装置に格納されたプログラムを主記憶装置に読み出し、主記憶装置に読み出された該プログラムを制御部が実行し、コンピュータに実施形態に係る各処理を動作させることができる。
【００６４】
また、上記プログラムは、コンピュータ読取可能な記録媒体に記録された状態で、コンピュータに適用することも可能であり、インターネット等のネットワークを通じてコンピュータにダウンロードすることも可能である。コンピュータ読取可能な記録媒体としては、ＣＤ−ＲＯＭ等の光ディスク、ＤＶＤ−ＲＯＭ等の相変化型光ディスク、ＭＯ（Magnet Optical）やＭＤ(Mini Disk)などの光磁気ディスク、フロッピー（登録商標）ディスクやリムーバブルハードディスクなどの磁気ディスク、コンパクトフラッシュ（登録商標）、スマートメディア、ＳＤメモリカード、メモリスティック等のメモリカードが挙げられる。また、特別に設計されて構成された集積回路（ＩＣチップ等）等のハードウェア装置も記録媒体として含まれる。
【００６５】
なお、本発明の実施形態を説明したが、当該実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。この新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【００６６】
１００    アプリケーションシステム
１００ａ  マルチバージョン管理装置
１１０    通信制御部
１２０    管理制御部
１２１    ユーザ認証部
１２２    接続制御部
１２２ａ  サーバ選択部
１２３    バージョン管理部
１３０    記憶部
１３１    ユーザ情報
１３２    アプリケーション管理情報
１３３    サーバ選択ルール情報
１３４    サーバ監視情報
１４０    アプリケーション制御部
１５０    アプリケーション格納部
１６０    サーバ監視部
２００    アプリケーションサーバ
３００    ユーザ端末機
Ｎ        ネットワーク
【図１】
2013077220.tif 000003
【図２】
2013077220.tif 000004
【図３】
2013077220.tif 000005
【図４】
2013077220.tif 000006
【図５】
2013077220.tif 000007
【図６】
2013077220.tif 000008
【図７】
2013077220.tif 000009
【図８】
2013077220.tif 000010
【図９】
2013077220.tif 000011
【図１０】
2013077220.tif 000012
【図１１】
2013077220.tif 000013
【図１２】
2013077220.tif 000014
【図１３】
2013077220.tif 000015