(57)【要約】【課題】実際のサービスの利用量に応じたサービスレベルを制御する。【解決手段】サーバ装置は、クラウドコンピューティングサービス機能を有し、サービスの無償利用の管理を行う装置であって、制御手段と利用量算出手段を備える。利用量算出手段は、ユーザによる第１の利用条件でのサービスの利用量を算出する。制御手段は、該利用量と設定値との関係に基づき、第１の利用条件でのサービスの利用に制限を付加する。例えば、利用量算出手段は、ユーザがソフトウェアを稼働させて無償利用した利用量を算出する。制御手段は、クラウドオペレーティングシステムの機能を有し、算出された利用量と設定値とを比較し、利用量が設定値を超えると、無償利用に利用制限をかける。【選択図】図１
2014167665.tif 000002
【特許請求の範囲】
【請求項１】
ユーザによる第１の利用条件でのサービスの利用量を算出する利用量算出手段と、
前記利用量と設定値との関係に基づき、前記第１の利用条件での前記サービスの利用に、制限を付加する制御手段と、
を有することを特徴とするサーバ装置。
【請求項２】
前記利用量算出手段は、前記ユーザによる前記サービスの利用時間、前記サービスの利用に際し使用した仮想マシンの数、および、前記使用した仮想マシンの性能指標値を用いて前記利用量を算出することを特徴とする請求項１記載のサーバ装置。
【請求項３】
前記制御手段による制限付加は、
前記制限付加がなされていない状態で前記サービスの利用に用いられた仮想マシンよりも性能指標値が劣る仮想マシンを前記サービスに利用させることを特徴とする請求項１記載のサーバ装置。
【請求項４】
前記制御手段は、前記利用量が前記設定値を超える場合は、前記サービスの前記第１の利用条件と異なる第２の利用条件への変更を前記ユーザに通知することを特徴とする請求項１記載のサーバ装置。
【請求項５】
前記制御手段は、自装置に接続して前記ソフトウェアを利用するユーザのＩＰアドレスを蓄積し、許容蓄積量を超えてアクセスされたＩＰアドレスを持つユーザに対しては、前記ソフトウェアの有償利用への契約を促す契約依頼を当該ユーザに通知することを特徴とする請求項１記載のサーバ装置。
【請求項６】
前記制御手段は、ユーザ認証時に、自装置に接続して前記ソフトウェアを利用するユーザのユーザＩＤを蓄積し、許容蓄積量を超えてアクセスされたユーザＩＤを持つユーザに対しては、前記ソフトウェアの有償利用への契約を促す契約依頼を当該ユーザに通知することを特徴とする請求項１記載のサーバ装置。
【請求項７】
サービス無償利用の管理を行うサービス無償利用管理方法において、
ユーザによる第１の利用条件でのサービスの利用量を算出し、
前記利用量と設定値との関係に基づき、前記第１の利用条件での前記サービスの利用に、制限を付加する、
ことを特徴とするサービス無償利用管理方法。
【請求項８】
サービスの無償利用の管理を行うサービス無償利用管理プログラムにおいて、
コンピュータに、
ユーザによる第１の利用条件でのサービスの利用量を算出し、
前記利用量と設定値との関係に基づき、前記第１の利用条件での前記サービスの利用に、制限を付加する、
処理を実行させるサービス無償利用管理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本技術は、サーバ装置、サービス無償利用管理方法およびサービス無償利用管理プログラムに関する。
【背景技術】
【０００２】
近年、ユーザが利用したいソフトウェアを、ネットワークを通じて提供するサービスが行われている。例えば、クラウドコンピューティングサービスでは、ＰａａＳ（Platform as a Service）と呼ばれるサービスがある。
【０００３】
ＰａａＳは、ユーザが開発したいソフトウェアを実行するためのミドルウェアなどの基盤機能（プラットフォーム）を提供するサービスである。
ソフトウェアをネットワーク経由で提供するサービスでは、通常、ソフトウェアを無償で利用できる期間が設定されており、その期間を過ぎると従量課金などによって対価が支払われる形態になっている。
【０００４】
このようなサービスの従来技術としては、例えば、ソフトウェアの所定期間毎の使用量の上限を設定し、使用量の上限を超える場合には、ソフトウェアの使用を許可する許可信号の生成・配信を停止する技術が提案されている。また、顧客の利用資格によって利用可能な情報サービスの内容を決定し、決定された内容の情報サービスを顧客に提供する技術が提案されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００２−０５５７２６号公報
【特許文献２】特開２００８−１０２９０９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
従来では、ソフトウェアを無償で利用できる期間が固定的に設定されており、ソフトウェアの利用を開始した日時から一定期間が無償利用期間と設定されている。この場合、初回起動時から無償利用期間が経過してしまうと、無償利用サービスの提供が終了してしまうので、ユーザは無償期間中にソフトウェアを十分に利用することができないという問題がある。
【０００７】
このように、従来では、ユーザがソフトウェアをどれだけ利用したか否かにかかわらず、初回起動時から無償利用期間が経過したか否かという判断で、単純に利用が制限されている。このため、ユーザの実質的な利用にもとづくフレキシブルな無償利用サービスが提供されておらず、ユーザにとって満足度の高いサービスとはいえない。
【０００８】
１つの側面では、本発明は、実際のサービスの利用料に応じたサービスレベルの変更を可能とすることを目的とする。
【課題を解決するための手段】
【０００９】
１つの案では、サービスの無償利用の管理を行うサーバ装置が提供される。サーバ装置は、ユーザによる第１の利用条件でのサービスの利用量を算出する利用量算出手段と、前記利用量と設定値との関係に基づき、前記第１の利用条件での前記サービスの利用に、制限を付加する制御手段とを有する。
【発明の効果】
【００１０】
１態様によれば、実際のサービスの利用量に応じたサービスレベルを制御することが可能になる。
【図面の簡単な説明】
【００１１】
【図１】サーバ装置の構成例を示す図である。
【図２】サーバクライアントシステムの構成例を示す図である。
【図３】サーバアプリケーションの配備を説明するための図である。
【図４】正式契約依頼処理を説明するための図である。
【図５】ユーザ情報格納テーブルに格納される情報を示す図である。
【図６】サーバログ格納手段に格納される情報を示す図である。
【図７】キャッシュメモリに格納される情報を示す図である。
【図８】定義情報格納手段に格納される情報を示す図である。
【図９】累積利用時間にもとづく検証処理の動作を示すフローチャートである。
【図１０】累積利用時間にもとづく検証処理の動作を示すフローチャートである。
【図１１】接続ユーザＩＰアドレス数と認証ユーザ数にもとづく検証処理の動作を示すフローチャートである。
【図１２】稼働実績の例を示す図である。
【図１３】サーバログ情報の例を示す図である。
【図１４】キャッシュメモリに格納される情報の例を示す図である。
【図１５】本実施の形態に用いるコンピュータのハードウェアの一構成例を示す図である。
【発明を実施するための形態】
【００１２】
以下、本発明の実施の形態を図面を参照して説明する。図１はサーバ装置の構成例を示す図である。サーバ装置１０は、クラウドコンピューティングサービスを提供して、ソフトウェアの無償利用の管理を行う装置であって、制御手段１１と利用量算出手段１２を備える。
【００１３】
利用量算出手段１２は、ユーザによる第１の利用条件でのサービスの利用量を算出する。制御手段１１は、該利用量と設定値との関係に基づき、第１の利用条件でのサービスの利用に制限を付加する。なお、以降では、サービスの具体例としてソフトウェアの提供サービスを対象にして説明する。
【００１４】
ここで例えば、利用量算出手段１２では、ユーザがソフトウェアを稼働させて無償利用した利用量を算出し格納管理する。制御手段１１は、クラウドオペレーティングシステムの機能を有している。制御手段１１では、算出された利用量と設定値とを比較し、利用量が設定値を超えると、無償利用に利用制限をかける。
【００１５】
このように、ユーザによるソフトウェアの利用量が設定値を超えると利用制限をかけることで、利用量に応じたソフトウェア無償利用サービスを提供することが可能になり、サービス性の向上を図ることが可能になる。
【００１６】
以降、動作について詳しく説明する。サーバ装置１０は、クラウドコンピューティングサービス上で、ユーザが開発するソフトウェアを実行するための基盤機能を提供するソフトウェアの無償利用サービスを提供する。
【００１７】
以下、ユーザが開発するソフトウェアをユーザアプリケーションと呼び、ユーザアプリケーションを実行するための基盤機能を提供するソフトウェアをサーバアプリケーションと呼ぶ。
【００１８】
ここで、クラウドオペレーティングシステム上でソフトウェアを実行するための開発環境には、主に試行環境と運用環境がある。例えば、クラウドオペレーティングシステムの１つであるWindows Azure（登録商標）のDeployment（開発環境）には、StagingおよびProductionと呼ばれるホステッドサービス配置領域がある。Stagingは試行環境、Productionは運用環境に該当する。
【００１９】
試行環境では、ソフトウェアのテストなどが行われ、試行環境でのソフトウェアのテスト完了後に、試行環境から運用環境へ移行して実際の運用が行われる。したがって、試行環境におけるソフトウェアの試行運用期間は無償期間とし、運用環境におけるソフトウェアの実運用期間は有償の期間とする。
【００２０】
従来では、無償期間は固定的に設定されていたが、本技術では、無償期間を固定的に設定せずに、試行環境上でユーザアプリケーションが実質的に稼働した累積利用時間にもとづいて無償期間を設定する。
【００２１】
この場合、累積利用時間の計算は、ＶＭ（Virtual Machine：仮想マシン）サイズと多重度とが係数として加味される。さらに、接続するユーザ数と、認証ユーザ数とを記録し、記録した値にもとづき、無償期間の試行環境から、有償となる運用環境への依頼を促す判断が行われる。
【００２２】
なお、ＶＭとは、サーバ内のＣＰＵ（Central Processing Unit）やメモリ等のリソースを仮想化することで実現されるコンピュータリソースである。また、ＶＭサイズとは、例えば、ＣＰＵの性能（ＣＰＵのクロック周波数等）やメモリ容量に該当するＶＭの性能指標値である。
【００２３】
コンピュータリソースを仮想化させることで、単一のサーバ上で、異なるスペックの複数のＶＭを同時に稼働させることができるので（例えば、ハイスペックのＶＭとロースペックのＶＭを混在させて稼働できる）、サーバの有効利用が可能となる。なお、累積利用時間の算出の具体例については図１２、図１３で後述する。
【００２４】
次にサーバ装置１０を含むサーバクライアントシステムの構成について説明する。図２はサーバクライアントシステムの構成例を示す図である。サーバクライアントシステム１は、ネットワーク３で互いに接続される、サーバ装置１０とクライアント装置２０とを備える。
【００２５】
サーバ装置１０は、クラウドコンピューティングサービス上で、ユーザアプリケーションを実行するための基盤機能を提供するサーバアプリケーションをクライアント装置２０へ提供する。クライアント装置２０は、ユーザ側で使用される端末である。
【００２６】
サーバ装置１０は、上述の制御手段１１と利用量算出手段１２とを備え、また、パッケージリポジトリ１２ａと接続している。利用量算出手段１２は、ユーザ情報格納テーブル１２−１、サーバログ格納手段１２−２、キャッシュメモリ１２−３および定義情報格納手段１２−４を含む。パッケージリポジトリ１２ａは、サーバアプリケーションパッケージ１２ａ−１を含む。
【００２７】
パッケージリポジトリ１２ａは、サーバ装置１０に外部から接続する構成として図示しているが、サーバ装置１０内に含める構成であってもよい。なお、ユーザ情報格納テーブル１２−１、サーバログ格納手段１２−２、キャッシュメモリ１２−３および定義情報格納手段１２−４については図５〜図８でそれぞれ後述する。
【００２８】
次にサーバアプリケーションの配備の流れについて説明する。図３はサーバアプリケーションの配備を説明するための図である。ソフトウェア無償利用サービス開始前では、サーバ装置１０には、サーバアプリケーションが配備されていない。このため、ユーザがソフトウェア無償利用サービスを享受するためには、まず、サーバアプリケーションをサーバ装置１０のクラウドオペレーティングシステム上に配備することになる。
【００２９】
サーバアプリケーションの配備は、例えば、無料で配布される専用プログラムを用いて実行することができる。また、サーバアプリケーションパッケージ１２ａ−１は、サーバ装置１０が備えるパッケージリポジトリ１２ａに格納されている。
【００３０】
したがって、ユーザは、専用プログラムを用いて、パッケージリポジトリ１２ａからサーバアプリケーションパッケージ１２ａ−１を取り出し、取り出したサーバアプリケーションパッケージ１２ａ−１をサーバ装置１０へアップロードする。このようにして、サーバアプリケーションをサーバ装置１０のクラウドオペレーティングシステムに配備することができる。
【００３１】
次に正式契約依頼処理の流れについて説明する。図４は正式契約依頼処理を説明するための図である。ソフトウェアの運用は、一般的に、試行環境でのソフトウェアのテスト完了後に、試行環境から運用環境へ移行して行われる。したがって、サーバ装置１０は、無償期間中であっても、ユーザアプリケーションが実行される開発環境が、試行環境から運用環境に移行したならば、その時点でユーザアプリケーションの運用開始と判断する。
【００３２】
サーバ装置１０（制御手段１１）は、ユーザアプリケーションの運用開始を認識した際は、ユーザに対して正式契約を促す通知をメールなどで自動的に発行する。メールを受信したユーザによって、所定期間内に専用Ｗｅｂサイトを通じて正式契約が行われると、正式契約された情報（フラグ情報）は、ユーザ情報格納テーブル１２−１に登録される。
【００３３】
この場合、専用Ｗｅｂサイト上で電子決済が行われ、決済完了後に、正式契約有りを示すフラグ情報が、ユーザ情報格納テーブル１２−１の正式契約フラグの欄に書き込まれる。
【００３４】
なお、運用を開始したにもかかわらず所定期間内に正式契約がなされない場合は、サーバ装置１０は、運用環境での運用は認めず、本サービスの停止、または試行環境における無償期間内の試行運用のみを可能とさせる。
【００３５】
さらに、サーバ装置１０は、試行環境においてユーザアプリケーションの入れ替えが一定期間行われないような場合にも、運用が開始されたものとみなし、ユーザに対して正式契約を促す。この場合も、所定期間内に正式契約がなされない場合には、運用環境での運用は認めず、本サービスの停止、または試行環境における無償期間内の試行運用のみを可能とさせる。
【００３６】
さらにまた、サーバ装置１０は、試用環境において、ユーザアプリケーションの利用量が設定値の一定割合を超える場合、または、接続ユーザ数や認証ユーザ数が許容値を超えるような場合にも、上記のような正式契約依頼処理を行うが、これらについては図９以降で後述する。
【００３７】
次にユーザ情報格納テーブル１２−１について説明する。図５はユーザ情報格納テーブルに格納される情報を示す図である。ユーザ情報格納テーブル１２−１は、サーバ装置１０が提供する無償利用サービスを享受しているユーザ毎の各種ユーザ情報を格納する。
【００３８】
格納されるユーザ情報としては、例えば、サブスクリプション（subscription：利用契約）ＩＤ、メールアドレス、正式契約フラグ、警告フラグ、上限到達フラグ、開始日時（ｎ）、ＶＭサイズ（ｎ）、多重度（ｎ）、終了日時（ｎ）、累積利用時間、正式契約依頼日、正式契約依頼経過日数、接続ユーザＩＰアドレスおよび認証ユーザがある。
【００３９】
サブスクリプションＩＤは、サーバ装置１０のクラウドオペレーティングシステムが、サブスクリプションを行ったユーザを識別するために割り当てるＩＤである。
メールアドレスは、ユーザのメールアドレスである。正式契約フラグは、正式契約の有無を示すフラグ情報であって、フラグ状態がオンなら正式契約有り、フラグ状態がオフなら正式契約無しである。
【００４０】
警告フラグは、累積利用時間があらかじめ定めた上限値の一定割合（例えば、上限値の８０％）を超えたか否かを示すフラグ情報である。上限値の一定割合を超えた場合は、警告要としてフラグ状態がオンとなる。それ以外の場合、フラグ状態はオフである。
【００４１】
上限到達フラグは、累積利用時間、接続ユーザＩＰアドレス数、または認証ユーザ数の少なくとも１つが上限値に到達したか否かを示すフラグ情報である。上限値に到達した場合は、フラグ状態がオンとなる。上限値未到達ならフラグ状態はオフである。
【００４２】
開始日時（ｎ）は、クラウドオペレーティングシステムにサーバアプリケーションを配備した後に、ユーザアプリケーションの利用が開始された日時である。ＶＭサイズ（ｎ）は、サーバアプリケーションをクラウドオペレーティングシステムに配備した際に立ち上げられたＶＭのサイズ（性能指標）である。
【００４３】
ここで、ＶＭサイズは複数あり、例えば、ＶＭサイズが４つあるとする。このとき、ＶＭサイズ＝４は、４つのＶＭの中で性能が最も高いＶＭを表し、ＶＭサイズ＝３は、４つのＶＭの中で２番目に性能が高いＶＭを表すとする。また、ＶＭサイズ＝２は、４つのＶＭの中で性能が３番目に高いＶＭを表し、ＶＭサイズ＝１は、４つのＶＭの中で最も性能が劣るＶＭを表すとする。このような複数のＶＭサイズの中から選択されることで、性能が異なるＶＭの使い分けが可能となる。
【００４４】
多重度（ｎ）は、サーバアプリケーションをクラウドオペレーティングシステムに配備した際に立ち上げられたＶＭの数を示す。ＶＭは同時に複数立ち上げることができるので、立ち上げたＶＭの数が多重度となる。終了日時（ｎ）は、ユーザアプリケーションの利用を停止した日時である。
【００４５】
ここで、上記のパラメータｎは、開発環境の識別子を示すものであって、開始日時、ＶＭサイズ、多重度および終了日時の中で同じ値のものは、同一の開発環境に属する情報となる。
【００４６】
例えば、１月７日の１０：００に、配備したサーバアプリケーション上でユーザアプリケーションの利用が開始され、このときＶＭに対して、ＶＭサイズ係数＝２、多重度＝３が選択され、１月９日の１７：００に利用を停止したとする。
【００４７】
このときの開発環境の識別子ｎを１とすれば、開始日時（１）＝１月７日の１０：００、ＶＭサイズ（１）＝２、多重度（１）＝３、終了日時（１）＝１月９日の１７：００と表記される。このようにパラメータが同じ値の情報は、同一開発環境であることが示され、利用履歴が明確に識別できる。
【００４８】
累積利用時間は、サーバアプリケーションをクラウドオペレーティングシステムに配備して、サーバアプリケーション上でユーザアプリケーションを利用した時間を累積した時間である。正式契約依頼日は、正式契約依頼が記されたメールをユーザ宛に発信した日付である。
【００４９】
正式契約依頼経過日数は、正式契約依頼メールが発信された日から経過した日数である。接続ユーザＩＰアドレスは、サーバ装置１０のクラウドオペレーティングシステムにアクセスし接続したユーザのＩＰアドレスであり、当該ＩＰアドレスは、最大許容数まで格納される。認証ユーザは、サーバ装置１０のクラウドオペレーティングシステムにアクセスし認証されたユーザのＩＤであり、当該ユーザＩＤは、最大許容数まで格納される。
【００５０】
次にサーバログ格納手段１２−２について説明する。図６はサーバログ格納手段に格納される情報を示す図である。サーバログ格納手段１２−２は、ユーザがクラウドオペレーティングシステムを利用する度に作成されるサーバログ（履歴）情報を格納する。
【００５１】
サーバログ情報は、利用開始時または終了時に要する情報であって、例えば、開始日時、終了日時、ＶＭサイズおよび多重度が含まれる。各情報の内容については上述したので説明は省略する。なお、サーバログ情報は、利用が終了したときに、ユーザ情報格納テーブル１２−１に反映される。
【００５２】
次にキャッシュメモリ１２−３について説明する。図７はキャッシュメモリに格納される情報を示す図である。キャッシュメモリ１２−３に格納される情報は、サーバ装置１０のクラウドオペレーティングシステムにアクセスがある度に更新される情報であって、例えば、接続ユーザＩＰアドレスと認証ユーザの情報が含まれる。これらの情報は更新時にユーザ情報格納テーブル１２−１に反映される。各情報の内容については上述したので説明は省略する。
【００５３】
次に定義情報格納手段１２−４について説明する。図８は定義情報格納手段に格納される情報を示す図である。定義情報格納手段１２−４は、あらかじめ定義しておくべき定義情報を格納する。定義情報としては例えば、累積利用時間上限値、接続ユーザＩＰアドレス数上限値および認証ユーザ数上限値を格納する。
【００５４】
累積利用時間上限値は、最大利用可能な累積利用時間の上限の定義値である。接続ユーザＩＰアドレス数上限値は、最大利用可能な接続ユーザＩＰアドレス数の上限の定義値である。認証ユーザ数上限値は、最大利用可能な認証ユーザ数の上限の定義値である。
【００５５】
次に累積利用時間、接続ユーザＩＰアドレス数、または認証ユーザ数にもとづく検証処理について説明する。試用環境であり、かつ正式契約フラグがオフの場合、ソフトウェア無償利用サービスについて、利用制限すべきか否かの検証処理が行われる。
【００５６】
（累積利用時間にもとづく検証処理）
サーバ装置１０は、サーバアプリケーションが配備された後に、ユーザアプリケーションが起動された開始日時、使用されるＶＭのサイズ、ＶＭの多重度、およびユーザアプリケーションの起動が停止された終了日時をユーザ情報格納テーブル１２−１に書き込む。サーバ装置１０は、これらから累積利用時間を計算し、ユーザ情報格納テーブル１２−１の累積利用時間の欄に計算結果を書き込む。
【００５７】
累積利用時間が累積利用時間上限値の一定割合を超える場合は、使用可能なＶＭのサイズの低減を図り、かつ正式契約依頼メールを送信する。また、累積利用時間が累積利用時間上限値を超える場合や、正式契約依頼メールの送信後に所定期間内に正式契約がなされない場合は、サーバアプリケーションの無償利用サービスを停止する。
【００５８】
このように、累積利用時間が累積利用時間上限値の一定割合を超える場合は、使用可能なＶＭのサイズの低減化をして利用制限を図る。これにより、ユーザの試用量に応じたサービスを提供することができ、適切なタイミングで利用を制限することができる。
【００５９】
また、従来のように、固定的な無償期間を過ぎると単純にサービスが停止するものではなく、試用量に応じて利用制限がかかるので、ユーザも十分に試用することが可能になり、ユーザにとって満足度の高いサービスを提供することが可能になる。
【００６０】
（接続ユーザＩＰアドレス数にもとづく検証処理）
サーバ装置１０は、ユーザからクラウドオペレーティングシステムへの接続時に、（リファラが付加された）アドレスのユーザのＩＰアドレスをキャッシュメモリ１２−３に格納する。そして、キャッシュメモリ１２−３に格納したＩＰアドレスを、ユーザ情報格納テーブル１２−１に追加する（同じアドレスは追加しない）。
【００６１】
ユーザ情報格納テーブル１２−１内の接続ユーザＩＰアドレス数が最大許容数を超えた場合は、最大許容数を超えてアクセスされたＩＰアドレスを持つユーザに対し、正式契約依頼メールを送信する。正式契約依頼メールの送信後に所定期間内に正式契約がなされない場合は、サーバアプリケーションの無償利用サービスを停止する。
【００６２】
（認証ユーザの人数にもとづく検証処理）
サーバ装置１０は、クラウドオペレーティングシステムに接続してきたユーザの認証時に、（リファラが付加された）アドレスのユーザＩＤをキャッシュメモリ１２−３に格納し、キャッシュメモリ１２−３に格納されたユーザＩＤをユーザ情報格納テーブル１２−１へ追加する（同じユーザＩＤは追加しない）。
【００６３】
ユーザ情報格納テーブル１２−１内の認証ユーザ数が最大許容数を超えた場合は、最大許容数を超えてアクセスされたユーザＩＤを持つユーザに対しては、正式契約依頼メールを送信する。正式契約依頼メールの送信後に所定期間内に正式契約がなされない場合は、サーバアプリケーションの無償利用サービスを停止する。
【００６４】
ここで、クラウドオペレーティングシステムは、試用環境と運用環境の違いをＵＲＬ（Uniform Resource Locator）で認識している。このため、ユーザがユーザアプリケーション開発後も試用環境のまま運用を行う可能性がある。このため、上記のように、リファラが付加されたアドレスを取得するようにして、検証処理に使用している。また、正式契約後に運用環境から試用環境へ移行するような場合は、正式契約を一旦解除し、試用環境に戻って試行利用を可能とする。
【００６５】
次にフローチャートを用いて説明する。図９、図１０は累積利用時間にもとづく検証処理の動作を示すフローチャートである。
〔Ｓ１〕制御手段１１は、ユーザにサブスクリプションＩＤを割り当てる。
【００６６】
〔Ｓ２〕制御手段１１は、サブスクリプションＩＤをキーにして、ユーザ情報格納テーブル１２−１から正式契約フラグを取得する。
〔Ｓ３〕制御手段１１は、正式契約フラグのフラグ状態を判断する。フラグ状態がオンならば正式契約済みなので検証処理を終了し、フラグ状態がオフならば正式契約がまだされていないのでステップＳ４へ行く。
【００６７】
〔Ｓ４〕制御手段１１は、現在の開発環境のタイプが運用環境か否かを判断する。運用環境ならば終了し、運用環境でなければ（試用環境ならば）ステップＳ５へ行く。
〔Ｓ５〕制御手段１１は、現在の開発環境が試用環境であり、かつ正式契約フラグがオフであることを認識すると、累積利用時間を算出する。
【００６８】
〔Ｓ６〕制御手段１１は、定義情報格納手段１２−４から累積利用時間上限値を取得する。
〔Ｓ７〕制御手段１１は、算出した累積利用時間が累積利用時間上限値の例えば、８０％を超えるか否かを判断する。超える場合はステップＳ８へ行き、超えない場合は検証処理を終了し、無償利用サービスを継続させる。
【００６９】
〔Ｓ８〕制御手段１１は、算出した累積利用時間が累積利用時間上限値を超えるか否かを判断する。超える場合はステップＳ９へ行き、超えない場合はステップＳ１１へ行く。
〔Ｓ９〕制御手段１１は、上限到達フラグをオンにして、ユーザ情報格納テーブル１２−１に設定する。
【００７０】
〔Ｓ１０〕制御手段１１は、無償利用サービスを停止する。
〔Ｓ１１〕制御手段１１は、警告フラグをオンにして、ユーザ情報格納テーブル１２−１に設定する。
【００７１】
〔Ｓ１２〕制御手段１１は、ＶＭサイズの低減化を図り、試用環境で現在使われているＶＭサイズよりも小さなＶＭサイズのＶＭ（性能指標が小さなＶＭ）の使用のみを許可する。
【００７２】
〔Ｓ１３〕制御手段１１は、正式契約依頼メールを発行する。
このように、ユーザ利用量を表す累積利用時間が、累積利用時間上限値の一定割合を超えた場合は、ＶＭサイズを低減化して利用制限を行い、累積利用時間上限値を超えた場合は無償利用サービスを停止する。これにより、ユーザ利用量に対応したフレキシブルな無償利用サービスを提供することが可能になる。
【００７３】
図１１は接続ユーザＩＰアドレス数と認証ユーザ数にもとづく検証処理の動作を示すフローチャートである。
〔Ｓ２１〕制御手段１１は、キャッシュメモリ１２−３から接続ユーザＩＰアドレスを取得する。
【００７４】
〔Ｓ２２〕制御手段１１は、ユーザ情報格納テーブル１２−１の接続ユーザＩＰアドレスの欄に、キャッシュメモリ１２−３から取得した接続ユーザＩＰアドレスが書き込み可能か否かを判断する。書き込み可能な場合は、ステップＳ２３へ行き、すでに最大許容数に達しており書き込み不可の場合はステップＳ２９へ行く。
【００７５】
〔Ｓ２３〕制御手段１１は、ユーザ情報格納テーブル１２−１の接続ユーザＩＰアドレスの欄に、キャッシュメモリから取得した接続ユーザＩＰアドレスを書き込む。
〔Ｓ２４〕制御手段１１は、キャッシュメモリ１２−３内の接続ユーザＩＰアドレスをすべてユーザ情報格納テーブル１２−１に書き込んだか否かを判断する。書き込んでない場合はステップＳ２２へ戻り、書き込んだ場合はステップＳ２５へ行く。
【００７６】
〔Ｓ２５〕制御手段１１は、キャッシュメモリ１２−３から認証ユーザを取得する。
〔Ｓ２６〕制御手段１１は、ユーザ情報格納テーブル１２−１の認証ユーザの欄に、キャッシュメモリ１２−３から取得した認証ユーザが書き込み可能か否かを判断する。書き込み可能な場合は、ステップＳ２７へ行き、すでに最大許容数に達しており書き込み不可の場合はステップＳ２９へ行く。
【００７７】
〔Ｓ２７〕制御手段１１は、ユーザ情報格納テーブル１２−１の認証ユーザの欄に、キャッシュメモリ１２−３から取得した認証ユーザを書き込む。
〔Ｓ２８〕制御手段１１は、キャッシュメモリ１２−３内の認証ユーザをすべてユーザ情報格納テーブル１２−１に書き込んだか否かを判断する。書き込んでない場合はステップＳ２６へ戻り、書き込んだ場合は終了する。
【００７８】
〔Ｓ２９〕制御手段１１は、最大許容数を超えてアクセスされたＩＰアドレスを持つユーザ、または最大許容数を超えてアクセスされたユーザＩＤを持つユーザに対して、正式契約依頼メールを送信する。
【００７９】
このように、接続ユーザＩＰアドレス数と認証ユーザ数にもとづく検証処理を行うことにより、無償利用を可能とするユーザ数を適切に設定することが可能になる。
次に具体的な例を挙げて説明する。図１２は稼働実績の例を示す図である。サーバ装置１０にサーバアプリケーションが配備された後にユーザアプリケーションが稼働された実績を示している。
【００８０】
２０１２年８月におけるユーザアプリケーションの稼働時間帯は、８月２日の１３：００が開始日時、８月２２日の１３：００が終了日時となっている。また、２０１２年９月におけるユーザアプリケーションの稼働時間帯は、９月１日の１３：００が開始日時、９月１１日の２３：００が終了日時となっている。
【００８１】
さらに、２０１２年８月における接続ユーザとしては、８月５日にＩＰアドレスａ１のユーザｕ１が接続し、８月１５日にＩＰアドレスａ２のユーザｕ２が接続している。さらにまた、２０１２年９月における接続ユーザとしては、９月１日にＩＰアドレスａ１、ａ２のユーザｕ１、ｕ３が接続している。図１３はサーバログ情報の例を示す図である。サーバログ格納手段１２−２に格納される、開発環境毎の開始日時、終了日時、ＶＭサイズおよび多重度の一例を示している。
【００８２】
ここで、単一の開発環境における開始日時から終了日時までのユーザアプリケーションの累積利用時間を以下の式で定義する。
（累積利用時間）＝（（終了日時）−（開始日時））×ＶＭサイズ×多重度
このように、実稼働時間だけでなく、実稼働時間に対してＶＭサイズと多重度で重み付けを行って累積利用時間を求めることで、使用された資源量に応じて、累積利用量を数値化することができる。
【００８３】
このため、例えば、本サービスを利用するユーザが、高スペックのＶＭを使うハードユーザか否かを判断することができ、ハードユーザであれば累積利用時間が上限値に到達するスピードが速くなるので、その分、正式契約を早めに依頼することが可能になる。
【００８４】
ここで、開発環境＃１では、図１２、図１３にもとづき、開始日時から終了日時まで２４時間×２０日あり、ＶＭサイズ＝２、多重度＝２であるから、開発環境＃１の累積利用時間は、（開発環境＃１の累積利用時間）＝（２４×２０）×２×２＝１９２０となる。
【００８５】
また、開発環境＃２では、図１２、図１３にもとづき、開始日時から終了日時まで２４時間×２０日と１０時間あり、ＶＭサイズ＝１、多重度＝２であるから、開発環境＃２の利用時間は、（開発環境＃２の累積利用時間）＝（２４×１０＋１０）×１×２＝５００となる。したがって、開発環境＃１、＃２の合計値は、２４２０時間（＝１９２０＋５００）となり、この値がユーザ情報格納テーブル１２−１の累積利用時間に格納される。
【００８６】
上記の計算では、８／２１の１３：００から９／１の１３：００までは、ユーザアプリケーションは稼働していないので、この期間は累積利用時間に含めないようにしている（従来手法ではこの期間もカウントされてしまう）。
【００８７】
また、開始日時から終了日時までの実稼働時間に対して、ＶＭサイズおよび多重度といったリソースの利用量で重み付けを行って、ユーザアプリケーションの累積利用時間を算出する。そして、サーバ装置１０は、上記のように算出した累積利用時間と、あらかじめ設定した累積利用時間上限値とを比較する。例えば、期間を３０日、ＶＭサイズ＝多重度＝２として、累積利用時間上限値２８８０時間（＝３０日×２×２）などとする。
【００８８】
比較の結果、算出した累積利用時間が累積利用時間上限値を超えていない場合は無償期間を継続できる。ただし、算出した累積利用時間が累積利用時間上限値を超えていなくても、累積利用時間が累積利用時間上限値の一定割合、例えば、累積利用時間上限値の８０％を超えている場合は、使用可能なＶＭのサイズを低減化し、かつ正式契約依頼のメールの発行を行うものとする。
【００８９】
図１４はキャッシュメモリに格納される情報の例を示す図である。キャッシュメモリ１２−２に格納される、ＩＰアドレス、接続日時およびユーザＩＤの例を示している。サーバ装置１０は、異なるＩＰアドレス、ユーザＩＤをカウントし、ユーザ情報格納テーブル１２−１に格納する。この例では、異なるＩＰアドレス数＝２、異なる認証ユーザ数＝３である。
【００９０】
そして、サーバ装置１０は、キャッシュメモリ１２−２に格納されているＩＰアドレス、認証ユーザの少なくも一方の数が上限値を超えている場合は、最大許容数を超えてアクセスされたＩＰアドレスを持つユーザ、または最大許容数を超えてアクセスされたユーザＩＤを持つユーザに対して、正式契約依頼メールを発行することになる。
【００９１】
なお、上記に示した処理機能は、コンピュータによって実現することができる。図１５は本実施の形態に用いるコンピュータのハードウェアの一構成例を示す図である。サーバ装置１０内のコンピュータ１００は、ＣＰＵ１０１によって装置全体が制御されている。ＣＰＵ１０１には、バス１０８を介してＲＡＭ（Random Access Memory）１０２と複数の周辺機器が接続されている。
【００９２】
ＲＡＭ１０２は、コンピュータ１００の主記憶装置として使用される。ＲＡＭ１０２には、ＣＰＵ１０１に実行させるＯＳ（Operating System）のプログラムやアプリケーションプログラムの少なくとも一部が一時的に格納される。また、ＲＡＭ１０２には、ＣＰＵ１０１による処理に必要な各種データが格納される。
【００９３】
バス１０８に接続されている周辺機器としては、ＨＤＤ（Hard Disk Drive）１０３、グラフィック処理装置１０４、入力インタフェース１０５、光学ドライブ装置１０６、および通信インタフェース１０７がある。
【００９４】
ＨＤＤ１０３は、内蔵したディスクに対して、磁気的にデータの書き込みおよび読み出しを行う。ＨＤＤ１０３は、コンピュータ１００の二次記憶装置として使用される。ＨＤＤ１０３には、ＯＳのプログラム、アプリケーションプログラム、および各種データが格納される。なお、二次記憶装置としては、フラッシュメモリなどの半導体記憶装置を使用することもできる。
【００９５】
グラフィック処理装置１０４には、モニタ１０４ａが接続されている。グラフィック処理装置１０４は、ＣＰＵ１０１からの命令に従って、画像をモニタ１０４ａの画面に表示させる。モニタ１０４ａとしては、ＣＲＴ（Cathode Ray Tube）を用いた表示装置や液晶表示装置などがある。
【００９６】
入力インタフェース１０５には、キーボード１０５ａとマウス１０５ｂとが接続されている。入力インタフェース１０５は、キーボード１０５ａやマウス１０５ｂから送られてくる信号をＣＰＵ１０１に送信する。なお、マウス１０５ｂは、ポインティングデバイスの一例であり、他のポインティングデバイスを使用することもできる。他のポインティングデバイスとしては、タッチパネル、タブレット、タッチパッド、トラックボールなどがある。
【００９７】
光学ドライブ装置１０６は、レーザ光などを利用して、光ディスク１０６ａに記録されたデータの読み取りを行う。光ディスク１０６ａは、光の反射によって読み取り可能なようにデータが記録された可搬型の記録媒体である。光ディスク１０６ａには、ＤＶＤ（Digital Versatile Disc）、ＤＶＤ−ＲＡＭ、ＣＤ−ＲＯＭ（Compact Disc Read Only Memory）、ＣＤ−Ｒ（Recordable）／ＲＷ（Rewritable）などがある。
【００９８】
通信インタフェース１０７は、ネットワーク１１０に接続されている。通信インタフェース１０７は、ネットワーク１１０を介して、他のコンピュータまたは通信機器との間でデータの送受信を行う。
【００９９】
以上のようなハードウェア構成によって、本実施の形態の処理機能を実現することができる。また、コンピュータで本実施の形態の処理機能を実現する場合、サーバ装置１０が有する機能の処理内容を記述したプログラムが提供される。
【０１００】
そのプログラムをコンピュータで実行することにより、上記処理機能がコンピュータ上で実現される。処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、磁気記憶装置、光ディスク、光磁気記録媒体、半導体メモリなどがある。磁気記憶装置には、ハードディスク装置（ＨＤＤ）、フレキシブルディスク（ＦＤ）、磁気テープなどがある。光ディスクには、ＤＶＤ、ＤＶＤ−ＲＡＭ、ＣＤ−ＲＯＭ／ＲＷなどがある。光磁気記録媒体には、ＭＯ（Magneto Optical disk）などがある。なおプログラムを記録する記録媒体には、一時的な伝搬信号自体は含まれない。
【０１０１】
プログラムを流通させる場合には、例えば、そのプログラムが記録されたＤＶＤ、ＣＤ−ＲＯＭなどの可搬型記録媒体が販売される。また、プログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することもできる。
【０１０２】
プログラムを実行するコンピュータは、例えば、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、自己の記憶装置に格納する。そして、コンピュータは、自己の記憶装置からプログラムを読み取り、プログラムに従った処理を実行する。なお、コンピュータは、可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することもできる。また、コンピュータは、サーバコンピュータからプログラムが転送されるごとに、逐次、受け取ったプログラムに従った処理を実行することもできる。
【０１０３】
また、上記の処理機能の少なくとも一部を、ＤＳＰ（Digital Signal Processor）、ＡＳＩＣ（Application Specific Integrated Circuit）、ＰＬＤ（Programmable Logic Device）などの電子回路で実現することもできる。
【０１０４】
以上説明したように、本技術によれば、実質的にソフトウェアを利用した時間、ＶＭサイズ、多重度、またはアクセスユーザ数などの利用実績にもとづいて、ソフトウェア無償利用サービスを提供する。
【０１０５】
これにより、ユーザは、サーバを利用した時間だけ無償期間が消費されていくため、有効にユーザアプリの開発を行うことができ、ソフトウェア無償利用サービスのサービス性の向上を図ることが可能になる。
【０１０６】
なお、上記の実施の形態では、クラウドコンピューティングサービスのＰａａＳを例にして、ユーザが開発したいユーザアプリケーションを実行する基盤機能であるサーバアプリケーションを無償利用でサービスする際に、本技術を適用した場合について説明した。
【０１０７】
これに対し、クラウドコンピューティングサービスのＳａａＳ（Software as a Service）に対して、本技術を適用することもできる。すなわち、ユーザが開発したいソフトウェアに対して、その開発に要する個々のアプリケーションを選択させて、それらを無償利用でサービスする際にも本技術を同様にして適用することが可能である。
【０１０８】
以上、実施の形態を例示したが、実施の形態で示した各部の構成は同様の機能を有する他のものに置換することができる。また、他の任意の構成物や工程が付加されてもよい。
【符号の説明】
【０１０９】
１０  サーバ装置
１１  制御手段
１２  利用量算出手段
【図１】
2014167665.tif 000003
【図２】
2014167665.tif 000004
【図３】
2014167665.tif 000005
【図４】
2014167665.tif 000006
【図５】
2014167665.tif 000007
【図６】
2014167665.tif 000008
【図７】
2014167665.tif 000009
【図８】
2014167665.tif 000010
【図９】
2014167665.tif 000011
【図１０】
2014167665.tif 000012
【図１１】
2014167665.tif 000013
【図１２】
2014167665.tif 000014
【図１３】
2014167665.tif 000015
【図１４】
2014167665.tif 000016
【図１５】
2014167665.tif 000017