(57)【要約】【課題】第１の課題として、同じ処理工程を複数回実行することにより、処理が非効率化するおそれがあった。また、第２の課題として、合成前の各ワークフローで得られるべき処理結果を合成ワークフローにおいて得ることができないおそれがあった。【解決手段】同一機能を使用する処理工程を１つにまとめたワークフローを生成する。その際、必要に応じて、複数の処理工程間における属性に差異があると判定された場合、前記差異を調整するための処理工程を特定する。【選択図】図５
2008282336.tif 000002
【特許請求の範囲】
【請求項１】
複数のワークフローにおける同一機能を用いる処理工程について、同一機能と判定された複数の処理工程間における属性を解析する解析手段と、
前記複数の処理工程を合成する合成手段と、
前記解析手段により前記複数の処理工程間における属性に差異があると判定された場合、前記差異を調整するための処理工程を特定する特定手段と、
前記合成手段が前記複数のワークフローにおいて同一機能を用いる処理工程を合成することによって得られた処理工程と、前記特定手段によって特定された前記差異を調整するための処理工程とを用いて前記複数のワークフローを結合する結合手段とを有することを特徴とするワークフロー生成装置。
【請求項２】
前記合成手段は、前記複数の処理工程間における属性の差異を調整して前記複数の処理工程を合成することを特徴とする請求項１に記載のワークフロー生成装置。
【請求項３】
前記解析手段による解析結果に基づいて、前記合成手段による合成処理の可否を判断する判断手段を有し、
前記合成手段は、前記判断手段により合成処理が不可であると判断された場合、前記複数の処理工程の合成を行わないことを特徴とする請求項１又は２に記載のワークフロー生成装置。
【請求項４】
前記結合手段により結合された前記複数のワークフローを実行する実行手段を有し、
前記実行手段は、前記複数のワークフローのうちの何れかのワークフローに依存する処理工程にエラーが生じた場合、当該エラーが生じた処理工程とは異なる処理工程であり、かつ、当該エラーが生じた処理工程の影響を受けない処理工程について、継続して処理を実行することを特徴とする請求項１乃至３の何れか１項に記載のワークフロー生成装置。
【請求項５】
前記複数のワークフローの実行前又は実行後に行われる各付加処理を、前記合成ワークフローの実行前又は実行後に行うように制御する実行管理手段を有することを特徴とする請求項１乃至４の何れか１項に記載のワークフロー生成装置。
【請求項６】
複数の処理工程を順次実行するワークフローを生成するワークフロー生成装置であって、
複数のワークフローを選択する選択手段と、
前記選択手段によって選択された複数のワークフローにおいて、同一機能を使用する処理工程を判定する判定手段と、
前記判定手段によって同一機能を使用すると判定された処理工程を１つにまとめたワークフローを生成する生成手段とを有することを特徴とするワークフロー生成装置。
【請求項７】
ワークフロー生成装置によるワークフロー生成方法であって、
複数のワークフローにおける同一機能を用いる処理工程について、同一機能と判定された複数の処理工程間における属性を解析する解析ステップと、
前記複数の処理工程を合成する合成ステップと、
前記解析ステップにより前記複数の処理工程間における属性に差異があると判定された場合、前記差異を調整するための処理工程を特定する特定ステップと、
前記合成ステップが前記複数のワークフローにおいて同一機能を用いる処理工程を合成することによって得られた処理工程と、前記特定ステップによって特定された前記差異を調整するための処理工程とを用いて前記複数のワークフローを結合する結合ステップとを含むことを特徴とするワークフロー生成方法。
【請求項８】
ワークフロー生成方法をコンピュータに実行させるためのプログラムであって、
複数のワークフローにおける同一機能を用いる処理工程について、同一機能と判定された複数の処理工程間における属性を解析する解析ステップと、
前記複数の処理工程を合成する合成ステップと、
前記解析ステップにより前記複数の処理工程間における属性に差異があると判定された場合、前記差異を調整するための処理工程を特定する特定ステップと、
前記合成ステップが前記複数のワークフローにおいて同一機能を用いる処理工程を合成することによって得られた処理工程と、前記特定ステップによって特定された前記差異を調整するための処理工程とを用いて前記複数のワークフローを結合する結合ステップとをコンピュータに実行させるためのプログラム。
【請求項９】
複数の処理工程を順次実行するワークフローを生成するワークフロー生成装置によるワークフロー生成方法であって、
複数のワークフローを選択する選択ステップと、
前記選択ステップによって選択された複数のワークフローにおいて、同一機能を使用する処理工程を判定する判定ステップと、
前記判定ステップによって同一機能を使用すると判定された処理工程を１つにまとめたワークフローを生成する生成ステップとを含むことを特徴とするワークフロー生成方法。
【請求項１０】
複数の処理工程を順次実行するワークフローを生成するためのワークフロー生成方法をコンピュータに実行させるためのプログラムであって、
複数のワークフローを選択する選択ステップと、
前記選択ステップによって選択された複数のワークフローにおいて、同一機能を使用する処理工程を判定する判定ステップと、
前記判定ステップによって同一機能を使用すると判定された処理工程を１つにまとめたワークフローを生成する生成ステップとをコンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数のワークフローを合成した合成ワークフローを生成するための技術に関するものである。
【背景技術】
【０００２】
複写機等の画像形成装置は、情報技術の高度化と共に機能が複雑化し、それらの機能を統合したマルチファンクション機（ＭＦＰ）として発展してきた。装置上で画像を編集する、外部にあるサービス等と連携して処理を行う等、より高度な機能を備えるに至っている。
【０００３】
さらに、オフィス環境における作業効率化のため、ＭＦＰの持つ複数の機能を組み合わせてワークフローとして定義しておき、定義したワークフローを実行できる装置が開発された。
【０００４】
【特許文献１】特開２００５−３２２１１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、上述した従来技術では、定義した通りのワークフローを実行することしかできない。そのため、同じ工程を含む複数のワークフローを実行する場合に、同じ工程を複数回実行しなければならず、ユーザの負担となっていた。ここで、本願が想定する課題の一例について説明する。例えば、１００ページのドキュメントＡの印刷物を読み込んで、複写するワークフロー１と、同じ１００ページのドキュメントＡの印刷物を読み込んで、他のデバイスに送信する（以下：ＳＥＮＤ）するワークフロー２とを実行する場合を想定する。ワークフロー１とワークフロー２の両方を実行すると、ドキュメントＡの印刷物について１００ページのスキャン処理が２回行われる。そのため、第１の課題として、同じ処理工程を複数回実行することにより、処理が非効率化するおそれがあった。
【０００６】
また、処理の効率化を実現するために複数のワークフローの同一処理工程を合成する技術も考えられるが、単純に合成できない場合もある。その一例を説明する。例えば上記ワークフロー１とワークフロー２とのスキャン工程を合成する技術が考えられるが、ワークフロー１のスキャン属性とワークフロー２のスキャン属性とに差異がある場合、単純に合成するとユーザが所望とする処理結果が得られなくなるおそれがあった。そのため、第２の課題として、合成前の各ワークフローで得られるべき処理結果を合成ワークフローにおいて得ることができないおそれがあった。
【０００７】
そこで、本発明の目的は、上述した第１の課題および第２の課題の少なくとも１つを解決することにある。
【課題を解決するための手段】
【０００８】
本発明のワークフロー生成装置の第１の態様は、複数のワークフローにおける同一機能を用いる処理工程について、同一機能と判定された複数の処理工程間における属性を解析する解析手段と、前記複数の処理工程を合成する合成手段と、前記解析手段により前記複数の処理工程間における属性に差異があると判定された場合、前記差異を調整するための処理工程を特定する特定手段と、前記合成手段が前記複数のワークフローにおいて同一機能を用いる処理工程を合成することによって得られた処理工程と、前記特定手段によって特定された前記差異を調整するための処理工程とを用いて前記複数のワークフローを結合する結合手段とを有することを特徴とする。
本発明のワークフロー生成装置の第２の態様は、複数の処理工程を順次実行するワークフローを生成するワークフロー生成装置であって、複数のワークフローを選択する選択手段と、前記選択手段によって選択された複数のワークフローにおいて、同一機能を使用する処理工程を判定する判定手段と、前記判定手段によって同一機能を使用すると判定された処理工程を１つにまとめたワークフローを生成する生成手段とを有することを特徴とする。
【発明の効果】
【０００９】
本発明によれば、ユーザの利便性を向上、および、合成前の各ワークフローで得られるべき処理結果を合成ワークフローにおいて得ることが可能となるという効果の少なくとも１つを実現することが可能となる。
【発明を実施するための最良の形態】
【００１０】
以下、本発明を適用した好適な実施形態を、添付図面を参照しながら詳細に説明する。
【００１１】
図１は、本発明の実施形態に係る画像形成装置を含むネットワークシステムの構成例を示す図である。本実施形態における画像形成装置は、データ送受信機能を有するＭＦＰである。ＭＦＰは、本発明の合成ワークフロー生成装置の一適用例となる構成である。なお、本願では、複数の処理工程を順次実行すべく定義された情報をワークフローとする。
【００１２】
図１において、ネットワークシステムは、ＬＡＮ１００、ＭＦＰ１０１及び１０２、サーバパーソナルコンピュータ（サーバＰＣ）１０３、並びに、クライアントパーソナルコンピュータ（クライアントＰＣ）１０４から構成される。
【００１３】
ＭＦＰ１０１は、コピー機能を有するとともに、原稿画像を読み取り、得られた画像データをＬＡＮ１００上の各装置に送信するデータ送信機能を有する。また、ＭＦＰ１０１は、ＰＤＬ（Page Description Language）機能を有するので、ＬＡＮ１００上に接続されているコンピュータから指示されたＰＤＬ画像を受信して印刷することが可能である。
【００１４】
ＭＦＰ１０１は、ＭＦＰ１０１で読み取った画像や、ＬＡＮ１００上に接続されているコンピュータから指示されたＰＤＬ画像を、ＭＦＰ１０１内のＨＤＤ２０４（図２）に保存することが可能である。また、ＨＤＤ２０４に保存された画像を印刷することが可能である。
【００１５】
ＭＦＰ１０１は、ＭＦＰ１０２が読み取ったデータを、ＬＡＮ１００を介して受信し、受信したデータをＭＦＰ１０１内のＨＤＤ２０４（図２）に保存したり、印刷出力したりすることが可能である。また、ＬＡＮ１００を介して、サーバＰＣ１０３及びクライアントＰＣ１０４の画像を受信し、ＭＦＰ１０１内に保存したり、印刷出力したりすることが可能である。なお、ＭＦＰ１０２もＭＦＰ１０１と同様の機能を有する。
【００１６】
サーバＰＣ１０３は、ＬＡＮ１００を介して、ＭＦＰ１０１及びＭＦＰ１０２の動作状態を収集し、データベースとして保管することが可能である。また、ＭＦＰ１０１及びＭＦＰ１０２が読み取ったデータを、ＬＡＮ１００を介して受信し、受信したデータをサーバＰＣ１０３内のハードディスク５（図３）に保存することが可能である。
【００１７】
クライアントＰＣ１０４は、サーバＰＣ１０３から所望のデータを取得して表示することが可能であるとともに、ＭＦＰ１０１及びＭＦＰ１０２が読み取ったデータを、ＬＡＮ１００を介して受信し、受信したデータを加工、編集することが可能である。
【００１８】
図２は、図１で示したＭＦＰ１０１及びＭＦＰ１０２の構成例を示すブロック図である。コントローラ２００は、文書データ、画像情報、デバイス情報の入出力を行う為のコントローラである。コントローラ２００は、画像入力デバイスであるスキャナ２５３や画像出力デバイスであるプリンタ２５４と接続してスキャンやプリント等の機能を実現することができる。また、ネットワーク・インターフェース・カード（ＮＩＣ）２０６を通じてＬＡＮ１００に接続し、他のＭＦＰやＰＣ等の外部機器とデータの送受信をすることができる。
【００１９】
コントローラ２００は、ＣＰＵ２０１、ＲＡＭ２０２、ＲＯＭ２０３、ＨＤＤ２０４を保持する。ＲＡＭ２０２はＣＰＵ２０１が動作するための作業メモリや、画像データを一時記憶するための画像メモリとして使用される。ＲＯＭ２０３には、システムのブートプログラムが格納されている。ＨＤＤ２０４はハードディスクドライブで、システムソフトウェア、画像データやその属性データ、ユーザデータ、後述するワークフローに関するデータ等を格納する。
【００２０】
操作部２５２は、スキャンやプリント等の機能を実行するためのユーザインタフェースである。操作部Ｉ／Ｆ２０５は、操作部２５２に表示する画像データを出力する。また、操作部２５２からユーザが入力した情報を、ＣＰＵ２０１に伝える。
【００２１】
イメージバスＩ／Ｆ２１０は、システムバス２０７と画像データを高速で転送する画像バス２２０を接続し、データ構造を変換するバスブリッジである。
【００２２】
画像バス２２０上には、ラスターイメージプロセッサ（ＲＩＰ）２２１、デバイスＩ／Ｆ２２２、画像処理部２２３がある。ＲＩＰ２２１は、ＬＡＮ１００上に配置された情報処理装置から入力されるＰＤＬコードをビットマップイメージに展開する。デバイスＩ／Ｆ２２２は、画像入出力デバイスであるスキャナ２５３やプリンタ２５４とコントローラ２００を接続し、画像データの同期系／非同期系の変換を行う。画像処理部２２３は、入力画像データに対して補正、加工、編集を行う。
【００２３】
図３は、図１で示したサーバＰＣ１０３及びクライアントＰＣ１０４の構成例を示すブロック図である。
【００２４】
図３の各構成要素はシステムバス１に接続されている。ＣＰＵ２は、システムバス１を介して各構成要素を制御する中央処理装置であり、ＲＯＭ（不図示）に格納された制御プログラムに基づいてプログラムを実行する。プログラムメモリ（ＰＭＥＭ）３は、条件分岐処理を実行するための制御プログラムを適宜ＲＯＭから選択して読み込むためのメモリである。また、キーボード１１から入力されたデータはテキストメモリでもあるＰＭＥＭ３にコード情報として格納される。
【００２５】
外部記憶制御部４は、外部記憶装置（本実施形態ではハードディスク５とフロッピー（登録商標）ディスク６）に対するデータの書き込み／読み出しを制御する。ハードディスク５は、データファイル用の外部記憶装置である。フロッピー（登録商標）ディスク６は、データファイル用の外部記憶装置である。
【００２６】
入力制御部１０には、キーボード１１、ポインティングデバイス１２等の入力装置が接続される。操作者はキーボード１１を操作することによりシステムに対する動作指令等を行う。ポインティングデバイス１２は、操作者がＣＲＴ９上で画像情報の加工を指示するためのものである。操作者はポインティングデバイス１２により、ＣＲＴ９上のカーソルをＸ方向／Ｙ方向へ任意に移動させ、コマンドメニュー上のコマンドアイコンを選択して処理の指示を行うほか、編集対象の指示や描画位置の指示等も行う。
【００２７】
ビデオイメージメモリ（ＶＲＡＭ）７は、ＣＲＴ９に表示する文字データや図形データがビットマップデータとして展開されるメモリである。表示出力制御部８は、ＣＲＴ９に対する表示を制御する。ＣＲＴ９の表示方式はＣＲＴに限定されず、液晶モニタ等でもよい。
【００２８】
図４は、ＭＦＰ１０１及びＭＦＰ１０２の操作部２５２を説明するための構成図である。電源ボタン４０１は、ＭＦＰの電源を入力及び切断するためのボタンである。スタートボタン４０２は、スキャン処理や印刷処理等を実行するためのボタンである。キャンセルボタン４０３は、スタートボタン４０２によって実行された処理を途中で中断するためのボタンである。表示部４０４は、操作部Ｉ／Ｆ２０５を介して送信される、画像やプログラムによって形成された操作ダイアログやボタンなどを表示するための液晶ディスプレイ（ＬＣＤ）である。さらに、ＬＣＤ上にはタッチパネルが貼り付けられており、表示部４０４に表示される操作ダイアログを操作したり、ボタンを押したりすることができる。テンキー４０５は、印刷枚数や数値の入力、入力した数値をクリアするためのボタン群である。リセットボタン４０６は、操作部２５２で設定されている情報を初期化するためのボタンである。ＩＤボタン４０７は、ユーザ認証を行うためのボタンである。
【００２９】
図５は、ワークフロー合成処理に関する機能ブロック図である。ワークフローの実行や合成処理はコントローラ２００の中で行われる。
【００３０】
解析部５０１は、ワークフローの各工程を解析し、解析された内容に基づいて、合成が可能かどうかを判定するブロックである。合成部５０３は、解析部５０１の判定結果に基づいて工程を合成するブロックである。結合部５０４は、元の複数のワークフローを合成部５０３で作成された合成処理によって結合して合成ワークフローを作成するブロックである。実行部５０５は、合成ワークフローを実行するブロックである。実行管理部５０６は、実行部５０５で実行中のワークフローを上位で管理するブロックである。例えば、実行管理部５０６は、合成ワークフローの１つの工程でエラーが発生した場合、その工程を元のワークフローと照らし合わせ、一方のフローにしか影響がない工程であれば、他のフローは継続させるといった処理を行う。結合部５０４は、本発明の結合手段の一適用例となる構成である。例えば、図１２に合成ワークフロー１２００を示しているが、合成ワークフロー１２００の印刷工程１００３にてエラーが発生した場合、当該印刷工程でのエラーは、画像調整（モノクロ）１２０３から送信１０１３の工程に影響を与えない。よって、印刷工程１００３がエラーであった場合であっても、合成ワークフロー１２００の画像調整（モノクロ）１２０３から送信１０１３の工程は続行される。実行部５０５は、本発明の実行手段の一適用例となる構成である。
【００３１】
また、ワークフローの中には、セキュリティ要件から、ワークフローの実行後にドキュメントを削除する付加処理が設定されているものがある。実行管理部５０６は、合成前のワークフローの中に、このように付加処理を有するワークフローが存在した場合、合成ワークフローの実行後に、ドキュメントを削除するといった処理を行う。また、実行管理部５０６は、ワークフローの実行前に実行されるべき付加処理が設定されているものがある場合、合成ワークフローの実行前に当該付加処理を実行する。つまり、実行管理部５０６は、複数のワークフローの実行前又は実行後に行われる各付加処理を、前記合成ワークフローの実行前又は実行後に行うように制御する。この実行管理部５０６による処理は、本発明の実行管理手段の一処理例となる処理である。
【００３２】
図６は、同じ工程を含む２つのワークフロー６００及びワークフロー６１０を示した図である。
【００３３】
スキャン工程６０１及びスキャン工程６１１は、画像形成装置において、紙に記載された内容を複写して画像データを作成する工程である。プレビュー工程６０２及びプレビュー工程６１２は、スキャン工程で作成された画像データの概要を確認する工程である。確認は、表示部４０４に画像データのサムネイル等を表示して行う。印刷工程６０３及び印刷工程６１３は、スキャン工程で作成された画像データを紙媒体へ出力する工程である。印刷工程６０３で出力された紙媒体は、会議等で配布することを想定している。一方、印刷工程６１３で出力された紙媒体は、将来に渡って保管することを想定している。
【００３４】
図７は、図６に示す印刷工程６０３及び印刷工程６１３の設定情報を示す図である。設定項目７０１は、印刷工程で設定可能な項目の種類である。印刷設定は、画像データの内容をどのように紙上への割り付けるかを設定する項目で、片面印刷や両面印刷、１ページに複数ページを割り付けるＮｉｎ１印刷等がある。印刷特殊設定は、紙媒体の出力形式を設定する項目で、紙をステープルで中綴じする製本印刷等がある。部数は出力する部数を設定する項目である。
【００３５】
会議配布用列７０２は、印刷工程６０３の詳細情報を示す列である。印刷特殊設定が製本印刷であるため、印刷設定は自動的に非設定状態となっている。部数は、配布用に２０部が設定されている。
【００３６】
保管用列７０３は、印刷工程６１３の詳細情報を示す列である。保管する紙枚数を減らすために、両面の２ｉｎ１設定がされている。印刷特殊設定は無く、部数は保管用の１部のみが設定されている。
【００３７】
図８は、図６に示す２つのワークフロー６００とワークフロー６１０を合成したワークフロー８００を示す図である。
【００３８】
スキャン工程８０１は、スキャン工程６０１とスキャン工程６１１とを合成した工程である。スキャン工程６０１とスキャン工程６１１とは、設定値も含めて同じ工程であるため、スキャン工程８０１は、スキャン工程６０１及びスキャン工程６１１と同じ内容の工程となる。
【００３９】
プレビュー工程８０２も、プレビュー工程６０２及びプレビュー工程６１２が同じ工程であるため、プレビュー工程６０２及びプレビュー工程６１２と同じ内容の工程として合成される。
【００４０】
印刷工程６０３及び印刷工程６１３は出力形式が異なるため、合成することはできない。ワークフロー８００は、スキャン工程、プレビュー工程を共通化して省略しているが、ワークフロー６００とワークフロー６１０の両方を実行した結果と同様の結果を得ることができ、効率化が図れる。
【００４１】
図９は、ワークフロー６００とワークフロー６１０とから合成ワークフロー８００を作成し、実行するときの操作ＵＩの例を示す図である。ボタン９０１はワークフローを選択するボタンである。ボタン９０２はワークフローを実行するボタンである。複数のワークフローを選択して実行すると、合成されたワークフローが作成され、実行される。つまり、解析部５０１は、ユーザにより指示された複数のワークフローを選択する。
【００４２】
ボタン９０３は別の操作ＵＩへ移動するボタン、ボタン９０４はワークフローのリスト表示をスクロールさせるためのボタンである。
【００４３】
図１０は、同じ工程ではあるが、設定内容が異なる工程を持つ２つのワークフロー１０００及びワークフロー１０１０を示した図である。
【００４４】
スキャン工程１００１及びスキャン工程１０１１は、画像形成装置において、紙に記載された内容を複写して画像データを作成する工程である。但し、スキャン工程１００１とスキャン工程１０１１とは設定内容が異なる。設定内容の差異は図１１で述べる。
【００４５】
プレビュー工程１００２及びプレビュー工程１０１２は、スキャン工程で作成された画像データの概要を確認する工程である。確認は、表示部４０４に画像データのサムネイル等を表示して行う。印刷工程１００３は、スキャン工程１００１で作成された画像データを紙媒体へ出力する工程である。送信工程１０１３は、スキャン工程１０１１で作成された画像データを電子メールに添付して送付したり、ネットワーク上の別のサーバへ送付したりする工程である。
【００４６】
図１１は、図１０に示すワークフローのスキャン工程１００１及びスキャン工程１０１１の設定情報を示す図である。
【００４７】
設定項目列１１０１は、スキャン工程で設定可能な項目の種類である。解像度は、スキャン工程によって作成される画像データの精度を設定する項目である。解像度はｄｐｉ（ｄｏｔ ｐｅｒ ｉｎｃｈ）等の単位で設定される。カラー／モノクロは、画像データを複数色で作成するか、単一色で作成するかを設定する項目である。
【００４８】
印刷フローのスキャン属性１１０２は、スキャン工程１００１の設定値である。送信フローのスキャン属性１１０３は、スキャン工程１０１１の設定値である。合成フローのスキャン属性１１０４は、図１２で後述する合成ワークフロー１２００のスキャン工程１２０１の設定値である。
【００４９】
合成フローのスキャン属性１１０４は、印刷フローのスキャン属性１１０２と送信フローのスキャン属性１１０３との夫々の設定値（解像度、カラー／モノクロ）のうち、高品位な方を設定値として選択する。
【００５０】
図１２は、図１０に示す２つのワークフロー１０００とワークフロー１０１０とを合成したワークフロー１２００を示す図である。
【００５１】
スキャン工程１２０１は、スキャン工程１００１とスキャン工程１０１１とを合成した工程である。ここで、スキャン工程１２０１は、上述したように、スキャン工程１００１とスキャン工程１０１１との夫々の設定値のうち、高品位な方を設定値として保持している。そのため、スキャン工程１２０１は、６００ｄｐｉにてスキャン処理を実行する。
【００５２】
プレビュー工程１２０２は、プレビュー工程１００２及びプレビュー工程１０１２が同じ工程であるため、プレビュー工程１００２及びプレビュー工程１０１２と同じ内容の工程として合成される。
【００５３】
印刷工程１００３は、ワークフロー１０００の印刷工程である。解像度６００ｄｐｉ、カラーで作成された画像データを紙媒体へ出力する。
【００５４】
画像調整工程１２０３及び画像調整工程１２０４は、ワークフローが合成されたことによって、合成ワークフローに追加された工程である。スキャン工程１２０１では、解像度６００ｄｐｉ、カラーで画像データを作成するが、送信工程１０１３では、解像度２００ｄｐｉ、モノクロの画像データを送信する必要がある。そのため、画像調整工程１２０３では、コントローラ２００に内蔵されたソフトウェアがカラー画像をモノクロ画像に自動で変換する。また、画像調整工程１２０４では、コントローラ２００に内蔵されたソフトウェアが解像度を６００ｄｐｉから２００ｄｐｉに自動で変換する。
【００５５】
画像調整工程１２０３及び画像調整工程１２０４は、自動で行われる工程であるため、ワークフローを実行したユーザは作業を行う必要は無い。
【００５６】
ワークフロー１２００は、スキャン工程、プレビュー工程を共通化して省略しているが、ワークフロー１０００とワークフロー１０１０の両方を実行した結果とほぼ同様の結果を得ることができ、効率化が図れる。
【００５７】
図１３は、図１０に示すワークフローのスキャン工程１００１及びスキャン工程１０１１の設定情報を示す図であり、図１１の設定情報とは、設定値が異なっている。
【００５８】
設定項目列１３０１は、スキャン工程で設定可能な項目の種類であり、内容は図１１と同じである。
【００５９】
印刷フローのスキャン属性１３０２は、スキャン工程１００１の設定値である。送信フローのスキャン属性１３０３は、スキャン工程１０１１の設定値である。合成フローのスキャン属性１３０４は、図１４で後述する合成ワークフロー１４００のスキャン工程１４０１の設定値である。
【００６０】
合成フローのスキャン属性１３０４は、印刷フローのスキャン属性１３０２と送信フローのスキャン属性１３０３との夫々の設定値のうち高品位な方を設定値として選択する。
【００６１】
図１４は、図１０に示す２つのワークフロー１０００とワークフロー１０１０とを図１３の設定値において合成したワークフロー１４００を示す図である。
【００６２】
スキャン工程１４０１は、スキャン工程１００１とスキャン工程１０１１とを合成した工程である。ここで、スキャン工程１４０１は、スキャン工程１００１とスキャン工程１０１１との夫々の設定値のうち高品位な方を設定値として保持している。よって、スキャン工程１４０１では、６００ｄｐｉ、カラーにてスキャンが実行される。
【００６３】
プレビュー工程１４０２は、プレビュー工程１００２及びプレビュー工程１０１２が同じ工程であるため、プレビュー工程１００２及びプレビュー工程１０１２と同じ内容の工程として合成される。
【００６４】
画像調整工程１４０３及び画像調整工程１４０４は、ワークフローが合成されたことによって、追加された工程である。
【００６５】
スキャン工程１４０１では、解像度６００ｄｐｉ、カラーで画像データを作成するが、印刷工程１００３では、解像度６００ｄｐｉ、モノクロの画像データを印刷する必要がある。そのため、画像調整工程１４０３では、コントローラ２００に内蔵されたソフトウェアがカラー画像をモノクロ画像に自動で変換する。
【００６６】
また、送信工程１０１３では、解像度２００ｄｐｉ、カラーの画像データを送信する必要がある。そのため、画像調整工程１４０４では、コントローラ２００に内蔵されたソフトウェアが解像度を６００ｄｐｉから２００ｄｐｉに自動で変換する。
【００６７】
画像調整工程１４０３及び画像調整工程１４０４は、自動で行われる工程であるため、ワークフローを実行したユーザは作業を行う必要は無い。
【００６８】
ワークフロー１４００は、スキャン工程、プレビュー工程を共通化して省略しているが、ワークフロー１０００とワークフロー１０１０との両方を実行した結果とほぼ同様の結果を得ることができ、効率化が図れる。
【００６９】
また、合成ワークフロー１４００では、両方のワークフローで画像調整工程が挿入されており、スキャン工程１４０１で得られたオリジナルの画像データが利用されない。このようなオリジナルの画像が生かされないような場合に、合成を行わないようにすることも可能である。
【００７０】
図１５は、ワークフロー合成処理を説明するためのフローチャートである。図１５に示すフローチャートは、２つのワークフローを結合する例を示す。
【００７１】
まず、解析部５０１は、指定された２つのワークフローＡ及びワークフローＢを工程（処理工程）に分解し（Ｓ１５０１）、各工程を比較し（Ｓ１５０２）、同一機能を用いる工程が存在するかどうかを検索（判定）する（Ｓ１５０３）。具体的には、例えばフローＡの１つ目の処理工程がスキャン処理である場合、解析部５０１は、フローＢにスキャン処理を行うスキャン工程の有無を判定する。ステップＳ１５０３は、本発明の判定手段の一処理例である。また、２つのワークフローＡ、Ｂの指定処理は、本発明の選択手段の一処理例である。
【００７２】
同一機能の工程が見つかった場合、解析部５０１はそれらの工程の属性の一致性を解析する（Ｓ１５０４）。このステップＳ１５０４の詳細については、図１６を用いて説明する。解析部５０１は、上記の解析結果に基づいて、「合成不可」、「差異なし」、「差異あり」の３分類に大別する（Ｓ１５０５）。ステップＳ１５０４は、本発明の解析手段の一処理例となる処理である。
【００７３】
解析部５０１により「合成不可」と判定された場合、合成部５０３による工程の合成は実行されない。また、解析部５０１により解析された属性が一致すると判断され、差異なしと判断された場合、合成部５０３は工程を共通化して合成する（Ｓ１５０６）。その結果、合成部５０２は、同一機能を使用する処理工程を１つにまとめたワークフローを生成することが可能となる。この同一機能を使用する処理工程を１つにまとめたワークフローの生成処理は、本発明の生成手段の一処理例である。また、解析部５０１により解析された属性が一致しないが、合成可能と判定された場合、合成部５０１により図１７に示す表に基づいて合成工程が作成される（Ｓ１５０７）。この際、合成によって追加工程が発生する場合もある。工程を共通化又は合成した場合、元の工程は不要になるため省略される（Ｓ１５０８）。ステップＳ１５０６、Ｓ１５０７は、本発明の合成手段の一処理例となる処理である。
【００７４】
工程の比較が全て終了すると（Ｓ１５０９）、結合部５０４は、合成された工程が一つでも存在するかどうかを確認する（Ｓ１５１０）。合成された工程が存在する場合、結合部５０４は、元のワークフローを合成された工程で連結し、合成ワークフローを作成する（Ｓ１５１１）。合成された工程が存在しなかった場合、結合部５０４は、ワークフローを合成できない旨のエラー通知を行う（Ｓ１５１２）。ステップＳ１５１１は、本発明の結合手段の一処理例となる処理である。
【００７５】
図１６は、図１５のステップＳ１５０４の詳細を示すフローチャートである。まず、解析部５０１は、解析結果の初期値として「差異なし」を設定する（Ｓ１６０１）。次に、解析部５０１は、入力パラメータとして渡された２つの工程（Ａ（ｎ）、Ｂ（ｎ））に関して属性の各設定値（ａ（ｍ）：ｂ（ｍ））を比較し（Ｓ１６０２）、２つの工程に関して設定値（属性）に差異があるか否かを判断する（Ｓ１６０３）。２つの工程に関して設定値に差異がない場合、処理はＳ１６０２に戻る。２つの工程に関して設定値に差異がある場合、解析部５０１は、図１７に示す判断基準情報を参照する（Ｓ１６０４）。解析部５０１は、判断基準情報を参照することにより、Ｓ１６０３で認識された設定値の差異について工程の合成が可能であるか否かを判断する（Ｓ１６０５）。ステップＳ１６０５は、本発明の判断手段の一処理例となる処理である。
【００７６】
工程の合成が不可である場合、解析結果として「合成不可」を設定し（Ｓ１６０６）、本フローチャートを終了する。この場合、合成工程は生成されない。例えば、ワークフローＡとワークフローＢとの「プレビュー」工程を合成するか否かを判定する場合において、
ワークフローＡのプレビュー工程の解像度が６００ｄｐｉであり、一方、ワークフローＢのプレビュー工程の解像度が２００ｄｐｉとする。この場合、解析部５０１は、比較対象の解像度の差異が２００以上であるため、図１７より「合成不可」と判定する。
【００７７】
一方、判断基準情報を参照した結果、Ｓ１６０３で認識された設定値の差異について工程の合成が可能であると判断された場合、解析部５０１は、判断基準情報から設定値を変更するか否かを判断する（Ｓ１６０７）。設定値を変更する場合には、該当する合成方法１７０５に従ってその設定値を記憶する（Ｓ１６０８）。例えば、ワークフローＡとワークフローＢとの「スキャン」工程を合成するか否かを判定する場合において、ワークフローＡのスキャン工程の解像度が６００ｄｐｉであり、一方、ワークフローＢのスキャン工程の解像度が４００ｄｐｉとする。この場合、解析部５０１は、比較対象の解像度の差異が１００以上、６００以下であるため、図１７より「属性を高品位側へ調整」と判定する（Ｓ１６０７−Ｙｅｓ）。この際、解析部５０１は、Ｓ１６０８において、解像度として５００ｄｐｉを記憶する。
【００７８】
Ｓ１６０８において記憶した値は、全ての設定値を比較した結果、工程が合成可能と決定された場合に、図１５の合成工程作成ステップ（Ｓ１５０７）で利用される。このステップＳ１５０７の処理により、合成部５０３は、複数の工程間における設定値の差異を調整して合成工程を生成している。
【００７９】
さらに、解析部５０１は、判断基準情報を参照することにより、設定値の変更だけでなく、追加する工程が存在するか否かを判断する（Ｓ１６０９）。追加する工程が存在する場合、解析部５０１は、合成ワークフローに適用すべき追加工程の内容を特定して、記憶する（Ｓ１６１０）。ここでは、合成対象となる処理工程間に設定値の差異がある場合に、その差異を調整するための追加工程の内容が適用すべき処理工程として特定される。記憶された値は、全ての設定値を比較した結果、工程が合成可能と決定された場合に、図１５の合成工程作成ステップ（Ｓ１５０７）で利用される。このときのステップＳ１５０７における処理は、本発明の特定手段の一処理例となる処理である。例えば、ワークフローＡとワークフローＢとの「スキャン」工程を合成するか否かを判定する場合において、ワークフローＡのスキャン工程の解像度が６００ｄｐｉであり、一方、ワークフローＢのスキャン工程の解像度が４００ｄｐｉとする。この場合、解析部５０１は、比較対象の解像度の差異が１００以上、６００以下であるため、図１７より「属性を高品位側へ調整」と判定する。
【００８０】
さらに、解析部５０１は、図１７より「画像調整工程」の追加が必要と判断する（Ｓ１６０９に相当）。この場合、解析部５０１は、解像度４０００ｄｐｉのイメージを生成すべく、６００ｄｐｉにてスキャンされた画像を４００ｄｐｉに変更する処理を画像調整工程の内容として特定する（Ｓ１６１０に相当）。また、別の例としては、６００ｄｐｉにてカラースキャンする工程を含むワークフローと、６００ｄｐｉにてモノクロスキャンする工程を含むワークフローとを合成する場合、６００ｄｐｉのカラースキャンという工程を含む合成ワークフローが得られる。この場合、６００ｄｐｉのモノクロ画像を得るべく、画像調整工程としてモノクロ変換する調整工程が追加される。このように、解析部５０１は、工程の合成により得られないイメージを生成するために、画像調整工程を追加する。
【００８１】
また、追加工程が存在する場合、解析部５０１は、図１７を参照して画像調整工程の追加を伴う工程の合成が可能か否かを判断する（Ｓ１６１１）。不整合が発生するような場合は「合成不可」とし、解析部５０１は、解析結果として「合成不可」を設定する（Ｓ１６０６）。不整合と判定される例としては、図１４に示すワークフロー１４００のように、両フローに画像調整工程が入り、且つ、それを許可しないといったケースがある。または、解像度１２００ｄｐｉのモノクロにてスキャンする工程と、６００ｄｐｉのカラーにてスキャンする工程とを合成することによって得られる工程は、１２００ｄｐｉのカラーにてスキャンする工程となる。この場合、解像度１２００ｄｐｉのモノクロ画像を得るためには、画像調整工程において１２００ｄｐｉのカラー画像をモノクロ変換する必要がある。しかしながら、図１７を参照すると「最高品位工程に画像調整工程が入る場合は不可」と記載されている。つまり、最高品位工程である１２００ｄｐｉでのモノクロスキャン工程について画像調整工程を追加して対応することが許可されていない。このような場合、解析部５０１は、Ｓ１６１１において工程の合成を不可と判定する。
【００８２】
一方、不整合が発生しない場合、解析部５０１は、属性（設定値）の調整後、解析結果に「差異あり」を設定する（Ｓ１６１２）。また、Ｓ１６０２において、追加工程が存在しない場合も「差異あり」と設定される（Ｓ１６１２）。工程の設定値を全て比較すると（Ｓ１６１３）、図１６に示すフローチャートの処理は終了する。
【００８３】
図１７は、図１６のフローチャートにおいて合成の判断に必要となる判断基準情報を示す図である。
【００８４】
１７０１は工程名称列である。１７０２は判定対象列である。判定対象は、図１６に示すフローチャートで比較される設定値を示す。例えばスキャン工程では、判定対象として解像度やカラー／モノクロの区別がある。また、ワークフローの２番目以降の工程（プレビュー工程、印刷工程、送信工程）には、前工程からのインプットデータも比較対象となる。
【００８５】
１７０３は適用条件列、１７０４は合成可否、１７０５は合成可能な場合の合成方法を表す列である。適用条件は、各設定値における合成可否判定に閾値を設けるための情報である。
【００８６】
例えば、スキャン工程の解像度において、比較した全ての工程の解像度が１００ｄｐｉ未満であった場合は、低品位のため差異による誤差が少ないと見做して、最も高い設定値に揃える。また、比較した全ての工程の解像度が１００ｄｐｉ以上６００ｄｐｉ以下であった場合は、最も高い設定値に揃えて合成工程を作成した後、各ワークフローのアウトプットに対応した解像度に調整するための工程を追加する。
【００８７】
さらに、スキャン工程の解像度が、６０１ｄｐｉ以上の値である場合、高品位なためソフトウェアによる画像調整工程を容易に行わないような設定がされている。これは、例えば、解像度１２００ｄｐｉのモノクロにてスキャンする工程と、６００ｄｐｉのカラーにてスキャンする工程とを合成することによって得られる工程は、１２００ｄｐｉのカラーにてスキャンする工程となる。この場合、解像度１２００ｄｐｉのモノクロ画像を得るためには、画像調整工程において１２００ｄｐｉのカラー画像をモノクロ変換する必要がある。
【００８８】
しかしながら、実際に１２００ｄｐｉのモノクロスキャンによって得られる画像と、１２００ｄｐｉのカラーにて得られた画像をソフトウェア的にモノクロに変換した画像とでは、結果的に内容が異なる可能性がある。そして、１２００ｄｐｉの画像を要求するユーザは、高品位な画像を要求しており、微小な違いをも許さないことを目的としている可能性が高い。よって、ユーザが要求したとおりの画像を得るために、上述したような場合において画像調整工程を容易に許可しない設定が施されている。
【００８９】
プレビュー工程の解像度に関する例では、比較した設定値の最小値と最大値の差異が２００ｄｐｉ以上になる場合は、合成をさせないといった設定になっている。
【００９０】
図１８は、図１７に示す合成方法において品位の判断に必要となる情報を説明するための表を示す図である。
【００９１】
１８０１は工程名称列である。１８０２は設定値列、１８０３は品位判定基準を示す列である。例えば、スキャン工程の色に関して、モノクロを１、カラーを２という値で表現し、値の大きい方を高品位とする。即ち、カラーの方がモノクロよりも高品位と判定される。また、印刷工程のＮｉｎ１は、Ｎに設定される値に関して小さい値を高品位とする。即ち、１ｉｎ１の方が２ｉｎ１よりも高品位と判定される。
【００９２】
上述した実施形態では、２つのワークフローから合成ワークフローを生成する例を挙げたが、複数のワークフローを合成することも可能である。また、合成する工程もスキャン工程やプレビュー工程に限らない、例えば、他の情報処理装置からファイルを取得する工程等が挙げられる。
【００９３】
また、複数のワークフローのうちの何れかのワークフローに依存する処理工程にエラーが生じた場合、実行部５０５は、エラーが生じた処理工程の部分の合成ワークフローは実行せず、他の処理工程で構成される部分のワークフローを継続して実行してもよい。
【００９４】
以上のように、上記実施形態においては、複数のワークフローを合成する場合、同一機能の工程を共通化することが可能となり、同じ工程を複数回実行する必要がなく、ユーザの利便性を向上させることができる。また、工程の共通化により生じるそれらの工程間における設定値の差分を調整する追加工程を生成し、合成ワークフローに追加しているため、元のワークフローで得られるべき出力結果を合成ワークフローで得ることが可能となる。
【００９５】
また、本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体をシステム或いは装置に供給し、そのシステム等のコンピュータが記憶媒体からプログラムコードを読み出し実行することによっても達成される。
【００９６】
この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、プログラムコード自体及びそのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【００９７】
プログラムコードを供給するための記憶媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、磁気テープ、不揮発性のメモリカード、ＲＯＭ等を用いることができる。
【００９８】
また、コンピュータが読み出したプログラムコードの指示に基づき、コンピュータ上で稼動しているＯＳ等が実際の処理の一部又は全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれる。
【００９９】
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに接続された機能拡張ユニット等に備わるメモリに書込まれた後、そのプログラムコードの指示に基づきＣＰＵ等が実際の処理を行い、前述した実施形態の機能が実現される場合も含まれる。
【０１００】
さらに、プログラムコードをインターネット等の通信媒体を介してコンピュータに供給される構成も本発明の範疇に含まれる。
【図面の簡単な説明】
【０１０１】
【図１】本発明の実施形態に係る画像形成装置を含むネットワークシステムの構成例を示す図である。
【図２】図１で示したＭＦＰ及びＭＦＰの構成例を示すブロック図である。
【図３】図１で示したサーバＰＣ及びクライアントＰＣの構成例を示すブロック図である。
【図４】ＭＦＰの操作部を説明するための構成図である。
【図５】ワークフロー合成処理に関する機能ブロック図である。
【図６】同じ工程を含む２つのワークフローを示した図である。
【図７】図６に示す印刷工程の設定情報を示す図である。
【図８】図６に示す２つのワークフローを合成した合成ワークフローを示す図である。
【図９】２つのワークフローから合成ワークフローを作成し、実行するときの操作ＵＩの例を示す図である。
【図１０】同じ工程ではあるが設定内容が異なる工程を持つ２つのワークフローを示した図である。
【図１１】図１０に示すワークフローのスキャン工程の設定情報を示す図である。
【図１２】図１０に示す２つのワークフローを合成した合成ワークフローを示す図である。
【図１３】図１０に示すワークフローのスキャン工程の設定情報を示す図である。
【図１４】図１０に示す２つのワークフローを、図１３の設定値において合成した合成ワークフローを示す図である。
【図１５】ワークフロー合成処理を説明するためのフローチャートである。
【図１６】図１５のステップＳ１５０４の詳細を示すフローチャートである。
【図１７】図１６のフローチャートにおいて合成の判断に必要となる判断基準情報を示す図である。
【図１８】図１７に示す合成方法において品位の判断に必要となる情報を説明するための表を示す図である。
【符号の説明】
【０１０２】
１００  ＬＡＮ
１０１、１０２  ＭＦＰ
１０３  サーバパーソナルコンピュータ
１０４  クライアントパーソナルコンピュータ
２００  コントローラ
５０１  解析部
５０３  合成部
５０４  結合部
５０５  実行部
５０６  実行管理部
６００、６１０、１０００、１０１０  ワークフロー
６０１、６１１、８０１、１００１、１０１１、１２０１、１４０１  スキャン工程
６０２、６１２、８０２、１００２、１０１２、１２０２、１４０２  プレビュー工程
６０３、６１３、１００３、１００３  印刷工程
１０１３、１０１３、１０１３  送信工程
８００、１２００、１４００  合成ワークフロー
１２０３、１２０４、１４０３、１４０４  画像調整工程
【図１】
2008282336.tif 000003
【図２】
2008282336.tif 000004
【図３】
2008282336.tif 000005
【図４】
2008282336.tif 000006
【図５】
2008282336.tif 000007
【図６】
2008282336.tif 000008
【図７】
2008282336.tif 000009
【図８】
2008282336.tif 000010
【図９】
2008282336.tif 000011
【図１０】
2008282336.tif 000012
【図１１】
2008282336.tif 000013
【図１２】
2008282336.tif 000014
【図１３】
2008282336.tif 000015
【図１４】
2008282336.tif 000016
【図１５】
2008282336.tif 000017
【図１６】
2008282336.tif 000018
【図１７】
2008282336.tif 000019
【図１８】
2008282336.tif 000020