(57)【要約】【課題】プログラムの販売単位についてライセンスに対する適否を確認可能とすること。【解決手段】情報処理装置は、プログラムの販売単位に含める１以上のプログラムの選択を受け付ける第１の受付部と、前記販売単位に対して適用するライセンスの種類の選択を受け付ける第２の受付部と、前記販売単位に含まれる各プログラムが、選択された種類のライセンスの適用要件を満たすか否かを判定する判定部と、前記適用要件を満たさないプログラムが有る場合に、所定の情報を出力する出力部と、を有する。【選択図】図４
2020052841.tif 000002
【特許請求の範囲】
【請求項１】
プログラムの販売単位に含める１以上のプログラムの選択を受け付ける第１の受付部と、
前記販売単位に対して適用するライセンスの種類の選択を受け付ける第２の受付部と、
前記販売単位に含まれる各プログラムが、選択された種類のライセンスの適用要件を満たすか否かを判定する判定部と、
前記適用要件を満たさないプログラムが有る場合に、所定の情報を出力する出力部と、
を有することを特徴とする情報処理装置。
【請求項２】
前記判定部は、前記第２の受付部が受け付けたライセンスの種類がユーザを制限するライセンスである場合に、前記販売単位に含まれる各プログラムが、ユーザが特定されている場合に利用可能なプログラムであるか否かを判定する、
ことを特徴とする請求項１記載の情報処理装置。
【請求項３】
前記第１の受付部は、前記所定の情報を出力した後に、前記販売単位に含めるプログラムの再選択を受け付ける、
ことを特徴とする、
ことを特徴とする請求項１又は２記載の情報処理装置。
【請求項４】
前記第２の受付部は、前記所定の情報を出力した後に、前記ライセンスの種類の再選択を受け付ける、
ことを特徴とする請求項１乃至３いずれか一項記載の情報処理装置。
【請求項５】
情報処理装置と端末とを含む情報処理システムであって、
前記情報処理装置は、
プログラムの販売単位に含める１以上のプログラムの選択を受け付ける第１の受付部と、
前記販売単位に対して適用するライセンスの種類の選択を受け付ける第２の受付部と、
前記販売単位に含まれる各プログラムが、選択された種類のライセンスの適用要件を満たすか否かを判定する判定部と、
前記適用要件を満たさないプログラムが有る場合に、所定の情報を前記端末に出力する出力部と、
を有することを特徴とする情報処理システム。
【請求項６】
プログラムの販売単位に含める１以上のプログラムの選択を受け付ける第１の受付手順と、
前記販売単位に対して適用するライセンスの種類の選択を受け付ける第２の受付手順と、
前記販売単位に含まれる各プログラムが、選択された種類のライセンスの適用要件を満たすか否かを判定する判定手順と、
前記適用要件を満たさないプログラムが有る場合に、所定の情報を出力する出力手順と、
をコンピュータが実行することを特徴とする情報処理方法。
【請求項７】
プログラムの販売単位に含める１以上のプログラムの選択を受け付ける第１の受付手順と、
前記販売単位に対して適用するライセンスの種類の選択を受け付ける第２の受付手順と、
前記販売単位に含まれる各プログラムが、選択された種類のライセンスの適用要件を満たすか否かを判定する判定手順と、
前記適用要件を満たさないプログラムが有る場合に、所定の情報を出力する出力手順と、
をコンピュータに実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、情報処理システム、情報処理方法及びプログラムに関する。
【背景技術】
【０００２】
アプリケーション等のプログラムを販売する場合に、複数のプログラムを組み合わせたパッケージが販売単位とされる場合が有る。例えば、ソリューションごとにパッケージが作成されれば、ユーザは、或るソリューションに対応するパッケージを購入することで、当該ソリューションに必要なプログラム群を過不足なく入手することができる。
【０００３】
他方において、プログラムについてライセンス管理が行われる場合が有る。ライセンス管理とは、プログラムの利用を、予め販売者との間で合意された範囲（例えば、課金額に応じた範囲）に制限することをいう。ライセンス管理が行われることで、同じパッケージであっても、ライセンスに応じた課金等を行うことができる。
【０００４】
パッケージとして販売されるプログラムについては、パッケージ単位でライセンスが設定されるのが販売者側及び利用者側の双方にとって分かり易い。
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、或るライセンスの適用先のプログラムは、当該ライセンスによって管理可能とするための要件を満たしている必要が有る。例えば、ユーザを特定のユーザに制限するライセンスの場合、当該ライセンスを適用可能なプログラムは、ユーザが特定されていることを前提として動作可能なプログラムである必要が有る。そうでなければ、当該プログラムのユーザが、当該特定のユーザであるか否かを判定することができないからである。
【０００６】
既存のプログラムを組み合わせてパッケージが作成される場合、既存の各プログラムが適合するライセンスの種類は既に決まっている。そうすると、パッケージの作成者が各プログラムに適合するライセンスの種類を正確に把握していないと、当該パッケージに適用予定のライセンスに適合しないプログラムを含むパッケージが作成されてしまう可能性が有る。
【０００７】
本発明は、上記の点に鑑みてなされたものであって、プログラムの販売単位についてライセンスに対する適否を確認可能とすることを目的とする。
【課題を解決するための手段】
【０００８】
そこで上記課題を解決するため、情報処理装置は、プログラムの販売単位に含める１以上のプログラムの選択を受け付ける第１の受付部と、前記販売単位に対して適用するライセンスの種類の選択を受け付ける第２の受付部と、前記販売単位に含まれる各プログラムが、選択された種類のライセンスの適用要件を満たすか否かを判定する判定部と、前記適用要件を満たさないプログラムが有る場合に、所定の情報を出力する出力部と、を有する。
【発明の効果】
【０００９】
プログラムの販売単位についてライセンスに対する適否を確認可能とすることができる。
【図面の簡単な説明】
【００１０】
【図１】第１の実施の形態におけるシステム構成例を示す図である。
【図２】アプリ、パッケージ及びライセンス定義の関係の一例を示す図である。
【図３】第１の実施の形態におけるクラウドシステム１０のハードウェア構成例を示す図である。
【図４】第１の実施の形態における販売者端末２０及びクラウドシステム１０の機能構成例を示す図である。
【図５】各情報の関係の一例を示す図である。
【図６】第１の実施の形態においてクラウドシステム１０が実行する処理手順の一例を説明するためのフローチャートである。
【図７】パッケージ情報入力画面の表示例を示す図である。
【図８】パッケージ情報記憶部１２２に記憶されるパッケージ情報の構成例を示す図である。
【図９】サービス定義記憶部１２３に記憶されるサービス定義の構成例を示す図である。
【図１０】アプリ情報記憶部１２１に記憶されているアプリ情報の構成例を示す図である。
【図１１】アプリ選択画面の表示例を示す図である。
【図１２】ライセンス定義作成画面の表示例を示す図である。
【図１３】ライセンス定義記憶部１２４に記憶されるライセンス定義の構成例を示す図である。
【図１４】警告画面の表示例を示す図である。
【図１５】第２の実施の形態においてクラウドシステム１０が実行する処理手順の一例を説明するためのフローチャートである。
【図１６】第２の実施の形態におけるエラー画面の表示例を示す図である。
【図１７】第３の実施の形態においてクラウドシステム１０が実行する処理手順の一例を説明するためのフローチャートである。
【図１８】第３の実施の形態におけるエラー画面の表示例を示す図である。
【発明を実施するための形態】
【００１１】
以下、図面に基づいて本発明の実施の形態を説明する。図１は、第１の実施の形態におけるシステム構成例を示す図である。図１において、ユーザ環境Ｅ１とクラウドシステム１０とは、インターネット等のネットワークＮ１を介して接続される。
【００１２】
ユーザ環境Ｅ１は、プログラムを利用する機器の一例としての画像形成装置３０のユーザ（顧客）のシステム環境である。例えば、ユーザ環境Ｅ１は、画像形成装置３０のユーザである企業又はオフィス等に相当する。ユーザ環境Ｅ１は、一台以上の画像形成装置３０等を含む。ユーザ環境Ｅ１は、複数存在しうる。
【００１３】
画像形成装置３０は、印刷、スキャン、コピー、及びファクス送受信等の複数の機能を一台の筐体において実現する複合機である。但し、いずれか一つの機能のみを実現可能な機器であってもよい。画像形成装置３０は、アプリケーションプログラム（以下、単に「アプリ」という。）を利用したサービスを提供する。本実施の形態において、Ｗｅｂアプリがアプリの一例とされる。Ｗｅｂアプリとは、例えば、ＨＴＭＬ（HyperText Markup Language）、ＣＳＳ（Cascading Style Sheets）及びスクリプト等によって構成されるアプリをいい、利用のたびにクラウドシステム１０へのアクセス（クラウドシステム１０からのダウンロード）が必要とされる。
【００１４】
図１において、クラウドシステム１０は、また、ネットワークＮ１等を介して１以上の販売者端末２０に接続される。販売者端末２０は、クラウドシステム１０に対するユーザインタフェースとして機能する端末である。例えば、ＰＣ（Personal Computer）、スマートフォン、タブレット端末等が、販売者端末２０として利用されてもよい。販売者端末２０は、画像形成装置３０が利用するアプリに関して、販売単位の定義情報や、ライセンスの定義情報（ライセンス定義）等の入力に利用されるコンピュータである。ライセンスとは、アプリの利用権限をいい、ライセンス定義とは、アプリの利用権限の範囲（換言すれば、アプリの利用が制限される範囲）を示す情報をいう。本実施の形態において、アプリは、１以上のアプリが組み合わされた「パッケージ」の単位で販売される。すなわち、パッケージとは、１以上のアプリの組み合わせ（集合）をいい、アプリの販売単位（商品としての単位）をいう。なお、販売者端末２０は、例えば、パッケージを販売する組織等において利用される。また、販売者端末２０のユーザを、便宜上、「販売者」という。
【００１５】
クラウドシステム１０は、アプリを有すると共に、当該アプリに関するパッケージの定義及びライセンス定義等に関する情報を管理する１以上のコンピュータである。本実施の形態において、アプリに対するライセンスは、パッケージ単位で設定される。また、１つのパッケージに対して複数のライセンス定義を設定することができ、ユーザによるパッケージの購入時に当該パッケージに関して設定されたライセンス定義の中から１つのライセンス定義が選択される。したがって、本実施の形態において、「アプリ」、「パッケージ」及び「ライセンス定義」は、図２に示されるような関係を有する。
【００１６】
図２は、アプリ、パッケージ及びライセンス定義の関係の一例を示す図である。図２に示されるように、パッケージとアプリとの多重度は、１対１以上である。すなわち、１つのパッケージは、アプリを１又は複数含む。また、パッケージとライセンス定義との多重度は、１対１以上である。すなわち、１つのパッケージに対して、１又は複数のライセンス定義を設定可能である。
【００１７】
なお、図２には、ライセンス定義の種類として、「デバイスライセンス」及び「ユーザライセンス」が有ることが示されている。
【００１８】
デバイスライセンスとは、パッケージに含まれるアプリを利用可能な画像形成装置３０を制限するライセンスをいう。デバイスライセンスが或るパッケージに適用される場合、当該パッケージの購入時において、利用可能な画像形成装置３０の台数が当該デバイスライセンスに対して設定される。その後、ユーザ環境Ｅ１の画像形成装置３０においてアプリが利用される際等に、当該台数の範囲内で、当該パッケージを利用可能とする画像形成装置３０がクラウドシステム１０に対して登録される。クラウドシステム１０は、画像形成装置３０から或るアプリへのアクセス要求を受信した際に、当該画像形成装置３０が、当該アプリを含むパッケージに対するデバイスライセンスにおいて利用可能な画像形成装置３０として登録されているか否かに基づいて、当該アプリの利用の可否を判定する。なお、デバイスライセンスにおいては、ユーザが誰であるかは問われない。
【００１９】
一方、ユーザライセンスとは、パッケージに含まれるアプリを利用可能なユーザを制限するライセンスをいう。ユーザライセンスが或るパッケージに適用される場合、当該パッケージの購入時において、利用可能なユーザ数が当該ユーザライセンスに対して設定される。その後、当該ユーザ数の範囲内で、当該パッケージを利用可能な各ユーザのユーザＩＤがユーザ環境Ｅ１からクラウドシステム１０に対して登録される。クラウドシステム１０は、画像形成装置３０から或るアプリへのアクセス要求を受信した際に、当該画像形成装置３０のユーザが、当該アプリを含むパッケージに対するユーザライセンスにおいて利用可能なユーザとして登録されているか否かに基づいて、当該アプリの利用の可否を判定する。この際、クラウドシステム１０は、当該画像形成装置３０のユーザを、当該画像形成装置３０からのクラウドシステム１０へのログイン時における認証によって特定する。したがって、ユーザライセンスが適用されるアプリの利用については、ユーザが認証（特定）されていることが前提とされる。一方、ユーザライセンスが適用されていないアプリの利用については、ユーザが認証（特定）されていることは前提とされない。なお、ユーザライセンスにおいては、アクセス元の画像形成装置３０がいずれであるかは問われない。
【００２０】
図２では、また、アプリの種類として、「認証が必要なアプリ」及び「認証が不要なアプリ」が有ることが示されている。
【００２１】
認証が必要なアプリとは、当該アプリの利用時に、クラウドシステム１０によってユーザ（ユーザＩＤ）が特定されていること（すなわち、クラウドシステム１０によってユーザが認証されていること）が必要とされるアプリをいう。クラウドシステム１０によってユーザが認証されているとは、ユーザがクラウドシステム１０はログインしていることと同義である。例えば、画像形成装置３０が紙文書からスキャンした画像データをクラウドシステム１０の個人のストレージに送信するアプリは、ユーザがログインしていないと当該ユーザの個人のストレージが特定できないため、認証（ログイン）が必要なアプリの一例である。
【００２２】
一方、認証が不要なアプリとは、当該アプリの利用時に、クラウドシステム１０によってユーザ（ユーザＩＤ）が特定されていること（すなわち、クラウドシステム１０によってユーザが認証されていること）が必要とされないアプリをいう。例えば、画像形成装置３０が紙文書からスキャンした画像データをクラウド上の共有ストレージに送信するアプリは、予め決められた共有ストレージを使うため、認証（ログイン）が不要なアプリの一例である。
【００２３】
図３は、第１の実施の形態におけるクラウドシステム１０のハードウェア構成例を示す図である。図３のクラウドシステム１０は、それぞれバスＢで相互に接続されているドライブ装置１００、補助記憶装置１０２、メモリ装置１０３、ＣＰＵ１０４、及びインタフェース装置１０５等を有する。
【００２４】
クラウドシステム１０での処理を実現するプログラムは、ＣＤ−ＲＯＭ等の記録媒体１０１によって提供される。プログラムを記憶した記録媒体１０１がドライブ装置１００にセットされると、プログラムが記録媒体１０１からドライブ装置１００を介して補助記憶装置１０２にインストールされる。但し、プログラムのインストールは必ずしも記録媒体１０１より行う必要はなく、ネットワークを介して他のコンピュータよりダウンロードするようにしてもよい。補助記憶装置１０２は、インストールされたプログラムを格納すると共に、必要なファイルやデータ等を格納する。
【００２５】
メモリ装置１０３は、プログラムの起動指示があった場合に、補助記憶装置１０２からプログラムを読み出して格納する。ＣＰＵ１０４は、メモリ装置１０３に格納されたプログラムに従ってクラウドシステム１０に係る機能を実行する。インタフェース装置１０５は、ネットワークに接続するためのインタフェースとして用いられる。
【００２６】
なお、販売者端末２０も、図３に示されるようなハードウェア構成を有してもよい。
【００２７】
図４は、第１の実施の形態における販売者端末２０及びクラウドシステム１０の機能構成例を示す図である。図４において、販売者端末２０は、ブラウザ部２１を有する。ブラウザ部２１は、例えば、コンピュータをＷｅｂブラウザとして機能させるプログラムが販売者端末２０のＣＰＵに実行させる処理により実現される。ブラウザ部２１は、クラウドシステム１０に対するユーザインタフェースとして機能する。
【００２８】
一方、クラウドシステム１０は、パッケージ生成部１１、ライセンス生成部１２、判定部１３及び出力部１４等を有する。これら各部は、クラウドシステム１０にインストールされた１以上のプログラムが、ＣＰＵ１０４に実行させる処理により実現される。クラウドシステム１０は、また、アプリ情報記憶部１２１、パッケージ情報記憶部１２２、サービス定義記憶部１２３及びライセンス定義記憶部１２４等を利用する。これら各記憶部は、例えば、補助記憶装置１０２、又はクラウドシステム１０にネットワークを介して接続可能な記憶装置等を用いて実現可能である。
【００２９】
アプリ情報記憶部１２１には、クラウドシステム１０にアクセスすることで画像形成装置３０において利用可能な各アプリの属性情報が記憶されている。
【００３０】
パッケージ生成部１１は、販売者端末２０において入力される情報を受け付け、当該情報に基づいて、新たなパッケージに関するパッケージ情報及びサービス定義を生成する。生成されたパッケージ情報は、パッケージ情報記憶部１２２に記憶される。生成されたサービス定義は、サービス定義記憶部１２３に記憶される。パッケージ情報とは、パッケージの属性情報をいう。サービス定義とは、パッケージによって実現されるサービスに関する情報をいい、パッケージ情報と１対１に関連付く。
【００３１】
ライセンス生成部１２は、販売者端末２０において入力される情報を受け付け、当該情報に基づいて、新たなパッケージに対するライセンス定義を生成する。生成されたライセンス定義は、ライセンス定義記憶部１２４に記憶される。
【００３２】
判定部１３は、パッケージが、当該パッケージに対して生成されようとしているライセンス定義が適用されるための要件又は条件（以下、「適用要件」という。）を満たしているか否かを判定する。より詳しくは、判定部１３は、当該パッケージ内の各アプリが、当該ライセンス定義の適用要件を満たしているか否かを判定する。本実施の形態においては、ユーザライセンスのライセンス定義について、当該ライセンス定義の適用先のアプリが認証が不要なアプリ（ユーザが特定されていることが不要なアプリ）であるという適用要件が有る。認証不要なアプリを含むパッケージに対してユーザライセンスのライセンス定義が適用されてしまうと、ユーザがクラウドシステム１０にログインしていない状態で当該アプリの利用が可能となってしまう。その結果、クラウドシステム１０は、当該パッケージに対するライセンス定義に基づくライセンス制御を正しく行えなくなってしまうからである。したがって、認証が不要なアプリを含むパッケージに対して、ユーザライセンスのライセンス定義が生成されようとした場合に、判定部１３は、当該パッケージが当該ライセンス定義の要件を満たしていないと判定する。
【００３３】
出力部１４は、パッケージがライセンス定義の要件を満たしていないと判定部１３によって判定された場合に当該要件が満たされていないことを示す所定の情報を販売者端末２０へ送信（出力）する。
【００３４】
なお、アプリ情報記憶部１２１に記憶されるアプリ情報、パッケージ情報記憶部１２２に記憶されるパッケージ情報、サービス定義記憶部１２３に記憶されるサービス定義、ライセンス定義記憶部１２４に記憶されるライセンス定義は、例えば、図５に示されるような関係を有する。
【００３５】
図５は、各情報の関係の一例を示す図である。図５に示されるように、パッケージ情報とアプリ情報との多重度は、１対１以上である。これは、図２において説明したように、パッケージとアプリとの多重度が１対１以上であることに基づく。また、パッケージ情報とサービス定義との多重度は１対１である。また、サービス定義とライセンス定義との多重度は、１対１以上である。これは、図２において説明したように、パッケージとライセンス定義との多重度が１対１以上であることに基づく。すなわち、パッケージ情報とサービス定義との多重度は１対１であるため、サービス定義とライセンス定義との多重度が１対１以上であるということは、パッケージ情報とライセンス定義との多重度も１対１以上であることを意味する。
【００３６】
以下、クラウドシステム１０が実行する処理手順について説明する。図６は、第１の実施の形態においてクラウドシステム１０が実行する処理手順の一例を説明するためのフローチャートである。
【００３７】
ステップＳ１０１において、パッケージ生成部１１は、販売者端末２０から送信された、パッケージの生成の開始要求を受信すると、パッケージ情報入力画面の表示データ（例えば、ＨＴＭＬデータ）を、販売者端末２０へ送信する（Ｓ１０２）。なお、パッケージの生成の開始要求は、例えば、販売者端末２０のブラウザ部２１に対する所定のＵＲＬの入力によってブラウザ部２１から送信される。販売者端末２０のブラウザ部２１は、当該表示データを受信すると、当該表示データに基づいて、パッケージ情報入力画面を表示する。
【００３８】
図７は、パッケージ情報入力画面の表示例を示す図である。図７において、パッケージ情報入力画面５１０は、パッケージ情報を構成する項目である「パッケージ名」及び「説明」と、サービス定義を構成する項目である「ライセンス制御有無」の入力欄を含む。
【００３９】
「パッケージ名」は、生成するパッケージ（以下、「対象パッケージ」という。）に対して付与する名前である。「説明」は、対象パッケージに関する説明である。「ライセンス制御有無」は、当該パッケージに対してライセンス（ユーザライセンス又はデバイスライセンス）による制御を有効とするか無効とするかを示す項目である。したがって、「ライセンス制御有無」については、「有効」及び「無効」のいずれか一方が選択可能とされている。
【００４０】
販売者によって、「パッケージ名」、「説明」及び「ライセンス制御有無」のそれぞれに対する値がパッケージ情報入力画面５１０において選択又は入力され、次へボタン５１１が押下されると、販売者端末２０のブラウザ部２１は、選択又は入力された値を含む入力情報をクラウドシステム１０へ送信する。
【００４１】
ステップＳ１０３において、クラウドシステム１０のパッケージ生成部１１は、当該入力情報を受信し（受け付け）、当該入力情報に含まれる各値に基づいて、対象パッケージに係るパッケージ情報及びサービス定義をパッケージ情報記憶部１２２又はサービス定義記憶部１２３に記憶する。
【００４２】
図８は、パッケージ情報記憶部１２２に記憶されるパッケージ情報の構成例を示す図である。図８に示されるように、パッケージ情報は、「パッケージＩＤ」、「パッケージ名」、「パッケージの説明」、「サービスクラス」及び「アプリリスト」等の項目を含む。
【００４３】
「パッケージＩＤ」は、パッケージの識別情報であり、その値はパッケージごとに異なる。「パッケージ名」及び「パッケージの説明」については、図７において説明した通りである。「サービスクラス」は、当該パッケージに関連付くサービス定義の識別情報である。「アプリリスト」は、当該パッケージに含まれる各アプリのアプリＩＤのリストである。
【００４４】
ステップＳ１０３では、パッケージ生成部１１が、対象パッケージのパッケージ情報を記憶するためのレコード（以下、「対象パッケージ情報レコード」という。）をパッケージ情報記憶部１２２に生成し、対象パッケージ情報レコードの「パッケージＩＤ」、「パッケージ名」、「パッケージの説明」及び「サービスクラス」に対して値を記憶する。「パッケージ名」及び「パッケージの説明」には、受信された入力情報に含まれている値が記憶される。「パッケージＩＤ」及び「サービスクラス」のそれぞれの値は、パッケージ生成部１１が、他のパッケージ情報又は他のサービス定義と重複しないように自動的に生成する。
【００４５】
また、図９は、サービス定義記憶部１２３に記憶されるサービス定義の構成例を示す図である。図９に示されるように、サービス定義は、「サービスクラス」、「サービス名」、「サービスの説明」、「サービスタイプ」及び「ライセンス制御有無」等の項目を含む。
【００４６】
「サービスクラス」及び「ライセンス制御有無」は、上記した通りである。「サービス名」は、サービスの名前である。「サービスの説明」は、サービスの内容の説明である。「サービスタイプ」は、サービスの種別を示す情報である。本実施の形態では、「サービスタイプ」の値は「クラウドアプリケーション」に固定される。
【００４７】
ステップＳ１０３では、パッケージ生成部１１が、対象パッケージのサービス定義を記憶するためのレコード（以下、「対象サービス定義レコード」という。）をサービス定義記憶部１２３に生成し、対象サービス定義レコードの「サービスクラス」、「サービス名」、「サービスの説明」、「サービスタイプ」及び「ライセンス制御有無」に対して値を記憶する。「サービスクラス」には、対象パッケージのパッケージ情報の「サービスクラス」と同じ値が記憶される。「サービス名」、「サービスの説明」のそれぞれには、対象パッケージのパッケージ情報の「パッケージ名」、「パッケージの説明」と同じ値が記憶される。「サービスタイプ」には、「クラウドアプリケーション」が記憶される。「サービス制御有無」には、受信された入力情報に含まれている値が記憶される。
【００４８】
続いて、パッケージ生成部１１は、アプリ情報記憶部１２１に記憶されているアプリ情報の一覧を取得する（Ｓ１０４）。
【００４９】
図１０は、アプリ情報記憶部１２１に記憶されているアプリ情報の構成例を示す図である。図１０に示されるように、アプリ情報は、「アプリＩＤ」、「アプリ名」、「アプリの説明」、「アプリタイプ」、「作成日」及び「状態」等の項目を含む。
【００５０】
「アプリＩＤ」は、アプリの識別情報であり、その値はアプリごとに異なる。「アプリ名」は、アプリの名前である。「アプリの説明」は、アプリに関する説明である。「アプリタイプ」は、アプリの利用時における認証の要否を示す項目であり、「認証要」又は「認証不要」の値が設定される。「作成日」は、アプリが作成された年月日である。「状態」は、販売に関するアプリの状態を示す項目である。当該状態としては、「利用可能」、「一時停止」、「公開終了」等が有る。「利用可能」は、販売可能な状態である。「一時停止」は、販売が一時的に停止されている状態（例えば、不具合の修正待ちの状態等の状態）である。「公開終了」は、販売が終了となった状態である。
【００５１】
続いて、パッケージ生成部１１は、対象パッケージに含めるアプリを選択させるためのアプリ選択画面の表示データを、アプリ情報記憶部１２１から取得したアプリ情報の一覧に基づいて生成し、当該表示データを販売者端末２０へ送信する（Ｓ１０５）。販売者端末２０のブラウザ部２１は、当該表示データを受信すると、当該表示データに基づいて、アプリ選択画面を表示する。
【００５２】
図１１は、アプリ選択画面の表示例を示す図である。図１１において、アプリ選択画面５２０は、絞り込み条件入力領域５２１及びアプリ一覧表示領域５２２等を含む。
【００５３】
絞り込み条件入力領域５２１は、アプリ一覧表示領域５２２において表示対象とするアプリ情報を絞り込むための条件の入力を受け付けるための領域である。図１１では、「アプリ名」及び「状態」によって表示対象の絞り込みが可能とされた例が示されているが、アプリ情報を構成する他の項目による絞り込みが可能とされてもよい。なお、全ての条件が空欄の場合（指定されない場合）、全てのアプリ情報が表示対象とされる。
【００５４】
アプリ一覧表示領域５２２は、表示対象とされたアプリ情報の一覧が表示され、対象パッケージに含めるアプリのアプリ情報の選択を受け付けるためのチェックボタンを含む領域である。但し、「状態」が「公開終了」又は「一時停止」であるアプリ情報は、選択不能とされる。
【００５５】
アプリ一覧表示領域５２２において１以上のアプリ情報が選択されて、ＯＫボタン５２３が押下されると、販売者端末２０のブラウザ部２１は、選択された各アプリ情報のアプリＩＤの一覧をクラウドシステム１０へ送信する。
【００５６】
ステップＳ１０６において、パッケージ生成部１１は、当該一覧を受信する（受け付ける）と、対象パッケージ情報のレコード（図８）の「アプリリスト」に当該一覧を記憶する。
【００５７】
続いて、ライセンス生成部１２は、対象パッケージのライセンス定義（図９）の「ライセンス制御有無」の値が「有効」であるか否かを判定する（Ｓ１０７）。当該値が「有効」である場合（Ｓ１０７でＹｅｓ）、ライセンス生成部１２は、ライセンス定義を入力させるためのライセンス定義作成画面の表示データを販売者端末２０へ送信する（Ｓ１０８）。販売者端末２０のブラウザ部２１は、当該表示データを受信すると、当該表示データに基づいて、ライセンス定義作成画面を表示する。
【００５８】
図１２は、ライセンス定義作成画面の表示例を示す図である。図１２において、ライセンス定義作成画面５３０は、ライセンス定義を構成する項目である「ライセンス定義名」、「ライセンス種別」及び「有効期間」等の入力欄を含む。
【００５９】
「ライセンス定義名」は、ライセンス定義の名前である。「ライセンス種別」は、ユーザライセンスであるのかデバイスライセンスであるのかのライセンスの種別（種類）である。したがって、図１２では、「ユーザライセンス」及び「デバイスライセンス」のいずれか一方が選択可能とされている。「有効期間」は、ライセンスの有効期間である。図１２では、月単位若しくは日単位での指定、又は無期限の指定が可能とされている。
【００６０】
販売者によって、「ライセンス定義名」、「ライセンス種別」及び「有効期間」のそれぞれの値が、ライセンス定義作成画面５３０において選択又は入力され、作成ボタン５３１が押下されると、販売者端末２０のブラウザ部２１は、選択又は入力された値を含む入力情報をクラウドシステム１０へ送信する。
【００６１】
ステップＳ１０９において、クラウドシステム１０のライセンス生成部１２は、当該入力情報を受信し（受け付け）、当該入力情報に含まれる各値に基づくライセンス定義（以下、「対象ライセンス定義」という。）をライセンス定義記憶部１２４に記憶する。
【００６２】
図１３は、ライセンス定義記憶部１２４に記憶されるライセンス定義の構成例を示す図である。図１３に示されるように、ライセンス定義は、「ライセンスコード」、「ライセンス定義名」、「ライセンス種別」、「有効期間」及び「サービスクラス」等の項目を含む。
【００６３】
「ライセンスコード」は、ライセンス定義の識別情報であり、その値はライセンス定義ごとに異なる。「ライセンス定義名」、「ライセンス種別」及び「有効期間」は上記した通りである。「サービスクラス」は、当該ライセンス定義が関連付けられるパッケージに対応するサービス定義の「サービスクラス」の値である。
【００６４】
ステップＳ１０９では、ライセンス生成部１２が、対象ライセンス定義を記憶するためのレコード（以下、「対象ライセンス定義レコード」という。）をライセンス定義記憶部１２４に生成し、対象ライセンス定義レコードの「ライセンスコード」、「ライセンス定義名」、「ライセンス種別」、「有効期間」及び「サービスクラス」に対して値を記憶する。「ライセンスコード」の値は、パッケージ生成部１１が、他のライセンス定義と重複しないように自動的に生成する。「ライセンス定義名」、「ライセンス種別」及び「有効期間」には、受信された入力情報に含まれている値が記憶される。「サービスクラス」には、対象パッケージのサービス定義（図９）の「サービスクラス」の値が記憶される。
【００６５】
続くステップＳ１１０及びＳ１１１において、判定部１３は、対象パッケージに含まれるアプリの中に、対象ライセンス定義の適用要件を満たさないアプリの有無を判定するための処理を実行する。
【００６６】
具体的には、判定部１３は、対象ライセンス定義（図１３）の「ライセンス種別」の値が「ユーザライセンス」であるか否かを判定する（Ｓ１１０）。当該値が「ユーザライセンス」である場合（Ｓ１１０でＹｅｓ）、判定部１３は、対象パッケージのパッケージ情報（図８）の「アプリリスト」にアプリＩＤが含まれているいずれかのアプリのアプリ情報（図１０）の「アプリタイプ」の値が、「認証不要」であるか否かを判定する（Ｓ１１１）。すなわち、対象パッケージに、認証が不要であるアプリが含まれているか否かが判定される。
【００６７】
対象パッケージに、認証が不要であるアプリが含まれている場合（Ｓ１１１でＹｅｓ）、出力部１４は、警告メッセージを含む警告画面の表示データを販売者端末２０へ送信する（Ｓ１１２）。販売者端末２０のブラウザ部２１は、当該表示データを受信すると、当該表示データに基づいて、警告画面を表示する。
【００６８】
図１４は、警告画面の表示例を示す図である。図１４に示されるように、警告画面５４０は、対象パッケージに認証不要のアプリが含まれているため、ユーザライセンスのライセンス定義を作成できないことを示すメッセージを含む。警告画面５４０を参照した販売者は、対象パッケージが、対象ライセンス定義の要件を満たしていないことを容易に確認することができる。
【００６９】
ステップＳ１１１に続いて、ステップＳ１０７でＮｏの場合、ステップＳ１１０でＮｏの場合、又はステップＳ１１１でＮｏの場合、クラウドシステム１０は、図６の処理手順を終了する。
【００７０】
なお、第１の実施の形態では、対象ライセンス定義の適用要件を対象パッケージが満たしていない場合であっても、対象パッケージ及び対象ライセンス定義は生成されてしまう。したがって、警告画面５４０を参照した販売者は、改めて、対象パッケージのアプリリスト又は対象ライセンス定義のライセンス種別等について修正作業を行う。
【００７１】
上述したように、第１の実施の形態によれば、対象パッケージが、対象ライセンス定義の適用要件を満たしていない場合、警告画面５４０が販売者端末２０に表示される。したがって、第１の実施の形態によれば、販売者が、ライセンスに対するパッケージの適否を確認可能とすることができる。
【００７２】
次に、第２の実施の形態について説明する。第２の実施の形態では第１の実施の形態と異なる点について説明する。したがって、特に言及されない点については、第１の実施の形態と同様でもよい。
【００７３】
図１５は、第２の実施の形態においてクラウドシステム１０が実行する処理手順の一例を説明するためのフローチャートである。図１５中、図６と同一ステップには同一ステップ番号を付し、その説明は省略する。
【００７４】
図１５では、認証が不要であるアプリが対象パッケージに含まれている場合（Ｓ１１１でＹｅｓ）に実行される処理手順が図６と異なる。この場合、出力部１４は、エラーメッセージを含むエラー画面の表示データを販売者端末２０へ送信する（Ｓ２０１）。販売者端末２０のブラウザ部２１は、当該表示データを受信すると、当該表示データに基づいて、エラー画面を表示する。
【００７５】
図１６は、第２の実施の形態におけるエラー画面の表示例を示す図である。図１６に示されるように、エラー画面５５０は、対象パッケージに認証不要なアプリが含まれているにも関わらず、ユーザライセンスのライセンス定義が作成されたため、対象パッケージの作成に失敗したことを示すメッセージを含む。
【００７６】
ステップＳ２０１に続いて、クラウドシステム１０は、対象パッケージ情報レコード、対象サービス定義レコード及び対象ライセンス定義レコードを、それぞれパッケージ情報記憶部１２２、サービス定義記憶部１２３、ライセンス定義記憶部１２４から削除する（Ｓ２０２）。その結果、対象パッケージ及び対象ライセンス定義等の作成は無効となる。
【００７７】
なお、エラー画面５５０（図１６）のボタン５５１が押下されると、販売者端末２０のブラウザ部２１は、パッケージの生成の開始要求をクラウドシステム１０へ送信する。その結果、ステップＳ１０１以降が改めて実行される。
【００７８】
上述したように、第２の実施の形態によれば、対象パッケージが、対象ライセンス定義の適用要件を満たしていない場合、エラー画面５５０が販売者端末２０に表示される。したがって、第２の実施の形態によれば、販売者が、ライセンスに対するパッケージの適否を確認可能とすることができる。
【００７９】
また、第２の実施の形態では、対象パッケージが、対象ライセンス定義の適用要件を満たしていない場合、対象パッケージ情報レコード、対象サービス定義レコード及び対象ライセンス定義レコードのそれぞれが、パッケージ情報記憶部１２２、サービス定義記憶部１２３、ライセンス定義記憶部１２４から削除される。すなわち、対象パッケージ及び対象ライセンス定義の作成は、無効とされる。その結果、対象ライセンス定義の要件を満たさない対象パッケージが作成されたままの状態が発生するのを回避することができる。
【００８０】
次に、第３の実施の形態について説明する。第３の実施の形態では第１の実施の形態と異なる点について説明する。したがって、特に言及されない点については、第１の実施の形態と同様でもよい。
【００８１】
図１７は、第３の実施の形態においてクラウドシステム１０が実行する処理手順の一例を説明するためのフローチャートである。図１７中、図６と同一ステップには同一ステップ番号を付し、その説明は省略する。
【００８２】
図１７では、認証が不要であるアプリが対象パッケージに含まれている場合（Ｓ１１１でＹｅｓ）に実行される処理手順が図６と異なる。この場合、出力部１４は、エラーメッセージを含むエラー画面の表示データを販売者端末２０へ送信する（Ｓ３０１）。販売者端末２０のブラウザ部２１は、当該表示データを受信すると、当該表示データに基づいて、エラー画面を表示する。
【００８３】
図１８は、第３の実施の形態におけるエラー画面の表示例を示す図である。図１８に示されるように、エラー画面５６０は、対象パッケージに認証不要なアプリが含まれているにも関わらず、ユーザライセンスのライセンス定義が作成されたため、対象パッケージの作成に失敗したことを示すと共に、アプリの選択のし直し又はライセンス定義の作成のし直しを促すメッセージを含む。エラー画面５６０は、また、当該メッセージに対応させて、ボタン５６１及びボタン５６２を含む。ボタン５６１は、アプリの選択のし直しの指示を受け付けるためのボタンである。ボタン５６２は、ライセンス定義の作成のし直しの指示を受け付けるためのボタンである。
【００８４】
販売者は、対象パッケージに含めるアプリを変更する場合、ボタン５６１を押下し、ライセンス種別を「ユーザライセンス」から「デバイスライセンス」へ変更する場合、ボタン５６２を押下する。販売者端末２０のブラウザ部２１は、押下されたボタンの識別情報をクラウドシステム１０に送信する。
【００８５】
クラウドシステム１０において当該識別情報が受信されると、当該識別情報がボタン５６１の識別情報であれば（Ｓ３０２でＹｅｓ）、パッケージ生成部１１等は、ステップＳ１０４以降を再実行する。すなわち、この場合、パッケージ生成部１１は、対象パッケージに含めるアプリの再選択を受け付ける。一方、当該識別情報がボタン５６２の識別情報であれば（Ｓ３０２でＮｏ）、ライセンス生成部１２等は、ステップ１０８以降を再実行する。すなわち、この場合、ライセンス生成部１２は、ライセンス種別等の再選択を受け付ける。
【００８６】
上述したように、第３の実施の形態によれば、対象パッケージが、対象ライセンス定義の適用要件を満たしていない場合、エラー画面５６０が販売者端末２０に表示される。したがって、第３の実施の形態によれば、販売者が、ライセンスに対するパッケージの適否を確認可能とすることができる。
【００８７】
また、第３の実施の形態では、対象パッケージのアプリリストの選択のし直し、又はライセンス定義の生成のし直しの機会が販売者に対して与えられる。すなわち、設定すべき情報の一部についてのみの設定のし直しの機会が販売者に対して与えられる。その結果、販売者による作業を効率化することができる。
【００８８】
なお、上記各実施の形態では、ユーザライセンスのライセンス定義の適用要件が、認証が必要なアプリであることである例を示したが、他の適用要件を有するライセンス定義について上記各実施の形態が適用されてもよい。例えば、アプリ（アプリ情報）ごとに利用可能な端末（クライアント）の機種（例えば、スマートフォン、プリンタ、複合機、コピー機等）が設定されている状態において、デバイスライセンスを適用可能な機種が、特定の機種（例えば、複合機）に決まっているとする。この場合、複合機において利用可能でないアプリを含むパッケージが生成され、当該パッケージに対してデバイスライセンスのライセンス定義が生成されようとした場合に、当該パッケージが当該ライセンス定義の適用要件を満たしていないと判定されてもよい。
【００８９】
また、ライセンス定義の適用要件は、判定部１３のロジックとしてではなく、例えば、ライセンス定義の項目として設定可能とされてもよい。この場合、判定部１３は、ライセンス定義の「適用要件」の項目を参照して、当該「適用要件」が満たされているか否かを判定してもよい。
【００９０】
また、上記各実施の形態では、アプリを利用する機器が画像形成装置３０である例を示したが、画像形成装置３０以外の機器において利用されるアプリに関して本実施の形態が適用されてもよい。例えば、ＰＪ（Projector：プロジェクタ）、ＩＷＢ（Interactive White Board：相互通信が可能な電子式の黒板機能を有する白板）、デジタルサイネージ等の出力装置、ＨＵＤ（Head Up Display）装置、産業機械、撮像装置、集音装置、医療機器、ネットワーク家電、ノートＰＣ（Personal Computer）、携帯電話、スマートフォン、タブレット端末、ゲーム機、ＰＤＡ（Personal Digital Assistant）、デジタルカメラ、ウェアラブルＰＣ又はデスクトップＰＣ等において利用されるアプリに関して上記各実施の形態が適用されてもよい。
【００９１】
なお、上記で説明した実施形態の各機能は、一又は複数の処理回路によって実現することが可能である。ここで、本明細書における「処理回路」とは、電子回路により実装されるプロセッサのようにソフトウェアによって各機能を実行するようプログラミングされたプロセッサや、上記で説明した各機能を実行するよう設計されたASIC(Application Specific Integrated Circuit)、DSP（digital signal processor）、FPGA（field programmable gate array）や従来の回路モジュール等のデバイスを含むものとする。
【００９２】
なお、上記各実施の形態において、クラウドシステム１０は、情報処理装置の一例である。パッケージ生成部１１は、第１の受付部の一例である。ライセンス生成部１２は、第２の受付部の一例である。クラウドシステム１０及び販売者端末２０は、情報処理システムの一例である。販売者端末２０は、端末の一例である。
【００９３】
以上、本発明の実施の形態について詳述したが、本発明は斯かる特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
【符号の説明】
【００９４】
１０          クラウドシステム
１１          パッケージ生成部
１２          ライセンス生成部
１３          判定部
１４          出力部
２０          販売者端末
２１          ブラウザ部
３０          画像形成装置
１００        ドライブ装置
１０１        記録媒体
１０２        補助記憶装置
１０３        メモリ装置
１０４        ＣＰＵ
１０５        インタフェース装置
１２１        アプリ情報記憶部
１２２        パッケージ情報記憶部
１２３        サービス定義記憶部
１２４        ライセンス定義記憶部
Ｂ            バス
Ｅ１          ユーザ環境
Ｎ１          ネットワーク
【先行技術文献】
【特許文献】
【００９５】
【特許文献１】特開２０１４−１４２９５３号公報
【図１】
2020052841.tif 000003
【図２】
2020052841.tif 000004
【図３】
2020052841.tif 000005
【図４】
2020052841.tif 000006
【図５】
2020052841.tif 000007
【図６】
2020052841.tif 000008
【図７】
2020052841.tif 000009
【図８】
2020052841.tif 000010
【図９】
2020052841.tif 000011
【図１０】
2020052841.tif 000012
【図１１】
2020052841.tif 000013
【図１２】
2020052841.tif 000014
【図１３】
2020052841.tif 000015
【図１４】
2020052841.tif 000016
【図１５】
2020052841.tif 000017
【図１６】
2020052841.tif 000018
【図１７】
2020052841.tif 000019
【図１８】
2020052841.tif 000020