(57)【要約】【課題】装置の資源の有効活用に効果的な機能モジュールのダウンロードに係る機能を提供することを目的とする。【解決手段】ワークフローを構成する複数の工程における第１の工程に係る機能モジュールをダウンロードするダウンロード手段と、ダウンロード手段により第１の工程に係る機能モジュールがダウンロードされた場合、機能モジュールを用いた第１の工程の実行を開始させる開始手段と、を有し、ダウンロード手段は、第１の工程に係る機能モジュールを用いた第１の工程の処理が実行されている際に、複数の工程のうち、第１の工程の次の第２の工程に係る機能モジュールをダウンロードすることによって課題を解決する。【選択図】図８
2014164680.tif 000002
【特許請求の範囲】
【請求項１】
ワークフローを構成する複数の工程における第１の工程に係る機能モジュールをダウンロードするダウンロード手段と、
前記ダウンロード手段により前記第１の工程に係る機能モジュールがダウンロードされた場合、前記機能モジュールを用いた前記第１の工程の実行を開始させる開始手段と、
を有し、
前記ダウンロード手段は、前記第１の工程に係る機能モジュールを用いた前記第１の工程の処理が実行されている際に、前記複数の工程のうち、前記第１の工程の次の第２の工程に係る機能モジュールをダウンロードする画像処理装置。
【請求項２】
前記ダウンロード手段は、記憶領域の空き領域に応じて、前記第１の工程に係る機能モジュールを用いた前記第１の工程の処理が実行されている際に、前記複数の工程のうち、前記第１の工程の次の第２の工程に係る機能モジュールをダウンロードするか、前記第１の工程に係る機能モジュールを用いた前記第１の工程の処理の実行が完了し、前記第１の工程に係る機能モジュールを前記記憶領域から消去した後で、前記第２の工程に係る機能モジュールをダウンロードするか、を切り替える請求項１記載の画像処理装置。
【請求項３】
ワークフローを構成する複数の工程の処理が全て終了した場合、前記ダウンロード手段によりダウンロードされた前記ワークフローを構成する複数の工程の処理に係る機能モジュールを削除する削除手段を更に有する請求項１記載の画像処理装置。
【請求項４】
前記ダウンロード手段は、ワークフローを構成する複数の工程における第１の工程に係る機能モジュールをダウンロードする際に、記憶領域の空き領域が不足しており、かつ、前記記憶領域に複数の機能モジュールがダウンロードされている場合、他のワークフローを構成する複数の工程のうち後工程で用いられる機能モジュールから優先的に前記記憶領域から消去し、前記第１の工程に係る機能モジュールをダウンロードする請求項１記載の画像処理装置。
【請求項５】
ワークフローを構成する複数の工程の処理のうち第１の工程が異常終了した場合、前記第１の工程に係る機能モジュールを削除せずに記憶領域に保存しておく保存手段を更に有する請求項１記載の画像処理装置。
【請求項６】
前記ダウンロード手段は、前記異常終了した第１の工程以降の工程の機能モジュールをダウンロードするのに必要な空き領域が記憶領域に存在する場合は、前記異常終了した第１の工程以降の工程の機能モジュールをダウンロードし、
前記保存手段は、前記ダウンロード手段によりダウンロードされた機能モジュールを前記記憶領域に保存しておく請求項５記載の画像処理装置。
【請求項７】
前記第１の工程は複数の処理工程から構成され、
前記ダウンロード手段は、前記第１の工程に係る機能モジュールとして前記複数の処理工程の各工程に係る機能モジュールを複数、ダウンロードする際に、容量のサイズに応じて、順に機能モジュールをダウンロードし、
前記開始手段は、前記ダウンロード手段によりダウンロードされた機能モジュールを用いた処理工程から順に実行を開始させる請求項１乃至６何れか１項記載の画像処理装置。
【請求項８】
画像処理装置が実行する情報処理方法であって、
ワークフローを構成する複数の工程における第１の工程に係る機能モジュールをダウンロードするダウンロードステップと、
前記ダウンロードステップにより前記第１の工程に係る機能モジュールがダウンロードされた場合、前記機能モジュールを用いた前記第１の工程の実行を開始させる開始ステップと、
を含み、
前記ダウンロードステップでは、前記開始ステップにより前記第１の工程の実行が開始された場合に、前記複数の工程のうち、前記第１の工程の次の第２の工程に係る機能モジュールをダウンロードする情報処理方法。
【請求項９】
コンピュータに、
ワークフローを構成する複数の工程における第１の工程に係る機能モジュールをダウンロードするダウンロードステップと、
前記ダウンロードステップにより前記第１の工程に係る機能モジュールがダウンロードされた場合、前記機能モジュールを用いた前記第１の工程の実行を開始させる開始ステップと、
を実行させ、
前記ダウンロードステップでは、前記開始ステップにより前記第１の工程の実行が開始された場合に、前記複数の工程のうち、前記第１の工程の次の第２の工程に係る機能モジュールをダウンロードするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置、情報処理方法及びプログラムに関する。
【背景技術】
【０００２】
複合機やファクシミリ、プリンタやスキャナ、その他通信制御機器等、通常のコンピュータと違い、メモリやディスク等の、装置に搭載された資源が限られた装置では、これらの資源を有効に利用したいという要求がある。従来のプログラム管理方法には、ユーザーがクライアント装置にログインしたとき、或いは装置からログアウトしたときに、各アプリケーションの使用頻度に基づいて、アプリケーションをサーバー装置からダウンロードする。又は、クライアント装置から削除したりすることで、資源を有効に利用しようとするものがある（特許文献１参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００６−２０２０２８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、上記の従来技術では、アプリケーションのダウンロードの基準が、アプリケーションの使用頻度である。そのため、これから利用したいアプリケーションであっても、これまでの使用実績が少ないものはダウンロードされず、不要な使用実績の多いものがダウンロードされる可能性がある。更に、アプリケーションの消去の基準も使用頻度である。そのため、次回ログイン時にも利用予定のアプリケーションであっても、これまでの使用実績が少ないものはログアウト時に消去されてしまい、不要な使用実績の多いものが装置内に残ったままとなる可能性がある。
つまり、本当に必要なアプリケーション、不要なアプリケーションを正確に判断する事ができないため、必ずしも資源の有効活用に対し効果的とは言えない問題があった。
【０００５】
本発明はこのような問題点に鑑みなされたもので、装置の資源の有効活用に効果的な機能モジュールのダウンロードに係る機能を提供することを目的とする。
【課題を解決するための手段】
【０００６】
そこで、本発明の画像処理装置は、ワークフローを構成する複数の工程における第１の工程に係る機能モジュールをダウンロードするダウンロード手段と、前記ダウンロード手段により前記第１の工程に係る機能モジュールがダウンロードされた場合、前記機能モジュールを用いた前記第１の工程の実行を開始させる開始手段と、を有し、前記ダウンロード手段は、前記第１の工程に係る機能モジュールを用いた前記第１の工程の処理が実行されている際に、前記複数の工程のうち、前記第１の工程の次の第２の工程に係る機能モジュールをダウンロードする。
【発明の効果】
【０００７】
本発明によれば、装置の資源の有効活用に効果的な機能モジュールのダウンロードに係る機能を提供することができる。
【図面の簡単な説明】
【０００８】
【図１】画像処理システムのシステム構成の一例を示す図である。
【図２】複合機のハードウェア構成の一例を示す図である。
【図３】ソフトウェア構成の一例を示す図である。
【図４】ジョブチケットの構成の一例を示す図である。
【図５】複合機に管理サーバーから機能モジュールをダウンロードする情報処理の流れを説明したフローチャート（その１）である。
【図６】ジョブチケット一覧を生成する情報処理の一例を示すフローチャートである。
【図７】複合機に管理サーバーから機能モジュールをダウンロードする情報処理の流れを説明したフローチャート（その２）である。
【図８】複合機に管理サーバーから機能モジュールをダウンロードする情報処理の流れを説明したフローチャート（その３）である。
【図９】処理工程単位ごとにダウンロードする処理の一例を示すフローチャートである。
【発明を実施するための形態】
【０００９】
以下、本発明の実施形態について図面に基づいて説明する。
【００１０】
＜実施形態１＞
図１は、画像処理システムのシステム構成の一例を示す図である。
本実施形態における画像処理装置の一例としての複合機１０１は、管理サーバー１０２とＬＡＮ１０７で接続されており、互いに通信可能な状態となっている。管理サーバー１０２の内部には、大容量のストレージを保持しており、その中に様々な機能を実現するためのプログラム（以降、機能モジュールと呼ぶ）や、様々な業務フローを定義したジョブチケットや、ユーザー毎の実行権限の情報が記憶されている。実行権限の情報は、複合機１０１の各機能に対してそれぞれ設定可能である。例えば、管理サーバー１０２の管理者等は、原稿読込やボックスへの文書保管、印刷や送信等に対して実行権限の情報を設定できる。図１において、複合機は複合機１０１の１台しか図示していないが、勿論他の複合機が複数台接続されていてもよい。管理サーバー１０２のストレージには、これら複数の複合機の管理情報（複合機の機種名、シリアル番号、装着されているオプションアクセサリや能力等）も記憶されている。これら管理情報は、複合機１０１から要求されたタイミングで、必要な情報だけ取り出されて返信される。
【００１１】
図２は、複合機１０１のハードウェア構成の一例を示す図である。
リーダー装置２０１は、原稿画像を光学的に読み取り、画像データに変換する。リーダー装置２０１は、原稿を読取るための機能を持つスキャナユニット２０２と、原稿用紙を搬送するための機能を持つ原稿給紙ユニット２０３とで構成される。機器構成によっては、原稿給紙ユニット２０３を持たないもの（この場合は所謂圧板と呼ばれるプラテンガラスに原稿を置きセンサにより読み取る）もあり得る。
プリンタ装置２２０は、記録紙を搬送し、その上に画像データを可視画像として印字して装置外に排紙する。プリンタ装置２２０は、複数種の記録紙カセットを持つ給紙ユニット２２３と、画像データを記録紙に転写、定着させるマーキングユニット２２１と、印字された記録紙をソート、ステイプルして機外へ出力する排紙ユニット２２２と、で構成される。
【００１２】
制御装置２１０は、複合機１０１全体の制御を司るもので、ＣＰＵ、ＲＯＭ、ＲＡＭを含む。制御装置２１０は、リーダー装置２０１、プリンタ装置２２０と電気的に接続され、更にＬＡＮ１０７に接続されている。制御装置２１０は、リーダー装置２０１を制御して、原稿の画像データを読込み、プリンタ装置２２０を制御して画像データを記録用紙に出力してコピー機能を提供する。また、制御装置２１０は、リーダー装置２０１から読取った画像データをコードデータに変換し、ＬＡＮ１０７を介してホストコンピュータへ送信するネットワークスキャナ機能を提供する。また、リーダー装置２０１から読取った画像データをＨＤＤ２４０に備えるボックスというストレージサービスに登録するボックススキャン機能を提供する。また、制御装置２１０は、ボックスに登録されている画像データをプリンタ装置２２０に出力するボックスプリント機能を提供する。更には、制御装置２１０は、ホストコンピュータからＬＡＮ１０７を介して受信したコードデータを画像データに変換し、プリンタ装置２２０に出力するプリンタ機能を提供する。
【００１３】
操作部２３０は、液晶表示部と、液晶表示部上に張り付けられたタッチパネル入力装置と、複数個のハードキーと、を有し、ユーザーが様々な操作を行うためのユーザーＩ／Ｆを提供する。タッチパネル又はハードキーにより入力された信号は制御装置２１０に伝えられ、液晶表示部は制御装置２１０から送られてきた表示データを表示するものである。
制御装置２１０のＣＰＵが、制御装置２１０のＲＯＭやＨＤＤ２４０等に記憶されているプログラムを制御装置２１０のＲＡＭ等に読み出して、処理を実行することによって、ソフトウェアの構成及び後述するフローチャートの処理が実現される。また、後述する機能モジュールは、例えば、ＨＤＤ２４０等の記憶領域にダウンロードされ、記憶される。
【００１４】
図３は、ソフトウェア構成の一例を示す図である。
ソフトウェアは、ユーザーインターフェース部３００、ジョブチケット制御部３１０、ロジック部３２０、デバイス制御部３６０から構成される。
ユーザーインターフェース部３００は、ジョブチケットを編集するための画面を、後述するロジック部３２０の各モジュールから受け取り、操作部２３０の液晶パネルに表示したり、ジョブチケットの選択や、実行開始要求を受け付けたりする。
ジョブチケット制御部３１０は、ジョブチケットを実行するにあたって様々な制御を行う部分であり、ジョブチケット解析部３１１、容量チェック部３１２、機能モジュールチェック部３１３、通信部３１４から構成される。
ジョブチケット解析部３１１は、管理サーバー１０２から受け取ったジョブチケットの内容を解析し、ジョブチケットの内容に応じて、ロジック部３２０の各工程に対して実行の指示を出す。
【００１５】
機能モジュールチェック部３１３は、管理サーバー１０２から受け取った機能モジュール一覧から、ＨＤＤ２４０に既にインストール済かどうか存在チェックを行ったり、不要な機能モジュールをＨＤＤ２４０から削除したりする。
容量チェック部３１２は、管理サーバー１０２から機能モジュールをダウンロードしてくる際に、十分な空き容量があるかどうかのチェックを行う。
通信部３１４は、複合機１０１と、管理サーバー１０２との間でジョブチケットに関わるデータをやり取りするために、デバイス制御部３６０を介してネットワーク通信を行う。
【００１６】
ロジック部３２０は、複合機１０１において提供される各機能を実現するための部品が実装されている部分である。ロジック部３２０は、入力工程３３０、編集工程３４０、出力工程３５０、の３つの工程に分かれており、各工程の中には、１つのまとまった単位のサービスを提供するための処理工程が、複数含まれている。
例えば、入力工程には、送信画質スキャン処理工程３３２や文書選択処理工程３３５が含まれる。また、出力工程３５０には、送信処理工程３５２や印刷処理工程３５５等が含まれる。更に、各処理工程には、サービスを実現するための複数の機能モジュールが含まれており、この機能モジュールが本実施形態におけるダウンロードの最小単位となる。例えば、送信画質スキャン処理工程３３２には、スキャン時のカラーモードを指定するためのカラー指定モジュール３３３や読取解像度を指定するための解像度指定モジュール３３４等が含まれる。また、プレビュー処理工程３４２には、入力工程で生成された画像データからサムネイル画像を生成し、操作部２３０に表示するような、サムネイル画像参照モジュール３４３等、各処理工程は少なくとも１つ以上の機能モジュールから構成されている。
なお、入力工程、編集工程、出力工程は、ワークフローを構成する工程の一例であって、本実施形態に係る処理はこれらの工程に限定されるものではない。例えば、入力工程は、第１の工程の一例である。編集工程は、第２の工程の一例である。また、例えば、第１の工程以降の工程とは、第１の工程が、入力工程の場合、入力工程、編集工程、出力工程である。
【００１７】
図４は、ジョブチケットの構成の一例を示す図である。
ジョブチケットは、サービス提供元や、サービス利用側の管理者等が、テキストエディタや専用のジョブチケット作成ツール等を用いて予め作成し、図１の管理サーバー１０２に登録されているものである。
ジョブチケット４００の入力工程を指示する入力工程領域４１０には、少なくとも１つ以上の入力工程４１１、４１２、４１３が記録されており、それぞれの入力工程には、それらを実行するために必要な少なくとも１つ以上の機能４１４、４１５が記録されている。更に、それぞれの機能には、それらの振る舞いを決定するための設定値４１６、４１７、４１８、４１９が少なくとも１つ以上記録されている。
出力工程を指示する出力工程領域４３０は入力工程領域４１０と同様、少なくとも１つ以上の出力工程４３１、４３２、４３３が記録されており、それぞれの出力工程にはそれらを実行するために必要な少なくとも１つ以上の機能４３４、４３５が記録されている。更に、それぞれの機能には、それらの振る舞いを決定するための設定値４３６、４３７、４３８、４３９が少なくとも１つ以上記録されている。
【００１８】
編集工程を指示する領域４２０には、必ず情報が記録されている必要はない。入力工程を実行して生成された画像及びデータを加工・編集することなく、そのまま出力工程で用いる場合、編集工程は必ずしも必要ではない。但し、編集工程を記録する場合は、入力工程領域４１０や出力工程領域４３０と同様の構成で記録される。
ジョブチケット４００に記録されている入力工程、編集工程、出力工程は、図３の各工程３３０、３４０、３５０と対応している。実行すべき具体的な機能（４１４、４１５、４２４、４２５、４３４、４３５）は図３の各機能モジュール（３３３、３３４、３３６、３４３、３５３、３５４）と対応している。但し、これらは必ずしも１対１である必要はない。例えば、送信画質スキャン処理工程３３２内に、スキャン時のカラーモードを指定するためのカラー指定モジュール３３３がある。プリント画質スキャンを実行する際にも、送信画質スキャンと同様カラーモードの指定が必要である。このとき、プリント画質スキャン処理工程３３１内で、カラー指定モジュールを呼び出す必要があるが、このカラー指定モジュールは、送信画質スキャン処理工程で利用されるそれとソフトウェア的に同一のモジュールでもよい。
【００１９】
図５、図７、図８は、本実施形態における複合機１０１に管理サーバー１０２から機能モジュールをダウンロードするための情報処理の流れを説明したフローチャートである。
まず、ユーザーが複合機１０１の操作部２３０に表示される認証画面や、複合機１０１に接続されるカードリーダー等を利用して複合機１０１へログインする。
本実施形態におけるジョブチケット実行アプリケーションの初期画面を開く入力を受付けた、図３のユーザーインターフェース部３００は、通信部３１４にその旨を通知する。
Ｓ５０００において、通信部３１４は、現在ログインしているユーザーの識別子や、複合機１０１を特定可能なデバイス識別子と共に、ジョブチケットの一覧を管理サーバー１０２へリクエストする。
Ｓ５００１において、管理サーバー１０２は、ジョブチケット一覧を生成する。
【００２０】
ジョブチケット一覧を生成する手順は図６を用いて、説明する。
Ｓ８０００において、管理サーバー１０２は、複合機１０１から送られてきたデバイス識別子を基に、自身が所有するデーターベースで管理している複合機１０１の能力（ソフトウェア的なオプションの有無や、ハード的なアクセサリ類の有無）を確認する。
そして、管理サーバー１０２は、その能力の範囲でデバイス識別子で識別される複合機１０１が実行可能なジョブチケットを絞り込む（Ｓ８００１）。
次にＳ８００２において、管理サーバー１０２は、複合機１０１から送られてきたユーザー識別子を基に、自身が管理するユーザー情報からユーザーの権限をチェックする。
そして、管理サーバー１０２は、その権限の範囲内で実行可能なジョブチケットを更に絞り込む（Ｓ８００３）。
最後にＳ８００４において、管理サーバー１０２は、絞り込まれたジョブチケットを基に、ジョブチケットの一覧を生成する。ジョブチケットの一覧とは、ジョブチケットの名称や、コメント、作成日時等、一覧を表示するためのデータであって、ジョブチケットそのものではない。
【００２１】
Ｓ５００２において、管理サーバー１０２からジョブチケット一覧を受け取った複合機１０１の通信部３１４は、操作部２３０へジョブチケット一覧の表示を指示する。操作部２３０にジョブチケット一覧が表示されると、ユーザーはジョブチケット一覧の中から所望のジョブチケットを選択する。
Ｓ５００３において、ユーザーインターフェース部３００を介してジョブチケットを特定した通信部３１４は、そのジョブチケットを特定可能なジョブチケットＩＤを管理サーバー１０２へ送信する。
管理サーバー１０２は、複合機１０１から指定されたジョブチケットＩＤで特定したジョブチケットの内容を解析し、実行に必要な機能モジュールの一覧を生成する（Ｓ５００４）。機能モジュールは、ジョブチケット内の定義値と対応する形で管理サーバー１０２によって管理されている。機能モジュールの一覧には、機能モジュール名や、各機能モジュールを特定可能なＩＤや、サイズ情報、更には、その機能モジュールがどの工程（入力又は編集又は出力）に所属するものなのか含まれている。管理サーバー１０２は、この機能モジュール一覧を複合機１０１へ送信する際、前記ジョブチケットＩＤで特定したジョブチケットも一緒に送信する。
【００２２】
機能モジュール一覧とジョブチケットとを通信部３１４が受け取ると、Ｓ５００５において、機能モジュールチェック部３１３は、一覧に含まれる機能モジュールが複合機１０１のＨＤＤ２４０に既にインストールされているかどうかをチェックする。一覧に含まれる全ての機能モジュールが既に存在する場合は、追加のダウンロードが不要であり、新たにダウンロード用の領域を確保する必要もないため、管理サーバー１０２とのやり取りはここで終了となる。１つでも存在しない機能モジュールがある場合、Ｓ５００６において、機能モジュールチェック部３１３は、不足している機能モジュールの一覧を生成する。
次にＳ５００７において、容量チェック部３１２は、Ｓ５００６で生成した不足モジュールを全てダウンロード可能な空き領域がＨＤＤ２４０にあるかどうかをチェックする。容量チェック部３１２は、Ｓ５００６で生成した不足モジュールを全てダウンロード可能な十分な空き容量がある場合はＡ、全てダウンロードする空き領域がない場合はＢへ処理を遷移させる。それぞれの詳細な処理の流れは、図７、図８で説明する。
複合機１０１の通信部３１４は、Ａ、Ｂのそれぞれの処理の中で、管理サーバー１０２に対し、機能モジュールのダウンロード要求を行う。管理サーバー１０２は、それぞれの要求に応じて、少なくとも１つ以上の機能モジュールを少なくとも一回以上のやり取りで複合機１０１へ送信する（Ｓ５００８）。
【００２３】
図７は、図５の容量チェック（Ｓ５００７）において、十分な空き領域が存在して、Ａに遷移した場合の情報処理の流れを説明したフローチャートである。
空き容量が十分にある場合、通信部３１４は、機能モジュールチェック部３１３が生成した不足モジュール一覧と共に、一括ダウンロード要求を管理サーバー１０２へ送信する（Ｓ６０００）。
管理サーバー１０２は、リクエストされた不足モジュールを、入力工程で使用するモジュールから順に複合機１０１へ送信する。
ジョブチケット解析部３１１は、入力工程に必要な機能モジュールの全てがダウンロードされたかどうか、定期的に通信部３１４へ問い合わせる。そして、ジョブチケット解析部３１１は、問い合わせの結果に基づいて、入力工程に必要な機能モジュールの全てがダウンロードされたかどうかを判定する（Ｓ６００１）。全てがダウンロードされると（Ｓ６００１においてＹｅｓ）、ジョブチケット解析部３１１は、ジョブチケットの入力工程の処理を開始する（Ｓ６００２）。例えば、ジョブチケットに送信画質スキャン処理工程３３２と文書選択処理工程３３５とが記録されており、図３の解像度指定モジュール３３４と文書参照モジュール３３６とが不足していた場合を例に説明を行う。この場合、ジョブチケット解析部３１１は、解像度指定モジュール３３４と文書参照モジュール３３６との２つの機能モジュールがダウンロードされるのを待ってから、ジョブチケットの実行を開始する。ジョブチケット解析部３１１は、入力工程の処理を開始すると、ジョブチケットの記録内容にしたがって各機能モジュールを呼び出す。
【００２４】
入力工程の実行中に、並行して次工程に必要な機能モジュールのダウンロードも継続される。
ジョブチケット解析部３１１は、入力工程の処理が終了すると、次工程に必要な機能モジュールの全てが揃っているかどうかチェックする（Ｓ６００３）。揃っていなければ（Ｓ６００３においてＮｏ）、ジョブチケット解析部３１１は、定期的に通信部３１４へ問い合わせる。そして、ジョブチケット解析部３１１は、次工程に必要な機能モジュールの全てがダウンロードされると（Ｓ６００３においてＹｅｓ）、前工程の処理（今の例では、入力工程の処理）が終了しているかどうかをチェックする（Ｓ６００４）。前工程の処理が終了すると（Ｓ６００４においてＹｅｓ）、ジョブチケット解析部３１１は、ジョブチケットに記録されている全ての工程の処理が実施されたかどうかをチェックする（Ｓ６００５）。まだ実行すべき工程が残っている場合（Ｓ６００５においてＮｏ）、ジョブチケット解析部３１１は、ジョブチケットが異常終了したのかどうかを確認する（Ｓ６００８）。ここで言う異常終了とは、ユーザーによるジョブチケットの処理中止や何らかのエラーによる強制終了を指す。異常終了でないと判断すると（Ｓ６００８においてＮｏ）、Ｓ６０１０において、ジョブチケット解析部３１１は、次工程の処理を開始する。
【００２５】
ジョブチケット解析部３１１は、ジョブチケットの実行に必要な機能モジュールのダウンロードと並行して次工程で必要な機能モジュールのダウンロードが完了しているか（Ｓ６００３）、前工程の処理が終了しているか（Ｓ６００４）、のチェックを繰り返す。このようにして、ジョブチケット解析部３１１は、ジョブチケットの全工程の処理を進めていく。
Ｓ６００８において異常終了であると判断した場合であってもジョブチケット解析部３１１はジョブチケットの実行に必要な機能モジュールのダウンロードを継続し、全ての機能モジュールのダウンロードが完了した場合（Ｓ６００９）、図７に示す処理を終了する。
ここで、ジョブチケットが異常終了したにも関わらず、ダウンロード済の機能モジュールも、ジョブチケットも削除しないまま、機能モジュールのダウンロードを継続するのは、以下の理由による。即ち、ユーザーが異常終了に係る問題を解決してから直ぐに処理をリトライする可能性が高く、ＨＤＤ２４０の空き容量も十分にあると判断されているためである。
【００２６】
ジョブチケットの全工程の処理が正常終了した場合（Ｓ６００５においてＹｅｓ）、Ｓ６００６において、ジョブチケット解析部３１１は、ジョブチケットを削除する。そして、Ｓ６００７において、機能モジュールチェック部３１３は、図５のＳ５００６で生成した不足モジュール一覧に列挙されている機能モジュールを削除する。ここで、不足モジュールとして列挙されていた機能モジュールのみを削除するのは、以下の理由からである。つまり、既にダウンロード済であった機能モジュールについては、他のユーザーや他のジョブチケットで必要な機能モジュールであり、何らかの理由により複合機１０１のＨＤＤ２４０に保存されたままとなっているため、不用意に消去しない方がよいからである。ジョブチケット及び機能モジュールの削除を以って、ジョブチケットの実行が完了する。
【００２７】
図８は、図５の容量チェック（Ｓ５００７）において、十分な空き領域がなく、全ての不足モジュールを一括でダウンロードできない場合の、Ｂの情報処理の流れを説明したフローチャートである。
十分な空き容量がない場合、容量チェック部３１２は、図５のＳ５００６で検出した不足モジュールのうち、各工程で使用する機能モジュールの合計サイズを算出し、各工程のサイズを比較し、一番大きいサイズ（最大サイズ）を導き出す（Ｓ７０００）。そして、容量チェック部３１２は、最大サイズ以上の空き容量があるかどうかをチェックする（Ｓ７００１）。最大サイズ以上の空き容量がない場合（Ｓ７００１において無）、機能モジュールチェック部３１３は、現状、ＨＤＤ２４０に保存されている機能モジュールを削除する（Ｓ７００２）。ここで機能モジュールチェック部３１３が削除すべき機能モジュールは、現在実行しようとしているジョブチケットで利用しない機能モジュールである。更に、機能モジュールチェック部３１３は、出力工程用の機能モジュールから優先的に削除していく。機能モジュールチェック部３１３は、最大サイズ以上の容量が空くまで、削除を繰り返す。
最大サイズを有する一工程分の空き容量が確保できたら、Ｓ７００３において、通信部３１４は、管理サーバー１０２に対して、入力工程用機能モジュールのダウンロード要求を出す。
【００２８】
ジョブチケット解析部３１１は、入力工程に必要な機能モジュールの全てがダウンロードされたかどうか、定期的に通信部３１４へ問い合わせ、問い合わせの結果に基づき、全てがダウンロードされたかどうか判定する（Ｓ７００４）。全てがダウンロードされると（Ｓ７００４においてＹｅｓ）、ジョブチケット解析部３１１は、ジョブチケットの入力工程の処理を開始する（Ｓ７００５）。
ジョブチケット解析部３１１が、入力工程の処理終了を検知したか否か判定する（Ｓ７００６）。入力工程の処理終了を検知すると（Ｓ７００６においてＹｅｓ）、Ｓ７００７において、機能モジュールチェック部３１３は、先の工程でダウンロードした機能モジュールを全て削除する。Ｓ７００６の判定の処理は、待機の処理の一例である。
前工程の処理が終了して、前工程の機能モジュールが削除されると、Ｓ７００８において、通信部３１４は、次工程で使用する機能モジュールのダウンロードを管理サーバー１０２に対して要求する。ジョブチケット解析部３１１は、次工程に必要な機能モジュールの全てがダウンロード済かどうかチェックし、揃っていなければ定期的に通信部３１４へ問い合わせる。そして、ジョブチケット解析部３１１は、問い合わせの結果に基づき、次工程に必要な機能モジュールの全てがダウンロード済かどうか判定する（Ｓ７００９）。全てがダウンロードされるのを待ってから（Ｓ７００９においてＹｅｓ）、ジョブチケット解析部３１１は、次工程の処理を開始する（Ｓ７０１０）。
【００２９】
ジョブチケット解析部３１１は、次工程の処理終了を検知したか否か判定する（Ｓ７０１１）。次工程の処理終了を検知すると（Ｓ７０１１においてＹｅｓ）、Ｓ７０１２において、ジョブチケット解析部３１１は、ジョブチケットに記録されている全ての工程の処理が終了したかどうかチェックする。全工程が終了していない場合（Ｓ７０１２においてＮｏ）、Ｓ７０１５において、ジョブチケット解析部３１１は、ジョブチケットが異常終了したのかどうかをチェックする。異常終了でなければ（Ｓ７０１５においてＮｏ）、ジョブチケット解析部３１１は、まだジョブチケットの実行中であると判断し、Ｓ７００７へ遷移する。異常終了していれば（Ｓ７０１５においてＹｅｓ）、機能モジュールチェック部３１３は、現在ダウンロード済の機能モジュールを削除する（Ｓ７０１６）。
機能モジュールが削除されると、通信部３１４は、改めて入力工程に必要な機能モジュールのダウンロード要求を、管理サーバー１０２へ送信する（Ｓ７０１７）。
ジョブチケットが異常終了した場合、複合機１０１では、問題が解決されて直ぐにリトライされる可能性が高いため、スムーズにジョブを再開できるよう、入力工程の機能モジュールをダウンロードしておく。更に、複合機１０１は、ジョブチケットも削除しない。
ジョブチケット解析部３１１は、入力工程の機能モジュールがダウンロードされるのを待ってから（Ｓ７０１８）、ジョブチケットの実行を完了する。
【００３０】
全工程の処理が終了した場合（Ｓ７０１２においてＹｅｓ）、Ｓ７０１３において、ジョブチケット解析部３１１は、ジョブチケットを削除する。そして、Ｓ７０１４において、機能モジュールチェック部３１３は、最終工程でダウンロードした機能モジュールを全て削除する。ジョブチケットの削除及び機能モジュールの削除を以って、ジョブチケットの実行が完了となる。
以上のように、複合機１０１の限られたＨＤＤ資源を有効活用しながら、複雑なジョブチケットを実行する事が可能である。
本実施形態において、複合機１０１と通信を行う管理サーバーは１台として説明したが、管理対象に応じて、複数のサーバーと通信を行う構成でもよい。例えば、ユーザーのアクセス権等を管理するためのユーザー情報管理サーバー、ジョブチケットの管理を行うためのジョブチケット管理サーバー等、管理サーバーを複数設置する構成でもよい。更に、複合機の能力や固体情報を管理するためのデバイス管理サーバー、機能モジュールの管理を行うためのプログラム管理サーバー等、複数設置する構成でもよい。
【００３１】
＜実施形態２＞
より速やかにジョブチケットの実行を開始する方法を、図９のフローチャートを用いて説明する。
実施形態１では、少なくとも入力工程で利用する機能モジュールが全てダウンロードされてから、ジョブチケットの実行を開始していたが、実施形態２では、処理工程単位とする。また、この方法は、実施形態１における一括ダウンロードタイプ（図７）と工程別ダウンロードタイプ（図８）との両方に適用可能である。
まず、入力工程の機能モジュールを管理サーバー１０２へ要求する前に、Ｓ９０００において、容量チェック部３１２は、処理工程別のモジュールサイズを算出する。
Ｓ９００１において、容量チェック部３１２は、Ｓ９０００で算出した値を処理工程ごとに比較する。
通信部３１４は、その結果を受けて、最小サイズの処理工程から順にダウンロード要求を管理サーバー１０２へ送信する（Ｓ９００２）。
【００３２】
例えば、図３の機能モジュール３３３、３３４、３３６のサイズがそれぞれ１Ｋｂｙｔｅ、２Ｋｂｙｔｅ、５Ｋｂｙｔｅと仮定する。その場合、送信画質スキャン処理工程３３２として必要な容量は、３Ｋｂｙｔｅであり、文書選択処理工程３３５として必要な容量は５Ｋｂａｙｔｅである。つまり、送信画質スキャン処理工程３３２の方が、文書選択処理工程３３５よりもサイズが小さいため、通信部３１４は、送信画質スキャン処理工程で使用する機能モジュール３３３、３３４から先にダウンロード要求を出す。そして、それらのダウンロードが終了した時点で、ジョブチケット解析部３１１は、ジョブチケットの実行を開始する。
この手法は、入力工程に限らず、編集工程、出力工程の機能モジュールをダウンロードする前に実施する事で、各工程の開始を早める事が可能である。
【００３３】
＜その他の実施形態＞
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（又はＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【００３４】
以上、上述した実施形態によれば、ユーザーが選択したジョブチケットの記録内容に応じて、確実に使用する機能モジュールのみをダウンロードするため、複合機の限られたＨＤＤ資源を無駄なく利用できる。
また、各工程の実行が終了する度に、その工程で利用した機能モジュールを削除してから、次工程で使用する機能モジュールをダウンロードするため、ＨＤＤの容量が少なくても、ジョブチケットの実行が可能となる。
更に、ジョブチケットの各工程の実行開始タイミングを、一処理工程分のダウンロード完了時とする事で、より早くジョブチケットの実行を開始する事が可能である。
よって、装置の資源の有効活用に効果的な機能モジュールのダウンロードに係る機能を提供することができる。
【００３５】
以上、本発明の好ましい実施形態について詳述したが、本発明は係る特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
【図１】
2014164680.tif 000003
【図２】
2014164680.tif 000004
【図３】
2014164680.tif 000005
【図４】
2014164680.tif 000006
【図５】
2014164680.tif 000007
【図６】
2014164680.tif 000008
【図７】
2014164680.tif 000009
【図８】
2014164680.tif 000010
【図９】
2014164680.tif 000011