(57)【要約】【課題】連携して処理を実行する複数の情報処理装置へのプログラムのインストール作業を効率化すること。【解決手段】相互にネットワークを介して接続される第一の情報処理装置及び第二の情報処理装置を含む情報処理システムであって、前記第一の情報処理装置は、プログラムの群を入力する入力部と、入力されたプログラムの群のうちの一部の第一のプログラムを、当該第一の情報処理装置にインストールする第一のインストール部と、前記プログラムの群のうちの前記第一のプログラムを除く第二のプログラムを、前記第二の情報処理装置に送信する送信部とを有し、前記第二の情報処理装置は、前記送信部から送信される前記第二のプログラムを当該第二の情報処理装置にインストールする第二のインストール部を有する。【選択図】図５
2015176306.tif 000002
【特許請求の範囲】
【請求項１】
相互にネットワークを介して接続される第一の情報処理装置及び第二の情報処理装置を含む情報処理システムであって、
前記第一の情報処理装置は、
プログラムの群を入力する入力部と、
入力されたプログラムの群のうちの一部の第一のプログラムを、当該第一の情報処理装置にインストールする第一のインストール部と、
前記プログラムの群のうちの前記第一のプログラムを除く第二のプログラムを、前記第二の情報処理装置に送信する送信部とを有し、
前記第二の情報処理装置は、
前記送信部から送信される前記第二のプログラムを当該第二の情報処理装置にインストールする第二のインストール部を有する、
ことを特徴とする情報処理システム。
【請求項２】
前記第一のプログラムは、所定の処理を記第一の情報処理装置に実行させ、
前記第二のプログラムは、前記所定の処理に連携した処理を前記第二の情報処理装置に実行させる、
ことを特徴とする請求項１記載の情報処理システム。
【請求項３】
前記送信部は、前記第一の情報処理装置に固有の識別情報を、前記第二のプログラムの送信に関連して前記第二の情報処理装置に送信し、
前記第二のインストール部は、受信された前記識別情報が、前記第二のプログラムに含まれている情報又は当該第二の情報処理装置に記憶されている情報と所定の関係を有する場合に、前記第二のプログラムのインストールを実行する、
ことを特徴とする請求項２記載の情報処理システム。
【請求項４】
前記第一のインストール部は、前記入力部によって入力されたプログラムの群に含まれている各プログラムのインストール先を示す情報に基づいて特定される前記第一のプログラムを前記第一の情報処理装置にインストールし、
前記送信部は、前記インストール先を示す情報に基づいて特定される前記第二のプログラムを、前記第二の情報処理装置に送信する、
ことを特徴とする請求項１乃至３いずれか一項記載の情報処理システム。
【請求項５】
前記第一の情報処理装置及び前記第二の情報処理装置のいずれか一方は、他方の情報処理装置の操作部として機能する、
ことを特徴とする請求項１乃至４いずれか一項記載の情報処理システム。
【請求項６】
他の情報処理装置にネットワークを介して接続される情報処理装置であって、
プログラムの群を入力する入力部と、
入力されたプログラムの群のうちの一部の第一のプログラムを、当該情報処理装置にインストールするインストール部と、
前記プログラムの群のうちの前記第一のプログラムを除く第二のプログラムを、前記他の情報処理装置に送信することにより、前記第二のプログラムのインストールを前記他の情報処理装置に実行させる送信部とを有する、
ことを特徴とする情報処理システム。
【請求項７】
相互にネットワークを介して接続される第一の情報処理装置及び第二の情報処理装置を含む情報処理システムにおける情報処理方法であって、
前記第一の情報処理装置が、
プログラムの群を入力する入力手順と、
入力されたプログラムの群のうちの一部の第一のプログラムを、当該第一の情報処理装置にインストールする第一のインストール手順と、
前記プログラムの群のうちの前記第一のプログラムを除く第二のプログラムを、前記第二の情報処理装置に送信する送信手順とを実行し、
前記第二の情報処理装置が、
前記送信手順において送信される前記第二のプログラムを当該第二の情報処理装置にインストールする第二のインストール手順を実行する、
ことを特徴とする情報処理方法。
【請求項８】
他の情報処理装置にネットワークを介して接続される情報処理装置に、
プログラムの群を入力する入力手順と、
入力されたプログラムの群のうちの一部の第一のプログラムを、当該情報処理装置にインストールするインストール手順と、
前記プログラムの群のうちの前記第一のプログラムを除く第二のプログラムを、前記他の情報処理装置に送信することにより、前記第二のプログラムのインストールを前記他の情報処理装置に実行させる送信手順とを実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理システム、情報処理装置、情報処理方法、及びプログラムに関する。
【背景技術】
【０００２】
複数の情報処理装置の連携によって一つのサービスを提供する情報処理システムが有る。例えば、クライアント・サーバシステムも斯かる情報処理システムの一例である。
【０００３】
このような情報処理システムでは、各情報処理装置に対して、当該情報処理装置の機能又は役割等に応じたプログラムがインストールされる。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、情報処理装置ごとに、当該情報処理装置の機能又は役割に対応するプログラムを判別して、プログラムをインストールするのは、作業者にとって煩雑である。
【０００５】
本発明は、上記の点に鑑みてなされたものであって、連携して処理を実行する複数の情報処理装置へのプログラムのインストール作業を効率化すること目的とする。
【課題を解決するための手段】
【０００６】
そこで上記課題を解決するため、相互にネットワークを介して接続される第一の情報処理装置及び第二の情報処理装置を含む情報処理システムであって、前記第一の情報処理装置は、プログラムの群を入力する入力部と、入力されたプログラムの群のうちの一部の第一のプログラムを、当該第一の情報処理装置にインストールする第一のインストール部と、前記プログラムの群のうちの前記第一のプログラムを除く第二のプログラムを、前記第二の情報処理装置に送信する送信部とを有し、前記第二の情報処理装置は、前記送信部から送信される前記第二のプログラムを当該第二の情報処理装置にインストールする第二のインストール部を有する。
【発明の効果】
【０００７】
連携して処理を実行する複数の情報処理装置へのプログラムのインストール作業を効率化することができる。
【図面の簡単な説明】
【０００８】
【図１】本発明の実施の形態におけるインストールシステムの構成例を示す図である。
【図２】本発明の実施の形態における情報処理システムの構成例を示す図である。
【図３】本発明の実施の形態における画像形成装置のハードウェア構成例を示す図である。
【図４】本発明の実施の形態における情報処理端末のハードウェア構成例を示す図である。
【図５】本発明の実施の形態におけるインストールシステムの機能構成例を示す図である。
【図６】クライアント装置及び画像形成装置が実行する処理手順の一例を説明するためのシーケンス図である。
【図７】インストールパッケージファイルの構成例を示す図である。
【図８】端末アプリインストール処理の処理手順の一例を説明するためのシーケンス図である。
【発明を実施するための形態】
【０００９】
以下、図面に基づいて本発明の実施の形態を説明する。図１は、本発明の実施の形態におけるインストールシステムの構成例を示す図である。図１に示されるインストールシステム１において、クライアント装置３０と、情報処理システム２ａ及び２ｂ等の１以上の情報処理システム２は、ＬＡＮ（Local Area Network）又はインターネット等のネットワークを介して通信可能に接続される。なお、情報処理システム２ａ及び２ｂ等のそれぞれを区別しない場合、「情報処理システム２」という。
【００１０】
クライアント装置３０は、各情報処理システム２に対してプログラムをインストールするために、ユーザが利用するＰＣ（Personal Computer）、タブレット型端末、スマートフォン、又は携帯電話等である。
【００１１】
情報処理システム２は、相互に連携して処理を実行する２以上の情報処理装置の集合である。
【００１２】
図２は、本発明の実施の形態における情報処理システムの構成例を示す図である。図２に示される情報処理システム２において、画像形成装置１０は、情報処理端末２０と通信可能に接続される。画像形成装置１０と情報処理端末２０との通信は、例えば、ＵＳＢ（Universal Serial Bus）、近距離無線通信、又はＬＡＮ（有線又は無線の別は問わない）等のネットワークを介して行われる。
【００１３】
画像形成装置１０は、印刷、スキャン、コピー、及びＦＡＸ送受信等のうちの２以上の機能を一台の筐体によって実現する複合機である。但し、いずれか一つの機能を有する機器が画像形成装置１０として用いられてもよい。また、プロジェクタ、テレビ会議システム、又はデジタルカメラ等の機器が、画像形成装置１０の代わりに用いられてもよい。
【００１４】
情報処理端末２０は、例えば、スマートフォンやタブレット型端末等、単独で完結した情報処理を実行可能な電子機器である。本実施の形態において、情報処理端末２０は、画像形成装置１０の操作部として機能する。より詳しくは、情報処理端末２０は、従来、画像形成装置１０の専用の操作部として設置されていた操作パネルの代わりに、画像形成装置１０に接続される。以下、単に、「操作パネル」というとき、従来の画像形成装置１０において設置されていた操作パネルをいう。
【００１５】
情報処理端末２０は、例えば、画像形成装置１０の所定の位置（例えば、操作パネルが配置される位置）に固定されて設置される。したがって、情報処理端末２０及び画像形成装置１０とは、一台の装置として把握されてもよい。または、情報処理端末２０は、画像形成装置１０から取り外し可能（分離可能）であってもよい。情報処理端末２０が取り外された状態において、情報処理端末２０は、Ｂｌｕｅｔｏｏｔｈ（登録商標）、赤外線、又は無線ＬＡＮ等を利用した無線通信等を介して、画像形成装置１０の操作部として機能可能であってもよい。
【００１６】
図３は、本発明の実施の形態における画像形成装置のハードウェア構成例を示す図である。図３において、画像形成装置１０は、コントローラ１１、スキャナ１２、プリンタ１３、モデム１４、端末インタフェース１５、ネットワークインタフェース１６、及びＳＤカードスロット１７等のハードウェアを有する。
【００１７】
コントローラ１１は、ＣＰＵ１１１、ＲＡＭ１１２、ＲＯＭ１１３、ＨＤＤ１１４、及びＮＶＲＡＭ１１５等を有する。ＲＯＭ１１３には、各種のプログラムやプログラムによって利用されるデータ等が記憶されている。ＲＡＭ１１２は、プログラムをロードするための記憶領域や、ロードされたプログラムのワーク領域等として用いられる。ＣＰＵ１１１は、ＲＡＭ１１２にロードされたプログラムを処理することにより、各種の機能を実現する。ＨＤＤ１１４には、プログラムやプログラムが利用する各種のデータ等が記憶される。ＮＶＲＡＭ１１５には、各種の設定情報等が記憶される。
【００１８】
スキャナ１２は、原稿より画像データを読み取るためのハードウェア（画像読取手段）である。プリンタ１３は、印刷データを印刷用紙に印刷するためのハードウェア（印刷手段）である。モデム１４は、電話回線に接続するためのハードウェアであり、ＦＡＸ通信による画像データの送受信を実行するために用いられる。端末インタフェース１５は、情報処理端末２０と通信（接続）するためのインタフェースである。例えば、端末インタフェース１５は、例えば、ＵＳＢインタフェースでもよいし、近距離無線通信のためのハードウェアでもよい。または、端末インタフェース１５は、ＬＡＮ等のネットワーク（有線又は無線の別は問わない。）に接続するためのハードウェアでもよい。ネットワークインタフェース１６は、ＬＡＮ等のネットワーク（有線又は無線の別は問わない。）に接続するためのハードウェアである。ＳＤカードスロット１７は、ＳＤカード８０に記憶されたプログラムを読み取るために利用される。すなわち、画像形成装置１０では、ＲＯＭ１１３に記憶されたプログラムだけでなく、ＳＤカード８０に記憶されたプログラムもＲＡＭ１１２にロードされ、実行されうる。なお、他の記録媒体（例えば、ＣＤ−ＲＯＭ又はＵＳＢ（Universal Serial Bus）メモリ等）によってＳＤカード８０が代替されてもよい。すなわち、ＳＤカード８０の位置付けに相当する記録媒体の種類は、所定のものに限定されない。この場合、ＳＤカードスロット１７は、記録媒体の種類に応じたハードウェアによって代替されればよい。
【００１９】
図４は、本発明の実施の形態における情報処理端末のハードウェア構成例を示す図である。図４において、情報処理端末２０は、ＣＰＵ２０１、メモリ２０２、補助記憶装置２０３、タッチパネル２０４、無線通信装置２０５、及び機器インタフェース２０６等を有する。
【００２０】
補助記憶装置２０３は、情報処理端末２０にインストールされたプログラム等を記憶する。メモリ２０２は、プログラムの起動指示があった場合に、補助記憶装置２０３からプログラムを読み出して記憶する。ＣＰＵ２０１は、メモリ２０２に記憶されたプログラムに従って情報処理端末２０に係る機能を実現する。
【００２１】
タッチパネル２０４は、入力機能と表示機能との双方を備えた電子部品であり、情報の表示や、ユーザからの入力の受け付け等を行う。タッチパネル２０４は、表示装置２１１及び入力装置２１２等を含む。
【００２２】
表示装置２１１は、液晶ディスプレイ等であり、タッチパネル２０４の表示機能を担う。入力装置２１２は、表示装置２１１に対する接触物の接触を検出するセンサを含む電子部品である。接触物の接触の検出方式は、静電方式、抵抗膜方式、又は光学方式等、公知の方式のいずれであってもよい。なお、接触物とは、タッチパネル２０４の接触面（表面）に接触する物体をいう。斯かる物体の一例として、ユーザの指や専用又は一般のペン等が挙げられる。
【００２３】
無線通信装置２０５は、無線ＬＡＮ（Local Area Network）又は移動体通信網等における通信を行うために必要とされるアンテナ等の電子部品である。機器インタフェース２０６は、画像形成装置１０と通信するためのインタフェースである。すなわち、機器インタフェース２０６は、端末インタフェース１５に対応した形態によって、画像形成装置１０との通信を行う。
【００２４】
図５は、本発明の実施の形態におけるインストールシステムの機能構成例を示す図である。図５において、クライアント装置３０は、インストール要求部３１を有する。インストール要求部３１は、例えば、ユーザによる指示に応じ、画像形成装置１０に処理を実行させるアプリケーションプログラム（後述のＳＤＫアプリ１２７）、及び情報処理端末２０に処理を実行させるアプリケーションプログラム（後述の端末アプリ２３）を含むインストール要求を、画像形成装置１０に送信する。すなわち、一つのインストール要求には、ＳＤＫアプリ１２７と端末アプリ２３とが含まれる。但し、このことは、ＳＤＫアプリ１２７及び端末アプリ２３が、同時に送信されなければならないことを意味するものではない。一つのインストール要求に関連して、ＳＤＫアプリ１２７及び端末アプリ２３が別々に送信されてもよい。
【００２５】
一つのインストール要求に係るＳＤＫアプリ１２７及び端末アプリ２３は、相互に連携した処理を画像形成装置１０又は情報処理端末２０に実行させることにより、画像形成装置１０と情報処理端末２０とが連携したサービスを実現する。
【００２６】
画像形成装置１０は、ネットワーク通信部１２１、ＳＤＫプラットフォーム１２２、端末アクセス共通部１２５、及び端末通信部１２６等を有する。これら各部は、画像形成装置１０にインストールされる１以上のプログラムが、ＣＰＵ１１１に実行させる処理により実現される。
【００２７】
ネットワーク通信部１２１は、クライアント装置３０との通信を制御する。例えば、ネットワーク通信部１２１は、クライアント装置３０から送信される、アプリケーションプログラムのインストール要求を受信する。
【００２８】
ＳＤＫプラットフォーム１２２は、ＳＤＫアプリ１２７を開発するためのＡＰＩ（Application Program Interface）を備えると共に、ＳＤＫアプリ１２７の管理機能等を備える。ＡＰＩの形態は、例えば、関数であってもよいし、オブジェクト指向のクラス及びクラスのメソッド等であってもよい。以下、ＳＤＫプラットフォーム１２２が提供するＡＰＩを、「ＳＤＫＡＰＩ」という。例えば、ＳＤＫプラットフォーム１２２は、スキャン機能に関するＳＤＫＡＰＩ、印刷機能に関するＳＤＫＡＰＩ、コピー機能に関するＳＤＫＡＰＩ等をＳＤＫアプリ１２７に提供する。ＳＤＫプラットフォーム１２２は、ＳＤＫアプリ１２７から呼び出されたＳＤＫＡＰＩに応じて、画像形成装置１０を制御する。ＳＤＫプラットフォーム１２２は、Ｊａｖａ（登録商標）ＶＭ（Virtual Machine）を含んでいてもよい。この場合、ＳＤＫアプリ１２７は、Ｊａｖａ（登録商標）言語によって実装される。なお、ＳＤＫＡＰＩは、外部に公開され、サードベンダ等によるＳＤＫアプリ１２７の開発が可能とされてもよい。
【００２９】
ＳＤＫアプリ１２７は、画像形成装置１０の出荷後において、画像形成装置１０の機能拡張を図るために追加的にインストールされるアプリケーションプログラム（又はプラグインともいう。）である。ＳＤＫアプリ１２７は、所定の処理（当該ＳＤＫアプリ１２７に実装された処理）を、ＳＤＫプラットフォーム１２２を介して画像形成装置１０に実行させる。
【００３０】
なお、本実施の形態では、便宜上、画像形成装置１０にインストール可能なプログラムとして、ＳＤＫアプリ１２７及びＳＤＫプラットフォーム１２２等が例示されているが、画像形成装置１０にインストール可能なプログラムは、ＳＤＫアプリ１２７及びＳＤＫプラットフォーム１２２等に限定されない。画像形成装置１０には、ＳＤＫアプリ１２７及びＳＤＫプラットフォーム１２２以外のプログラムがインストールされてもよく、画像形成装置１０にインストール可能なプログラムには、画像形成装置１０にインストールされるプログラム全般が含まれうる。
【００３１】
図５において、ＳＤＫプラットフォーム１２２は、リモートインストール管理部１２３及びＳＤＫアプリ管理部１２４等を含む。リモートインストール管理部１２３は、クライアント装置３０から送信されるインストール要求に応じた処理を制御する。例えば、リモートインストール管理部１２３は、インストール要求においてインストール対象とされるアプリケーションプログラムの群（以下、「プログラム群」という。）のうち、ＳＤＫアプリ１２７のインストールをＳＤＫアプリ管理部１２４に要求する。また、リモートインストール管理部１２３は、ンストール要求においてインストール対象とされるアプリケーションプログラム群のうち、端末アプリ２３のインストールを情報処理端末２０に要求するための処理を実行する。
【００３２】
ＳＤＫアプリ管理部１２４は、リモートインストール管理部１２３からインストールを要求されたＳＤＫアプリ１２７を、画像形成装置１０にインストールする。画像形成装置１０には、複数種類のＳＤＫアプリ１２７がインストールされてもよい。
【００３３】
端末アクセス共通部１２５は、情報処理端末２０に対する要求を、画像形成装置１０内の各部から受け付けるためのインタフェースを有する。端末アクセス共通部１２５は、当該インタフェースを介して呼び出された要求に応じた処理を実行する。例えば、端末アクセス共通部１２５は、リモートインストール管理部１２３から、端末アプリ２３のインストール要求を受け付ける。
【００３４】
端末通信部１２６は、情報処理端末２０との通信を制御する。端末通信部１２６は、例えば、ＨＴＴＰ（HyperText Transfer Protocol）によって情報処理端末２０と通信する。但し、画像形成装置１０と情報処理端末２０との間において利用される通信プロトコルは、ＨＴＴＰに限定されなくてもよい。本実施の形態において、端末通信部１２６は、端末アプリ２３のインストール要求を情報処理端末２０に送信する。
【００３５】
情報処理端末２０は、コントローラ通信部２１及び端末アプリ管理部２２等を有する。コントローラ通信部２１は、画像形成装置１０（厳密には、コントローラ１１）との通信を制御する。例えば、コントローラ通信部２１は、端末アプリ２３のインストール要求を、画像形成装置１０から受信する。端末アプリ管理部２２は、端末アプリ２３のインストール要求に応じ、当該インストール要求に関連して受信される端末アプリ２３を、情報処理端末２０にインストールする。複数種類の端末アプリ２３が、情報処理端末２０にインストールされてもよい。端末アプリ２３は、例えば、ＳＤＫアプリ１２７による操作パネルに対する表示制御を情報処理端末２０に反映するために、情報処理端末２０にインストールされ、操作性に優れ、表現豊かなＧＵＩ（Graphical User Interface）を提供可能なアプリケーションプログラムであってもよい。
【００３６】
以下、インストールシステム１において実行される処理手順について説明する。図６は、クライアント装置及び画像形成装置が実行する処理手順の一例を説明するためのシーケンス図である。
【００３７】
ステップＳ１０１において、クライアント装置３０のインストール要求部３１は、インストールパッケージファイルを含むインストール要求を、画像形成装置１０に送信する。インストールパッケージファイルとは、インストール対象のアプリケーションプログラム等を含む書庫ファイルである。
【００３８】
図７は、インストールパッケージファイルの構成例を示す図である。図７には、インストールパッケージファイルｆｚ１と、インストールパッケージファイルｆｚ２との２通りのインストールパッケージファイルの構成例が示されている。１つのインストールパッケージファイルは、１つの設定ファイルと、１以上のアプリファイルとを含む。設定ファイルは、インストールパッケージファイルに含まれているアプリファイルのファイル名等の一覧が記述されたファイルである。アプリファイルとは、アプリケーションプログラムを格納したファイルをいう。ＳＤＫアプリ１２７を格納したアプリファイルを、以下「ＳＤＫアプリファイル」という。端末アプリ２３を格納したアプリファイルを、以下「端末アプリファイル」という。
【００３９】
インストールパッケージファイルｆｚ１は、設定ファイルｆｓ１と、１つのＳＤＫアプリ１２７を格納したＳＤＫアプリファイルｆｊ１とを含む。したがって、設定ファイルｆｓ１には、ＳＤＫアプリファイルｆｊ１のファイル名（「ａａａ．ｊａｒ」）が記述されている。
【００４０】
一方、インストールパッケージファイルｆｚ２は、設定ファイルｆｓ２と、１つのＳＤＫアプリ１２７を格納したＳＤＫアプリファイルｆｊ２と、１つの端末アプリ２３を格納したアプリファイルｆａ２とを含む。したがって、設定ファイルｆｚ２には、ＳＤＫアプリファイルｆｊ２のファイル名（「ｂｂｂ．ｊａｒ」）と、端末アプリファイルｆａ２のファイル名（「ｂｂｂ．ａｐｋ」）とが記述されている。
【００４１】
このように、インストールパッケージファイルには、ＳＤＫアプリ１２７のみを含むものと、ＳＤＫアプリ１２７及び端末アプリ２３の双方を含むものとが有る。なお、設定ファイルには、ファイル名以外に、各アプリケーションに関する属性情報が含まれてもよい。例えば、各アプリケーションのＩＤ、開発者名等が設定ファイルに含まれてよい。又は、各アプリケーションの属性情報は、各アプリファイルに含まれてもよい。本実施の形態において、設定ファイルは、必ずしもインストールパッケージファイルに含まれなくてもよい。各ファイル名は、インストールパッケージファイルを解析する（解凍する）ことで、特定可能だからである。
【００４２】
インストールパッケージファイルは、アプリケーションの製品ごとに作成される。ユーザは、クライアント装置３０を操作して、インストール対象とするインストパッケージファイルと、インストール先の画像形成装置１０とを選択する。インストール要求部３１は、ユーザによって選択されたインストールパッケージファイルを含むインストール要求を、選択された画像形成装置１０宛に送信する。インストールパッケージファイルは、クライアント装置３０に記憶されていてもよいし、インストール要求部３１によって、ネットワークを介して、クライアント装置３０にダウンロードされてもよい。
【００４３】
インストール要求部３１からのインストール要求は、当該要求の宛先の画像形成装置１０のネットワーク通信部１２１によって受信される。ネットワーク通信部１２１は、受信したインストール要求を、リモートインストール管理部１２３に通知する（Ｓ１０２）。続いて、リモートインストール管理部１２３は、インストールパッケージファイルを解凍して得られる設定ファイルを参照して、インストール対象のアプリの種別を特定する。アプリの種別とは、ＳＤＫアプリ１２７と端末アプリ２３とを区別する概念である。本実施の形態では、アプリファイルのファイル名の拡張子に基づいて、アプリの種別が特定可能である。具体的には、拡張子が「ｊａｒ」であるファイルはＳＤＫアプリファイルであり、拡張子が「ａｐｋ」であるファイルは、端末アプリファイルである。なお、アプリ種別に応じて、インストール先が定まる。したがって、各アプリファイルのファイル名は、インストール先を示す情報であるともいえる。
【００４４】
インストール対象にＳＤＫアプリファイルが含まれる場合、リモートインストール管理部１２３は、当該ＳＤＫアプリファイルを含むインストール要求を、ＳＤＫアプリ管理部１２４に通知する（Ｓ１０４）。ＳＤＫアプリ管理部１２４は、当該ＳＤＫアプリファイルのインストール処理を実行する。インストール処理の内容は特定のものに限定されない。ＳＤＫアプリ管理部１２４は、インストール処理が終了すると、インストール処理の結果を、リモートインストール管理部１２３に応答する（Ｓ１０５）。インストール処理の結果とは、例えば、インストール処理の成否を示す情報である。なお、インストールが失敗した場合、ステップＳ１０６以降は中止されてもよい。
【００４５】
続いて、リモートインストール管理部１２３は、コントローラ情報を、例えば、ＲＯＭ１１３から取得する（Ｓ１０６）。本実施の形態において、コントローラ情報とは、画像形成装置１０ごと（コントローラ１１ごと）に固有な識別情報の一例である。例えば、コントローラ情報は、製造番号又はシリアル番号であってもよい。又は、コントローラ情報は、ＲＯＭ１１３等に記憶されている複数の情報に基づいて生成されてもよい。例えば、コントローラ情報は、これら複数の情報のハッシュ値でもよい。
【００４６】
続いて、インストール対象に端末アプリファイルが含まれる場合、リモートインストール管理部１２３は、当該端末アプリファイルと、コントローラ情報とを含むインストール要求を、端末アクセス共通部１２５に通知する（Ｓ１０７）。なお、リモートインストール管理部１２３は、例えば、ＲＯＭ１１３に記憶されている暗号鍵によってコントローラ情報を暗号化してもよい。この場合、ステップＳ１０７では、暗号化されたコントローラ情報が、インストール要求に含まれてもよい。なお、コントローラ情報は、インストール対象に端末アプリファイルが含まれる場合に利用される。したがって、ステップＳ１０６は、インストール対象に端末アプリファイルが含まれる場合にのみ実行されてもよい。
【００４７】
当該インストール要求に応じ、端末アクセス共通部１２５は、端末アプリインストール処理を実行する（Ｓ１０８）。端末アプリインストール処理の詳細については後述される。端末アプリインストール処理が終了すると、端末アクセス共通部１２５は、端末アプリインストール処理の処理結果を、リモートインストール管理部１２３に応答する（Ｓ１０９）。端末アプリインストール処理の処理結果とは、例えば、端末アプリインストール処理の成否を示す情報である。
【００４８】
続いて、リモートインストール管理部１２３は、インストール結果を示す情報をネットワーク通信部１２１を介してインストール要求部３１に返信する（Ｓ１１０、Ｓ１１１）。ステップＳ１０４が実行された場合、ステップＳ１０５において応答されるインストール結果が、返信される情報に含まれる。ステップＳ１０７が実行された場合、ステップＳ１０９において応答される処理結果が、返信される情報に含まれる。
【００４９】
インストール要求部３１は、返信された情報を、例えば、クライアント装置３０の表示装置に表示させる。その結果、ユーザは、インストール結果を知ることができる。
【００５０】
続いて、ステップＳ１０８の詳細について説明する。図８は、端末アプリインストール処理の処理手順の一例を説明するためのシーケンス図である。
【００５１】
ステップＳ２０１において、端末アクセス共通部１２５は、図６のステップＳ１０７において通知された、端末アプリファイルのインストール要求の送信を、端末通信部１２６に要求する。端末通信部１２６は、端末アプリファイル及びコントローラ情報を含む当該インストール要求を、情報処理端末２０に送信する（Ｓ２０２）。なお、送信先の情報処理端末２０のアドレス情報は、例えば、予め、ＨＤＤ１１４又はＮＶＲＡＭ１１５等に記憶されていてもよい。また、端末アプリファイルと、コントローラ情報とは、必ずしも同時に送信されなくてもよい。端末アプリファイル及びコントローラ情報は、同じインストール要求に関連して、別々に送信されてもよい。
【００５２】
当該インストール要求は、情報処理端末２０のコントローラ通信部２１によって受信される。コントローラ通信部２１は、受信したインストール要求を、端末アプリ管理部２２に通知する（Ｓ２０３）。
【００５３】
続いて、端末アプリ管理部２２は、インストール要求に含まれているコントローラ情報と、端末アプリファイルに含まれているコントローラ情報とを照合することにより、当該インストール要求の正当性をチェックする（Ｓ２０４）。すなわち、端末アプリファイルには、予め、インストール先の情報処理端末２０が連携する画像形成装置１０のコントローラ情報が含まれて（埋め込まれて）いる。そうすることで、端末アプリファイルのインストール先を制限することができる。端末アプリファイルに対するコントローラ情報の埋め込みは、クライアント装置３０において行われてもよいし、インストールパッケージファイルがクライアント装置３０にダウンドールされる前の段階で行われてもよい。なお、リモートインストール管理部１２３が、端末アプリファイルの構造を理解可能な場合、ステップＳ２０３における照合は、例えば、ステップ１０３の後に、リモートインストール管理部１２３によって実行されてもよい。照合結果が一致でない場合、ステップＳ１０４以降は、中止されてもよい。
【００５４】
または、インストール要求に含まれているコントローラ情報と照合される情報は、例えば、情報処理端末２０の補助記憶装置２０３に、予め記憶されていてもよい。この場合、各端末アプリファイルに、コントローラ情報が含まれなくてもよい。
【００５５】
コントローラ情報の照合結果が一致である場合、端末アプリ管理部２２は、端末アプリファイルを、情報処理端末２０にインストールする（Ｓ２０５）。換言すれば、コントローラ情報の照合結果が不一致である場合、端末アプリファイルのインストールは行われない。
【００５６】
なお、照合結果の一致は、照合された二つのコントローラ情報が、完全に同じ値である場合に限定されなくてもよい。照合される二つのコントローラ情報が所定の関係を有すれば、照合結果は一致であると判定されてもよい。所定の関係を有する場合には、両者が完全に一致する場合や、一方のコントローラ情報に対して所定の変換処理を施した結果が、他方のコントローラ情報と同じである場合等も含まれる。
【００５７】
続いて、端末アプリ管理部２２は、端末アプリファイルのインストール処理の結果を、コントローラ通信部２１に応答する（Ｓ２０６）。インストール処理の結果とは、例えば、インストール処理の成否を示す情報である。コントローラ通信部２１は、インストール処理の結果を示す情報を、インストール要求元の画像形成装置１０に送信する（Ｓ２０７）。インストール要求元の画像形成装置１０のアドレス情報は、例えば、ステップＳ２０２のインストール要求に含まれている、当該画像形成装置１０のアドレス情報に基づいて特定可能である。
【００５８】
画像形成装置１０の端末通信部１２６は、インストール処理の結果を示す情報を受信すると、当該情報を、端末アクセス共通部１２５に通知する（Ｓ２０８）。当該情報は、図６のステップＳ１０９において、リモートインストール管理部１２３に通知される。なお、リモートインストール管理部１２３は、当該情報が、端末アプリ２３のインストールの失敗を示す場合、ステップＳ１０４に応じてインストールされたＳＤＫアプリ１２７のアンインストールを、ＳＤＫアプリ管理部１２４に要求してもよい。
【００５９】
その後、１つのインストール要求に応じて画像形成装置１０にインストールされたＳＤＫアプリ１２７と情報処理端末２０にインストールされた端末アプリ２３とは、画像形成装置１０と情報処理端末２０とを連携させる処理をそれぞれの装置又は端末に実行させる。例えば、端末アプリ２３は、ＧＵＩに関連した処理を実行し、ユーザに操作させる画面を情報処理端末２０に表示させる。端末アプリ２３は、当該画面に対する入力に応じた処理要求を、コントローラ通信部２１及び端末通信部１２６を介して、ＳＤＫアプリ１２７に通知する。ＳＤＫアプリ１２７は、当該処理要求に応じた処理を画像形成装置１０に実行させることにより、画像形成装置１０を制御する。
【００６０】
なお、上記では、コントローラ情報がインストール時に用いられる例を示したが、コントローラ情報は、端末アプリ２３及びＳＤＫアプリ１２７の実行時等に利用されてもよい。具体的には、端末アプリ管理部２２は、コントローラ情報の照合（Ｓ２０４）を行わずに、コントローラ情報を、インストール対象の端末アプリファイルに関連付けて、補助記憶装置２０３に記憶する。当該端末アプリファイルに係る端末アプリ２３は、対となるＳＤＫアプリ１２７に対して送信される処理要求に、当該端末アプリ２３に関連付けられているコントローラ情報を含める。当該処理要求に基づいて処理を実行するＳＤＫアプリ１２７又はＳＤＫプラットフォーム１２２は、当該コントローラ情報が、当該画像形成装置１０のコントローラ情報に一致すれば、処理要求に応じた処理を実行する。こうすることで、端末アプリ２３が連携可能な画像形成装置１０を限定することができる。すなわち、情報処理端末２０が連携可能な画像形成装置１０を限定することができる。
【００６１】
また、本実施の形態では、インストールパッケージファイルが、ネットワークを介して受信される（入力される）例を示したが、例えば、ＳＤカード８０等、画像形成装置１０が読み取り可能な記録媒体からインストールパッケージファイルが入力されてもよい。
【００６２】
また、本実施の形態においてファイルとして説明したデータは、ファイル以外の形式によって構成されてもよい。
【００６３】
上述したように、本実施の形態によれば、クライアント装置３０から画像形成装置１０へのインストール要求に応じて、画像形成装置１０のみならず、画像形成装置１０と連携して処理を実行する情報処理端末２０に対しても、連鎖的にプログラムのインストールが実行される。したがって、連携して処理を実行する複数の情報処理装置へのプログラムのインストール作業を効率化することができ、作業者の負担を軽減することができる。
【００６４】
なお、情報処理端末２０が、クライアント装置３０からインストール要求を受信してもよい。この場合、情報処理端末２０は、端末アプリ２３のインストールを実行し、ＳＤＫアプリ１２７のインストールを、画像形成装置１０に要求してもよい。すなわち、図６と図８とのシーケンス図において、画像形成装置１０と情報処理端末２０とが入れ替えられてもよい。
【００６５】
また、本実施の形態は、一方が他方の操作部として機能するといった要件を満たさない２以上の情報処理装置に関して適用されてもよい。例えば、一般的なクライアント・サーバシステム等、ネットワークを介して連携して処理を実行する複数の情報処理装置に対して、本実施の形態が適用されてもよい。また、３つ以上の情報処理装置に対して、連鎖的に、プログラムのイントールが実行されてもよい。
【００６６】
なお、本実施の形態において、ネットワーク通信部１２１は、入力部の一例である。ＳＤＫアプリ管理部１２４は、第一のインストール部の一例である。端末通信部１２６は、送信部の一例である。端末アプリ管理部２２は、第二のインストール部の一例である。
【００６７】
以上、本発明の実施例について詳述したが、本発明は斯かる特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
【符号の説明】
【００６８】
１            インストールシステム
２            情報処理システム
１０          画像形成装置
１１          コントローラ
１２          スキャナ
１３          プリンタ
１４          モデム
１５          端末インタフェース
１６          ネットワークインタフェース
１７          ＳＤカードスロット
２０          情報処理端末
２１          コントローラ通信部
２２          端末アプリ管理部
２３          端末アプリ
３０          クライアント装置
３１          インストール要求部
８０          ＳＤカード
１１１        ＣＰＵ
１１２        ＲＡＭ
１１３        ＲＯＭ
１１４        ＨＤＤ
１１５        ＮＶＲＡＭ
１２１        ネットワーク通信部
１２２        ＳＤＫプラットフォーム
１２３        リモートインストール管理部
１２４        ＳＤＫアプリ管理部
１２５        端末アクセス共通部
１２６        端末通信部
１２７        ＳＤＫアプリ
２０１        ＣＰＵ
２０２        メモリ
２０３        補助記憶装置
２０４        タッチパネル
２０５        無線通信装置
２０６        機器インタフェース
２１１        表示装置
２１２        入力装置
【先行技術文献】
【特許文献】
【００６９】
【特許文献１】特開２０１１−１８２４６１号公報
【図１】
2015176306.tif 000003
【図２】
2015176306.tif 000004
【図３】
2015176306.tif 000005
【図４】
2015176306.tif 000006
【図５】
2015176306.tif 000007
【図６】
2015176306.tif 000008
【図７】
2015176306.tif 000009
【図８】
2015176306.tif 000010