以下、図面に基づいて本発明の実施の形態を説明する。図1は、本発明の実施の形態における情報処理システムの構成例を示す図である。図1に示される情報処理システム1において、サービス提供環境E2及びユーザ環境E1等は、インターネット等の広域的なネットワークを介して通信可能とされている。
サービス提供環境E2は、ネットワークを介してクラウドサービスを提供する組織におけるシステム環境である。なお、本実施の形態では、クラウドサービスを具体例に採用して説明するが、ASP(Application Service Provider)によって提供されるサービスやWebサービス等、ネットワークを介して提供されるサービスに関して、本実施の形態が適用されてもよい。
サービス提供環境E2は、サービス提供装置20及び契約情報管理装置40等を含む。サービス提供装置20と契約情報管理装置40とは、LAN(Local Area Network)又はWAN(Wide Area Network)等のネットワークを介して通信可能に接続されている。
サービス提供装置20は、ネットワークを介して所定のサービスを提供する。サービス提供装置20が提供するサービスの一形態として、ユーザ環境E1における機器10と、サービス提供装置20におけるアプリケーションとを連携させることにより実現されるサービスが有る。以下、斯かる形態のサービスを、「機器連携サービス」という。機器連携サービスの一例として、ユーザ環境E1の機器10においてスキャンされた画像データを、サービス提供装置20におけるアプリケーションが、予め設定された保存先に保存するサービス(以下、「スキャンToストレージサービス」という。)が挙げられる。なお、機器連携サービスは、サービス提供環境E2以外のサービス提供者によってネットワークを介して提供される、オンラインストレージやその他のクラウドサービス等と連携してもよい。
サービス提供装置20は、また、機器連携サービスについて、ライセンスの管理機能を有する。機器連携サービスのライセンスとは、機器連携サービスの利用権限をいう。すなわち、機器連携サービスを利用するためには、ユーザは、予め、機器連携サービスに対するライセンスの購入を行う必要がある。なお、ライセンス管理機能は、サービス提供装置20とは別の一以上のコンピュータを用いて実現されてもよい。
契約情報管理装置40は、ユーザと、機器連携サービスのライセンスの販売者との間において締結される、機器連携サービスの利用契約に関する情報(以下、「契約情報」という。)を管理する。機器連携サービスの利用契約は、例えば、ライセンス売買が行われる際に締結される。詳細については後述されるが、契約情報には、ライセンスの内容を示す情報等が含まれる。
なお、ライセンス装置20と契約情報管理装置40とは、同じコンピュータを用いて実現されてもよい。
ユーザ環境E1は、機器10のユーザ企業等の組織におけるシステム環境である。ユーザ環境E1において、一台以上の機器10と管理者端末30とはLAN(Local Area Network)等のネットワークを介して接続されている。
機器10は、機器連携サービスに対して連携候補となる機器又は装置である。管理者端末30は、ユーザ環境E1における機器10の管理者が使用する端末である。管理者端末30の一例として、PC(Personal Computer)、PDA(Personal Digital Assistance)、タブレット型端末、スマートフォン、又は携帯電話等が挙げられる。
図2は、本発明の実施の形態におけるサービス提供装置のハードウェア構成例を示す図である。図2のサービス提供装置20は、それぞれバスBで相互に接続されているドライブ装置200と、補助記憶装置202と、メモリ装置203と、CPU204と、インタフェース装置205とを有する。
サービス提供装置20での処理を実現するプログラムは、CD−ROM等の記録媒体201によって提供される。プログラムを記憶した記録媒体201がドライブ装置200にセットされると、プログラムが記録媒体201からドライブ装置200を介して補助記憶装置202にインストールされる。但し、プログラムのインストールは必ずしも記録媒体201より行う必要はなく、ネットワークを介して他のコンピュータよりダウンロードするようにしてもよい。補助記憶装置202は、インストールされたプログラムを格納すると共に、必要なファイルやデータ等を格納する。
メモリ装置203は、プログラムの起動指示があった場合に、補助記憶装置202からプログラムを読み出して格納する。CPU204は、メモリ装置203に格納されたプログラムに従ってサービス提供装置20に係る機能を実行する。インタフェース装置205は、ネットワークに接続するためのインタフェースとして用いられる。
なお、サービス提供装置20は、図2に示されるようなハードウェアを有する複数のコンピュータによって構成されてもよい。すなわち、後述においてサービス提供装置20が実行する処理は、複数のコンピュータに分散されて実行されてもよい。契約情報管理装置40のハードウェアについても、サービス提供装置20と同様に、図2に示されるような一以上のコンピュータによって構成されてもよい。
図3は、本発明の実施の形態におけるサービス提供装置の機能構成例を示す図である。図3において、サービス提供装置20は、サーバアプリ210及びプラットフォーム220等のソフトウェアを含む。これらは、サービス提供装置20にインストールされる一以上のプログラムによって構成され、CPU204に所定の処理を実行させる。
サービス提供装置20は、また、ユーザ情報記憶部231、機器情報記憶部232、及びライセンス情報記憶部233等を利用する。これら各記憶部は、補助記憶装置202、又はサービス提供装置20にネットワークを介して接続される記憶装置等を用いて実現可能である。
サーバアプリ210は、サービス提供装置20が提供する機器連携サービスを実現するアプリケーションプログラムである。基本的に、一つのサーバアプリ210は、一つの機器連携サービスに対応する。したがって、機器連携サービスのライセンスとは、当該機器連携サービスに係るサーバアプリ210のライセンスということもできる。
図3では、サーバアプリ210の一例として、スキャンサーバアプリ211が示されている。スキャンサーバアプリ211は、スキャンToストレージサービスに関する処理を実行するサーバアプリ210である。
プラットフォーム220は、複数のサーバアプリ210に共通する機能、又は複数のサーバアプリ210から利用される基本機能等を含む。図3において、プラットフォーム220は、設定登録部221、機器通信部222、認証処理部223、セッション管理部224、及びライセンス管理部225等を含む。これら各部の機能は、プラットフォームAPI240を介してサーバアプリ210に公開されている。換言すれば、サーバアプリ210は、プラットフォームAPI240によって公開されている範囲においてこれら各部の機能を利用可能である。
設定登録部221は、機器連携サービスの利用に先立って必要とされる、ユーザ環境E1に関する情報の設定登録処理を実行する。設定登録部221によって、ユーザ情報記憶部231及び機器情報記憶部232等に対して情報が登録される。
ユーザ情報記憶部231は、サービス提供装置20が提供するサービスのユーザに関する情報を記憶する。機器情報記憶部232は、ユーザにおけるシステム環境(すなわち、ユーザ環境E1)において、サービス提供装置20が提供するサービスと連携させる機器10に関する情報を記憶する。
機器通信部222は、機器10との通信を制御する。認証処理部223は、管理者端末30のユーザ又は機器10のユーザの認証等を行う。セッション管理部224は、サービス提供装置20と機器10との連携時において、両者の通信のセッションを管理する。
ライセンス管理部225は、ライセンス情報記憶部233へのライセンス情報の登録、ライセンス情報記憶部233が記憶するライセンス情報の更新、ライセンス情報記憶部233からのライセンス情報の検索等を行う。ライセンス情報は、ライセンスの属性情報であり、特に、ライセンスの内容(ライセンスの有効範囲)及びライセンスの状態を示す情報の一例である。
ライセンス情報記憶部233は、機器連携サービスにおいて、利用が開始されたライセンスのライセンス情報を記憶する。なお、「利用が開始されたライセンス」には、利用が終了した(ライセンスの有効期間が満了した)ライセンスも含まれる。
なお、図3では、機器10の一例として、複合機、複写機、ファクシミリ、若しくはプリンタ等の画像形成装置、携帯端末、PC、会議システム、画像投影装置、及びICレコーダや、その他の新規デバイス等が例示されている。
図4は、本発明の実施の形態における契約情報管理装置の機能構成例を示す図である。図4において、契約情報管理装置40は、契約情報アクセス部41及び契約情報記憶部42等を有する。
契約情報記憶部42は、契約情報を記憶する。契約情報記憶部42は、例えば、契約情報管理装置40が有する補助記憶装置、又は契約情報管理装置40にネットワークを介して接続される記憶装置等を用いて実現可能である。契約情報アクセス部41は、契約情報記憶部42へのアクセス手段を提供する。
なお、契約情報記憶部42に記憶される契約情報は、機器連携サービスの利用契約の締結(ライセンスの購入)に応じて発生する。ライセンス情報記憶部223に記憶されるライセンス情報は、購入されたライセンスの利用の開始に応じて発生する。
続いて、本実施の形態における、機器連携サービスのライセンスに関する状態遷移について説明する。
図5は、本実施の形態におけるライセンスの状態遷移の一例を示す図である。図5には、ライセンスL1、ライセンスL2、及びライセンスL3の三つのライセンスについて状態遷移の例が示されている。ここで、ライセンスL1〜L3は、同一の機器連携サービス(ここでは、「サービスA」とする。)に対して購入されているライセンスである。換言すれば、ライセンスL1〜L3のそれぞれのライセンスについて、契約情報が契約情報管理装置40において管理されている。なお、ライセンスL1〜L3を購入したユーザを、以下、「ユーザA」という。
ユーザAが、ライセンスL1の利用を開始すると、ライセンスL1の状態は、初期状態st11から利用中(未更新)状態st12に遷移する。なお、初期状態st11とは、契約情報管理装置40において当該ライセンスに関する契約情報は管理されているが、当該ライセンスの利用は開始されていない状態をいう。すなわち、本実施の形態において、ライセンスの有効期間は、契約情報に含まれているが、ライセンスの利用の開始時期(すなわち、有効期間の開始時期)は、ユーザの任意で決定可能である。ライセンスの利用の開始とは、当該ライセンスによって利用権限が付与される機器連携サービスを利用可能な状態にすることをいう。
また、利用中(未更新)状態st12における「未更新」とは、当該ライセンスについて、更新実績が無いことをいう。ライセンスの更新とは、ライセンスの有効期間の更新をいい、より具体的には、ライセンスの有効期間を実質的に延長することをいう。
ユーザAが、ライセンスL1の有効期間を超えて、ライセンスL1によって利用権限が付与されるサービスAの利用を継続したい場合、ユーザAは、ライセンスL1の有効期間中に、ライセンスL1について更新手続きを行うことができる。更新手続きに際し、ユーザAは、ライセンスL1の有効期間の満了後に、サービスAに適用させるライセンスを指定する。図5では、ライセンスL2が指定された例が示されている。ライセンスL2は、ライセンスL1からは独立して購入されたライセンスであり、ライセンスL1とは別個に利用可能なライセンスであるが、ライセンスL1の更新後のライセンスとして利用することも可能である。すなわち、本実施の形態において、各ライセンスは、当該ライセンスと同一の機器連携サービスに対する他のライセンスの更新後のライセンスとしても利用可能である。したがって、ライセンスL2ではなく、ライセンスL3を、ライセンスL1の更新後のライセンスとして指定することも可能である。ライセンスL1とライセンスL2との関係において、ライセンスL1の位置付けに該当するライセンスを「更新前ライセンス」といい、ライセンスL2の位置付けに該当するライセンスを「更新後ライセンス」という。
なお、ライセンスL2を、ライセンスL1と別個に利用可能であるとは、例えば、ライセンスL1の更新後ライセンスとしてではなく、ライセンスL1と有効期間の少なくとも一部が重複する期間において、又はライセンスL1の有効期間の満了後しばらくした後に、サービスAの提供を受けるためにライセンスL2を利用することが可能であることをいう。例えば、各ライセンスについて、サービスAを同時に利用可能なユーザ数が、一人である場合、同時に二人の利用を可能とするために、ライセンスL1の有効期間と重複する期間において、ライセンスL2が利用されることも考えられる。
更新手続きに応じ、更新前ライセンスであるライセンスL1は、利用中(更新済み)状態st13に遷移する。利用中(更新済み)状態st13は、利用中(未更新)状態st12と同様に、当該ライセンスを利用可能な状態であるが、更新手続きが行われたことが有る点において利用中(未更新)状態st12と相違する。利用中(更新済み)状態st13と利用中(未更新)状態st12とを区別するのは、本実施の形態においては、一つのライセンスについて可能な更新手続きの回数を1回に限定されるからである。更新手続きの回数が1回に限定されることによって得られる便益については、後述される。
一方、更新手続きに応じ、ライセンスL1の更新後ライセンスとされたライセンスL2の状態は、利用前状態st21に遷移する。利用前状態st21のライセンスは、利用は開始されていないが、当該ライセンスに対応する更新前ライセンスの有効期間の満了に応じて利用が予約された状態をいう。
ライセンスL1の有効期間が満了すると、ライセンスL1は、利用終了状態st14に遷移する。また、ライセンスL1の有効期間の満了に応じ、ライセンスL2は、利用中(未更新)状態st22に遷移する。その結果、ユーザは、ライセンスL2に基づいて、サービスAの利用を継続することができる。
ユーザAが、ライセンスL2の有効期間を更に超えて、サービスAの利用を継続したい場合、ユーザAは、ライセンスL2の有効期間中に、ライセンスL2について更新手続きを行うことができる。図5では、ライセンスL2の更新後ライセンスとして、ライセンスL3が指定された例が示されている。ライセンスL2とライセンスL3との関係は、ライセンスL1とライセンスL2との関係と同じである。すなわち、ライセンスL2は、ライセンスL3の更新前ライセンスであり、ライセンスL3は、ライセンスL2の更新後ライセンスである。
更新手続きに応じ、ライセンスL2の状態は、利用中(更新済み)状態st23に遷移する。また、ライセンスL3の状態は、利用前状態st31に遷移する。その後、ライセンスL2の有効期間が満了すると、ライセンスL2は、利用終了状態st24に遷移する。また、ライセンスL3は、利用中(未更新)状態st32に遷移する。
このように、本実施の形態では、ライセンスの有効期間の終了日の更新ではなく、それぞれ独立したライセンスの連鎖によって、実質的にライセンスの有効期間の更新(延長)が実現される。そうすることにより、ライセンスと、契約情報との対応関係を一対一にすることができる。すなわち、ライセンスL1、L2、L3について、それぞれの契約情報との対応関係が不明確になるのを回避することができる。
続いて、ライセンス管理部225の詳細について説明する。図6は、ライセンス管理部の機能構成例を示す図である。図6において、ライセンス管理部225は、要求受信部2251、利用開始部2252、利用終了部2253、ライセンス制御部2254、一覧検索部2255、更新候補検索部2256、更新部2257、及び応答返信部2258等を含む。
要求受信部2251は、例えば、管理者端末30等から送信される、ライセンスの操作又は管理に関する要求を受信する。利用開始部2252は、利用の開始が要求されたライセンスを利用可能な状態とする。利用可能な状態とは、「利用中」状態である。利用終了部2253は、有効期間が満了したライセンスを利用不可能な状態(又は無効な状態)とする。ライセンス制御部2254は、機器連携サービスの利用要求に応じ、当該機器連携サービスに対するライセンスの有無等に基づいて、当該機器連携サービスの利用の許否を判定する。
一覧検索部2255は、ユーザに対応するライセンス情報の一覧をライセンス情報記憶部233より検索する。更新候補検索部2256は、更新後ライセンスが特定された検索要求に応じ、当該更新後ライセンスによって更新可能なライセンス(すなわち、当該更新後ライセンスに対して更新前ライセンスとなりうるライセンス)のライセンス情報を、ライセンス情報記憶部233より検索する。更新部2257は、ライセンスの更新を行う。応答返信部2258は、要求受信部2251によって受信された要求に対する応答を返信する。
以下、サービス提供装置20が実行する処理手順について説明する。図7は、ライセンスの利用開始時に実行される処理手順の一例を説明するためのフローチャートである。図7に示される処理手順は。例えば、図5におけるライセンスL1のように、他のライセンスの更新後ライセンスではないライセンスの利用開始時に実行される処理手順である。
ステップS101において、ライセンス管理部225の要求受信部2251は、ライセンスの利用開始要求を管理者端末30より受信する。ライセンスの利用開始要求は、例えば、管理者による指示入力に応じて、管理者端末30が、サービス提供装置20宛に送信する。ライセンスの利用開始要求には、利用対象とされるライセンスの識別情報であるライセンスIDと、ライセンスを利用する機器10の機体番号と、ライセンスを利用するユーザの識別情報とが指定される。ライセンスを利用するユーザの識別情報として、本実施の形態では、ユーザ環境E1を含む組織に対する識別情報である組織IDが用いられる。組織IDは、企業又は企業内の部署等を識別する識別情報であってもよいし、複数ユーザの集合に対する識別情報であってもよい。また、ライセンスの利用開始要求の前に、ユーザの認証処理が実行されてもよい。この場合、ユーザの認証処理において組織IDが指定されるのであれば、ライセンスの利用開始要求には、組織IDは指定されなくてもよい。
また、ライセンスを利用する機器10の機体番号とは、当該ライセンスに基づいて、機器連携サービスを利用する機器10の識別情報である。すなわち、本実施の形態において、機器連携サービスのライセンスは、機器10に紐付けられる。このことは、一つのライセンスによって機器連携サービスを利用可能な機器10は、一つに限定されることを意味する。なお、機体番号は、機器10の製造番号やMACアドレス等、各機器10の機体を識別可能な情報であれば、所定の情報に限定されない。
以下、利用開始要求に指定されたライセンスID、機体番号、組織IDを、それぞれ、「対象ライセンスID」、「対象機体番号」、「対象組織ID」という。
続いて、ライセンス管理部225の利用開始部2252は、対象組織ID及び対象ライセンスIDに対応する契約情報の有無を、契約情報管理装置40の契約情報アクセス部41を介して判定する(S102)。契約情報の有無とは、当該契約情報が、契約情報記憶部42に記憶されているか否かをいう。
図8は、契約情報記憶部の構成例を示す図である。図8において、契約情報記憶部42は、機器連携サービスの利用契約ごとに、契約情報を示すレコードを記憶する。契約情報は、組織ID、ライセンスID、サービス名、契約区分、及びライセンス期間等を含む。
組織IDは、当該利用契約を締結したユーザの組織IDである。ライセンスIDは、当該利用契約によって購入されたライセンスのライセンスIDである。サービス名は、当該利用契約の対象の機器連携サービスの識別名である。契約区分は、当該利用契約によって購入されたライセンスの更新方法の区分である。本実施の形態において契約区分には、「年契約」又は「自動更新」が有る。「年契約」は、契約年数ごとに更新手続きが必要とされる契約区分である。「自動更新」は、自動的にライセンスの有効期間が更新される契約区分である。「自動更新」は、ライセンスの有効期間が無期限の契約区分であるともいえる。ライセンス期間は、当該利用契約によって購入されたライセンスの有効期間である。
対象組織ID及び対象ライセンスIDの双方を含む契約情報(以下、「対象契約情報」という。)が有る場合(S102でYes)、利用開始部2252は、対象契約情報に対応するライセンスが、既に利用されているか否かを判定する(S103)。当該判定は、例えば、ライセンス情報記憶部233を参照して行われる。
図9は、ライセンス情報記憶部の構成例を示す図である。図9において、ライセンス情報記憶部233は、利用が開始されたライセンスごとに、ライセンス情報を示すレコードを記憶する。ライセンス情報は、ライセンスID、組織ID、サービス名、機体番号、契約区分、利用開始日、利用終了日、状態、更新適用状態、及び更新後ID等を含む。
ライセンスIDは、当該ライセンスのライセンスIDである。組織IDは、当該ライセンスを購入したユーザの組織IDである。サービス名は、当該ライセンスの対象である機器連携サービスのサービス名である。機体番号は、当該機器連携サービスを利用可能な機器10の機体番号である。契約区分は、当該ライセンスの契約区分である。利用開始日は、当該ライセンスの有効期間の開始日である。利用終了日は、当該ライセンスの有効期間の終了日である。状態は、図5においてその遷移が説明された、ライセンスの状態である。更新適用状態は、更新手続きの実績の有無を示す情報である。「1」は、更新手続きの実績が有ることを示す。「0」は、更新手続きの実績が無いことを示す。すなわち、更新適用状態は、図5における利用中(未更新)状態と、利用中(更新済み)状態とを区別するための項目である。更新後IDは、更新手続きが行われたライセンスに対する、更新後ライセンスのライセンスIDである。図5の例では、ライセンスL1についての更新後IDは、ライセンスL2のライセンスIDである。また、ライセンスL2についての更新後IDは、ライセンスL3のライセンスIDである。
ステップS103では、対象ライセンスID及び対象組織IDの双方を含むレコードが、ライセンス情報記憶部233に記憶されているか否かが判定される。
対象ライセンスID及び対象組織IDの双方を含むレコードが、ライセンス情報記憶部233に記憶されていない場合(S103でYes)、利用開始部2252は、対象ライセンスIDに係るライセンス情報を生成し、当該ライセンス情報をライセンス情報記憶部233に登録する(S104)。図9に示されるライセンス情報記憶部233において、1〜5行目のレコード(ライセンス情報)は、図8に示される契約情報記憶部42において、1〜5行目の契約情報が対象契約情報である場合に、ステップS104において登録されたレコードである。但し、各ライセンス情報がライセンス情報記憶部233に登録された時期は異なる。例えば、各ライセンス情報がライセンス情報記憶部233に登録された時期は、各ライセンス情報の利用開始日である。
ステップS104で登録されるレコードのライセンスID、組織ID、サービス名、契約区分には、対象契約情報に含まれている値が引き継がれる(転記される)。当該レコードの利用開始日には、ライセンスの利用開始要求が受信された当日の日にちが記憶される。但し、ライセンスの利用開始要求において、利用開始日が指定可能とされてもよい。この場合、ライセンスの利用開始要求に指定された利用開始日が、当該レコードの利用開始日に記憶されてもよい。
当該レコードの利用終了日には、当該レコードの利用開始日を起点とした場合の、契約情報に含まれているライセンス期間の最終日が記憶される。当該レコードの機体番号には、対象機体番号が記憶される。当該レコードの状態には、「利用中」が記憶される。当該レコードの更新適用状態には、「0」が記憶される。当該レコードの更新後IDには、何も記憶されない。当該レコードに係るライセンスについては、未だ更新手続きは行われていないからである。
なお、対象契約情報が契約情報記憶部42に記憶されていない場合(S102でNo)、又は対象契約情報に対応するライセンス情報が、ライセンス情報記憶部233に記憶されている場合(S103でNo)、ライセンスの利用開始要求は、拒絶される。
続いて、利用中のライセンスに関して更新手続きが行われる際に、ライセンス提供装置20が実行する処理手順について説明する。
図10は、ライセンス情報の一覧の検索処理の処理手順の一例を説明するためのフローチャートである。
ステップS111において、ライセンス管理部225の要求受信部2251は、ライセンス一覧画面の取得要求を管理者端末30より受信する。ライセンス一覧画面の取得要求は、例えば、管理者による指示入力に応じて、管理者端末30が、サービス提供装置20宛に送信する。ライセンス一覧画面の取得要求には、要求元のユーザの組織IDが指定される。但し、ライセンス一覧画面の取得要求の前にユーザの認証処理が実行され、当該認証処理において組織IDが指定されるのであれば、ライセンス一覧画面の取得要求には、組織IDは指定されなくてもよい。
続いて、一覧検索部2255は、指定された組織IDを含むライセンス情報の一覧を、ライセンス情報記憶部233より検索する(S112)。続いて、一覧検索部2255は、検索結果を含むライセンス一覧画面を表示させる画面データを生成する(S113)。画面データは、例えば、HTML(HyperText Markup Language)等の汎用的なデータ形式によって生成されてもよいし、独自のデータ形式によって生成されてもよい。独自のデータ形式が採用される場合、管理者端末30には、当該データ形式に対応したブラウザ等がインストールされていればよい。
続いて、応答返信部2258は、生成された画面データを含む応答を、管理者端末30に返信する。管理者端末30は、返信された画面データに基づいて、ライセンス一覧画面を表示させる。
図11は、ライセンス一覧画面の表示例を示す図である。図11において、ライセンス一覧画面510は、ライセンス情報一覧表示領域511及びボタン512等を含む。
ライセンス情報一覧表示領域511には、ステップS112において検索されたライセンス情報の一覧が表示される。図11では、ライセンス情報を構成する項目の一部が表示される例が示されているが、全ての項目が表示されてもよいし、他の項目が表示されてもよい。
ライセンス情報一覧表示領域511に表示されるライセンス情報は、ライセンス情報記憶部233に記憶されているライセンス情報である。ライセンス情報記憶部233に記憶されているライセンス情報は、利用が開始されているライセンス情報である。したがって、ライセンス情報一覧表示領域511に表示されるライセンス情報は、管理者が属する組織において、利用が開始されている、又は利用が終了したライセンス情報の一覧である。
ボタン512は、利用前(すなわち、未使用)の特定のライセンスを更新後ライセンスとした場合に、当該更新後ライセンスに対する更新前ライセンスの候補となる(すなわち、更新対象の候補となる)ライセンスのライセンス情報の検索指示を受け付けるためのボタンである。具体的には、更新ボタン512が押下されると、管理者端末30は、更新後ライセンス指定画面を表示させる。
図12は、更新後ライセンス指定画面の表示例を示す図である。図12において、更新後ライセンス指定画面520は、ライセンスID入力領域521及びボタン522等を有する。
ライセンスID入力領域521は、更新後ライセンスのライセンスIDの入力を受け付けるための領域である。すなわち、管理者は、現在利用中のいずれかのライセンスの更新後ライセンスとして利用したいライセンスのライセンスIDを、ライセンスID入力領域521に入力する。その後、OKボタン522が押下されると、管理者端末30は、更新候補のライセンスの検索要求をライセンス提供装置20に送信する。更新候補のライセンスとは、ライセンスID入力領域521に入力されたライセンスIDに係るライセンスの更新前ライセンスになりうるライセンスをいう。当該検索要求には、管理者端末30が属する組織の組織IDと、入力されたライセンスIDとが指定される。但し、既に認証処理が行われ、組織IDが認証処理において入力されている場合、当該検索要求において組織IDは指定されてなくてもよい。
続いて、更新候補のライセンスの検索要求に応じてサービス提供装置20が実行する処理について説明する。図13は、更新候補のライセンスの検索処理の処理手順の一例を説明するためのフローチャートである。
ステップS151において、ライセンス管理部225の要求受信部2251は、更新候補の検索要求を受信する。続いて、ライセンス管理部225の更新候補検索部2256は、当該検索要求に指定されたライセンスID(以下、「更新後ライセンスID」という。)を含む契約情報を、契約情報アクセス部41を介して契約情報記憶部42(図8)より検索する(S152)。ここでは、更新後ライセンスIDとして、「777777777」が指定されてこととする。したがって、図8において、6行目のレコードに記憶されている契約情報が検索される。
該当する契約情報が検索された場合(S153でYes)、更新候補検索部2256は、以下の(1)〜(5)の全ての条件を満たすライセンス情報を、ライセンス情報記憶部233より検索する。すなわち、以下の(1)〜(5)は、AND条件によって結合される。
(1)検索要求元に係る組織IDを含むこと。
(2)更新後ライセンスIDに基づいて検索された契約情報に含まれているサービス名を含むこと。
(3)状態の値が「利用中」であること。
(4)更新適用状態の値が「0」であること。
(5)契約区分が「自動更新」でないこと(自動更新の場合、更新手続きは不要であるため。)。
該当するライセンス情報が検索された場合(S155でYes)、更新候補検索部2256は、検索結果を含む更新候補一覧画面を表示させる画面データを生成する(S156)。続いて、応答返信部2258は、生成された画面データを含む応答を、管理者端末30に返信する(S157)。
一方、ステップS152において、該当する契約情報が検索されなかった場合(S153でNo)、又はステップS154において、該当するライセンス情報が検索されなかった場合(S155でNo)、応答返信部2258は、エラー情報を返信する(S158)。
ステップS157において返信された画面データを受信した管理者端末30は、当該画面データに基づいて、更新候補一覧画面を表示させる。
図14は、更新候補一覧画面の表示例を示す図である。図14において、更新候補一覧画面530は、更新後ライセンス情報表示領域531、更新候補一覧表示領域532、及びボタン533等を含む。
更新後ライセンス情報表示領域531には、ステップS152において検索された、更新後ライセンスIDに係る契約情報の一部が表示される。更新候補一覧表示領域532には、ステップS154において検索された、更新候補となるライセンスのライセンス情報の一覧が表示される。なお、更新候補一覧表示領域532には、更新対象とするライセンスを選択させるためのラジオボタンが配置されている。
このように、本実施の形態では、更新後ライセンスのライセンスIDを入力することにより、ユーザは、当該更新後ライセンスによって更新対象となりうるライセンスの候補の一覧を得ることができる。したがって、ユーザは、例えば、自らが複雑な検索条件(例えば、ステップS154に示されるような検索条件)を作成したり、入力したりする必要はなく、簡易な操作によって、更新候補のライセンスを確認することができる。
ボタン533は、更新候補一覧表示領域532において選択されたライセンスに関して、更新指示を受け付けるためのボタンである。ボタン533が押下されると、管理者端末30は、更新後ライセンスID(「777777777」)と、更新対象として選択されたライセンスのライセンスID(以下、「更新前ライセンスID」という。)と、管理者端末30が属する組織の組織ID(以下、「対象組織ID」という。)とを指定して、ライセンスの更新要求を、サービス提供装置20に送信する。
続いて、ライセンスの更新要求に応じてサービス提供装置20が実行する処理について説明する。図15は、ライセンスの更新処理の処理手順の一例を説明するためのフローチャートである。
ステップS201において、ライセンス管理部225の要求受信部2251は、ライセンスの更新要求を受信する。続いて、ライセンス管理部225の更新部2257は、更新後ライセンスに関して、図7のステップS102及びS103と同様の判定を行う(S202、S203)。すなわち、ステップS202において、更新部2257は、対象組織ID及び更新後ライセンスIDの双方を含む契約情報(以下、「更新後契約情報」という。)の有無を、契約情報管理装置40の契約情報アクセス部41を介して判定する。該当する契約情報が契約情報記憶部42に記憶されている場合(S202でYes)、更新部2257は、更新後ライセンスID及び対象組織IDの双方を含むライセンス情報が、ライセンス情報記憶部233に記憶されているか否かを判定する(S203)。
該当するライセンス情報がライセンス情報記憶部233に記憶されていない場合(S203でYes)、更新部2257は、更新前ライセンスID及び対象組織IDに係るライセンス情報(以下、「更新前ライセンス情報」という。)の状態の値は「利用中」であるか否かを判定する(S204)。すなわち、更新前ライセンスが有効期間内であるか否か(有効であるか否か)が判定される。したがって、ステップS204では、当日が、更新前ライセンス情報の利用開始日と利用終了日とによって規定される有効期間内であるか否かが判定されてもよい。
当該ライセンス情報の状態の値が「利用中」である場合(S204でYes)、更新部2257は、更新前ライセンス情報の更新適用状態の値は「0」であるか否かを判定する(S205)。すなわち、更新前ライセンスに更新実績が無いことが確認される。
更新前ライセンス情報の更新適用状態の値が「0」である場合(S205でYes)、更新部2257は、更新前ライセンス情報のサービス名の値と、更新後ライセンスIDに係る契約情報のサービス名の値とが同じであるか否かを判定する(S206)。更新後ライセンスは、更新前ライセンスと同じサービスに対するライセンスである必要が有るからである。なお、更新適用状態の値が「0」でない場合に、ライセンスの更新が行われないことにより、各ライセンスの更新回数を1回に限定することができる。
比較されたサービス名が一致する場合(S206でYes)、更新部2257は、更新後ライセンスのライセンス情報を、ライセンス情報記憶部233に登録する(S207)。続いて、更新部2257は、更新前ライセンス情報の更新後IDに、更新後ライセンスIDを設定する(S208)。その結果、更新前ライセンスと更新後ライセンスとが関連付けられる。続いて、更新部2257は、更新前ライセンス情報の更新適用状態に「1」を設定する(S209)。
ステップS207〜S209の実行の結果、ライセンス情報記憶部233は、例えば、図16に示されるような状態となる。
図16は、ライセンスの更新後のライセンス情報記憶部の記憶内容の例を示す図である。図16では、図8に示される契約情報のうち、ライセンスIDが「777777777」である契約情報に係るライセンスが更新後ライセンスであり、ライセンスIDが「234567891」であるライセンスが、更新対象のライセンス(更新前ライセンス)として選択された場合の更新結果の例が示されている。
図16に示されるように、ステップS207において登録される、更新後ライセンスのレコードの機体番号には、更新前ライセンスの機体番号が記憶される。また、当該レコードの利用開始日には、更新前ライセンスの利用終了日の翌日が記憶される。すなわち、更新後ライセンスの有効期間は、更新前ライセンスの有効期間に継続する。当該レコードの利用終了日には、更新後ライセンスの利用開始日を起点とした場合の、更新後ライセンスの契約情報に含まれているライセンス期間の最終日が記憶される。また、当該レコードの状態には、「利用前」が記憶される。当該レコードの更新適用状態には、「0」が記憶される。
また、ステップS208において、更新前ライセンスのレコードのライセンス適用状態は「1」に更新される。ステップS209において、当該レコードの更新後IDには、更新後ライセンスのライセンスIDである「777777777」が記憶される。
図16に示される各ライセンスの状態を、図5において説明した状態に当てはめると、ライセンスIDが「234567891」であるライセンスは、利用中(更新後)状態に相当する。ライセンスIDが「777777777」であるライセンスは、利用前状態に相当する。
なお、更新後契約情報が契約情報記憶部42に記憶されていない場合(S202でNo)、更新後契約情報に対応するライセンス情報が、ライセンス情報記憶部233に記憶されている場合(S203でNo)、更新前ライセンス情報の状態が「利用中」でない場合(S204でNo)、更新前ライセンス情報の更新適用状態の値が「1」である場合(S205でNo)、又は更新前ライセンス情報のサービス名の値と、更新後ライセンスIDに係る契約情報のサービス名の値とが異なる場合(S206でNo)、ライセンスの更新要求は、拒絶される。
続いて、或るライセンスのライセンス期間が満了した際に、サービス提供装置20が実行する処理手順について説明する。
図17は、ライセンス期間の満了に応じて実行される処理手順の一例を説明するためのフローチャートである。
ライセンス管理部225の利用終了部2253は、ライセンス情報記憶部233に記憶されている状態が「利用中」であるいずれかのライセンス(以下、「終了ライセンス」という。)の中で、利用終了日が前日以前となっているライセンスの存在を検知すると(S301でYes)、終了ライセンスに対してライセンス情報記憶部233に記憶されている状態の値を、「利用終了」に更新する(S302)。利用終了日が前日以前となっているライセンスの存在の検知は、例えば、1日に1回等、定期的に利用終了日と当日の日付とを比較することにより行われてもよいし、上記において説明した各処理要求や、ライセンスに基づくサービスの利用要求が受け付けられた際に行われてもよい。
続いて、利用終了部2253は、終了ライセンスのライセンス情報の更新IDに、他のライセンスのライセンスIDが記憶されているか否かを判定する(S303)。更新IDに、他のライセンスのライセンスIDが記憶されている場合(S303でYes)、利用終了部2253は、当該ライセンスIDに係るライセンス情報の状態の値を、「利用中」に更新する(S304)。その結果、ライセンス期間が満了したライセンスに、更新後ライセンスが存在する場合、ライセンス期間が満了したライセンスによって利用可能とされていたサービスは、更新後ライセンスによって利用可能とされる。
続いて、ライセンス情報に基づくライセンスの管理方法について説明する。図18は、サービスの利用要求に応じて実行される処理手順の一例を説明するためのフローチャートである。
サービスの利用要求がサービス提供装置20において受信されると(S401)、ライセンス管理部225のライセンス制御部2254は、当該利用要求に指定されている、組織ID、機体番号、及びサービス名を含むライセンス情報を、ライセンス情報記憶部233より検索する(S402)。なお、サービスの利用要求は、例えば、ユーザからの指示入力に応じて、機器10がサービス提供装置20宛に送信する。サービスの利用要求に指定される組織IDは、当該機器10が属する組織の組織IDである。サービスの利用要求に指定される機体番号は、当該機器10の機体番号である。サービスの利用要求に指定されるサービス名は、利用要求の対象となるサービスのサービス名である。
該当するライセンス情報が1以上検索された場合(S403でYes)、ライセンス制御部2254は、検索されたライセンス情報の中に、状態の値が「利用中」であるライセンス情報が有るか否かを判定する(S404)。該当するライセンス情報が有る場合(S404でYes)、ライセンス制御部2254は、指定されたサービス名に係るサービスの利用を許可する(S405)。
一方、ライセンス要求に指定された組織ID、機体番号、及びサービス名を含むライセンス情報が検索されなかった場合(S403でNo)、又は検索されたライセンス情報の中に、状態の値が「利用中」であるライセンス情報が無い場合(S404でNo)、ライセンス制御部2254は、指定されたサービス名に係るサービスの利用を拒絶する(S406)。したがって、この場合、ユーザは、当該機体番号に係る機器10を利用して、サービスの提供を受けることはできない。
上述したように、本実施の形態によれば、更新前ライセンスを指定することにより、更新対象の候補となるライセンスを容易に特定することができる。したがって、ライセンスの更新作業を簡便化することができる。
また、本実施の形態によれば、ライセンスの更新が行われた場合であっても、ライセンス情報記憶部233におけるライセンス情報と、契約情報記憶部42における契約情報とを一対一に対応付けることができる。その結果、例えば、現在利用されているライセンスが、いずれの利用契約に基づくものであるのかを特定したりすることが可能となる。
また、本実施の形態によれば、一つのライセンスの更新は、一回に限定される。その結果、例えば、同一のサービスに関して、有効期間が重複し、機体番号が同一である複数のライセンスの発生を防止することができる。すなわち、同一の機器10で、同時期にしか利用できないライセンスが複数有る場合、そのうちの一つを除くライセンスは、無駄となってしまう。本実施の形態によれば、このような無駄の発生によってユーザが受ける不利益の発生を防止することができる。
更に、本実施の形態では、更新可能なライセンスは、利用中(有効期間中)であるライセンスに限られる。したがって、ライセンスの更新の連鎖が無限に形成されることを防止することができる。例えば、図5の例において、ライセンスL1の更新時に、ライセンスL1に連鎖可能なライセンスはライセンスL2の一つに限られ、同時にライセンスL2に対してライセンスL3の連鎖を形成することはできない。その結果、ライセンスの対象となっているサービスの保証期間を超えてしまうような、ライセンスの更新が実行されてしまうことを防止することができる。
なお、本実施の形態において、サービス提供装置20は、ライセンス管理装置又はライセンス管理システムの一例である。ライセンス情報記憶部233は、記憶部の一例である。要求受信部2251は、受信部の一例である。応答返信部2258は、返信部の一例である。更新候補検索部2256は、検索部の一例である。更新部2257は、登録部の一例である。
以上、本発明の実施例について詳述したが、本発明は斯かる特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。