(57)【要約】【課題】端末上のプリンターに対応するソフトウェア構成の整理をする情報処理装置を提供する。【解決手段】この情報処理装置は、サーバーからダウンロードしたアプリケーションに含まれるソフトウェアを介して印刷装置に対して印刷を実行する情報処理装置であって、印刷装置を探索する探索手段と、探索手段により探索された印刷装置に対応するソフトウェアを介して印刷装置に対して印刷を実行する印刷実行手段と、探索手段による探索結果と印刷装置の印刷結果に応じて印刷装置を分類する分類手段と、分類手段により分類された印刷装置に対応するソフトウェアを整理する整理手段と、を備える。【選択図】図６
2017054368.tif 000002
【特許請求の範囲】
【請求項１】
サーバーからダウンロードしたアプリケーションに含まれるソフトウェアを介して前記印刷装置に対して印刷を実行する情報処理装置であって、
前記印刷装置を探索する探索手段と、
前記探索手段により探索された印刷装置に対応するソフトウェアを介して前記印刷装置に対して印刷を実行する印刷実行手段と、
前記探索手段による探索結果と前記印刷装置の印刷結果に応じて前記印刷装置を分類する分類手段と、
前記分類手段により分類された印刷装置に対応するソフトウェアを整理する整理手段と、
を備える
ことを特徴とする情報処理装置。
【請求項２】
前記整理手段は、前記分類手段による分類に従って、前記印刷装置に対応するソフトウェアを削除する
ことを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記探索手段は、前記印刷装置を探索した際の前記情報処理装置の位置情報をさらに取得し、前記整理手段は、前記位置情報に応じて前記印刷装置に対応するソフトウェアを整理する
ことを特徴とする請求項１または２に記載の情報処理装置。
【請求項４】
前記整理手段は、前記探索手段により取得された前記位置情報から探索位置が変化した場合、前記位置変化に応じて前記印刷装置に対応するソフトウェアを整理する
ことを特徴とする請求項３に記載の情報処理装置。
【請求項５】
前記整理手段は、予め設定された整理条件に従って、またはユーザーによる指示を受けて、前記ソフトウェアを整理する
ことを特徴とする請求項１〜４のいずれか１項に記載の情報処理装置。
【請求項６】
前記整理条件は、前記探索手段が探索した前記印刷装置の変化の回数および前記探索位置の変化の回数と、前記印刷実行手段が印刷を実行した前記印刷装置の変化の回数とを含む
ことを特徴とする請求項５に記載の情報処理装置。
【請求項７】
前記分類手段は、前記印刷装置を検出、未検出、使用のいずれかに分類する
ことを特徴とする請求項１〜６のいずれか１項に記載の情報処理装置。
【請求項８】
前記整理手段は、前記分類手段により未検出と分類された前記印刷装置に対応するソフトウェアを削除する
ことを特徴とする請求項７に記載の情報処理装置。
【請求項９】
サーバーからダウンロードしたアプリケーションに含まれるソフトウェアを介して前記印刷装置に対して印刷を実行する情報処理装置の制御方法であって、
前記印刷装置を探索する探索工程と、
前記探索工程で探索された印刷装置に対応するソフトウェアを介して前記印刷装置に対して印刷を実行する印刷実行工程と、
前記探索工程での探索結果と前記印刷装置の印刷結果に応じて前記印刷装置を分類する分類工程と、
前記分類工程で分類された印刷装置に対応するソフトウェアを整理する整理工程と、
を有する
ことを特徴とする情報処理装置の制御方法。
【請求項１０】
請求項１〜８のいずれか１項に記載の情報処理装置の各手段としてコンピュータを機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、情報処理装置の制御方法、及びプログラムに関する。
【背景技術】
【０００２】
近年、モバイル端末からプリンターへ印刷する方法が注目を集めている。そのため、モバイル端末のＯＳやプリンターベンダーが提供するアプリケーションを利用してプリンターへ印刷する動向がある。例えば、モバイル端末には、ＪＰＥＧ画像やＰＤＦ（Ｐｏｒｔａｂｌｅ  Ｄｏｃｕｍｅｎｔ  Ｆｏｒｍａｔ）といった入力原稿ファイルがある。また、モバイル端末のアプリケーションは、前述の入力原稿ファイルに対してプリンターがサポートする文書形式を選択する、またはＰＤＬ形式（Ｐａｇｅ  Ｄｅｓｃｒｉｐｔｉｏｎ  Ｌａｎｇｕａｇｅ）へ変換して、印刷設定情報を付加し印刷ジョブを構成する。そして、この印刷ジョブを対象プリンターに送信して印刷処理を実行している。
【０００３】
また、Ａｎｄｒｏｉｄ（登録商標）といったモバイル端末に搭載されるＯＳにおいて、ＯＳが各アプリケーションに共通の印刷機能を提供する印刷システムがある（例えば、Ａｎｄｒｏｉｄ  Ｖｅｒｓｉｏｎ  ４．４以降に搭載）。この印刷システムには、印刷サブシステムといわれる各プリンターベンダーが各自のプリンターに適応させるための依存処理をアドインできる仕組みが開発されている。このように、ＯＳやアプリケーションの印刷機能の実行のためには、形式変換、設定付与や依存処理など、各プリンターに適応した処理も必要となる。
【０００４】
特許文献１には、ＰＣ上の新プリンタードライバーの非サポート機種に対して、旧プリンタードライバーから該当機種依存データを導入する方法が開示されている。このように、モバイル端末からのプリンターへの印刷は増えており、モバイル端末での共通の印刷機能も開発されているが、形式変換、設定付与や依存処理など、各プリンターに適応した処理が必要となる。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１５−６０２７６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、これまでの端末とプリンターからなる印刷システムにおいて、プリンターの様々な機能やプリンターの機種に適応するモジュールやデータを含むソフトウェア構成の全てを端末に配置するとサイズ総量が大きくなる。そのため、ユーザーの端末容量を圧迫してしまう。
【０００７】
本発明は、上記課題を鑑みて、端末上のプリンターに対応するソフトウェア構成の整理する情報処理装置を提供することを目的とする。
【課題を解決するための手段】
【０００８】
上記課題を解決するために、本発明の情報処理装置は、サーバーからダウンロードしたアプリケーションに含まれるソフトウェアを介して前記印刷装置に対して印刷を実行する情報処理装置であって、前記印刷装置を探索する探索手段と、前記探索手段により探索された印刷装置に対応するソフトウェアを介して前記印刷装置に対して印刷を実行する印刷実行手段と、前記探索手段による探索結果と前記印刷装置の印刷結果に応じて前記印刷装置を分類する分類手段と、前記分類手段により分類された印刷装置に対応するソフトウェアを整理する整理手段と、を備えることを特徴とする。
【発明の効果】
【０００９】
本発明によれば、端末上のプリンターに対応するソフトウェア構成の整理をする情報処理装置を提供することができる。これにより、本願発明の印刷システムは、端末上のプリンターに対応する構成が管理されるため、ユーザーの端末容量を圧迫しない。
【図面の簡単な説明】
【００１０】
【図１】印刷システムの構成を示す図である。
【図２】ハードウェア構成を示すブロック図である。
【図３】ソフトウェア構成を示すブロック図である。
【図４】ソフトウェア構成を示すブロック図である。
【図５】印刷システムの動作の概要を示す図である。
【図６】モバイル端末における動作を示す図である。
【図７】アプリケーション１０のデータフローを示す図である。
【図８】アプリケーションの設定画面の一例を示す図である。
【図９】アプリケーションのデータ構成を詳細に示す図である。
【図１０】制御部の処理を示すフローチャートである。
【図１１】制御部の処理を示すフローチャートである。
【図１２】制御部の処理を示すフローチャートである。
【図１３】制御部の処理を示すフローチャートである。
【発明を実施するための形態】
【００１１】
〔印刷システムの構成〕
図１は、本実施形態に係る印刷システムの構成を示す図である。印刷システム９は、モバイル端末１と、プリンター２と、印刷サーバー群４を含む。これらの装置は、ネットワーク５を介して接続されており、ネットワーク５は、インターネット８に接続されている。また、印刷システム９を構成する各装置は、インターネット８を介して接続可能であり、互いにデータ通信することができる。モバイル端末（情報処理装置）１は、インターネット８への接続方法として移動体通信６を選択してもよい。移動体通信６は、無線通信や公衆回線通信を含む通信方法を有する。なお、モバイル端末１、プリンター２は複数台配置されていてもよい。
【００１２】
また、印刷サーバー群４に含まれる各サーバーは、ネットワーク５を介し接続されており、ネットワーク５は、インターネット８に接続されている。このように印刷サーバー群は複数のサーバーから構成されているのでサーバーシステムと称することとし、サーバーシステムと称した場合、モバイル端末１、プリンター２は含まれないものとする。なお、本実施形態では、サーバーシステムである印刷サーバー群４としているが必ずしも複数台である必要はない。
【００１３】
〔ハードウェアの構成〕
図２は、端末装置およびプリンターのハードウェア構成の一例を示すブロック図である。図２（Ａ）は、端末装置のハードウェア構成の一例を表すブロック図である。本実施形態では、モバイル端末１、印刷サーバー群４に含まれる各サーバーおよびＰＣ端末３は、図２（Ａ）に示すようなハードウェアで構成されている。
【００１４】
ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）１１１は、記憶部であるＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）１１３に記憶されているプログラムに従って、システムバス１２１に接続される各デバイスを総括的に制御する。ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）１１２は、ＣＰＵ１１１の主メモリ、ワークエリア等としても機能する。ＲＯＭ１１３は、各種プログラムおよびデータを格納する。表示部Ｉ／Ｆ１１５は、表示部１２０への表示を制御している。操作部Ｉ／Ｆ１１６は、キーボードやポインティングデバイス（マウス等：不図示）、およびタッチパネル等の操作部１２２からの入力を制御する。外部メモリＩ／Ｆ１１７は、例えば、ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）、フラッシュメモリ、ＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｉｓｋ）等の外部メモリ１２３とのアクセスを制御する。
【００１５】
外部メモリ１２３は、保存または読み取り可能な記憶媒体として機能し、オペレーティングシステム（ＯＳ）、Ｗｅｂブラウザー、およびアプリケーションが記憶されている。アプリケーションおよび各モジュール（ソフトウェア）のプログラムは、外部メモリ１２３に記憶され、必要に応じてＲＡＭ１１２に読み出されてＣＰＵ１１１により実行される。これにより、アプリケーションまたは各モジュール（ソフトウェア）の機能を実現する。
【００１６】
通信Ｉ／Ｆ１１８は、ＮＩＣ（Ｎｅｔｗｏｒｋ  Ｉｎｔｅｒｆａｃｅ  Ｃａｒｄ）１２４の通信を制御している。ＮＩＣ１２４は、ネットワークとの接続Ｉ／Ｆ（インタフェース）であり、ネットワークへの接続を可能とし、データの送受信を制御する。なお、通信Ｉ／Ｆ１１８は、本実施形態の構成に限定されるものではなく、携帯網などへの通信を制御して無線基地局とのネットワークに接続可能であってもよい。拡張Ｉ／Ｆ１１９は、ＧＰＳ１２６の位置検出を制御している。ＧＰＳ１２６は、ＧＰＳセンサーによるモバイル端末１の位置情報取得を制御する。なお、ＮＩＣ１２４のネットワークを利用した位置情報を取得も可能である。なお、本実施形態に係る処理は、外部メモリ１２３に記録されたプログラムをＲＡＭ１１２にロードし、ＣＰＵ１１１実行することによって実現される。また、プログラムは、外部メモリ１２３以外にも、ＲＡＭ１１２やＲＯＭ１１３にて記憶されてもよい。
【００１７】
図２（Ｂ）は、プリンター２のハードウェア構成の一例を示すブロック図である。ＣＰＵ１４１は、プリンター２の全体の動作を制御し、ＲＯＭ１４３に記憶されているプログラムに従って、システムバス１５１に接続される各デバイスを総括的に制御している。ＲＡＭ１４２は、ＣＰＵ１４１の主メモリ、ワークエリア等として機能すると共に、入力情報展開領域、環境データ格納領域としても用いられる。また、ＲＡＭ１４２は、ＮＶＲＡＭ（Ｎｏｎ−ｖｏｌａｔｉｌｅ  ＲＡＭ：不揮発性ＲＡＭ）領域も備えており、増設ポート（不図示）に接続されるオプションＲＡＭによりメモリ容量を拡張することができる。ＲＯＭ１４３は、各種フォント、ＣＰＵ１４１により実行される制御プログラムや各種データ等を記憶している。
【００１８】
通信Ｉ／Ｆ１４８は、ＮＩＣ１６４の通信を制御している。ＮＩＣ１６４は、ネットワークとの接続Ｉ／Ｆであり、印刷サーバー群４やＰＣ端末３、およびモバイル端末１との間でのデータの送受信を制御する。通信Ｉ／Ｆ１４８は、ウェブサービスプロトコルなど実施環境に適した実装を備える。プリンターＩ／Ｆ１４６は、プリンタエンジンである印刷部１６１とのインタフェースを制御している。外部メモリ１６３は、外部メモリＩ／Ｆ１４７によりアクセスが制御されており、例えば、ＨＤＤ、フラッシュメモリ、ＳＳＤ等が挙げられる。ＣＰＵ１４１は、外部メモリ１６３やＲＯＭ等に記憶されているプログラムを必要に応じてＲＡＭ１４２に読み出し、実行することによって、プリンター２の機能を実現する。操作部Ｉ／Ｆ１４５は、プリンター３の各種設定を行うための操作部１６０とのインタフェースを制御している。なお、本実施形態に係る処理は、外部メモリ１６３に記録されたプログラムをＲＡＭ１４２にロードし、ＣＰＵ１４１で実行することによって実現される。また、プログラムは、外部メモリ１６３以外にもＲＡＭ１４２やＲＯＭ１４３にて記憶されてもよい。
【００１９】
〔ソフトウェア構成、ファイル構成の例〕
図３は、印刷システム９のソフトウェアの構成を示すブロック図である。図３で示す各ソフトウェア構成部は、図２に示したＣＰＵ１１１およびＣＰＵ１４１がＲＯＭ１１３およびＲＯＭ１４３に記憶されているプログラムをＲＡＭ１１およびＲＡＭ１４２にロードし、ロードされたプログラムを実行することで実現される。
【００２０】
モバイル端末１のソフトウェア構成部は、ＣＰＵ１１１が通信Ｉ／Ｆ１１８を介して受信し、外部メモリ１２３へ記憶したプログラムをＲＡＭ１１２にロードし、ロードされたプログラムを実行することで実現される。同様に、プリンター２のソフトウェア構成部は、ＣＰＵ１４１が通信Ｉ／Ｆ１４８を介して受信し、外部メモリ１６３へ記憶したプログラムをＲＡＭ１４２にロードし、ロードされたプログラムを実行することで実現される。
【００２１】
次に、モバイル端末１のソフトウェア構成について説明する。アプリケーション１０は、制御部１１を有する。制御部１１は、モバイル端末１においてアプリケーション１０の動作を制御するためにロードされる。モバイル端末１のＯＳ１５には、表示部１６と通信部１７が含まれる。表示部１６は、モバイル端末１の表示を制御し、ＯＳ１５、アプリケーション１０の画面を表示する。通信部１７は、モバイル端末１の通信を制御し、プリンター２や印刷サーバー群４と情報を送受信する。通信部１７は、ネットワーク５への移動体通信６など、複数の通信方法を制御する。通信部１７は、通信に必要な情報を記憶する機能も有する。
【００２２】
また、アプリケーション１０は、モバイル端末１にインストールされており、制御部１１に加えて、探索部（探索手段）１２、印刷部１３、管理部（整理手段）１４を含む。探索部１２は、印刷システム内にあるプリンターを探索する。モバイル端末１は、参加するネットワーク５上において、例えば、ＳＮＭＰ（Ｓｉｍｐｌｅ  Ｎｅｔｗｏｒｋ  Ｍａｎａｇｅｍｅｎｔ  Ｐｒｏｔｏｃｏｌ）で管理されるネットワーク機器を探索する。モバイル端末１が通信および印刷が可能なプリンター２を探索する機能を有する。印刷部１３は、プリンターへの印刷を制御し、通信可能なプリンター２に対して印刷ジョブを生成し、該印刷ジョブを送信する機能を有する。管理部１４は、アプリケーション１０を管理し、アプリケーション１０の設定、動作、インストール、およびファイル構成等を管理する機能を有する。モバイル端末１が、プリンター２、および印刷サーバー群４のＷｅｂ  Ｓｅｒｖｅｒ４６と通信する際は、ＷｅｂクライアントとしてＷｅｂブラウザー１８を利用する。
【００２３】
次に、プリンター２のソフトウェア構成について説明する。プリンター２の制御部２１は、印刷や通信処理の制御のためにロードされる。また、プリンター２の制御部２１は、プリンター通信部２３の通信Ｉ／Ｆ１４８を介した通信機能、プリンター印刷部２２のプリンターＩ／Ｆ１４６を介した印刷機能を制御する。なお、モバイル端末１とプリンター２とが連携するため、通信部１７とプリンター通信部２３が特定の通信プロトコルで通信を行い、印刷ジョブの送受信を行う。認証情報は、プリンター通信部２３にも保存されている。プリンター２から、モバイル端末１および印刷サーバー群４とＷｅｂ接続する際は、Ｗｅｂ  Ｓｅｒｖｅｒ２４を利用する。
【００２４】
次に、印刷サーバー群４のソフトウェア構成について説明する。印刷サーバー群４は、制御部４２、印刷部４３、表示部４４、通信部４５を含むクラウド・プリントサービスである。この印刷サーバー群４は、モバイル端末１やプリンター２と連携する。印刷サーバー群４は、モバイル端末１やプリンター２の動作に合わせて動作する、一部処理を共同して行う、または複数のモバイル端末１およびプリンター２の動作を管理することができる。例えば、アプリ４１は、印刷サーバー群４に配置されたアプリケーション１０のパッケージであり、モバイル端末１にダウンロードされインストールされて動作する。また、例えば、モバイル端末１とプリンター２からアップロードされる動作情報を印刷サーバー群４が記録、管理する動作も考えられる。このように、本実施形態において、印刷サーバー群４には、モバイル端末１やプリンター２の処理と同様の処理を配置することができる。また、本実施形態において、ＰＣ端末３もモバイル端末１やプリンター２の処理と同様の処理をすることができる。
【００２５】
次に、図４は、本実施形態に係る印刷システム９が有するファイルの構成を示すブロック図である。本実施形態において、アプリケーション１０のパッケージであるアプリ４１は、サポートプリンター一覧３１、共通モジュール３２、機種共通データ３３、個別モジュール３４、機種個別データ３５を含む。サポートプリンター一覧３１は、アプリケーション１０がサポートするプリンターの一覧であり、各プリンターのサポートに必要なファイル構成も併記されている。共通モジュール３２は、アプリケーション１０の動作において、対象プリンターに依らず共通で利用するモジュールである。機種共通データ３３は、対象プリンターに依らず共通で利用するデータである。個別モジュール３４は、対象プリンターに依って個別で利用するモジュールである。機種個別データ３５は、対象プリンターに依って個別で利用するデータである。アプリケーション１０は、その動作に共通のファイル構成を利用するが、各プリンターに適応するためのファイル構成も含まれている。
【００２６】
〔印刷システムの動作の概要〕
図５は、本実施形態に係る印刷システム９の動作の概要を示す図である。アプリ４１は、印刷サーバー群４に配置されたアプリケーション１０のパッケージである。例えば、アプリ４１は、あるプリンターベンダーのプリンターを１つのパッケージでサポートする。アプリ４１には、多数のプリンター（本実施形態では、６種類）に適応するファイルが含まれている。
【００２７】
アプリ４１は、印刷サーバー群４からモバイル端末１にダウンロードされ、インストールされ、アプリケーション１０となる。モバイル端末１にインストールされたアプリケーション１０は、多数のプリンター（本実施形態では、６種類）に適用するファイルを含んでいる。なお、本実施形態では、ユーザー７は、モバイル端末１からＰｒｉｎｔｅｒ０２とＰｒｉｎｔｅｒ０３を利用しているとする。次に、アプリケーション１０は、管理部１４により、自動または手動でファイル構成を整理する動作をして、ユーザー７の利用するＰｒｉｎｔｅｒ０２とＰｒｉｎｔｅｒ０３に適用する。そして、アプリケーション１０には、Ｐｒｉｎｔｅｒ０２とＰｒｉｎｔｅｒ０３に適応するファイルのみが残る。
【００２８】
〔印刷システムの動作例〕
図６は、本実施形態に係るモバイル端末１における動作を示す図である。アプリ４１は、図５に示す通り、印刷サーバー群４からモバイル端末１にダウンロードされ、インストールされる。インストールされたアプリケーション１０は、多数のプリンターに適用するファイルを含んでいる。まず、ユーザー７は、モバイル端末１のアプリケーション１０を操作して印刷をする。アプリケーション１０で探索をすると、Ｐｒｉｎｔｅｒ０２とＰｒｉｎｔｅｒ０３が検出される。そして、ユーザー７は、アプリケーション１０からＰｒｉｎｔｅｒ０２を選択して印刷を実行する。本実施形態において、ユーザー７は、この印刷実行を繰り返しているとする。
【００２９】
ここで、アプリケーション１０は、探索部１２と印刷部１３の処理を繰り返している。アプリケーション１０は、探索部１２と印刷部１３の処理の実績を元に管理部１４がプリンターを分類し、プリンター一覧５５を表示する。本実施形態では、プリンターは、［分類１］５１、［分類２］５２、［分類３］５３に分類される。検出されて印刷したＰｒｉｎｔｅｒ０２は、［分類１］５１へ、検出されたＰｒｉｎｔｅｒ０３は、［分類２］５２に分類される。また、アプリケーション１０がサポートしているが検出されない（未検出）プリンターは、［分類３］５３に分類される。アプリケーション１０の管理部１４は、この分類を繰り返しながら、プリンターの分類を含む統合プリンター一覧５５をモバイル端末１上に管理する。
【００３０】
そして、統合プリンター一覧５５が一定になった、またはユーザーからの実行指示があれば、アプリケーション１０は、プリンター構成を整理する。例えば、アプリケーション１０の［分類３］５３のプリンターに適用されるファイル構成を整理するために、［分類３］５３に分類されるファイルを削除する。そして、アプリケーション１０には、［分類１］５１および［分類２］５２に適応するファイルのみが残る。
【００３１】
〔アプリケーションのデータフローの例〕
図７は、アプリケーション１０のデータフローを示す図である。まず、制御部１１は、探索部１２を介して探索処理し、検出したプリンターをプリンターリストとして加えて（ステップＳ６０２）、位置情報も出力する（ステップＳ６１５）。次に、制御部１１は、準備処理において、分類１のプリンターリストを入力としたプリロード処理をし（ステップＳ６１１）、プリロード済プリンターリストを出力する（ステップＳ６１３）。次に、制御部１１は、アプリケーション１０のサポートプリンター一覧３１と検出プリンターのプリンターリストを入力とし、ＡＮＤ処理して、現在プリンター一覧６１を出力する。次に、制御部１１は、現在プリンター一覧６１を入力として、表示部１６を介してプリンターリストを表示出力する（ステップＳ６０４）。そして、ユーザー７は、表示されたプリンターリストから使用するプリンターを選択しプリンターを出力する（ステップＳ６０５）。次に、制御部１１は、ユーザー７が選択したプリンターを入力として、使用プリンター６２に格納出力する。次に、制御部１１は、印刷部１３を介して、プリンター、印刷設定を入力として、印刷処理を実行し（ステップＳ６０７）、印刷ジョブを出力する（ステップＳ６０８）。
【００３２】
制御部１１は、現在プリンター一覧６１（ステップＳ６１８）と、使用プリンター６２（ステップＳ６１９）を管理部１４に出力し、管理部１４が、現在プリンター一覧６１のプリンターリストと使用プリンター６２を入力として、分類処理（５４）を実行する。そして、使ったプリンターとして［分類１］５１を出力し（ステップＳ６２３）、見つかったプリンターとして［分類２］５２を出力し（ステップＳ６２４）、見つからなかったプリンターとして［分類３］５３を出力する（ステップＳ６２５）。なお、各分類の出力は、フォルダー、テーブル、ポインタ、アドレス等の方法で出力してもよい。制御部１１は、管理部１４を介して、［分類２］５２のプリンターを使う際は、［分類２］５２のプリンターを入力として、［分類１］５１の使ったプリンターへ分類出力する（ステップＳ６２１）。そして、制御部１１は、管理部１４を介して、［分類１］５１、［分類２］５２、［分類３］５３を入力として、リスト統合の処理をして、統合プリンター一覧５５を出力する。
【００３３】
一方、制御部１１は、管理部１４を介して、位置の一覧８４を入力として、変化抽出処理を実行し、位置差分を出力し、位置の変化履歴８３として履歴出力する（ステップＳ６１６）。そして、制御部１１は、管理部１４を介して、統合プリンター一覧５５を入力として、変化抽出処理をして、プリンター差分を出力し、プリンターの変化履歴８２として履歴出力する（ステップＳ６２５）。制御部１１は、管理部１４を介して、整理設定７５、プリンターの変化履歴８２、８３と整理条件テーブル８１を入力として、整理条件テーブル８１の判定処理により安定、不安定を判定し、対象分類を出力する（ステップＳ６２６）。制御部１１は、管理部１４を介して、対象分類、全体分類の統合プリンター一覧５５、サポートプリンター一覧３１のファイルリストを入力（ステップＳ６２９）として、対象ファイル特定処理をして、対象ファイルを出力する。そして、制御部１１は、管理部１４を介して、対象ファイルを入力として、アプリケーション１０のファイル構成の整理処理５８をして、整理されたアプリケーション１０を出力する（ステップＳ６３２）。なお、本実施形態に係るファイル整理処理は、これに限定することなく、削除、圧縮、合成、編集、ファイル格納位置の変更、ファイル入手位置の変更等の方法を用いてもよい。
【００３４】
〔アプリケーションの設定画面の例〕
図８は、アプリケーションの設定画面を示す図である。アプリケーション１０の機能設定画面７００は、アプリケーション１０の構成整理機能を設定する画面の一例を示す。つまり、機能設定画面７００は、上述した構成整理機能の動作を設定できる画面である。［使用プリンターに合わせ構成を整理する：］（７０１）は、構成整理機能のＯＮ／ＯＦＦスイッチである。［自動整理：］（７１０）は、構成整理機能の自動動作のＯＮ／ＯＦＦスイッチである。［整理確度：］（７１１）は、構成整理機能の判定条件を調整するスライダーである。本実施形態では、［高］、［中高］、［中］の順に条件が厳しくなる。なお、具体的な条件については後述する。［整理する．．．］（７２０）は、構成整理を手動実行するボタンである。ユーザー７がこのボタンを選択（押下）することで、構成整理が実行される。
【００３５】
〔アプリケーションのデータ構成の詳細例〕
図９は、アプリケーションのデータ構成を詳細に示す図である。まず、図９（Ａ）を用いて、アプリケーション１０の整理条件テーブル８１について説明する。整理条件テーブル８１は、前述の［整理確度］７１１の設定に［中］、［中高］、［高］に準じた条件値と、現在値８５が格納される。現在値８５が条件値を元に安定、不安定の判定をする。条件値を満たして安定と判定されると、構成整理機能が自動動作する。本実施形態では、整理条件テーブル８１は、利用プリンター変化８１１、探索プリンター変化８１２、位置変化８１３、安定期間８１４、整理対象８１５の条件値を有する。利用プリンター変化８１１は、利用プリンターの変化幅（変化の回数）である。例えば、ある新しいプリンターへ印刷すると、その変化は、１である。探索プリンター変化８１２は、探索プリンターの変化幅（変化の回数）である。例えば、ある新しいプリンターが検出されると、その変化は、１である。位置変化８１３は、探索した位置（探索位置）の変化幅（変化の回数）である。例えば、新しい位置で探索が実施されると、その変化は、１である。また、位置の変化を条件としない場合は、０で値を固定すればよい。安定期間８１４は、前述の３つの変化幅が条件値に収まる期間である。例えば、３つの変化幅が条件値に収まってから１日が経過していれば、安定期間は、１となる。整理対象８１５は、構成整理の対象になる分類である。例えば、整理対象が［分類３］なら、［分類３］５３に分類されたプリンターの構成が整理される。
【００３６】
次に、図９（Ｂ）を用いて、アプリケーションの整理条件テーブル８１に関連するデータについて説明する。整理条件テーブル８１は、プリンターの変化履歴８２、位置の変化履歴８３に関連するデータである。プリンターの変化履歴８２は、プリンターの変化を記録した履歴（８２０）である。このプリンターの変化履歴８２を元にして、整理条件テーブル８１の現在値８５の利用プリンター変化８１１と探索プリンター変化８１２と安定期間８１４がつくられる。位置の変化履歴８３は、位置の変化を記録した履歴（８３０）である。この位置の変化履歴８３を元にして、整理条件テーブル８１の現在値８５の位置変化８１３と安定期間８１４がつくられる。プリンターの変化履歴８２は、統合プリンター一覧５５の変化を、位置の変化履歴８３は位置の一覧８４の変化を履歴化してつくられるデータである。
【００３７】
〔アプリケーションの制御部のフローチャート〕
図１０〜１３は、アプリケーション１０の制御部１１の処理を示すフローチャートである。まず、ステップＳ９０１において、アプリケーション１０の制御部１１は、探索部１２を介して探索処理を実行する。次に、ステップＳ９０２において、制御部１１は、探索部１２を介して、同ネットワーク上でプリンターを検出する。次に、ステップＳ９０３において、制御部１１は、探索部１２を介して、検出したプリンターをサポートプリンター一覧３１と比較し、サポートプリンターであるか否かを判定する。サポートプリンターである場合（Ｙｅｓ）、ステップＳ９０４へ進み、サポートプリンターでない場合（Ｎｏ）、ステップＳ９０５へ進む。そして、ステップＳ９０４において、制御部１１は、探索部１２を介して、検出されたプリンターをメモリ上の現在プリンター一覧６１に追加する。次に、ステップＳ９０５において、制御部１１は、探索部１２を介して、同ネットワーク上で更に他のプリンターが検出されるか否かを判定する。他のプリンターが検出された場合（Ｙｅｓ）、ステップＳ９０２に戻り、他のプリンターが検出されない場合（Ｎｏ）、ステップＳ９１０へ進む。次に、ステップＳ９１０において、制御部１１は、管理部１４を介して、メモリ上に［分類１］５１のプリンターの構成をプリロードする。次に、ステップＳ９１１において、制御部１１は、探索部１２を介して、探索実行した位置情報をメモリ上の位置の一覧８４へ格納する。次に、ステップＳ９１２において、制御部１１は、表示部１６を介して、現在プリンター一覧６１を表示する。
【００３８】
次に、ステップＳ９１３において、制御部１１は、表示部１６を介して、現在プリンター一覧６１からプリンターが選択されたか否かを判定する。現在プリンター一覧６１からプリンターが選択された場合（Ｙｅｓ）、ステップＳ９１４へ進み、選択されない場合（Ｎｏ）、図１１のステップＳ９３１へ進む。次に、ステップＳ９１４において、制御部１１は、探索部１２を介して、選択されたプリンターをメモリ上の使用プリンター６２に格納する。
【００３９】
そして、ステップＳ９２０において、アプリケーション１０の制御部１１は、印刷部１３を介して印刷処理を実行する。次に、ステップＳ９２１において、制御部１１は、管理部１４を介して、メモリ上に使用プリンター６２の構成をロードする。次に、ステップＳ９２２において、制御部１１は、印刷部１３を介して、印刷設定を付与し、印刷ジョブを生成する。次に、ステップＳ９２３において、制御部１１は、印刷部１３を介して、使用プリンター６２へ印刷する。
【００４０】
次に、図１１のステップＳ９３１において、アプリケーション１０の制御部１１は、管理部１４を介して管理処理を実行する。そして、制御部１１は、管理部１４を介して、処理Ｃのルーチンを実行する。なお、処理Ｃについては、図１３にて後述する。次に、ステップＳ９４０において、制御部１１は、管理部１４を介して、現在プリンター一覧６１と使用プリンター６２から分類を更新する。そして、ステップＳ９４１において、制御部１１は、管理部１４を介して、整理対象のプリンターが使用プリンターであるか否かを判定する。整理対象のプリンターが使用プリンターである場合（Ｙｅｓ）、ステップＳ９４２へ進み、使用プリンターでない場合（Ｎｏ）、ステップＳ９４３へ進む。そして、ステップＳ９４２において、制御部１１は、管理部１４を介して、該当プリンターを［分類１］に分類する。
【００４１】
一方、ステップＳ９４３において、制御部１１は、管理部１４を介して、整理対象のプリンターが探索で見つかったプリンターであるか否かを判定する。整理対象のプリンターが探索で見つかったプリンターである場合（Ｙｅｓ）、ステップＳ９４４へ進み、見つかったプリンターでない場合（Ｎｏ）、ステップＳ９４５へ進む。そして、ステップＳ９４４において、制御部１１は、管理部１４を介して、該当プリンターを［分類２］に分類する。
一方、ステップＳ９４５において、制御部１１は、管理部１４を介して、整理対象のプリンターがこれまで探索で見つからなかったプリンターであると判定し、ステップＳ９４６へ進む。次に、ステップＳ９４６において、制御部１１は、管理部１４を介して、該当プリンターを［分類３］に分類する。次に、ステップＳ９４７において、制御部１１は、管理部１４を介して、未分類のプリンターが残っているか否かを判定する。未分類のプリンターが残っている場合（Ｙｅｓ）、ステップＳ９４０戻り、未分類のプリンターが残っていない場合、すなわちプリンターの分類が終わった場合（Ｎｏ）、ステップＳ９５０へ進む。
【００４２】
次に、ステップＳ９５０において、制御部１１は、管理部１４を介して、プリンターの分類が変化したか否かを判定する。プリンターの分類が変化した場合（Ｙｅｓ）、ステップＳ９５１へ進み、変化しない場合（Ｎｏ）、ステップＳ９５３へ進む。そして、ステップＳ９５１において、制御部１１は、管理部１４を介して、統合プリンター一覧５５を更新する。次に、ステップＳ９５２において、制御部１１は、管理部１４を介して、プリンターの変化履歴８２を更新する。次に、ステップＳ９５３において、制御部１１は、管理部１４を介して、整理対象のプリンターを探索した際の位置が変化したか否かを判定する。位置が変化した場合（Ｙｅｓ）、ステップＳ９５４へ進み、変化していない場合（Ｎｏ）、図１２のステップＳ９６１へ進む。そして、ステップＳ９５４において、制御部１１は、管理部１４を介して、位置の変化履歴８３を更新する。
【００４３】
次に、ステップＳ９６１において、制御部１１は、管理部１４を介して、メモリ上の整理条件テーブル８１の現在値８５を更新する。次に、ステップＳ９６２において、制御部１１は、管理部１４を介して、整理設定７５の自動整理設定がＯＮであるか否かを判定する。自動整理設定がＯＮである場合（Ｙｅｓ）、ステップＳ９６４へ進み、ＯＮでない場合（Ｎｏ）、ステップＳ９６３へ進む。そして、ステップＳ９６３において、制御部１１は、表示部１６を介して、［整理する．．．］ボタンが押されたか否かを判定する。ボタンが押された場合（Ｙｅｓ）、ステップＳ９７０へ進み、押されていない場合（Ｎｏ）、処理を終了する。一方、ステップＳ９６４において、制御部１１は、管理部１４を介して、メモリ上の整理条件テーブル８１を参照する。次に、ステップＳ９６５において、制御部１１は、管理部１４を介して、整理条件を満たし安定と判定したか否かを判定する。安定と判定した場合（Ｙｅｓ）、ステップＳ９７０へ進み、安定と判定されない場合（Ｎｏ）、処理を終了する。
【００４４】
次に、ステップＳ９７０において、制御部１１は、管理部１４を介して、アプリケーションの構成を整理する。次に、ステップＳ９７１において、制御部１１は、管理部１４を介して、共通モジュールやデータ、および整理対象に分類されないプリンターをそのまま維持する。次に、ステップＳ９７２において、制御部１１は、管理部１４を介して、整理対象に分類されているプリンターに適合する個別モジュール、個別データを削除する。なお、本実施形態に係るファイル整理処理は、これに限定することなく、削除、圧縮、合成、編集、ファイル格納位置の変更、ファイル入手位置の変更等の方法を用いてもよい。次に、ステップＳ９７３において、制御部１１は、管理部１４を介して、整理条件テーブル８１、統合プリンター一覧５５等の該当エントリを整理済として更新する。そして、処理を終了する。
【００４５】
次に、図１３を参照して、処理Ｃについて説明する。図１３は、制御部１１が管理部１４を介して実行する処理Ｃのルーチンを示すフローチャートである。まず、ステップＳ９８１において、制御部１１は、管理部１４を介して、印刷処理で、整理処理をしたプリンターが使用されるか否かを判定する。整理処理をしたプリンターが使用される場合（Ｙｅｓ）、ステップＳ９８２へ進み、使用されない場合（Ｎｏ）、処理を終了する。次に、ステップＳ９８２において、制御部１１は、管理部１４を介して、アプリケーション１０の構成を復帰する。次に、ステップＳ９８３において、制御部１１は、管理部１４、通信部１７を介して、アプリケーションおよび整理されたプリンターの個別モジュール、個別データを取得する。そして、処理を終了する。
【００４６】
以上、本実施形態に係る印刷システムにおいて、端末上のプリンターに対応する構成が管理されるため、ユーザーの端末容量が圧迫されない。また、本実施形態に係る印刷システムは、端末からプリンターを探索して、検出し、利用したプリンターに適合するソフトウェア構成を端末に配置する。すなわち、端末の探索結果とプリンターの使用結果（印刷結果）に応じてプリンターを分類し、必要なプリンターに適合するソフトウェア構成を端末に配置する。そして、検出の実績が無いプリンターに適合するソフトウェア構成は、端末に配置しないこととした。これにより、ユーザーの端末容量が圧迫されることを防ぐことができる。
【００４７】
さらに、本実施形態に係る印刷システムは、探索と利用結果を通算実績で扱い、プリンターを分類し、その分類結果が安定したら、実績に基づきプリンターに適合するソフトウェア構成を自動整理する管理機能も有する。また、モバイル端末であれば、端末の探索実行位置の安定も加味して整理が実行される。なお、本実施形態に係る印刷システムの整理処理としては、削除、圧縮、合成、編集、ファイル格納位置の変更、ファイル入手位置の変更等の方法を用いてもよい。また、端末に配置するソフトウェア構成は、プリロードするなど、管理判定結果を性能向上等にも応用している。
【００４８】
さらに、本実施形態では、一括パッケージングされたアプリ４１およびインストールされたアプリケーション１０の説明をした。しかしながら、これに限定することなく、例えば、逐次ダウンロードや別タイプのパッケージされたアプリケーションやＯＳコンポーネントであっても本実施形態の管理機構を適用できる。具体的には、逐次ダウンロードタイプであるなら、次のように分類することができる。すなわち、使用したプリンターは、ダウンロードして［分類１］へ分類する。検出されたプリンターは整理確度に応じてダウンロード実行を制御し［分類２］へ分類する。検出実績の無いプリンターはダウンロードせず［分類３］へ分類することができる。
【００４９】
以上、本実施形態によれば、端末上のプリンターに対応するソフトウェア構成の整理も考慮した印刷システムを提供することができる。
【００５０】
（その他の実施例）
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【００５１】
また、本発明の好ましい実施形態について説明したが、本発明は、これらの実施形態に限定されず、その要旨の範囲内で種々の変形および変更が可能である。
【図１】
2017054368.tif 000003
【図２】
2017054368.tif 000004
【図３】
2017054368.tif 000005
【図４】
2017054368.tif 000006
【図５】
2017054368.tif 000007
【図６】
2017054368.tif 000008
【図７】
2017054368.tif 000009
【図８】
2017054368.tif 000010
【図９】
2017054368.tif 000011
【図１０】
2017054368.tif 000012
【図１１】
2017054368.tif 000013
【図１２】
2017054368.tif 000014
【図１３】
2017054368.tif 000015