(57)【要約】【課題】ユーザ固有の情報を反映させて、利用を推奨するアプリケーションを決定する。【解決手段】本発明の情報処理装置は、第１の記憶部と取得部と第２の記憶部と特定部と決定部と送信部とを備える。第１の記憶部は、機器情報ごとに、１以上の顧客情報を対応付けた対応情報を記憶する。取得部は、機器から、機器情報を含み、かつ、画面情報を要求する画面情報要求を取得する。第２の記憶部は、アプリケーションと顧客情報との関係を示し、かつ、利用推奨アプリケーションの決定に用いられる関係情報を記憶する。特定部は、画面情報要求に含まれる機器情報に対応する顧客情報を特定する。決定部は、特定部により特定された顧客情報と、関係情報とに基づいて、１以上の利用推奨アプリケーションを決定する。送信部は、画面情報要求に対する応答として、決定部により決定された１以上の利用推奨アプリケーションを示す画面情報を機器へ送信する。【選択図】図１
2020074165.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークを介して、記録媒体上に画像を形成する画像形成装置としての１以上の機器と接続される情報処理装置であって、
前記機器を識別する機器情報ごとに、前記機器を利用するユーザの固有の情報を示す１以上の顧客情報を対応付けた対応情報を記憶する第１の記憶部と、
前記機器から、前記機器情報を含み、かつ、前記機器に対して利用を推奨する利用推奨アプリケーションを示す画面情報を要求する画面情報要求を取得する取得部と、
アプリケーションと前記顧客情報との関係を示し、かつ、前記利用推奨アプリケーションの決定に用いられる関係情報を記憶する第２の記憶部と、
前記取得部により取得された前記画面情報要求に含まれる前記機器情報に対応する前記顧客情報を特定する特定部と、
前記特定部により特定された前記顧客情報と、前記関係情報とに基づいて、１以上の前記利用推奨アプリケーションを決定する決定部と、
前記画面情報要求に対する応答として、前記決定部により決定された１以上の前記利用推奨アプリケーションを示す前記画面情報を前記機器へ送信する送信部と、を備える、
情報処理装置。
【請求項２】
前記関係情報は、
複数種類の前記顧客情報と複数種類のアプリケーションとの組み合わせごとに、累積インストール数を対応付けた情報であり、
前記決定部は、
前記特定部により特定された前記顧客情報に対応付けられた複数種類のアプリケーションの中から、累積インストール数が最も多いアプリケーションを前記利用推奨アプリケーションとして決定する、
請求項１に記載の情報処理装置。
【請求項３】
前記決定部は、
前記特定部により特定された前記顧客情報に対応付けられた複数種類のアプリケーションの中から、累積インストール数が多い順に所定数のアプリケーションを選択し、その選択した前記所定数のアプリケーションを前記利用推奨アプリケーションとして決定する、
請求項２に記載の情報処理装置。
【請求項４】
前記対応情報は、
前記機器情報ごとに複数種類の前記顧客情報を対応付けた情報であり、
前記決定部は、
前記特定部により特定された複数種類の前記顧客情報ごとに、該顧客情報に対応付けられた複数種類のアプリケーションの中から、対応付けられた累積インストール数が最も多いアプリケーションを前記利用推奨アプリケーションとして決定する、
請求項２に記載の情報処理装置。
【請求項５】
前記決定部は、
前記特定部により特定された複数種類の前記顧客情報ごとに、該顧客情報に対応付けられた複数種類のアプリケーションの中から、対応付けられた累積インストール数が多い順に所定数のアプリケーションを選択し、その選択した前記所定数のアプリケーションを前記利用推奨アプリケーションとして決定する、
請求項４に記載の情報処理装置。
【請求項６】
前記対応情報は、
前記機器情報ごとに複数種類の前記顧客情報を対応付けた情報であり、
前記決定部は、
前記特定部により特定された複数種類の前記顧客情報ごとに、該顧客情報に対応付けられた複数種類のアプリケーションの各々に対応付けられた累積インストール数を特定した後、複数種類のアプリケーションごとに、前記特定部により特定された複数種類の前記顧客情報と１対１に対応する複数の累積インストール数の和を示す累積和を求め、前記累積和の値が最も大きいアプリケーションを、前記利用推奨アプリケーションとして決定する、
請求項２に記載の情報処理装置。
【請求項７】
前記決定部は、
複数種類のアプリケーションの中から、前記累積和の値が大きい順に所定数のアプリケーションを選択し、その選択した前記所定数のアプリケーションを前記利用推奨アプリケーションとして決定する、
請求項６に記載の情報処理装置。
【請求項８】
前記顧客情報の種類ごとに予め定められた重みが設定され、
前記決定部は、複数種類のアプリケーションごとに、前記特定部により特定された複数種類の前記顧客情報と１対１に対応する複数の累積インストール数の重み付き加算を行い、前記重み付き加算により得られた前記累積和が最も大きいアプリケーションを、前記利用推奨アプリケーションとして決定する、
請求項６に記載の情報処理装置。
【請求項９】
前記対応情報は、
前記機器情報ごとに複数種類の前記顧客情報を対応付けた情報であり、
前記関係情報は、
複数種類の前記顧客情報と複数種類のアプリケーションとの組み合わせごとに、累積インストール数を対応付けた情報であり、
前記決定部は、
前記特定部により特定された複数種類の前記顧客情報ごとに、該顧客情報に対応付けられた複数種類のアプリケーションの各々に対して、累積インストール数が多い順で順位を表す順位値を割り当てた後、複数種類のアプリケーションごとに、複数種類の前記顧客情報と１対１に対応する複数の前記順位値の和を示す順位和を求め、前記順位和の値が最も小さいアプリケーションを前記利用推奨アプリケーションとして決定する、
請求項１に記載の情報処理装置。
【請求項１０】
前記決定部は、
複数種類のアプリケーションの中から、前記順位和の値が小さい順に所定数のアプリケーションを選択し、その選択したアプリケーションを前記利用推奨アプリケーションとして決定する、
請求項９に記載の情報処理装置。
【請求項１１】
前記顧客情報ごとに予め定められた重みが設定され、
前記決定部は、複数種類のアプリケーションごとに、前記特定部により特定された複数種類の前記顧客情報と１対１に対応する複数の前記順位値の重み付き加算を行い、前記重み付き加算により得られた順位和が最も小さいアプリケーションを、前記利用推奨アプリケーションとして決定する、
請求項１０に記載の情報処理装置。
【請求項１２】
前記対応情報は、
前記機器情報ごとに複数種類の前記顧客情報を対応付けた情報であり、
前記関係情報は、
複数種類の前記顧客情報と複数種類のアプリケーションとの組み合わせごとに、利用の可否を示す属性情報を対応付けた情報であり、
前記決定部は、
前記特定部により特定された複数種類の前記顧客情報ごとに、該顧客情報に対応付けられた複数種類のアプリケーションの中から、利用可能を示す前記属性情報が対応付けられた１以上のアプリケーションを選択し、選択された数が最も多いアプリケーションを前記利用推奨アプリケーションとして決定する、
請求項１に記載の情報処理装置。
【請求項１３】
前記決定部は、
複数種類のアプリケーションの中から、選択された数が多い順に所定数のアプリケーションを選択し、その選択した前記所定数のアプリケーションを前記利用推奨アプリケーションとして決定する、
請求項１２に記載の情報処理装置。
【請求項１４】
前記画面情報要求には、該画面情報要求の要求元の前記機器にインストール済みのアプリケーションを識別するアプリケーション識別情報が含まれ、
１以上の前記利用推奨アプリケーションの中に、前記画面情報要求に含まれる前記アプリケーション識別情報で識別されるアプリケーションと一致するアプリケーションが存在する場合は、該アプリケーションを前記利用推奨アプリケーションから除外する除外部をさらに有する、
請求項１乃至１３のうちの何れか１項に記載の情報処理装置。
【請求項１５】
ネットワークを介して、記録媒体上に画像を形成する画像形成装置としての１以上の機器と接続される情報処理装置に搭載されたコンピュータに、
前記機器から、前記機器を識別する機器情報を含み、かつ、前記機器に対して利用を推奨する利用推奨アプリケーションを示す画面情報を要求する画面情報要求を取得する取得ステップと、
前記機器情報ごとに、前記機器を利用するユーザの固有の情報を示す１以上の顧客情報を対応付けた対応情報を参照して、前記取得ステップにより取得された前記画面情報要求に含まれる前記機器情報に対応する前記顧客情報を特定する特定ステップと、
前記特定ステップにより特定された前記顧客情報と、アプリケーションと前記顧客情報との関係を示し、かつ、前記利用推奨アプリケーションの決定に用いられる関係情報とに基づいて、１以上の前記利用推奨アプリケーションを決定する決定ステップと、
前記画面情報要求に対する応答として、前記決定ステップにより決定された１以上の前記利用推奨アプリケーションを示す前記画面情報を前記機器へ送信する送信ステップと、を実行させるためのプログラム。
【請求項１６】
ネットワークを介して、記録媒体上に画像を形成する画像形成装置としての１以上の機器と接続され、かつ、１以上の情報処理装置を含む情報処理システムであって、
前記機器を識別する機器情報ごとに、前記機器を利用するユーザの固有の情報を示す１以上の顧客情報を対応付けた対応情報を記憶する第１の記憶部と、
前記機器から、前記機器情報を含み、かつ、前記機器に対して利用を推奨する利用推奨アプリケーションを示す画面情報を要求する画面情報要求を取得する取得部と、
アプリケーションと前記顧客情報との関係を示し、かつ、前記利用推奨アプリケーションの決定に用いられる関係情報を記憶する第２の記憶部と、
前記取得部により取得された前記画面情報要求に含まれる前記機器情報に対応する前記顧客情報を特定する特定部と、
前記特定部により特定された前記顧客情報と、前記関係情報とに基づいて、１以上の前記利用推奨アプリケーションを決定する決定部と、
前記画面情報要求に対する応答として、前記決定部により決定された１以上の前記利用推奨アプリケーションを示す前記画面情報を前記機器へ送信する送信部と、を備える、
情報処理システム。
【請求項１７】
ネットワークを介して、記録媒体上に画像を形成する画像形成装置としての１以上の機器と接続され、かつ、１以上の情報処理装置を含む情報処理システムによる情報処理方法であって、
前記機器から、前記機器を識別する機器情報を含み、かつ、前記機器に対して利用を推奨する利用推奨アプリケーションを示す画面情報を要求する画面情報要求を取得する取得ステップと、
前記機器情報ごとに、前記機器を利用するユーザの固有の情報を示す１以上の顧客情報を対応付けた対応情報を参照して、前記取得ステップにより取得された前記画面情報要求に含まれる前記機器情報に対応する前記顧客情報を特定する特定ステップと、
前記特定ステップにより特定された前記顧客情報と、アプリケーションと前記顧客情報との関係を示し、かつ、前記利用推奨アプリケーションの決定に用いられる関係情報とに基づいて、１以上の前記利用推奨アプリケーションを決定する決定ステップと、
前記画面情報要求に対する応答として、前記決定ステップにより決定された１以上の前記利用推奨アプリケーションを示す前記画面情報を前記機器へ送信する送信ステップと、を含む、
情報処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、プログラム、情報処理システムおよび情報処理方法に関する。
【背景技術】
【０００２】
近年、携帯電話や情報携帯端末を代表とする様々な通信機器の普及により、通信機器上で利用可能なアプリケーションの開発が盛んになってきている。これらのアプリケーションの利用を促進するため、アプリケーションを紹介し、そのまま通信機器にダウンロードやインストールすることができるウェブサイトやアプリケーションも開発されている。
【０００３】
例えば特許文献１では、アプリケーションやコンテンツ等のお勧め情報を、ユーザが所有する端末に表示する技術が開示されている。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、従来においては、ユーザの固有の情報（顧客情報）を反映させて、利用を推奨するアプリケーションを決定する構成は存在しなかった。
【０００５】
本発明は、上記に鑑みてなされたものであり、ユーザの固有の情報を反映させて、利用を推奨するアプリケーションを決定することが可能な情報処理装置、プログラム、情報処理システムおよび情報処理方法を提供することを目的とする。
【課題を解決するための手段】
【０００６】
上述した課題を解決し、目的を達成するために、本発明は、ネットワークを介して、記録媒体上に画像を形成する画像形成装置としての１以上の機器と接続される情報処理装置であって、前記機器を識別する機器情報ごとに、前記機器を利用するユーザの固有の情報を示す１以上の顧客情報を対応付けた対応情報を記憶する第１の記憶部と、前記機器から、前記機器情報を含み、かつ、前記機器に対して利用を推奨する利用推奨アプリケーションを示す画面情報を要求する画面情報要求を取得する取得部と、アプリケーションと前記顧客情報との関係を示し、かつ、前記利用推奨アプリケーションの決定に用いられる関係情報を記憶する第２の記憶部と、前記取得部により取得された前記画面情報要求に含まれる前記機器情報に対応する前記顧客情報を特定する特定部と、前記特定部により特定された前記顧客情報と、前記関係情報とに基づいて、１以上の前記利用推奨アプリケーションを決定する決定部と、前記画面情報要求に対する応答として、前記決定部により決定された１以上の前記利用推奨アプリケーションを示す前記画面情報を前記機器へ送信する送信部と、を備える。
【発明の効果】
【０００７】
本発明によれば、ユーザの固有の情報を反映させて、利用を推奨するアプリケーションを決定することができる。
【図面の簡単な説明】
【０００８】
【図１】図１は、システムの構成の一例を示す図である。
【図２】図２は、サーバのハードウェア構成の一例を示す図である。
【図３】図３は、サーバが有する機能の一例を示す図である。
【図４】図４は、アプリ情報管理モジュールが有する機能の一例を示す図である。
【図５】図５は、アプリ情報ＤＢに記憶された情報の一例を示す図である。
【図６】図６は、制御部が有する機能の一例を示す図である。
【図７】図７は、顧客情報管理モジュールが有する機能の一例を示す図である。
【図８】図８は、第１の情報の一例を示す図である。
【図９】図９は、第２の情報の一例を示す図である。
【図１０】図１０は、おすすめアプリ情報管理モジュールが有する機能の一例を示す図である。
【図１１】図１１は、第３の情報の一例を示す図である。
【図１２】図１２は、第４の情報の一例を示す図である。
【図１３】図１３は、第５の情報の一例を示す図である。
【図１４】図１４は、ライセンス管理モジュールが有する機能の一例を示す図である。
【図１５】図１５は、第６の情報の一例を示す図である。
【図１６】図１６は、第７の情報の一例を示す図である。
【図１７】図１７は、第８の情報の一例を示す図である。
【図１８】図１８は、制御部が有する機能の一例を示す図である。
【図１９】図１９は、アプリダウンロード管理モジュールが有する機能の一例を示す図である。
【図２０】図２０は、サーバの変形例を示す図である。
【図２１】図２１は、ＭＦＰのハードウェア構成の一例を示す図である。
【図２２】図２２は、ＭＦＰのソフトウェア構成の一例を示す図である。
【図２３】図２３は、操作部が有する機能の一例を示す図である。
【図２４】図２４は、操作画面の一例を示す図である。
【図２５】図２５は、アプリケーション一覧画面の一例を示す図である。
【図２６】図２６は、インストール指示画面の一例を示す図である。
【図２７】図２７は、インストール確認画面の一例を示す図である。
【図２８】図２８は、入力画面の一例を示す図である。
【図２９】図２９は、表示制御部から実行部へ通知される情報の一例を示す図である。
【図３０】図３０は、削除指示画面の一例を示す図である。
【図３１】図３１は、削除確認画面の一例を示す図である。
【図３２】図３２は、表示制御部から実行部へ通知される情報の一例を示す図である。
【図３３】図３３は、実施形態のシステムの動作手順の一例を示すシーケンス図である。
【図３４】図３４は、実施形態のシステムの動作手順の一例を示すシーケンス図である。
【図３５】図３５は、実施形態のシステムの動作手順の一例を示すシーケンス図である。
【図３６】図３６は、アプリケーション一覧画面の一例を示す図である。
【図３７】図３７は、各アプリケーションの順位値の一例を示す図である。
【図３８】図３８は、第９の情報の一例を示す図である。
【図３９】図３９は、第１０の情報の一例を示す図である。
【図４０】図４０は、第１１の情報の一例を示す図である。
【発明を実施するための形態】
【０００９】
以下、添付図面を参照しながら、本発明に係る情報処理装置、プログラム、情報処理システムおよび情報処理方法の実施形態を詳細に説明する。以下では、情報処理システムに含まれる機器の一例として、画像形成装置の一態様である複合機（ＭＦＰ：Multifunction  Peripheral）を例に挙げて説明するが、これに限られるものではない。なお、複合機とは、コピー機能、スキャナ機能、プリンタ機能、ファクス機能などの複数の異なる機能を有する装置である。
【００１０】
（第１の実施形態）
図１は、本実施形態のシステム（情報処理システム）１の構成の一例を示す図である。図１に示すように、システム１は、サーバ２と、例えばインターネットなどのネットワーク３を介してサーバ２に接続されるＭＦＰ４と、を備える。なお、図１の例では、システム１に含まれる機器として、１台のＭＦＰ４のみを例示しているが、これに限られるものではなく、システム１に含まれる機器の台数および種類は任意である。例えば機器として、ＰＣ（Personal  Computer）がシステム１に含まれる形態であってもよい。
【００１１】
サーバ２は、「情報処理装置」の一例であり、ＭＦＰ４からの要求に応じて、ＭＦＰ４に対して利用を推奨する利用推奨アプリケーション（以下の説明では「おすすめアプリ」と称する）を示す画面情報をＭＦＰ４へ送信する。以下、サーバ２の具体的な構成を説明する。
【００１２】
図２は、サーバ２のハードウェア構成の一例を示す図である。図２に示すように、サーバ２は、ＣＰＵ３０１と、ＲＯＭ３０２と、ＲＡＭ３０３と、通信Ｉ／Ｆ３０４と、入力装置３０５と、表示装置３０６とを備える。ＣＰＵ３０１は、サーバ２の動作を統括的に制御する。ＲＯＭ３０２は、プログラム等の各種のデータを記憶する不揮発性のメモリである。ＲＡＭ３０３は、ＣＰＵ３０１が実行する各種の処理の作業領域（ワークエリア）として機能する揮発性のメモリである。通信Ｉ／Ｆ３０４は、ネットワーク３と接続するためのインタフェースである。入力装置３０５は、ユーザによる操作の入力に用いられるデバイスであり、例えばマウスやキーボードなどで構成される。表示装置３０６は各種の情報を表示するデバイスであり、例えば液晶型ディスプレイ装置などで構成される。
【００１３】
図３は、サーバ２が有する機能の一例を示す図である。図３に示すように、サーバ２は、アプリ情報管理モジュール２１０と、顧客情報管理モジュール２２０と、おすすめアプリ情報管理モジュール２３０と、ライセンス管理モジュール２４０と、アプリダウンロード管理モジュール２５０とを有する。図３の例では、本実施形態に関するモジュールのみを例示しているが、サーバ２が有するモジュールはこれらに限られるものではない。
【００１４】
図４は、アプリ情報管理モジュール２１０が有する機能の一例を示す図である。アプリ情報管理モジュール２１０は、記憶部２１１と、制御部２１２と、画面提供部２１３と、設定部２１４と、を有している。なお、図４の例では、本実施形態に関する機能を主に例示しているが、アプリ情報管理モジュール２１０が有する機能はこれらに限られるものではない。
【００１５】
図４に示すように、記憶部２１１は、アプリ情報データベース（以下、「アプリ情報ＤＢ」と称する）３０７と、ユーザ情報データベース（以下、「ユーザ情報ＤＢ」と称する）３０８と、を有する。
【００１６】
図５は、アプリ情報ＤＢ３０７に記憶された情報の一例を示す図である。アプリ情報ＤＢ３０７は、複数のアプリケーション情報を記憶する。図５に示すように、複数のアプリケーション情報の各々は、該アプリケーションを識別するアプリＩＤと、該アプリケーションの使用権限（ライセンス）の認証に用いられるライセンスキーと、該アプリケーションの最新のバージョンを示すバージョン情報と、該アプリケーションの表示名称と、該アプリケーションを紹介するメッセージとを対応付けた情報である。以下の説明では、表示名称とメッセージとの組み合わせを、アプリケーションを説明するための「アプリ説明情報」と称する場合がある。
【００１７】
図４に戻って記憶部２１１の説明を続ける。ユーザ情報ＤＢ３０８は、例えば後述の設定部２１４による設定のための操作を行う権限を有するユーザの認証に必要な情報を記憶する。
【００１８】
次に、制御部２１２が有する機能を説明する。制御部２１２は、ＭＦＰ４からの要求に応じて、「おすすめアプリ」を示す画面情報をＭＦＰ４へ送信する制御を行う。ここでは、制御部２１２が有する機能は、サーバ２側のアプリケーションインタフェース（ＡＰＩ）により提供される。
【００１９】
図６は、制御部２１２が有する機能の一例を示す図である。図６に示すように、制御部２１２は、取得部２６１と、顧客情報要求部２６２と、おすすめアプリ要求部２６３と、生成部２６４と、送信部２６５と、設定制御部２６６と、を有している。
【００２０】
取得部２６１は、ＭＦＰ４から、該ＭＦＰ４を識別する機番（機器情報）を含み、かつ「おすすめアプリ」を示す画面情報を要求する画面情報要求を取得する。
【００２１】
顧客情報要求部２６２は、取得部２６１により画面情報要求が取得された場合、後述の顧客情報管理モジュール２２０に対して、その取得された画面情報要求に含まれる機番で識別されるＭＦＰ４を利用するユーザ（個人でもよいし、企業等の法人でもよい）の固有の情報を示す１以上の顧客情報を要求する。この例では、顧客情報要求部２６２は、後述の顧客情報管理モジュール２２０に対して、取得部２６１により取得された画面情報要求に含まれる機番を含み、かつ、対応する１以上の顧客情報を要求する顧客情報要求を送信する。そして、顧客情報要求に対する応答として、後述の顧客情報管理モジュール２２０から１以上の顧客情報を取得する。
【００２２】
ここで、顧客情報管理モジュール２２０が有する機能を説明する。図７は、顧客情報管理モジュール２２０が有する機能の一例を示す図である。図７に示すように、顧客情報管理モジュール２２０は、第１の記憶部２２１と、特定部２２２と、を有している。
【００２３】
第１の記憶部２２１は、１以上の機番ごとに、該機番で識別されるＭＦＰ４を利用するユーザの固有の情報を示す１以上の顧客情報を対応付けた対応情報を記憶する。この例では、対応情報は、１以上の機番ごとに複数種類の顧客情報を対応付けた情報であり、図８に示す第１の情報と、図９に示す第２の情報との組み合わせで構成されているが、これに限られるものではない。例えば対応情報は、１以上の機番ごとに１種類の顧客情報を対応付けた構成であっても構わない。
【００２４】
図８に示すように、第１の情報は、テナント（ＭＦＰ４が利用される環境を表すと考えてもよい）を識別するテナントＩＤと、ＭＦＰ４を識別する機番とを対応付けた情報である。図９に示すように、第２の情報は、テナントＩＤと、お客様名（個人でもよいし、企業等の法人でもよい）と、市場層（市場規模）を表す顧客情報と、業種を表す顧客情報と、拠点数を表す顧客情報とを対応付けた情報である。
【００２５】
図７の説明を続ける。特定部２２２は、顧客情報要求部２６２からの顧客情報要求を受信すると、対応情報を参照して、その受信した顧客情報要求に含まれる機番に対応する１以上の顧客情報を特定する。より具体的には、特定部２２２は、顧客情報要求部２６２からの顧客情報要求を受信すると、まず、上述の第１の情報を参照して、その受信した顧客情報要求に含まれる機番に対応するテナントＩＤを特定する。次に、特定部２２２は、上述の第２の情報を参照して、特定したテナントＩＤに対応する３種類の顧客情報（この例では、市場層を表す顧客情報、業種を表す顧客情報、拠点数を表す顧客情報）を特定する。そして、特定部２２２は、顧客情報要求に対する応答として、その特定した３つの顧客情報を顧客情報要求部２６２へ返信する。この例では、取得部２６１により取得された画面情報要求に含まれる機番に対応する顧客情報を特定する機能（「特定部」）は、特定部２２２の機能に対応すると考えてもよいし、顧客情報要求部２６２の機能と特定部２２２の機能との組み合わせに対応すると考えてもよい。以上が、顧客情報管理モジュール２２０が有する機能である。
【００２６】
以上に説明した特定部２２２の機能は、ＣＰＵ３０１がＲＯＭ３０２等の記憶装置に格納されたプログラムを実行することにより実現可能である。また、以上に説明した第１の記憶部２２１は、ＲＯＭ３０２またはＨＤＤ等の補助記憶装置により実現可能である。
【００２７】
図６に戻り、アプリ情報管理モジュール２１０の制御部２１２が有する機能の説明を続ける。おすすめアプリ要求部２６３は、顧客情報要求部２６２により１以上の顧客情報が取得された場合、後述のおすすめアプリ情報管理モジュール２３０に対して、「おすすめアプリ」を要求する。この例では、おすすめアプリ要求部２６３は、後述のおすすめアプリ情報管理モジュール２３０に対して、顧客情報要求部２６２により取得された１以上の顧客情報を含み、かつ、「おすすめアプリ」を要求するおすすめアプリ要求を送信する。そして、おすすめアプリ要求に対する応答として、後述のおすすめアプリ情報管理モジュール２３０から１以上の「おすすめアプリ」を取得する。
【００２８】
ここで、おすすめアプリ情報管理モジュール２３０が有する機能を説明する。図１０は、おすすめアプリ情報管理モジュール２３０が有する機能の一例を示す図である。図１０に示すように、おすすめアプリ情報管理モジュール２３０は、第２の記憶部２３１と、決定部２３２と、を有している。
【００２９】
第２の記憶部２３１は、アプリケーションと顧客情報との関係を示し、かつ、「おすすめアプリ」の決定に用いられる関係情報を記憶する。この例では、関係情報は、複数種類の顧客情報と複数種類のアプリケーションとの組み合わせごとに、累積インストール数を対応付けた情報である。本実施形態では、関係情報は、図１１に示す第３の情報と、図１２に示す第４の情報と、図１３に示す第５の情報とから構成されている。
【００３０】
図１１に示す第３の情報は、それぞれが市場層を表す複数の顧客情報（「ＫＧ」という市場層を表す顧客情報、「ＭＡ」という市場層を表す顧客情報、「Ｌ」という市場層を表す顧客情報、「Ｍ２」という市場層を表す顧客情報等）と、複数種類のアプリケーション（アプリＡ、アプリＢ、アプリＣ、アプリＤ、アプリＥ等）との組み合わせごとに、累積インストール数を対応付けた情報である。例えばアプリＡと、「ＭＡ」という市場層を表す顧客情報との組み合わせに対応付けられた累積インストール数「４５」は、これまで、「ＭＡ」という市場層に属する顧客（「ＭＡ」という市場層を表す顧客情報に対応する顧客）のＭＦＰ４で累計４５回にわたって「アプリＡ」がインストールされたということを示している。他も同様にして考えることができる。
【００３１】
また、図１２に示す第４の情報は、それぞれが業種を表す複数の顧客情報（「医療」という業種を表す顧客情報、「教育」という業種を表す顧客情報、「建設」という業種を表す顧客情報、「金融」という業種を表す顧客情報など）と、複数種類のアプリケーション（アプリＡ、アプリＢ、アプリＣ、アプリＤ、アプリＥ等）との組み合わせごとに、累積インストール数を対応付けた情報である。さらに、図１３に示す第５の情報は、それぞれが拠点数を表す複数の顧客情報（「１」という拠点数を表す顧客情報、「２〜１０」という拠点数を表す顧客情報、「１０以上」という拠点数を表す顧客情報など）と、複数種類のアプリケーション（アプリＡ、アプリＢ、アプリＣ、アプリＤ、アプリＥ等）との組み合わせごとに、累積インストール数を対応付けた情報である。
【００３２】
なお、この例では、アプリケーションがインストールされた場合（ライセンスの状態が有効になる場合であると考えてもよい）は、おすすめアプリ情報管理モジュール２３０に対して、アプリ情報管理モジュール２１０から後述のカウントアップ更新要求が送られてくるので、おすすめアプリ情報管理モジュール２３０は、該当するアプリの累積インストール数を１つ増加させる。例えば「ＭＡ」という市場層を表す顧客情報と、「教育」という業種を表す顧客情報と、「１」という拠点数を表す顧客情報との組み合わせに対応する顧客のＭＦＰ４がアプリＡをインストールした場合を想定する。この場合、アプリＡと、「ＭＡ」という市場層を表す顧客情報との組み合わせに対応付けられた累積インストール数「４５」は「４６」に増加し、アプリＡと、「教育」という業種を表す顧客情報との組み合わせに対応付けられた累積インストール数「１７０」は「１７１」に増加し、アプリＡと、「１」という拠点数を表す顧客情報との組み合わせに対応付けられた累積インストール数「１６０」は「１６１」に増加する。
【００３３】
図１０の説明を続ける。決定部２３２は、おすすめアプリ要求部２６３からのおすすめアプリ要求を受信すると、その受信したおすすめアプリ要求に含まれる顧客情報（「特定部」により特定された顧客情報であると考えることができる）と、第２の記憶部２３１に記憶された関係情報とに基づいて、１以上の「おすすめアプリ」を決定する。より具体的には、決定部２３２は、おすすめアプリ要求部２６３から受信したおすすめアプリ要求に含まれる顧客情報に対応付けられた複数種類のアプリケーションの中から、累積インストール数が最も多いアプリケーションを、「おすすめアプリ」として決定する。この例では、決定部２３２は、おすすめアプリ要求部２６３から受信したおすすめアプリ要求に含まれる複数種類（この例では３種類）の顧客情報ごとに、該顧客情報に対応付けられた複数種類のアプリケーションの中から、対応付けられた累積インストール数が最も多いアプリケーションを、「おすすめアプリ」として決定する。
【００３４】
いま、例えば、おすすめアプリ要求部２６３から受信したおすすめアプリ要求に含まれる３種類の顧客情報が、「Ｌ」という市場層を表す顧客情報、「建設」という業種を表す顧客情報、および、「３」という拠点数を表す顧客情報である場合を想定する。
【００３５】
この場合、決定部２３２は、上述の第３の情報を参照して、「Ｌ」という市場層を表す顧客情報に対応付けられた複数種類のアプリケーションの中から、対応付けられた累積インストール数が最も多い「アプリＤ」を、「Ｌ」という市場層を表す顧客情報に対応する「おすすめアプリ」として決定する。また、決定部２３２は、上述の第４の情報を参照して、「建設」という業種を表す顧客情報に対応付けられた複数種類のアプリケーションの中から、対応付けられた累積インストール数が最も多い「アプリＢ」を、「建設」という業種を表す顧客情報に対応する「おすすめアプリ」として決定する。さらに、決定部２３２は、上述の第５の情報を参照して、「３」という拠点数を表す顧客情報（この例では、「２〜１０」という拠点数を表す顧客情報に相当）に対応付けられた複数種類のアプリケーションの中から、対応付けられた累積インストール数が最も多い「アプリＤ」を、「建設」という業種を表す顧客情報に対応する「おすすめアプリ」として決定する。
【００３６】
また、本実施形態では、決定部２３２は、おすすめアプリ要求部２６３から受信したおすすめアプリ要求に含まれる複数種類（この例では３種類）の顧客情報ごとに、該顧客情報に対応付けられた複数種類のアプリケーションの中から、対応付けられた累積インストール数が多い順に所定数のアプリケーションを選択し、その選択した所定数のアプリケーションを「おすすめアプリ」として決定する。上記の場合、決定部２３２は、上述の第３の情報を参照して、「Ｌ」という市場層を表す顧客情報に対応付けられた複数種類のアプリケーションの中から、対応付けられた累積インストール数が多い順に３つのアプリケーション（アプリＤ、アプリＢ、アプリＥ）を選択し、その選択した３つのアプリケーションの各々を「おすすめアプリ」として決定する。この際、併せて順位を決定することもできる。同様に、決定部２３２は、上述の第４の情報を参照して、「建設」という業種を表す顧客情報に対応付けられた複数種類のアプリケーションの中から、対応付けられた累積インストール数が多い順に３つのアプリケーション（アプリＢ、アプリＥ、アプリＣ）を選択し、その選択した３つのアプリケーションの各々を「おすすめアプリ」として決定する。この際、併せて順位を決定することもできる。同様に、決定部２３２は、上述の第５の情報を参照して、「３」という拠点数を表す顧客情報（この例では、「２〜１０」という拠点数を表す顧客情報に相当）に対応付けられた複数種類のアプリケーションの中から、対応付けられた累積インストール数が多い順に３つのアプリケーション（アプリＤ、アプリＣ、アプリＥ）を選択し、その選択した３つのアプリケーションの各々を「おすすめアプリ」として決定する。この際、併せて順位を決定することもできる。
【００３７】
そして、決定部２３２は、おすすめアプリ要求に対する応答として、以上のようにして決定した３種類の顧客情報（おすすめアプリ要求に含まれていた３種類の顧客情報）ごとの「おすすめアプリ」（この例では、１つの顧客情報に対して３つの「おすすめアプリ」）を、おすすめアプリ要求部２６３へ返信する。この例では、「特定部」により特定された顧客情報と、関係情報とに基づいて、１以上の「おすすめアプリ」を決定する機能（「決定部」）は、決定部２３２の機能に対応すると考えてもよいし、おすすめアプリ要求部２６３の機能と決定部２３２の機能との組み合わせに対応すると考えてもよい。以上が、おすすめアプリ情報管理モジュール２３０が有する機能である。
【００３８】
また、本実施形態では、上述の画面情報要求には、該画面情報要求の要求元のＭＦＰ４にインストール済みのアプリケーションを識別するアプリＩＤ（「アプリケーション識別情報」の一例）が含まれている。おすすめアプリ要求部２６３は、１以上の「おすすめアプリ」の中に、画面情報要求に含まれるアプリＩＤで識別されるアプリケーションと一致するアプリケーションが存在する場合は、該アプリケーションを「おすすめアプリ」から除外する。このおすすめアプリ要求部２６３の機能は、「除外部」に対応している。
【００３９】
以上に説明した決定部２３２の機能は、ＣＰＵ３０１がＲＯＭ３０２等の記憶装置に格納されたプログラムを実行することにより実現可能である。また、以上に説明した第２の記憶部２３１は、ＲＯＭ３０２またはＨＤＤ等の補助記憶装置により実現可能である。
【００４０】
図６に戻り、アプリ情報管理モジュール２１０の制御部２１２が有する機能の説明を続ける。生成部２６４は、おすすめアプリ要求部２６３により取得された「おすすめアプリ」を示す画面情報を生成する。この例では、生成部２６４は、おすすめアプリ要求部２６３により取得された、３種類の顧客情報ごとの「おすすめアプリ」（１つの顧客情報に対して３つの「おすすめアプリ」）を示す表示情報と、合計９つの「おすすめアプリ」の各々に対応するコマンドと、を含む画面情報（画面の元となる情報）を生成する。本実施形態では、生成部２６４は、画面提供部２１３に対して、後述の設定制御部２６６で制御された設定を指定するとともに、「おすすめアプリ」に対応するアプリケーション情報（アプリ情報ＤＢ３０７に記憶されたアプリケーション情報）を渡して画面情報の生成を依頼し、この依頼を受けた画面提供部２１３が画面情報を生成して生成部２６４へ渡すことになる。
【００４１】
また、本実施形態の画面情報に含まれる表示情報は、「おすすめアプリ」ごとに、該「おすすめアプリ」の詳細を示す詳細情報を対応付けたアプリケーション詳細情報を含んでいる。詳細情報としては、ライセンスキー、バージョン情報、アプリ説明情報などが含まれる。
【００４２】
また、本実施形態の画面情報に含まれるコマンドの種類として、インストール命令などが挙げられる。インストール命令は、アプリケーションをインストールする命令を示す。
【００４３】
図６の説明を続ける。送信部２６５は、画面情報要求に対する応答として、生成部２６４により生成された画面情報をＭＦＰ４へ送信する。つまり、送信部２６５は、画面情報要求に対する応答として、「決定部」により決定された１以上の「おすすめアプリ」を示す画面情報をＭＦＰ４へ送信する機能を有している。
【００４４】
設定制御部２６６は、ユーザの操作に応じて、アプリ説明情報や画面上の表示部品の配置などを示すレイアウト情報の設定を設定部２１４に行わせる。
【００４５】
以上に説明した制御部２１２、画面提供部２１３および設定部２１４の各々の機能は、ＣＰＵ３０１がＲＯＭ３０２等の記憶装置に格納されたプログラムを実行することにより実現可能である。また、以上に説明した記憶部２１１は、ＲＯＭ３０２またはＨＤＤ等の補助記憶装置により実現可能である。
【００４６】
次に、ライセンス管理モジュール２４０が有する機能を説明する。図１４は、ライセンス管理モジュール２４０が有する機能の一例を示す図である。図１４に示すように、ライセンス管理モジュール２４０は、記憶部２４１と、制御部２４２と、ライセンス発行部２４３とを有している。なお、図１４の例では、本実施形態に関する機能を主に例示しているが、ライセンス管理モジュール２４０が有する機能はこれらに限られるものではない。
【００４７】
図１４に示すように、記憶部２４１は、ライセンス情報データベース（以下、「ライセンス情報ＤＢ」と称する）２４４と、ユーザ情報データベース（以下、「ユーザ情報ＤＢ」と称する）２４５と、を有する。
【００４８】
ライセンス情報ＤＢ２４４は、複数のアプリケーションごとに、該アプリケーションの使用権限（ライセンス）に関する情報を対応付けて記憶する。本実施形態では、ライセンス情報ＤＢ２４４は、図１５に示す第６の情報と、図１６に示す第７の情報と、図１７に示す第８の情報とを記憶している。
【００４９】
図１５に示すように、第６の情報は、アプリＩＤと、ライセンスの種別を示すライセンス種別と、ライセンスの形態（この例では、有償、無償、トライアルのうちの何れか）を示すライセンス形態と、ライセンスが有効な期間を示す有効期限と、ライセンスを付与可能な数を示すボリューム数とを対応付けた情報である。また、図１６に示すように、第７の情報は、ライセンス種別と、ライセンスキーと、使用中のライセンスの数を示す使用中ライセンス数と、使用済みのライセンスの数を示す使用済みライセンス数とを対応付けた情報である。さらに、図１７に示すように、第８の情報は、ライセンスキーと、機番と、有効期限と、ライセンスが有効であるか無効であるかを示す有効状態情報とを対応付けた情報である。
【００５０】
図１４に戻って記憶部２４１の説明を続ける。ユーザ情報ＤＢ２４５は、例えばライセンスを発行するための操作を行うことができるユーザの認証に必要な情報を記憶する。このユーザ情報ＤＢ２４５は、アプリ情報管理モジュール２１０のユーザ情報ＤＢ３０８と共通であってもよい。
【００５１】
次に、制御部２４２が有する機能を説明する。ここでは、制御部２４２が有する機能は、サーバ２側のアプリケーションインタフェース（ＡＰＩ）により提供される。図１８は、制御部２４２が有する機能の一例を示す図である。図１８に示すように、制御部２４２は、登録制御部２４６と、ライセンス有効化部２４７と、ライセンス無効化部２４８とを有する。
【００５２】
登録制御部２４６は、ライセンス発行部２４３により発行されたライセンスに関する情報を記憶部２４１（ライセンス情報ＤＢ２４４）に登録する制御を行う。本実施形態では、ライセンス発行部２４３は、ライセンスを発行するための操作を行う権限を有するユーザから、ライセンスを発行する対象となるアプリケーションのアプリＩＤと、ライセンス種別を選択する操作を受け付けた場合、その受け付けた操作により選択されたアプリＩＤとライセンス種別に対応するライセンスキーを発行する。登録制御部２４６は、ライセンス発行部２４３により発行されたライセンスキーと、該ライセンスキーに対応するライセンス種別とを示す情報をライセンス情報ＤＢ２４４に登録する制御を行う。より具体的には、登録制御部２４６は、ライセンス発行部２４３から、ライセンスキーと、該ライセンスキーに対応するライセンス種別とを受け取った場合、図１６に示す第７の情報の中に、その受け取ったライセンスキーとライセンス種別とを含む新たなレコード（この例では、行ごとの単位情報）を追加する。
【００５３】
ライセンス有効化部２４７は、ＭＦＰ４からの要求に応じて、ライセンスを有効化するための制御を行う。この例では、ライセンス有効化部２４７は、アプリＩＤとライセンスキーと機番とを少なくとも含み、かつ、ライセンスの有効化を要求する有効化要求をＭＦＰ４から受信した場合、ライセンス情報ＤＢ２４４に記憶された第７の情報（図１６参照）の中に、その受信した有効化要求に含まれるライセンスキーが存在するか否かを確認する。その確認結果が肯定の場合、ライセンス有効化部２４７は、ライセンス情報ＤＢ２４４に記憶された第６の情報（図１５参照）を参照して、その受信した有効化要求に含まれるアプリＩＤに対応付けられた有効期限を特定する。そして、図１７に示す第８の情報の中に、受信した有効化要求に含まれるライセンスキーおよび機番と、特定した有効期限と、有効を示す有効状態情報とを対応付けた新たなレコード（この例では、行ごとの単位情報）を追加する。また、ライセンス有効化部２４７は、図１６に示す第７の情報を参照して、ＭＦＰ４から受信した有効化要求に含まれるライセンスキーに対応付けられた使用中ライセンス数を「１」だけインクリメントして更新する。そして、ライセンス有効化部２４７は、有効化要求に対する応答として、ライセンスの状態が有効である旨をＭＦＰ４へ送信する。この通知を受けたＭＦＰ４は、有効化要求に含まれるアプリＩＤで識別されるアプリケーションを利用することができる。
【００５４】
なお、例えばライセンス情報ＤＢ２４４に記憶された情報の中に、ＭＦＰ４から受信した有効化要求に含まれるライセンスキーが存在しない場合や、ＭＦＰ４から受信した有効化要求に含まれるライセンスキーに対応するボリューム数が既に上限に到達している場合は、ライセンス有効化部２４７は、ＭＦＰ４からの有効化要求に対して、エラーを返すことになる。
【００５５】
また、ライセンス有効化部２４７は、ライセンスの状態が有効になるアプリＩＤと、有効化要求に含まれる機番を、アプリ情報管理モジュール２１０へ通知する。この通知を受けたアプリ情報管理モジュール２１０は、顧客情報管理モジュール２２０に対して、通知された機番に対応する３つの顧客情報の特定を要求し、該３つの顧客情報を顧客情報管理モジュール２２０から取得する。そして、アプリ情報管理モジュール２１０は、おすすめアプリ情報管理モジュール２３０に対して、顧客情報管理モジュール２２０から取得した３つの顧客情報と、ライセンス有効化部２４７から通知されたアプリＩＤとを含み、かつ、累積インストール数のカウントアップを要求するカウントアップ更新要求を送信する。カウントアップ更新要求を受信したおすすめアプリ情報管理モジュール２３０は、その受信したカウントアップ更新要求に含まれる３つの顧客情報とアプリＩＤとの組み合わせごとに、累積インストール数を「１」だけカウントアップ（インクリメント）する。
【００５６】
ライセンス無効化部２４８は、ＭＦＰ４からの要求に応じて、ライセンスを無効化するための制御を行う。この例では、ライセンス無効化部２４８は、アプリＩＤとライセンスキーと機番とを少なくとも含み、かつ、ライセンスの無効化を要求する無効化要求をＭＦＰ４から受信した場合、ライセンス情報ＤＢ２４４に記憶された第８の情報（図１７参照）を参照して、その受信した無効化要求に含まれるライセンスキーと機番との組み合わせに対応付けられた有効状態情報を、無効を示す情報に変更する。また、ライセンス情報ＤＢ２４４に記憶された第７の情報（図１６参照）を参照して、ＭＦＰ４から受信した無効化要求に含まれるライセンスキーに対応付けられた使用中ライセンス数を「１」だけデクリメントし、使用済みライセンス数を「１」だけインクリメントして更新する。そして、ライセンス無効化部２４８は、無効化要求に対する応答として、ライセンスの状態が無効である旨をＭＦＰ４へ送信する。この通知を受けたＭＦＰ４は、無効化要求に含まれるアプリＩＤで識別されるアプリケーションを利用することはできなくなる。
【００５７】
また、ライセンス無効化部２４８は、ライセンスの状態が無効になるアプリＩＤと、無効化要求に含まれる機番を、アプリ情報管理モジュール２１０へ通知する。この通知を受けたアプリ情報管理モジュール２１０は、顧客情報管理モジュール２２０に対して、通知された機番に対応する３つの顧客情報の特定を要求し、該３つの顧客情報を顧客情報管理モジュール２２０から取得する。そして、アプリ情報管理モジュール２１０は、おすすめアプリ情報管理モジュール２３０に対して、顧客情報管理モジュール２２０から取得した３つの顧客情報と、ライセンス無効化部２４８から通知されたアプリＩＤとを含み、かつ、累積インストール数のカウントダウンを要求するカウントダウン更新要求を送信する。カウントダウン更新要求を受信したおすすめアプリ情報管理モジュール２３０は、その受信したカウントダウン更新要求に含まれる３つの顧客情報とアプリＩＤとの組み合わせごとに、累積インストール数を「１」だけカウントダウン（デクリメント）する。
【００５８】
以上に説明した制御部２４２およびライセンス発行部２４３の各々の機能は、ＣＰＵ３０１がＲＯＭ３０２等の記憶装置に格納されたプログラムを実行することにより実現可能である。また、以上に説明した記憶部２４１は、ＲＯＭ３０２またはＨＤＤ等の補助記憶装置により実現可能である。
【００５９】
次に、アプリダウンロード管理モジュール２５０が有する機能を説明する。図１９は、アプリダウンロード管理モジュール２５０が有する機能の一例を示す図である。図１９に示すように、アプリダウンロード管理モジュール２５０は、アプリストレージ２５１と、ダウンロード部２５２とを有している。なお、図１９の例では、本実施形態に関する機能を主に例示しているが、アプリダウンロード管理モジュール２５０が有する機能はこれらに限られるものではない。
【００６０】
アプリストレージ２５１は、ＭＦＰ４に提供するための複数のアプリケーションを記憶している。この例では、アプリストレージ２５１は、複数のアプリＩＤごとに、アプリケーション本体を含むデータファイルを対応付けて記憶している。ダウンロード部２５２は、ＭＦＰ４からの要求に応じて、アプリストレージ２５１に記憶された何れかのアプリケーションをＭＦＰ４へ送信（ダウンロード）する制御を行う。この例では、ダウンロード部２５２は、アプリＩＤを少なくとも含み、かつ、アプリケーションのダウンロードを要求するダウンロード要求をＭＦＰ４から受信した場合、その受信したダウンロード要求に含まれるアプリＩＤに対応するアプリケーションをＭＦＰ４へ送信する。より具体的には、ダウンロード部２５２は、アプリストレージ２５１を参照して、ＭＦＰ４から受信したダウンロード要求に含まれるアプリＩＤに対応するデータファイルを特定し、その特定したデータファイルをＭＦＰ４へ送信する。
【００６１】
以上に説明したダウンロード部２５２の機能は、ＣＰＵ３０１がＲＯＭ３０２等の記憶装置に格納されたプログラムを実行することにより実現可能である。また、以上に説明したアプリストレージ２５１は、ＲＯＭ３０２またはＨＤＤ等の補助記憶装置により実現可能である。
【００６２】
以上がサーバ２の構成となる。なお、サーバ２は、複数のサーバから構成される形態であってもよい。例えば図２０に示すように、サーバ２は、アプリケーションサーバ２７０と、データベースサーバ２８０とから構成される形態であってもよい。例えばアプリケーションサーバ２７０は、上述の制御部２１２、画面提供部２１３、設定部２１４、特定部２２２、決定部２３２、制御部２４２、ライセンス発行部２４３、ダウンロード部２５２を有する形態であってもよい。また、例えばアプリケーションサーバ２７０は、複数のサーバで構成され、上述の制御部２１２、画面提供部２１３、設定部２１４、特定部２２２、決定部２３２、制御部２４２、ライセンス発行部２４３、ダウンロード部２５２の各々は、何れかのサーバに分散して搭載される形態であってもよい。
【００６３】
また、例えばデータベースサーバ２８０は、上述の記憶部２１１、第１の記憶部２２１、第２の記憶部２３１、記憶部２４１、アプリストレージ２５１を有する形態であってもよい。また、例えばデータベースサーバ２８０は、複数のサーバで構成され、上述の記憶部２１１、第１の記憶部２２１、第２の記憶部２３１、記憶部２４１、アプリストレージ２５１の各々は、何れかのサーバに分散して搭載される形態であってもよい。
【００６４】
次に、図２１を用いて、ＭＦＰ４のハードウェア構成について説明する。図２１に示すように、ＭＦＰ４は、コピー機能、スキャナ機能、ファクス機能、プリンタ機能などの各種の機能を実現可能な本体１０と、ユーザの操作を受け付ける操作部２０とを備える。なお、ユーザの操作を受け付けるとは、ユーザの操作に応じて入力される情報（画面の座標値を示す信号等を含む）を受け付けることを含む概念である。本体１０と操作部２０は、専用の通信路３０を介して相互に通信可能に接続されている。通信路３０は、例えばＵＳＢ（Universal  Serial  Bus）規格のものを用いることもできるが、有線か無線かを問わず任意の規格のものであってよい。
【００６５】
なお、本体１０は、操作部２０で受け付けた操作に応じた動作を行うことができる。また、本体１０は、クライアントＰＣ（パーソナルコンピュータ）等の外部装置とも通信可能であり、外部装置から受信した指示に応じた動作を行うこともできる。
【００６６】
まず、本体１０のハードウェア構成について説明する。図２１に示すように、本体１０は、ＣＰＵ１１と、ＲＯＭ１２と、ＲＡＭ１３と、ＨＤＤ（ハードディスクドライブ）１４と、通信Ｉ／Ｆ（インタフェース）１５と、接続Ｉ／Ｆ１６と、エンジン部１７とを備え、これらがシステムバス１８を介して相互に接続されている。
【００６７】
ＣＰＵ１１は、本体１０の動作を統括的に制御する。ＣＰＵ１１は、ＲＡＭ１３をワークエリア（作業領域）としてＲＯＭ１２またはＨＤＤ１４等に格納されたプログラムを実行することで、本体１０全体の動作を制御し、上述したコピー機能、スキャナ機能、ファクス機能、プリンタ機能などの各種機能を実現する。
【００６８】
通信Ｉ／Ｆ１５は、ネットワーク３と接続するためのインタフェースである。接続Ｉ／Ｆ１６は、通信路３０を介して操作部２０と通信するためのインタフェースである。
【００６９】
エンジン部１７は、コピー機能、スキャナ機能、ファクス機能、および、プリンタ機能を実現させるための、汎用的な情報処理及び通信以外の処理を行うハードウェアである。例えば、原稿の画像をスキャンして読み取るスキャナ（画像読取部）、用紙等のシート材への印刷を行うプロッタ（画像形成部）、ファクス通信を行うファクス部などを備えている。更に、印刷済みシート材を仕分けるフィニッシャや、原稿を自動給送するＡＤＦ（自動原稿給送装置）のような特定のオプションを備えることもできる。
【００７０】
次に、操作部２０のハードウェア構成について説明する。図２１に示すように、操作部２０は、ＣＰＵ２１と、ＲＯＭ２２と、ＲＡＭ２３と、フラッシュメモリ２４と、通信Ｉ／Ｆ２５と、接続Ｉ／Ｆ２６と、操作パネル２７とを備え、これらがシステムバス２８を介して相互に接続されている。
【００７１】
ＣＰＵ２１は、操作部２０の動作を統括的に制御する。ＣＰＵ２１は、ＲＡＭ２３をワークエリア（作業領域）としてＲＯＭ２２またはフラッシュメモリ２４等に格納されたプログラムを実行することで、操作部２０全体の動作を制御し、ユーザから受け付けた入力に応じた情報（画像）の表示などの後述する各種機能を実現する。
【００７２】
通信Ｉ／Ｆ２５は、ネットワーク３と接続するためのインタフェースである。接続Ｉ／Ｆ２６は、通信路３０を介して本体１０と通信するためのインタフェースである。
【００７３】
操作パネル２７は、ユーザの操作に応じた各種の入力を受け付けるとともに、各種の情報（例えば受け付けた操作に応じた情報、ＭＦＰ４の動作状況を示す情報、設定状態などを示す情報など）を表示する。この例では、操作パネル２７は、タッチパネル機能を搭載した液晶表示装置（ＬＣＤ）で構成されるが、これに限られるものではない。例えばタッチパネル機能が搭載された有機ＥＬ表示装置で構成されてもよい。さらに、これに加えて又はこれに代えて、ハードウェアキー等の操作部やランプ等の表示部を設けることもできる。
【００７４】
次に、ＭＦＰ４のソフトウェア構成について説明する。図２２は、ＭＦＰ４のソフトウェア構成の一例を示す模式図である。図２２に示すように、本体１０は、アプリ層１０１と、サービス層１０２と、ＯＳ層１０３とを有する。アプリ層１０１、サービス層１０２、および、ＯＳ層１０３の実体は、ＲＯＭ１２やＨＤＤ１４等に格納されている各種ソフトウェアである。ＣＰＵ１１が、これらのソフトウェアを実行することにより、各種の機能が提供される。
【００７５】
アプリ層１０１のソフトウェアは、ハードウェア資源を動作させて所定の機能を提供するためのアプリケーションソフトウェア（以下の説明では、単に「アプリ」と称する場合がある）である。例えばアプリとしては、コピー機能を提供するためのコピーアプリ、スキャナ機能を提供するためのスキャナアプリ、ファクス機能を提供するためのファクスアプリ、プリンタ機能を提供するためのプリンタアプリなどが挙げられる。
【００７６】
サービス層１０２のソフトウェアは、アプリ層１０１とＯＳ層１０３との間に介在し、アプリに対し、本体１０が備えるハードウェア資源を利用するためのインタフェースを提供するためのソフトウェアである。より具体的には、ハードウェア資源に対する動作要求の受け付け、動作要求の調停を行う機能を提供するためのソフトウェアである。サービス層１０２が受け付ける動作要求としては、スキャナによる読み取りやプロッタによる印刷等の要求が考えられる。
【００７７】
なお、サービス層１０２によるインタフェースの機能は、本体１０のアプリ層１０１だけではなく、操作部２０のアプリ層２０１に対しても提供される。すなわち、操作部２０のアプリ層２０１（アプリ）も、サービス層１０２のインタフェース機能を介して、本体１０のハードウェア資源（例えばエンジン部１７）を利用した機能を実現することができる。
【００７８】
ＯＳ層１０３のソフトウェアは、本体１０が備えるハードウェアを制御する基本機能を提供するための基本ソフトウェア（オペレーティングシステム（ＯＳ））である。サービス層１０２のソフトウェアは、各種アプリからのハードウェア資源の利用要求を、ＯＳ層１０３が解釈可能なコマンドに変換してＯＳ層１０３に渡す。そして、ＯＳ層１０３のソフトウェアによりコマンドが実行されることで、ハードウェア資源は、アプリの要求に従った動作を行う。
【００７９】
同様に、操作部２０は、アプリ層２０１と、サービス層２０２と、ＯＳ層２０３とを有する。操作部２０が備えるアプリ層２０１、サービス層２０２及びＯＳ層２０３も、階層構造については本体１０側と同様である。ただし、アプリ層２０１のアプリにより提供される機能や、サービス層２０２が受け付け可能な動作要求の種類は、本体１０側とは異なる。アプリ層２０１のアプリは、操作部２０が備えるハードウェア資源を動作させて所定の機能を提供するためのソフトウェアであってもよいが、主として本体１０が備える機能（コピー機能、スキャナ機能、ファクス機能、プリンタ機能）やインストール済みのアプリケーションのライセンスファイルを更新する機能等に関する操作や表示を行うためのＵＩ（ユーザインタフェース）の機能を提供するためのソフトウェアである。この例では、アプリ層２０１のアプリには、ブラウザの機能を提供するためのアプリ（「ブラウザアプリ」と称する場合がある）や、上述の画面情報に含まれるコマンドを実行する機能を提供するためのアプリ（「インストーラ」と称する場合がある）などが含まれる。
【００８０】
なお、本実施形態では、機能の独立性を保つために、本体１０側のＯＳ層１０３のソフトウェアと操作部２０側のＯＳ層２０３のソフトウェアが互いに異なる。つまり、本体１０と操作部２０は、別々のオペレーティングシステムで互いに独立して動作する。例えば本体１０側のＯＳ層１０３のソフトウェアとしてＬｉｎｕｘ（登録商標）を用い、操作部２０側のＯＳ層２０３のソフトウェアとしてＡｎｄｒｏｉｄ（登録商標）を用いることも可能である。
【００８１】
以上のように、本実施形態のＭＦＰ４において、本体１０と操作部２０は別々のオペレーティングシステムで動作するため、本体１０と操作部２０との間の通信は、共通の装置内のプロセス間通信ではなく、異なる装置間の通信として行われる。操作部２０が受け付けた情報（ユーザからの指示内容）を本体１０へ伝達する動作（コマンド通信）や、本体１０が操作部２０へイベントを通知する動作などがこれに該当する。ここでは、操作部２０が本体１０へコマンド通信を行うことにより、本体１０の機能を使用することができる。また、本体１０から操作部２０に通知するイベントには、本体１０における動作の実行状況、本体１０側で設定された内容などが挙げられる。
【００８２】
また、本実施形態では、操作部２０に対する電力供給は、本体１０から通信路３０を経由して行われているので、操作部２０の電源制御を、本体１０の電源制御とは別に（独立して）行うことができる。
【００８３】
図２３は、本実施形態の操作部２０が有する機能の一例を示す図である。図２３に示すように、操作部２０は、起動部４１１と、表示制御部４１２と、実行部４１３と、を有する。なお、図２３の例では、本実施形態に関する機能を主に例示しているが、操作部２０が有する機能はこれらに限られるものではない。
【００８４】
起動部４１１は、ユーザの操作に応じて、ブラウザ機能を提供するブラウザアプリを起動する。例えば図２４に示す操作画面が操作パネル２７に表示された状態で、「アプリマーケット」という名称のアイコン５の押下を受け付けた場合、起動部４１１は、ネットワーク３上のサーバ２の所在を示すＵＲＬを取得するとともにブラウザアプリを起動する制御を行う。
【００８５】
起動したブラウザアプリは、起動部４１１から受け取ったＵＲＬで指定されるサーバ２に対して、ＭＦＰ４を識別する機番と、ＭＦＰ４にインストール済みのアプリケーションを識別する１以上のアプリＩＤとを含み、かつ、画面情報を要求する画面情報要求を送信し、画面情報要求に対する応答としてサーバ２から画面情報を受信する。この例では、ＭＦＰ４は、ＭＦＰ４にインストール済みのアプリケーションを示すアプリケーション管理情報を保持している。
【００８６】
そして、ブラウザアプリは、画面情報要求に対する応答として受信した画面情報に対応する画面を操作パネル２７（表示部）に表示する制御を行う。ここでは、表示制御部４１２の機能はブラウザアプリにより提供される。また、前述したように、この例では、表示制御部４１２は、サーバ２から受信した画面情報に対応する画面を生成し、その生成した画面を操作パネル２７に表示する。表示制御部４１２は、サーバ２から受信した画面情報をフラッシュメモリ２４等の記憶装置に保持しておき、必要に応じて画面情報を読み出し、その読み出した画面情報を用いて画面を生成することができる。
【００８７】
この例では、表示制御部４１２は、操作パネル２７に表示された画面（画面情報に対応する画面）に対するユーザの操作に応じて選択されたコマンドを特定し、その特定したコマンドを実行部４１３へ通知することができる。例えば表示制御部４１２は、拡張ＪａｖａＳｃｒｉｐｔ（登録商標）、カスタムスキーム経由などで、ユーザによって選択されたコマンドを特定することができる。
【００８８】
実行部４１３は、画面情報に含まれるコマンドのうち、ユーザの操作に応じて選択されたコマンド（表示制御部４１２から通知されたコマンド）を実行する。ここでは、実行部４１３の機能は、ＭＦＰ４側のアプリケーションインタフェース（ＡＰＩ）により提供される。
【００８９】
前述したように、サーバ２から受信した画面情報に含まれるコマンドとしては、例えばインストール命令などが挙げられる。以下では、サーバ２から受信した画面情報に対応する画面に対するユーザの操作に応じてインストール命令が選択される場合を例に挙げて説明する。この場合、表示制御部４１２は、ユーザの操作に応じて選択されたインストール命令を実行部４１３へ通知し、実行部４１３は、表示制御部４１２から通知されたインストール命令を実行する。より具体的には、以下のとおりである。この例では、表示制御部４１２は、画面情報要求に対する応答としてサーバ２から画面情報を受信した場合、その受信した画面情報を用いて、まずはＭＦＰ４への「おすすめアプリ」の一覧を示すアプリケーション一覧画面を操作パネル２７に表示する制御を行う。図２５は、アプリケーション一覧画面の一例を示す図である。図２５の例では、アプリケーション一覧画面は、３つの顧客情報の種別ごとに、３つのアプリケーション（おすすめアプリ）と１対１に対応する３つの表示部品を表示（合計９つの表示部品を表示）し、各表示部品は、アプリケーションの名称と、該アプリケーションを選択するためのアプリケーション選択ボタン４２１とを少なくとも含む。なお、顧客情報の種別ごとに表示される３つのアプリケーションは、順位を付された形式（ランキング形式）で表示される形態であってもよい。
【００９０】
表示制御部４１２は、何れかのアプリケーション選択ボタン４２１の押下を受け付けた場合、サーバ２から受信した画面情報を用いて、対応するアプリケーションの詳細な内容を示すとともにインストールの実行指示を受け付けるためのインストール指示画面を操作パネル２７に表示する制御を行う。図２６は、インストール指示画面の一例を示す図である。図２６の例では、インストール指示画面は、対応するアプリケーションのアプリ説明情報と、インストールの実行を指示するためのインストールボタン４３１とを表示する。この例では、インストールボタン４３１に対して、インストール命令がＵＲＩの形式（例えばＵＲＬの形式でもよい）で貼り付けられている。この例では、インストールボタン４３１の押下は、当該インストールボタン４３１に貼り付けられたインストール命令の選択（インストールしたいアプリケーションの選択であると考えてもよい）を意味する。
【００９１】
この例では、表示制御部４１２は、インストールボタン４３１の押下を受け付けた場合、インストールの実行を最終的に確認するためのインストール確認画面を操作パネル２７に表示する制御を行う。図２７は、インストール確認画面の一例を示す図である。図２７の例では、インストール確認画面は、インストールの実行を最終的に承諾したことを指示するための確認ボタン４４１を表示する。確認ボタン４４１の押下を受け付けると、表示制御部４１２は、対応するインストールボタン４３１に貼り付けられていたインストール命令を実行部４１３へ通知する。そして、実行部４１３が、このインストール命令を実行することになる。
【００９２】
また、本実施形態では、表示制御部４１２は、サーバ２から受信した画面情報に含まれる表示情報内のアプリケーション詳細情報のうち、ユーザの操作に応じて選択されたインストール命令の対象となるアプリケーションに対応する詳細情報の中に、該アプリケーションの使用権限を認証するためのライセンスキーが含まれていない場合は、ライセンスキーの入力を促す入力画面を表示する制御を行い、ライセンスキーが含まれている場合は、該ライセンスキーと、インストール命令とを実行部４１３へ通知する。より具体的には、表示制御部４１２は、上述の確認ボタン４４１の押下を受け付けた場合、サーバ２から受信した画面情報を参照して、該画面情報に含まれる表示情報内のアプリケーション詳細情報のうち、ユーザによって押下されたインストールボタン４３１に貼り付けられたインストール命令の対象となるアプリケーションに対応する詳細情報の中に、ライセンスキーが含まれているか否かを確認する。ライセンスキーが含まれていない場合は、表示制御部４１２は、ライセンスキーの入力を促す入力画面を表示する制御を行い、入力されたライセンスキーと、選択されたインストール命令とを実行部４１３へ通知する。図２８は、入力画面の一例を示す図である。図２９は、この場合に、表示制御部４１２から実行部４１３へ通知される情報の一例を示す図である。
【００９３】
また、本実施形態の表示制御部４１２は、ユーザの操作に応じて、ＭＦＰ４にインストール済みのアプリケーションごとに、該アプリケーションの削除指示を受け付けるための削除指示画面を操作パネル２７に表示する制御を行うこともできる。図３０は、削除指示画面の一例を示す図である。削除指示画面は、ＭＦＰ４にインストール済みのアプリケーションごとに、該アプリケーションの削除指示を受け付けるための削除指示ボタン４５１を表示する。この例では、各削除指示ボタン４５１に対しては、該削除指示ボタン４５１に対応するアプリケーションを削除する命令を示す削除命令が貼り付けられている。表示制御部４１２は、削除指示ボタン４５１の押下を受け付けた場合、アンインストールの実行を最終的に確認するための削除確認画面を操作パネル２７に表示する制御を行う。図３１は、削除確認画面の一例を示す図である。削除確認画面は、アンインストールの実行を最終的に承諾したことを指示するための確認ボタン４６１を表示する。確認ボタン４６１の押下を受け付けると、表示制御部４１２は、対応する削除指示ボタン４５１に貼り付けられていたアンインストール命令を実行部４１３へ通知する。図３２は、この場合に、表示制御部４１２から実行部４１３へ通知される情報の一例を示す図である。
【００９４】
以上に説明した起動部４１１、表示制御部４１２、および、実行部４１３の各々の機能は、ＣＰＵ２１がＲＯＭ２２やフラッシュメモリ２４等の記憶装置に記憶されたプログラムを実行することにより実現可能である。
【００９５】
図３３は、本実施形態のシステム１の動作手順の一例を示すシーケンス図である。上述したように、起動部４１１は、操作画面上の「アプリマーケット」という名称のアイコン５の押下を受け付けた場合（ステップＳ１）、表示制御部４１２（ブラウザアプリ）に対して、起動指令とともにサーバ２のＵＲＬを送信する（ステップＳ２）。起動指令を受けた起動した表示制御部４１２は、サーバ２に対して、上述の画面情報要求を送信する（ステップＳ３）。上述したように、画面情報要求は、ＭＦＰ４を識別する機番と、該ＭＦＰ４にインストール済みのアプリケーションを識別するアプリＩＤとを含み、かつ、該ＭＦＰ４への「おすすめアプリ」を示す画面情報を要求する情報である。
【００９６】
サーバ２のアプリ情報管理モジュール２１０は、ＭＦＰ４からの画面情報要求を取得すると、顧客情報管理モジュール２２０に対して、その取得した画面情報要求に含まれる機番を含み、かつ、対応する１以上の顧客情報を要求する上述の顧客情報要求を送信する（ステップＳ４）。顧客情報管理モジュール２２０は、アプリ情報管理モジュール２１０からの顧客情報要求を受信すると、上述の対応情報を参照して、その受信した顧客情報要求に含まれる機番に対応する１以上の顧客情報を特定する（ステップＳ５）。具体的な内容は上述したとおりである。そして、顧客情報要求に対する応答として、ステップＳ５で特定した顧客情報を返信する（ステップＳ６）。
【００９７】
次に、アプリ情報管理モジュール２１０は、おすすめアプリ情報管理モジュール２３０に対して、ステップＳ６で顧客情報管理モジュール２２０から受信した１以上の顧客情報を含み、かつ、「おすすめアプリ」を要求する上述のおすすめアプリ要求を送信する（ステップＳ７）。おすすめアプリ情報管理モジュール２３０は、アプリ情報管理モジュール２１０からのおすすめアプリ要求を受信すると、その受信したおすすめアプリ要求に含まれる顧客情報と、上述の関係情報とに基づいて、１以上の「おすすめアプリ」を決定する（ステップＳ８）。具体的な内容は上述したとおりである。そして、おすすめアプリ要求に対する応答として、ステップＳ８で決定した「おすすめアプリ」を返信する（ステップＳ９）。
【００９８】
次に、アプリ情報管理モジュール２１０は、ステップＳ９で受信した１以上の「おすすめアプリ」の中に、ＭＦＰ４からの画面情報要求に含まれるアプリＩＤで識別されるアプリケーションと一致するアプリケーションが存在する場合は、該アプリケーションを「おすすめアプリ」から除外する処理を行う（ステップＳ１１）。次に、アプリ情報管理モジュール２１０は、「おすすめアプリ」を示す画面情報を生成し（ステップＳ１０）、画面情報要求に対する応答として、ステップＳ１１で生成した画面情報をＭＦＰ４へ送信する（ステップＳ１２）。ＭＦＰ４は、ステップＳ１２で受信した画面情報に対応する画面を生成し、生成した画面を操作パネル２７に表示する（ステップＳ１３）。この例では、表示制御部４１２は、画面情報要求に対する応答として受信した画面情報を、フラッシュメモリ２４等の記憶装置に格納するとともに、その受信した画面情報を用いて、図２５に示すアプリケーション一覧画面を最初に生成する。そして、その生成したアプリケーション一覧画面を操作パネル２７に表示する制御を行う。
【００９９】
図３４は、図２５に示すアプリケーション一覧画面に表示された何れかのアプリケーション選択ボタン４２１が押下された場合のシステム１の動作手順の一例を示すシーケンス図である。上述したように、表示制御部４１２は、何れかのアプリケーション選択ボタン４２１の押下を受け付けた場合、上述のインストール指示画面（図２６参照）を操作パネル２７に表示する制御を行う（ステップ２１）。次に、表示制御部４１２は、インストールボタン４３１の押下を受け付けた場合、上述のインストール確認画面（図２７参照）を操作パネル２７に表示する制御を行う（ステップＳ２２）。次に、表示制御部４１２は、インストール確認画面に表示された確認ボタン４４１の押下を受け付けた場合、サーバ２から受信済みの画面情報を参照して、該画面情報に含まれる表示情報内のアプリケーション詳細情報のうち、ユーザの操作に応じて選択されたインストール命令（押下されたインストールボタン４３１に貼り付けられたインストール命令）の対象となるアプリケーションに対応する詳細情報の中に、ライセンスキーが含まれているか否かを確認する（ステップＳ２３）。
【０１００】
上述のステップＳ２３の確認の結果、ライセンスキーが含まれていない場合（つまり、インストール命令の対象となるアプリケーションが有償のアプリケーションの場合）、表示制御部４１２は、上述の入力画面を操作パネル２７に表示する制御を行い（ステップＳ２４）、ユーザからのライセンスキーの入力を受け付ける。ここでは、ユーザは、購入済みのアプリケーションに対応するライセンスキーを事前に把握していることを前提とする。例えばアプリケーションの管理者から、該アプリケーションを購入したユーザに対して、郵送やメール等でライセンスキーを通知する形態であってもよい。
【０１０１】
次に、表示制御部４１２は、ユーザの操作に応じて選択されたインストール命令と、ライセンスキー（選択されたアプリケーション命令の対象となるアプリケーションのライセンスキー）とを実行部４１３へ通知する（ステップＳ２５）。実行部４１３は、表示制御部４１２から通知されたライセンスキーを用いて、表示制御部４１２から通知されたインストール命令を実行する。より具体的には以下のとおりである。まず、実行部４１３は、サーバ２に対して、インストール命令の対象となるアプリケーションのアプリＩＤを少なくとも含み、かつ、該アプリケーションのダウンロードを要求する上述のダウンロード要求を送信する（ステップＳ２６）。ダウンロード要求を受信したサーバ２（ダウンロード部２５２）は、その受信したダウンロード要求に含まれるアプリＩＤに対応するアプリケーションを選択し（ステップＳ２７）、その選択したアプリケーションをＭＦＰ４へ送信する（ステップＳ２８）。
【０１０２】
次に、実行部４１３は、サーバ２に対して、アプリＩＤとライセンスキーと機番とを少なくとも含み、かつ、ライセンスの有効化を要求する上述の有効化要求を送信する（ステップＳ２９）。有効化要求を受信したサーバ２（ライセンス有効化部２４７）は、ライセンスを有効化するための制御を行った後（ステップＳ３０）、有効化要求に対する応答をＭＦＰ４へ返す（ステップＳ３１）。ステップＳ３０の具体的な内容は上述したとおりであり、ライセンス有効化部２４７は、ＭＦＰ４から上述の有効化要求を受信した場合、ライセンス情報ＤＢ２４４の中に、その受信した有効化要求に含まれるライセンスキーが存在するか否かを確認する。ライセンスキーが存在する場合は、ライセンス有効化部２４７は、上述したようにライセンス情報ＤＢ２４４に記憶された情報を更新する。また、ライセンス有効化部２４７は、ＭＦＰ４から受信した有効化要求に含まれるアプリＩＤで識別されるアプリケーションの有効期限などのライセンス（使用権限）を定めたライセンスファイルを発行し、有効化要求に対する応答として、ライセンスの状態が有効である旨に加えて該ライセンスファイルを送信することもできる。一方、ライセンス情報ＤＢ２４４の中に、その受信した有効化要求に含まれるライセンスキーが存在しない場合は、有効化要求に対する応答としてエラーを送信する。
【０１０３】
また、上述したように、ライセンス有効化部２４７は、ライセンスの状態が有効になるアプリＩＤと、有効化要求に含まれる機番を、アプリ情報管理モジュール２１０へ通知する。この通知を受けたアプリ情報管理モジュール２１０は、顧客情報管理モジュール２２０に対して、通知された機番に対応する３つの顧客情報の特定を要求し、該３つの顧客情報を顧客情報管理モジュール２２０から取得する。そして、アプリ情報管理モジュール２１０は、おすすめアプリ情報管理モジュール２３０に対して、顧客情報管理モジュール２２０から取得した３つの顧客情報と、ライセンス有効化部２４７から通知されたアプリＩＤとを含み、かつ、累積インストール数のカウントアップを要求するカウントアップ更新要求を送信する。カウントアップ更新要求を受信したおすすめアプリ情報管理モジュール２３０は、その受信したカウントアップ更新要求に含まれる３つの顧客情報とアプリＩＤとの組み合わせごとに、累積インストール数を「１」だけカウントアップ（インクリメント）する。
【０１０４】
ＭＦＰ４（実行部４１３）は、有効化要求に対する応答として、ライセンスの状態が有効である旨を受信した場合、ステップＳ２８でサーバ２からダウンロードしたアプリケーションをインストールする制御を行う（ステップＳ３２）。インストールが完了した後、実行部４１３は、そのインストールが完了したアプリケーションを追加することで、上述のアプリケーション管理情報を更新する（ステップＳ３３）。
【０１０５】
図３５は、ＭＦＰ４にインストール済みのアプリケーションをアンインストールする場合のシステム１の動作手順の一例を示すシーケンス図である。まず、表示制御部４１２は、ユーザの操作に応じて、上述の削除指示画面を操作パネル２７に表示する制御を行う（ステップＳ４１）。次に、表示制御部４１２は、何れかの削除指示ボタン４５１の押下を受け付けた場合、上述の削除確認画面（図３１参照）を操作パネル２７に表示する制御を行う（ステップＳ４２）。次に、表示制御部４１２は、削除確認画面に表示された確認ボタン４６１の押下を受け付けた場合、ユーザの操作に応じて選択されたアンインストール命令（押下された削除指示ボタン４５１に貼り付けられたアンインストール命令）を実行部４１３へ通知する（ステップＳ４３）。
【０１０６】
実行部４１３は、表示制御部４１２から通知されたアンインストール命令を実行する。より具体的には以下のとおりである。まず、実行部４１３は、サーバ２に対して、アンインストール命令の対象となるアプリケーションに対応するライセンスキーと、機番とを少なくとも含み、かつ、ライセンスの無効化を要求する上述の無効化要求を送信する（ステップＳ４４）。無効化要求を受信したサーバ２（ライセンス無効化部２４８）は、ライセンスを無効化するための制御を行った後（ステップＳ４５）、無効化要求に対する応答（ここではライセンスの状態が無効である旨を示す応答）をＭＦＰ４へ返す（ステップＳ４６）。ステップＳ４５の具体的な内容は上述したとおりであり、ライセンス無効化部２４８は、ＭＦＰ４から上述の無効化要求を受信した場合、ライセンス情報ＤＢ２４４に記憶された情報のうち、その受信した無効化要求に含まれるライセンスキーと機番との組み合わせに対応付けられた有効状態情報を「無効」を示す情報に変更し、その受信した無効化要求に含まれるライセンスキーに対応付けられた使用中ライセンス数を「１」だけデクリメントし、使用済みライセンス数を「１」だけインクリメントする。
【０１０７】
また、上述したように、ライセンス無効化２４８は、ライセンスの状態が無効になるアプリＩＤと、無効化要求に含まれる機番を、アプリ情報管理モジュール２１０へ通知する。この通知を受けたアプリ情報管理モジュール２１０は、顧客情報管理モジュール２２０に対して、通知された機番に対応する３つの顧客情報の特定を要求し、該３つの顧客情報を顧客情報管理モジュール２２０から取得する。そして、アプリ情報管理モジュール２１０は、おすすめアプリ情報管理モジュール２３０に対して、顧客情報管理モジュール２２０から取得した３つの顧客情報と、ライセンス無効化部２４８から通知されたアプリＩＤとを含み、かつ、累積インストール数のカウントダウンを要求するカウントダウン更新要求を送信する。カウントダウン更新要求を受信したおすすめアプリ情報管理モジュール２３０は、その受信したカウントダウン更新要求に含まれる３つの顧客情報とアプリＩＤとの組み合わせごとに、累積インストール数を「１」だけカウントダウン（デクリメント）する。
【０１０８】
ＭＦＰ４（実行部４１３）は、無効化要求に対する応答として、ライセンスの状態が無効である旨を受信した場合、無効化要求に含まれるライセンスキーに対応するアプリケーションをアンインストールする制御を行う（ステップＳ４７）。アンインストールが完了した後、実行部４１３は、上述のアプリケーション管理情報のうち、該アンインストールが完了したアプリケーションに対応する情報を削除することで、アプリケーション管理情報を更新する（ステップＳ４８）。
【０１０９】
以上に説明したように、本実施形態のサーバ２は、１以上の機番ごとに、該機番で識別される機器（この例ではＭＦＰ４）を利用するユーザの固有の情報を示す１以上の顧客情報を対応付けた対応情報を記憶する第１の記憶部２２１と、アプリケーションと顧客情報との関係を示す関係情報を記憶する第２の記憶部２３１と、を備える。そして、サーバ２は、ＭＦＰ４から上述の画面情報要求を取得した場合、その取得した画面情報要求に含まれる機番に対応する顧客情報を特定し、その特定した顧客情報と、上述の関係情報とに基づいて、１以上の「おすすめアプリ」を決定し、ＭＦＰ４からの画面情報要求に対する応答として、その決定した１以上の「おすすめアプリ」を示す画面情報を機器（ＭＦＰ４）へ送信する。すなわち、本実施形態によれば、機器を利用するユーザの固有の情報を反映させて、該機器に対して利用を推奨するアプリケーションを決定することができる。
【０１１０】
（第２の実施形態）
次に、第２の実施形態を説明する。上述の第１の実施形態と共通する部分については適宜に説明を省略する。本実施形態では、上述の対応情報は、機番ごとに複数種類の顧客情報を対応付けた情報であることを前提とし、「決定部」は、「特定部」により特定された複数種類の顧客情報ごとに、該顧客情報に対応付けられた複数種類のアプリケーションの各々に対応付けられた累積インストール数を特定した後、複数種類のアプリケーション（関係情報に含まれる複数種類のアプリケーション）ごとに、「特定部」により特定された複数種類の顧客情報と１対１に対応する複数の累積インストール数の和を示す累積和を求め、累積和の値が最も大きいアプリケーションを、「おすすめアプリ」として決定する。より具体的には、「決定部」は、複数種類のアプリケーションの中から、累積和の値が大きい順に所定数のアプリケーションを選択し、その選択した所定数のアプリケーションを「おすすめアプリ」として決定する。
【０１１１】
いま、例えば、上述のアプリ要求に含まれる３種類の顧客情報が、「Ｌ」という市場層を表す顧客情報、「建設」という業種を表す顧客情報、および、「３」という拠点数を表す顧客情報である場合を想定する。
【０１１２】
この場合、おすすめアプリ要求部２６３から上述のおすすめアプリ要求を受信した決定部２３２は、上述の第３の情報を参照して、「Ｌ」という市場層を表す顧客情報と複数種類のアプリケーションとの組み合わせごとに、対応付けられた累積インストール数を特定する。また、決定部２３２は、上述の第４の情報を参照して、「建設」という業種を表す顧客情報と複数種類のアプリケーションとの組み合わせごとに、対応付けられた累積インストール数を特定する。また、決定部２３２は、上述の第５の情報を参照して、「３」という拠点数を表す顧客情報と複数種類のアプリケーションとの組み合わせごとに、対応付けられた累積インストール数を特定する。
【０１１３】
そして、決定部２３２は、複数種類のアプリケーションごとに、３種類の顧客情報（この例では、「Ｌ」という市場層を表す顧客情報、「建設」という業種を表す顧客情報、および、「３」という拠点数を表す顧客情報）と１対１に対応する３つの累積インストール数を求める。以下、図１１〜図１３を用いて、「アプリＡ」を例に挙げて説明する。この例においては、「Ｌ」という市場層を表す顧客情報に対応する累積インストール数（「アプリＡ」と「Ｌ」という市場層を表す顧客情報との組み合わせに対応する累積インストール数）は「１０」であり（図１１参照）、「建設」という業種を表す顧客情報に対応する累積インストール数（「アプリＡ」と「建設」という業種を表す顧客情報との組み合わせに対応する累積インストール数）は「１０」であり（図１２参照）、「３」という拠点数を表す顧客情報に対応する累積インストール数（「アプリＡ」と「３」という拠点数を表す顧客情報との組み合わせに対応する累積インストール数）は「１０」である（図１３参照）。したがって、これらの３つの累積インストール数の和を示す累積和は「３０」となる。
【０１１４】
以上のようにして、決定部２３２は、複数種類のアプリケーション（上述の関係情報に含まれる複数種類のアプリケーション）ごとに、上記累積和の値を求め、上記累積和の値が最も大きいアプリケーションを、「おすすめアプリ」として決定する。この例では、アプリＤが「おすすめアプリ」として決定されることになる。
【０１１５】
また、本実施形態では、決定部２３２は、複数種類のアプリケーションの中から、上記累積和の値が大きい順に３つのアプリケーション（アプリＤ、アプリＢ、アプリＥ）を選択し、その選択した３つのアプリケーションを「おすすめアプリ」として決定する。この際、併せて順位を決定することもできる。以降の動作は上述の第１の実施形態と同様である。本実施形態の生成部２６４は、例えば図３６に示すようなアプリケーション一覧画面に対応する画面情報を作成することができる。
【０１１６】
（第２の実施形態の変形例）
例えば顧客情報の種類ごとに予め定められた重みが設定され、決定部２３２は、複数種類のアプリケーションごとに、おすすめアプリ要求部２６３から受信したアプリ要求に含まれる複数種類の顧客情報（「特定部」により特定された複数種類の顧客情報）と１対１に対応する複数の累積インストール数の重み付き加算を行い、重み付き加算により得られた累積和が最も大きいアプリケーションを、「おすすめアプリ」として決定することもできる。また、例えば決定部２３２は、複数種類のアプリケーションの中から、重み付き加算により得られた累積和が大きい順に所定数のアプリケーションを選択し、その選択した所定数のアプリケーションを「おすすめアプリ」として決定することもできる。この際、併せて順位を決定することもできる。
【０１１７】
例えば拠点数を表す顧客情報を最も重要視し、重要度が高い順に、拠点数→市場層→業種とする形態であってもよい。この場合、例えば市場層を表す顧客情報に対しては「２」という重み係数が設定され、業種を表す顧客情報に対しては「１」という重み係数が設定され、拠点数を表す顧客情報に対しては「３」という重み係数が設定される形態であってもよい。
【０１１８】
いま、例えば、上述のアプリ要求に含まれる３種類の顧客情報が、「Ｌ」という市場層を表す顧客情報、「建設」という業種を表す顧客情報、および、「３」という拠点数を表す顧客情報である場合を想定する。上記と同様に、おすすめアプリ要求部２６３から上述のおすすめアプリ要求を受信した決定部２３２は、複数種類のアプリケーションごとに、３種類の顧客情報（この例では、「Ｌ」という市場層を表す顧客情報、「建設」という業種を表す顧客情報、および、「３」という拠点数を表す顧客情報）と１対１に対応する３つの累積インストール数を求める。以下、図１１〜図１３を用いて、「アプリＡ」を例に挙げて説明する。この例においては、「Ｌ」という市場層を表す顧客情報に対応する累積インストール数は「１０」であり（図１１参照）、「建設」という業種を表す顧客情報に対応する累積インストール数は「１０」であり（図１２参照）、「３」という拠点数を表す顧客情報に対応する累積インストール数は「１０」である（図１３参照）。この例では、市場層を表す顧客情報に対しては「２」という重み係数が設定され、業種を表す顧客情報に対しては「１」という重み係数が設定され、拠点数を表す顧客情報に対しては「３」という重み係数が設定されるので、上記３つの累積インストール数の重み付き加算により得られる累積和は、１０×２＋１０×１＋１０×３＝６０となる。以上のようにして、決定部２３２は、複数種類のアプリケーションごとに、上記累積和の値を求めることができる。
【０１１９】
（第３の実施形態）
次に、第３の実施形態を説明する。上述の第１の実施形態と共通する部分については適宜に説明を省略する。本実施形態では、上述の対応情報は、機番ごとに複数種類の顧客情報を対応付けた情報であり、上述の関係情報は、複数種類の顧客情報と複数種類のアプリケーションとの組み合わせごとに、累積インストール数を対応付けた情報であることを前提とし、「決定部」は、「特定部」により特定された複数種類の顧客情報ごとに、該顧客情報に対応付けられた複数種類のアプリケーションの各々に対して、累積インストール数が多い順で順位を表す順位値を割り当てた後、複数種類のアプリケーション（関係情報に含まれる複数種類のアプリケーション）ごとに、複数種類の顧客情報と１対１に対応する複数の順位値の和を示す順位和を求め、順位和の値が最も小さいアプリケーションを「おすすめアプリ」として決定する。より具体的には、「決定部」は、複数種類のアプリケーションの中から、順位和の値が小さい順に所定数のアプリケーションを選択し、その選択したアプリケーションを「おすすめアプリ」として決定する。
【０１２０】
いま、例えば、上述のアプリ要求に含まれる３種類の顧客情報が、「Ｌ」という市場層を表す顧客情報、「建設」という業種を表す顧客情報、および、「３」という拠点数を表す顧客情報である場合を想定する。
【０１２１】
この場合、おすすめアプリ要求部２６３から上述のおすすめアプリ要求を受信した決定部２３２は、上述の第３の情報を参照して、「Ｌ」という市場層を表す顧客情報と複数種類のアプリケーションとの組み合わせごとに、対応付けられた累積インストール数を特定し、累積インストール数が多い順で順位を表す順位値を割り当てる。この例では、図３７に示すように、アプリＡと、「Ｌ」という市場層を表す顧客情報との組み合わせに対しては「５」を示す順位値が割り当てられる。同様に、アプリＢと、「Ｌ」という市場層を表す顧客情報との組み合わせに対しては「２」を示す順位値が割り当てられる。同様に、アプリＣと、「Ｌ」という市場層を表す顧客情報との組み合わせに対しては「４」を示す順位値が割り当てられる。同様に、アプリＤと、「Ｌ」という市場層を表す顧客情報との組み合わせに対しては「１」を示す順位値が割り当てられる。同様に、アプリＥと、「Ｌ」という市場層を表す顧客情報との組み合わせに対しては「３」を示す順位値が割り当てられる。
【０１２２】
また、この例では、図３７に示すように、アプリＡと、「建築」という業種を表す顧客情報との組み合わせに対しては「５」を示す順位値が割り当てられる。同様に、アプリＢと、「建築」という業種を表す顧客情報との組み合わせに対しては「１」を示す順位値が割り当てられる。同様に、アプリＣと、「建築」という業種を表す顧客情報との組み合わせに対しては「３」を示す順位値が割り当てられる。同様に、アプリＤと、「建築」という業種を表す顧客情報との組み合わせに対しては「４」を示す順位値が割り当てられる。同様に、アプリＥと、「建築」という業種を表す顧客情報との組み合わせに対しては「２」を示す順位値が割り当てられる。
【０１２３】
さらに、この例では、図３７に示すように、アプリＡと、「２〜１０」という拠点数（「３」という拠点数に対応）を表す顧客情報との組み合わせに対しては「５」を示す順位値が割り当てられる。同様に、アプリＢと、「２〜１０」という拠点数を表す顧客情報との組み合わせに対しては「４」を示す順位値が割り当てられる。同様に、アプリＣと、「２〜１０」という拠点数を表す顧客情報との組み合わせに対しては「２」を示す順位値が割り当てられる。同様に、アプリＤと、「２〜１０」という拠点数を表す顧客情報との組み合わせに対しては「１」を示す順位値が割り当てられる。同様に、アプリＥと、「２〜１０」という拠点数を表す顧客情報との組み合わせに対しては「３」を示す順位値が割り当てられる。
【０１２４】
そして、決定部２３２は、複数種類のアプリケーションごとに、３つの顧客情報（この例では、「Ｌ」という市場層を表す顧客情報、「建設」という業種を表す顧客情報、および、「３」という拠点数を表す顧客情報）と１対１に対応する３つの順位値の和を示す順位和を求める。図３７の例では、アプリＡの順位和は「１５」となり、アプリＢの順位和は「７」となり、アプリＣの順位和は「９」となり、アプリＤの順位和は「６」となり、アプリＥの順位和は「８」となる。この例では、決定部２３２は、順位和が最も小さいアプリＤを「おすすめアプリ」として決定する。また、決定部２３２は、複数種類のアプリケーションの中から、上記順位和の値が小さい順に３つのアプリケーション（アプリＤ、アプリＢ、アプリＥ）を選択し、その選択した３つのアプリケーションを「おすすめアプリ」として決定する。この際、併せて順位を決定することもできる。以降の動作は上述の第１の実施形態と同様である。
【０１２５】
（第３の実施形態の変形例）
例えば顧客情報の種類ごとに予め定められた重みが設定され、決定部２３２は、複数種類のアプリケーションごとに、おすすめアプリ要求部２６３から受信したアプリ要求に含まれる複数種類の顧客情報（「特定部」により特定された複数種類の顧客情報）と１対１に対応する複数の順位値の重み付き加算を行い、重み付き加算により得られた順位和が最も小さいアプリケーションを、「おすすめアプリ」として決定することもできる。また、例えば決定部２３２は、複数種類のアプリケーションの中から、重み付き加算により得られた順位和が小さい順に所定数のアプリケーションを選択し、その選択した所定数のアプリケーションを「おすすめアプリ」として決定することもできる。この際、併せて順位を決定することもできる。
【０１２６】
例えば拠点数を表す顧客情報を最も重要視し、重要度が高い順に、拠点数→市場層→業種とする形態であってもよい。この場合、例えば市場層を表す顧客情報に対しては「２」という重み係数が設定され、業種を表す顧客情報に対しては「１」という重み係数が設定され、拠点数を表す顧客情報に対しては「３」という重み係数が設定される形態であってもよい。
【０１２７】
いま、例えば、上述のおすすめアプリ要求に含まれる３種類の顧客情報が、「Ｌ」という市場層を表す顧客情報、「建設」という業種を表す顧客情報、および、「３」という拠点数を表す顧客情報である場合を想定する。以下、一例として、アプリＡに対応する順位和の算出方法を例に挙げて説明する。この場合、図３７に示すように、アプリＡと、「Ｌ」という市場層を表す顧客情報との組み合わせに対しては「５」を示す順位値が割り当てられ、アプリＡと、「建築」という業種を表す顧客情報との組み合わせに対しては「５」を示す順位値が割り当てられ、アプリＡと、「２〜１０」という拠点数を表す顧客情報との組み合わせに対しては「５」を示す順位値が割り当てられる。この例では、市場層を表す顧客情報に対しては「２」という重み係数が設定され、業種を表す顧客情報に対しては「１」という重み係数が設定され、拠点数を表す顧客情報に対しては「３」という重み係数が設定されるので、上記３つの順位値の重み付き加算により得られる順位和は、５×２＋５×１＋５×３＝３０となる。以上のようにして、決定部２３２は、複数種類のアプリケーションごとに、上記順位和の値を求めることができる。
【０１２８】
（第４の実施形態）
次に、第４の実施形態を説明する。上述の第１の実施形態と共通する部分については適宜に説明を省略する。本実施形態では、上述の対応情報は、機番ごとに複数種類の顧客情報を対応付けた情報であることを前提とし、上述の関係情報は、複数種類の顧客情報と複数種類のアプリケーションとの組み合わせごとに、利用の可否を示す属性情報を対応付けた情報である。
【０１２９】
本実施形態では、関係情報は、図３８に示す第９の情報と、図３９に示す第１０の情報と、図４０に示す第１１の情報とから構成されている。
【０１３０】
図３８に示す第９の情報は、それぞれが市場層を表す複数の顧客情報（「ＫＧ」という市場層を表す顧客情報、「ＭＡ」という市場層を表す顧客情報、「Ｌ」という市場層を表す顧客情報、「Ｍ２」という市場層を表す顧客情報等）と、複数種類のアプリケーション（アプリＡ、アプリＢ、アプリＣ、アプリＤ、アプリＥ等）との組み合わせごとに、属性情報を対応付けた情報である。この例では、「ＴＲＵＥ」を示す属性情報は、対応するアプリケーションの利用が可能であることを示し、「ＦＡＬＳＥ」を示す属性情報は、対応するアプリケーションの利用が不可能であることを示す。
【０１３１】
また、図３９に示す第１０の情報は、それぞれが業種を表す複数の顧客情報（「医療」という業種を表す顧客情報、「教育」という業種を表す顧客情報、「建設」という業種を表す顧客情報、「金融」という業種を表す顧客情報など）と、複数種類のアプリケーション（アプリＡ、アプリＢ、アプリＣ、アプリＤ、アプリＥ等）との組み合わせごとに、属性情報を対応付けた情報である。さらに、図４０に示す第１１の情報は、それぞれが拠点数を表す複数の顧客情報（「１」という拠点数を表す顧客情報、「２〜１０」という拠点数を表す顧客情報、「１０以上」という拠点数を表す顧客情報など）と、複数種類のアプリケーション（アプリＡ、アプリＢ、アプリＣ、アプリＤ、アプリＥ等）との組み合わせごとに、属性情報を対応付けた情報である。
【０１３２】
本実施形態の決定部２３２は、おすすめアプリ要求部２６３からのおすすめアプリ要求を受信すると、該おすすめアプリ要求に含まれる顧客情報ごとに、該顧客情報に対応付けられた複数種類のアプリケーションの中から、利用可能を示す属性情報（この例では「ＴＲＵＥ」を示す属性情報）が対応付けられた１以上のアプリケーションを選択し、選択された数が最も多いアプリケーションを「おすすめアプリ」として決定する。この例では、決定部２３２は、複数種類のアプリケーション（関係情報に含まれる複数種類のアプリケーション）の中から、選択された数が多い順に所定数のアプリケーションを選択し、その選択した所定数のアプリケーションを「おすすめアプリ」として決定する。
【０１３３】
いま、例えば、上述のおすすめアプリ要求に含まれる３種類の顧客情報が、「Ｍ２」という市場層を表す顧客情報、「金融」という業種を表す顧客情報、および、「３」という拠点数を表す顧客情報である場合を想定する。
【０１３４】
この場合、おすすめアプリ要求部２６３から上述のアプリ要求を受信した決定部２３２は、上述の第９の情報を参照して、「Ｍ２」という市場層を表す顧客情報に対応付けられた複数種類のアプリケーションの中から、「ＴＲＵＥ」を示す属性情報が対応付けられたアプリケーションを選択する。また、決定部２３２は、上述の第１０の情報を参照して、「金融」という業種を表す顧客情報に対応付けられた複数種類のアプリケーションの中から、「ＴＲＵＥ」を示す属性情報が対応付けられたアプリケーションを選択する。また、決定部２３２は、上述の第１１の情報を参照して、「３」という拠点数を表す顧客情報に対応付けられた複数種類のアプリケーションの中から、「ＴＲＵＥ」を示す属性情報が対応付けられたアプリケーションを選択する。そして、複数種類のアプリケーションごとに、３種類の顧客情報（この例では、「Ｍ２」という市場層を表す顧客情報、「金融」という業種を表す顧客情報、および、「３」という拠点数を表す顧客情報）にわたって選択された数を特定し、選択された数が最も多いアプリケーションを「おすすめアプリ」として決定する。
【０１３５】
この例では、選択された数が「３」であるアプリＢを「おすすめアプリ」として決定する。また、本実施形態では、決定部２３２は、複数種類のアプリケーションの中から、選択された数が多い順に所定数（この例では３位までの数）のアプリケーションを選択（この例では、アプリＢ、アプリＡ、アプリＤ、アプリＥを選択）し、その選択した所定数のアプリケーションを「おすすめアプリ」として決定する。この際、併せて順位を決定することもできる（１位：アプリＢ、２位：アプリＡ，アプリＤ、３位：アプリＥ）。以降の動作は上述の第１の実施形態と同様である。
【０１３６】
以上、本発明に係る実施形態について説明したが、本発明は、上述の実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上述の実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態にわたる構成要素を適宜組み合わせてもよい。
【０１３７】
また、上述の実施形態では、本体１０と操作部２０は、別々のオペレーションシステムで互いに独立して動作しているが、これに限らず、例えば本体１０と操作部２０が同じオペレーションシステムで動作する形態であってもよい。つまり、本体１０と操作部２０とを一体とした構成であってもよい。
【０１３８】
また、上述した実施形態のシステム１（サーバ２、ＭＦＰ４等）で実行されるプログラムは、インストール可能な形式または実行可能な形式のファイルでＣＤ−ＲＯＭ、フレキシブルディスク（ＦＤ）、ＣＤ−Ｒ、ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｋ）、ＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）等のコンピュータで読み取り可能な記録媒体に記録して提供するように構成してもよいし、インターネット等のネットワーク経由で提供または配布するように構成してもよい。また、各種プログラムを、ＲＯＭ等に予め組み込んで提供するように構成してもよい。
【符号の説明】
【０１３９】
１      システム
２      サーバ
３      ネットワーク
４      ＭＦＰ
１０    本体
２０    操作部
２１０  アプリ情報管理モジュール
２１１  記憶部
２１２  制御部
２１３  画面提供部
２１４  設定部
２４０  ライセンス管理モジュール
２４１  記憶部
２４２  制御部
２４３  ライセンス発行部
２４４  ライセンス情報ＤＢ
２４５  ユーザ情報ＤＢ
２４６  登録制御部
２４７  ライセンス有効化部
２４８  ライセンス無効化部
２５０  アプリダウンロード管理モジュール
２５１  アプリストレージ
２５２  ダウンロード部
【先行技術文献】
【特許文献】
【０１４０】
【特許文献１】特開２０１３−１２０５６７号公報
【図１】
2020074165.tif 000003
【図２】
2020074165.tif 000004
【図３】
2020074165.tif 000005
【図４】
2020074165.tif 000006
【図５】
2020074165.tif 000007
【図６】
2020074165.tif 000008
【図７】
2020074165.tif 000009
【図８】
2020074165.tif 000010
【図９】
2020074165.tif 000011
【図１０】
2020074165.tif 000012
【図１１】
2020074165.tif 000013
【図１２】
2020074165.tif 000014
【図１３】
2020074165.tif 000015
【図１４】
2020074165.tif 000016
【図１５】
2020074165.tif 000017
【図１６】
2020074165.tif 000018
【図１７】
2020074165.tif 000019
【図１８】
2020074165.tif 000020
【図１９】
2020074165.tif 000021
【図２０】
2020074165.tif 000022
【図２１】
2020074165.tif 000023
【図２２】
2020074165.tif 000024
【図２３】
2020074165.tif 000025
【図２４】
2020074165.tif 000026
【図２５】
2020074165.tif 000027
【図２６】
2020074165.tif 000028
【図２７】
2020074165.tif 000029
【図２８】
2020074165.tif 000030
【図２９】
2020074165.tif 000031
【図３０】
2020074165.tif 000032
【図３１】
2020074165.tif 000033
【図３２】
2020074165.tif 000034
【図３３】
2020074165.tif 000035
【図３４】
2020074165.tif 000036
【図３５】
2020074165.tif 000037
【図３６】
2020074165.tif 000038
【図３７】
2020074165.tif 000039
【図３８】
2020074165.tif 000040
【図３９】
2020074165.tif 000041
【図４０】
2020074165.tif 000042
【手続補正書】
【提出日】令和2年3月10日(2020.3.10)
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】０００１
【補正方法】変更
【補正の内容】
【０００１】
本発明は、情報処理装置、プログラム、情報処理システム、情報処理方法および画像形成装置に関する。
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】０００５
【補正方法】変更
【補正の内容】
【０００５】
本発明は、上記に鑑みてなされたものであり、ユーザの固有の情報を反映させて、利用を推奨するアプリケーションを決定することが可能な情報処理装置、プログラム、情報処理システム、情報処理方法および画像形成装置を提供することを目的とする。
【手続補正４】
【補正対象書類名】明細書
【補正対象項目名】０００６
【補正方法】変更
【補正の内容】
【０００６】
上述した課題を解決し、目的を達成するために、本発明は、ネットワークを介して、記録媒体上に画像を形成する１以上の画像形成装置と接続される情報処理装置であって、前記画像形成装置から前記画像形成装置を識別する機番を取得する取得部と、取得した前記機番を用いて、前記機番ごとに、前記画像形成装置を利用する法人を示す顧客情報を対応付けた対応情報、及び、前記顧客情報とアプリケーションとの関係を示す関係情報に基づいて、前記法人の利用する前記画像形成装置において利用を推奨する１以上の利用推奨アプリケーションを決定する決定部と、前記決定部により決定された１以上の前記利用推奨アプリケーションを含む画面情報を前記画像形成装置へ送信する送信部と、を備える。
【手続補正５】
【補正対象書類名】明細書
【補正対象項目名】０００９
【補正方法】変更
【補正の内容】
【０００９】
以下、添付図面を参照しながら、本発明に係る情報処理装置、プログラム、情報処理システム、情報処理方法および画像形成装置の実施形態を詳細に説明する。以下では、情報処理システムに含まれる機器の一例として、画像形成装置の一態様である複合機（ＭＦＰ：Multifunction  Peripheral）を例に挙げて説明するが、これに限られるものではない。なお、複合機とは、コピー機能、スキャナ機能、プリンタ機能、ファクス機能などの複数の異なる機能を有する装置である。
【手続補正６】
【補正対象書類名】明細書
【補正対象項目名】００９８
【補正方法】変更
【補正の内容】
【００９８】
次に、アプリ情報管理モジュール２１０は、ステップＳ９で受信した１以上の「おすすめアプリ」の中に、ＭＦＰ４からの画面情報要求に含まれるアプリＩＤで識別されるアプリケーションと一致するアプリケーションが存在する場合は、該アプリケーションを「おすすめアプリ」から除外する処理を行う（ステップＳ１０）。次に、アプリ情報管理モジュール２１０は、「おすすめアプリ」を示す画面情報を生成し（ステップＳ１１）、画面情報要求に対する応答として、ステップＳ１１で生成した画面情報をＭＦＰ４へ送信する（ステップＳ１２）。ＭＦＰ４は、ステップＳ１２で受信した画面情報に対応する画面を生成し、生成した画面を操作パネル２７に表示する（ステップＳ１３）。この例では、表示制御部４１２は、画面情報要求に対する応答として受信した画面情報を、フラッシュメモリ２４等の記憶装置に格納するとともに、その受信した画面情報を用いて、図２５に示すアプリケーション一覧画面を最初に生成する。そして、その生成したアプリケーション一覧画面を操作パネル２７に表示する制御を行う。
【手続補正７】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
ネットワークを介して、記録媒体上に画像を形成する１以上の画像形成装置と接続される情報処理装置であって、
前記画像形成装置から前記画像形成装置を識別する機番を取得する取得部と、
取得した前記機番を用いて、前記機番ごとに、前記画像形成装置を利用する法人を示す顧客情報を対応付けた対応情報、及び、前記顧客情報とアプリケーションとの関係を示す関係情報に基づいて、前記法人の利用する前記画像形成装置において利用を推奨する１以上の利用推奨アプリケーションを決定する決定部と、
前記決定部により決定された１以上の前記利用推奨アプリケーションを含む画面情報を前記画像形成装置へ送信する送信部と、を備える、
情報処理装置。
【請求項２】
前記取得部により取得された前記機番に対応する顧客情報を特定する特定部を備え、
前記関係情報は、
複数種類の前記顧客情報と複数種類のアプリケーションとの組み合わせごとに、累積インストール数を対応付けた情報であり、
前記決定部は、
前記特定部により特定された前記顧客情報に対応付けられた複数種類のアプリケーションの中から、累積インストール数が最も多いアプリケーションを前記利用推奨アプリケーションとして決定する、
請求項１に記載の情報処理装置。
【請求項３】
前記決定部は、
前記特定部により特定された前記顧客情報に対応付けられた複数種類のアプリケーションの中から、累積インストール数が多い順に所定数のアプリケーションを選択し、その選択した前記所定数のアプリケーションを前記利用推奨アプリケーションとして決定する、
請求項２に記載の情報処理装置。
【請求項４】
前記対応情報は、
前記機番ごとに複数種類の前記顧客情報を対応付けた情報であり、
前記決定部は、
前記特定部により特定された複数種類の前記顧客情報ごとに、該顧客情報に対応付けられた複数種類のアプリケーションの中から、対応付けられた累積インストール数が最も多いアプリケーションを前記利用推奨アプリケーションとして決定する、
請求項２に記載の情報処理装置。
【請求項５】
前記決定部は、
前記特定部により特定された複数種類の前記顧客情報ごとに、該顧客情報に対応付けられた複数種類のアプリケーションの中から、対応付けられた累積インストール数が多い順に所定数のアプリケーションを選択し、その選択した前記所定数のアプリケーションを前記利用推奨アプリケーションとして決定する、
請求項４に記載の情報処理装置。
【請求項６】
前記対応情報は、
前記機番ごとに複数種類の前記顧客情報を対応付けた情報であり、
前記決定部は、
前記特定部により特定された複数種類の前記顧客情報ごとに、該顧客情報に対応付けられた複数種類のアプリケーションの各々に対応付けられた累積インストール数を特定した後、複数種類のアプリケーションごとに、前記特定部により特定された複数種類の前記顧客情報と１対１に対応する複数の累積インストール数の和を示す累積和を求め、前記累積和の値が最も大きいアプリケーションを、前記利用推奨アプリケーションとして決定する、
請求項２に記載の情報処理装置。
【請求項７】
前記決定部は、
複数種類のアプリケーションの中から、前記累積和の値が大きい順に所定数のアプリケーションを選択し、その選択した前記所定数のアプリケーションを前記利用推奨アプリケーションとして決定する、
請求項６に記載の情報処理装置。
【請求項８】
前記顧客情報の種類ごとに予め定められた重みが設定され、
前記決定部は、複数種類のアプリケーションごとに、前記特定部により特定された複数種類の前記顧客情報と１対１に対応する複数の累積インストール数の重み付き加算を行い、前記重み付き加算により得られた前記累積和が最も大きいアプリケーションを、前記利用推奨アプリケーションとして決定する、
請求項６に記載の情報処理装置。
【請求項９】
前記取得部により取得された前記機番に対応する顧客情報を特定する特定部を備え、
前記対応情報は、
前記機番ごとに複数種類の前記顧客情報を対応付けた情報であり、
前記関係情報は、
複数種類の前記顧客情報と複数種類のアプリケーションとの組み合わせごとに、累積インストール数を対応付けた情報であり、
前記決定部は、
前記特定部により特定された複数種類の前記顧客情報ごとに、該顧客情報に対応付けられた複数種類のアプリケーションの各々に対して、累積インストール数が多い順で順位を表す順位値を割り当てた後、複数種類のアプリケーションごとに、複数種類の前記顧客情報と１対１に対応する複数の前記順位値の和を示す順位和を求め、前記順位和の値が最も小さいアプリケーションを前記利用推奨アプリケーションとして決定する、
請求項１に記載の情報処理装置。
【請求項１０】
前記決定部は、
複数種類のアプリケーションの中から、前記順位和の値が小さい順に所定数のアプリケーションを選択し、その選択したアプリケーションを前記利用推奨アプリケーションとして決定する、
請求項９に記載の情報処理装置。
【請求項１１】
前記顧客情報ごとに予め定められた重みが設定され、
前記決定部は、複数種類のアプリケーションごとに、前記特定部により特定された複数種類の前記顧客情報と１対１に対応する複数の前記順位値の重み付き加算を行い、前記重み付き加算により得られた順位和が最も小さいアプリケーションを、前記利用推奨アプリケーションとして決定する、
請求項１０に記載の情報処理装置。
【請求項１２】
前記取得部により取得された前記機番に対応する顧客情報を特定する特定部を備え、
前記対応情報は、
前記機番ごとに複数種類の前記顧客情報を対応付けた情報であり、
前記関係情報は、
複数種類の前記顧客情報と複数種類のアプリケーションとの組み合わせごとに、利用の可否を示す属性情報を対応付けた情報であり、
前記決定部は、
前記特定部により特定された複数種類の前記顧客情報ごとに、該顧客情報に対応付けられた複数種類のアプリケーションの中から、利用可能を示す前記属性情報が対応付けられた１以上のアプリケーションを選択し、選択された数が最も多いアプリケーションを前記利用推奨アプリケーションとして決定する、
請求項１に記載の情報処理装置。
【請求項１３】
前記決定部は、
複数種類のアプリケーションの中から、選択された数が多い順に所定数のアプリケーションを選択し、その選択した前記所定数のアプリケーションを前記利用推奨アプリケーションとして決定する、
請求項１２に記載の情報処理装置。
【請求項１４】
前記取得部は、前記画像形成装置から、前記機番を含み、かつ、前記画像形成装置に対して利用を推奨する利用推奨アプリケーションを示す画面情報を要求する画面情報要求を取得し、
前記画面情報要求には、該画面情報要求の要求元の前記画像形成装置にインストール済みのアプリケーションを識別するアプリケーション識別情報が含まれ、
１以上の前記利用推奨アプリケーションの中に、前記画面情報要求に含まれる前記アプリケーション識別情報で識別されるアプリケーションと一致するアプリケーションが存在する場合は、該アプリケーションを前記利用推奨アプリケーションから除外する除外部をさらに有する、
請求項１乃至１３のうちの何れか１項に記載の情報処理装置。
【請求項１５】
前記対応情報は、前記法人を示す前記顧客情報と関連づいた、その法人の市場層、又は業種、又は拠点数を示す情報を含み、
前記関係情報は、各アプリケーションの、前記市場層、又は前記業種、又は前記拠点数毎の累積ダウンロード数を含む、
請求項１に記載の情報処理装置。
【請求項１６】
ネットワークを介して、記録媒体上に画像を形成する１以上の画像形成装置と接続される情報処理装置に搭載されたコンピュータに、
前記画像形成装置から前記画像形成装置を識別する機番を取得する取得ステップと、
取得した前記機番を用いて、前記機番ごとに、前記画像形成装置を利用する法人を示す顧客情報を対応付けた対応情報、及び、前記顧客情報とアプリケーションとの関係を示す関係情報に基づいて、前記法人の利用する前記画像形成装置において利用を推奨する１以上の利用推奨アプリケーションを決定する決定ステップと、
前記決定ステップにより決定された１以上の前記利用推奨アプリケーションを含む画面情報を前記画像形成装置へ送信する送信ステップと、を実行させるためのプログラム。
【請求項１７】
ネットワークを介して、記録媒体上に画像を形成する１以上の画像形成装置と接続され、かつ、１以上の情報処理装置を含む情報処理システムであって、
前記画像形成装置から前記画像形成装置を識別する機番を取得する取得部と、
取得した前記機番を用いて、前記機番ごとに、前記画像形成装置を利用する法人を示す顧客情報を対応付けた対応情報、及び、前記顧客情報とアプリケーションとの関係を示す関係情報に基づいて、前記法人の利用する前記画像形成装置において利用を推奨する１以上の利用推奨アプリケーションを決定する決定部と、
前記決定部により決定された１以上の前記利用推奨アプリケーションを含む画面情報を前記画像形成装置へ送信する送信部と、を備える、
情報処理システム。
【請求項１８】
前記画像形成装置は、
記録媒体上に画像を形成する機能であるコピー機能と、
前記コピー機能を含む機能を選択操作するための操作画面を表示する操作パネルと、
を有し、
前記操作パネルに表示された前記操作画面は、
前記コピー機能を選択するためのアイコンと、
前記画像形成装置にインストール可能なアプリケーションの一覧を表示するためのアイコンと、をともに表示し、
前記アプリケーションの一覧を表示するためのアイコンに対する操作に応じて、前記画像形成装置を識別する機番を前記情報処理装置に送信する、
請求項１７に記載の情報処理システム。
【請求項１９】
ネットワークを介して、記録媒体上に画像を形成する１以上の画像形成装置と接続され、かつ、１以上の情報処理装置を含む情報処理システムによる情報処理方法であって、
前記画像形成装置から前記画像形成装置を識別する機番を取得する取得ステップと、
取得した前記機番を用いて、前記機番ごとに、前記画像形成装置を利用する法人を示す顧客情報を対応付けた対応情報、及び、前記顧客情報とアプリケーションとの関係を示す関係情報に基づいて、前記法人の利用する前記画像形成装置において利用を推奨する１以上の利用推奨アプリケーションを決定する決定ステップと、
前記決定ステップにより決定された１以上の前記利用推奨アプリケーションを含む画面情報を前記画像形成装置へ送信する送信ステップと、を含む、
情報処理方法。
【請求項２０】
ネットワークを介して、情報処理装置と接続される画像形成装置であって、
記録媒体上に画像を形成する機能であるコピー機能と、
前記コピー機能を含む機能を選択操作するための操作画面を表示する操作パネルと、
を有し、
前記操作パネルに表示された前記操作画面は、
前記コピー機能を選択するためのアイコンと、
前記画像形成装置にインストール可能なアプリケーションの一覧を表示するためのアイコンと、をともに表示し、
前記アプリケーションの一覧を表示するためのアイコンに対する操作に応じて、前記画像形成装置を識別する機番を前記情報処理装置に送信する、
画像形成装置。