(57)【要約】【課題】プログラムのカスタマイズの効率性を向上させること。【解決手段】情報処理装置は、画面の表示を実行する表示制御部と、前記画面に対する入力に応じた処理を実行する処理制御部と、として当該情報処理装置を機能させる第一のプログラムの第一の識別情報に関連付けて、前記画面に対する変更の有無、及び前記処理に対する変更の有無を示す情報を記憶する記憶部と、前記記憶部が記憶する情報が、前記画面に対して変更が有ることを示す場合に、前記第一の識別情報に関連付けられて前記記憶部に記憶されている第二の識別情報に係る第二のプログラムに、変更された画面の表示を要求し、前記記憶部が記憶する情報が、前記処理に対して変更が有ることを示す場合に、前記第一の識別情報に関連付けられて前記記憶部に記憶されている第三の識別情報に係る第三のプログラムに、変更された処理の実行を要求する要求部と、を有する。【選択図】図５
2015114795.tif 000002
【特許請求の範囲】
【請求項１】
情報処理装置であって、
画面の表示を実行する表示制御部と、前記画面に対する入力に応じた処理を実行する処理制御部と、として当該情報処理装置を機能させる第一のプログラムの第一の識別情報に関連付けて、前記画面に対する変更の有無、及び前記処理に対する変更の有無を示す情報を記憶する記憶部と、
前記記憶部が記憶する情報が、前記画面に対して変更が有ることを示す場合に、前記第一の識別情報に関連付けられて前記記憶部に記憶されている第二の識別情報に係る第二のプログラムに、変更された画面の表示を要求し、前記記憶部が記憶する情報が、前記処理に対して変更が有ることを示す場合に、前記第一の識別情報に関連付けられて前記記憶部に記憶されている第三の識別情報に係る第三のプログラムに、変更された処理の実行を要求する要求部と、
を有することを特徴とする情報処理装置。
【請求項２】
前記要求部は、前記記憶部が記憶する情報が、前記画面に対して変更が有ることを示す場合に、前記表示制御部に対して画面の表示を要求する代わりに、前記第二のプログラムに画面の表示を要求する請求項１記載の情報処理装置。
【請求項３】
前記要求部は、前記記憶部が記憶する情報が、前記処理に対して変更が有ることを示す場合に、前記処理制御部に対して処理の実行を要求する代わりに、前記第三のプログラムに処理の実行を要求する請求項１又は２記載の情報処理装置。
【請求項４】
前記要求部は、前記表示制御部又は前記第二のプログラムが表示させた画面に対して入力された情報を、前記表示制御部又は前記第二のプログラムより受け取り、前記記憶部が記憶する情報に基づいて、前記入力された情報を、前記処理制御部又は前記第三のプログラムに通知する請求項１乃至３いずれか一項記載の情報処理装置。
【請求項５】
情報処理装置が、
画面の表示を実行する表示制御部と、前記画面に対する入力に応じた処理を実行する処理制御部と、として当該情報処理装置を機能させる第一のプログラムの第一の識別情報に関連付けて、前記画面に対する変更の有無、及び前記処理に対する変更の有無を示す情報を記憶部に記憶する記憶手順と、
前記記憶部が記憶する情報が、前記画面に対して変更が有ることを示す場合に、前記第一の識別情報に関連付けられて前記記憶部に記憶されている第二の識別情報に係る第二のプログラムに、変更された画面の表示を要求し、前記記憶部が記憶する情報が、前記処理に対して変更が有ることを示す場合に、前記第一の識別情報に関連付けられて前記記憶部に記憶されている第三の識別情報に係る第三のプログラムに、変更された処理の実行を要求する要求手順と、
を実行することを特徴とする情報処理方法。
【請求項６】
情報処理装置に、
画面の表示を実行する表示制御部と、前記画面に対する入力に応じた処理を実行する処理制御部と、として当該情報処理装置を機能させる第一のプログラムの第一の識別情報に関連付けて、前記画面に対する変更の有無、及び前記処理に対する変更の有無を示す情報を記憶部に記憶する記憶手順と、
前記記憶部が記憶する情報が、前記画面に対して変更が有ることを示す場合に、前記第一の識別情報に関連付けられて前記記憶部に記憶されている第二の識別情報に係る第二のプログラムに、変更された画面の表示を要求し、前記記憶部が記憶する情報が、前記処理に対して変更が有ることを示す場合に、前記第一の識別情報に関連付けられて前記記憶部に記憶されている第三の識別情報に係る第三のプログラムに、変更された処理の実行を要求する要求手順と、
を実行させる情報処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、情報処理方法、及び情報処理プログラムに関する。
【背景技術】
【０００２】
ユーザとの対話によって処理を実行するプログラムの実装は、ユーザとの対話を実現するための画面の表示処理する実行する部分（以下、「表示制御部」という。）と、該画面に対する入力に応じた処理を実行する部分（以下、「処理制御部」という。）とを含む。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
例えば、機器等の情報処理装置にインストールされている既存のプログラムについて、表示制御部と処理制御部とのカスタマイズの独立性を高めることができれば、該プログラムのカスタマイズを効率化することができる。すなわち、画面の表示処理を変更したい場合、該画面に対する入力に応じて実行される処理については、既存のプログラムの処理制御部を利用することができれば、効率的である。同様に、画面に対する入力に応じた処理を変更したい場合、該画面の表示処理については、既存のプログラムの表示制御部を利用することができれば、効率的である。
【０００４】
本発明は、上記の点に鑑みてなされたものであって、プログラムのカスタマイズの効率性を向上させることを目的とする。
【課題を解決するための手段】
【０００５】
そこで上記課題を解決するため、情報処理装置は、画面の表示を実行する表示制御部と、前記画面に対する入力に応じた処理を実行する処理制御部と、として当該情報処理装置を機能させる第一のプログラムの第一の識別情報に関連付けて、前記画面に対する変更の有無、及び前記処理に対する変更の有無を示す情報を記憶する記憶部と、前記記憶部が記憶する情報が、前記画面に対して変更が有ることを示す場合に、前記第一の識別情報に関連付けられて前記記憶部に記憶されている第二の識別情報に係る第二のプログラムに、変更された画面の表示を要求し、前記記憶部が記憶する情報が、前記処理に対して変更が有ることを示す場合に、前記第一の識別情報に関連付けられて前記記憶部に記憶されている第三の識別情報に係る第三のプログラムに、変更された処理の実行を要求する要求部と、を有する。
【発明の効果】
【０００６】
プログラムのカスタマイズの効率性を向上させることができる。
【図面の簡単な説明】
【０００７】
【図１】本発明の実施の形態における情報処理システムの構成例を示す図である。
【図２】本発明の実施の形態における画像形成装置のハードウェア構成例を示す図である。
【図３】本発明の実施の形態における情報処理端末のハードウェア構成例を示す図である。
【図４】本発明の実施の形態における情報処理システムのソフトウェア構成例を示す図である。
【図５】情報処理端末のアプリ層の構成例を示す図である。
【図６】カスタマイズ可能な既定のアプリの情報処理端末へのインストール時に実行される処理手順の一例を説明するためのシーケンス図である。
【図７】情報処理端末へのカスタマイズアプリのインストール時に実行される処理手順の一例を説明するためのシーケンス図である。
【図８】カスタマイズ情報の構成例を示す図である。
【図９】カスタマイズ情報記憶部の構成例を示す図である。
【図１０】情報処理端末からのカスタマイズアプリのアンインストール時に実行される処理手順の一例を説明するためのシーケンス図である。
【図１１】認証アプリの既定処理の処理手順の一例を説明するためのシーケンス図である。
【図１２】第一のカスタマイズの内容を説明するための図である。
【図１３】第一のカスタマイズの適用後の認証アプリの処理手順の一例を説明するためのシーケンス図である。
【図１４】第二のカスタマイズの内容を説明するための図である。
【図１５】第二のカスタマイズの適用後の認証アプリの処理手順の一例を説明するためのシーケンス図である。
【図１６】第三のカスタマイズの内容を説明するための図である。
【図１７】第三のカスタマイズの適用後の認証アプリの処理手順の一例を説明するためのシーケンス図である。
【図１８】第四のカスタマイズの適用後の認証アプリの処理手順の一例を説明するためのシーケンス図である。
【発明を実施するための形態】
【０００８】
以下、図面に基づいて本発明の実施の形態を説明する。図１は、本発明の実施の形態における情報処理システムの構成例を示す図である。図１に示される情報処理システム１において、画像形成装置１０は、情報処理端末２０と通信可能に接続される。画像形成装置１０と情報処理端末２０との通信は、例えば、ＵＳＢ（Universal Serial Bus）、近距離無線通信、又はＬＡＮ（有線又は無線の別は問わない）等のネットワークを介して行われる。
【０００９】
画像形成装置１０は、印刷、スキャン、コピー、及びＦＡＸ送受信等のうちの２以上の機能を一台の筐体によって実現する複合機である。但し、いずれか一つの機能を有する機器が画像形成装置１０として用いられてもよい。また、本実施の形態における画像形成装置１０は、機器の一例であり、プロジェクタ、テレビ会議システム、又はデジタルカメラ等の機器が、画像形成装置１０の代わりに用いられてもよい。
【００１０】
情報処理端末２０は、例えば、スマートフォンやタブレット型端末等、単独で完結した情報処理を実行可能な電子機器である。本実施の形態において、情報処理端末２０は、画像形成装置１０の操作部として機能する。より詳しくは、情報処理端末２０は、従来、画像形成装置１０の専用の操作部として設置されていた操作パネルの代わりに、画像形成装置１０に接続される。
【００１１】
情報処理端末２０は、例えば、画像形成装置１０の所定の位置（例えば、操作パネルが配置される位置）に固定されて設置される。したがって、情報処理端末２０及び画像形成装置１０とは、一台の装置として把握されてもよい。または、情報処理端末２０は、画像形成装置１０から取り外し可能（分離可能）であってもよい。情報処理端末２０が取り外された状態において、情報処理端末２０は、Ｂｌｕｅｔｏｏｔｈ（登録商標）又は赤外線等の無線通信等を介して、画像形成装置１０の操作部として機能可能であってもよい。
【００１２】
図２は、本発明の実施の形態における画像形成装置のハードウェア構成例を示す図である。図２において、画像形成装置１０は、コントローラ１１、スキャナ１２、プリンタ１３、モデム１４、端末インタフェース１５、ネットワークインタフェース１６、及びＳＤカードスロット１７等のハードウェアを有する。
【００１３】
コントローラ１１は、ＣＰＵ１１１、ＲＡＭ１１２、ＲＯＭ１１３、ＨＤＤ１１４、及びＮＶＲＡＭ１１５等を有する。ＲＯＭ１１３には、各種のプログラムやプログラムによって利用されるデータ等が記憶されている。ＲＡＭ１１２は、プログラムをロードするための記憶領域や、ロードされたプログラムのワーク領域等として用いられる。ＣＰＵ１１１は、ＲＡＭ１１２にロードされたプログラムを処理することにより、各種の機能を実現する。ＨＤＤ１１４には、プログラムやプログラムが利用する各種のデータ等が記憶される。ＮＶＲＡＭ１１５には、各種の設定情報等が記憶される。
【００１４】
スキャナ１２は、原稿より画像データを読み取るためのハードウェア（画像読取手段）である。プリンタ１３は、印刷データを印刷用紙に印刷するためのハードウェア（印刷手段）である。モデム１４は、電話回線に接続するためのハードウェアであり、ＦＡＸ通信による画像データの送受信を実行するために用いられる。端末インタフェース１５は、情報処理端末２０と通信（接続）するためのインタフェースである。例えば、端末インタフェース１５は、例えば、ＵＳＢインタフェースでもよいし、近距離無線通信のためのハードウェアでもよい。または、端末インタフェース１５は、ＬＡＮ等のネットワーク（有線又は無線の別は問わない。）に接続するためのハードウェアでもよい。ネットワークインタフェース１６は、ＬＡＮ等のネットワーク（有線又は無線の別は問わない。）に接続するためのハードウェアである。ＳＤカードスロット１７は、ＳＤカード８０に記憶されたプログラムを読み取るために利用される。すなわち、画像形成装置１０では、ＲＯＭ１１３に記憶されたプログラムだけでなく、ＳＤカード８０に記憶されたプログラムもＲＡＭ１１２にロードされ、実行されうる。なお、他の記録媒体（例えば、ＣＤ−ＲＯＭ又はＵＳＢ（Universal Serial Bus）メモリ等）によってＳＤカード８０が代替されてもよい。すなわち、ＳＤカード８０の位置付けに相当する記録媒体の種類は、所定のものに限定されない。この場合、ＳＤカードスロット１７は、記録媒体の種類に応じたハードウェアによって代替されればよい。
【００１５】
図３は、本発明の実施の形態における情報処理端末のハードウェア構成例を示す図である。図３において、情報処理端末２０は、ＣＰＵ２０１、メモリ２０２、補助記憶装置２０３、タッチパネル２０４、無線通信装置２０５、及び機器インタフェース２０６等を有する。
【００１６】
補助記憶装置２０３は、情報処理端末２０にインストールされたプログラム等を記憶する。メモリ２０２は、プログラムの起動指示があった場合に、補助記憶装置２０３からプログラムを読み出して記憶する。ＣＰＵ２０１は、メモリ２０２に記憶されたプログラムに従って情報処理端末２０に係る機能を実現する。
【００１７】
タッチパネル２０４は、入力機能と表示機能との双方を備えた電子部品であり、情報の表示や、ユーザからの入力の受け付け等を行う。タッチパネル２０４は、表示装置２１１及び入力装置２１２等を含む。
【００１８】
表示装置２１１は、液晶ディスプレイ等であり、タッチパネル２０４の表示機能を担う。入力装置２１２は、表示装置２１１に対する接触物の接触を検出するセンサを含む電子部品である。接触物の接触の検出方式は、静電方式、抵抗膜方式、又は光学方式等、公知の方式のいずれであってもよい。なお、接触物とは、タッチパネル２０４の接触面（表面）に接触する物体をいう。斯かる物体の一例として、ユーザの指や専用又は一般のペン等が挙げられる。
【００１９】
無線通信装置２０５は、無線ＬＡＮ（Local Area Network）又は移動体通信網等における通信を行うために必要とされるアンテナ等の電子部品である。機器インタフェース２０６は、画像形成装置１０と通信するためのインタフェースである。すなわち、機器インタフェース２０６は、端末インタフェース１５に対応した形態によって、画像形成装置１０との通信を行う。
【００２０】
図４は、本発明の実施の形態における情報処理システムのソフトウェア構成例を示す図である。
【００２１】
図４において、画像形成装置１０は、機器ＡＰＩ１２１及び機器制御部１２２等を有する。機器ＡＰＩ１２１は、画像形成装置１０の外部からの要求を受け付けるためのＡＰＩ（Application Program Interface）である。本実施の形態において、機器ＡＰＩ１２１は、ＷｅｂＡＰＩとして実現される。すなわち、機器ＡＰＩ１２１は、ＨＴＴＰ（HyperText Transfer Protocol）通信を利用したＡＰＩとして実装される。この場合、ＨＴＴＰリクエストに指定されるＵＲＬ（Uniform Resource Locator）によって、要求の種類又は内容が示される。但し、機器ＡＰＩ１２１を実現するための通信プロトコルは、ＨＴＴＰに限定されない。例えば、ＳＯＡＰ（Simple Object Access Protocol）が用いられても良いし、他の通信プロトコルが用いられてもよい。
【００２２】
機器制御部１２２は、機器ＡＰＩ１２１によって受け付けられた要求に応じた処理を実行する。なお、図４において、機器制御部１２２は、一つのブロックとして示されているが、例えば、機能別に機器制御部１２２が分割されてもよい。また、各機器制御部１２２は、画像形成装置１０側のアプリケーションプログラム（以下、単に「アプリ」という。）がＣＰＵ１１１に実行させる処理により実現されてもよい。
【００２３】
一方、情報処理端末２０は、ＯＳ２１、プラットフォーム層２２、及びアプリ層２３等を含む。これらは、情報処理端末２０にインストールされたプログラムが、ＣＰＵ２０１に実行させる処理により実現される。
【００２４】
ＯＳ２１は、一般的な又は情報処理端末２０に対して専用のＯＳ（Operating System）である。プラットフォーム層２２及びアプリ層２３は、ＯＳ２１上で動作する（又はＯＳ２１によって制御される）。
【００２５】
アプリ層２３は、ユーザとの対話によって処理を実行するアプリの集合である。各アプリは、表示装置２１１に画面を表示させ、当該画面に対する入力に応じた処理を、ＣＰＵ２０１に実行させる。
【００２６】
プラットフォーム層２２は、アプリ層２３に対して、機器ＡＰＩ１２１をラッピングしたＡＰＩを提供するプログラム群である。上記したように、機器ＡＰＩ１２１は、ＷｅｂＡＰＩである。プラットフォームＡＰＩは、斯かる機器ＡＰＩ１２１を、Ｊａｖａ（登録商標）言語等、特定のプログラミング言語によって実装されるプログラムから利用し易くするためのＡＰＩ（例えば、Ｊａｖａ（登録商標）ベースのＡＰＩ）を提供する。但し、図４においてアプリ層２３と機器ＡＰＩ１２１とが両矢印によって接続されているように、プラットフォーム層２２を利用するか否かは、アプリごとに自由である。
【００２７】
図５は、情報処理端末のアプリ層の構成例を示す図である。図５では、アプリ層２３において、カスタマイズ可能な既定のアプリの一例として、認証アプリ２４が示されている。既定のアプリとは、情報処理端末２０に対するインストール対象として既定のアプリをいう。なお、認証アプリ２４以外の既定のアプリであって、カスタマイズ可能なアプリも、図５に示される機能構成を有してもよい。
【００２８】
図５に示されるように、認証アプリ２４は、画面遷移制御部２４１、処理制御部２４２、カスタマイズ情報管理部２４３、及び要求先選択部２４４等としてＣＰＵ２０１を機能させる。
【００２９】
画面遷移制御部２４１は、ユーザの認証処理に関する画面の表示及び遷移（画面フロー）を制御する。画面の遷移とは、表示される画面が複数有る場合に、或る画面から次の画面への遷移をいう。処理制御部２４２は、画面遷移制御部２４１が表示させる画面に対する入力に応じた処理を実行する。
【００３０】
カスタマイズ情報管理部２４３は、カスタマイズ情報記憶部２６へのカスタマイズ情報の書き込み、カスタマイズ情報記憶部２６からのカスタマイズ情報の読み出し等を行う。カスタマイズ情報とは、或るカスタマイズアプリ２５が、画面遷移制御部２４１及び処理制御部２４２のいずれをカスタマイズ対象とするのかを示す情報である。すなわち、カスタマイズ情報とは、或るカスタマイズアプリ２５について、認証アプリ２４に関して表示される画面に対する変更の有無、及び当該画面に対する入力に応じて実行される認証処理に対する変更の有無を示す情報である。なお、カスタマイズ情報記憶部２６は、例えば、補助記憶装置２０３を用いて実現可能である。
【００３１】
要求先選択部２４４は、カスタマイズ情報を参照して、認証アプリ２４に関する画面の表示処理の要求先、及び当該画面に対する入力に応じた処理の要求先を選択する。
【００３２】
カスタマイズアプリ２５は、カスタマイズ可能な既定のアプリの一部又は全部の処理を変更するアプリである。図５では、カスタマイズアプリ２５ａ〜２５ｅが、認証アプリ２４に対するカスタマイズアプリ２５の一例として示されている。各カスタマイズアプリ２５は、画面遷移制御部２４１が実行する処理及び処理制御部２４２が実行する処理の少なくともいずれか一方を代行することにより、当該処理を変更する。
【００３３】
以下、情報処理端末２０が実行する処理手順について説明する。図６は、カスタマイズ可能な既定のアプリの情報処理端末へのインストール時に実行される処理手順の一例を説明するためのシーケンス図である。
【００３４】
例えば、認証アプリ２４が情報処理端末２０にインストールされると、認証アプリ２４の要求先選択部２４４は、認証アプリ２４の機能名の登録を、カスタマイズ情報管理部２４３に要求する（Ｓ１１）。機能名は、アプリの機能を示す名称である。したがって、複数のアプリ間において、機能名が共通してもよい。但し、アプリごとに異なるアプリの名前（アプリ名）が機能名であってもよい。認証アプリ２４の機能名は、「認証」であるとする。認証アプリ２４のカスタマイズ情報管理部２４３は、当該機能名を、カスタマイズ可能な機能の識別名（以下、「カスタマイズ機能名」という。）として、カスタマイズ情報記憶部２６に登録する（Ｓ１２）。なお、カスタマイズ情報管理部２４３も、認証アプリ２４に属するため、認証アプリ２４の機能名を知ることが可能である。したがって、要求先選択部２４４が機能名の登録を要求するのではなく、カスタマイズ情報管理部２４３が、能動的に機能名の登録を実行してもよい。
【００３５】
続いて、カスタマイズ情報管理部２４３は、他のアプリのインストールの通知を受けるためのリスナーの登録をＯＳ２１に要求する（Ｓ１３）。リスナーの実体は、関数であってもよいし、オブジェクトであってもよい。ステップＳ１３では、関数又はオブジェクト等のアドレスがＯＳ２１に登録される。
【００３６】
図６より、カスタマイズ可能な既定のアプリが、複数インストールされると、各アプリの機能名の一覧が、カスタマイズ情報記憶部２６に記憶されることになる。
【００３７】
続いて、カスタマイズアプリ２５のインストール時に実行される処理について説明する。図７は、情報処理端末へのカスタマイズアプリのインストール時に実行される処理手順の一例を説明するためのシーケンス図である。
【００３８】
或るカスタマイズアプリ２５がインストールされると、ＯＳ２１は、登録されているリスナーに対して、当該インストールを通知する。本実施の形態では、認証アプリ２４のカスタマイズ情報管理部２４３に対してインストールが通知される（Ｓ２１）。インストールの通知には、インストールされたカスタマイズアプリ２５のアプリ名が含まれている。
【００３９】
カスタマイズ情報管理部２４３は、インストールの通知に応じ、当該通知に含まれているアプリ名に係るカスタマイズアプリ２５から、カスタマイズ情報を取得する（Ｓ２２）。例えば、カスタマイズ情報は、カスタマイズアプリ２５に関連付けられているファイルに記憶されていてもよい。
【００４０】
図８は、カスタマイズ情報の構成例を示す図である。図８では、カスタマイズ情報を構成する各項目が、「＜項目名＞：＜値＞」の形式で示されている。
【００４１】
図８において、カスタマイズ情報は、機能名、アプリ名、画面カスタマイズ、及び処理カスタマイズ等の項目を含む。機能名は、当該カスタマイズアプリ２５によってカスタマイズされる機能の識別名である。アプリ名は、当該カスタマイズアプリ２５のアプリ名である。画面カスタマイズは、当該カスタマイズアプリ２５が、画面遷移制御部２４１をカスタマイズするのか否か（すなわち、画面を変更するのか否か）を示す。処理カスタマイズは、処理制御部２４２をカスタマイズするのか（すなわち、画面に対する入力に応じて実行される処理を変更するのか否か）を示す。画面カスタマイズ及び処理カスタマイズの値は、ＯＮ又はＯＦＦである。ＯＮは、カスタマイズすることを示す。ＯＦＦは、カスタマイズしないことを示す。
【００４２】
図８のカスタマイズ情報では、カスタマイズアプリ２５のアプリ名が、「Ａ＿ＡＰＬＩ」であり、当該カスタマイズアプリ２５は、認証機能についての画面をカスタマイズすることが示されている。
【００４３】
続いて、カスタマイズ情報管理部２４３は、取得されたカスタマイズ情報の機能名が、認証アプリ２４の機能名である「認証」に一致するか否かを確認する（Ｓ２３）。機能名が、「認証」に一致する場合、カスタマイズ情報管理部２４３は、当該カスタマイズ情報を、認証アプリ２４のインストール処理（図６）において既にカスタマイズ情報記憶部２６に記憶されているカスタマイズ機能名に関連付けて、カスタマイズ情報記憶部２６に記憶する（Ｓ２４）。取得されたカスタマイズ情報の機能名が、認証アプリ２４の機能名である「認証」に一致しない場合、ステップＳ２４は実行されない。当該カスタマイズ情報の登録は、当該カスタマイズ情報の機能名に係る他の既定のアプリによって実行される。
【００４４】
図９は、カスタマイズ情報記憶部の構成例を示す図である。図９に示されるように、カスタマイズ情報記憶部２６は、カスタマイズ機能名に関連付けて、各カスタマイズアプリ２５のカスタマイズ情報を記憶する。
【００４５】
続いて、カスタマイズアプリ２５のアンインストール時に実行される処理について説明する。図１０は、情報処理端末からのカスタマイズアプリのアンインストール時に実行される処理手順の一例を説明するためのシーケンス図である。
【００４６】
ＯＳ２１は、或るカスタマイズアプリ２５のアンインストールの開始時に、登録されているリスナーに対して、当該アンインストールを通知する。本実施の形態では、認証アプリ２４のカスタマイズ情報管理部２４３に対してアンインストールの開始が通知される（Ｓ３１）。アンインストールの開始通知には、アンインストールされるカスタマイズアプリ２５のアプリ名が含まれている。
【００４７】
カスタマイズ情報管理部２４３は、アンインストールの開始通知に応じ、当該通知に含まれているアプリ名に係るカスタマイズアプリ２５から、カスタマイズ情報を取得する（Ｓ３２）。
【００４８】
続いて、カスタマイズ情報管理部２４３は、取得されたカスタマイズ情報の機能名が、認証アプリ２４の機能名である「認証」に一致するか否かを確認する（Ｓ３３）。機能名が、「認証」に一致する場合、カスタマイズ情報管理部２４３は、カスタマイズ機能名「認証」に関連付けられてカスタマイズ情報記憶部２６に記憶されているカスタマイズ情報のうち、取得されたカスタマイズ情報に一致するカスタマイズ情報を、カスタマイズ情報記憶部２６から削除する（Ｓ３４）。
【００４９】
続いて、認証アプリ２４の既定処理について説明する。既定処理とは、認証アプリ２４に対するカスタマイズアプリ２５がインストールされていない状態において実行される処理をいう。
【００５０】
図１１は、認証アプリの既定処理の処理手順の一例を説明するためのシーケンス図である。
【００５１】
ユーザによって、情報処理端末２０に対して電源が投入されると（Ｓ１１０）、ＯＳ２１は、情報処理端末２０にインストールされている各アプリに対して、システムの起動を通知する（Ｓ１２０）。なお、情報処理端末２０への電源の投入は、画像形成装置１０に対する電源の投入に連動して実行されてもよい。
【００５２】
認証アプリ２４の要求先選択部２４４は、システムの起動通知に応じ、カスタマイズ情報管理部２４３に対してカスタマイズ情報の取得を要求する（Ｓ１３０）。カスタマイズ情報管理部２４３は、認証アプリ２４の機能名である「認証」に対して関連付けられているカスタマイズ情報を、カスタマイズ情報記憶部２６から検索する（Ｓ１４０）。ここでは、該当するカスタマイズ情報は無いこととする。したがって、カスタマイズ情報管理部２４３は、カスタマイズ情報が無いことを示す応答を、要求先選択部２４４に対して返却する（Ｓ１５０）。すなわち、画面カスタマイズ及び処理カスタマイズが共にＯＦＦであることを示す応答が、返却される。
【００５３】
要求先選択部２４４は、画面カスタマイズがＯＦＦであることに応じ、画面遷移制御部２４１を起動する（Ｓ１６０）。要求先選択部２４４は、また、処理カスタマイズがＯＦＦであることに応じ、処理制御部２４２を起動する（Ｓ１７０）。ここで、起動とは、プロセス又はスレッドとしての起動であってもよいし、処理の実行命令であってもよい。
【００５４】
画面遷移制御部２４１は、起動に応じ、既定のログイン画面を表示装置２１１に表示させる（Ｓ１８０）。ユーザによって、ログイン画面を介して認証情報が入力されると（Ｓ１９０）、画面遷移制御部２４１は、入力された認証情報を指定して、認証処理の実行を要求先選択部２４４に要求する（Ｓ２００）。
【００５５】
要求先選択部２４４は、処理カスタマイズがＯＦＦであることに基づき、当該認証情報に関する認証処理の実行を、処理制御部２４２に要求する（Ｓ２１０）。処理制御部２４２は、当該要求に応じ、当該認証情報に関して、既定の認証処理を実行し（Ｓ２２０）、認証処理の結果を要求先選択部２４４に応答する（Ｓ２３０）。
【００５６】
要求先選択部２４４は、画面カスタマイズがＯＦＦであることに基づき、認証処理の結果を、画面遷移制御部２４１に通知する（Ｓ２４０）。画面遷移制御部２４１は、認証処理の結果に応じた処理を実行する。例えば、認証に成功した場合、画面遷移制御部２４１は、ログイン画面を消去させる（Ｓ２５０）。その結果、例えば、ログイン画面の下に表示されていたホーム画面の操作が可能となる。
【００５７】
続いて、カスタマイズの具体例ごとに、認証アプリ２４に関して実行される処理手順を説明する。
【００５８】
図１２は、第一のカスタマイズの内容を説明するための図である。図１２において、左側は、第一のカスタマイズの具体例における既定の処理シーケンスを示す。既定の処理シーケンスでは、ＩＣカードのセットを促すログイン画面が表示され、ＩＣカードがセットされると、ＩＣカードに記録されている情報に基づいて、既定の認証サーバを用いて認証処理が実行される。
【００５９】
一方、右側は、第一のカスタマイズの適用後に実行される処理シーケンスを示す。当該処理シーケンスでは、画像形成装置１０の利用に対する課金額を、現金で支払うのかカードで支払うのかを選択させる初期画面５１１が表示される。初期画面５１１において、カードでの支払いが選択されると、ＩＣカード（会員カード）のセットを促すＩＣカード画面５１２が表示され、ＩＣカードがセットされると、ＩＣカードに記録されている情報に基づいて、既定の認証サーバを用いて認証処理が行われる。
【００６０】
第一のカスタマイズでは、認証処理は、既定のものと同じである。すなわち、認証アプリ２４の処理制御部２４２は、そのまま流用することができる。したがって、第一のカスタマイズを実現するカスタマイズアプリ２５ａのカスタマイズ情報において、画面カスタマイズはＯＦＦであり、処理カスタマイズはＯＮである。なお、カスタマイズの適用後とは、当該カスタマイズを実現するカスタマイズアプリ２５のインストール後を意味する。
【００６１】
図１３は、第一のカスタマイズの適用後の認証アプリの処理手順の一例を説明するためのシーケンス図である。図１３中、図１１と同一ステップには同一ステップ番号を付し、その説明は適宜省略する。
【００６２】
図１３では、電源投入時に、カスタマイズアプリ２５ａにもシステムの起動が通知される（Ｓ１２１ａ）。また、ステップＳ１５０において、画面カスタマイズはＯＮであり、処理カスタマイズはＯＦＦであるカスタマイズ情報（以下、「対象カスタマイズ情報」という。）を含む応答が、要求先選択部２４４に対して返却される。画面カスタマイズがＯＮであることに応じ、要求先選択部２４４は、画面遷移制御部２４１の起動（Ｓ１６０）を実行しない。画面遷移制御部２４１が起動されないことで、既定のログイン画面が表示されるのを回避することができる。
【００６３】
一方、要求先選択部２４４は、画面カスタマイズがＯＮであることに応じ、対象カスタマイズ情報に含まれているアプリ名に係るカスタマイズアプリ２５ａに対して、画面の表示時期が到来したことを通知する（Ｓ１７１ａ）。
【００６４】
カスタマイズアプリ２５ａは、当該通知に応じ、初期画面５１１を、表示装置２１１に表示させる（Ｓ１８１ａ）。但し、カスタマイズアプリ２５ａは、当該通知を無視して、独自のタイミングで、初期画面５１１を表示させるようにしてもよい。
【００６５】
ユーザによって、初期画面５１１を介してカードでの支払いが選択されると（Ｓ１８２ａ）、カスタマイズアプリ２５ａは、ＩＣカード画面５１２を、表示装置２１１に表示させる（Ｓ１８３ａ）。ユーザによって、非図示のカードリーダに対してＩＣカードがセットされると（Ｓ１９１ａ）、カスタマイズアプリ２５ａは、当該ＩＣカードに記録されている情報（以下、「カード情報」という。）を読み取る（Ｓ１９２ａ）。続いて、カスタマイズアプリ２５ａは、当該カード情報に基づく認証処理の実行を、要求先選択部２４４に要求する（Ｓ２０１ａ）。
【００６６】
当該要求に応じ、処理カスタマイズがＯＦＦであることに基づき、ステップＳ２１０〜Ｓ２３０が実行される。
【００６７】
続いて、要求先選択部２４４は、ステップＳ２３０において応答された認証処理の結果を、対象カスタマイズ情報に含まれているアプリ名に係るカスタマイズアプリ２５ａに通知する（Ｓ２４１ａ）。カスタマイズアプリ２５ａは、認証処理の結果に応じた処理を実行する。例えば、認証に成功した場合、カスタマイズアプリ２５ａは、ＩＣカード画面５１２を消去させる（Ｓ２５１ａ）。
【００６８】
次に、第二のカスタマイズ例について説明する。図１４は、第二のカスタマイズの内容を説明するための図である。図１４において、左側は、第二のカスタマイズの具体例における既定の処理シーケンスを示す。既定の処理シーケンスでは、ユーザ名及びパスワードを入力させるログイン画面が表示され、入力されたユーザ名及びパスワードに基づく認証処理が、既定の認証サーバを用いて実行される。
【００６９】
一方、右側は、第二のカスタマイズの適用後に実行される処理シーケンスを示す。当該処理シーケンスでは、既定のサーバではなく、第二のカスタマイズを実現するカスタマイズアプリ２５ｂに対応した認証サーバが認証処理において用いられる。
【００７０】
第二のカスタマイズでは、表示される画面は、既定のものと同じである。すなわち、認証アプリ２４の画面遷移制御部２４１は、そのまま流用することができる。一方、認証処理は、既定のものと異なる。したがって、第二のカスタマイズを実現するカスタマイズアプリ２５ｂのカスタマイズ情報において、画面カスタマイズはＯＦＦであり、処理カスタマイズはＯＮである。
【００７１】
図１５は、第二のカスタマイズの適用後の認証アプリの処理手順の一例を説明するためのシーケンス図である。図１５中、図１１と同一ステップには同一ステップ番号を付し、その説明は適宜省略する。
【００７２】
図１５では、電源投入時に、カスタマイズアプリ２５ｂにもシステムの起動が通知される（Ｓ１２１ｂ）。また、ステップＳ１５０において、画面カスタマイズはＯＦＦであり、処理カスタマイズはＯＮであるカスタマイズ情報（以下、「対象カスタマイズ情報」という。）を含む応答が、要求先選択部２４４に対して返却される。処理カスタマイズがＯＮであることに応じ、要求先選択部２４４は、処理制御部２４２の起動（Ｓ１７０）を実行しない。
【００７３】
要求先選択部２４４は、画面遷移制御部２４１が表示させたログイン画面に入力された認証情報（ユーザ名及びパスワード）に基づく認証処理の実行要求に応じ、処理カスタマイズがＯＮであることに基づき、対象カスタマイズ情報に含まれているアプリ名に係るカスタマイズアプリ２５ｂに対して、当該認証情報に基づく認証処理の実行を要求する（Ｓ２１１ｂ）。
【００７４】
カスタマイズアプリ２５ｂは、カスタマイズアプリ２５ｂ用の認証サーバを利用して認証処理を実行し（Ｓ２２１ｂ）、当該認証処理の結果を要求先選択部２４４に応答する（Ｓ２３１ｂ）。
【００７５】
続いて、ステップＳ２４０及びＳ２５０が実行される。
【００７６】
次に、第三のカスタマイズ例について説明する。図１６は、第三のカスタマイズの内容を説明するための図である。図１６において、左側は、第三のカスタマイズの具体例における既定の処理シーケンスを示す。既定の処理シーケンスでは、ユーザ名及びパスワードを入力させるログイン画面が表示され、入力されたユーザ名及びパスワードに基づく認証処理が、既定の認証サーバを用いて実行される。認証に成功すると、ホーム画面が表示される。
【００７７】
一方、右側は、第三のカスタマイズの適用後に実行される処理シーケンスを示す。当該処理シーケンスでは、カスタマイズアプリ２５ｃに固有のログイン画面５３１が表示される。ログイン画面５３１には、ユーザ名及びパスワードが入力される。続いて、入力されたユーザ名に基づくログインが、久しぶりのログインであるか否かであるかに基づいて、処理が分岐する。久しぶりとは、前回のログイン時から所定期間経過していることをいう。久しぶりのログインでない場合、ログイン画面５３１に入力されたユーザ名パスワードに基づいて、カスタマイズアプリ２５ｃに固有の認証処理が実行される。久しぶりのログインである場合、秘密の質問画面が表示される。秘密の質問画面では、予めユーザによって選択されている質問が表示され、当該質問に対する答えが入力可能とされている。秘密の質問画面に対して答えが入力されると、ログイン画面５３１に入力されたユーザ名パスワードと、当該答えとに基づく、カスタマイズアプリ２５ｃに固有の認証処理が実行される。
【００７８】
カスタマイズアプリ２５ｃに固有の認証処理において認証に成功すると、管理者からのお知らせ画面が表示された後、ホーム画面が表示される。
【００７９】
第三のカスタマイズでは、画面遷移及び認証処理の双方が、既定のものと異なる。したがって、第三のカスタマイズを実現するカスタマイズアプリ２５ｃのカスタマイズ情報において、画面カスタマイズはＯＮであり、処理カスタマイズはＯＮである。
【００８０】
図１７は、第三のカスタマイズの適用後の認証アプリの処理手順の一例を説明するためのシーケンス図である。図１７中、図１１と同一ステップには同一ステップ番号を付し、その説明は適宜省略する。
【００８１】
図１７では、電源投入時に、カスタマイズアプリ２５ｃにもシステムの起動が通知される（Ｓ１２１ｃ）。また、ステップＳ１５０において、画面カスタマイズはＯＮであり、処理カスタマイズはＯＮであるカスタマイズ情報（以下、「対象カスタマイズ情報」という。）を含む応答が、要求先選択部２４４に対して返却される。画面カスタマイズ及び処理カスタマイズがＯＮであることに応じ、要求先選択部２４４は、画面遷移制御部２４１の起動（Ｓ１６０）及び処理制御部２４２の起動（Ｓ１７０）を実行しない。
【００８２】
一方、要求先選択部２４４は、画面カスタマイズがＯＮであることに応じ、対象カスタマイズ情報に含まれているアプリ名に係るカスタマイズアプリ２５ｃに対して、画面の表示時期が到来したことを通知する（Ｓ１７１ｃ）。
【００８３】
カスタマイズアプリ２５ｃは、当該通知に応じ、ログイン画面５３１を、表示装置２１１に表示させる（Ｓ１８１ｃ）。但し、カスタマイズアプリ２５ｃは、当該通知を無視して、独自のタイミングで、ログイン画面５３１を表示させるようにしてもよい。
【００８４】
ユーザによって、ログイン画面５３１を介して、認証情報（ユーザ名及びパスワード）が入力されると（Ｓ１９１ｃ）、カスタマイズアプリ２５ｃは、当該ユーザ名に基づくログインが久しぶりであるか否かを判定する。例えば、ユーザ名ごとに、補助記憶装置２０３に対して、最後のログイン又はログアウトの時期を示す情報が記憶されていてもよい。当該情報を用いて、ログイン画面５３１に入力されたユーザ名に基づくログインが久しぶりであるか否かが判定されてもよい。
【００８５】
入力されたユーザ名に基づくログインが久しぶりである場合、ステップＳ１９２ｃ及びＳ１９３ｃが実行される。ステップＳ１９２ｃにおいて、カスタマイズアプリ２５ｃは、秘密の質問画面を表示装置２１１に表示させる。ユーザによって、秘密の質問画面に対して答えが入力されると（Ｓ１９３ｃ）、カスタマイズアプリ２５ｃは、独自の認証処理を実行する（Ｓ２２１ｃ）。
【００８６】
認証に成功すると、カスタマイズアプリ２５ｃは、管理者からのお知らせ画面を表示装置２１１に表示させる（Ｓ２３１ｃ）。当該画面には、例えば、管理者によって予め登録されているメッセージが表示される。ユーザによって、当該画面における「閉じる」ボタンが押下されると（Ｓ２３２ｃ）、カスタマイズアプリ２５ｃは、管理者からのお知らせ画面を消去させる。その結果、ホーム画面が表示される。
【００８７】
次に、第四のカスタマイズ例について説明する。第四のカスタマイズでは、画面遷移制御部２４１と、処理制御部２４２とが、相互に異なるカスタマイズアプリ２５によってカスタマイズされる。具体的には、画面遷移制御部２４１は、カスタマイズアプリ２５ｄによってカスタマイズされる。処理制御部２４２は、カスタマイズアプリ２５ｅによってカスタマイズされる。したがって、カスタマイズアプリ２５ｄのカスタマイズ情報において、画面カスタマイズはＯＮであり、処理カスタマイズはＯＦＦである。一方、カスタマイズアプリ２５ｅのカスタマイズ情報において、画面カスタマイズはＯＦＦであり、処理カスタマイズはＯＮである。
【００８８】
図１８は、第四のカスタマイズの適用後の認証アプリの処理手順の一例を説明するためのシーケンス図である。図１８中、図１１と同一ステップには同一ステップ番号を付し、その説明は適宜省略する。
【００８９】
図１８では、電源投入時に、カスタマイズアプリ２５ｄ及びカスタマイズアプリ２５ｄにもシステムの起動が通知される（Ｓ１２１ｄ、Ｓ１２１ｅ）。また、ステップＳ１５０において、画面カスタマイズはＯＮであり、処理カスタマイズはＯＦＦである、カスタマイズアプリ２５ｄのカスタマイズ情報（以下、「対象カスタマイズ情報ｄ」という。）と、画面カスタマイズはＯＦＦであり、処理カスタマイズはＯＮである、カスタマイズアプリ２５ｅのカスタマイズ情報（以下、「対象カスタマイズ情報ｅ」という。）とを含む応答が、要求先選択部２４４に対して返却される。対象カスタマイズ情報ｄの画面カスタマイズがＯＮであることに応じ、要求先選択部２４４は、画面遷移制御部２４１の起動（Ｓ１６０）を実行しない。また、対象カスタマイズ情報ｅの処理カスタマイズがＯＮであることに応じ、要求先選択部２４４は、処理制御部２４２の起動（Ｓ１７０）を実行しない。
【００９０】
一方、要求先選択部２４４は、対象カスタマイズ情報ｄの画面カスタマイズがＯＮであることに応じ、対象カスタマイズ情報ｄに含まれているアプリ名に係るカスタマイズアプリ２５ｄに対して、画面の表示時期が到来したことを通知する（Ｓ１７１ｄ）。
【００９１】
カスタマイズアプリ２５ｄは、当該通知に応じ、独自のログイン画面を、表示装置２１１に表示させる（Ｓ１８１ｄ）。但し、カスタマイズアプリ２５ｄは、当該通知を無視して、独自のタイミングで、ログイン画面を表示させるようにしてもよい。
【００９２】
ユーザによって、ログイン画面を介して、認証情報が入力されると（Ｓ１９１ｄ）、カスタマイズアプリ２５ｄは、入力された認証情報を指定して、認証処理の実行を要求先選択部２４４に要求する（Ｓ２０１ｄ）。
【００９３】
要求先選択部２４４は、対象カスタマイズ情報ｅの処理カスタマイズがＯＮであることに基づき、当該認証情報に関する認証処理の実行を、カスタマイズアプリ２５ｅに要求する（Ｓ２１１ｅ）。カスタマイズアプリ２５ｅは、当該要求に応じ、当該認証情報に関して、独自の認証処理を実行し（Ｓ２２１ｅ）、認証処理の結果を要求先選択部２４４に応答する（Ｓ２３１ｅ）。
【００９４】
要求先選択部２４４は、対象カスタマイズ情報ｄの画面カスタマイズがＯＮであることに基づき、認証処理の結果を、カスタマイズアプリ２５ｄに通知する（Ｓ２４１ｄ）。カスタマイズアプリ２５ｄは、認証処理の結果に応じた処理を実行する。例えば、認証に成功した場合、カスタマイズアプリ２５ｄは、独自のログイン画面を消去させる（Ｓ２５１ｄ）。その結果、例えば、ログイン画面の下に表示されていたホーム画面の操作が可能となる。
【００９５】
第四のカスタマイズは、画面遷移制御部２４１のカスタマイズと、処理制御部２４２のカスタマイズとが、異なるソフトウェアベンダによって行われる場合に、好適である。
【００９６】
なお、一つのカスタマイズ機能名に対する複数のカスタマイズ情報が、相互に干渉する場合、各カスタマイズ情報が無視されてもよいし、いずれか一つのカスタマイズ情報が採用されてもよい。カスタマイズ情報が相互に干渉するとは、一つのカスタマイズ機能名に対して、２以上のカスタマイズ情報の画面カスタマイズの値がＯＮである場合、又は２以上のカスタマイズ情報の処理カスタマイズの値がＯＮである場合である。
【００９７】
また、ＯＳ２１によっては、画面を表示させるレイヤを、複数のレイヤの中から選択させることが可能なものがある。画面が重畳した場合、画面の上下関係は、当該レイヤの上下関係にしたがう。カスタマイズアプリ２５が表示させる画面は、エラーやアラート等、ユーザに対して重要な事項を通知する画面のレイヤよりも下位であり、認証アプリ２４等、既定のアプリの画面のレイヤよりも上位であるレイヤに表示されるようにしてもよい。
【００９８】
上述したように、本実施の形態によれば、要求先選択部２４４は、カスタマイズ情報の画面カスタマイズ及び処理カスタマイズの値に応じて、既定のアプリを呼び出すのか、カスタマイズアプリ２５を呼び出すのかを切り分ける。したがって、各カスタマイズアプリ２５は、画面カスタマイズ又は処理カスタマイズのいずれか一方のみを実装することができる。すなわち、各カスタマイズアプリ２５は、カスタマイズ対象の既定のアプリを完全に置き換えるものである必要はない。したがって、プログラムにおける画面の表示処理に対する変更と該画面に対する入力に応じた処理に対する変更との独立性を向上させることができる。その結果、既定のアプリのカスタマイズの効率性を向上させることができる。
【００９９】
なお、本実施の形態において、情報処理システム１又は情報処理端末２０は、情報処理装置の一例である。画面遷移制御部２４１は、表示制御部の一例である。機能名は、第一の識別情報の一例である。カスタマイズ情報記憶部２６は、記憶部の一例である。アプリ名は、第二の識別情報の一例である。要求先選択部２４４は、要求部の一例である。
【０１００】
以上、本発明の実施例について詳述したが、本発明は斯かる特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
【符号の説明】
【０１０１】
１            情報処理システム
１０          画像形成装置
１１          コントローラ
１２          スキャナ
１３          プリンタ
１４          モデム
１５          端末インタフェース
１６          ネットワークインタフェース
１７          ＳＤカードスロット
２０          情報処理端末
２１          ＯＳ
２２          プラットフォーム層
２３          アプリ層
２４          認証アプリ
２５          カスタマイズアプリ
２６          カスタマイズ情報記憶部
８０          ＳＤカード
１１１        ＣＰＵ
１１２        ＲＡＭ
１１３        ＲＯＭ
１１４        ＨＤＤ
１１５        ＮＶＲＡＭ
１２１        機器ＡＰＩ
１２２        機器制御部
２０１        ＣＰＵ
２０２        メモリ
２０３        補助記憶装置
２０４        タッチパネル
２０５        無線通信装置
２０６        機器インタフェース
２１１        表示装置
２１２        入力装置
２４１        画面遷移制御部
２４２        処理制御部
２４３        カスタマイズ情報管理部
２４４        要求先選択部
【先行技術文献】
【特許文献】
【０１０２】
【特許文献１】特開２００９−０５９３６３号公報
【特許文献２】特開２００５−０３１９９５号公報
【図１】
2015114795.tif 000003
【図２】
2015114795.tif 000004
【図３】
2015114795.tif 000005
【図４】
2015114795.tif 000006
【図５】
2015114795.tif 000007
【図６】
2015114795.tif 000008
【図７】
2015114795.tif 000009
【図８】
2015114795.tif 000010
【図９】
2015114795.tif 000011
【図１０】
2015114795.tif 000012
【図１１】
2015114795.tif 000013
【図１２】
2015114795.tif 000014
【図１３】
2015114795.tif 000015
【図１４】
2015114795.tif 000016
【図１５】
2015114795.tif 000017
【図１６】
2015114795.tif 000018
【図１７】
2015114795.tif 000019
【図１８】
2015114795.tif 000020