IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 株式会社リコーの特許一覧

特開2024-30189情報処理システム、サービス提供システム、情報処理方法、及びプログラム
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024030189
(43)【公開日】2024-03-07
(54)【発明の名称】情報処理システム、サービス提供システム、情報処理方法、及びプログラム
(51)【国際特許分類】
   G06Q 10/10 20230101AFI20240229BHJP
   G06F 3/0482 20130101ALI20240229BHJP
   H04N 1/00 20060101ALI20240229BHJP
【FI】
G06Q10/10
G06F3/0482
H04N1/00 127Z
H04N1/00 E
【審査請求】未請求
【請求項の数】9
【出願形態】OL
(21)【出願番号】P 2022132813
(22)【出願日】2022-08-23
(71)【出願人】
【識別番号】000006747
【氏名又は名称】株式会社リコー
(74)【代理人】
【識別番号】110002147
【氏名又は名称】弁理士法人酒井国際特許事務所
(72)【発明者】
【氏名】鈴木 友美
【テーマコード(参考)】
5C062
5E555
5L049
【Fターム(参考)】
5C062AA05
5C062AA13
5C062AA17
5C062AA31
5C062AA35
5C062AB02
5C062AB20
5C062AB22
5C062AB23
5C062AB41
5C062AB43
5C062AB44
5C062AC02
5C062AC04
5C062AC05
5C062AC22
5C062AC41
5C062AE11
5C062AF01
5C062AF06
5C062AF12
5C062AF14
5E555AA22
5E555AA28
5E555BA01
5E555BA27
5E555BB01
5E555BB04
5E555BB27
5E555BC01
5E555BC04
5E555BD01
5E555CA01
5E555CA12
5E555CB01
5E555CB12
5E555CC01
5E555DA01
5E555DB11
5E555DC21
5E555DC35
5E555DC75
5E555DD07
5E555EA03
5E555EA05
5E555EA07
5E555FA00
5L049AA11
(57)【要約】
【課題】契約パッケージの変更をユーザに提案する際に、パッケージごとのアプリケーションの表示順序をユーザの利用状況に応じて変更することができる。
【解決手段】ユーザに所定のサービスを提供するサービス提供システムと、複数のアプリケーションのうち、ユーザが利用可能な1つ以上のアプリケーションがパッケージ化された第1パッケージに含まれる第1アプリケーションによる処理を利用可能な機器と、を備え、サービス提供システムは、契約変更の要求を情報端末から受け付けると、第1アプリケーションのそれぞれの実行回数に基づいて第1アプリケーションに対応する第1アプリケーション情報の表示順序を決定する処理部と、契約変更の候補となる第2パッケージに含まれる第2アプリケーションに対応する第2アプリケーション情報と第1アプリケーション情報とを含む画面情報を表示順序に基づいて生成する画面生成部と、を備える。
【選択図】図4
【特許請求の範囲】
【請求項1】
ユーザに所定のサービスを提供するサービス提供システムと、
複数のアプリケーションのうち、前記ユーザが利用可能な1つ以上のアプリケーションがパッケージ化された第1パッケージに含まれる第1アプリケーションによる処理を利用可能な機器と、
を備え、
前記サービス提供システムは、
前記ユーザが前記第1アプリケーションを実行したログを保持するアプリ実行ログテーブル、及び、
前記第1パッケージを含む複数のパッケージのそれぞれと、前記複数のパッケージにそれぞれ含まれる1つ以上のアプリケーションとの関係が紐づけられた情報を保持するパッケージアプリ管理テーブル、を記憶する記憶部と、
契約変更の要求を情報端末から受け付けると、前記第1アプリケーションのそれぞれの実行回数に基づいて前記第1アプリケーションに対応する第1アプリケーション情報の表示順序を決定する処理部と、
契約変更の候補となる第2パッケージに含まれる第2アプリケーションに対応する第2アプリケーション情報と前記第1アプリケーション情報とを含む画面情報を前記表示順序に基づいて生成する画面生成部と、
を備える情報処理システム。
【請求項2】
前記画面生成部は、
前記情報端末に表示させる前記複数のアプリケーションのうち、前記実行回数が所定数以上のアプリケーションを強調して表示させる画面情報を生成する、
請求項1に記載の情報処理システム。
【請求項3】
前記記憶部は、
前記実行回数の情報を保持するアプリ履歴集計テーブルを記憶し、
前記処理部は、前記契約変更の要求を受け付けると、前回の契約変更の要求から所定期間が経過していなければ、前記アプリ履歴集計テーブルの情報に基づいて、前記第1アプリケーション情報の表示順序を決定する、
請求項1に記載の情報処理システム。
【請求項4】
前記処理部は、
前記実行回数に基づいて、前記実行回数が所定数以上の第1アプリケーション、または、前記第1アプリケーションの中で前記実行回数が所定の割合以上のアプリケーションを特定し、
特定した前記第1アプリケーションに対応する第1アプリケーション情報については前記実行回数が多い順に表示順序を決定し、
前記第2アプリケーションに対応する前記第2アプリケーション情報については、予め定められた順序にしたがって表示順序を決定する、
請求項1に記載の情報処理システム。
【請求項5】
前記所定数は、前記第1アプリケーションが属するパッケージに応じて、第1アプリケーションごとに異なる数値が設定される、
請求項4に記載の情報処理システム。
【請求項6】
前記ユーザは、
所定のグループに所属する複数のユーザであり、
前記記憶部には、
複数のグループごとに、前記複数のアプリケーションを実行したログが格納されており、
前記処理部は、
前記契約変更の要求を前記情報端末から受け付けると、前記所定のグループに所属する前記複数のユーザによる前記複数のアプリケーションのそれぞれの実行回数を集計して、前記実行回数が多い順に、前記情報端末における前記複数のアプリケーションの表示順序を決定する、
請求項1乃至請求項5のいずれか1項に記載の情報処理システム。
【請求項7】
ユーザに所定のサービスを提供するサービス提供システムと、
複数のアプリケーションのうち、前記ユーザが利用可能な1つ以上のアプリケーションがパッケージ化された第1パッケージに含まれる第1アプリケーションによる処理を利用可能な機器と、
を備え、
前記サービス提供システムが、
前記ユーザが前記第1アプリケーションを実行したログを保持するアプリ実行ログテーブル、及び、
前記第1パッケージを含む複数のパッケージのそれぞれと、前記複数のパッケージにそれぞれ含まれる1つ以上のアプリケーションとの関係が紐づけられた情報を保持するパッケージアプリ管理テーブルと、を記憶する記憶部を備える情報処理システムで実行される情報処理方法であって、
契約変更の要求を情報端末から受け付けると、前記第1アプリケーションのそれぞれの実行回数に基づいて前記第1アプリケーションに対応する第1アプリケーション情報の表示順序を決定し、
契約変更の候補となる第2パッケージに含まれる第2アプリケーションに対応する第2アプリケーション情報と前記第1アプリケーション情報とを含む画面情報を前記表示順序に基づいて生成する、
情報処理方法。
【請求項8】
複数のアプリケーションのうち、ユーザが利用可能な1つ以上のアプリケーションがパッケージ化された第1パッケージに含まれる第1アプリケーションによる処理を利用可能な機器を介して前記ユーザに所定のサービスを提供するコンピュータであって、
前記ユーザが前記第1アプリケーションを実行したログを保持するアプリ実行ログテーブル、及び、
前記第1パッケージを含む複数のパッケージのそれぞれと、前記複数のパッケージにそれぞれ含まれる1つ以上のアプリケーションとの関係が紐づけられた情報を保持するパッケージアプリ管理テーブル、を記憶する記憶部を備える前記コンピュータに、
契約変更の要求を情報端末から受け付けると、前記第1アプリケーションのそれぞれの実行回数に基づいて前記第1アプリケーションに対応する第1アプリケーション情報の表示順序を決定させ、
契約変更の候補となる第2パッケージに含まれる第2アプリケーションに対応する第2アプリケーション情報と前記第1アプリケーション情報とを含む画面情報を前記表示順序に基づいて生成させる、
プログラム。
【請求項9】
複数のアプリケーションのうち、ユーザが利用可能な1つ以上のアプリケーションがパッケージ化された第1パッケージに含まれる第1アプリケーションによる処理を利用可能な機器を介して前記ユーザに所定のサービスを提供するサービス提供システムであって、
前記ユーザが前記第1アプリケーションを実行したログを保持するアプリ実行ログテーブル、及び、
前記第1パッケージを含む複数のパッケージのそれぞれと、前記複数のパッケージにそれぞれ含まれる1つ以上のアプリケーションとの関係が紐づけられた情報を保持するパッケージアプリ管理テーブル、を記憶する記憶部と、
契約変更の要求を情報端末から受け付けると、前記第1アプリケーションのそれぞれの実行回数に基づいて前記第1アプリケーションに対応する第1アプリケーション情報の表示順序を決定する処理部と、
契約変更の候補となる第2パッケージに含まれる第2アプリケーションに対応する第2アプリケーション情報と前記第1アプリケーション情報とを含む画面情報を前記表示順序に基づいて生成する画面生成部と、
を備えるサービス提供システム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理システム、サービス提供システム、情報処理方法、及びプログラムに関する。
【背景技術】
【0002】
近年、クラウドコンピューティング等により多種多様な外部サービスが提供されるようになっている。例えば、ユーザにより指定された電子ファイルを外部ストレージに保管する外部サービス等が知られている。特許文献1には、ユーザがサービスの選択をする際に、ユーザの利用状況に応じて選択可能なサービスの表示順を決定する構成が開示されている。
【発明の概要】
【発明が解決しようとする課題】
【0003】
しかしながら、特許文献1の技術では、例えばユーザが利用可能な複数のアプリケーションをまとめたパッケージ単位でのアプリケーションの一覧表示は行っていない。したがって、複数のパッケージの中から、そのユーザの利用状況に合わせたパッケージを選択することが困難である。
【0004】
本発明は、上記に鑑みてなされたものであって、契約パッケージの変更をユーザに提案する際に、パッケージごとのアプリケーションの表示順序をユーザの利用状況に応じて変更することができる情報処理システム、サービス提供システム、情報処理方法、及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【0005】
上述した課題を解決し、目的を達成するために、本発明は、ユーザに所定のサービスを提供するサービス提供システムと、複数のアプリケーションのうち、前記ユーザが利用可能な1つ以上のアプリケーションがパッケージ化された第1パッケージに含まれる第1アプリケーションによる処理を利用可能な機器と、を備え、前記サービス提供システムは、前記ユーザが前記第1アプリケーションを実行したログを保持するアプリ実行ログテーブル、及び、前記第1パッケージを含む複数のパッケージのそれぞれと、前記複数のパッケージにそれぞれ含まれる1つ以上のアプリケーションとの関係が紐づけられた情報を保持するパッケージアプリ管理テーブル、を記憶する記憶部と、契約変更の要求を情報端末から受け付けると、前記第1アプリケーションのそれぞれの実行回数に基づいて前記第1アプリケーションに対応する第1アプリケーション情報の表示順序を決定する処理部と、契約変更の候補となる前記第2パッケージに含まれる第2アプリケーションに対応する第2アプリケーション情報と前記第1アプリケーションとを含む画面情報を前記表示順序に基づいて生成する画面生成部と、を備える。
【発明の効果】
【0006】
本発明によれば、契約パッケージの変更をユーザに提案する際に、パッケージごとのアプリケーションの表示順序をユーザの利用状況に応じて変更することができる。
【図面の簡単な説明】
【0007】
図1図1は、実施形態1にかかる情報処理システムの構成の一例を示す模式図である。
図2図2は、実施形態1にかかる個々のサービス提供装置のハードウェア構成の一例を示すブロック図である。
図3図3は、実施形態1にかかる複合機のハードウェア構成の一例を示すブロック図である。
図4図4は、実施形態1にかかる情報処理システムの機能構成の一例を示すブロック図である。
図5図5は、実施形態1にかかる外部ストレージシステムに格納されるアプリ実行ログテーブルの構成の一例を示す図である。
図6図6は、実施形態1にかかる外部ストレージシステムに格納されるアプリ管理テーブルの構成の一例を示す図である。
図7図7は、実施形態1にかかる外部ストレージシステムに格納されるパッケージ管理テーブルの構成の一例を示す図である。
図8図8は、実施形態1にかかる外部ストレージシステムに格納されるパッケージアプリ管理テーブルの構成の一例を示す図である。
図9図9は、実施形態1にかかる外部ストレージシステムに格納される契約パッケージ管理テーブルの構成の一例を示す図である。
図10図10は、実施形態1にかかる外部ストレージシステムに格納されるパッケージグループ管理テーブルの構成の一例を示す図である。
図11図11は、実施形態1にかかるサービス提供システムにより生成されるアプリ履歴集計テーブルの構成の一例を示す図である。
図12図12は、実施形態1にかかるサービス提供システムにより生成されるアプリ履歴集計テーブルの構成の一例を示す図である。
図13図13は、実施形態1にかかるユーザ端末に表示される契約サービスの変更画面の一例を示す図である。
図14図14は、実施形態1にかかる情報処理ステムにおける情報処理の手順の一例を示すフロー図である。
図15A図15Aは、実施形態1にかかる情報処理ステムにおける情報処理の手順の一例を示すシーケンス図である。
図15B図15Bは、実施形態1にかかる情報処理ステムにおける情報処理の手順の一例を示すシーケンス図である。
図16図16は、実施形態1の変形例1にかかる情報処理システムにおける情報処理の手順の一例を示すフロー図である。
図17図17は、実施形態1の変形例3にかかるサービス提供システムにより参照されるアプリ実行回数打ち切り順位計テーブルの構成の一例を示す図である。
図18図18は、実施形態2にかかる情報処理システムの構成の一例を示す模式図である。
図19図19は、実施形態2にかかる情報処理システムの機能構成の一例を示すブロック図である。
図20図20は、実施形態2にかかる情報処理ステムにおける情報処理の手順の一例を示すシーケンス図である。
【発明を実施するための形態】
【0008】
以下、発明を実施するための最良の形態を、図面に従って詳細に説明する。
【0009】
[実施形態1]
以下に、図面を用いて実施形態1について説明する。
【0010】
(情報処理システムの構成例)
図1は、実施形態1にかかる情報処理システム1の構成の一例を示す模式図である。実施形態1の情報処理システム1は、サービス提供システム30により、ユーザに種々のオンラインサービスを提供することが可能に構成されている。
【0011】
図1に示すように、情報処理システム1は、複数のユーザ端末10(10a,10b・・・)、複数の複合機20(20a,20b・・・)、サービス提供システム30、及び外部ストレージシステム40を備えている。
【0012】
複数のユーザ端末10及び複数の複合機20はユーザ環境E1に設置されている。ユーザ環境E1は、例えば複数のユーザが所属する企業、組織、または団体等の所定のグループにおけるシステム環境である。所定のグループは、サービス提供システム30が提供するサービスの利用契約を有している。このような利用契約を有するグループは複数存在し、本明細書ではこれらのグループのそれぞれをテナントと呼ぶ。
【0013】
複数のユーザ端末10と複数の複合機20とは、例えばLAN(Local Area Network)のような、上記テナントにより構築された構内ネットワーク等のネットワークを介して互いに接続されている。
【0014】
サービス提供システム30はサービス提供環境E2に設置されている。サービス提供環境E2は、例えばインターネットのような広域通信網等のネットワークNTを介して、クラウドサービス等のオンラインサービスを提供するシステム環境である。
【0015】
複数のユーザ端末10及び複数の複合機20と、サービス提供システム30と、外部ストレージシステム40とは、例えばネットワークNTを介して互いに接続されている。
【0016】
情報端末としての個々のユーザ端末10a,10b・・・は、上記テナントに所属する複数のユーザが使用するデスクトップ型、ノート型、もしくはラップトップ型等のPC(Personal Computer)、または、スマートフォン、携帯電話、もしくはタブレット端末等の携帯端末である。
【0017】
複数のユーザは、これらのユーザ端末10a,10b・・・により、サービス提供システム30にアクセスして、サービス提供システム30が提供可能な種々のサービスに関する情報等を取得したり、契約サービスの変更等を行ったりすることができる。
【0018】
なお、ユーザ環境E1に設置されるユーザ端末10の数は任意であって、ユーザ環境E1には、1つ以上のユーザ端末10が設置される。
【0019】
機器としての個々の複合機(MFP:Multifunction Peripheral)20a,20b・・・は、例えばスキャナ機能およびプリンタ機能を備えている。複合機20が、コピー機能およびファクシミリ機能等の他の機能を更に有するよう構成されていてもよい。サービス提供システム30が提供する各種のサービスを利用することができる。
【0020】
なお、ユーザ環境E1に設置される複合機20の数は任意であって、ユーザ環境E1には、1つ以上の複合機20が設置される。
【0021】
サービス提供システム30は、例えば複数のサービス提供装置30a,30b,30c,30d,30e・・・を含んで構成される。個々のサービス提供装置30a,30b,30c,30d,30e・・・は、デスクトップ型、ノート型、もしくはラップトップ型等のPCとして構成されている。
【0022】
複数のサービス提供装置30a,30b,30c,30d,30e・・・は、例えば原稿をスキャンして生成された電子ファイルに対して、個々に異なる処理を施すことが可能に構成される。電子ファイルに対する処理としては、例えばOCR(Optical Character Reader)処理、電子ファイルの形式変換を行うファイル変換処理、及び電子ファイルにタイムスタンプを付して、例えばユーザ環境E1のいずれかの複合機20で印刷するスタンプ押印処理等がある。
【0023】
サービス提供システム30は、例えばユーザ環境E1のいずれかの複合機20から取得した電子ファイル、または種々の処理を施した電子ファイルを外部ストレージシステム40に保存する。サービス提供システム30が、複合機20から取得した電子ファイルを一旦、外部ストレージシステム40に保存した後、その電子ファイルを読み出して種々の処理を施してもよい。
【0024】
なお、サービス提供システム30に含まれるサービス提供装置30a,30b,30c,30d,30e・・・の数は任意であって、サービス提供システム30は、1つ以上のサービス提供装置を備えることができる。
【0025】
外部ストレージシステム40は、例えば複数のストレージ装置40a,40b,40c・・・を含んで構成される。これらのストレージ装置40a,40b,40c・・・が、ネットワークNTに置かれたクラウドサーバ等として構成されていてもよい。
【0026】
外部ストレージシステム40は、ユーザ環境E1の複合機20から取得した電子ファイル、及びサービス提供システム30により種々の処理が施された電子ファイル等を個々のストレージ装置40a,40b,40c・・・に保持している。また、外部ストレージシステム40は、サービス提供システム30により提供される種々のサービスに関する情報、及びこれらのサービスを利用する複数のテナントに関する情報等を保持している。
【0027】
なお、外部ストレージシステム40に含まれるストレージ装置40a,40b,40c・・・の数は任意であって、外部ストレージシステム40は、1つ以上のサーバ装置を備えることができる。
【0028】
以上の構成により、情報処理システム1は、サービス提供システム30により、オンラインストレージサービス、スキャン配信サービス、オンラインプリントサービス等の種々のサービスを上記テナントの複数のユーザに対して提供することができる。
【0029】
なお、情報処理システム1が提供するサービスは、例えばクラウド環境にて提供されるクラウドサービスであってもよく、それ以外の外部サービスであってもよい。他の外部サービスとしては、例えばASP(Application Service Provider)によって提供されるサービス、またはウェブサービス等のネットワークを介して提供されるサービスがある。
【0030】
(サービス提供装置のハードウェア構成例)
次に、図2を用いて、実施形態1の個々のサービス提供装置30a,30b,30c,30d,30e・・・のハードウェア構成について説明する。
【0031】
図2は、実施形態1にかかる個々のサービス提供装置30a,30b,30c,30d,30e・・・のハードウェア構成の一例を示すブロック図である。図2に示すように、個々のサービス提供装置30a,30b,30c,30d,30e・・・は、CPU(Central Processing Unit)1、記憶装置32、RAM(Random Access Memory)33、ROM(Read Only Memory)34、入力装置35、表示装置36、外部I/F(インターフェース)37、及び通信I/F38を備える。
【0032】
CPU31は、対応するサービス提供装置30a,30b,30c,30d,30e・・・を制御する。
【0033】
記憶装置32は、HDD(Hard Disk Drive)、SSD(Solid State Drive)等であり、CPU31の補助記憶装置として機能する。
【0034】
RAM33は、一次記憶装置として機能し、CPU31の作業領域となる。RAM33は、例えば揮発性の半導体メモリ等であってよい。
【0035】
ROM34は、個々のサービス提供装置30a,30b,30c,30d,30e・・・における保存領域として機能する。ROM34に記憶された情報は、サービス提供装置30a,30b,30c,30d,30e・・・の電源が切られても保持される。
【0036】
CPU31が、例えばROM34に格納される制御プログラム34pをRAM33に展開して実行することで、個々のサービス提供装置30a,30b,30c,30d,30e・・・の各種機能が実現される。制御プログラム34pにより実現される各種機能には、例えば上述のOCR処理、ファイル変換処理、及びスタンプ押印処理等を実行する機能が含まれる。
【0037】
すなわち、制御プログラム34pには、個々のサービス提供装置30a,30b,30c,30d,30e・・・をそれぞれ制御する基本ソフトウェアであるOS(Operating System)、個々のサービス提供装置30a,30b,30c,30d,30e・・・の起動時に実行されるBIOS(Basic Input/Output System)、OS上において各種機能を提供するアプリケーションソフトウェア等が含まれていてよい。なお、本明細書では、アプリケーションソフトウェアを、単にアプリケーション、またはアプリなどと呼ぶことがある。
【0038】
なお、制御プログラム34pは、フレキシブルディスク、CD-R(Compact Disc-Recordable)、DVD(Digital Versatile Disk)、ブルーレイディスク(登録商標)、半導体メモリ等の、コンピュータで読み取り可能な各種の記録媒体に記録されて提供されることができる。
【0039】
また、制御プログラム34pを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成してもよい。また、制御プログラム34pをインターネット等のネットワーク経由で提供または配布するように構成してもよい。
【0040】
ROM34または記憶装置32には、その他、OS設定、ネットワーク設定等のプログラム及びデータが格納されている。
【0041】
例えばROM34及び記憶装置32に格納される制御プログラム34p、各種データ、及びその他のプログラム等は、例えば所定のファイルシステム及びデータベース等の少なくともいずれかによって管理されている。
【0042】
入力装置35は、キーボード、マウス、タッチパネルなどを含み、ユーザが各種の指示を入力することが可能なように構成される。表示装置36は、ディスプレイ等を含み、対応するサービス提供装置30a,30b,30c,30d,30e・・・における処理結果等を表示する。ただし、入力装置35及び表示装置36は、個々のサービス提供装置30a,30b,30c,30d,30e・・・に外部機器として接続して利用する形態であってもよい。
【0043】
外部I/F37は、個々のサービス提供装置30a,30b,30c,30d,30e・・・に外部機器を接続するためのインターフェースとなる。外部装置には、例えば記録媒体37r等が含まれうる。記録媒体37rとしては、例えばフレキシブルディスク、CD、DVD、SD(Secure Digital)メモリカード、及びUSB(Universal Serial Bus)メモリ等がある。
【0044】
通信I/F38は、例えばネットワークNTに接続可能に構成される。通信I/F38により、個々のサービス提供装置30a,30b,30c,30d,30e・・・は、通信I/F38を介して通信を行うことができる。
【0045】
なお、上述のユーザ端末10及び個々のサーバ装置40a,40b,40c・・・も、上述のサービス提供装置30a,30b,30c,30d,30e・・・と同様のハードウェア構成を備えていてよい。ユーザ端末10及び個々のサーバ装置40a,40b,40c・・・がそれぞれ備えるROMに所定の制御プログラム等を格納し、それぞれのCPUで実行することで、ユーザ端末10及び個々のサーバ装置40a,40b,40c・・・の各種機能が実現される。
【0046】
(複合機のハードウェア構成例)
次に、図3を用いて、実施形態1の複合機20のハードウェア構成について説明する。図3は、実施形態1にかかる複合機20のハードウェア構成の一例を示すブロック図である。図3に示すように、複合機20は、コントローラ20c、操作パネル26、外部I/F27、通信I/F28、プリンタ29p、及びスキャナ29sを備える。
【0047】
コントローラ20cは、CPU21、RAM22、ROM23、NV(Non-Volatile)RAM24、及び記憶装置25を備える。
【0048】
CPU21は、複合機20の全体を制御する。RAM22は、一次記憶装置として機能し、CPU21の作業領域となる。ROM23は、複合機20における保存領域として機能する。ROM23に記憶された情報は、複合機20の電源が切られても保持される。NVRAM24は、例えば設定情報等を格納する書き込み可能な不揮発性の記憶装置である。記憶装置25は、HDD、SSD等であり、CPU21の補助記憶装置として機能する。
【0049】
CPU21が、例えばROM23に格納される制御プログラムをRAM22に展開して実行することで、複合機20の各種機能が実現される。
【0050】
すなわち、制御プログラムには、複合機20を制御するOS、複合機20の起動時に実行されるBIOS、OS上において各種機能を提供するアプリケーションソフトウェア等が含まれていてよい。なお、アプリケーションソフトウェアには、ウェブサーバ等に接続するためのブラウザが含まれる。
【0051】
操作パネル26は、ユーザからの入力を受け付ける入力部と、表示を行う表示部とを備えている。
【0052】
外部I/F27は、複合機20に外部機器を接続するためのインターフェースとなる。外部装置には、例えば記録媒体27r等が含まれうる。記録媒体27rとしては、例えばフレキシブルディスク、CD、DVD、SDメモリカード、及びUSBメモリ等がある。
【0053】
通信I/F28は、例えばネットワークNT及びユーザ環境E1内の構内ネットワーク等に接続可能に構成される。通信I/F28により、複合機20が、通信I/F28を介して通信を行うことができる。
【0054】
プリンタ29pは、印刷データを用紙等の媒体に印刷する。媒体は、例えば紙、コート紙、厚紙、OHP、プラスチックフィルム、プリプレグ、銅箔などであってよく、紙に限定されない。印刷データは、例えばユーザ端末10等のプリンタドライバにより生成されて構内ネットワークを介して複合機20に送信される。印刷データが、ネットワークNTを介してサービス提供システム30から送信された各種の電子ファイルであってもよい。
【0055】
スキャナ29sは、原稿を読み取って電子ファイルを生成する読み取り装置である。
【0056】
(情報処理システムの機能構成例)
次に、図4を用いて、実施形態1の情報処理システム1の機能構成について説明する。図4は、実施形態1にかかる情報処理システム1の機能構成の一例を示すブロック図である。
【0057】
図4に示すように、サービス提供システム30は、入出力サービス部310、記憶部320、ドキュメントサービス部330、ストレージサービス連携部340、及びHMI(Human Machine Interface)部350を備える。
【0058】
記憶部320には、サービス提供システム30で実行される複数のアプリケーションごとに、アプリ情報3211,3212,3213・・・が格納されている。アプリ情報3211,3212,3213・・・には、複数のアプリケーションごとに、画面定義と処理内容とが記述されている。
【0059】
画面定義は、データ定義及びレイアウト等の情報を含み、所定のアプリケーションが実行されることで提供されるサービスを利用するため複合機20に表示させるアプリ画面を定義する。処理内容には、所定のアプリケーションを実行される一連の処理、及びこれらの処理ごとのパラメータ設定が記述されている。なお、本明細書では、所定のアプリケーションで実行される一連の処理を処理フローなどとも呼ぶ。
【0060】
なお、これらのアプリ情報3211,3212,3213・・・は、個々のアプリ情報3211,3212,3213・・・を一意に識別可能なアプリIDが付されて記憶部320に記憶されている。
【0061】
記憶部320の上記機能は、例えば制御プログラム34pを実行中のCPU31の制御下で動作する記憶装置32、RAM33、及びROM34等により実現される。また、サービス提供システム30が備える記憶部320と、後述する各種テーブルを記憶する外部ストレージシステム40とを合わせた記憶スペースは「記憶部」の一例である。
【0062】
入出力サービス部310は、アプリ管理部311、I/O(Input/Output)ロジック処理部312、及び認証部313を備える。
【0063】
アプリ管理部311は、記憶部320に記憶されるこれらのアプリ情報3211,3212,3213・・・を管理する。
【0064】
具体的には、アプリ管理部311は、例えば複合機20からの要求を受け付けると、アプリ情報3211,3212,3213・・・に含まれる画面定義に基づくアプリ画面を複合機20の操作パネル26に表示させる。これにより、サービス提供システム30から提供されるサービスを複合機20により利用することができる。
【0065】
また、アプリ管理部311は、I/Oロジック処理部312からの要求に応じて、アプリ情報3211,3212,3213・・・に含まれる処理内容を返信する。
【0066】
I/Oロジック処理部312は、例えば複合機20からの要求を受け付けると、アプリ管理部311から対応するアプリケーションの処理内容を取得する。また、I/Oロジック処理部312は、取得した処理内容にしたがってドキュメントサービス部320及びストレージサービス連携部340の少なくともいずれかに対して処理の実行を要求する。これにより、サービス提供システム30による各種サービスが複合機20に提供される。
【0067】
また、I/Oロジック処理部312は、アプリケーションが実行されると、そのログを外部ストレージシステム40内のアプリ実行ログテーブル41tに格納する。
【0068】
認証部313は、ユーザの認証情報を管理する。具体的には、認証部313は、複合機20からログイン情報を取得すると、ユーザの認証情報と照合する。認証部313は、複合機20からのログイン情報と、ユーザの認証情報とが合致すると、複合機20を認証し、複合機20によるサービス提供システム30へのアクセスを許可する。
【0069】
入出力サービス部310の上記機能は、例えば制御プログラム34pを実行中のCPU31により実現される。
【0070】
ドキュメントサービス部330は、サービス提供システム30により提供されるサービスを実現するためのアプリケーション群である。ドキュメントサービス部330は、例えば電子ファイルに対してOCR処理を実行するOCR処理部331、電子ファイルのファイル形式を例えばPDF形式等に変換するファイル変換処理部332、及び電子ファイルにタイムスタンプを押印して複合機20に印刷させるスタンプ押印部333等を備える。なお、ファイル変換処理部332は、例えば電子ファイルを複合機20が印刷可能なデータ形式である印刷データに変換してもよく、あるいは、電子ファイルをPDF形式等に変換してもよい。
【0071】
ドキュメントサービス部330は、これら以外にも、例えば、電子ファイルを圧縮または解凍するための圧縮・解凍部、または、電子ファイルを複合機20が印刷可能なデータ形式である印刷データに変換するデータ形式変換部等の機能部が含まれていてもよい。
【0072】
ドキュメントサービス部330の上記機能は、例えば制御プログラム34pに含まれる複数のアプリケーションをそれぞれ実行中のCPU31により実現される。
【0073】
ストレージサービス連携部340(340a,340b・・・)は、外部ストレージシステム40に含まれる複数のストレージ装置40a,40b,40c・・・ごとに対応して設けられている。
【0074】
サービス提供システム30が有する複数のアプリケーションは、それぞれ異なるストレージ装置40a,40b,40c・・・と連携している。個々のストレージサービス連携部340は、個々のアプリケーションを、対応するストレージ装置40a,40b,40c・・・に連携させる。
【0075】
ただし、アプリケーションによっては、外部ストレージシステム40と連携していないものも含まれる。例えば、電子ファイルにタイムスタンプを押して印刷する処理では外部ストレージシステム40との連携は不要であるため、そのような処理を実行するアプリケーションは、外部ストレージシステム40とは連携しておらず、対応するストレージサービス連携部340が設けられていなくともよい。
【0076】
ストレージサービス連携部340は、ファイル処理部341及びデータ処理部342を備え、I/Oロジック処理部312からの要求に応じて、外部ストレージシステム40に対して各種処理の実行を要求する。
【0077】
ファイル処理部341は、外部ストレージシステム40に保存されている電子ファイルに対する取得、保存、編集等の各種操作を行うためのAPI(Application Programming Interface)が定義された共通I/F3411及び固有I/F3412を有する。
【0078】
共通I/F3411は、外部ストレージシステム40の複数のストレージ装置40a,40b,40c・・・間で共通に利用できるAPIであり、電子ファイルの取得、保存等、全てのストレージ装置40a,40b,40c・・・が利用できるファイル操作に関する機能を利用するためのAPI群である。したがって、共通I/F3411は、全てのストレージサービス連携部340に対して同様に定義される。
【0079】
固有I/F3412は、複数のストレージ装置40a,40b,40c・・・のうち特定のストレージ装置において利用できるAPIであり、電子ファイルの編集等、或る特定のストレージ装置において利用できるファイル操作に関する機能を利用するためのAPI群である。したがって、固有I/F3412は、その固有I/F3412で定義されるAPIが利用可能な特定のストレージサービス連携部340に対して定義される。
【0080】
データ処理部342は、ファイル一覧、フォルダ一覧等、外部ストレージシステム40に保存されている電子ファイルの書誌情報等のメタデータを取得するためのAPIが定義された共通I/F3421及び固有I/F3422を有する。
【0081】
共通I/F3421は、複数のストレージ装置40a,40b,40c・・・間で共通に利用できるAPIであり、全てのストレージ装置40a,40b,40c・・・で利用できるメタデータ取得の機能を利用するためのAPI群である。したがって、共通I/F3421は、全てのストレージサービス連携部340に対して同様に定義される。
【0082】
固有I/F3422は、或る特定のストレージ装置において利用できるAPIであり、画像ファイル一覧の取得等、或る特定のストレージ装置において利用できるメタデータ取得等の機能を利用するためのAPI群である。したがって、固有I/F3422は、その固有I/F3422で定義されるAPIが利用可能な特定のストレージサービス連携部340に対して定義される。
【0083】
以上のように、ストレージサービス連携部340aはストレージ装置40aに対して処理を要求し、ストレージサービス連携部340bはストレージ装置40bに対して処理を要求し、というように、サービス提供システム30は、連携して処理を行う複数のストレージ装置40a,40b,40c・・・ごとに、それぞれ対応するストレージサービス連携部340を有している。
【0084】
ストレージサービス連携部340の上記機能は、例えば制御プログラム34pを実行中のCPU31により実現される。
【0085】
HMI部350は、画面生成部351、データベース処理部352、及び認証部353を備え、ユーザ端末10を介してサービス提供システム30のサービスに関する各種情報をユーザに提示するユーザインターフェースとして機能する。
【0086】
画面生成部351は、例えばユーザ端末10からの要求を受け付けると、サービス提供システム30により提供される各種サービスの情報を提示する画面、契約サービスの変更画面等をユーザ端末10の表示装置に表示させる。なお、画面生成部351は「画面生成部」の一例である。
【0087】
データベース処理部352は、外部ストレージシステム40に格納される各種情報を取得して、画面生成部351に各種サービスの情報を提示する画面を生成させる。また、データベース処理部352は、外部ストレージシステム40に格納される各種情報を集計し、集計結果に基づいて画面生成部351に契約サービスの変更画面を生成させる。なお、データベース処理部352は「処理部」の一例である。
【0088】
認証部353は、ユーザの認証情報を管理する。具体的には、認証部353は、ユーザ端末10からログイン情報を取得すると、ユーザの認証情報と照合する。認証部353は、ユーザ端末10からのログイン情報と、ユーザの認証情報とが合致すると、ユーザ端末10を認証し、ユーザ端末10によるサービス提供システム30へのアクセスを許可する。
【0089】
HMI部350の上記機能は、例えば制御プログラム34pを実行中のCPU31により実現される。
【0090】
複合機20は、画面描画部210を備える。画面描画部210は、サービス提供システム30のアプリ管理部311が管理するアプリ情報3211,3212,3213・・・の画面定義にしたがって、複合機20の操作パネル26にアプリ画面を表示する。複合機20のユーザは、このアプリ画面を介して、サービス提供システム30により提供されるサービスを利用することができる。
【0091】
画面描画部210の上記機能は、例えば複合機20の制御プログラムに含まれるウェブブラウザを実行中のCPU21により実現される。
【0092】
ユーザ端末10は、画面描画部110を備える。画面描画部110は、サービス提供システム30の画面生成部351にしたがって、ユーザ端末10の表示装置に各種画面を表示する。ユーザ端末10のユーザは、これの画面を介して、サービス提供システム30から提供されるサービス内容を確認したり、契約サービスの変更を行ったりすることができる。
【0093】
画面描画部110の上記機能は、例えばユーザ端末10の制御プログラムに含まれるウェブブラウザを実行中のCPUにより実現される。
【0094】
外部ストレージシステム40には、複合機20が生成した電子ファイル、及びサービス提供システム30が処理した電子ファイル等の他、サービス提供システム30が提供するサービスに関する種々の情報が格納されている。
【0095】
サービスに関する種々の情報として、外部ストレージシステム40には、アプリ実行ログテーブル41t、アプリ管理テーブル42t、パッケージ管理テーブル43t、パッケージアプリ管理テーブル44t、契約パッケージ管理テーブル45t、及びパッケージグループ管理テーブル46tが格納されている。
【0096】
アプリ実行ログテーブル41tは、複数のテナントにおいて、複数のユーザが、サービス提供システム30の種々のアプリケーションを実行したログを保持する。アプリ管理テーブル42tは、サービス提供システム30が有する複数のアプリケーションに関する情報を保持する。パッケージ管理テーブル43tは、複数のテナントごとに、これらのテナントに提供する1つ以上のアプリケーションがパッケージ化された複数のパッケージに関する情報を保持する。パッケージアプリ管理テーブル44tは、複数のパッケージのそれぞれと、これらのパッケージにそれぞれ含まれる1つ以上のアプリケーションとの関係が紐づけられた情報を保持する。契約パッケージ管理テーブル45tは、複数のテナントのパッケージ契約に関する情報をそれぞれ保持する。パッケージグループ管理テーブル46tは、複数のテナントがそれぞれ契約している1つ以上のパッケージの情報を複数のテナントごとに分けて保持する。
【0097】
(外部ストレージシステムの構成例)
次に、図5図10を用いて、実施形態1の外部ストレージシステム40に格納される複数のテーブルの構成例について説明する。
【0098】
図5は、実施形態1にかかる外部ストレージシステム40に格納されるアプリ実行ログテーブル41tの構成の一例を示す図である。アプリ実行ログテーブル41tは、複数のテナントごとに、アプリケーションが実行された履歴を記録する。
【0099】
図5に示すように、アプリ実行ログテーブル41tは、レコードID、アプリ実行日時、アプリID、テナントID、及びユーザID等の情報を保持する。
【0100】
レコードIDは、アプリ実行ログテーブル41tに記録されるログを一意に識別可能な識別子である。上述のI/Oロジック処理部312は、アプリ実行ログテーブル41tに新たなログを追加する際、例えば英数字を組み合わせた任意の値をレコードIDとして割り当てる。
【0101】
アプリ実行日時は、そのアプリケーションが実行された日時である。アプリIDは、実行されたアプリケーションを一意に識別可能な識別子である。アプリ実行ログテーブル41tのアプリIDは、上述の記憶部320に、複数のアプリケーションごとに対応して格納されるアプリ情報3211,3212,3213・・・に付されたアプリIDと対応している。
【0102】
テナントIDは、個々のテナントを一意に識別可能な識別子である。ユーザIDは、個々のユーザを一意に識別可能な識別子である。これらのテナントID及びユーザIDにより、アプリケーションを実行したユーザ、及びそのユーザが属するテナントを特定することができる。
【0103】
なお、アプリ実行ログテーブル41tは、アプリケーションの実行結果、及びアプリケーションを実行した複合機20のID等、上記以外の情報を保持していてもよい。
【0104】
図6は、実施形態1にかかる外部ストレージシステム40に格納されるアプリ管理テーブル42tの構成の一例を示す図である。アプリ管理テーブル42tは、複数のアプリケーションの情報を管理するために用いられる。
【0105】
図6に示すように、アプリ管理テーブル42tは、アプリID及びアプリ名等の情報を保持する。
【0106】
アプリIDは、アプリ管理テーブル42t内において個々のアプリケーションを一意に識別可能な識別子である。サービス提供システム30に新たなアプリケーションがインストールされた場合等、アプリ管理テーブル42tにアプリケーションの情報が追加される際に、例えば英数字を組み合わせた任意の値がアプリIDとして割り当てられる。アプリ管理テーブル42tにて付与されたアプリIDが、上述のアプリ情報3211,3212,3213・・・、及びアプリ実行ログテーブル41t等においても適用される。
【0107】
アプリ名はアプリケーションの名称である。
【0108】
なお、新たなアプリケーションの創設は、例えばサービス提供システム30によるサービスの提供者により行われる。サービス提供者は、新たなアプリケーションを創設した場合に、そのアプリケーションの情報をアプリ管理テーブル42tに追加する。
【0109】
図7は、実施形態1にかかる外部ストレージシステム40に格納されるパッケージ管理テーブル43tの構成の一例を示す図である。パッケージ管理テーブル43tは、1つ以上のアプリケーションがパッケージ化されたパッケージの情報を管理するために用いられる。個々のテナントは、例えば複数のパッケージの中から所定のパッケージを選んで契約することで、そのパッケージに含まれる1つ以上のアプリケーションによるサービスを利用することができる。
【0110】
図7に示すように、パッケージ管理テーブル43tは、パッケージID及びパッケージ名等の情報を保持する。
【0111】
パッケージIDは、パッケージ管理テーブル43t内において個々のパッケージを一意に識別可能な識別子である。新たなパッケージが創設された場合等、パッケージ管理テーブル43tにパッケージの情報が追加される際に、例えば英数字を組み合わせた任意の値がパッケージIDとして割り当てられる。
【0112】
パッケージ名はパッケージの名称である。
【0113】
なお、新たなパッケージの創設は、例えばサービス提供者により行われる。サービス提供者は、新たなアプリケーションを含む新たなパッケージ創設した場合、既存のアプリケーションを新たな組み合わせで提供するため新たなパッケージを創設した場合等に、そのパッケージの情報をパッケージ管理テーブル43tに追加する。
【0114】
図8は、実施形態1にかかる外部ストレージシステム40に格納されるパッケージアプリ管理テーブル44tの構成の一例を示す図である。パッケージアプリ管理テーブル44tは、それぞれのパッケージにどのアプリケーションが含まれるのかを管理するために用いられる。
【0115】
図8に示すように、パッケージアプリ管理テーブル44tは、パッケージ管理ID、パッケージID、アプリID、及びアプリ順序等の情報が保持される。
【0116】
パッケージ管理IDは、パッケージアプリ管理テーブル44tが保持する個々のパッケージに関する情報を一意に識別可能な識別子である。新たなパッケージが創設された場合等、パッケージアプリ管理テーブル44tにパッケージとアプリケーションとを紐づけた情報が追加される際に、例えば英数字を組み合わせた任意の値がパッケージ管理IDとして割り当てられる。
【0117】
アプリIDは、アプリ管理テーブル42tにおけるアプリIDと対応している。
【0118】
アプリ順序は、パッケージに複数のアプリケーションが含まれる場合、そのパッケージ内における複数のアプリケーションの並び順を表す数字である。同一のパッケージ内では、それぞれ一意に識別可能な数値を持つ。
【0119】
なお、図6図8の例では、「Basic Package」では「Scan to Mail」のみ利用可能であり、「Standard Package」では「Scan to Mail」と「Print from Local Storage」とが、「Premium Package」では「Scan to Mail」と「Print from Local Storage」と「Scan to Mail with Timestamp」とがそれぞれ利用可能である。
【0120】
また、上述のように、1つのパッケージには1つ以上のアプリケーションが含まれうる。また、1つのアプリケーションが複数のパッケージに含まれていてもよい。
【0121】
なお、どのパッケージにどのアプリケーションを含めるのかは、サービス提供者によって予め決定される。サービス提供者は、新たなパッケージを創設した場合等に、そのパッケージに含まれるアプリケーションの並び順を決定し、そのパッケージとアプリケーションとを紐づけた情報をパッケージアプリ管理テーブル44tに追加する。
【0122】
図9は、実施形態1にかかる外部ストレージシステム40に格納される契約パッケージ管理テーブル45tの構成の一例を示す図である。契約パッケージ管理テーブル45tは、複数のテナントごとの契約を管理するために用いられる。
【0123】
図9に示すように、契約パッケージ管理テーブル45tは、契約管理ID、テナントID、及びパッケージID等の情報を保持する。
【0124】
契約管理IDは、契約パッケージ管理テーブル45t内において個々の契約を一意に識別可能な識別子である。新たなテナントが新規に契約を締結した場合、または既存のテナントが契約の変更を行った場合等、契約パッケージ管理テーブル45tに新たな契約に関する情報が追加される際に、例えば英数字を組み合わせた任意の値が契約管理IDとして割り当てられる。
【0125】
テナントIDは、上述の通り、個々のテナントを一意に識別可能な識別子である。パッケージIDは、パッケージ管理テーブル43tにおけるパッケージIDと対応している。
【0126】
図10は、実施形態1にかかる外部ストレージシステム40に格納されるパッケージグループ管理テーブル46tの構成の一例を示す図である。パッケージグループ管理テーブル46tは、所定のテナントに対し、どのパッケージを提案するのかを管理するために用いられる。
【0127】
図10に示すように、パッケージグループ管理テーブル46tは、グループ管理ID、グループID、及びパッケージ管理ID等の情報を保持する。
【0128】
グループ管理IDは、パッケージグループ管理テーブル46tが保持する個々のグループに関する情報を一意に識別可能な識別子である。既存のグループに属さない新たなパッケージが創設された場合等、パッケージグループ管理テーブル46tに新たなグループが追加される際に、例えば英数字を組み合わせた任意の値がグループ管理IDとして割り当てられる。
【0129】
グループIDは、パッケージグループ管理テーブル46t内において個々のグループを一意に識別可能な識別子である。既存のグループに属さない新たなパッケージが創設された場合等、パッケージグループ管理テーブル46tに新たなグループが追加される際に、例えば英数字を組み合わせた任意の値がグループ管理IDとして割り当てられる。
【0130】
パッケージ管理IDは、パッケージアプリ管理テーブル44tにおけるパッケージ管理IDと対応している。
【0131】
なお、図10の例では、パッケージIDが「Pkg10004」で表され、グループIDが「Grp1234」のグループに属する「Basic Package」を契約しているテナントに対し、同じグループに属する、パッケージIDがそれぞれ「Pkg10009」及び「Pkg10010」の「Standard Package」及び「Premium Package」を提案する。
【0132】
一方で、「Basic Package」とは異なるグループに属する、パッケージIDが「Pkg10013」の「Trial Package」等は提案しない。
【0133】
また、1つのグループには1つ以上のパッケージが含まれうる。また、1つのパッケージが複数のグループに含まれていてもよい。
【0134】
なお、どのパッケージをどのグループに含めるかは、例えばサービス提供システム30によるサービスの提供者により予め決定される。サービス提供者は、新たなグループを創設した場合等に、そのグループの情報をパッケージグループ管理テーブル46tに追加する。
【0135】
(HMI部の動作例)
次に、図11図13を用いて、実施形態1のサービス提供システム30が備えるHMI部350の動作の一例について説明する。
【0136】
図11及び図12は、実施形態1にかかるサービス提供システム30により生成されるアプリ履歴集計テーブル3521t,3522tの構成の一例を示す図である。
【0137】
サービス提供システム30のHMI部350が備えるデータベース処理部352は、例えば所定のテナントが所有するユーザ端末10からパッケージの契約変更の要求を受け付けると、アプリID、アプリ名、アプリ順序、及び実行回数を格納可能なアプリ履歴集計テーブル3521tを生成する。
【0138】
また、データベース処理部352は、外部ストレージシステム40に格納される契約パッケージ管理テーブル45tから、要求のあったテナントが現在契約中のパッケージの情報を取得する。
【0139】
また、データベース処理部352は、パッケージアプリ管理テーブル44tから、テナントが契約中のパッケージに含まれるアプリケーションの並び順の一覧を取得する。また、データベース処理部352は、アプリ管理テーブル42tから、テナントが契約中のパッケージに含まれるアプリケーションのアプリ名の情報を取得する。
【0140】
また、データベース処理部352は、アプリ実行ログテーブル41tを参照して、要求のあったテナントにおけるアプリケーションの実行回数を複数のアプリケーションごとに集計する。
【0141】
データベース処理部352は、外部ストレージシステム40から取得したこれらの情報を、アプリ履歴集計テーブル3521tのアプリID、アプリ名、アプリ順序、及び実行回数の項目に当てはめる。
【0142】
この時点のアプリ履歴集計テーブル3521tでは、複数のアプリケーションは、パッケージアプリ管理テーブル44tで予め設定されたアプリ順序にしたがう並び順となっている。データベース処理部352は、集計したアプリケーションごとの実行回数が多い順に、パッケージアプリ管理テーブル44tにおけるアプリケーションの並び順を変更する。
【0143】
以上により得られるアプリ履歴集計テーブル3521tを図11に示す。
【0144】
次に、データベース処理部352は、ユーザに新たなパッケージを提案するため、提案候補となるパッケージの情報をアプリ履歴集計テーブル3521tに付加する。
【0145】
すなわち、データベース処理部352は、パッケージグループ管理テーブル46tから、要求のあったテナントが現在契約中のパッケージと同じグループに属するパッケージを提案候補のパッケージとして、これらのパッケージの情報を取得する。
【0146】
また、データベース処理部352は、パッケージアプリ管理テーブル44t、及びアプリ管理テーブル42tから、提案候補のパッケージについて所定の情報を取得して、アプリ履歴集計テーブル3521tのアプリID、アプリ名、アプリ順序、及び実行回数の項目に当てはめる。なお、提案候補のパッケージ中のアプリケーションであって、要求のあったテナントでの使用実績がないアプリケーションについては、実行回数の項目はブランクとする。
【0147】
以上により得られるアプリ履歴集計テーブル3522tを図12に示す。なお、アプリ集計テーブル3521tを第1集計情報、アプリ集計テーブル3522tを第2集計情報と表現する場合がある。
【0148】
また、アプリ履歴集計テーブル3522tに含まれる各種情報のうち、ユーザが属するテナントが契約中のパッケージを第1パッケージとも呼ぶことがある。また、契約中のパッケージに含まれる1つ以上のアプリケーションを第1アプリケーションとも呼び、これらのアプリケーションのアプリ名等、ユーザ端末10に表示されることとなる情報を第1アプリケーション情報とも呼ぶことがある。
【0149】
また、アプリ履歴集計テーブル3522tに含まれる各種情報のうち、提案候補、つまり、契約変更の候補となるパッケージを第2パッケージとも呼ぶことがある。また、候補となるパッケージに含まれる1つ以上のアプリケーションを第2アプリケーションとも呼び、これらのアプリケーションのアプリ名等、ユーザ端末10に表示されることとなる情報を第2アプリケーション情報とも呼ぶことがある。
【0150】
サービス提供システム30のHMI部350が備える画面生成部351は、図12のアプリ履歴集計テーブル3522tに基づいて、契約パッケージの変更画面データを生成してユーザ端末10に送信する。ユーザ端末10の画面描画部110は、契約パッケージの変更画面データに基づいて、ユーザ端末10の表示装置に契約パッケージの変更画面を表示させる。
【0151】
図13は、実施形態1にかかるユーザ端末10に表示される契約パッケージの変更画面351sの一例を示す図である。
【0152】
図13に示すように、契約パッケージの変更画面351sには、そのテナントでの使用実績のあるアプリケーションが、実行回数が多い順に上から表示されている。それに加えて、例えば実行回数が上位のアプリケーションに、アイコンを付したり色付けをしたりすることで、これらのアプリケーションを強調して表示させてもよい。
【0153】
また、それらのアプリケーションの下には、提案候補のパッケージ中のアプリケーションが、パッケージアプリ管理テーブル44tのアプリ順に上から表示されている。
【0154】
また、契約パッケージの変更画面351sに表示されるアプリケーションには、そのアプリケーションが使用可能となるパッケージの項目にチェックマークが付されている。これにより、契約変更の候補となるパッケージと、これらのアプリケーションとの対応付けが判別可能である。
【0155】
ユーザは、上記のような契約パッケージの変更画面351sを参照して、契約パッケージの変更を行うか否か、また、どのパッケージへの契約変更を行うか等を検討することができる。
【0156】
(情報処理システムの処理例)
次に、図14図15A、及び図15Bを用いて、実施形態1の情報処理システム1における処理例について説明する。
【0157】
図14は、実施形態1にかかる情報処理ステム1における情報処理の手順の一例を示すフロー図である。なお、図14において、所定の処理フローに付された符号A~Dは、後述する図15A及び図15Bの符号A~Dの処理フローに対応している。また、図14において、所定のステップに付された符号(1)~(7)は、後述する図15A及び図15Bの符号(1)~(7)の処理フローに対応している。
【0158】
図14に示すように、所定のテナントに属するユーザは、ユーザ環境E1に設置されたいずれかのユーザ端末10の表示装置に契約パッケージの変更画面を表示させるため、入力装置を用いて表示装置の画面上の表示ボタンを押下する(ステップS101)。サービス提供システム30のHMI部350が備える画面生成部351は、ユーザ端末10の画面描画部110によって、ログイン画面をユーザ端末10の表示装置に表示させる(ステップS102)。
【0159】
ユーザ端末10の入力装置がユーザによるログイン情報の入力を受け付けると(ステップS103)、HMI部350の認証部353は、ユーザ端末10からのログイン情報と、ユーザの認証情報とを照合し、ユーザ端末10がログインに成功したか否かを判定する(ステップS104)。
【0160】
ユーザ端末10がログインに失敗した場合(ステップS104:No)、HMI部350の画面生成部351は、ユーザ端末10の表示装置に再度ログイン画面を表示させて、ログイン情報の再入力を促す(ステップS102,S103)。
【0161】
ユーザ端末10がログインに成功した場合(ステップS104:Yes)、HMI部350のデータベース処理部352は、契約パッケージ管理テーブル45tから、ログイン中のユーザ端末10を所有するテナントが契約中のパッケージの一覧を取得する(ステップS105)。ここで、データベース処理部352は、ログイン情報に基づいて、ユーザが所属するテナントを特定し、特定したテナントが契約中のパッケージの一覧を取得しても良い。
【0162】
また、データベース処理部352は、パッケージアプリ管理テーブル44t及びアプリ管理テーブル42tから、契約中のパッケージに含まれるアプリケーションの一覧を取得する(ステップS106)。
【0163】
また、データベース処理部352は、アプリ実行ログテーブル41tから、ログイン中のユーザ端末10を所有するテナント、またはユーザが所属するテナントにおける個々のアプリケーションの実行回数を集計する(ステップS107)。
【0164】
また、データベース処理部352は、外部ストレージシステム40から取得したこれらの情報に基づいて、アプリ履歴集計テーブル3521tを作成する(ステップS108)。
【0165】
また、データベース処理部352は、パッケージグループ管理テーブル46tから、そのテナントが契約中のパッケージと同じグループに属するパッケージの一覧を取得する(ステップS109)。
【0166】
また、データベース処理部352は、パッケージアプリ管理テーブル44t及びアプリ管理テーブル42tから、取得したパッケージに含まれる複数のアプリケーションの一覧を取得する(ステップS110)。
【0167】
データベース処理部352は、ステップS108の処理で作成したアプリ履歴集計テーブル3521tに、提案候補となるパッケージに含まれるアプリケーションの一覧を統合する(ステップS111)。
【0168】
HMI部350の画面生成部351は、上記により作成されたアプリ履歴集計テーブル3522tに基づいて、契約パッケージの変更画面を生成する(ステップS112)。
【0169】
以上により、実施形態1の情報処理システム1における処理が終了する。
【0170】
図15A及び図15Bは、実施形態1にかかる情報処理ステム1における情報処理の手順の一例を示すシーケンス図である。
【0171】
図15Aに示すように、処理フローAでは、ログイン情報に基づいて、ユーザ端末10のサービス提供システム30へのアクセスが確立される。処理フローAに含まれるステップS1~S2の処理フローは、上述の図14のステップS101~S102の処理フローAに対応する。
【0172】
すなわち、所定のテナントに属するユーザは、ユーザ環境E1に設置されたいずれかのユーザ端末10から、契約パッケージの変更画面を表示させるため、表示ボタンを押下する(ステップS1)。
【0173】
ユーザ端末10は、サービス提供システム30のHMI部350に対して契約パッケージの変更画面データを要求する(ステップS11)。HMI部350の画面生成部351は、契約パッケージの変更画面の生成に必要なユーザに関する情報を取得するため、ユーザ端末10にログイン画面を表示させる(ステップS12,S13)。
【0174】
以下に説明する処理フローBでは、ユーザのログイン情報を用いて、テナントにおけるアプリケーションの実行回数を集計する。処理フローBに含まれるステップS2~S219の処理フローは、上述の図14のステップS103~S108の処理フローBに対応する。
【0175】
すなわち、ユーザ端末10は、ユーザからのログイン情報の入力を受け付け(ステップS2)、HMI部350にログイン処理を要求する(ステップS21)。ログイン情報には、例えばテナントID、ユーザID、及びパスワード等が含まれる。
【0176】
HMI部350の画面生成部351は、ユーザが入力したテナントID、ユーザID、及びパスワード等をログイン情報として、ユーザ端末10のログイン処理を認証部323に要求する(ステップS211)。認証部353は、入力されたログイン情報とユーザ認証情報とが合致していれば、ログインに成功したことを画面生成部351に通知する(ステップS212)。HMI部350は、ユーザ端末10がログインに成功すると、これ以降の処理を継続する。
【0177】
なお、ステップS2~S212の処理フロー(1)は、上述の図14のステップS103の処理(1)に対応する。
【0178】
画面生成部351は、ログイン情報から抽出したテナントIDが示すテナントが契約中のパッケージの一覧を、データベース処理部352に要求する(ステップS213)。
【0179】
データベース処理部352は、契約パッケージ管理テーブル45tから、ログイン中のユーザが属するテナントと一致するテナントIDを持つ情報を抽出する(ステップS2131)。データベース処理部352は、契約パッケージ管理テーブル45tから取得した情報を統合して、ログイン中のテナントが契約中のパッケージの一覧を取得する(ステップS2132,S2133)。契約中のパッケージの一覧には、パッケージ管理ID及びパッケージ名等の情報が含まれる。
【0180】
なお、ステップS213~S2133の処理フロー(2)は、上述の図14のステップS105の処理(2)に対応する。
【0181】
画面生成部351は、契約パッケージ管理テーブル45tから取得したパッケージ管理IDが示すパッケージに含まれるアプリケーションの一覧を、データベース処理部352に要求する(ステップS214)。
【0182】
データベース処理部352は、パッケージアプリ管理テーブル44tから、ログイン中のテナントが契約中のパッケージの一覧のパッケージ管理IDを有する情報を抽出する(ステップS2141)。これにより、データベース処理部352は、ログイン中のテナントが契約中のパッケージの一覧のパッケージに含まれるアプリケーションの一覧を取得する(ステップS2142)。アプリケーションの一覧には、アプリID及びアプリ順序等の情報が含まれる。
【0183】
また、データベース処理部352は、アプリケーションの一覧に含まれるアプリケーションのアプリ名を取得するため、アプリ管理テーブル42tから、ステップS2142の処理で得られたアプリIDを有する情報を抽出する(ステップS2143)。これにより、データベース処理部352は、ログイン中のテナントが契約中のパッケージに含まれるアプリケーションのアプリ名をアプリIDと紐づけて取得する(ステップS2144)。
【0184】
データベース処理部352は、外部ストレージシステム40から取得したこれらの情報を統合して、アプリID、アプリ名、及びアプリ順序等の情報を含むアプリケーションの一覧を得る(ステップS2145)。
【0185】
なお、ステップS214~S2145の処理フロー(3)は、上述の図14のステップS106の処理(3)に対応する。
【0186】
このように、上記の処理フロー(1)~(3)により、ログイン中のテナントのテナントIDと、そのテナントが契約中のパッケージに含まれるアプリケーションのアプリIDが得られる。これらの情報に基づいて、画面生成部351は、そのテナントが契約中のパッケージに含まれるアプリケーションの実行履歴の一覧を、データベース処理部352に要求する(ステップS215)。
【0187】
データベース処理部352は、アプリ実行ログテーブル41tから、ログイン中のテナントのテナントID及びアプリIDを有する情報を抽出する(ステップS2151)。これにより、データベース処理部352は、そのテナントにおけるアプリケーションのアプリ実行日時をアプリIDと紐づけて取得する(ステップS2152)。
【0188】
データベース処理部352は、これらの情報に基づいて、特定期間にアプリケーションが実行された回数をアプリケーションごとに集計する(ステップS2153)。つまり、データベース処理部352は、アプリ実行ログテーブル41tから取得したアプリ実行日時が特定期間に含まれる情報を抽出して、アプリIDごとに記録されているログの件数を集計する。
【0189】
ここで、特定期間は、サービス提供者により予め設定された期間である。サービス提供者は、テナントにおけるアプリケーションの直近の利用状況を特定するために、例えば1か月または1年など任意の期間を特定期間として設定することができる。
【0190】
データベース処理部352は、このように得られたアプリケーションごとの実行回数の一覧をアプリIDと紐づけて、画面生成部351へと受け渡す(ステップS2154)。
【0191】
なお、ステップS215~S2154の処理フロー(4)は、上述の図14のステップS107の処理(4)に対応する。
【0192】
データベース処理部352は、アプリID、アプリ名、アプリ順序、及び実行回数を格納可能なアプリ履歴集計テーブル3521tを作成する(ステップS2155)。
【0193】
図15Bに示すように、上記の処理フロー(4)で得られたアプリケーションの実行回数にアプリIDがないアプリケーション、つまり、特定期間内に使用実績のないアプリケーションがある場合には、データベース処理部352は、アプリ履歴集計テーブル3521tの実行回数をゼロに設定する(ステップS2156)。
【0194】
それ以外のアプリケーション、つまり、実行回数が1以上のアプリケーションについては、データベース処理部352は、上記の処理フロー(4)で得られたアプリケーションの実行回数を、アプリ履歴集計テーブル3521tの実行回数の項目に入れる。
【0195】
また、データベース処理部352は、上記の処理フロー(3)で得られたアプリケーションの一覧に基づいて、アプリ履歴集計テーブル3521tのアプリID、アプリ名、アプリ順序の項目を順に埋めていく(ステップS2157)。
【0196】
データベース処理部352は、ステップS2156,S2157の処理を、アプリケーションの一覧に含まれる全てのアプリケーションに対して実行する(ループ1)。
【0197】
データベース処理部352は、このように作成したアプリ履歴集計テーブル3521tにおいて、アプリ順序の昇順でアプリケーションを並べ替えた後(ステップS2158)、さらに、アプリ実行回数の降順に並べ替える(ステップS2159)。例えば、データベース処理部352は、アプリケーションをアプリ実行回数の昇順で並べて、アプリ実行回数が同じアプリケーションについてはアプリ順序が示す昇順で並べても良い。また、データベース処理部352は、アプリ実行回数が所定値以上のアプリケーションのみをアプリ実行回数の昇順に並べた後に、アプリ実行回数が所定値より小さいアプリケーションをアプリ順序が示す昇順で並べても良い。
【0198】
なお、ステップS2155~S2159の処理フロー(5)は、上述の図14のステップS108の処理(5)に対応する。
【0199】
以下に説明する処理フローCでは、テナントに対する提案候補のパッケージを抽出する。処理フローCに含まれるステップS216~S2176の処理フローは、上述の図14のステップS109,S110の処理フローCに対応する。
【0200】
画面生成部351は、テナントに新たなパッケージを提案するため、テナントが契約中のパッケージに含まれるアプリケーションを示すアプリID、またはテナントIDなどに基づいて、提案候補となるパッケージの一覧を、データベース処理部352に要求する(ステップS216)。
【0201】
データベース処理部352は、パッケージグループ管理テーブル46tから、そのテナントが契約中のパッケージが属するグループのグループIDを有する情報を抽出する(ステップS2161)。これにより、データベース処理部352は、パッケージ管理ID及びパッケージ名等の情報を得る(ステップS2162)。画面生成部351は、この情報に含まれるパッケージを、テナントへの提案候補のパッケージとして取り扱う(ステップS2163)。
【0202】
なお、ステップS216~S2163の処理フロー(6)は、上述の図14のステップS109の処理(6)に対応する。
【0203】
データベース処理部352は、処理フロー(3)と同様の手順で、パッケージアプリ管理テーブル44t及びアプリ管理テーブル42tから、提案候補のパッケージに含まれるアプリケーションの一覧を取得する(ステップS2171~S2174)。データベース処理部352は、これにより得られたアプリケーションの一覧を画面生成部351に受け渡す(ステップS2175)。このアプリケーションの一覧には、これらのアプリケーションのアプリID、アプリ名、及びアプリ順序の情報が含まれる。
【0204】
また、データベース処理部352は、上記のアプリケーションの一覧を、アプリIDごとにアプリ順の昇順に並べ替える(ステップS2176)。
【0205】
なお、ステップS217~S2176の処理フロー(7)は、上述の図14のステップS110の処理(7)に対応する。
【0206】
以下に説明する処理フローDでは、テナントに対する提案候補のパッケージをアプリ履歴集計テーブル3521tに統合した後、契約パッケージの変更画面を生成する。処理フローDに含まれるステップS2177,S218の処理フローは、上述の図14のステップS111,S112の処理フローDに対応する。
【0207】
データベース処理部352は、処理フロー(7)で得られたアプリケーションの一覧のアプリIDのうち、上記の処理フロー(5)で得られたアプリ履歴集計テーブル3521tに含まれていないアプリIDを追加アプリケーションとして特定する。また、データベース処理部352は、特定した追加アプリケーションに紐づく情報を、アプリ履歴集計テーブル3521tに追加する(ステップS2177)。ここで、データベース処理部352は、ステップS2159で作成したアプリ履歴集計テーブル3521tにおいて設定されているアプリ順序の後に続くように、追加アプリケーションのアプリ順序をパッケージアプリ管理テーブル44tのアプリ順に設定する。
【0208】
データベース処理部352は、処理フロー(7)で得られたアプリケーションの一覧の全てのアプリケーションについて、ステップS2177の処理を実行する(ループ2)。以上により、アプリ履歴集計テーブル3522tが完成する。
【0209】
画面生成部351は、完成したアプリ履歴集計テーブル3522tに基づいて、提案候補のパッケージを含む契約パッケージの変更画面を生成する(ステップS218)。ここで、画面生成部351は、アプリ順序で示される順番にアプリ名を並べた画面を生成する。また、画面生成部351は、生成した契約パッケージの変更画面をユーザ端末10に対して送信しても良い(ステップS413,S414)。
【0210】
以上により、実施形態1の情報処理システム1における処理が終了する。
【0211】
(概括)
ユーザが利用可能なサービスの数が多くなると、ユーザに対してサービスの一覧を表示する際に、ユーザが適切なサービスを選択することが困難になることがある。上述の特許文献1には、ユーザがサービス提供会社のサービスを利用してコンテンツの配信を受ける際に、ユーザにとって最適なサービスの選択を促すため、ユーザの利用状況に応じてサービスの表示順序を決定する構成が開示されている。
【0212】
しかしながら、複数のサービスを利用しようとするユーザに対しては、1つ以上のアプリケーションをパッケージ化したパッケージ単位で契約が行われることが多い。特許文献1の技術では、契約パッケージの変更を希望するユーザが、契約変更によって生じるメリット/デメリットを判別し難く、適切なパッケージを選択することは困難である。
【0213】
つまり、例えば契約を変更して下位のパッケージに変更した場合に、今まで頻繁に利用していたアプリケーションが使えなくなることが、アプリケーション一覧から判断できないといったケースが想定できる。
【0214】
また、企業、組織、または団体等のテナントごとにパッケージ契約が行われている場合、契約パッケージの変更および解約等は、IT担当者等、そのテナントにおけるサービス利用の管理者が行うことが一般的である。この場合、管理者が、そのテナントに属するユーザ全体の利用状況に鑑みて、適切なパッケージを選択することはいっそう困難となる。
【0215】
実施形態1の情報処理システム1によれば、契約中のパッケージから他のパッケージへの契約変更の要求をユーザ端末10から受け付けると、アプリ実行ログテーブル41tを参照して、ユーザによる複数のアプリケーションのそれぞれの実行回数を集計し、実行回数が多い順に、ユーザ端末10における複数のアプリケーションの表示順序を決定する。
【0216】
これにより、契約パッケージの変更をユーザに提案する際に、パッケージごとのアプリケーションの表示順序をユーザの利用状況に応じて変更することができる。
【0217】
実施形態1の情報処理システム1によれば、パッケージアプリ管理テーブル44tを参照して、契約変更の候補となる複数のパッケージに対応付けて、これらのパッケージに含まれる複数のアプリケーションをユーザ端末10に表示させる。このように、ユーザが現在契約中のパッケージの情報と、提案候補のパッケージの情報とを並べて表示させることで、契約パッケージの変更に伴うメリット/デメリットがよりいっそう判別しやすくなる。
【0218】
実施形態1の情報処理システム1によれば、ユーザ端末10に表示させる複数のアプリケーションのうち、実行回数が所定数以上のアプリケーションを強調して表示させる。これにより、使用頻度の高いアプリケーションがよりいっそう判別しやすくなる。
【0219】
実施形態1の情報処理システム1によれば、契約変更の要求をユーザ端末10から受け付けると、所定のグループに所属する複数のユーザによる複数のアプリケーションのそれぞれの実行回数を集計して、実行回数が多い順に、ユーザ端末10における複数のアプリケーションの表示順序を決定する。
【0220】
これにより、テナントごとにパッケージ契約が行われている場合であっても、サービス利用の管理者が、そのテナントに属するユーザ全体の利用状況に鑑みて、適切なパッケージを選択することが容易となる。
【0221】
(変形例1)
次に、図16を用いて、実施形態1の変形例1の情報処理システムについて説明する。変形例1の情報処理システムでは、アプリケーションの実行回数の集計結果を保持しておく点が、上述の実施形態1の情報処理システム1とは異なる。
【0222】
図16は、実施形態1の変形例1にかかる情報処理システムにおける情報処理の手順の一例を示すフロー図である。図16に示す処理に先駆けて、変形例1のサービス提供システムは、前回のユーザからの契約パッケージの変更要求に応じて集計したアプリ履歴集計テーブルを外部ストレージシステムに格納済みであるものとする。
【0223】
図16に示すように、変形例1の情報処理システムによるステップS201~S204の処理は、上述の実施形態1の図14に示すステップS101~S104の処理と同様に行われる。
【0224】
ユーザ端末がログインに成功すると(ステップS204)、変形例1のサービス提供システムが備えるHMI部は、ユーザ端末が、前回、契約パッケージの変更画面にログインしてから所定期間が経過したか否かを判定する(ステップS204a)。
【0225】
前回のログインから所定期間内であれば(ステップS204a:No)、変形例1のHMI部は、前回のアプリ履歴集計テーブルを外部ストレージシステムから取得する(ステップS205a)。
【0226】
前回のログインから所定期間が経過していた場合には(ステップS204a:Yes)、変形例1のHMI部は、ステップS205~S208の処理を行って、新たにアプリ履歴集計テーブルを生成する。ここで、ステップS205~S208の処理は、叙述の実施形態1の図14に示すステップS105~S108の処理と同様に行われる。
【0227】
以降、変形例1の情報処理システムによるステップS209~S212の処理は、上述の実施形態1の図14に示すステップS109~S112の処理と同様に行われる。
【0228】
以上により、変形例1の情報処理システムによる処理が終了する。
【0229】
ここで、ステップS204aの判定に用いる所定期間は、例えば上述の実施形態1で、個々のアプリケーションの実行回数を抽出する期間として設定される特定期間と同じとすることがきる。
【0230】
つまり、例えば特定期間が1か月に設定されている場合、つまり、アプリ実行回数の集計が前月1か月を対象に行われる場合、ある月の最初のログイン時には、ステップS209~S212の処理を行って、新たにアプリ履歴集計テーブルを生成し、外部ストレージシステムに保持しておく。そのアプリ履歴集計テーブルの保持期間はその月の最終日までとする。
【0231】
その後、同じ月の間に再度ログインがあったときには、外部ストレージシステムに保持した前回のアプリ履歴集計テーブルに基づいて、契約パッケージの変更画面を生成する。一方、翌月に再度ログインがあったときには、前回のアプリ履歴集計テーブルの保持期間が過ぎており、アプリ履歴集計テーブルの保持期間は廃棄されている。そこで、ステップS209~S212の処理を行って、新たにアプリ履歴集計テーブルを生成し、それに基づき契約パッケージの変更画面を生成する。
【0232】
変形例1の情報処理システムによれば、ユーザ端末から契約変更の要求があると、前回の契約変更要求から所定期間が経過していなければ、アプリ履歴集計テーブルの情報に基づいて、ユーザ端末における複数のアプリケーションの表示順序を決定する。
【0233】
これにより、契約パッケージの変更画面の生成をより素早く行うことができる。また、例えばログイン回数が増加した場合でも、アプリ実行回数の集計処理の頻度を減らして変形例1の情報処理システムの負荷を低減することができる。
【0234】
(変形例2)
次に、実施形態1の変形例2の情報処理システムについて説明する。変形例2の情報処理システムでは、実行回数が所定数以上のアプリケーションについて、予め設定されたアプリ順序からの並べ替えを行う点が、上述の実施形態1の情報処理システム1とは異なる。
【0235】
すなわち、変形例2のサービス提供システムが備えるHMI部は、アプリ実行回数の多い上位のアプリケーションについては、実行回数に基づいて表示順を決定する。あるいは、変形例2のHMI部が、集計対象となる全てのアプリ実行回数の合計回数のうち、一定以上の割合を占めるアプリケーションについて、実行回数に基づいて表示順を決定してもよい。
【0236】
それ以外のアプリケーションについては、変形例2のHMI部は、パッケージアプリ管理テーブルに保持されているアプリ表示順にしたがって表示順を決定する。このような処理を行うには、例えばアプリ履歴集計テーブルにアプリケーションごとの実行回数を格納する際に、実行回数が所定数以上のアプリケーションについてのみ実行回数を格納し、実行回数が所定数未満のアプリケーションについては、実行回数をゼロとすればよい。
【0237】
変形例2の情報処理システムによれば、実行回数の集計結果に基づいて、実行回数が所定数以上のアプリケーション、または、複数のアプリケーションの中で実行回数が所定の割合以上のアプリケーションを特定する。また、特定したアプリケーションについては実行回数が多い順に、ユーザ端末における複数のアプリケーションの表示順序を決定し、それ以外のアプリケーションについては、予め定められた順序にしたがってユーザ端末に表示させる。
【0238】
例えば実行回数が膨大なアプリケーションが存在する中、実行回数が極端に少ないアプリケーションについてまで、実行回数の多い順に並べ替えを行っても、上記に述べた効果のほどは殆ど変化しない。このため、実行回数が極端に少ないアプリケーションについては、パッケージアプリ管理テーブルのアプリ順序にしたがう並び順とすることで、アプリ実行回数の集計処理の処理数を減らして変形例2の情報処理システムの負荷を低減することができる。
【0239】
(変形例3)
次に、図17を用いて、実施形態1の変形例3の情報処理システムについて説明する。変形例3の情報処理システムでは、実行回数が所定数未満のアプリケーションの並べ替えの際、並び順をアプリ順序または実行回数のいずれにしたがって決定するかをアプリケーションごとに決定する点が、上述の変形例2の情報処理システムとは異なる。
【0240】
すなわち、変形例3のサービス提供システムが備えるHMI部は、アプリ実行回数の集計を行う際、パッケージごとに異なる所定数を設け、異なる所定数にしたがって、個々のアプリケーションについて表示順を決定する。パッケージごとの所定数は、例えばサービス提供者が予め設定しておくことができる。
【0241】
図17は、実施形態1の変形例3にかかるサービス提供システムにより参照されるアプリ実行回数打ち切り順位計テーブル3523tの構成の一例を示す図である。上述のように、アプリ実行回数打ち切り順位計テーブル3523tは、例えばサービス提供者により予め作成され、例えば外部ストレージシステムに格納される。
【0242】
図17の例では、「Basic Package」に含まれるアプリケーションについては、上位2つのアプリケーションについて、実行回数が多い順に並べ替えを行う。それ以外のアプリケーションについては、パッケージアプリ管理テーブルのアプリ順序にしたがって並べ替えが行われる。
【0243】
「Standard Package」と「Premium Package」とにそれぞれ含まれるアプリケーションについては、上位3つのアプリケーションについて、実行回数が多い順に並べ替えを行う。それ以外のアプリケーションについては、パッケージアプリ管理テーブルのアプリ順序にしたがって並べ替えが行われる。
【0244】
ただし、アプリ実行回数打ち切り順位計テーブル3523tで、アプリ実行回数ではなく、アプリ実行回数全体に占める割合の下限が設定されていてもよい。
【0245】
変形例3の情報処理システムによれば、アプリケーションに対して設定される所定数は、複数のパッケージに含まれる1つ以上のアプリケーションごとに異なる数値が設定される。これにより、より柔軟にアプリケーションの並べ替えを行うことができる。
【0246】
[実施形態2]
上述の実施形態1では、サービス提供システム1によるサービスの提供を受ける機器が複合機20であることとした。しかし、情報処理システムには、電子データの入力及び出力の少なくとも一方を行う各種機器が含まれ、これらの機器がサービス提供システムにより提供される各種サービスを利用可能であってもよい。このような機器としては、例えばプロジェクタ、電子黒板、デジタルカメラ等の各種の画像形成装置が挙げられる。
【0247】
また、情報処理システムに、ユーザに対して所定の手法で所定の情報を提示する各種機器が含まれ、これらの機器がサービス提供システムにより提供される各種サービスを利用可能であってもよい。このような機器としては、例えばスマートスピーカ、またはAI(Artificial Intelligence)スピーカ等の音声装置が挙げられる。
【0248】
以下に、図面を用いて実施形態2について説明する。実施形態2においては、情報処理システムに含まれる機器が音声装置である点が、上述の実施形態1の情報処理システム1とは異なる。以下の図面において、上述の実施形態1の構成と同様の構成に同様の符号を付し、その説明を省略する。
【0249】
なお、スマートスピーカ等の音声装置では、上述のアプリケーションソフトウェアに相当するプログラムをスキルと呼ぶ場合があるが、本明細書では、音声装置についてもアプリケーションという用語を使用する。
【0250】
図18は、実施形態2にかかる情報処理システム2の構成の一例を示す模式図である。
【0251】
図18に示すように、実施形態2の情報処理システム2は、複合機20(20a,20b・・・)に替えて、ユーザ環境E3に設置される複数の音声装置60(60a,60b・・・)を備える。ユーザ環境E3は、上述の実施形態1のユーザ環境E1と同様、所定のテナントにより構築されたシステム環境であり、1つ以上の音声装置60を含んで構成される。
【0252】
機器としての個々の音声装置60は、例えばユーザの音声を認識し、それに対する応答を返すことが可能に構成される。
【0253】
ユーザは、所定のアプリケーションを音声装置60に導入することで、音声装置60でアプリケーションが提供する機能としてサービスを利用することができる。ここで、アプリケーションとしては、音声装置60にインストールされることで機能を実行するネイティブアプリケーション、音声装置60がサービス提供システム30と連携して機能を実行するウェブアプリケーションが含まれる。なお、サービス提供システム30が提供する機能を拡張するための拡張機能、及びその機能を拡張するためのプログラムなどもアプリケーションと称される場合がある。
【0254】
なお、導入とは、アプリケーションを音声装置60において利用可能にする処理である。アプリケーションがネイティブアプリケーションである場合は、導入とは、例えばアプリケーションを音声装置60にインストールすることである。また、アプリケーションがウェブアプリケーションである場合は、導入とは、例えばサービス提供システム30において所定の音声装置60、ユーザ、テナント、またはアカウントに対して、アプリケーションの機能を提供するように権限を設定すること、あるいは、音声装置60からサービス提供システム30にアクセスできるよう、音声装置60の設定を変更することなどが含まれる。また、アプリケーションが拡張機能である場合には、音声装置60からサービス提供装置30に対するアプリケーションの利用の申込むことも導入に含まれる。また、複数のアプリケーションをパッケージまたはプランとして管理する場合は、ユーザが購入または契約したパッケージもしくはプランに対応する複数のアプリケーションをまとめて導入する場合がある。
【0255】
図19は、実施形態2にかかる情報処理システム2の機能構成の一例を示すブロック図である。図19に示すように、音声装置60は、画面描画部610及び音声合成部620を備える。
【0256】
画面描画部610は、サービス提供システム30のアプリ管理部311が管理するアプリ情報3211,3212,3213・・・の画面定義にしたがって、音声装置60の表示部にアプリ画面を表示する。音声装置60のユーザは、このアプリ画面を介して、サービス提供システム30により提供されるサービスを利用することができる。
【0257】
音声合成部620は、サービス提供システム30のアプリ管理部311が管理するアプリ情報3211,3212,3213・・・の各種定義にしたがって、アプリケーションの処理結果等に関わる音声を合成する。これにより、音声装置60のユーザは、サービス提供システム30により提供されるサービスを利用することができる。
【0258】
図20は、実施形態2にかかる情報処理ステム2における情報処理の手順の一例を示すシーケンス図である。
【0259】
図20に示すように、音声装置60は、サービス提供システム30に対して処理要求を送信する(ステップS5)。これにより、サービス提供システム30は、音声装置60が送信した処理要求を受信する。このとき、処理要求には、音声装置60を識別するデバイス識別情報、音声装置60に対して入力された音声情報が含まれる。
【0260】
次に、サービス提供システム30は認証処理を行う(ステップS51)。具体的には、サービス提供システム30は、ステップS5の処理で受信した音声情報に含まれるデバイス識別情報と、予めサービス提供システム30に登録されていたデバイス識別情報とを比較する。サービス提供システム30は、比較の結果、一致するデバイス識別情報が登録されていた場合、認証が成功したと判断する。このときサービス提供システム30は、デバイス識別情報と対応する顧客識別情報を特定する。ここで、顧客識別情報とは,アカウント、またはテナント情報のようなユーザまたは音声装置60が所属する組織などを識別する情報である。
【0261】
次に、サービス提供システム30は、音声情報に基づいて音声認識処理を行う(ステップS52)。これには、サービスを提供するアプリケーションの種類や内容を示すジョブ情報と、アプリケーションに関する設定値および条件などのパラメータ情報が含まれる。続いて、サービス提供システム30は利用可否判断処理を行う(ステップS53)。具体的には、サービス提供システム30は、デバイス識別情報または顧客識別情報に対応するライセンスなどの契約情報または利用権限情報に基づいて、利用可能なアプリケーションを判断する。
【0262】
また、サービス提供システム30は、ユーザが発話した音声情報から特定されたサービス情報に対応するサービス識別情報と、利用可能なアプリケーションとして特定したアプリケーションに対応するサービス識別情報と、を比較する。比較の結果、判断処理部は、サービス識別情報が一致する場合はサービスが利用可能と判断し、一致しない場合はサービスが利用不可であると判断する。
【0263】
利用可能なアプリケーションがない場合、つまり、いずれのサービスも利用不可の場合、サービス提供システム30は、音声装置60に対して、サービスを提供するアプリケーションを利用できない旨の利用不可情報を含む処理応答を送信する(ステップS54)。これにより、音声装置60は、サービス提供システム30が送信した処理応答を受信する。
【0264】
次に、音声装置60は、利用不可を示す内容を音声装置60の表示部に表示し、または音声によってユーザに通知する(ステップS55)。
【0265】
一方、利用可能なアプリケーションがある場合、つまり、サービスが利用可能である場合、サービス提供システム30は、ステップS5で受信した音声装置60の処理要求を外部ストレージシステム40に転送する(ステップS56)。これにより、外部ストレージシステム40は、サービス提供システム30が送信した処理要求を受信する。このとき、処理要求には、処理対象となるジョブ情報と、パラメータ情報が含まれる。なお、サービスを提供するアプリケーションによっては、サービス提供システム30においてジョブ情報とパラメータ情報とに基づいて処理を実行してもよい。この場合、外部ストレージシステム40の特定と、処理要求の送信とを省略することができる。
【0266】
次に、外部ストレージシステム40は、受信した処理要求に基づいて認証処理を行う(ステップS561)。
【0267】
続いて、外部ストレージシステム40は、ステップS56で受信した処理要求に対する処理応答をサービス提供システム30に対して送信する(ステップS562)。これにより、サービス提供システム30は、外部ストレージシステム40が送信した処理応答を受信する。このとき、処理応答には、外部ストレージシステム40の処理によって生成した情報などの処理結果情報が含まれる。
【0268】
次に、サービス提供システム30は、外部ストレージシステム40が実行した処理結果情報を含む処理応答を音声装置60に対して送信する(ステップS563)。これにより、音声装置60は、サービス提供システム30が送信した処理応答を受信する。
【0269】
次に、音声装置60は、処理結果を表示する(ステップS564)。具体的には、音声装置60は、受信した処理応答に含まれる処理結果情報を、表示部に表示し、もしくはスピーカを介して音声出力する。これまでの処理により、音声装置60を利用するユーザは、所望の処理を外部ストレージシステム40に対して実行させ、その結果を表示もしくは音声によって確認することが可能になる。
【0270】
実施形態2の情報処理システム2では、例えば、上述したステップS56,S562の処理が実行される場合、サービス提供システム30と外部ストレージシステム40との間に他の装置等が存在してもよい。つまり、情報処理装置3と外部ストレージシステム40との間で送受信される各情報は、一度、他の装置等を介して送受信されるような構成であってもよい。上述した構成は、サービス提供システム30と外部ストレージシステム40との間に他の処理ステップが存在した場合でも適用することが可能である。
【0271】
以上、説明した音声装置60の場合は、アプリケーションが提供する機能はサービス提供システム30において実現される。このため、アプリケーションを導入する場合、ユーザは、音声装置60またはユーザ端末10からサービス提供システム30に対してアクセスすることで、アプリケーションの利用契約を締結する。これにより、サービス提供システム30において、契約を締結したユーザ、またはそのユーザに対応するアカウントもしくは音声装置60に対して、アプリケーションの機能を提供するように権限を設定することで、音声装置60からアプリケーションの機能を利用可能になる。
【0272】
以上、実施形態について説明したが、その各部の具体的な構成、処理の内容等は、実施形態で説明したものに限るものではない。
【符号の説明】
【0273】
1,2 情報処理システム
10 ユーザ端末
20 複合機
30 サービス提供システム
34p 制御プログラム
40 外部ストレージシステム
41t アプリ実行ログテーブル
42t アプリ管理テーブル
43t パッケージ管理テーブル
44t パッケージアプリ管理テーブル
45t 契約パッケージ管理テーブル
46t パッケージグループ管理テーブル
60 音声装置
310 入出力サービス部
320 記憶部
330 ドキュメントサービス部
340 ストレージサービス連携部
350 HMI部
351 画面生成部
352 、データベース処理部
353 認証部
3521t,3522t アプリ履歴集計テーブル
【先行技術文献】
【特許文献】
【0274】
【特許文献1】特開2015-162716号公報
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15A
図15B
図16
図17
図18
図19
図20