(57)【要約】【課題】アプリケーションで提供する機能をアプリケーションをアップデートせずに変更すること。【解決手段】発明の一実施形態は、アプリケーションサーバが提供するサービスと連携して処理を実行するアプリケーションと該アプリケーションのＵＩテンプレートとを記憶部に記憶するコンピュータを、上記ＵＩテンプレートに設定する表示セットを上記アプリケーションサーバから通信を介して取得する通信取得部と、上記通信取得部により取得された表示セットを上記ＵＩテンプレートに設定する設定部と、上記設定部により上記表示セットが設定されたＵＩテンプレートを表示する表示部と、上記表示部により表示されている上記ＵＩテンプレートの入力を受け付ける入力受付部と、して機能させる。【選択図】図１
2018156487.tif 000002
【特許請求の範囲】
【請求項１】
アプリケーションサーバが提供するサービスと連携して処理を実行するアプリケーションと該アプリケーションのＵＩテンプレートとを記憶部に記憶するコンピュータを、
前記ＵＩテンプレートに設定する表示セットを前記アプリケーションサーバから通信を介して取得する通信取得部と、
前記通信取得部により取得された表示セットを前記ＵＩテンプレートに設定する設定部と、
前記設定部により前記表示セットが設定されたＵＩテンプレートを表示する表示部と、
前記表示部により表示されている前記ＵＩテンプレートの入力を受け付ける入力受付部と、
して機能させるためのプログラム。
【請求項２】
前記通信取得部は、前記表示セットとして、ログイン中のユーザの表示セットを前記アプリケーションサーバから通信を介して取得する、
請求項１に記載のプログラム。
【請求項３】
アプリケーションサーバが提供するサービスと連携して処理を実行するアプリケーションと該アプリケーションの複数のＵＩテンプレートとを記憶部に記憶するコンピュータを、
ログイン中のユーザの表示セットを前記アプリケーションサーバから通信を介して取得する通信取得部と、
前記通信取得部により取得された表示セットを前記複数のＵＩテンプレートの内の対応するＵＩテンプレートに設定する設定部と、
前記表示セットが設定された前記ＵＩテンプレートを表示する表示部と、
前記表示されているＵＩテンプレートの入力を受け付ける入力受付部と、
して機能させるためのプログラム。
【請求項４】
前記コンピュータを、更に、
ログイン中のユーザが前記表示セットとして複数種類の表示セットを利用可能な場合に、前記表示セットが設定された前記ＵＩテンプレートの表示を前記複数種類に渡って切り替える切替部と、
して機能させるための請求項３に記載のプログラム。
【請求項５】
前記コンピュータを、更に、
前記表示セットの一覧情報を前記アプリケーションサーバから通信を介して取得する一覧情報通信取得部と、
前記一覧情報通信取得部が前記一覧情報を取得した場合に、前記一覧情報を表示する表示部と、
前記一覧情報が表示されている場合に、前記一覧情報の内からの表示セットを示す識別情報の選択入力を受け付ける入力受付部と、
して機能させるための請求項１乃至４の内の何れか一項に記載のプログラム。
【請求項６】
前記コンピュータを、更に、
前記設定部により設定されたＵＩテンプレートを前記記憶部に保存する保存部と、
前記記憶部に保存されている前記ＵＩテンプレートを次回から表示する表示部と、
して機能させるための請求項１乃至５の内の何れか一項に記載のプログラム。
【請求項７】
アプリケーションサーバが提供するサービスと連携して処理を実行するアプリケーションと該アプリケーションのＵＩテンプレートとを記憶する記憶部と、
前記ＵＩテンプレートに設定する表示セットを前記アプリケーションサーバから通信を介して取得する通信取得部と、
前記通信取得部により取得された表示セットを前記ＵＩテンプレートに設定する設定部と、
前記設定部により前記表示セットが設定されたＵＩテンプレートを表示する表示部と、
前記表示部により表示されている前記ＵＩテンプレートの入力を受け付ける入力受付部と、
を有する情報処理装置。
【請求項８】
アプリケーションサーバと情報処理装置とがネットワークを介して通信するシステムであって、
前記アプリケーションサーバは、
複数のサービスを実行するサービス部と、
ユーザの識別情報と前記複数のサービスの内の該ユーザが利用可能なサービスの表示セットとを対応付ける情報テーブルと、
を有し、
前記情報処理装置は、
前記アプリケーションサーバが提供する前記サービスと連携して処理を実行するアプリケーションと該アプリケーションのＵＩテンプレートとを記憶する記憶部と、
前記アプリケーションサーバの前記情報テーブルにおいて前記情報処理装置を使用するユーザに対応付けられている前記表示セットを通信を介して取得する通信取得部と、
前記通信取得部により取得された表示セットを前記ＵＩテンプレートに設定する設定部と、
前記設定部により前記表示セットが設定されたＵＩテンプレートを表示する表示部と、
前記表示部により表示されている前記ＵＩテンプレートの入力を受け付ける入力受付部と、
を有するシステム。
【請求項９】
前記通信取得部は、前記アプリケーションサーバにログイン情報を送信することにより前記情報処理装置を使用するユーザに対応付けられている前記表示セットを通信を介して取得する、
請求項８に記載のシステム。
【請求項１０】
前記アプリケーションサーバは、更に、
管理者から前記表示セットの値の更新を受け付ける更新受付部、
を有する請求項８又は９に記載のシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プログラム、情報処理装置、及び、システムに関する。
【背景技術】
【０００２】
従来、スマートデバイスにサービスや機能などを提供する場合、そのスマートデバイスに対してアプリケーションを提供するのが一般的である。しかし、アプリケーションの機能を変更する際には、その機能の変更をユーザにお知らせしたり、その機能に対応するプログラムをユーザによりスマートデバイスにアップデートしてもらったりする必要がある。そこで、アップデートを行わずに機能を変更する方法がある。その方法とは、ＷｅｂページをベースとするＷｅｂアプリケーションに採用されている方法で、サーバ側でＷｅｂページのＨＴＭＬを修正し、それをスマートデバイス側にダウンロードして表示する方法である。
【０００３】
この他、次のような機能追加の方法もある。印刷設定を行いたいモジュールに対する窓口となる拡張Ｉ／Ｆ部と追加用の拡張Ｉ／Ｆ部とに同じインタフェースを持たせることにより、新規機能が追加された場合に、追加された新規機能用の拡張Ｉ／Ｆ部を作成し、拡張Ｉ／Ｆ部からの呼び出しルールに則った場所に配置するだけで新規機能の追加を可能にするものである（特許文献１参照）。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかし、従来のＷｅｂページを修正する方法は、本体機能との連携に制限が生じたり、ネイティブアプリケーションにまでパフォーマンスが及ばなかったりするなどの問題がある。
【０００５】
本発明は、上記に鑑みてなされたものであって、アプリケーションをアップデートせずに機能を変更することが可能なプログラム、情報処理装置、及び、システムを提供することを目的とする。
【課題を解決するための手段】
【０００６】
上述した課題を解決するために、発明の一実施形態は、アプリケーションサーバが提供するサービスと連携して処理を実行するアプリケーションと該アプリケーションのＵＩテンプレートとを記憶部に記憶するコンピュータを、上記ＵＩテンプレートに設定する表示セットを上記アプリケーションサーバから通信を介して取得する通信取得部と、上記通信取得部により取得された表示セットを上記ＵＩテンプレートに設定する設定部と、上記設定部により上記表示セットが設定されたＵＩテンプレートを表示する表示部と、上記表示部により表示されている上記ＵＩテンプレートの入力を受け付ける入力受付部と、して機能させる。
【発明の効果】
【０００７】
本発明によれば、情報処理装置上のアプリケーションをアップデートすることなく機能を変更することが可能になるという効果を奏する。
【図面の簡単な説明】
【０００８】
【図１】図１は、第１の実施の形態に係るシステムの全体構成の一例を示す図である。
【図２】図２は、スマートデバイスのハードウェア構成の一例を示す図である。
【図３】図３は、アプリケーションサーバ装置のハードウェア構成の一例を示す図である。
【図４】図４は、フラッシュＲＯＭの「ＵＩテンプレート」の説明図である。
【図５】図５は、情報テーブルのデータ構造の一例を示す図である。
【図６】図６は、スマートデバイスの機能構成の一例を示す図である。
【図７】図７は、アプリケーションサーバ装置の機能構成の一例を示す図である。
【図８】図８は、スマートデバイスがアプリケーションサーバ装置にアクセスする際の処理フローの一例を示す図である。
【図９】図９は、スマートデバイスとアプリケーションサーバ装置とのクラウドサービスの利用時の処理フローの一例を示す図である。
【図１０】図１０は、「ＵＩテンプレート」に「ＵＩ用表示セット」を反映した場合のＬＣＤのＵＩ画面の表示の一例を示す図である。
【発明を実施するための形態】
【０００９】
以下、添付図面を参照しながら、本発明に係るプログラム、情報処理装置、及び、システムの実施の形態を詳細に説明する。
【００１０】
（第１の実施の形態）
図１は、第１の実施の形態に係るシステムの全体構成の一例を示す図である。図１には、システムの一例として、クラウドサービスを提供するためのネットワークシステムＡの全体構成を示している。ネットワークシステムＡは、スマートデバイス１や、クラウドシステム２や、アクセスポイント３や、インターネット４などを有する。
【００１１】
スマートデバイス１は、例えばスマートフォンやタブレット型端末などである「情報処理装置」の一例である。スマートデバイス１は、アプリケーション１００を備えている。スマートデバイス１は、クラウドシステム２にインターネット４を介してアクセスする。アプリケーション１００は、クラウドシステム２の各種のクラウドサービス（サービス２００−１、２００−２、・・・など）と連携して処理を実行する。
【００１２】
クラウドシステム２は、多数のコンピュータ（不図示）が通信可能に接続されたコンピュータネットワークシステムにより構築され、そのコンピュータネットワークシステム上にアプリケーションサーバ装置５や、認証装置６や、ストレージ（不図示）など、各種のサービスを提供するサーバ装置を設けている。
【００１３】
アプリケーションサーバ装置５は、スマートデバイス１のアプリケーション１００と通信を行い、アプリケーション１００に各種のクラウドサービス（サービス２００−１、２００−２、・・・）を提供する。クラウドサービスでは請求書の査収のワークフローやファイルの印刷フローなどといったワークフローのサービスをマルチテナントで提供している。
【００１４】
認証装置６は、スマートデバイス１と通信を行って、ユーザの認証処理を行う。
【００１５】
アクセスポイント３は、スマートデバイス１をインターネット４に接続し、クラウドシステム２との通信を仲介する。
【００１６】
当該ネットワークシステムＡで、スマートデバイス１は、スマートデバイス１にログインしたユーザの「ユーザＩＤ」Ｂをクラウドシステム２（アプリケーションサーバ装置５）に送信し、そのクラウドシステム２（アプリケーションサーバ装置５）から返信される当該ユーザに固有の「ＵＩ（User  Interface）用表示セット」Ｄを、アプリケーション１００が備える共通の「ＵＩテンプレート」Ｇに反映して表示する。「ユーザＩＤ」Ｂは、ユーザの識別情報の一例である。「ＵＩテンプレート」Ｇや「ＵＩ用表示セット（「表示セット」の一例）」Ｄについては後述する。
【００１７】
続いて、アプリケーションの更新を上記「ＵＩ用表示セット」Ｄにより行うための装置の構成とその装置の処理とについて説明する。なお、当該ネットワークシステムＡにおいて、アプリケーションの更新はスマートデバイス１とアプリケーションサーバ装置５とが主に担うことになる。従って、以下では、スマートデバイス１とアプリケーションサーバ装置５との構成と処理とについて説明することにする。
【００１８】
図２は、スマートデバイス１のハードウェア構成の一例を示す図である。図２に示すように、スマートデバイス１は、コンピュータ構成であり、ＣＰＵ（Central  Processing  Unit）１１、ＲＡＭ（Random  Access  Memory）１２、ＲＯＭ（Read  Only  Memory）１３、フラッシュＲＯＭ１４、タッチ表示ユニット（ＬＣＤ（Liquid  Crystal  Display）１５とタッチセンサ１６）、無線通信Ｉ／Ｆ（インタフェース）１７などを有し、これらはバスＸ１で互いに接続されている。この他、図示を省略しているが、スマートフォンであれば、通話モジュールユニットやカメラモジュールユニットなどがバスＸ１に接続される。
【００１９】
ＣＰＵ１１は演算手段であり、スマートデバイス１全体の動作を統括的に制御する。ＲＡＭ１２は、情報の高速な読み書きが可能な揮発性の記憶媒体であり、ＣＰＵ１１が情報を処理する際の作業領域として用いられる。ＲＯＭ１３は、読み出し専用の不揮発性記憶媒体であり、ＢＩＯＳ等が格納されている。フラッシュＲＯＭ１４は、情報の読み書きが可能な不揮発性の記憶媒体であり、プログラムやデータが記憶されている。本実施形態のスマートデバイス１には、例えばアンドロイド（登録商標）やｉＯＳ(登録商標)などのＯＳ（Operating  System）や、アプリケーション１００などのプログラムがインストールされ、実行可能に記憶されている。また、アプリケーション１００のＵＩインタフェースとして「ＵＩテンプレート」Ｇのデータが記憶されている。この他、各種の通信プログラムなどが備えられている。
【００２０】
ＬＣＤ１５は、ＣＰＵ１１が指示した表示情報を画面に表示するインタフェースであり、タッチセンサ１６は、ユーザが画面にタッチした位置情報をＣＰＵ１１に通知するインタフェースである。
【００２１】
無線通信Ｉ／Ｆ１７は、ＷｉＦｉ（登録商標）などの無線通信インタフェースであり、ＣＰＵ１１からの指示により、アクセスポイント３に無線通信接続する。
【００２２】
図３は、アプリケーションサーバ装置５のハードウェア構成の一例を示す図である。図３に示すように、アプリケーションサーバ装置５は、コンピュータ構成であり、ＣＰＵ５１、ＲＡＭ５２、ＲＯＭ５３、ＨＤＤ（Hard  Disk  Drive）５４、通信Ｉ／Ｆ５５などを有し、これらはバスＸ２で互いに接続されている。
【００２３】
ＣＰＵ５１は演算手段であり、アプリケーションサーバ装置５全体の動作を統括的に制御する。ＲＡＭ５２は、情報の高速な読み書きが可能な揮発性の記憶媒体であり、ＣＰＵ５１が情報を処理する際の作業領域として用いられる。ＲＯＭ５３は、読み出し専用の不揮発性記憶媒体であり、ＢＩＯＳ等が格納されている。ＨＤＤ５４は、情報の読み書きが可能な不揮発性の記憶媒体であり、プログラムやデータが記憶されている。本実施形態のアプリケーションサーバ装置５には、提供するクラウドサービス（サービス２００−１、サービス２００−２、・・・）の各種のプログラムがインストールされている。例えば、クラウドサービスとして請求書フローを実行する請求書プログラムＰ１、印刷フローを実行する印刷プログラムＰ２などがインストールされている。上記データとしては、サービスを利用するユーザの「ユーザＩＤ」Ｂとユーザに送信する「ＵＩ用表示セット」Ｄとを対応付けるための情報テーブルＴが記憶されている。
【００２４】
通信Ｉ／Ｆ５５は、ＬＡＮ（Local  Area  Network）などのネットワークに接続するＥｔｈｅｒｎｅｔ(登録商標)等のネットワークインタフェースである。
【００２５】
図４は、フラッシュＲＯＭ１４（図２参照）に記憶されている「ＵＩテンプレート」Ｇについて説明するための図である。図４には、ＬＣＤ１５に「ＵＩテンプレート」Ｇを表示させた場合の当該「ＵＩテンプレート」Ｇの構成の一例を示している。図４に示す「ＵＩテンプレート」１１００は、アプリ名表示部１１１０と、選択条件表示部１１２０と、ファイル操作部１１３０とを有する。
【００２６】
アプリ名表示部１１１０は、アプリケーションサーバ装置５のアプリケーション名の値を受け付け、その値を「アプリ名」１１１１に表示する。
【００２７】
選択条件表示部１１２０は、条件を示す「テキストラベル１」１１２１の値と、その選択項目を示す「セレクトラベル１」１１２２と「セレクトラベル２」１１２３の値と、選択値の候補を示す２つのリストボックス１１２４、１１２５の各値と、入力項目を示す「入力ラベル１」１１２６の値とをアプリケーションサーバ装置５から受け付け、それぞれに、対応する値を表示する。セレクトラベル（値候補）の値については、２つのリストボックス１１２４、１１２５に、それぞれに対応するものを設定する。各リストボックス１１２４、１１２５は、画面タッチなどにより操作を受け付けると、設定した各値をプルダウンなどにより一覧表示し、画面タッチなどで選択された値を確定状態にする。
【００２８】
ファイル操作部１１３０については固定である。ファイル操作部１１３０には、「ファイル」１１３１と表示され、ファイル選択ボタン１１３２とアップロードボタン１１３３とが受け付け可能に表示される。
【００２９】
ここでは、「ＵＩテンプレート」Ｇの構成として、「ＵＩテンプレート」１１００を一例として示したが、アプリケーション１００に予め組み込む「ＵＩテンプレート」Ｇの数は、１種類に限らない。クラウドサービスのサービスの種類に応じて「ＵＩテンプレート」１１００などの構成に変更を加えた複数種類のものを、アプリケーション１００に予め組み込んでおいても良い。例えば、「ＵＩテンプレート」１１００の入力項目を含まないテンプレートや、入力項目に更に「入力ラベル２」を追加したものなどを組み込んでおいても良い。
【００３０】
図５は、情報テーブルＴ（図３参照）のデータ構造の一例を示す図である。図５（ａ）と図５（ｂ）とには、それぞれ、情報テーブルＴとしての、サービス対応テーブルＴ１と、登録テーブルＴ２とを示している。サービス対応テーブルＴ１は、ユーザ（「ユーザＩＤ」Ｂ）と利用可能なサービスとを対応付ける情報テーブルである。登録テーブルＴ２は、サービス別に登録された「ＵＩ用表示セット」Ｄを登録する情報テーブルである。
【００３１】
サービス対応テーブルＴ１は、「テナントＩＤ」ｔ１１の項目と、「ユーザＩＤ」ｔ１２の項目と、「利用可能アプリケーションＩＤ」ｔ１３の項目とを有する。「テナントＩＤ」ｔ１１の項目には、テナントを一意に識別するためのＩＤが設定されている。「ユーザＩＤ」ｔ１２の項目には、ユーザを一意に識別するためのＩＤ（「ユーザＩＤ」Ｂ）が設定されている。「利用可能アプリケーションＩＤ」ｔ１３の項目には、登録テーブルＴ２の「アプリケーションＩＤ」ｔ２１の項目に登録されているＩＤが設定されている。なお、データ部ｄ１の設定は一例を示したものである。
【００３２】
登録テーブルＴ２は、「アプリケーションＩＤ」ｔ２１の項目と、「アプリケーション名」ｔ２２の項目と、「テキストラベル１」ｔ２３の項目と、「セレクトラベル１」ｔ２４の項目と、「セレクトラベル１（値候補）」ｔ２５の項目と、「セレクトラベル２」ｔ２６の項目と、「セレクトラベル２（値候補）」ｔ２７の項目と、「入力ラベル１」ｔ２８の項目と、「入力ラベル２」ｔ２９の項目とを有する。「アプリケーションＩＤ」ｔ２１の項目には、アプリケーションを一意に識別するためのＩＤが登録される。それ以外の項目には、アプリケーション別の「ＵＩ用表示セット」Ｄ、ここでは一例として、テキスト値が登録される。
【００３３】
登録テーブルＴ２のデータ部ｄ２には、登録例を示している。データ部ｄ２の１行目は、請求書フローサービスを提供するプログラムＰ１（アプリケーションＩＤ「１０」）についての登録例を示している。各項目に、順に、「請求書フロー」、「ファイルアップロード条件」、「ＯＣＲ言語」、「日本語，英語」、「承認依頼先」、「ＸＸＸ，ＹＹＹ，ＺＺＺ」などが、上記値として登録されている。「セレクトラベル１（値候補）」ｔ２５の項目には、リストボックス１１２４（図４参照）で表示させる候補値（「日本語」と「英語」）がカンマ区切りなどで登録されている。「セレクトラベル２（値候補）」ｔ２７の項目には、リストボックス１１２５（図４参照）で表示させる候補値（人名を示す「ＸＸＸ」と「ＹＹＹ」と「ＺＺＺ」）がカンマ区切りなどで登録されている。
【００３４】
データ部ｄ２の２行目は、印刷フローサービスを提供するプログラムＰ２（アプリケーションＩＤ「５０」）についての登録例を示している。各項目に、順に、「印刷フロー」、「印刷条件」、「カラー／モノクロ」、「カラー，モノクロ」、「集約」、「２ｉｎ１，４ｉｎ１」、「部数」などが、上記値として登録されている。「セレクトラベル１（値候補）」ｔ２５の項目には、リストボックス１１２４（図４参照）で表示させる候補値（「カラー」と「モノクロ」）がカンマ区切りなどで登録されている。「セレクトラベル２（値候補）」ｔ２７の項目には、リストボックス１１２５（図４参照）で表示させる候補値（「２ｉｎ１」と「４ｉｎ１」）がカンマ区切りなどで登録されている。
【００３５】
続いて、機能構成について説明する。スマートデバイス１では、ＣＰＵ１１がＲＡＭ１２にプログラムをロードして実行することにより各種機能が実現される。
【００３６】
図６は、スマートデバイス１の機能構成の一例を示す図である。ここでは、クラウドサービスの利用に関する主なものを示している。図６に示すように、スマートデバイス１は、入力受付部１０１、表示制御部１０２、通信制御部１０３、記憶制御部１０４、クライアントアプリケーション部１０５などの機能を有する。
【００３７】
入力受付部１０１は、タッチセンサ１６からタッチ位置を示す位置情報を受け付ける。表示制御部１０２は、ＬＣＤ１５の表示を制御する。通信制御部１０３は、無線通信Ｉ／Ｆ１７を制御する。記憶制御部１０４は、ＲＯＭ１３やＲＡＭ１２やフラッシュＲＯＭ１４など（以下、第１のメモリ（「記憶部」の一例）とする）のメモリマップ上の記憶領域を指定し、データの書き込みや読み取りを指示する。
【００３８】
クライアントアプリケーション部１０５は、アプリケーション１００などの各種機能を有する。具体的に、クライアントアプリケーション部１０５は、認証部１１１や、ＨＴＴＰ（Hypertext  Transfer  Protocol）通信処理部１１２や、表示セット反映部１１３や、サービス処理受付部１１４や、ネイティブ処理部１１５などを有する。
【００３９】
認証部１１１は、ログイン処理を行う。例えば、ユーザがスマートデバイス１にログインしたり、アプリケーション１００を起動する操作を行ったりした場合に、ログイン画面の表示を表示制御部１０２に指示し、ログイン画面で入力されたログイン情報を入力受付部１０１から受け取る。更に、認証部１１１は、認証装置６への認証要求の送信を通信制御部１０３に指示する。
【００４０】
ＨＴＴＰ通信処理部１１２は、ＨＴＴＰリクエストを行う。具体的に、ＨＴＴＰ通信処理部１１２は、ＨＴＴＰリクエスト（要求データ）の送信を通信制御部１０３に指示し、通信先とＨＴＴＰ通信を行う。そして、通信先からの応答データを処理し、処理結果を所定の機能部に渡す。
【００４１】
表示セット反映部１１３は、ＨＴＴＰ通信処理部１１２から受け取った「ＵＩ用表示セット」Ｄを「ＵＩテンプレート」Ｇに反映する。例えば、表示セット反映部１１３は、「ＵＩ用表示セット」Ｄに含まれている各テキスト値を「ＵＩテンプレート」Ｇの対応項目に設定することにより反映する。
【００４２】
サービス処理受付部１１４は、「ＵＩテンプレート」Ｇにおいてユーザにより入力操作された情報を入力受付部１０１から受け付け、受け付けた入力情報に基づくサービスの実行をＨＴＴＰ通信処理部１１２を通じてアプリケーションサーバ装置５に依頼する。
【００４３】
ネイティブ処理部１１５は、サービス処理受付部１１４が依頼したサービスの処理結果を利用するネイティブアプリケーションの機能である。
【００４４】
この機能構成において、主に入力受付部１０１やサービス処理受付部１１４などが「入力受付部」に相当する。主に表示制御部１０２が「表示部」に相当する。主に通信制御部１０３やＨＴＴＰ通信処理部１１２などが「通信取得部」や「一覧情報通信取得部」に相当する。主に表示セット反映部１１３が「設定部」に相当する。
【００４５】
一方のアプリケーションサーバ装置５では、ＣＰＵ５１がＲＡＭ５２にプログラムをロードして実行することにより各種機能が実現される。
【００４６】
図７は、アプリケーションサーバ装置５の機能構成の一例を示す図である。ここでは、クラウドサービスの利用に関する主なものを示している。図７に示すように、アプリケーションサーバ装置５は、通信制御部５０１、記憶制御部５０２、クラウドサービス部５０３などの機能を有する。
【００４７】
通信制御部５０１は、通信Ｉ／Ｆ５５を制御する。記憶制御部５０２は、ＲＯＭ５３やＲＡＭ５２やＨＤＤ５４など（以下、第２のメモリとする）のメモリマップ上の記憶領域を指定し、データの書き込みや読み取りを指示する。
【００４８】
クラウドサービス部５０３は、クラウドサービスを提供する。具体的に、クラウドサービス部５０３は、要求処理部５１１や、表示セット抽出部５１２や、更新部５１３や、サービス処理部５１４などを有する。
【００４９】
要求処理部５１１は、スマートデバイス１や管理者端末からの要求を通信制御部５０１を介して受け付けて処理する。なお、管理者端末として、アプリケーションサーバ装置５に管理者用のＰＣを接続しても良いし、ネットワーク上に管理者用のＰＣを設けても良いし、スマートデバイス１を管理者として使用しても良い。
【００５０】
表示セット抽出部５１２は、要求処理部５１１から「ユーザＩＤ」Ｂを受け取ると、その「ユーザＩＤ」Ｂに対応する「ＵＩ用表示セット」Ｄを情報テーブルＴから抽出する。
【００５１】
更新部５１３は、要求処理部５１１から更新情報を受け取ると、情報テーブルＴの各値を更新情報により更新する。
【００５２】
サービス処理部５１４は、要求処理部５１１からアプリケーションＩＤと条件データなどを受け取ると、アプリケーションＩＤに対応するサービスを条件データに従って処理（実行）する。
【００５３】
この機能構成において、主にクラウドサービス部５０３が「サービス部」に相当する。主に、更新部５１３が「更新受付部」に相当する。
【００５４】
続いて、スマートデバイス１とアプリケーションサーバ装置５とのクラウドサービス利用時の処理フローについて説明する。以下において、アプリケーションサーバ装置５の登録テーブルＴ２（図５（ｂ）参照）の「ＵＩ用表示セット」Ｄは、アプリケーションの変更などに基づいて更新された後のものであるとする。具体的には、管理者端末がアプリケーションサーバ装置５にアクセスし、更新部５１３を介して登録テーブルＴ２の「ＵＩ用表示セット」Ｄのそれぞれの値を書き換える。
【００５５】
また、スマートデバイス１は、電源投入後のホーム画面を表示した状態にあり、アプリケーションサーバ装置５は、クラウドサービスの利用が可能な状態にあるものとして説明する。
【００５６】
図８は、スマートデバイス１がアプリケーションサーバ装置５にアクセスする際の処理フローの一例を示す図である。先ず、スマートデバイス１は、ホーム画面において、アプリケーション１００の起動を受付可能にして待機する（Ｓ１）。
【００５７】
続いて、ユーザによりホーム画面のアイコンが画面タッチなどにより操作されるなどしてアプリケーション１００の起動を指示されると、スマートデバイス１（認証部１１１）は、第１のメモリに記憶されているログイン画面をＬＣＤ１５に表示し、ログイン画面における入力を受付可能にして待機する（Ｓ２）。
【００５８】
続いて、ユーザによりログイン情報としてユーザＩＤ（例えばメールアドレス）とパスワードとが入力されると、スマートデバイス１（認証部１１１）は、予め登録されている認証装置６にログイン情報の認証を依頼し（Ｓ３）、認証装置６から認証結果を受信する（Ｓ４）。
【００５９】
認証結果が認証ＯＫの場合、スマートデバイス１（ＨＴＴＰ通信処理部１１２）は、アプリケーションサーバ装置５に対し、その認証チケット（「ユーザＩＤ」Ｂを含む）を要求データに含めて、そのユーザが利用可能なアプリケーション一覧の取得を要求する（Ｓ５）。例えば、スマートデバイス１は、ＵＲＬに上記認証チケットを含めるなどして要求データを送信する。
【００６０】
アプリケーションサーバ装置５（要求処理部５１１）は、スマートデバイス１からその要求を受け取ると、上記認証チケットに含まれる「ユーザＩＤ」Ｂに基づき、そのユーザが利用可能なアプリケーション名の一覧リスト（一覧情報）をスマートデバイス１に返信する（Ｓ６）。
【００６１】
具体的には、アプリケーションサーバ装置５は、サービス対応テーブルＴ１（図５（ａ）参照）から、スマートデバイス１から取得した「ユーザＩＤ」Ｂに対応する「利用可能アプリケーションＩＤ」を抽出する。そして、登録テーブルＴ２（図５（ｂ）参照）の「アプリケーション名」ｔ２２の項目から、サービス対応テーブルＴ１から抽出した「利用可能アプリケーションＩＤ」に対応する「アプリケーション名」を抽出する。
【００６２】
例えば、スマートデバイス１から上記「ユーザＩＤ」Ｂとして「ｕｓｅｒＡ（このユーザのメールアドレスに対応する）」を取得したとする。その場合、アプリケーションサーバ装置５は、サービス対応テーブルＴ１（図５（ａ）参照）から「利用可能アプリケーションＩＤ」ｔ１３の項目に設定されている「１０」を抽出する。更に、登録テーブルＴ２（図５（ｂ）参照）の「アプリケーションＩＤ」ｔ２１を検索キーに、抽出した「１０」に該当する「アプリケーション名」ｔ２２の設定値（この例では「請求書フロー」）を抽出する。
【００６３】
この例では、一つであるが、複数が抽出された場合は、それらを一覧リストとしてスマートデバイス１に返信する。この例のように一つの場合は、ステップＳ６と後述するステップＳ７、Ｓ８を省略し、ステップＳ９を行うようにしても良い。
【００６４】
スマートデバイス１は、アプリケーションサーバ装置５から一覧リストを受け取ると、当該一覧リストをＬＣＤ１５に表示し、一覧リスト画面における入力を受付可能にして待機する（Ｓ７）。
【００６５】
続いて、スマートデバイス１（ＨＴＴＰ通信処理部１１２）は、ユーザにより画面タッチなどにより操作されるなどして一覧リスト画面から「アプリケーション名」の一つが選択されると、その選択されたアプリケーション名に対応するインスタンスＩＤを要求データに含め、アプリケーションサーバ装置５に対し、そのアプリケーションに対応する「ＵＩ用表示セット」Ｄの取得を要求する（Ｓ８）。
【００６６】
アプリケーションサーバ装置５（要求処理部５１１）は、スマートデバイス１からその要求を受け取ると、上記インスタンスＩＤ、つまり上記アプリケーションＩＤの「ＵＩ用表示セット」Ｄをスマートデバイス１に返信する（Ｓ９）。具体的には、アプリケーションサーバ装置５は、表示セット抽出部５１２が登録テーブルＴ２（図５（ｂ）参照）から当該「アプリケーションＩＤ」に対応する「ＵＩ用表示セット」Ｄを抽出する。
【００６７】
一例として、上記「アプリケーションＩＤ」の値が「１０」であるとした場合、登録テーブルＴ２（図５（ｂ）参照）から、「アプリケーションＩＤ」ｔ２１が「１０」に対応するレコードの、「アプリケーション名」ｔ２２、「テキストラベル１」ｔ２３、・・・、「入力ラベル２」ｔ２９、の各値、つまり「請求書フロー」、「ファイルアップロード条件」、・・・、「ＸＸＸ，ＹＹＹ，ＺＺＺ」を、表示セット抽出部５１２が抽出する。そして、要求処理部５１１が「ＵＩ用表示セット」Ｄとして、抽出された各値をスマートデバイス１に返信する。
【００６８】
スマートデバイス１（表示セット反映部１１３）は、アプリケーションサーバ装置５から「ＵＩ用表示セット」Ｄを受け取ると、そのアプリケーションに対応する「ＵＩテンプレート」Ｇに当該「ＵＩ用表示セット」Ｄを設定してＬＣＤ１５に表示し、そのＵＩ画面における入力を受付可能にして待機する（Ｓ１０）。
【００６９】
図９は、「アプリケーションＩＤ」が「１０」の設定のＵＩ画面におけるスマートデバイス１とアプリケーションサーバ装置５とのクラウドサービスの利用時の処理フローの一例を示す図である。
【００７０】
スマートデバイス１は、「アプリケーションＩＤ」が「１０」の設定のＵＩ画面において、ユーザによる入力を受付可能にして待機する（Ｓ２１）。
【００７１】
ユーザによりファイル操作部１１３０のファイル選択ボタン１１３２が画面タッチなどにより操作されると、スマートデバイス１（サービス処理受付部１１４）は、第１のメモリに記憶されている各種のファイルを指定するための操作画面を表示し、ユーザ操作によりファイルを指定させる（Ｓ２２）。
【００７２】
ユーザにより選択条件表示部１１２０が画面タッチなどにより操作され、条件が指定されると、スマートデバイス１（サービス処理受付部１１４）は、その指定された値を受け付ける（Ｓ２３）。
【００７３】
そして、ユーザによりアップロードボタン１１３３が画面タッチなどにより操作されると、スマートデバイス１（サービス処理受付部１１４）は、ステップＳ２３で受け付けた条件をアプリケーションサーバ装置５に送信すると共に、ステップＳ２２で指定されたファイルをアプリケーションサーバ装置５にアップロードする（Ｓ２４）。
【００７４】
アプリケーションサーバ装置５（要求処理部５１１）は、スマートデバイス１から条件とファイルのアップロードとを受けると、その受付結果をスマートデバイス１に返信する（Ｓ２５）。
【００７５】
スマートデバイス１は、アプリケーションサーバ装置５から受付結果を受け取ると、受付の終了をユーザに通知する（Ｓ２６）。例えば、スマートデバイス１は、アップロードボタン１１３３の操作後にＵＩ画面の入力受付を不可にし、アプリケーションサーバ装置５から受付結果が通知されると再びＵＩ画面を入力受付可能にすることで受け付けの終了をユーザに通知する。なお、スマートデバイス１（ネイティブ処理部１１５）は、アプリケーションサーバ装置５（サービス処理部５１４）のサービス処理の結果を受け取ると、その結果を利用して所定の処理を行う。
【００７６】
図１０は、「ＵＩテンプレート」Ｇに「ＵＩ用表示セット」Ｄを反映した場合のＬＣＤ１５のＵＩ画面の表示の一例を示す図である。図１０（ａ）は、テナント「１１１１」のユーザ「ｕｓｅｒＡ」がスマートデバイス１にログインした場合の表示例である。図１０（ｂ）は、テナント「１１１１」のユーザ「ｕｓｅｒＢ」がスマートデバイス１にログインした場合の表示例である。図１０（ｃ）は、テナント「２２２２」のユーザ「ｕｓｅｒＣ」がスマートデバイス１にログインした場合の表示例である。
【００７７】
テナント「１１１１」のユーザ「ｕｓｅｒＡ」は、サービス対応テーブルＴ１（図５（ａ）参照）の「利用可能アプリケーションＩＤ」ｔ１３の項目において値「１０」が設定されている。これにより、登録テーブルＴ２（図５（ｂ）参照）の「アプリケーションＩＤ」ｔ２１の項目が値「１０」の登録レコードの全ての値（表示セット）が「ＵＩ用表示セット」Ｄとして「ＵＩテンプレート」Ｇに反映され、図１０（ａ）に示すように表示される。
【００７８】
テナント「１１１１」のユーザ「ｕｓｅｒＢ」についても、サービス対応テーブルＴ１（図５（ａ）参照）の「利用可能アプリケーションＩＤ」ｔ１３の項目において値「１０」が設定されている。これにより、図１０（ａ）と同様の設定が図１０（ｂ）に示すように表示される。
【００７９】
テナント「２２２２」のユーザ「ｕｓｅｒＣ」は、サービス対応テーブルＴ１（図５（ａ）参照）の「利用可能アプリケーションＩＤ」ｔ１３の項目において値「５０」が設定されている。これにより、登録テーブルＴ２（図５（ｂ）参照）の「アプリケーションＩＤ」ｔ２１の項目が値「５０」の登録レコードの全ての値（表示セット）が「ＵＩ用表示セット」Ｄとして「ＵＩテンプレート」Ｇに反映され、図１０（ｃ）に示すように表示される。
【００８０】
以上のように、本実施の形態では、アプリケーションが更新された場合に、スマートデバイス１に更新後のアプリケーションを操作するための「ＵＩ用表示セット」Ｄがアプリケーションサーバ装置５からユーザ別に送信される。スマートデバイス１では、その「ＵＩ用表示セット」Ｄを反映する機能を有し、サービスを利用する際の、アプリケーションサーバ装置５へアクセスした時に「ＵＩ用表示セット」Ｄが送信される。このため、ユーザによる新たに更新後のプログラムをサイトからダウンロードするなどのアップデート作業が省略される。従って、スマートデバイス１上のアプリケーション１００をアップデートすることなく機能を動的に変更することが可能になる。
【００８１】
また、ユーザ別に、それぞれのユーザが利用可能なサービスの「ＵＩ用表示セット」Ｄがアプリケーションサーバ装置５からスマートデバイス１に送信される。このため、スマートデバイス１では、複数のサービスに共通の「ＵＩテンプレート」Ｇに、ユーザが利用するサービスに特化した操作情報のみが反映されることになる。このため、スマートデバイス１上には、そのスマートデバイス１にログイン中のユーザが利用するサービスに特化した操作情報のみが表示され、操作性が向上する。
【００８２】
また、ユーザが利用可能なサービス（アプリケーションサーバ装置５のアプリケーション）がスマートデバイス１に一覧リストで提供されるため、ユーザは必要なサービスを容易に選択することができる。
【００８３】
また、アプリケーションサーバ装置５におけるアプリケーションの更新後も、スマートデバイス１の本体機能との連携が維持でき、パフォーマンスが損なわれることも抑止することができる。
【００８４】
（変形例１）
実施の形態では、アプリケーション１００に、「ＵＩテンプレート」Ｇとして「ＵＩテンプレート」１１００を予め組み込んだ例を示した。「ＵＩテンプレート」Ｇの数を１種類に限らず複数種類に増やしても良い。
【００８５】
例えば、クラウドサービスのサービスの種類に応じて「ＵＩテンプレート」１１００などの構成に変更を加えた複数種類のものを、アプリケーション１００に予め組み込む。一例として、「ＵＩテンプレート」１１００の入力項目を含まないテンプレートを追加する。
【００８６】
アプリケーションサーバ装置５では、「ＵＩテンプレート」Ｇを種類別に識別情報により管理し、その識別情報を、登録テーブルＴ２（図５（ｂ）参照）に「ＵＩ用表示セット」Ｄに対応付けて登録する。アプリケーションサーバ装置５からは、スマートデバイス１に該当する「ＵＩ用表示セット」Ｄを送信する際に、「ＵＩテンプレート」Ｇの種類を示す識別情報も送信させるように変更する。
【００８７】
スマートデバイス１には、「ＵＩテンプレート」Ｇの種類を示す識別情報により、対応する「ＵＩテンプレート」Ｇを選択する選択部を設け、その選択部により選択された「ＵＩテンプレート」Ｇを対象に表示セット反映部１１３により「ＵＩ用表示セット」Ｄを反映させるようにする。
【００８８】
こうすることにより、「ＵＩテンプレート」Ｇ上の「ＵＩ用表示セット」Ｄに対応しない項目が値が未セットのまま表示されることを回避することができる。例えば、図１０（ａ）と図１０（ｂ）とには、入力ラベル１に値がセットされずにデフォルト値のまま表示されている。「ＵＩテンプレート」Ｇに入力ラベル１の項目を含まないものを用意しておくことにより、ユーザに対し余計な項目を非表示にすることができる。
【００８９】
このように、「ＵＩテンプレート」Ｇを複数種類設けることにより、ＵＩテンプレートに含まれる使用しないＵＩを表示しなくても良くなり、サービス毎に最適なＵＩを提供することが可能になる。また、サービス毎に通信で取得するＵＩのデータ量を最小限に抑えることも可能になる。
【００９０】
（変形例２）
スマートデバイス１は、「ＵＩ用表示セット」Ｄを設定した「ＵＩテンプレート」Ｇを生成した際に、その生成データを記憶制御部（保存部）１０４によりスマートデバイス１の第１のメモリに保存しても良い。この場合、スマートデバイス１は、次回から、同じユーザが再びログインした場合に、記憶制御部１０４により第１のメモリからその生成データを読み出し、その生成データを表示制御部（表示部）１０２により表示させる。
【００９１】
こうすることにより、アプリケーションサーバ装置５において同じユーザから「ＵＩ用表示セット」Ｄの送信要求を繰り返し受けることを減らすことができ、アプリケーションサーバ装置５の負荷が軽減する。また、スマートデバイス１では、２回目から、「ＵＩ用表示セット」Ｄが設定された「ＵＩテンプレート」Ｇが直ちに表示されるため、ユーザの利便性が向上する。
【００９２】
（変形例３）
スマートデバイス１は、複数種類のクラウドサービスを受ける場合、アプリケーションサーバ装置５から取得したそれぞれの「ＵＩ用表示セット」Ｄを第１のメモリに予め保存し、それぞれのクラウドサービスに対応した「ＵＩテンプレート」Ｇを切替部により切り替え表示させるようにしても良い。例えば、請求書フローを行う場合、請求書フローの「ＵＩテンプレート」Ｇに請求書フローの「ＵＩ用表示セット」Ｄを反映させたものを画面に表示させる。入力受付部１０１から印刷フローの画面への切り替えの指示があると、当該切替部が、印刷フローの「ＵＩテンプレート」Ｇに印刷フローの「ＵＩ用表示セット」Ｄを反映させたものに画面表示を切り替える。
【００９３】
（変形例４）
なお、「ＵＩテンプレート」Ｇの表示内容をユーザから依頼のあった時点でクラウドサービスに確認し、変更があった場合に更新するようにしても良い。
【００９４】
実施の形態及び各変形例の各装置で実行されるプログラムは、インストール可能な形式又は実行可能な形式のファイルでＣＤ−ＲＯＭ、フレキシブルディスク（ＦＤ）、ＣＤ−Ｒ、ＤＶＤ（Digital  Versatile  Disk）等のコンピュータで読み取り可能な記録媒体に記録されて提供される。
【００９５】
また、実施の形態及び各変形例の各装置で実行されるプログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成しても良い。また、実施の形態及び各変形例の各装置で実行されるプログラムをインターネット等のネットワーク経由で提供または配布するように構成しても良い。
【００９６】
また、実施の形態及び各変形例のプログラムを、ＲＯＭ等に予め組み込んで提供するように構成してもよい。
【符号の説明】
【００９７】
１      スマートデバイス
２      クラウドシステム
３      アクセスポイント
４      インターネット
５      アプリケーションサーバ装置
６      認証装置
１００  アプリケーション
２００−１、２００−２  サービス
Ａ      ネットワークシステム
Ｂ      「ユーザＩＤ」
Ｄ      「ＵＩ用表示セット」
Ｇ      「ＵＩテンプレート」
【先行技術文献】
【特許文献】
【００９８】
【特許文献１】特開２０１５−８４２１３号公報
【図１】
2018156487.tif 000003
【図２】
2018156487.tif 000004
【図３】
2018156487.tif 000005
【図４】
2018156487.tif 000006
【図５】
2018156487.tif 000007
【図６】
2018156487.tif 000008
【図７】
2018156487.tif 000009
【図８】
2018156487.tif 000010
【図９】
2018156487.tif 000011
【図１０】
2018156487.tif 000012