(57)【要約】【課題】処理部品の組み合わせによってアプリケーションを実現するにあたり、適切な操作性を提供することのできる画像処理装置、情報処理システム、アプリケーション登録方法及びアプリケーション登録プログラムの提供を目的とする。【解決手段】画像情報の入力処理、加工処理、又は出力処理を実行し、その組み合わせにより前記画像情報に関するアプリケーションを実現する処理部品と、当該画像形成装置において利用可能な前記処理部品の一覧を取得し、前記処理部品の一覧の中から前記処理部品を選択させる画面を表示装置に表示させ、選択された前記処理部品の組み合わせに識別名を付加して当該画像形成装置に登録する登録手段とを有することにより上記課題を解決する。【選択図】図２
2008011500.tif 000002
【特許請求の範囲】
【請求項１】
画像情報の入力処理、加工処理、又は出力処理を実行し、その組み合わせにより前記画像情報に関するアプリケーションを実現する処理部品と、
当該画像処理装置において利用可能な前記処理部品の一覧を取得し、前記処理部品の一覧の中から前記処理部品を選択させる画面を表示装置に表示させ、選択された前記処理部品の組み合わせに識別名を付加して当該画像処理装置に登録する登録手段とを有することを特徴とする画像処理装置。
【請求項２】
前記登録手段は、前記画面において、選択された前記処理部品の実行順を指定させることを特徴とする請求項１記載の画像処理装置。
【請求項３】
前記登録手段は、選択された前記処理部品の組み合わせに対して前記識別名を入力させることを特徴とする請求項１又は２記載の画像処理装置。
【請求項４】
前記登録手段は、選択された処理部品に基づいて自動生成された識別名を付加することを特徴とする請求項１又は２記載の画像処理装置。
【請求項５】
前記登録手段は、更に、ネットワークを介して接続する他の画像処理装置より、前記他の画像処理装置において利用可能な前記処理部品の一覧を取得し、
当該画像処理装置において利用可能な処理部品と前記他の画像処理装置において利用可能な処理部品との一覧の中から前記処理部品を選択させる画面を前記表示装置に表示させ、
選択された前記処理部品の組み合わせに識別名を付加して当該画像処理装置と前記他の画像処理装置とに登録することを特徴とする請求項１乃至４いずれか一項記載の画像処理装置。
【請求項６】
前記登録手段は、前記画面において、選択された前記処理部品間の処理の同期のタイミングを指定させ、前記同期のタイミングを当該画像処理装置に登録することを特徴とする請求項１乃至５いずれか一項記載の画像処理装置。
【請求項７】
前記登録手段は、選択された前記処理部品の属性情報に基づいて前記処理部品の組み合わせによるアプリケーションの実行の可否を判定し、実行が可能であると判定される場合に前記選択された前記処理部品の組み合わせに前記識別名を付加して当該画像処理装置に登録することを特徴とする請求項１乃至６いずれか一項記載の画像処理装置。
【請求項８】
前記登録手段は、前記アプリケーションの実行が不可能であると判定される場合は、その旨を示す画面を前記表示装置に表示させることを特徴とする請求項７記載の画像処理装置。
【請求項９】
前記属性情報は、前記処理部品が扱える画像情報の形式であることを特徴とする請求項７又は８記載の画像処理装置。
【請求項１０】
画像情報の入力処理、加工処理、又は出力処理を実行する処理部品の組み合わせにより前記画像情報に関するアプリケーションを実現する一台以上の画像処理装置と、
前記画像処理装置とネットワークを介して接続し、前記画像処理装置において利用可能な前記処理部品の一覧を取得し、前記処理部品の一覧の中から前記処理部品を選択させる画面を表示装置に表示させ、選択された前記処理部品の組み合わせに識別名を付加して前記画像処理装置に登録する情報処理装置とを有することを特徴とする情報処理システム。
【請求項１１】
画像情報の入力処理、加工処理、又は出力処理を実行し、その組み合わせによって前記画像情報に関するアプリケーションを実現する処理部品のうち、当該画像処理装置において利用可能な前記処理部品の一覧を取得する一覧取得手順と、
前記処理部品の一覧の中から前記処理部品を選択させる画面を表示装置に表示させる一覧表示手順と、
選択された前記処理部品の組み合わせに識別名を付加して当該画像処理装置に登録する登録手順とを有することを特徴とするアプリケーション登録方法。
【請求項１２】
前記一覧表示手順は、前記画面において、選択された前記処理部品の実行順を指定させることを特徴とする請求項１１記載のアプリケーション登録方法。
【請求項１３】
選択された前記処理部品の組み合わせに対して前記識別名を入力させる識別名入力手順を有することを特徴とする請求項１１又は１２記載のアプリケーション登録方法。
【請求項１４】
選択された処理部品に基づいて自動生成された識別名を付加することを特徴とする請求項１１又は１２記載のアプリケーション登録方法。
【請求項１５】
ネットワークを介して接続する他の画像処理装置より、前記他の画像処理装置において利用可能な前記処理部品の一覧を取得する第二の一覧取得手順を有し、
前記一覧表示手順は、当該画像処理装置において利用可能な処理部品と前記他の画像処理装置において利用可能な処理部品との一覧の中から前記処理部品を選択させる画面を前記表示装置に表示させ、
選択された前記処理部品の組み合わせに識別名を付加して当該画像処理装置と前記他の画像処理装置とに登録することを特徴とする請求項１１乃至１４いずれか一項記載のアプリケーション登録方法。
【請求項１６】
画像情報の入力処理、加工処理、又は出力処理を実行する処理部品の組み合わせにより前記画像情報に関するアプリケーションを実現する一台以上の画像処理装置と、前記画像処理装置とネットワークを介して接続する情報処理装置とを含む情報処理システムにおけるアプリケーション登録方法であって、
前記情報処理装置は、前記画像処理装置において利用可能な前記処理部品の一覧を取得する一覧取得手順と、
前記処理部品の一覧の中から前記処理部品を選択させる画面を表示装置に表示させる一覧表示手順と、
選択された前記処理部品の組み合わせに識別名を付加して前記画像処理装置に登録する登録手順とを有することを特徴とするアプリケーション登録方法。
【請求項１７】
請求項１１乃至１５いずれか一項記載のアプリケーション登録方法をコンピュータに実行させるためのアプリケーション登録プログラム。
【請求項１８】
請求項１６記載のアプリケーション登録方法をコンピュータに実行させるためのアプリケーション登録プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置、情報処理システム、アプリケーション登録方法及びアプリケーション登録プログラムに関する。
【背景技術】
【０００２】
近年におけるプリンタ、コピー機、スキャナ、ファクシミリ、又はこれらの機能を一台の筐体で実現する複合機等の画像形成装置では、メモリ等の制限は厳しいものの、汎用的なコンピュータと同様にＣＰＵを備え、各機能はアプリケーションの制御によって実現されるようになっている。
【０００３】
例えば、特許文献１に記載された画像形成装置では、各アプリケーションから共通的に利用される機能をプラットフォームとして備えており、当該プラットフォームのＡＰＩを利用してアプリケーションを実装することができる。かかる画像形成装置によれば、共通的に利用される機能がプラットフォームとして備えられていることにより、アプリケーションごとに重複した機能の実装が回避され、アプリケーション全体の開発効率を向上させることができる。
【０００４】
しかしながら、一般的に、共通的に利用されるＡＰＩを備えたプラットフォームについては、当該プラットフォームによって提供される機能又はインタフェースの粒度が適切に設計されていないとアプリケーションの開発効率の向上が期待以上に図れない場合がある。
【０００５】
例えば、当該粒度が小さ過ぎると、単純なサービスを提供するアプリケーションであるにもかかわらず、多くのＡＰＩの呼び出しが必要とされ、そのソースコードは複雑なものとなってしまう。
【０００６】
一方、当該粒度が大き過ぎると、或るインタフェースによって提供されている機能の一部について変更を加えたサービスを提供するアプリケーションを実装したい場合、当該プラットフォーム内を修正しなければならず、開発工数の増加を招いてしまいかねない。特に、プラットフォーム内における各モジュールの依存関係が強い場合は、プラットフォームに新規機能を追加するだけでなく、既存部分の修正も必要とされる場合があり、事態はより複雑となる。
【０００７】
また、既存のアプリケーションによって提供されているサービスの一部（例えば、画像の入力処理）を変更したアプリケーションを実装したい場合、当該一部以外の部分については既存のアプリケーションを呼び出すといったようなことは出来ない。したがって、改めてソースコードを記述して新たなアプリケーションを実装しなければならない。
【特許文献１】特許第３６７９３４９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
以上のような背景から、本出願人は、画像形成装置において実行される各アプリケーションを、データの入力処理、データの加工処理、データの出力処理の組み合わせによって構成されるものと考え、その考えに基づいた新たなフレームワークの構築を検討している。例えば、コピーを実行するコピーアプリは、スキャナによる画像データの入力処理、集約等の加工処理、及びプロッタによる出力処理等によって構成されるものと考えることができる。また、クライアントＰＣからの印刷要求を処理するプリンタアプリは、ネットワークを介した印刷データの入力処理（受信処理）、印刷データのレンダリング等の加工処理、プロッタによる出力処理等によって構成されるものと考えることができる。アプリケーションの構成要素をこのように分類し、かかる構成要素（以下「処理部品」という。）を単位として機能の追加又は削除等を可能とすれば、アプリケーション単位で機能の追加又は削除等が可能な場合にくらべて、開発効率を向上させることができると共に、ユーザに対して、柔軟なサービスを提供することができる。
【０００９】
すなわち、開発効率の向上という点については、スキャナアプリとコピーアプリとでは、プロッタによる出力処理を実行する処理部品を共通に用いることができる。また、スキャナアプリとＦＡＸアプリとでは、スキャナによる画像データの入力処理を実行する処理部品を共通に用いることができる。また、ユーザに対するサービスの柔軟性という点については、画像形成装置の利用時に、入力処理、加工処理、出力処理を実行させる処理部品をユーザに選択させることにより、ユーザの任意に応じてバリエーションに富んだサービスを提供することができる。
【００１０】
しかし、画像形成装置の利用時にユーザに処理部品を一つずつ選択させるといったインタフェースは、柔軟性がある反面、一つの完結したアプリケーション（例えば、コピーアプリケーション等）を実行するために、入力が要求されるステップが増加し、操作性が悪化してしまう可能性が考えられる。
【００１１】
本発明は、上記の点に鑑みてなされたものであって、処理部品の組み合わせによってアプリケーションを実現するにあたり、適切な操作性を提供することのできる画像処理装置、情報処理システム、アプリケーション登録方法及びアプリケーション登録プログラムの提供を目的とする。
【課題を解決するための手段】
【００１２】
そこで上記課題を解決するため、本発明は、画像情報の入力処理、加工処理、又は出力処理を実行し、その組み合わせにより前記画像情報に関するアプリケーションを実現する処理部品と、当該画像処理装置において利用可能な前記処理部品の一覧を取得し、前記処理部品の一覧の中から前記処理部品を選択させる画面を表示装置に表示させ、選択された前記処理部品の組み合わせに識別名を付加して当該画像処理装置に登録する登録手段とを有することを特徴とする。
【００１３】
また、本発明は、前記登録手段は、前記画面において、選択された前記処理部品の実行順を指定させることを特徴とする。
【００１４】
また、本発明は、前記登録手段は、選択された前記処理部品の組み合わせに対して前記識別名を入力させることを特徴とする。
【００１５】
また、本発明は、前記登録手段は、選択された処理部品に基づいて自動生成された識別名を付加することを特徴とする。
【００１６】
また、本発明は、前記登録手段は、更に、ネットワークを介して接続する他の画像処理装置より、前記他の画像処理装置において利用可能な前記処理部品の一覧を取得し、当該画像処理装置において利用可能な処理部品と前記他の画像処理装置において利用可能な処理部品との一覧の中から前記処理部品を選択させる画面を前記表示装置に表示させ、選択された前記処理部品の組み合わせに識別名を付加して当該画像処理装置と前記他の画像処理装置とに登録することを特徴とする。
【００１７】
また、本発明は、前記登録手段は、前記画面において、選択された前記処理部品間の処理の同期のタイミングを指定させ、前記同期のタイミングを当該画像処理装置に登録することを特徴とする。
【００１８】
また、本発明は、前記登録手段は、選択された前記処理部品の属性情報に基づいて前記処理部品の組み合わせによるアプリケーションの実行の可否を判定し、実行が可能であると判定される場合に前記選択された前記処理部品の組み合わせに前記識別名を付加して当該画像処理装置に登録することを特徴とする。
【００１９】
また、本発明は、前記登録手段は、前記アプリケーションの実行が不可能であると判定される場合は、その旨を示す画面を前記表示装置に表示させることを特徴とする。
【００２０】
また、本発明は、前記処理部品が扱える画像情報の形式であることを特徴とする。
【００２１】
また、上記課題を解決するため、本発明は、画像情報の入力処理、加工処理、又は出力処理を実行する処理部品の組み合わせにより前記画像情報に関するアプリケーションを実現する一台以上の画像処理装置と、前記画像処理装置とネットワークを介して接続し、前記画像処理装置において利用可能な前記処理部品の一覧を取得し、前記処理部品の一覧の中から前記処理部品を選択させる画面を表示装置に表示させ、選択された前記処理部品の組み合わせに識別名を付加して前記画像処理装置に登録する情報処理装置とを有することを特徴とする。
【００２２】
このような画像処理装置又は情報処理システムにでは、処理部品の組み合わせによってアプリケーションを実現するにあたり、適切な操作性を提供することができる。
【発明の効果】
【００２３】
本発明によれば、処理部品の組み合わせによってアプリケーションを実現するにあたり、適切な操作性を提供することのできる画像処理装置、情報処理システム、アプリケーション登録方法及びアプリケーション登録プログラムを提供することができる。
【発明を実施するための最良の形態】
【００２４】
以下、図面に基づいて本発明の実施の形態を説明する。図１は、第一の実施の形態における画像処理システムの構成例を示す図である。図１において、画像処理システム１は、画像形成装置１０ａ及び１０ｂ等、一台以上の画像形成装置（以下、総称する場合「画像形成装置１０」という。）と、管理サーバ２０と、クライアントＰＣ３０ａ及び３０ｂ等、一台以上のクライアントＰＣ（以下、総称する場合「クライアントＰＣ３０」という。）と等を構成要素としている。各構成要素は、ＬＡＮ（Local Area Network）等のネットワークによって接続されている。
【００２５】
画像形成装置１０は、コピー機、プリンタ又は複合機等の画像形成装置であり、画像処理装置又は画像処理装置を含む機器の一例である。画像形成装置１０は、その出荷後にＪａｖａ（登録商標）言語又はＣ言語等によって開発されたアプリケーションの追加又は削除等が可能である。本実施の形態でアプリケーションとは、画像形成装置１０が、ユーザに対して提供する一つのまとまった単位（要求が入力されて最終的な出力が得られるまで）のサービスを提供するソフトウェアをいう。かかる意味において、厳密には、画像形成装置１０は、アプリケーションを構成する機能単位での追加又は削除等が可能である。本発明者は、画像形成装置のアプリケーションは、データの入力処理、加工処理、及び出力処理等によって構成されるものと考える。アプリケーションの構成要素をこのように分類し、かかる構成要素（以下「処理部品」という。）を単位として機能の追加又は削除等を可能とすれば、アプリケーション単位で機能の追加又は削除等が可能な場合にくらべて、開発効率を向上させることができるとともに、ユーザに対して、柔軟なサービスを提供することができる。なお、本実施の形態において、入力処理を実行する処理部品を特に入力部品という。また、加工処理を実行する処理部品を特に加工部品という。また、出力処理を実行する処理部品を特に出力部品という。
【００２６】
管理サーバ２０は、一台以上の画像形成装置１０を統合的に管理するための機能が実装された汎用的なコンピュータである。クライアントＰＣ３０は、画像形成装置１０又は管理サーバ２０に対する操作手段（ユーザインタフェース）を提供するための汎用的なコンピュータである。
【００２７】
図２は、第一の実施の形態における画像処理システムの機能構成例を示す図である。なお、図２においては、便宜上、本実施の形態の説明に必要な構成要素のみが示されている。図２において、画像形成装置１０は、ハードウェアとして、操作パネル１１、ＨＤＤ（Hard Disk Drive）１２、プロッタ１３、画像情報加工装置１４、及びスキャナ１５等を有する。また、画像形成装置１０は、ソフトウェアによって構成される機能として、通信部１０１、操作パネル制御部１０２、フロー登録部１０３、フロー解析処理部１０４、フロー記憶部１０５、ＨＤＤ制御部１０６、プロッタ制御部１０７、画像情報加工装置制御部１０８、及びスキャナ制御部１０９等を有する。
【００２８】
通信部１０１は、ネットワークを介した通信を制御する。操作パネル制御部１０２は、操作パネル１１を介した情報の入出力制御を行う。フロー登録部１０３は、ユーザにジョブフローを登録させるための処理を制御する。ここで、ジョブフローとは、アプリケーションにおける処理の流れを制御するための情報をいい、処理部品の組み合わせとその実行順を示す情報等によって構成される。すなわち、本実施の形態における画像形成装置１０は、予め、処理部品の組み合わせ等をジョブフローとして登録することが可能であり、画像形成装置１０のユーザは、その利用時にはジョブフローを選択することでサービスの提供を受けることができる。フロー記憶部１０５は、フロー登録部１０３が登録させたジョブフローを所定の形式でＨＤＤ１２に記録し、管理する。フロー解析処理部１０４は、ユーザによって実行が指示されたジョブフローの実行制御等を行う。フロー解析処理部１０４は、また、フロー登録部１０３がジョブフローを登録させる際に必要となる、画像形成装置１０において利用可能な処理部品の一覧の提供等を行う。
【００２９】
ＨＤＤ制御部１０６、プロッタ制御部１０７、画像情報加工装置制御部１０８，及びスキャナ制御部１０９等は、処理部品に相当する。ＨＤＤ制御部１０６は、ＨＤＤ１２へのデータ登録（出力）や、ＨＤＤ１２からのデータの読み込み（入力）を行う処理部品である。プロッタ制御部１０７は、画像データをプロッタ１３に出力させる処理部品である。画像情報加工装置制御部１０８は、画像変換（加工）を画像情報加工装置１４に実行させる処理部品である。スキャナ制御部１０９は、スキャナ１５に原稿を読み取らせ、画像データを入力するための処理部品である。すなわち、本実施の形態において、ジョブフローは、ＨＤＤ制御部１０６、プロッタ制御部１０７、画像情報加工装置制御部１０８、又はスキャナ制御部１０９等によって提供される機能の組み合わせによって構成される。なお、上述したように、画像形成装置１０は、処理部品単位で追加又は削除等が可能である。したがって、図中に示される以外の処理部品を運用に応じて適宜開発し、インストールすることが可能である。
【００３０】
一方、管理サーバ２０は、ソフトウェアによって構成される機能として通信部２０１及びフロー登録部２０２等を有する。これらは、画像形成装置１０における通信部１０１又はフロー登録部１０３と同様の機能を実現する。
【００３１】
また、クライアントＰＣ３０は、ソフトウェアによって構成される機能として通信部３０１及びリモートＵＩ３０２等を有する。通信部３０１は、ネットワークを介した通信を制御する。リモートＵＩ３０２は、ネットワークを介して画像形成装置１０又は管理サーバ２０等を操作するためのユーザインタフェースを提供する。リモートＵＩ３０２は、本実施の形態では汎用的なＷｅｂブラウザが相当する。但し、専用のアプリケーションによってリモートＵＩ３０２を構成してもよい。
【００３２】
以下、画像処理システム１の処理手順について説明する。まず、ジョブフローの登録時において実行される処理手順について説明する。図３及び図４は、一台の画像形成装置に対するジョブフローの登録処理の処理手順を説明するためのシーケンス図である。
【００３３】
クライアントＰＣ３０において、ユーザが、リモートＵＩ３０２に特定の画像形成装置１０（例えば、画像形成装置１０ａ）のジョブフロー生成画面の表示を指示すると、リモートＵＩ３０２は、ジョブフロー生成画面の取得を通信部３０１に要求する（Ｓ１０１）。ここで、ジョブフロー生成画面とは、処理部品を組み合わせることによりジョブフローを生成し、登録するための画面をいう。また、ユーザによるジョブフロー生成画面の表示指示は、例えば画像形成装置１０によって提供されるホームページ等において入力され、その際に、ジョブフローの登録先の画像形成装置１０が選択される。ここでは、画像形成装置１０ａが選択されたこととする。通信部３０１は、画像形成装置１０ａの通信部１０１にジョブフロー生成画面の送信を要求する（Ｓ１０２）。
【００３４】
通信部１０１は、クライアントＰＣ３０からの要求に応じ、フロー登録部１０３を呼び出し、ジョブフロー生成画面の生成を要求する（Ｓ１０３）。フロー登録部１０３は、ジョブフロー生成画面の生成に必要な情報として、画像形成装置１０ａにおいて利用可能な処理部品の一覧をフロー解析処理部１０４に要求する（Ｓ１０４）。すなわち、各画像形成装置１０には、当該画像形成装置１０において利用可能な処理部品の一覧（処理部品一覧）が、例えばＨＤＤ１２に保存されている。したがって、フロー解析処理部１０４は、保存されている処理部品一覧を取得し、フロー登録部１０３に返却する（Ｓ１０５）。なお、処理部品一覧は、処理部品の追加又は削除（インストール又はアンインストール）に応じて更新される。フロー登録部１０３は、ジョブフロー生成画面を表示させるＨＴＭＬデータを、処理部品一覧を用いて生成し（Ｓ１０６）、処理部品一覧が表示内容として含まれているＨＴＭＬデータを通信部１０１に出力する（Ｓ１０７）。
【００３５】
当該ＨＴＭＬデータは、通信部１０１によってクライアントＰＣ３０に送信され、クライアントＰＣ３０の通信部３０１によって受信される（Ｓ１０８）。通信部３０１が、受信したＨＴＭＬデータをリモートＵＩ３０２に出力すると（Ｓ１０９）、リモートＵＩ３０２は、当該ＨＴＭＬデータに基づいてジョブフロー生成画面をクライアントＰＣ３０の表示装置に表示させる（Ｓ１１０）。
【００３６】
図５は、ジョブフロー生成画面の表示例を示す図である。図５において、（Ａ）は、ジョブフロー生成画面５１０の初期状態（表示直後の状態）を示し、（Ｂ）は、ユーザによってジョブフローが生成（又は定義）された状態を示す。
【００３７】
ジョブフロー生成画面５１０は主に、ジョブフロー生成領域５０１と処理部品一覧領域５０２とより構成されている。処理部品一覧領域５０２は、画像形成装置１０ａにおいて利用可能な処理部品のアイコン又はボタン等の一覧が表示される領域である。ジョブフロー生成領域５０１は、処理部品一覧領域５０２において表示されている処理部品のアイコン（処理部品アイコン）を用いて一つのジョブフローを生成させるための領域である。図中（Ｂ）に示されるように、ジョブフローの生成は、処理部品一覧領域５０２における処理部品アイコンをドラッグ・アンド・ドロップにより処理の実行順に接続することにより行われる。例えば、コピーを実行させるためのジョブフローは、スキャナ入力を実行する処理部品（スキャナ入力部品）、画像変換を実行するための処理部品（画像変換部品）、及びプロッタ出力を実行するための処理部品（プロッタ出力部品）等を接続することで定義される。また、ジョブフロー生成領域５０１に配置された処理部品アイコンをダブルクリックすると、当該処理部品アイコンの実行条件を設定させるための画面が表示され、当該画面において当該処理部品の実行条件（例えば、スキャナ入力部品であれば、解像度、用紙サイズ等）を設定することができる。なお、本実施の形態において、リモートＵＩ３０２は、Ｗｅｂブラウザであるため、厳密にはその表示画面の遷移の際はＷｅｂサーバ（本実施の形態では、画像形成装置１０ａ）と通信が行われるが、便宜上、当該通信の発生については省略して説明する。
【００３８】
なお、一つのジョブフローにおいて、入力部品、加工部品、及び出力部品はそれぞれ複数利用することができる。例えば、スキャンされた画像と、画像形成装置１０のＨＤＤ１２に保存されている画像とを合成して印刷すると共にＦＡＸ送信するといったような場合、少なくとも二つの入力部品と二つの出力部品とが選択される。
【００３９】
ジョブフロー生成画面５１０においてジョブフローの生成が完了し、ＯＫボタン５０３がクリックされると、リモートＵＩ３０２は、ジョブフローの名前（ジョブフロー名）を入力させるための画面を表示させる。当該画面においてジョブフロー名が入力されると、リモートＵＩ３０２は、ジョブフローの登録要求を通信部３０１に対して出力する（図４：Ｓ１２１）。ジョブフローの登録要求には、ジョブフロー生成画面５１０等において設定された情報、すなわち、ジョブフロー名、ジョブフローを構成する処理部品の識別情報、処理部品の実行順、及び各処理部品の実行条件等を内容とする情報（以下「ジョブフロー情報」という。）が含まれている。ジョブフローの登録要求は、通信部３０１によって画像形成装置１０ａに送信され、画像形成装置１０ａの通信部１０１によって受信される（Ｓ１２２）。
【００４０】
通信部１０１は、ジョブフローの登録要求に応じ、フロー登録部１０３を呼び出し、ジョブフローの登録を指示する（Ｓ１２３）。フロー登録部１０３は、フロー記憶部１０５に対し、ジョブフロー情報の保存を要求する（Ｓ１２４）。フロー記憶部１０５は、ＨＤＤ制御部１０６を介して、ＨＤＤ１２に所定の形式でジョブフロー情報を保存し（Ｓ１２５、Ｓ１２６）、ジョブフロー情報の保存を完了した旨をフロー登録部１０３に通知する。（Ｓ１２７）。
【００４１】
図６は、ジョブフロー情報の保存形式の例を概念的に示す図である。図６に示されるジョブフロー情報１０４０は、ジョブフローごとにジョブフロー名、フロー作成者、及びフロー登録日等（表１０４１参照）と、ジョブフローを構成する処理部品およびその実行情報（実行順及び実行条件）（表１０４２参照）と等を含むように保存される。なお、図中では、「コピー＋ＦＡＸフロー」については、処理部品がスキャナ（入力部品）、プロッタ（出力部品）、ファクス（出力部品）等より構成される旨が示されている。すなわち、「コピー＋ＦＡＸフロー」は、スキャナで読み込んだ画像を、プロッタで出力すると共に、ＦＡＸ送信するといったアプリケーションを実現するジョブフローである。なお、ジョブフロー名は、ユーザに入力させるのではなく、例えば、ジョブフローを構成する処理部品の機能等に基づいて自動的に作成されるようにしてもよい。
【００４２】
ジョブフローの登録完了通知は、ジョブフロー登録部１０３及び通信部１０１を介してクライアントＰＣ３０に送信され（Ｓ１２８、Ｓ１２９）、クライアントＰＣ３０の通信部３０１を介してリモートＵＩ３０２に通知される（Ｓ１３０）。リモートＵＩ３０２は、ジョブフローの登録が完了した旨を表示させる（Ｓ１３１）。なお、ここで、ユーザに確認させるため、登録されたジョブフローの内容を表示させてもよい。
【００４３】
次に、複数台の画像形成装置１０に対して一度にジョブフローを登録する例について説明する。図７及び図８は、複数の画像形成装置に対するジョブフローの一括登録処理の処理手順を説明するためのシーケンス図である。なお、図７及び図８において、画像形成装置１０ａ及び１０ｂの構成要素を区別するために、画像形成装置１０ａの構成要素には「ａ」を、画像形成装置１０ｂの構成要素には「ｂ」を参照番号の後に付加している。
【００４４】
クライアントＰＣ３０において、ユーザが、リモートＵＩ３０２に複数の画像形成装置１０（ここでは、画像形成装置１０ａ及び１０ｂとする）に対するジョブフロー生成画面の表示を指示すると（すなわち、ジョブフローの登録先として画像形成装置１０ａ及び１０ｂが選択されると）、リモートＵＩ３０２は、ジョブフロー生成画面の取得を通信部３０１に要求する（Ｓ１５１）。当該ジョブフロー生成画面の取得要求には、画像形成装置１０ａ及び１０ｂを登録先とすることが示されている。通信部３０１は、画像形成装置１０ａの通信部１０１ａにジョブフロー生成画面の送信を要求する（Ｓ１５２）。通信部１０１ａは、クライアントＰＣ３０からの要求に応じ、フロー登録部１０３を呼び出し、画像形成装置１０ａ及び１０ｂに対するジョブフロー生成画面の生成を要求する（Ｓ１５３）。ジョブフローの登録先が、画像形成装置１０ａ及び１０ｂであることは、ジョブフロー生成画面の生成要求によってフロー登録部１０３ａに伝達される。
【００４５】
フロー登録部１０３ａは、ジョブフロー生成画面の生成要求に基づいて、登録先に含まれている全ての画像形成装置１０の処理部品一覧を収集する。まず、フロー解析処理部１０４ａより、画像形成装置１０ａにおいて利用可能な処理部品の一覧を取得する（Ｓ１５４、Ｓ１５５）。続いて、フロー登録部１０３ａは、通信部１０１ａに対して、画像形成装置１０ｂにおいて利用可能な処理部品の一覧の取得を要求する（Ｓ１５６）。通信部１０１ａは、画像形成装置１０ｂに対し処理部品の一覧を要求する（Ｓ１５７）。画像形成装置１０ｂの通信部１０１ｂは、当該要求に応じ、フロー解析部１０４ｂより画像形成装置１０ｂにおける処理部品一覧を取得し（Ｓ１５８、Ｓ１５９）、当該処理部品一覧を返信する（Ｓ１６０）。
【００４６】
画像形成装置１０ａの通信部１０１ａは、画像形成装置１０ｂの処理部品一覧を受信すると、フロー登録部１０３ａに出力する（Ｓ１６１）。フロー登録部１０３ａは、画像形成装置１０ａの処理部品一覧と、画像形成装置１０ｂの処理部品一覧との論理和を求め、論理和によって得られた処理部品一覧を用いてジョブフロー生成画面を表示させるＨＴＭＬデータを生成し（Ｓ１６２）、当該処理部品一覧が表示内容として含まれているＨＴＭＬデータを通信部１０１ａに出力する（Ｓ１６３）。以降ステップＳ１６３〜Ｓ１６６までは、図３におけるステップＳ１０７〜Ｓ１１０までと同様である。したがって、ステップＳ１６６において表示されるジョブフロー生成画面５１０の処理部品一覧には、２台の画像形成装置１０の処理部品一覧の論理和による一覧が表示される。なお、ジョブフロー生成画面５１０の操作方法は、図５において説明した通りである。よって、ユーザは、論理和による処理部品一覧から利用する処理部品を選択しジョブフローを生成する。
【００４７】
ジョブフロー生成画面５１０においてジョブフローの生成が完了し、ＯＫボタン５０３がクリックされ、更に、ジョブフロー名が入力されると、リモートＵＩ３０２は、ジョブフローの一括登録要求を通信部３０１を介して画像形成装置１０ａに送信する（図８：Ｓ１７１）。図８において、ジョブフローの一括登録要求には、ジョブフロー情報の他にジョブフローの登録先の画像形成装置１０の識別情報（ホスト名又はＩＰアドレス等）が含まれている。したがって、ここでは、画像形成装置１０ａ及び１０ｂの識別情報が含まれている。なお、図８では通信部３０１は表示されていないが、これは便宜的なものである。
【００４８】
画像形成装置１０ａの通信部１０１ａは、ジョブフローの一括登録要求に応じ、フロー登録部１０３ａを呼び出し、ジョブフローの一括登録を指示する（Ｓ１７２）。フロー登録部１０３ａは、フロー記憶部１０５ａに対し、ジョブフロー情報の保存を要求する（Ｓ１７３）。フロー記憶部１０５ａは、ＨＤＤ制御部１０６ａを介して、ＨＤＤ１２に所定の形式でジョブフロー情報を保存し（Ｓ１７４、Ｓ１７５）、ジョブフロー情報の保存を完了した旨をフロー登録部１０３ａに通知する。（Ｓ１７６）。続いて、フロー登録部１０３ａは、ジョブフローの一括登録要求において、登録先に画像形成装置１０ｂが含まれていることに基づいて、画像形成装置１０ｂへのジョブフローの登録を通信部１０１ａに要求する（Ｓ１７７）。
【００４９】
通信部１０１ａは、画像形成装置１０ｂに対しジョブフローの登録を要求する（Ｓ１７８）。ジョブフローの登録要求は、画像形成装置１０ｂの通信部１０１ｂによって受信され、図４のステップＳ１２３〜Ｓ１２８と同様の手順で、画像形成装置１０ｂにジョブフロー情報が登録される（Ｓ１７９〜Ｓ１８４）。なお、画像形成装置１０ｂには、画像形成装置１０ａと同一のジョブフロー情報が登録される。通信部１０１ｂは、画像形成装置１０ｂにおいてジョブフロー情報の登録が完了したことを画像形成装置１０ａの通信部１０１ａに通知する（Ｓ１８５）。当該通知は、フロー登録部１０２ａに伝えられる（Ｓ１８６）。フロー登録部１０２ａは、ジョブフローの一括登録要求において登録先に含まれている全ての画像形成装置１０へのジョブフローの登録が完了したことを確認すると、ジョブフローの登録完了通知を通信部１０１ａを介してクライアントＰＣ３０に送信する（Ｓ１８７、Ｓ１８８）。クライアントＰＣ３０のリモートＵＩ３０２は、ジョブフローの登録が完了した旨を表示させる（Ｓ１８９）。
【００５０】
このように、ジョブフロー生成画面５１０における一度の操作で、複数の画像形成装置１０にジョブフローを登録することができる。したがって、個々にジョブフローを登録する場合に比べ、作業効率を向上させることができる。なお、図７及び図８では、画像形成装置１０ａがクライアントＰＣ３０に対する窓口としての役割を果たしていたが、当該窓口は、管理サーバ２０が行ってもよい。すなわち、管理サーバ２０がクライアントＰＣ３０よりジョブフローの一括登録の要求を受け付け、登録先に指定されている各画像形成装置１０に対して、ジョブフロー情報の登録を要求するといった具合である。この場合、管理サーバ２０における通信部２０１、フロー登録部２０２は、図８における通信部１０１ａ、フロー登録部１０３ａと同様の処理を実行する。但し、管理サーバ２０自身にはジョブフローは登録されないため、管理サーバ２０に対するジョブフローの登録処理は実行されない。
【００５１】
また、図３〜図８においては、リモートＵＩ３０２を介してジョブフローの登録操作が行われる例を示したが、画像形成装置１０の操作パネル１１を介してジョブフローの登録操作が行われてもよい。この場合、操作パネル１１が表示装置として機能し、ジョブフロー生成画面の表示等が行われる。
【００５２】
次に、登録されたジョブフローを実行する際の処理手順について説明する。図９は、ジョブフローの実行処理の第一の処理手順を説明するためのシーケンス図である。
【００５３】
画像形成装置１０に電源が投入されると、各処理部品は、自らが利用可能であることをフロー解析処理部１０４に通知する。例えば、スキャナ制御部１０９は、スキャナ１５の状態をチェックし、異常が無ければスキャナ制御部１０９（スキャナ１５からの入力機能）が利用可能であることをフロー解析処理部１０４に通知する（Ｓ２０１）。プロッタ制御部１０７は、プロッタ１３の状態をチェックし、異常が無ければプロッタ制御部１０７（プロッタ１３への出力機能）が利用可能であることをフロー解析処理部１０４に通知する（Ｓ２０２）。画像情報加工装置制御部１０８は、画像情報加工装置１４の状態をチェックし、異常が無ければ画像情報加工装置制御部１０８（画像情報の加工機能）が利用可能であることをフロー解析処理部１０４に通知する（Ｓ２０３）。ＨＤＤ制御部１０６は、ＨＤＤ１２の状態をチェックし、異常が無ければＨＤＤ制御部１６（ＨＤＤ１２に対する入出力機能）が利用可能であることをフロー解析処理部１０４に通知する（Ｓ２０４）。なお、他の処理部品がインストールされた場合、当該他の処理部品からも利用可能の通知が行われる。
【００５４】
また、フロー記憶部１０５は、電源の投入に応じ、ＨＤＤ１２に保存されているジョブフロー情報を読み出し、当該ジョブフロー情報を操作パネル制御部１０２に出力する（Ｓ２０５）。操作パネル制御部１０２は、当該ジョブフロー情報に基づいて、画像形成装置１０に登録されているジョブフロー（ジョブフロー名）の一覧画面（ジョブフロー一覧画面）を操作パネル１１に表示させる。（Ｓ２０６）。但し、ジョブフロー一覧画面は、ネットワークを介して画像形成装置１０と接続するＰＣ等の外部機器の表示装置に表示させてもよい。
【００５５】
ユーザが、操作パネル１１に表示されたジョブフロー一覧画面の中から所望のジョブフローを選択すると、操作パネル制御部１０２は、選択されたジョブフローの識別情報（例えば、ジョブフロー名）を通知することにより、当該ジョブフロー（以下「カレントジョブフロー」という。）の実行をフロー解析処理部１０４に指示する（Ｓ２０８）。ここでは、スキャナ１３によって画像データを入力し、当該画像データを集約加工し、集約加工された画像データをプロッタ１３に出力すると共に、ＨＤＤ１２に蓄積保存するといったジョブフローがカレントジョブフローとして選択されたものとする。
【００５６】
フロー解析処理部１０４は、操作パネル制御部１０２より通知されたジョブフロー名に基づいてカレントジョブフローのジョブフロー情報を取得し、当該ジョブフロー情報等に基づいて以降の処理を動的に制御する。フロー解析処理部１０４は、まず、カレントジョブフローを構成する処理部品を判断し、当該各処理部品に対して処理の実行を指示する。具体的には、図９においては、スキャナ入力部品としてのスキャナ制御部１０９と、集約加工部品としての画像情報加工装置制御部１０８と、プロッタ出力部品としてのプロッタ制御部１０７と、ＨＤＤ出力部品としてのＨＤＤ制御部１０６に対して、並列的に実行指示が行われる（Ｓ２０９〜Ｓ２１２）。
【００５７】
各処理部品に対し並列的に実行指示が行われるのは、本実施の形態では各処理部品間の同期はそれぞれの処理部品を接続するパイプによってとられるからである。ここで、パイプとは、各処理部品間のデータの伝達手段を抽象的に表現した概念であり、その実体は各種のメモリによって実現される。フロー解析部１０４は、各処理部品に対し処理の実行指示の際に入力側のパイプと出力側のパイプとを指定する。各処理部品は、入力側のパイプにデータが入力されるのを待機し、入力側のパイプにデータが入力されると当該データに対して処理を実行し、出力側のパイプに処理結果としてのデータを出力する。ここで、一つ前の処理を実行する処理部品の出力側のパイプと、次の処理を実行する入力側のパイプとは一致する。したがって、或る処理部品が、出力側のパイプに処理結果としてのデータを出力すれば、次の処理部品は当該処理部品にとっての入力側のパイプへのデータの入力を検知し、処理を開始するというわけである。但し、入力部品として機能する処理部品は、パイプからの入力ではなく、当該処理部品が対応するデバイス（スキャナ１５又はネットワーク等）からデータの入力を受け付ける。また、出力部品として機能する処理部品は、パイプへの出力ではなく、当該処理部品が対応するデバイス（ＨＤＤ１２又はプロッタ１３等）にデータを出力する。なお、本発明の実施にあたり、必ずしもパイプによって同期をとる必要はなく、フロー解析部１０４が処理部品間の処理の同期を制御するようにしてもよい。この場合、フロー解析部１０４は、或る処理部品の処理の終了に応じ、次の処理部品に対して処理の実行指示を行うといった制御を行えばよい。
【００５８】
フロー解析処理部１０４からの実行指示に応じ、まず、入力部品（スキャナ入力部品）であるスキャナ制御部１０９は、スキャナ１５からの画像データの読み取りを実行する（Ｓ２１３）。スキャナ制御部１０９は、読みとられた画像データを画像情報加工装置制御部１０８との間のパイプ（以下、「パイプＡ」という。）に出力すると共に（Ｓ２１４）、処理の完了をフロー解析処理部１０４に通知する（Ｓ２１５）。
【００５９】
画像情報加工装置制御部１０８は、パイプＡへの画像データの入力を検知すると当該画像データの加工処理（ここでは、集約処理）を実行する（Ｓ２１６）。加工処理が完了すると、画像情報加工装置制御部１０８は、プロッタ制御部１０７との間のパイプ（以下、「パイプＢ」という。）と、ＨＤＤ制御部１０６と間のパイプ（以下、「パイプＣ」という。）とに加工データを出力すると共に（Ｓ２１７、Ｓ２１８）、処理の完了をフロー解析処理部１０４に通知する（Ｓ２１９）。
【００６０】
続いて、プロッタ制御部１０７及びＨＤＤ制御部１０６は、並列的に処理を実行する。プロッタ制御部１０７は、パイプＢへの加工データの入力を検知すると、当該加工データをプロッタ１３に出力（印刷）させる（Ｓ２２０）。また、ＨＤＤ制御部１０６は、パイプＣへの加工データの入力を検知すると、当該加工データをＨＤＤ１２に出力（保存）する（Ｓ２２１）。プロッタ制御部１０７及びＨＤＤ制御部１０６は、それぞれの処理が完了すると、その完了をフロー解析処理部１０４に通知する（Ｓ２１９）。
【００６１】
フロー解析処理部１０４は、処理の実行指示を行った全ての処理部品から処理の完了通知を受け取ると、操作パネル制御部１０２に対してジョブフローの完了を通知する（Ｓ２２４）。操作パネル制御部１０２は、当該通知に応じて、例えば処理の完了を通知するメッセージを操作パネル１１に表示させる。
【００６２】
このように、本実施の形態における画像形成装置１０によれば、予め登録されたジョブフローに従って処理を実行させることができる。
【００６３】
ところで、画像形成装置１０は、処理部品単位でインストール又はアンインストールが可能である。したがって、ジョブフローの登録時に存在した処理部品が、当該ジョブフローの実行時には存在しない場合が有り得る。当該ジョブフローの登録後に、処理部品がアンインストールされてしまう可能性が有るからである。また、図７及び図８において説明したようなジョブフローの登録処理では、複数の画像形成装置１０より収集された処理部品の一覧に基づいてジョブフローが生成され、そのように生成された同一のジョブフローが各画像形成装置１０に登録される。したがって、それぞれの画像形成装置１０にインストールされている処理部品が異なる場合、インストールされていない処理部品を利用するジョブフローが画像形成装置１０に登録される可能性がある。また、デバイスの異常等によって、インストールはされていても利用できない処理部品が存在する可能性もある。
【００６４】
そこで、かかる事態（利用できない処理部品を含むジョブフローが登録されている事態）の発生を考慮したジョブフローの実行処理を図１０において説明する。図１０は、ジョブフローの実行処理の第二の処理手順を説明するためのシーケンス図である。
【００６５】
ステップＳ３０１〜Ｓ３０４までは、図９のステップＳ２０１〜Ｓ２０４までと同様であるため、ここでの説明は省略する。
【００６６】
ステップＳ３０５において、フロー記憶部１０５は、電源の投入に応じＨＤＤ１２に保存されているジョブフロー情報を読み出し、当該ジョブフロー情報をフロー解析処理部１０４に出力する（Ｓ３０５）。フロー解析処理部１０４は、ジョブフロー情報等に基づいて、登録されている各ジョブフローの実行の可否を判断する（Ｓ３０６）。図１１は、ジョブフローの実行可否の判断方法を説明するための図である。図１１において（Ａ）は、ジョブフローが実行可能であると判断される場合を示し、（Ｂ）は、ジョブフローが実行不可能であると判断される場合を示す。
【００６７】
（Ａ）又は（Ｂ）において、表１０４２ａ及び表１０４２ｂは、図６の表１０４２に相当する。すなわち、表１０４２ａ及び表１０４２ｂは、ジョブフロー情報の一部を構成する情報であり、ジョブフローを構成する処理部品及びその実行順を示す情報である。また、処理部品情報１０５０は、各処理部品からの利用可否の通知に基づいて、フロー解析処理部１０４によって生成される情報であり、利用可能通知があった処理部品ごとに当該処理部品が実装されているプログラムのプログラム名との関連付けが定義されている。ここで、プログラム名は、当該プログラムを動的に呼び出すために必要とされる識別名であり、例えば、プログラムの保存位置を示すアドレス情報であってもよい。当該プログラム名は、利用可能通知の際に各処理部品よりフロー解析処理部１０４に通知される。処理部品情報１０５０を動的に作成することで、フロー解析処理部１０４は、インストールされている処理部品を事前に知らなくても、その実行時に画像形形成装置１０がとのような機能（処理部品）を保有しており、どのプログラムがどの機能を実行できるのかを実行時に知ることができる。
【００６８】
フロー解析処理部１０４は、これらの情報を用いて各ジョブフローの実行の可否を判断する。例えば、（Ａ）の場合、ジョブフローを構成する処理部品は、スキャナ入力部品とプロッタ出力部品である。したがって、フロー解析処理部１０４は、処理部品情報１０５０において、スキャナ入力部品とプロッタ出力部品とのエントリを検索する。図１１においては、処理部品情報１０５０に両処理部品のエントリが存在するため、フロー解析処理部１０４は、当該ジョブフローは実行可能であると判断する。
【００６９】
一方、（Ｂ）の場合、ジョブフローを構成する処理部品は、スキャナ入力部品とメール送信部品である。しかし、処理部品情報１０５０には、メール送信部品のエントリは存在しない。この場合、少なくとも一部の処理（メール送信）が実行できないため、ジョブフロー解析処理部１０４は、当該ジョブフローは実行不可能であると判断する。
【００７０】
各ジョブフローの実行の可否の判断を完了すると、フロー解析処理部１０４は、各ジョブフローについて実行の可否と共に、ジョブフロー情報を操作パネル制御部１０２に通知する（Ｓ３０７、Ｓ３０８）。
【００７１】
操作パネル制御部１０２は、フロー解析処理部１０４より通知される情報に基づいて、ジョブフロー一覧画面を操作パネル１１に表示させる。（Ｓ３０９）。図１２は、ジョブフロー一覧画面の表示例を示す図である。
【００７２】
図１２に示されるように、ジョブフロー一覧画面１１１には実行可能なジョブフローと実行不可能なジョブフローとが区別されて表示されている。したがって、ユーザは、実行可能なジョブフローと実行不可能なジョブフローとを容易に識別することができる。
【００７３】
ジョブフロー一覧画面１１１において、各ジョブフローは、選択可能なボタンによって表示されている。いずれかのジョブフローが選択され、詳細ボタン１１１３が押下されると、操作パネル制御部１０２は、選択されたジョブフローの詳細画面（ジョブフロー詳細画面）を操作パネル１１に表示させる。図１３は、ジョブフロー詳細画面の表示例を示す図である。
【００７４】
図１３において、（Ａ）は、実行可能なジョブフローのジョブフロー詳細画面１１２を示す。ジョブフロー詳細画面１１２では、当該ジョブフローの処理の流れが処理部品単位で表示される。（Ａ）では、図９及び図１０において説明されるジョブフローの処理の流れが表示されている。すなわち、スキャナ入力が行われ、集約加工が行われ、その後に、プロッタ出力とＨＤＤ蓄積とが並列的に実行される旨が表示されている。
【００７５】
一方、（Ｂ）は、実行不可能なジョブフローのジョブフロー詳細画面１１２を示す。実行不可能な場合も、ジョブフローの処理の流れが処理部品単位で表示される。但し、実行不可能の原因となった処理部品が識別可能なように（例えば、グレーアウトされて）表示される。（Ｂ）では、メール送信がグレーアウトされて表示されている。したがって、ユーザは、当該ジョブフローが実行不可能である理由を容易に確認することができる。
【００７６】
なお、図１２のジョブフロー一覧画面１１１において、実行可能なジョブフローのみを表示させるようにしてもよい。
【００７７】
ジョブフロー一覧画面１１１において、実行可能なジョブフローが選択され、実行ボタン１１１２が押下されると、操作パネル制御部１０２は、選択されたジョブフローの識別情報（例えば、ジョブフロー名）を通知することにより、当該ジョブフローの実行をフロー解析処理部１０４に指示する（Ｓ３１０）。ステップＳ３１１以降は、図９におけるステップＳ２０９以降と同様であるのでここでの説明は省略する。なお、ステップＳ３１１〜Ｓ３１４においてフロー解析処理部１０４は、図１１に示される処理部品情報１０５０に基づいて、各処理部品に対応するプログラムを動的に呼び出す。この点は、図９においても同様である。処理部品が対応するプログラムが、実行時に動的に呼び出されることにより、処理部品の追加による機能拡張に対して柔軟に対応することができる。
【００７８】
次に、ジョブフローの他のバリエーションの処理手順について説明する。まず、図１４に示されるようなジョブフロー（以下「ジョブフローＡ」という。）の処理手順について説明する。図１４は、ジョブフローＡの詳細画面の表示例を示す図である。
【００７９】
図１４に示されるように、ジョブフローＡは、スキャナより画像データを入力し、その画像データに対して集約加工を施し、加工データをプロッタ出力した後にＨＤＤ１２に蓄積するといったものである。すなわち、ジョブフローＡは、プロッタ出力とＨＤＤ蓄積とが直列的に順次実行される点が、図１０において説明したジョブフローと異なる。
【００８０】
図１５は、ジョブフローＡの実行処理の処理手順を説明するためのシーケンス図である。図１５中、図１０と同一ステップ（Ｓ３０１〜Ｓ３１０）については同一ステップ番号を付し、その説明は省略する。
【００８１】
操作パネル制御部１０２よりカレントジョブフロー（ジョブフローＡ）の実行指示を受けると、フロー解析処理部１０４は、ジョブフローＡを構成する各処理部品に対して処理の実行指示を並列的に出力する（Ｓ４１１〜Ｓ４１３）。但し、ＨＤＤ制御部１０６に対してはこのタイミングでは実行指示は行わない。すなわち、フロー解析処理部１０４はカレントジョブフローが出力部品を複数含んでおり、当該出力部品が直列的に実行される場合は、このタイミングでは出力部品内で一番目の処理部品に対してのみ実行指示を出力する。したがって、ここでは、スキャナ制御部１０９、画像情報加工装置制御部１０８及びプロッタ制御部１０７に対して実行指示が出力される。
【００８２】
フロー解析処理部１０４からの実行指示に応じ、まず、入力部品（スキャナ入力部品）であるスキャナ制御部１０９は、スキャナ１５からの画像データの読み取りを実行する（Ｓ４１４）。スキャナ制御部１０９は、読みとられた画像データを画像情報加工装置制御部１０８との間のパイプＡに出力すると共に（Ｓ４１５）、処理の完了をフロー解析処理部１０４に通知する（Ｓ４１６）。
【００８３】
画像情報加工装置制御部１０８は、パイプＡへの画像データの入力を検知すると当該画像データの加工処理（ここでは、集約処理）を実行する（Ｓ４１７）。加工処理が完了すると、画像情報加工装置制御部１０８は、プロッタ制御部１０７との間のパイプＢと、ＨＤＤ制御部１０６と間のパイプＣとに加工データを出力すると共に（Ｓ４１８、Ｓ４１９）、処理の完了をフロー解析処理部１０４に通知する（Ｓ４２０）。
【００８４】
プロッタ制御部１０７は、パイプＢへの加工データの入力を検知すると、当該加工データをプロッタ１３に出力（印刷）させると共に（Ｓ４２１）、処理の完了をフロー解析処理部１０４に通知する（Ｓ４２２）。一方、パイプＣに加工データが入力されても、ＨＤＤ制御部１０６は処理を開始しない。ＨＤＤ制御部１０６にはフロー解析処理部１０４より実行指示が入力されておらず、ＨＤＤ制御部１０６はパイプＣに対する加工データの入力を待ち合わせていないからである。
【００８５】
プロッタ制御部１０７からの完了通知に応じ、フロー解析処理部１０４は、出力部品として二番目の処理部品であるＨＤＤ制御部１０６に対して実行指示を行う（Ｓ４２３）。ＨＤＤ制御部１０６は、当該実行指示に応じパイプＣへの加工データの入力を検知し、当該加工データをＨＤＤ１２に出力（保存）する（Ｓ４２４）。ＨＤＤ１２への出力が完了すると、ＨＤＤ制御部１０６は、処理の完了をフロー解析処理部１０４に通知する（Ｓ４２５）。
【００８６】
フロー解析処理部１０４は、処理の実行指示を行った全ての処理部品から処理の完了通知を受け取ると、操作パネル制御部１０２に対してジョブフローの完了を通知する（Ｓ４２６）。操作パネル制御部１０２は、当該通知に応じて、例えば処理の完了を通知するメッセージを操作パネル１１に表示させる。
【００８７】
このように、本実施の形態における画像形成装置１０は、出力部品が直列的に順次実行されるジョブフローの実行も制御することができる。したがって、ジョブフローについて多様な設定が可能となり、利便性を向上させることができる。
【００８８】
次に、図１６に示されるようなジョブフロー（以下「ジョブフローＢ」という。）の処理手順について説明する。図１６は、ジョブフローＢの詳細画面の表示例を示す図である。図１６のジョブフロー詳細画面１１２において、三角記号は、ユーザからの入力（例えば、スタートボタンの押下）の待ち合わせを意味する。したがって、ジョブフローＢは、スキャナより画像データを入力し、その画像データに対して集約加工を施し、ユーザからの入力を待ち合わせた後、その加工データのプロッタ出力処理とＨＤＤ蓄積処理とを並列的に実行するといったものである。すなわち、ジョブフローＢは、画像データの加工後に、ユーザによる入力（例えば、スタートボタンの押下等）を待ち合わせる点が、図１０において説明したジョブフローと異なる。
【００８９】
図１７は、ジョブフローＢの実行処理の処理手順を説明するためのシーケンス図である。図１７中、図１０と同一ステップ（Ｓ３０１〜Ｓ３１０）については同一ステップ番号を付し、その説明は省略する。
【００９０】
操作パネル制御部１０２よりカレントジョブフロー（ジョブフローＢ）の実行指示を受けると、フロー解析処理部１０４は、ジョブフローＢを構成する各処理部品に対して処理の実行指示を並列的に出力する（Ｓ５１１、Ｓ５１２）。但し、プロッタ制御部１０７及びＨＤＤ制御部１０６に対してはこのタイミングでは実行指示は行わない。すなわち、フロー解析処理部１０４は、カレントジョブフローがユーザ入力の待ち合わせを含む場合は、当該待ち合わせ後に実行される処理部品についてはこのタイミングでは実行指示を行わない。したがって、ここでは、スキャナ制御部１０９及び画像情報加工装置制御部１０８に対して実行指示が出力される。
【００９１】
フロー解析処理部１０４からの実行指示に応じ、まず、入力部品（スキャナ入力部品）であるスキャナ制御部１０９は、スキャナ１５からの画像データの読み取りを実行する（Ｓ５１３）。スキャナ制御部１０９は、読みとられた画像データを画像情報加工装置制御部１０８との間のパイプＡに出力すると共に（Ｓ５１４）、処理の完了をフロー解析処理部１０４に通知する（Ｓ５１５）。
【００９２】
画像情報加工装置制御部１０８は、パイプＡへの画像データの入力を検知すると当該画像データの加工処理（ここでは、集約処理）を実行する（Ｓ５１６）。加工処理が完了すると、画像情報加工装置制御部１０８は、処理の完了をフロー解析処理部１０４に通知すると共に（Ｓ５１７）、プロッタ制御部１０７との間のパイプＢと、ＨＤＤ制御部１０６と間のパイプＣとに加工データを出力する（Ｓ５１８、Ｓ５１９）。なお、パイプＢ又はパイプＣに加工データが入力されても、フロー解析処理部１０４より実行指示が入力されていないため、プロッタ制御部１０７及びＨＤＤ制御部１０６は処理を開始しない。
【００９３】
画像情報加工装置制御部１０６からの完了通知を受けると、フロー解析処理部１０４は、操作パネル制御部１０２に対してユーザからの入力を要求することにより、ユーザからの入力を待ち合わせる（Ｓ５２０）。操作パネル制御部１０２は、例えば、「処理を継続しますか？」等のメッセージを表示させ、ユーザに対して入力を促進する。スタートボタンが押下される等、ユーザによって処理の継続が指示されると、操作パネル制御部１０２は、フロー解析処理部１０４に対してジョブフローの継続を指示する（Ｓ５２１）。
【００９４】
ジョブフローの継続指示に応じ、フロー解析処理部１０４は、ユーザ入力の待ち合わせ後に実行する処理部品に対して実行指示を行う。ここでは、プロッタ制御部１０７とＨＤＤ制御部１０６とに対して並列的に実行指示が行われる（Ｓ５２２、Ｓ５２３）。ステップＳ５２４以降（プロッタ出力処理及びＨＤＤ蓄積処理）は、図１０におけるステップＳ３２２以降と同様であるのでここでの説明は省略する。
【００９５】
このように、本実施の形態における画像形成装置１０は、ユーザの入力を待ち合わせるようなジョブフローの実行も制御することができる。したがって、処理部品の実行タイミングをユーザの任意に応じて変更させることができ、利便性を向上させることができる。
【００９６】
なお、図１７のジョブフローＢでは、ユーザ入力について簡便化して説明したが、現実的なユーザの入力の待ち合わせは、例えば、図１８に示されるジョブフロー（以下「ジョブフローＣ」という。）の場合に考えられる。図１８は、ジョブフローＣの詳細画面の表示例を示す図である。
【００９７】
図１８に示されるように、ジョブフローＣは、スキャナより読み取られた画像データとＰＣより転送されるデータとを合成し、合成されたデータを操作部（操作パネル１１）にプレビュー表示させる。ユーザは、所望の出力結果が得られる場合は、処理の継続を指示する。当該指示に応じて、プロッタ出力処理とＨＤＤ蓄積処理とが実行される。所望の出力結果が得られない場合、ユーザは、画像の加工条件を変更する。この場合、改めて画像の合成処理が行われ、プレビュー表示が実行される。
【００９８】
次に、図１９に示されるようなジョブフロー（以下「ジョブフローＤ」という。）の処理手順について説明する。図１９は、ジョブフローＤの詳細画面の表示例を示す図である。図１９のジョブフロー詳細画面１１２において、円記号は、円内に記された時間の待機を意味する。したがって、ジョブフローＤは、スキャナより画像データを入力し、その画像データに対して集約加工を施し、３０秒間待機した後、その加工データのプロッタ出力処理とＨＤＤ蓄積処理とを並列的に実行するといったものである。すなわち、ジョブフローＤは、画像データの加工の後に所定時間待機する点が、図１０において説明したジョブフローと異なる。
【００９９】
図２０は、ジョブフローＤの実行処理の処理手順を説明するためのシーケンス図である。図２０中、図１０と同一ステップ（Ｓ３０１〜Ｓ３１０）については同一ステップ番号を付し、その説明は省略する。
【０１００】
操作パネル制御部１０２よりカレントジョブフロー（ジョブフローＤ）の実行指示を受けると、フロー解析処理部１０４は、ジョブフローＤを構成する各処理部品に対して処理の実行指示を並列的に出力する（Ｓ６１１、Ｓ６１２）。但し、プロッタ制御部１０７及びＨＤＤ制御部１０６に対してはこのタイミングでは実行指示は行わない。すなわち、フロー解析処理部１０４は、カレントジョブフローが待機時間を含む場合は、当該待機後に実行される処理部品についてはこのタイミングでは実行指示を行わない。したがって、ここでは、スキャナ制御部１０９及び画像情報加工装置制御部１０８に対して実行指示が出力される。
【０１０１】
フロー解析処理部１０４からの実行指示に応じ、まず、入力部品（スキャナ入力部品）であるスキャナ制御部１０９は、スキャナ１５からの画像データの読み取りを実行する（Ｓ６１３）。スキャナ制御部１０９は、読みとられた画像データを画像情報加工装置制御部１０８との間のパイプＡに出力すると共に（Ｓ６１４）、処理の完了をフロー解析処理部１０４に通知する（Ｓ６１５）。
【０１０２】
画像情報加工装置制御部１０８は、パイプＡへの画像データの入力を検知すると当該画像データの加工処理（ここでは、集約処理）を実行する（Ｓ６１６）。加工処理が完了すると、画像情報加工装置制御部１０８は、処理の完了をフロー解析処理部１０４に通知すると共に（Ｓ６１７）、プロッタ制御部１０７との間のパイプＢと、ＨＤＤ制御部１０６と間のパイプＣとに加工データを出力する（Ｓ６１８、Ｓ６１９）。なお、パイプＢ又はパイプＣに加工データが入力されても、フロー解析処理部１０４より実行指示が入力されていないため、プロッタ制御部１０７及びＨＤＤ制御部１０６は処理を開始しない。
【０１０３】
画像情報加工装置制御部１０６からの完了通知を受けると、フロー解析処理部１０４は、待機時間分のタイマーのカウントを開始する（Ｓ６２０）。タイマーのカウントが終了すると（すなわち、待機時間の経過を検知すると）、フロー解析処理部１０４は、待機後に実行する処理部品に対して実行指示を行う。ここでは、プロッタ制御部１０７とＨＤＤ制御部１０６とに対して並列的に実行指示が行われる（Ｓ６２２、Ｓ６２３）。ステップＳ６２４以降（プロッタ出力処理及びＨＤＤ蓄積処理）は、図１０におけるステップＳ３２２以降と同様であるのでここでの説明は省略する。
【０１０４】
このように、本実施の形態における画像形成装置１０は、途中で待機時間を含むようなジョブフローの実行も制御することができる。したがって、待機時間を指定することにより処理部品の実行タイミングを調節することができ、利便性を向上させることができる。なお、待機時間は、入力部品と加工部品との間や、出力部品を直列的に実行する場合には、当該出力部品間の間に設定してもよい。また、待機時間ではなく、時刻の指定（例えば、ＦＡＸの送信時刻等の指定）によって実行タイミングを調節してもよい。
【０１０５】
上述したように、第一の形態における画像形成装置１０によれば、処理部品の組み合わせ及びその実行順を示す制御情報を予めジョブフローとして名前を付加して登録しておくことができる。また、登録されているジョブフローに従って動的に処理制御を行うことができる。したがって、ユーザは、ジョブフローの名前を呼び出すだけで（又は選択するだけで）、ジョブフローによって実現されるアプリケーションを実行することができる。
【０１０６】
また、画像形成装置１０は、動的な処理制御が可能な構成を有することにより、処理部品の追加又は削除等に対して柔軟に対応することができ、処理部品の追加又は処理部品の新たな組み合わせ等によって容易に、すなわち、既存部分に対するソースコードの修正等を比較的少なく抑えつつ機能拡張を行うことができる。
【０１０７】
次に、第二の実施の形態について説明する。第二の実施の形態では、処理部品間のパイプによる同期のタイミングについて詳しく説明する。なお、第二の実施の形態では、第一の実施の形態と異なる点について説明する。したがって、特に言及しない点については、第一の実施の形態と同様でよい。
【０１０８】
第一の実施の形態では、処理部品は、パイプに対する画像データの入力を待機しており、当該パイプに対して画像データが入力されると、当該画像データに対する処理を開始すると説明した。ここで、処理部品が処理を開始するタイミングは、必ずしも画像データの全部がパイプに書き込まれるまで待機しなくてもよい。例えば、画像データが複数のページから構成される場合、ページごとに同期がとられてもよい。更に、ページを構成する単位ごとに同期がとられてもよい。例えば、第二の実施の形態では、画像データの構成単位を次のように定義する。
【０１０９】
図２１は、第二の実施の形態における画像データの構成単位を説明するための図である。図２１において、画像データとは一つの文書に対応する。すなわち、スキャナ１５から文書を読み取る際に、一回の読み取り操作によって生成されるデータをいう。したがって、画像データは、一つ以上のページ（画像）によって構成される。各ページは、その色空間に応じて複数のプレーン（カラープレーン）によって構成される。例えば、ＲＧＢ空間であれば、Ｒプレーン、Ｇプレーン、及びＢプレーンの三つのプレーンより構成される。更に、各プレーンは、バンドメモリの大きさに応じたバンドと呼ばれる単位に分割される。図中では、一つのバンドは、２５６ラインより構成される例が示されている。
【０１１０】
画像データが斯かる構成を有する場合、同期のタイミングは、画像データごと、ページごと、プレーンごと、又はバンドごとのバリエーションを持たせることができる。第二の実施の形態では、画像データごと以外の同期による処理部品の動作を並列動作という。すなわち、パイプに対する画像データの入力を待機している処理部品は、出力側の（前段階の）処理部品の処理が画像データの全部に対して完全に処理が完了する前に処理を開始することができ、二つの処理部品が並列的に動作する状態が発生し得るからである。これに対し、画像データごとに同期がとられる場合の処理部品の動作を直列動作という。
【０１１１】
処理部品間を並列動作及び直列動作のいずれによって接続するかは、ジョブフロー生成画面５１０において処理部品間を接続している線に対する操作によって設定させればよい。例えば、当該線を右クリックすることにより「直列」及び「並列」といったメニュー項目を有するコンテキストメニューを表示させ、「直列」が選択されたら当該線によって接続される処理部品は直列動作とし、「並列」が選択された当該線によって接続される処理部品は並列動作とする。なお、ジョブフロー生成画面５１０において当該設定結果が確認可能なように、直列動作又は並列動作かによって処理部品を接続する線の形態を変えるようにしてもよい。
【０１１２】
図２２は、直列動作と並列動作との識別を可能としたジョブフロー生成画面の表示例を示す図である。図２２中、図５と同一部分には同一符号を付し、その説明は省略する。
【０１１３】
図２２では、処理部品Ａの後に処理部品Ｂ及び処理部品Ｃが実行されるジョブフローが生成された例が示されている。ここで、処理部品Ａと処理部品Ｃとを接続する線ｌ２の先端には矢印が付加されている。これは、処理部品Ａと処理部品Ｃとの間は直列動作として同期がとられることを示す。一方、処理部品Ａと処理部品Ｂとを接続する線ｌ１の先端には矢印が付加されていない。これは、処理部品Ａと処理部品Ｃとの間は並列動作によって同期がとられることを示す。
【０１１４】
図２２に示されるようなジョブフローの生成後、ジョブフロー生成画面５１０においてＯＫボタン５０３がクリックされると、図４において説明した処理が実行され、ＨＤＤ１２に当該ジョブフローのジョブフロー情報が登録される。
【０１１５】
図２３は、第二の実施の形態におけるジョブフロー情報の保存形式の例を示す図である。図２３中、図６と同一部分には同一符号を付し、その説明は省略する。図２３に示されるように、第二の実施の形態のジョブフロー情報１０４０には、各ジョブフローについて、ジョブフローを構成する処理部品およびその実行情報（実行順及び実行条件）の他、処理部品ごとに、前の処理部品と並行動作をするか否かを示す情報が含まれる。図中では、「○」（並行動作）又は「×」（直列動作）によって示されている。すなわち、図２３における「コピー＋ＦＡＸフロー」は、処理部品としてのスキャナの後にプロッタ及びファクスが実行され、プロッタについては並列動作、ファクスについては直列動作が実行されるジョブフローであることが示されている。並列動作における同期の処理単位（ページ単位、プレーン単位、又はバンド単位）は、別途ＨＤＤ１２に定義しておけばよい。また、処理部品ごとに同期の処理単位（タイミング）を変える場合は、ジョブフロー生成画面５１０において、処理部品間を接続する線について、単に「直列」又は「並列」の別を設定させるのではなく、同期の処理単位を選択させるようにすればよい。この場合、図２３に示されるジョブフロー情報１０４０には、処理部品ごとに並列動作か否かではなく、同期の処理単位を示す情報が登録される。
【０１１６】
斯かるジョブフロー情報に基づいてジョブフローが実行される場合、設定された同期の処理単位にしたがって、処理部品は処理を開始する。すなわち、同期の処理単位がページ単位の場合、１ページ分のデータがパイプに入力されたら処理部品は処理を開始する。また、同期の処理単位がプレーン単位の場合、１プレーン分のデータがパイプに入力された処理部品は処理を開始する。また、同期の処理単位がバンド単位の場合、１バンド分のデータがパイプに入力された処理部品は処理を開始する。パイプに対して処理単位分のデータが入力されたか否かは、当該データの入力を待機している処理部品が監視してもよいし、他のプログラムモジュールに監視させ、当該プログラムモジュールが、待機している処理部品に通知するようにしてもよい。
【０１１７】
上述したように、第二の実施の形態における画像形成装置１０によれば、処理部品間の同期のタイミング（処理単位）について、より柔軟な設定を行うことができる。
【０１１８】
次に、第三の実施の形態について説明する。第三の実施の形態では、ジョブフローを登録する際に、処理部品の属性情報に基づいて、ジョブフローの実行の可否を判定する例について説明する。なお、第三の実施の形態では、第一の実施の形態又は第二の実施の形態と異なる点について説明する。したがって、特に言及しない点については、第一の実施の形態又は第二の実施の形態と同様でよい。
【０１１９】
図２４は、第三の実施の形態におけるジョブフローの登録処理の処理手順を説明するためのシーケンス図である。図２４中、図４と同一ステップには同一ステップ番号を付し、その説明は適宜省略する。すなわち、図２４の処理は、図３の処理に続けて実行される処理である。
【０１２０】
ステップＳ１２３におけるジョブフローの登録指示に応じ、フロー登録部１０３は、当該登録指示に含まれているジョブフロー情報においてジョブフローの構成要素とされている各処理部品の属性情報に基づいて当該ジョブフローの実行の可否を判定する（Ｓ７０１）。本実施の形態では、フロー登録部１０３は、各処理部品がパイプを介して入力可能なデータ形式と出力可能なデータ形式とに基づいて接続の可否を判定することにより、ジョブフローの実行を判定する。すなわち、画像形成装置１０において、処理部品の属性情報として、パイプを介してデータを入力する処理部品に関しては入力可能なデータ形式が定義されており、パイプを介してデータを出力する処理部品に関しては出力可能なデータ形式が定義されている。斯かる定義情報を、以下「処理部品インタフェース情報」という。したがって、ステップＳ７０１において、フロー登録部１０３は、処理部品インタフェース情報に基づいて各処理部品の接続の可否を判定する。
【０１２１】
図２５は、処理部品インタフェース情報を概念的に示す図である。図中、円は処理部品を示し、矩形は、処理部品に入力可能な、又は処理部品から出力可能な（すなわち、処理部品が扱える）データ形式を示す。図２５において、例えば、スキャナ処理部品６０１は、ＲＧＢ形式又はＪＰＥＧ形式によって画像データを出力可能であることが示されている。集約処理部品６０２は、ＲＧＢ形式の画像データを入力可能であり、ＲＧＢ形式又はＣＭＹＫ形式によって画像データを出力可能であることが示されている。プロッタ処理部品６０３は、ＣＭＹＫ形式の画像データを入力可能であることが示されている。ページ印字処理部品６０４は、ＣＭＹＫ形式又はＲＧＢ形式の画像データを入力可能であり、ＣＭＹＫ形式によって画像データを出力可能であることが示されている。メール送信処理部品６０５は、ＲＧＢ形式の画像データを入力可能であることが示されている。
【０１２２】
フロー登録部１０３は、接続される前後の処理部品について、前の処理部品の出力可能なデータ形式と、後の処理部品が入力可能なデータ形式とを比較することで、当該前後の処理部品の接続の可否を判定する。すなわち、前の処理部品の出力可能なデータ形式の中で、後の処理部品が入力可能なデータ形式があれば当該前後の処理部品は接続可能であると判定する。一方、前の処理部品の出力可能なデータ形式のいずれについても、後の処理部品が入力可能でない場合、当該前後の処理部品は接続不可能であると判定する。
【０１２３】
例えば、図２６は、全ての処理部品が接続可能なジョブフローの例を示す図である。図２６では、スキャナ処理部品６０１の次に集約処理部品６０２が接続され、集約処理部品６０２の次に、メール送信処理部品６０５とプロッタ処理部品６０３とが接続されるジョブフローの例が示されている。スキャナ処理部品６０１はＲＧＢ形式又はＪＰＥＧ形式で出力可能であり、集約処理部品６０２はＲＧＢ形式が入力可能である。したがって、スキャナ処理部品６０１と集約処理部品６０２とはＲＧＢ形式によって接続可能である。また、集約処理部品６０２は、ＲＧＢ形式又はＣＭＹＫ形式で出力可能であるところ、メール送信処理部品６０５はＲＧＢ形式が入力可能であり、プロッタ処理部品６０３はＣＭＹＫ形式が入力可能である。したがって、集約処理部品６０２とメール送信処理部品６０５との間はＲＧＢ形式によって接続可能であり、集約処理部品６０２とプロッタ処理部品６０３との間はＣＭＹＫ形式によって接続可能である。よって、図２６の処理部品は、全ての処理部品が接続可能である。
【０１２４】
また、図２７は、少なくとも一部の処理部品について接続不可能なジョブフローの例を示す図である。図２７では、スキャナ処理部品６０１の次にページ印刷処理部品６０４が接続され、ページ印刷処理部品６０４の次に、メール送信処理部品６０５とプロッタ処理部品６０３とが接続されるジョブフローの例が示されている。ここで、ページ印刷処理部品６０４は、ＣＭＹＫでのみ出力可能であるところ、メール送信処理部品６０５は、ＲＧＢ形式でのみ入力可能である。したがって、図２７のジョブフローでは、ページ印刷処理部品６０４とメール送信処理部品６０５との間が接続不可能である。
【０１２５】
なお、処理部品インタフェース情報は、処理部品ごとに当該処理部品に関する情報が保持されていても良いし、ＨＤＤ１２に各処理部品の情報が一括して記録されていてもよい。前者の場合、フロー登録部１０３は、各処理部品に問い合わせることにより処理部品インタフェース情報を取得する。後者の場合、フロー登録部１０３は、ＨＤＤ１２より処理部品インタフェース情報を取得する。
【０１２６】
ステップＳ７０１の判定の結果、ジョブフローを構成する全ての処理部品間の接続が可能な場合、フロー登録部１０３は、当該ジョブフローは実行可能であると判定し、図４におけるステップＳ１２４〜Ｓ１３１の処理が実行される。
【０１２７】
一方、ステップＳ７０１の判定の結果、ジョブフローを構成する処理部品間のうち、接続不可能な箇所が一つでもある場合、フロー登録部１０３は、当該ジョブフローは実行不可能であると判定し、実行不可能であることを通知するための画面（エラー画面）を表示させるＨＴＭＬデータを生成し（Ｓ７０２）、当該ＨＴＭＬデータを通信部１０１に出力する（Ｓ７０３）。
【０１２８】
当該ＨＴＭＬデータは、通信部１０１によってクライアントＰＣ３０に送信され、クライアントＰＣ３０の通信部３０１によって受信される（Ｓ７０４）。通信部３０１が、受信したＨＴＭＬデータをリモートＵＩ３０２に出力すると（Ｓ７０５）、リモートＵＩ３０２は、当該ＨＴＭＬデータに基づいてエラー画面をクライアントＰＣ３０の表示装置に表示させる（Ｓ７０６）。
【０１２９】
図２８は、エラー画面の表示例を示す図である。図２８に示されるエラー画面６１０では、登録が要求されたジョブフローが表示され、当該ジョブフローにおいて処理部品間の接続が不可能な箇所（「ページ印刷」と「プロッタ」との間）に「×印」が表示されている。したがって、ユーザは、エラー画面６１０を参照することにより、当該処理部品間の接続が不可能であることを認識することができ、改めてジョブフローを生成し直すことができる。
【０１３０】
上述したように、第三の実施の形態における画像形成装置１０によれば、処理部品間の接続の可否に基づいてジョブフローの実行の可否を判定し、斯かる点において適切な設定がなされたジョブフローのみを登録することができる。したがって、処理部品間における扱えるデータ形式の相違に基づく動作不正の発生を防止することができる。
【０１３１】
なお、本実施の形態において、画像形成装置１０におけるフロー登録部１０３は、登録手段の一例である。
【０１３２】
以上、本発明の実施例について詳述したが、本発明は係る特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
【図面の簡単な説明】
【０１３３】
【図１】第一の実施の形態における画像処理システムの構成例を示す図である。
【図２】第一の実施の形態における画像処理システムの機能構成例を示す図である。
【図３】一台の画像形成装置に対するジョブフローの登録処理の処理手順を説明するためのシーケンス図である。
【図４】一台の画像形成装置に対するジョブフローの登録処理の処理手順を説明するためのシーケンス図である。
【図５】ジョブフロー生成画面の表示例を示す図である。
【図６】ジョブフロー情報の保存形式の例を概念的に示す図である。
【図７】複数の画像形成装置に対するジョブフローの登録処理の処理手順を説明するためのシーケンス図である。
【図８】複数の画像形成装置に対するジョブフローの一括登録処理の処理手順を説明するためのシーケンス図である。
【図９】ジョブフローの実行処理の第一の処理手順を説明するためのシーケンス図である。
【図１０】ジョブフローの実行処理の第二の処理手順を説明するためのシーケンス図である。
【図１１】ジョブフローの実行可否の判断方法を説明するための図である。
【図１２】ジョブフロー一覧画面の表示例を示す図である。
【図１３】ジョブフロー詳細画面の表示例を示す図である。
【図１４】ジョブフローＡの詳細画面の表示例を示す図である。
【図１５】ジョブフローＡの実行処理の処理手順を説明するためのシーケンス図である。
【図１６】ジョブフローＢの詳細画面の表示例を示す図である。
【図１７】ジョブフローＢの実行処理の処理手順を説明するためのシーケンス図である。
【図１８】ジョブフローＣの詳細画面の表示例を示す図である。
【図１９】ジョブフローＤの詳細画面の表示例を示す図である。
【図２０】ジョブフローＤの実行処理の処理手順を説明するためのシーケンス図である。
【図２１】第二の実施の形態における画像データの構成単位を説明するための図である。
【図２２】直列動作と並列動作との識別を可能としたジョブフロー生成画面の表示例を示す図である。
【図２３】第二の実施の形態におけるジョブフロー情報の保存形式の例を示す図である。
【図２４】第三の実施の形態におけるジョブフローの登録処理の処理手順を説明するためのシーケンス図である。
【図２５】処理部品インタフェース情報を概念的に示す図である。
【図２６】全ての処理部品が接続可能なジョブフローの例を示す図である。
【図２７】少なくとも一部の処理部品について接続不可能なジョブフローの例を示す図である。
【図２８】エラー画面の表示例を示す図である。
【符号の説明】
【０１３４】
１          画像処理システム
１０、１０ａ、１０ｂ      画像形成装置
１１        操作パネル
１２        ＨＤＤ（Hard Disk Drive）
１３        プロッタ
１４        画像情報加工装置
１５        スキャナ
２０        管理サーバ
３０、３０ａ、３０ｂ      クライアントＰＣ
４０        ネットワーク
１０１      通信部
１０２      操作パネル制御部
１０３      フロー登録部（登録手段の一例）
１０４      フロー解析処理部
１０５      フロー記憶部
１０６      ＨＤＤ制御部
１０７      プロッタ制御部
１０８      画像情報加工装置制御部
１０９      スキャナ制御部
１１１      ジョブフロー一覧画面
１１２      ジョブフロー詳細画面
２０１      通信部
２０２      フロー登録部
３０１      通信部
３０２      リモートＵＩ
【図１】
2008011500.tif 000003
【図２】
2008011500.tif 000004
【図３】
2008011500.tif 000005
【図４】
2008011500.tif 000006
【図５】
2008011500.tif 000007
【図６】
2008011500.tif 000008
【図７】
2008011500.tif 000009
【図８】
2008011500.tif 000010
【図９】
2008011500.tif 000011
【図１０】
2008011500.tif 000012
【図１１】
2008011500.tif 000013
【図１２】
2008011500.tif 000014
【図１３】
2008011500.tif 000015
【図１４】
2008011500.tif 000016
【図１５】
2008011500.tif 000017
【図１６】
2008011500.tif 000018
【図１７】
2008011500.tif 000019
【図１８】
2008011500.tif 000020
【図１９】
2008011500.tif 000021
【図２０】
2008011500.tif 000022
【図２１】
2008011500.tif 000023
【図２２】
2008011500.tif 000024
【図２３】
2008011500.tif 000025
【図２４】
2008011500.tif 000026
【図２５】
2008011500.tif 000027
【図２６】
2008011500.tif 000028
【図２７】
2008011500.tif 000029
【図２８】
2008011500.tif 000030