(57)【要約】【課題】ユーザのオペレーション作業を軽減し、かつ機能搭載環境の変化に柔軟に対応可能なオペレーション実行を実現することができる画像処理装置、オペレーション実行方法、及びオペレーション実行プログラムを提供する。【解決手段】画像処理装置１００は、入力画像から取得したオペレーション情報５１を基に所定の処理を実行する装置であって、前記入力画像を解析し、前記入力画像に埋め込まれたオペレーション情報５１を取得する取得手段３１と、取得手段３１により取得されたオペレーション情報５１に基づいて、当該画像処理装置１００が有する所定の処理を行うソフトウェア部品の中から、オペレーション情報５１に従って処理を行う１つ又は複数のソフトウェア部品を特定する特定手段３２と、特定手段３２により特定されたオペレーション情報５１に従って処理を行うソフトウェア部品に対して実行を指示する実行制御手段３３とを有することを特徴とする。【選択図】図３
2009111902.tif 000002
【特許請求の範囲】
【請求項１】
入力画像から取得したオペレーション情報を基に所定の処理を実行する画像処理装置であって、
前記入力画像を解析し、前記入力画像に埋め込まれた前記オペレーション情報を取得する取得手段と、
前記取得手段により取得された前記オペレーション情報に基づいて、当該画像処理装置が有する所定の処理を行うソフトウェア部品の中から、前記オペレーション情報に従って処理を行う１つ又は複数のソフトウェア部品を特定する特定手段と、
特定手段により特定された前記オペレーション情報に従って処理を行うソフトウェア部品に対して実行を指示する実行制御手段とを有することを特徴とする画像処理装置。
【請求項２】
前記オペレーション情報は、
当該画像処理装置を識別する装置識別情報と、
オペレーションにより実行される動作の種別を示す第１の動作種別情報と、
前記第１の動作種別情報に対応する前記オペレーションにより実行される動作の条件設定を示す１つ又は複数の動作設定情報とから構成されることを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記特定手段は、
前記第１の動作種別情報に基づいて、前記オペレーション情報に従って処理を行うソフトウェア部品を特定することを特徴とする請求項１又は２に記載の画像処理装置。
【請求項４】
前記所定の処理を行うソフトウェア部品は、
前記オペレーション情報に従った処理が実行可能か否かを判定するオペレーション実行可否判定手段を有し、
前記特定手段は、
前記所定の処理を行うソフトウェア部品に対して、前記第１の動作種別情報を基に実行可否判定を要求し、前記オペレーション実行可否判定手段により判定された判定結果に基づいて、前記オペレーション情報に従って処理を行うソフトウェア部品を特定することを特徴とする請求項１ないし３のいずれか一項に記載の画像処理装置。
【請求項５】
前記所定の処理を行うソフトウェア部品は、
当該ソフトウェア部品により実行される動作の種別を示す第２の動作種別情報を有し、
前記特定手段により実行可否判定が要求されたときの前記第１の動作種別情報と、前記第２の動作種別情報とを比較し、比較結果に基づいて前記オペレーション情報に従った処理が実行可能か否かを判定することを特徴とする請求項１ないし４のいずれか一項に記載の画像処理装置。
【請求項６】
前記実行制御手段は、
前記特定手段により特定された１つ又は複数のソフトウェア部品に対して、前記動作設定情報を基に実行を指示することを特徴とする請求項１ないし５のいずれか一項に記載の画像処理装置。
【請求項７】
前記所定の処理を行うソフトウェア部品は、
前記実行制御手段により実行指示されたときの前記動作設定情報に基づいて、前記所定の処理を行うことを特徴とする請求項１ないし６のいずれか一項に記載の画像処理装置。
【請求項８】
当該画像処理装置は、
前記所定の処理を行うソフトウェア部品を識別するソフトウェア部品識別情報を管理する管理手段を有し、
前記特定手段は、
前記管理手段が管理する前記ソフトウェア部品識別情報を基に識別される全てのソフトウェア部品に対して実行可否判定を要求し、前記オペレーション情報に従って処理を行うソフトウェア部品を特定することを特徴とする請求項１ないし７のいずれか一項に記載の画像処理装置。
【請求項９】
前記管理手段は、
当該画像処理装置に前記所定の処理を行うソフトウェア部品をインストールするときに、
管理対象として、インストールする前記ソフトウェア部品のソフトウェア部品識別情報を追加することを特徴とする請求項８に記載の画像処理装置。
【請求項１０】
前記管理手段は、
当該画像処理装置が有する所定の処理を行うソフトウェア部品をアンインストールするときに、
アンインストールする前記ソフトウェア部品のソフトウェア部品識別情報を、管理対象から削除することを特徴とする請求項８又は９に記載の画像処理装置。
【請求項１１】
前記特定手段は、
前記オペレーション実行可否判定手段により判定された判定結果によって、同じ動作種別である複数のソフトウェア部品が特定候補とされた場合に、
ユーザの選択設定に従って、特定候補とされた複数のソフトウェア部品のうち１つを、前記オペレーション情報に従って処理を行うソフトウェア部品として特定することを特徴とする請求項１ないし１０のいずれか一項に記載の画像処理装置。
【請求項１２】
当該画像処理装置は、
前記オペレーション情報に従った処理が、当該画像処理装置で実行可能か否かを判定する装置実行可否判定手段を有し、
前記特定手段は、
前記装置実行可否判定手段により判定される判定結果に基づいて、前記オペレーション情報に従って処理を行うソフトウェア部品を特定することを特徴とする請求項１ないし１１のいずれか一項に記載の画像処理装置。
【請求項１３】
前記装置実行可否手段は、
当該画像処理装置が有する機器情報と、前記装置識別情報とを比較し、比較結果に基づいて前記オペレーション情報に従った処理が実行可能か否かを判定することを特徴とする請求項１ないし１２のいずれか一項に記載の画像処理装置。
【請求項１４】
当該画像処理装置は、
前記入力画像に埋め込まれた認証情報を基に、前記オペレーション情報に従って処理を行うか否かを認証する認証手段を有することを特徴とする請求項１ないし１３のいずれか一項に記載の画像処理装置。
【請求項１５】
当該画像処理装置は、
前記特定手段により特定された１つ又は複数のソフトウェア部品が、前記実行制御手段により実行指示され、所定の処理を実行中にエラーが発生したときに、
発生したエラーを解析するエラー解析手段を有することを特徴とする請求項１ないし１４のいずれか一項に記載の画像処理装置。
【請求項１６】
当該画像処理装置は、
前記特定手段により特定された１つ又は複数のソフトウェア部品が、前記実行制御手段により実行指示されたときに、
前記オペレーション情報に従って処理を行った結果や前記エラー解析手段による解析結果を表示画面に表示する表示手段を有することを特徴とする請求項１ないし１５のいずれか一項に記載の画像処理装置。
【請求項１７】
入力画像から取得したオペレーション情報を基に所定の処理を実行する画像処理装置におけるオペレーション実行方法であって、
前記入力画像を解析し、前記入力画像に埋め込まれた前記オペレーション情報を取得する取得手順と、
前記取得手順により取得された前記オペレーション情報に基づいて、当該画像処理装置が有する所定の処理を行うソフトウェア部品の中から、前記オペレーション情報に従って処理を行う１つ又は複数のソフトウェア部品を特定する特定手順と、
特定手順により特定された前記オペレーション情報に従って処理を行うソフトウェア部品に対して実行を指示する実行制御手順とを有することを特徴とするオペレーション実行方法。
【請求項１８】
入力画像から取得したオペレーション情報を基に所定の処理を実行する画像処理装置におけるオペレーション実行プログラムであって、
コンピュータを、
前記入力画像を解析し、前記入力画像に埋め込まれた前記オペレーション情報を取得する取得手段と、
前記取得手段により取得された前記オペレーション情報に基づいて、当該画像処理装置が有する所定の処理を行うソフトウェア部品の中から、前記オペレーション情報に従って処理を行う１つ又は複数のソフトウェア部品を特定する特定手段と、
特定手段により特定された前記オペレーション情報に従って処理を行うソフトウェア部品に対して実行を指示する実行制御手段として機能させるオペレーション実行プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、入力画像から取得したオペレーション情報を基に所定の処理を実行する画像処理装置に関するものである。
【背景技術】
【０００２】
近年、情報処理技術の高度化に伴い、プリンタ、コピー、スキャナ、及びファクシミリなどの機能を一台の筐体に複合的に搭載した画像処理装置が、ユーザ環境に導入されるようになった。更に、画像処理装置には、双方向のデータ通信が可能な通信装置が備えられている。
【０００３】
このような画像処理装置では、複数の機能を搭載していることから、文書データや原稿画像に対して様々な画像処理を行うことが可能である。そのため、例えば文書データや原稿画像などに大量に取り扱うオフィス環境などでは、画像処理装置が有する機能が、業務を支援する上で有効的に利用されている。
【０００４】
その一方で、多機能化した画像処理装置は、ユーザにとって「操作が複雑」という問題がある。例えば、あるユーザが「作成した報告書を会議資料として１０部コピーし、更にその報告書の電子データをメールに添付し特定の宛先に送信する」といった一連の処理を行いたい場合には、まず、ユーザは画像処理装置に対峙し、操作パネルから部数を設定した後、報告書のコピーを行う。更に、読み取った画像を電子メールの添付データとして送信する宛先を指定し、電子メールの送信を指示する。
【０００５】
このように、ユーザは、複雑な画像処理や複数の作業工程を必要とする画像処理などを行う場合、操作パネルから複雑な動作条件を作業工程ごとに設定し、順次作業工程の実行を指示しなければならない。このようなオペレーション作業は、ユーザにとって非常に煩雑である。
【０００６】
そこで、例えば特許文献１及び２には、上記のように複雑かつ複数の作業工程におけるユーザのオペレーション作業を軽減する従来技術が開示されている。
【０００７】
特許文献１には、「過去の処理手順と、その処理手順により処理された元画像とを対応付けて登録しておき、再び処理を行うときには、そのときの処理手順と登録していた処理手順とを照合し、登録している処理手順への修正要否を判断し、修正が必要な場合には、自動的に修正を行い、修正後の処理手順に従って処理を実行する」という画像形成装置が開示されている。また、特許文献２には、「表面に処理対象である画像情報が、また、裏面に画像情報を複写するための処理手順情報が記録された原稿の両面を読み取り、裏面から読み取った処理手順情報の設定に従って、表面から読み取った画像情報を複写する」という画像形成装置が開示されている。
【０００８】
上記のように、特許文献１及び２には、ユーザにとって煩雑であったオペレーション作業を軽減することが可能な画像形成装置の例が示されている。
【０００９】
このように、先に挙げた「複雑な動作条件を作業工程ごとに設定しなければならないオペレーション作業は、画像処理装置が有する機能を迅速かつ適切に利用したいユーザにとって非常に煩雑である」という問題点を軽減するため、従来技術では、「画像処理装置が有する記憶装置に、過去に処理したデータとそのときの処理手順とを関連付けて記憶させておく」といった方法や、「読み取る原稿に、読み取った後に行う処理手順を埋め込んでおく」といった方法が提案されている。
【特許文献１】特開２００６−２７９１８９号公報
【特許文献２】特開２００６−２３７６６７号公報
【発明の開示】
【発明が解決しようとする課題】
【００１０】
しかしながら、従来技術では、処理対象であるデータを、同じ画像処理装置において予め決められた処理手順に従い処理を行うことを前提としている。
【００１１】
画像処理装置におけるオペレーション作業の軽減は、ユーザに対して主に２つのメリットがある。１つが「作業効率の向上」である。従来ユーザによって行われていたデータ処理に伴うパネル操作が軽減され、これまで煩雑であったオペレーション作業が簡便に行えることから、処理全体に掛かる時間が短縮される。その結果、作業効率が向上することとなる。しかし、上記従来技術では、データ処理可能な画像処理装置が限定されることから、処理対象のデータに対して指定可能なオペレーション実行時の処理手順や動作条件設定が限定されてしまう。また、設定可能な処理手順や動作条件設定が限定されることから、画像処理装置が有する複数の機能を切り替えて一連のデータ処理を行うなどの複雑な作業工程に十分対応することができない。
【００１２】
また、もう１つのメリットが「作業品質の維持」である。従来オペレーション作業は、「処理対象のデータがどのようなデータで、それに対してどのような動作条件を設定し処理を行うのか」といったデータ処理に熟知したユーザによって行われていた。そのため、従来技術では、「処理対象のデータに対してどのような処理が実行されるのか」を、作業者であるユーザが把握しておくことを前提とする場面がある。このことは、作業品質がオペレータであるユーザに依存していることになり、例えば、第三者にオペレーション作業を依頼する場合には、依頼者が第三者にその作業内容と詳細な作業手順を正確に伝えなければ、作業品質が保障されないこととなる。
【００１３】
このように、ユーザが所望するオペレーション作業を実現するためには、オペレーション作業における処理手順や動作条件などの詳細設定に従って、一連の処理工程を自動実行可能な「オペレーション実行機能」の仕組みが必要である。
【００１４】
更に、画像処理装置が有する機能の追加や削除といった環境の変化に対応してオペレーション作業の軽減を行うためには、オペレーション作業の軽減を行うプログラムモジュールを更新しなければならない。
【００１５】
現在では、画像処理装置が利用される用途や目的などの変化に伴い、多様化するユーザのニーズに応えるために、画像処理装置が有する機能を実現する様々なアプリケーションソフトウェアが、開発メーカー（以下、「ベンダ」という。）から提供されている。
【００１６】
このような背景から、画像処理装置では、画像処理装置を製造・販売するベンダが開発したアプリケーションソフトウェアを利用するデータ処理以外に、サードベンダが開発したアプリケーションソフトウェアを利用するデータ処理に対しても、オペレーション作業の軽減を可能としなければならない。
【００１７】
このようなことから、従来の画像処理装置では、オペレーション作業における処理手順や動作条件などの詳細設定に従って、一連の処理工程を自動実行可能で、かつ装置内の機能搭載環境の変化に柔軟に対応可能な「オペレーション実行機能」が実現されていない。
【００１８】
本発明では、上記従来技術の問題点に鑑み、ユーザのオペレーション作業を軽減し、かつ機能搭載環境の変化に柔軟に対応可能なオペレーション実行を実現することができる画像処理装置、オペレーション実行方法、及びオペレーション実行プログラムを提供することを目的とする。
【課題を解決するための手段】
【００１９】
上記目的を達成するため、本発明の画像処理装置は、入力画像から取得したオペレーション情報を基に所定の処理を実行する画像処理装置であって、前記入力画像を解析し、前記入力画像に埋め込まれた前記オペレーション情報を取得する取得手段と、前記取得手段により取得された前記オペレーション情報に基づいて、当該画像処理装置が有する所定の処理を行うソフトウェア部品の中から、前記オペレーション情報に従って処理を行う１つ又は複数のソフトウェア部品を特定する特定手段と、特定手段により特定された前記オペレーション情報に従って処理を行うソフトウェア部品に対して実行を指示する実行制御手段とを有することを特徴とする。
【００２０】
また、上記目的を達成するため、本発明の画像処理装置は、前記オペレーション情報が、当該画像処理装置を識別する装置識別情報と、オペレーションにより実行される動作の種別を示す第１の動作種別情報と、前記第１の動作種別情報に対応する前記オペレーションにより実行される動作の条件設定を示す１つ又は複数の動作設定情報とから構成されることを特徴とする。
【００２１】
また、上記目的を達成するため、本発明の画像処理装置は、前記特定手段において、前記第１の動作種別情報に基づいて、前記オペレーション情報に従って処理を行うソフトウェア部品を特定することを特徴とする。
【００２２】
また、上記目的を達成するため、本発明の画像処理装置は、前記所定の処理を行うソフトウェア部品が、前記オペレーション情報に従った処理が実行可能か否かを判定するオペレーション実行可否判定手段を有し、前記特定手段において、前記所定の処理を行うソフトウェア部品に対して、前記第１の動作種別情報を基に実行可否判定を要求し、前記オペレーション実行可否判定手段により判定された判定結果に基づいて、前記オペレーション情報に従って処理を行うソフトウェア部品を特定することを特徴とする。
【００２３】
また、上記目的を達成するため、本発明の画像処理装置は、前記所定の処理を行うソフトウェア部品が、当該ソフトウェア部品により実行される動作の種別を示す第２の動作種別情報を有し、前記特定手段により実行可否判定が要求されたときの前記第１の動作種別情報と、前記第２の動作種別情報とを比較し、比較結果に基づいて前記オペレーション情報に従った処理が実行可能か否かを判定することを特徴とする。
【００２４】
また、上記目的を達成するため、本発明の画像処理装置は、前記実行制御手段において、前記特定手段により特定された１つ又は複数のソフトウェア部品に対して、前記動作設定情報を基に実行を指示することを特徴とする。
【００２５】
また、上記目的を達成するため、本発明の画像処理装置は、前記所定の処理を行うソフトウェア部品が、前記実行制御手段により実行指示されたときの前記動作設定情報に基づいて、前記所定の処理を行うことを特徴とする。
【００２６】
また、上記目的を達成するため、本発明の画像処理装置は、前記所定の処理を行うソフトウェア部品を識別するソフトウェア部品識別情報を管理する管理手段を有し、前記特定手段において、前記管理手段が管理する前記ソフトウェア部品識別情報を基に識別される全てのソフトウェア部品に対して実行可否判定を要求し、前記オペレーション情報に従って処理を行うソフトウェア部品を特定することを特徴とする。
【００２７】
また、上記目的を達成するため、本発明の画像処理装置は、前記管理手段において、当該画像処理装置に前記所定の処理を行うソフトウェア部品をインストールするときに、管理対象として、インストールする前記ソフトウェア部品のソフトウェア部品識別情報を追加することを特徴とする。
【００２８】
また、上記目的を達成するため、本発明の画像処理装置は、前記管理手段において、当該画像処理装置が有する所定の処理を行うソフトウェア部品をアンインストールするときに、アンインストールする前記ソフトウェア部品のソフトウェア部品識別情報を、管理対象から削除することを特徴とする。
【００２９】
また、上記目的を達成するため、本発明の画像処理装置は、前記特定手段において、前記オペレーション実行可否判定手段により判定された判定結果によって、同じ動作種別である複数のソフトウェア部品が特定候補とされた場合に、ユーザの選択設定に従って、特定候補とされた複数のソフトウェア部品のうち１つを、前記オペレーション情報に従って処理を行うソフトウェア部品として特定することを特徴とする。
【００３０】
また、上記目的を達成するため、本発明の画像処理装置は、前記オペレーション情報に従った処理が、当該画像処理装置で実行可能か否かを判定する装置実行可否判定手段を有し、前記特定手段において、前記装置実行可否判定手段により判定される判定結果に基づいて、前記オペレーション情報に従って処理を行うソフトウェア部品を特定することを特徴とする。
【００３１】
また、上記目的を達成するため、本発明の画像処理装置は、前記装置実行可否手段において、当該画像処理装置が有する機器情報と、前記装置識別情報とを比較し、比較結果に基づいて前記オペレーション情報に従った処理が実行可能か否かを判定することを特徴とする。
【００３２】
また、上記目的を達成するため、本発明の画像処理装置は、前記入力画像に埋め込まれた認証情報を基に、前記オペレーション情報に従って処理を行うか否かを認証する認証手段を有することを特徴とする。
【００３３】
また、上記目的を達成するため、本発明の画像処理装置は、前記特定手段により特定された１つ又は複数のソフトウェア部品が、前記実行制御手段により実行指示され、所定の処理を実行中にエラーが発生したときに、発生したエラーを解析するエラー解析手段を有することを特徴とする。
【００３４】
また、上記目的を達成するため、本発明の画像処理装置は、前記特定手段により特定された１つ又は複数のソフトウェア部品が、前記実行制御手段により実行指示されたときに、前記オペレーション情報に従って処理を行った結果や前記エラー解析手段による解析結果を表示画面に表示する表示手段を有することを特徴とする。
【００３５】
これによって、本発明の画像処理装置は、搭載機能としてインストールされている所定の処理を実行するプログラムモジュール（ソフトウェア部品）ごとに、プログラムモジュール自身において、入力画像から取得したオペレーション情報に従って処理が実行可能か否かを判定し、その判定結果が実行可能であれば処理を実行する構成としたことにより、オペレーション作業における処理手順や動作条件などの詳細設定に従って、一連の処理工程を自動実行可能で、かつ装置内の機能搭載環境の変化に柔軟に対応可能となり、その結果、ユーザのオペレーション作業を軽減し、かつ機能搭載環境の変化に柔軟に対応可能なオペレーション実行を実現することができる。
【００３６】
上記目的を達成するため、本発明のオペレーション実行方法は、入力画像から取得したオペレーション情報を基に所定の処理を実行する画像処理装置におけるオペレーション実行方法であって、前記入力画像を解析し、前記入力画像に埋め込まれた前記オペレーション情報を取得する取得手順と、前記取得手順により取得された前記オペレーション情報に基づいて、当該画像処理装置が有する所定の処理を行うソフトウェア部品の中から、前記オペレーション情報に従って処理を行う１つ又は複数のソフトウェア部品を特定する特定手順と、特定手順により特定された前記オペレーション情報に従って処理を行うソフトウェア部品に対して実行を指示する実行制御手順とを有することを特徴とする。
【００３７】
これによって、本発明の出力ジョブ制御方法は、搭載機能としてインストールされている所定の処理を実行するプログラムモジュール（ソフトウェア部品）ごとに、プログラムモジュール自身において、入力画像から取得したオペレーション情報に従って処理が実行可能か否かを判定し、その判定結果が実行可能であれば処理を実行することで、オペレーション作業における処理手順や動作条件などの詳細設定に従って、一連の処理工程を自動実行可能で、かつ装置内の機能搭載環境の変化に柔軟に対応可能となり、ユーザのオペレーション作業を軽減し、かつ機能搭載環境の変化に柔軟に対応可能なオペレーション実行を実現することができる。
【００３８】
上記目的を達成するため、本発明のオペレーション実行プログラムは、入力画像から取得したオペレーション情報を基に所定の処理を実行する画像処理装置におけるオペレーション実行プログラムであって、コンピュータを、前記入力画像を解析し、前記入力画像に埋め込まれた前記オペレーション情報を取得する取得手段と、前記取得手段により取得された前記オペレーション情報に基づいて、当該画像処理装置が有する所定の処理を行うソフトウェア部品の中から、前記オペレーション情報に従って処理を行う１つ又は複数のソフトウェア部品を特定する特定手段と、特定手段により特定された前記オペレーション情報に従って処理を行うソフトウェア部品に対して実行を指示する実行制御手段として機能させる。
【００３９】
これによって、本発明のオペレーション実行プログラムは、コンピュータを、搭載機能としてインストールされている所定の処理を実行するプログラムモジュール（ソフトウェア部品）ごとに、プログラムモジュール自身において、入力画像から取得したオペレーション情報に従って処理が実行可能か否かを判定し、その判定結果が実行可能であれば処理を実行するように機能させることができる。
【００４０】
よって、本発明のオペレーション実行プログラムでは、オペレーション作業における処理手順や動作条件などの詳細設定に従って、一連の処理工程を自動実行可能で、かつ装置内の機能搭載環境の変化に柔軟に対応可能となり、コンピュータにおいて、ユーザのオペレーション作業を軽減し、かつ機能搭載環境の変化に柔軟に対応可能なオペレーション実行を実現することができる。
【発明の効果】
【００４１】
本発明によれば、ユーザのオペレーション作業を軽減し、かつ機能搭載環境の変化に柔軟に対応可能なオペレーション実行を実現することができる画像処理装置、オペレーション実行方法、及びオペレーション実行プログラムを提供することができる。
【発明を実施するための最良の形態】
【００４２】
以下、本発明の好適な実施の形態（以下、「実施形態」という。）について、図面を用いて詳細に説明する。
【００４３】
［第１の実施形態］
＜ハードウェア構成＞
まず、本実施形態に係る画像処理装置１００のハードウェア構成について、図１を用いて説明する。
【００４４】
［画像処理装置（ＭＦＰ：Multifunction Peripheral）］
図１は、本発明の第１の実施形態に係る画像処理装置１００のハードウェア構成の一例を示す図である。
【００４５】
本実施形態に係る画像処理装置１００は、操作パネル１１と、記憶メディアＩ／Ｆ１２と、コントローラ１３と、データ通信Ｉ／Ｆ１４と、ＨＤＤ（Hard Disk Drive）１７と、スキャナ１５と、プロッタ１６とから構成され、それぞれ相互に接続されている。
【００４６】
操作パネル（オペレーションパネル）１１は、入力装置１１aと表示装置１１bとを有しており、入力装置１１aは、ハードウェアキーなどで構成され、画像処理装置１００に各操作信号を入力するのに用いられる。また、表示装置１１bは、ディスプレイなどで構成され、例えば画像処理動作に関する各種情報を表示する。データ通信Ｉ／Ｆ１４は、インタフェース装置１４aを有しており、画像処理装置１００をネットワークなどのデータ伝送路に接続するインタフェースである。ＨＤＤ１７は、画像処理装置１００で取り扱われる受信文書データや読み取り画像データなどの各種データを格納している。また、ＨＤＤ１７は、これらの各種データを、所定のファイルシステムやＤＢ（Data Base）により管理している。
【００４７】
上記ＨＤＤ１７に格納される各種データの中には、例えば、デジタルカメラなどの外部機器によって記録された電子データも含まれる。このような場合には、メモリカードなどの記録媒体１２bによって画像処理装置１００に提供されるか、データ伝送路であるネットワークなどを通じてアップロードされる。記録媒体１２bは、記憶メディアＩ／Ｆ１２が有するドライブ装置１２aにセットされ各種データが記録媒体１２bからドライブ装置１２bを介してＨＤＤ１７に格納される。
【００４８】
コントローラ１３は、ＲＯＭ（Read Only Memory）１３a、ＲＡＭ（Random Access Memory）１３b、及びＣＰＵ（Central Processing Unit）１３cとを有しており、ＲＯＭ１３aは、画像処理装置１００が起動されるときに実行されるプログラムや各種データを格納している。また、ＲＡＭ１３bは、ＲＯＭ１３aやＨＤＤ１７から読み出された各種プログラムやデータを一時保持する。更に、ＣＰＵ１３cは、ＲＡＭ１３bが一時保持しているプログラムを実行する。コントローラ１３は、例えば、データ通信Ｉ／Ｆ１４を介して印刷データを受信した場合に、ＲＯＭ１３aからＲＡＭ１３b上に読み出された、ＰＤＬ（Page Description Language）を解釈可能なプログラム（ＰＤＬパーサ）をＣＰＵ１３cにより実行し、印刷データを解釈してビットマップイメージを生成する。
【００４９】
スキャナ１５は、画像読取装置１５aを有しており、読み取り面に配置された原稿を光学的に読み取り画像データを生成する。プロッタ１６は、印刷装置１６aを有しており、例えば、電子写真プロセス方式によってビットマップイメージを記録紙に印刷する。
【００５０】
このように、本実施形態に係る画像処理装置１００では、上記ハードウェア構成により、プリンタ、コピー、ＦＡＸ（Facsimile）、スキャナなどの複数の機能を実現している。
【００５１】
＜モジュール構成＞
次に、本実施形態に係る画像処理装置１００が有するモジュール構成について、図２を用いて説明する。図２は、本発明の第１の実施形態に係る画像処理装置１００が有する機能を実現するためのモジュール構成の一例を示す図である。
【００５２】
本実施形態に係る画像処理装置１００は、ＵＩ（User Interface）モジュール２１と、マーキング解析モジュール２２と、拡張制御管理モジュール２３と、拡張制御モジュール２４と、エラー解析モジュール２５とから構成される。
【００５３】
ＵＩモジュール２１は、操作パネル１１の表示装置１１bにＧＵＩ（Graphical User Interface）機能を有する表示画面を表示し、オペレーション実行結果やエラー解析結果などの画像処理動作に関する各種情報を表示し、また認証パスワードなどのユーザからの入力情報を受け付けるソフトウェア部品である。
【００５４】
マーキング解析モジュール２２は、例えばスキャナ１５から読み取った原稿の入力画像を解析し、入力画像に埋め込まれたオペレーション情報を取得するソフトウェア部品である。マーキング解析モジュール２２は、ＵＩモジュール２１から受け付けた実行指示に従って動作を開始する。
【００５５】
拡張制御管理モジュール２３は、後述する拡張制御モジュール２４を管理するソフトウェア部品である。拡張制御管理モジュール２３は、拡張制御モジュール２４がインストールされたときに採番される識別コード（例えばモジュールＩＤなど）を、所定のデータ構造によって管理する。ここで言う所定のデータ形式とは、例えばリスト構造などであり、識別コードを順次参照可能なデータ構造である。拡張制御管理モジュール２３は、このようなデータ構造によって、インストールされている１つ又は複数の拡張制御モジュール２４の実行を制御する。このとき、拡張制御管理モジュール２３は、拡張制御モジュール２４に、マーキング解析モジュール２３により取得されたオペレーション情報を渡す。以降の説明では、データ形式にリスト構造を用いた場合を例に説明する。
【００５６】
更に、拡張制御管理モジュール２３は、オペレーション情報に従って拡張制御モジュール２４を実行し処理を行っても良いか否かを認証する認証機能を有している。そのため、拡張制御管理モジュール２３は、認証用のパスワード入力をＵＩモジュール２１に要求する。
【００５７】
拡張制御モジュール２４は、画像処理装置１００において所定の処理を行うソフトウェア部品である。拡張制御モジュール２４は、拡張制御管理モジュール２３から受け取ったオペレーション情報に含まれる動作詳細情報を基に実処理を実行する。そのため、拡張制御モジュール２４は、オペレーションの動作を実現するためにベンダーサイドで開発されるプログラムモジュールを含む。当該画像処理装置１００への機能追加や削除と言った場合には、上記拡張制御モジュール２４が、インストーラによってＨＤＤ１７などの所定の記憶領域に格納され保持される。
【００５８】
また、拡張制御モジュール２４は、受け取ったオペレーション情報を基に、自らがオペレーション情報に従った処理が実行可能か否かを判定するオペレーション実行可否判定機能を有している。拡張制御モジュール２４は、拡張制御管理モジュール２３によりオペレーション情報に含まれる動作種別コードを基に実行可否判定を要求されると、オペレーション実行可否判定機能によって判定を行い、その判定結果を応答する。
【００５９】
エラー解析モジュール２５は、拡張制御モジュール２３の実行中に発生したエラーの原因を解析するソフトウェア部品である。エラー解析モジュール２５は、エラーログなどの画像処理装置１００が保持しているデータを基に解析し、その解析結果（例えば「エラー原因」と「対応方法」など）を拡張制御管理モジュール２３からＵＩモジュール２１を介して、操作パネル１１の表示画面に表示する。
【００６０】
このように、本実施形態に係る画像処理装置１００では、オペレーション情報に従って処理を行う１つ又は複数の拡張制御モジュール２４を、拡張制御管理モジュール２３によって制御することで、「オペレーション実行機能」を実現している。
【００６１】
また、上記各プログラムモジュールは、オペレーション実行プログラムとして当該画像処理装置１００が有するＨＤＤ１７の所定の記憶領域に格納されインストールされる。よって、画像処理装置１００は、オペレーションを実行するときに、ＨＤＤ１７に格納されたオペレーション実行プログラムをコントローラ１３が備えるＲＡＭ１３bへ読み出し、ＣＰＵ１３cにより実行することで、各プログラムモジュールが有する機能が動作する。
＜オペレーション実行機能＞
次に、本実施形態に係る画像処理装置１００が有する「オペレーション実行機能」を実現する各手段について、図３を用いて説明する。図３は、本発明の第１の実施形態に係る画像処理装置１００が有する機能を実現するための手段構成の一例を示す図である。
【００６２】
＜＜手段構成の概要＞＞
本実施形態に係る画像処理装置１００は、主に、入力画像に埋め込まれたオペレーション情報を取得する取得手段を有するマーキング解析部３１と、当該画像処理装置１００が有する所定の処理を行う拡張制御部３３の中から、オペレーション情報に従って処理を行う１つ又は複数の拡張制御部３３を特定する特定手段と、特定された拡張制御部３３に対して実行を指示する実行制御手段とを有する拡張制御管理部３２とから構成されている。
【００６３】
また、画像処理装置１００は、特定された１つ又は複数の拡張制御部３３が、実行制御手段により実行指示され、所定の処理を実行中にエラーが発生したときに、発生したエラーを解析するエラー解析部３４（エラー解析手段）を有している。
【００６４】
（データの概要）
次に、マーキング解析部３１が有する取得手段により取得するオペレーション情報５１について、図４を用いて説明する。図４は、本発明の第１の実施形態に係るオペレーションデータのデータ構成の一例を示す図である。図４（a）にはデータ構成例、また図４（b）には構成するデータの具体例が示されている。
【００６５】
図４（a）に示すように、オペレーションデータは、当該画像処理装置１００を識別する装置識別コード５１a（装置識別情報）と、オペレーションにより実行される動作の種別を示す動作種別コード５１b（第１の動作種別情報）と、動作種別コード５１bに対応するオペレーションにより実行される動作の条件設定を示す１つ又は複数の動作詳細情報５１c（動作設定情報）とから構成される情報５１である。
【００６６】
具体的には、図４（b）に示すように、"２００６年モデル"、"２００７年モデル"などの装置識別コード５１aや、"コピー"、"ＦＡＸ"、"ネットワーク設定"などの動作種別コード５１bや、"コピー"の"部数"、"ＦＡＸ"の"宛先"、"ネットワーク設定"の"ＩＰアドレス"などの動作詳細情報５１cである。
【００６７】
このようなデータ構成により、本実施形態に係る画像処理装置１００は、例えば、動作種別５１b"コピー"に対して"両面"及び"部数"などの複数の動作詳細情報を指定することができる。また、複数の動作種別を用いたオペレーションの指定は、動作種別ことのオペレーションデータを複数個埋め込むことで行う。
【００６８】
上記オペレーションデータは、マーキング解析部３１が解析可能な入力画像の所定の領域内に埋め込まれる。ここで言う所定の領域は、オペレーションデータを取得するための解析領域を意味している。この領域は、オペレーションデータの埋め込み方によって異なる。例えば、地紋により埋め込まれている場合には、入力画像全体が解析領域となる。またバーコードなどにより埋め込まれている場合には、入力画像全体のうち予め決められた画像範囲が解析領域となる。
【００６９】
このように、本実施形態に係るオペレーション情報５１は、オペレータが意図する詳細な動作条件を簡便に指定可能で、オペレーション実行における操作性の向上を図ることができる。
【００７０】
（各手段を有する機能部の概要）
以下に、上記各手段を有する機能部について簡単に説明する。
【００７１】
マーキング解析部３１は、スキャナ１５の読み取り面に設定された原稿から読み取った入力画像を解析し、取得手段により入力画像に埋め込まれたオペレーション情報５１を取得する。
【００７２】
拡張制御管理部３２は、特定手段により、マーキング解析部３１により取得されたオペレーション情報５１に基づいて、当該画像処理装置１００が有する所定の処理を行う拡張制御部３３の中から、オペレーション情報５１に従って処理を行う１つ又は複数の拡張制御部３３を特定する。
【００７３】
拡張制御部３３は、オペレーション情報５１に従った処理が実行可能か否かを判定する判定部３３a（オペレーション実行可否判定手段）と、オペレーション情報５１に従って所定の処理を行う実処理部（非図示）とを有している。
【００７４】
よって、拡張制御管理部３２は、特定手段により、拡張制御部３３に対して、オペレーション情報５１の動作種別コード５１bを基に実行可否判定を要求する。その結果、拡張制御部３３が有する判定部３３aにより実行可否判定が行われ、その判定結果が要求元の拡張制御管理部３２へ応答される。拡張制御管理部３２は、拡張制御部３３の判定結果を基に、オペレーション情報５１に従って処理を行う１つ又は複数の拡張制御部３３を特定する。
【００７５】
拡張制御管理部３２は、上記の方法によって特定されたオペレーション情報５１に従って処理を行う拡張制御部３３に対して、実行制御手段により実行を指示する。
【００７６】
エラー解析部３４は、拡張制御管理部３２が有する特定手段により特定された１つ又は複数の拡張制御部３３が、実行制御手段により実行指示され、所定の処理を実行中にエラーが発生したときに、エラー解析手段により、例えばＨＤＤ１７などに記憶されたエラーログ４１（例えば、エラーコードやエラーメッセージといったエラーの内容や、エラー発生時のメインメモリーの内容、プログラムの処理状況、通信状況などが記録されたログ。）を基にエラー原因について解析する。
【００７７】
（実装方法）
上記に挙げる機能部は、図２に示す各プログラムモジュールが実行されることで実現される機能である。マーキング解析部３１は、マーキング解析モジュール２１により実現される機能であり、拡張制御管理部３２は、拡張制御管理モジュール２３により実現される機能、また、拡張制御部３３は、拡張制御モジュール２４により実現される機能であり、エラー解析部３４は、エラー解析モジュール２５により実現される機能である。
【００７８】
図２では、画像処理装置１００の機能搭載環境の変化に柔軟に対応可能な「オペレーション実行機能」を実現するモジュール構成の一例を示したが、この限りではない。機能搭載環境の変化に対応するため、上記拡張制御管理モジュール２３及び拡張制御モジュール２４において説明を行ったように、機能搭載環境に応じてオペレーションの実行可否判定を拡張されるソフトウェア部品である拡張制御モジュール２４が備える構成としている。そのため、拡張制御モジュール２４以外のモジュール群を１つのプログラムモジュールとしても良い。
【００７９】
本実施形態では、図５に示すような実装方法を採用し、機能搭載環境の変化に柔軟に対応可能な「オペレーション実行機能」を実現している。図５は、本発明の第１の実施形態に係る画像処理装置１００が有する機能の実装方法の一例を示す図である。図５には、上記で説明した拡張制御管理モジュール２３と拡張制御モジュール２４との実装例を示している。
【００８０】
図５に示すように、実行可否判定を行う場合には、拡張制御管理モジュール２３において、パラメータとして動作種別コード５１bが設定された拡張制御モジュール２４が、また実行指示を行う場合には、パラメータとして動作詳細情報５１cが設定された拡張制御モジュール２４がコールされる（例えば、拡張制御管理モジュール２３は、コールバック関数などの関数ポインタを参照し拡張制御モジュール２４をコールする）。
【００８１】
本実施形態では、この拡張制御モジュール２４のインタフェースを統一して設計し、機能搭載環境の変化に応じて拡張制御管理モジュール２３を変更する必要がないように実装する。
【００８２】
具体的には、アプリケーションソフトを開発するときに上記統一インタフェースや実行可否判定機能を提供するフレームワークを用いて、拡張制御モジュール２４を開発する。これによって、ベンダなどの開発側は、所定の処理を行う実処理部（図中の実処理部Ａ、Ｂ、又はＣ。）のみを実装すればよい。このような実装方法によって、異なるベンダが開発する拡張制御モジュール２４においてもインタフェースを統一することができ、更には、開発効率の向上を図ることができる。また、このような実行方法を採用することによって、サードベンダなどが開発する新規機能に対した拡張性の高いソフトウェア環境を提供することができる。
【００８３】
＜＜オペレーション実行機能の基本動作概要＞＞
ここからは、本実施形態に係る画像処理装置１００において、上記に説明を行った機能部が有する各手段をどのように動作させることによって「オペレーション実行機能」を実現しているかについて、図６から図１６を用いて具体的に説明する。
【００８４】
（動作１）オペレーション情報の取得
図６は、本発明の第１の実施形態に係るオペレーションデータが印刷された紙面とオペレーションデータ読み込み時の表示画面Ｗの一例を示す図である。
【００８５】
マーキング解析部３１は、スキャナ１５により図６（a）に示すような印刷用紙Ｐを読み取る。図６（a）には、印刷用紙の印刷面Ｐにバーコードにより表現されたオペレーションデータＢが埋め込まれている例が示されている。マーキング解析部３１は、印刷面Ｐを読み取って得た入力画像を解析する。
【００８６】
マーキング解析部３１は、例えば図６（a）のような印刷面Ｐの場合、文書や図形と言った情報領域Ａ２以外に対応する所定の領域Ａ１を、オペレーションデータＢが埋め込まれている領域として解析する。その結果、マーキング解析部３１は、予め決められた埋め込み位置（解析領域）と埋め込み方法（バーコード形式や地紋形式）によって埋め込まれているオペレーションデータＢを解析し、取得手段により、図４（b）に示した装置識別コード５１aと、動作種別コード５１bと、動作種別コード５１bに対応する動作詳細情報５１cとを含むオペレーション情報５１を取得する。
【００８７】
マーキング解析部３１は、図６（b）に示すようなＧＵＩ機能（図中の［スタート］ボタン）を有する表示画面Ｗを介して受け付けた、印刷面Ｐの読み取り実行指示に従って上記動作を開始する。図６（b）に示す表示画面Ｗは、オペレーション実行機能を動作させたときに、ＵＩモジュール２１により操作パネル１１の表示装置１１bに表示される。表示画面Ｗの［スタート］ボタンが押下されたことを、ＵＩモジュール２１が操作パネル１１を介して受け付け、読み取り実行が指示されたとして、マーキング解析モジュール２２に実行開始を要求する。
【００８８】
（動作２）実行可能な拡張制御部の特定
図７及び図８は、本発明の第１の実施形態に係る実行可能な機能を検索する仕組みの一例（その１及びその２）を示す図である。図７には、実行可能な機能を検索する仕組みの基本動作例、また図８には、その具体例が示されている。
【００８９】
拡張制御管理部３２は、まず、マーキング解析部３１が有する取得手段により取得したオペレーション情報５１の装置識別コード５１aを基に、オペレーション情報５１に従った処理が当該画像処理装置１００で実行可能か否かを判定する（装置実行可否判定手段）。具体的には、取得したオペレーション情報５１の装置識別コード５１aと、当該画像処理装置１００が有する機器情報に含まれる装置を識別する情報とを比較し、一致しているか否かの比較結果に基づいて判定する。
【００９０】
これにより、本実施形態に係る画像処理装置１００は、取得したオペレーション情報５１に従った処理が、当該画像処理装置１００で実行可能か否かを自動判定することが可能となる。その結果、画像処理装置１００は、例えば、取得したオペレーション情報５１に従った処理が不可能な場合に、ただ処理がキャンセルされるのではなく、「どの機種であればオペレーション情報５１に従った処理を行うことができるか」などの情報をユーザへ提供することができる。
【００９１】
次に、拡張制御管理部３２は、上記操作実行可否判定手段により、取得したオペレーション情報５１に従った処理が実行可能な装置と判定された場合に、オペレーション情報５１の動作種別コード５１bを基に、当該画像処理装置１００が有する全ての拡張制御部３３の中から、オペレーション情報５１に従って処理を行う拡張制御部３３を特定する。そのため、拡張制御管理部３２は、特定手段により、当該画像処理装置１００が有する全ての拡張制御部３３に対して、実行可否判定を要求する。
【００９２】
拡張制御管理部３２は、図７に示すように、当該画像処理装置１００が有する１つ又は複数の拡張制御部３３を識別する識別情報（ソフトウェア部品識別情報）をリスト構造のデータ７１（以下、「リストデータ７１」という。）で管理する管理手段を有している。拡張制御管理部３２は、特定手段により拡張制御部３３を特定するときに、管理手段により管理される識別情報を基に、当該画像処理装置１００が有する全ての拡張制御部３３に対して、順次（図中の（１）から（Ｎ）の順に）、実行可否判定を要求する。具体的には、リストデータ７１に格納される識別情報と一致する拡張制御識別情報６１を有する拡張制御部３３に対して、実行可否判定を要求する。
【００９３】
拡張制御管理部３２は、拡張制御部３３への実行可否判定の要求を、オペレーション情報５１の動作種別コード５１bに基づいて行う。その結果、拡張制御部３３は、判定部３３aにより、拡張制御部３３で実現される動作の種別を示す動作種別コード６２（第２の動作種別コード）と、拡張制御管理部３２から要求されたときに受け取ったオペレーション情報５１の動作種別コード５１b（第１の動作種別コード）とを比較し、一致しているか否かの比較結果に基づいて判定する。
【００９４】
その結果、拡張制御部３３は、判定部３３aにより判定された判定結果を、要求元の拡張制御管理部３２へ応答し、拡張制御管理部３２は、実行可否判定の結果を得る。
【００９５】
例えば図８には、"コピー"、"ＦＡＸ"、及び"ネットワーク設定"の動作種別コード５１bを含む３つのオペレーション情報５１が埋め込まれた入力画像を、マーキング解析部３１が有する取得手段により取得した場合の拡張制御部３３を特定する動作例が示されている。
【００９６】
図８に示すように、拡張制御管理部３２は、リストデータ７１に従って、当該画像処理装置１００が有する全ての拡張制御部３３である拡張制御部３３（図中の"ＩＤ１からＩＤ４"の拡張制御識別子６１を有する拡張制御部３３）に対して、３つの動作種別コード５１bを検索キーに条件に該当する拡張制御部３３について検索を実行する。すなわち、３つの動作種別コード５１bを基に実行可否判定の要求する。その結果、拡張制御部３３は、動作種別コード５１bが、自らが保持する動作種別コード６２と一致した場合に、オペレーション情報５１に従って処理可能な機能部である旨を拡張制御管理部３２へ応答する（図中では"true"（真））。また、いずれかの動作種別コード５１bにも一致しなかった場合、オペレーション情報５１に従った処理を行う機能部でない旨を応答する（図中では"false"（偽））。
【００９７】
これによって、拡張制御管理部３２は、拡張制御部３３からの判定結果（図中の"true"（真）又は"false"（偽））から、図中で"true"（真）を応答した拡張制御部３３を、オペレーション情報５１に従って処理可能な機能部であると特定する。
【００９８】
これにより、本実施形態に係る画像処理装置１００は、一定の処理手順によってオペレーション情報５１に従って処理可能な機能部を特定することが可能となり、例えば、ベンダが開発した新規の拡張制御モジュール２４を追加した場合においても、拡張された機能部を用いたオペレーションの動作を容易に実現することができる。すなわち、画像処理装置１００は、機能搭載環境の変化に柔軟に対応することができる。
【００９９】
（動作３）拡張制御部の実行
拡張制御管理部３２は、特定手段により特定された拡張制御部３３に対して、オペレーション情報５１の動作詳細情報５１cを基に処理の実行を要求する。その結果、拡張制御部３３は、動作詳細情報５１cを基に実処理部６３によって所定の処理を行う。
【０１００】
図８の例では、拡張制御管理部３２は、特定された拡張制御識別子６１が"ＩＤ１"から"ＩＤ４"の各拡張制御部３３に対して、各動作種別コード５１bに対応する１つ又は複数の動作詳細情報５１cを基に実行を指示する。各拡張制御部３３は、それぞれの動作詳細情報５１cに従って、「通常の動作条件でコピーを実行する」、「通常の動作条件でＦＡＸを実行する」、「ＩＰアドレスの設定を実行する」、及び「集約両面の動作条件でコピーを実行する」などの所定の処理を実行する。その結果、画像処理装置１００では、オペレーション情報５１に従った処理が終了すると、図９に示すような表示画面Ｗを操作パネル１１の表示装置１１bに表示する。
【０１０１】
図９は、本発明の第１の実施形態に係る機能実行時の表示画面Ｗの一例を示す図である。図９（a）には、オペレーションの動作が正常に終了した場合の表示例、また図９（b）には、オペレーションの動作中のエラーが発生し処理がキャンセルされた旨を通知する表示例が示されている。本実施形態では、図９（b）の表示例に示すように、拡張制御部３３がオペレーション情報５１に従って処理を実行中に、何らかの原因で正常に処理が終了できなかった場合には、どの処理がキャンセルされたかを通知する内容が表示される。
【０１０２】
このように、本実施形態に係る画像処理装置１００は、拡張制御部３３が実行されたときに、オペレーション情報５１に従って処理を行った実行結果などのオペレーション実行に関する各種情報を、操作パネル１１の表示画面に表示する（表示手段）。
【０１０３】
上記（動作１）から（動作３）において説明を行った方法によって、本実施形態に係る画像処理装置１００は、搭載機能としてインストールされている所定の処理を実行するプログラムモジュール（ソフトウェア部品）ごとに、プログラムモジュール（ソフトウェア部品）自身において、入力画像から取得したオペレーション情報に従って処理が実行可能か否かを判定し、その判定結果が実行可能であれば処理を実行することができる。
【０１０４】
よって、本実施形態に係る画像処理装置１００は、オペレーション作業における処理手順や動作条件などの詳細設定に従って、一連の処理工程を自動実行可能で、かつ装置内の機能搭載環境の変化に柔軟に対応可能となり、その結果、ユーザのオペレーション作業を軽減し（オペレーション作業の操作性を向上し）、かつ機能搭載環境の変化に柔軟に対応可能なオペレーション実行を実現することができる。
【０１０５】
＜＜拡張制御部の追加・削除機能＞＞
本実施形態に係る画像処理装置１００では、機能搭載環境を図１０から図１２に示す方法によって管理している。
【０１０６】
（拡張制御部の追加）
図１０は、本発明の第１の実施形態に係る機能追加の仕組みの一例を示す図である。図１０には、拡張制御識別子６１が"ＩＤ３"のネットワーク設定を実行する拡張制御部３３を追加した場合の例が示されている。図１０に示すように、本実施形態に係る画像処理装置１００では、新規の拡張制御部３３をインストールしたとき（新規の拡張制御モジュール２４をインストーラによってＨＤＤ１７の所定の記憶領域に格納したとき）に、拡張制御管理部３２が有する管理手段で管理しているリストデータ７１に、インストールされた拡張制御部３３の拡張制御識別子６１（図中の"ＩＤ３"）を追加登録する（図中の（３））。本実施形態に係るリストデータ７１は、リスト構造をしており、主に、拡張制御部３３の拡張制御識別子６１を格納する実データ領域と、これらのデータ領域を順次参照するための参照先情報（例えばアドレス値など）を格納する参照データ領域との２つのデータ領域から構成されている。本実施形態の場合には、当該画像処理装置１００に拡張制御部３３がインストールされた順に、実データ領域にインストールされた拡張制御部３３の拡張制御識別子６１を格納している。このことから、図１０に示す新規の拡張制御部３３を追加する場合には、拡張制御管理部３２によって、新規の拡張制御部３３がインストールされる前のリストデータ７１の終端（２）に位置する参照データ領域が次の参照先を示す情報（３）へ更新され、（３）の実データ領域に、インストールされた拡張制御部３３の拡張制御識別子６１の情報（"ＩＤ３"）が格納される。
【０１０７】
このようにして、本実施形態に係る画像処理装置１００では、新規の拡張制御部３３を追加する（機能拡張する）。
【０１０８】
（拡張制御部の変更）
図１１は、本発明の第１の実施形態に係る機能変更の仕組みの一例を示す図である。図１１には、拡張制御識別子６１が"ＩＤ２"のＦＡＸ送信を実行する拡張制御部３３の動作種別を「ネットワーク設定を実行する」と言う動作種別に変更する例が示されている。図１１に示すように、本実施形態に係る画像処理装置１００では、拡張制御部３３が実現する処理の動作種別を変更する場合、拡張制御部３３が有する動作種別コード６２と、実処理部６３とを変更後の動作種別コード６２と、実処理部６３とに入れ替えれば良い。図１１に示す拡張制御部３３の動作種別を変更する場合には、拡張制御識別子６１が"ＩＤ２"の拡張制御部３３において、動作種別コード６２のデータ領域の値"ＦＡＸ"を、"ネットワーク設定"と言う動作種別コード６２の値に入れ替えている。また、「通常のＦＡＸ送信を実行する」実処理部６３のソフトウェア部品を、「ＩＰアドレス設定を実行する」と言うソフトウェア部品に入れ替えている。また、上記のような所定のデータ及びプログラム（ソフトウェア部品）の入れ替えによる動作種別の変更方法の他に、入れ替えたい拡張制御部３３と同じ拡張制御識別子６１を用いて、変更後の機能を搭載した拡張制御モジュール２４を開発し、拡張制御部３３ごと入れ替える方法でも良い。
【０１０９】
このようにして、本実施形態に係る画像処理装置１００では、既にインストール済みとなっている拡張制御部３３の動作種別を変更する（機能変更する）。
【０１１０】
（拡張制御部の削除）
図１２は、本発明の第１の実施形態に係る機能削除の仕組みの一例を示す図である。図１２には、拡張制御識別子６１が"ＩＤ２"のＦＡＸ送信を実行する拡張制御部３３を削除する例が示されている。図１２に示すように、本実施形態に係る画像処理装置１００では、既存の拡張制御部３３をアンインストールしたとき（既存の拡張制御モジュール２４をインストーラによってＨＤＤ１７の所定の記憶領域から削除したとき）に、拡張制御管理部３２が有する管理手段で管理しているリストデータ７１から、アンインストールされた拡張制御部３３の拡張制御識別子６１（図中の"ＩＤ２"）の登録を削除する（図中の（２））。図１２に示す拡張制御部３３を削除する場合には、拡張制御識別子６１が"ＩＤ２"の拡張制御部３３をアンインストールし、リストデータ７１において対応する実データ領域及び参照データ領域（図中の（２））を削除する。その後、削除した実データ領域の参照先情報が格納された図中の（１）に示す参照データ領域の値を、図中の（３）の実データ領域を参照するための参照先情報に置き換える。
【０１１１】
このようにして、本実施形態に係る画像処理装置１００では、既にインストール済みとなっている拡張制御部３３を削除する（機能削除する）。
【０１１２】
本実施形態に係る画像処理装置１００では、上記の方法によってオペレーション情報５１に従って処理を行う拡張制御部３３を管理することが可能で、機能搭載環境の変化に柔軟に対応することができる。すなわち、機能拡張性や保守性の向上を図ることができる。
【０１１３】
＜＜同一の動作種別による排他制御機能＞＞
図１３は、本発明の第１の実施形態に係る複数の機能を排他制御する仕組みの一例を示す図である。
【０１１４】
本実施形態に係る画像処理装置１００では、従来より自由度の高いオペレーション作業を設定可能なため、オペレーション作業を行う上で、例えば図１３に示すような、複数の拡張制御部３３により同じ動作種別の処理を行う場面が想定される。図１３では、オペレーション情報５１として実行指示された、コピーを行う２つの拡張制御部３３（図中の"ＩＤ１"と"ＩＤ４"）と、ネットワーク設定を行う２つの拡張制御部３３（図中の"ＩＤ２"と"ＩＤ３"）とが示されている。
【０１１５】
まず、拡張制御識別子６１が"ＩＤ１"と"ＩＤ４"との２つの拡張制御部３３は、同じ入力画像に対してコピー動作を行い、「通常印刷」及び「集約両面印刷」と言う二通りの方法で印刷を行う。このような場合、ユーザが所望する作業結果に何ら影響がないため、同じ動作種別の拡張制御部３３が動作しても問題はない。しかし、拡張制御識別子６１が"ＩＤ２"と"ＩＤ３"との２つの拡張制御部３３は、異なるＩＰアドレス（図中の"ＩＰアドレス（Ａ）"と"ＩＰアドレス（Ｂ）"）によりネットワーク設定を行ってしまう。その結果、ユーザが意図していないネットワーク設定となる可能性があり、作業結果への影響が考えられる。よって、拡張制御識別子が"ＩＤ２"と"ＩＤ４"の２つの拡張制御部３３のような関係にある拡張制御部３３同士は、排他的に実行を制御する必要がある。
【０１１６】
そこで、本実施形態に係る画像処理装置１００では、拡張制御部３３から拡張制御管理部３２の要求に対して実行可否判定の結果を"true"（真）／"false"（偽）ではなく、"所定の文字列（図中の"ＩＰアドレス設定（Ａ）"や"ＩＰアドレス設定（Ｂ）"）"／"false（偽）"の形式で応答する。すなわち、拡張制御管理部３２は、各拡張制御部３３から応答される実行可否判定結果が"true"（真）でなく、"所定の文字列"であった場合に、実行可能な拡張制御部３３のうち、排他制御が必要な拡張制御部３３であるとして、受け取った所定の文字列を基に、操作パネル１１の表示装置１１bに、図１４に示すようなユーザからの選択を受け付けるＧＵＩ機能を有する表示画面Ｗを表示するようにＵＩモジュール２１に指示する。
【０１１７】
図１４は、本発明の第１の実施形態に係る実行機能選択時の画面表示Ｗの一例を示す図である。ユーザは、図１４に示すような表示画面Ｗを介して、動作種別ごとに分類され表示されている排他制御対象である複数の処理工程のうち１つを選択設定し、［確定］ボタンを押下することにより処理の実行を指示する。
【０１１８】
このように、本実施形態に係る画像処理装置１００は、同じ拡張制御部３３の実行を排他制御する。よって、画像処理装置１００では、ユーザが意図しないようなオペレーション動作を抑制することができる。
【０１１９】
また、上記に挙げる方法は、ユーザが所望するオペレーション作業を実現するためのユーザとの対話形式による排他制御の一例であって、この限りではない。例えば、オペレーション実行を指示するユーザが作業に熟知していない第三者であることを想定して、拡張制御管理部３２により、予め決めておいた所定の規則に従って排他制御を行う方法でも良い。具体的には、拡張制御管理部３２により、排他制御が必要な拡張制御部３３から受け取った所定の文字列を基に、最初に実行可否判定結果を応答した拡張制御部３３を有効とする方法や、最後に応答した拡張制御部３３を有効とする方法などがある。
【０１２０】
＜＜エラー解析機能＞＞
エラー解析部３４は、エラーが発生した拡張制御部３３の動作種別コード５１bを基に、ＨＤＤ１７に格納されているエラーログ４１などのエラー発生時に収集された情報を参照し、発生したエラーを解析する。その結果、画像処理装置１００では、拡張制御管理部３２を介して、エラー解析部３４による解析結果が、図１５に示すような表示画面Ｗを操作パネル１１の表示装置１１bに表示される。
【０１２１】
図１５は、本発明の第１の実施形態に係るエラー発生時の表示画面Ｗの一例を示す図である。図１５には、ＦＡＸ送信時に発生したエラーを解析した例が示されている。
【０１２２】
図１５に示すように、エラー解析部３４は、例えば、ＦＡＸ送信時にエラーが発生した場合、動作種別コード５１b"ＦＡＸ"を基にエラーログ４１などの収集情報を参照し、発生したエラー内容とその原因について解析する。その結果、エラー解析部３４は、「送信エラー」、又は「起動エラー」などの解析結果を得る。画像処理装置１００は、その解析結果と、エラー原因を解消するための対応方法に関する情報とを情報として含む表示画面Ｗを、ＵＩモジュール２１を介して表示する。具体的には、図１５に示すように、エラーの解析結果が「送信エラー」の場合、その対応方法として「接続状態の確認」や「送り先情報の確認」などを促す情報を表示する。また、解析結果が「起動エラー」の場合、その対応方法として「動作の確認」や「再起動」などを促す情報を表示する。
【０１２３】
このように、本実施形態に係る画像処理装置１００は、オペレーション動作時に発生したエラーを解析する。よって、画像処理装置１００では、ユーザに対してエラー発生時の対応方法を通知することができる。よって、ユーザは、発生エラーについて詳細に把握することができ、利便性が向上する。
【０１２４】
＜＜認証機能＞＞
図１６は、本発明の第１の実施形態に係る認証用データＳが印刷された紙面と認証時の表示画面Ｗの一例を示す図である。
【０１２５】
拡張制御管理部３２は、オペレーション情報５１に対応付けて入力画像に埋め込まれた認証情報を基に、オペレーション情報５１に従った処理を行って良いか否かを認証する認証部３２a（認証手段）を有している。認証部３２aは、スキャナ１５により読み取られた、図１６（a）に示すような入力画像の所定の領域Ａ１に埋め込まれている認証用データＳから認証情報を取得する。次いで、認証部３２bは、操作パネル１１の表示装置１１bに、図１６（b）に示すようなパスワード入力を促すＧＵＩ機能を有する表示画面Ｗを表示するようにＵＩモジュール２１に指示する。その結果、認証部３２aは、ユーザが表示画面Ｗを介して入力したパスワードを［認証］ボタンが押下されることにより受け取り、受け取ったパスワードと、取得した認証情報とを比較し、一致しているか否かにより認証判定を行う。拡張制御管理部３２は、この認証結果を基に、オペレーション情報５１に従って拡張制御部３３に処理の実行を指示する。
【０１２６】
このように、本実施形態に係る画像処理装置１００は、オペレーション動作の認証を行う。よって、画像処理装置１００では、オペレーション動作により処理されるデータの機密性を確保することができる。
【０１２７】
＜処理手順＞
ここからは、上記に説明を行った本実施形態に係る画像処理装置１００が有する「オペレーション実行機能」の具体的な処理手順について、図１７から図１９を用いて説明する。以下に説明する処理手順は、画像処理装置１００にインストールされたオペレーション実行プログラム（図２に示すＵＩモジュール２１、マーキング解析モジュール２２、拡張制御管理モジュール２３、拡張制御モジュール２４、及びエラー解析モジュール２５を含むソフトウェア部品群）が、ＨＤＤ１７の所定の記憶領域からＲＡＭ１３b上に読み出され、ＣＰＵ１３cで実行されることにより処理される手順である。
【０１２８】
＜＜オペレーション実行処理の基本処理手順＞＞
図１７は、本発明の第１の実施形態に係るオペレーション実行時の処理手順の一例を示すフローチャートである。
【０１２９】
本実施形態に係る画像処理装置１００は、マーキング解析部３１により、読み取った入力画像の所定の領域Ａ１に埋め込まれているバーコードなどのオペレーションデータＢを解析し、オペレーション情報５１を取得する（ステップＳ１０１）。
【０１３０】
画像処理装置１００は、拡張制御管理部３２により、当該画像処理装置１００におけるオペレーション実行可否判定や認証処理、またオペレーション情報５１に従って処理を行う拡張制御部３３を特定するなどの所定の処理を行う（ステップＳ１０２）。
【０１３１】
画像処理装置１００は、拡張制御管理部３２による所定の処理を実行した結果、当該画像処理装置１００においてオペレーション情報５１に従った動作が実行可能か否か、またオペレーション実行に対して認証許可されたか否かを判定する（ステップＳ１０３）。
【０１３２】
当該画像処理装置１００が実行不可能、又は認証許可されなかった場合（ステップＳ１０３がＮＯの場合）には、ステップＳ１０９の処理手順に移行し、実行不可能である旨（エラー）を操作パネル１１に表示し（ステップＳ１０９）、ユーザが表示内容を確認した後（例えば表示画面Ｗの［ＯＫ］ボタンを押下したとき）に処理を終了する。
【０１３３】
また、当該画像処理装置１００が実行可能、又は認証許可された場合（ステップＳ１０３がＹＥＳの場合）には、拡張制御管理部３２により特定された各拡張制御部３３により、オペレーション情報５１に従った所定の処理が実行される（ステップＳ１０４）。
【０１３４】
画像処理装置１００は、ステップＳ１０４の処理結果を受けて、拡張制御部３３の実行中にエラーが発生したか否かを判定する（ステップＳ１０５）。
【０１３５】
実行中にエラーが発生していない場合（ステップＳ１０５がＮＯの場合）には、特定された全ての拡張制御部３３において処理が終了したか否かを判定し（ステップＳ１１０）、全ての処理が終了するまで（ステップＳ１１０がＮＯの間）、ステップＳ１０４の処理手順に戻り、処理を繰り返す。全ての処理が終了すると（ステップＳ１１０がＹＥＳの場合）、処理が正常に終了した旨を操作パネル１１に表示し（ステップＳ１１１）、ユーザが表示内容を確認した後に処理を終了する。
【０１３６】
また、実行中にエラーが発生した場合（ステップＳ１０５がＹＥＳの場合）には、エラー解析部３４により、ＨＤＤ１７に格納されたエラーログ４１などのエラーに関する収集情報を基に、発生したエラーの内容やその原因について解析が行われる（ステップＳ１０６）。
【０１３７】
その結果、画像処理装置１００は、解析結果を対処方法に関する情報とともに操作パネル１１に表示する（ステップＳ１０７）。
【０１３８】
画像処理装置１００は、エラーが解消されたか否かを判定し（ステップＳ１０８）、解消された場合（ステップＳ１０８がＹＥＳの場合）には、ステップＳ１０４の処理手順に戻り、繰り返し処理を行う。解消されない場合（ステップＳ１０８がＮＯの場合）には、その旨を操作パネル１１に表示し（ステップＳ１０９）、ユーザが表示内容を確認した後に処理を終了する。
【０１３９】
本実施形態に係る画像処理装置１００は、上記処理手順により、ユーザが指定するオペレーションに従った処理を実行することができる。
【０１４０】
次に、図１７のステップＳ１０２において説明を行った拡張制御管理処理について、図１８を用いて詳細に説明する。
【０１４１】
＜＜拡張制御管理処理の処理手順＞＞
図１８は、本発明の第１の実施形態に係る拡張制御管理部３２の処理手順の一例を示すフローチャートである。
【０１４２】
本実施形態に係る拡張制御管理部３２は、マーキング解析部３１により取得したオペレーション情報５１の装置識別コード５１aが、当該画像処理装置１００に対応する正しいコードか否かを判定する（ステップＳ１０２１）。
【０１４３】
当該画像処理装置１００に対応するコードでなかった場合（ステップＳ１０２１がＮＯの場合）、図１７に示すステップＳ１０３の処理手順へ移行する。
【０１４４】
また、当該画像処理装置１００に対応するコードであった場合（ステップＳ１０２１がＹＥＳの場合）、認証部３２aにより、オペレーション動作を行うときの認証処理が必要か否かを判定する（ステップＳ１０２２）。
【０１４５】
印刷面Ｐに認証用データＳが埋め込まれておらず、認証部３２aが、認証処理が必要ないと判定した場合（ステップＳ１０２２がＮＯの場合）、ステップＳ１０２５の処理手順へ移行する。
【０１４６】
また、印刷面Ｐに認証用データＳが埋め込まれてり、認証部３２aが、その認証用データＳから認証情報を取得し、認証処理が必要と判定した場合（ステップＳ１０２２がＹＥＳの場合）、操作パネル１１の表示画面Ｗから認証用のパスワードを受け取り（ステップＳ１０２３）、受け取ったパスワードと、取得した認証情報とを比較し、一致しているか否かによって認証判定を行う（ステップＳ１０２４）。
【０１４７】
比較結果が不一致で認証が「ＮＧ」の場合（ステップＳ１０２４がＮＯの場合）には、図１７に示すステップＳ１０３の処理手順へ移行する。
【０１４８】
また、比較結果が一致し認証が「ＯＫ」の場合（ステップＳ１０２４がＹＥＳの場合）には、拡張制御管理部３２が、リストデータ７１に従って、当該画像処理装置１００が有する全ての拡張制御部３３に対して、オペレーション情報５１の動作種別コード５１bを基に実行可否判定を要求し、実行可能処理を検索する（ステップＳ１０２５）。
【０１４９】
拡張制御管理部３２は、検索結果を基に該当する処理を実行可能な拡張制御部３３が存在するか否かを判定する（ステップＳ１０２６）。
【０１５０】
実行可能な拡張制御部３３が存在しなかった場合（ステップＳ１０２６がＮＯの場合）図１７に示すステップＳ１０３の処理手順に移行する。
【０１５１】
また、実行可能な拡張制御部３３が存在した場合（ステップＳ１０２６がＹＥＳの場合）、該当した拡張制御部３３で行う処理が排他制御が必要な処理か否かを判定し（ステップＳ１０２７）、排他制御が必要ない場合（ステップＳ１０２７がＮＯの場合）には、図１７に示すステップＳ１０３の処理手順に移行する。
【０１５２】
また、排他制御が必要な処理の場合（ステップＳ１０２７がＹＥＳの場合）には、操作パネル１１の表示画面Ｗから選択機能に関する情報を受け取り（ステップＳ１０２８）、受け取った情報に従って拡張制御部３３を決定し、図１７に示すステップＳ１０３の処理手順に移行する。
【０１５３】
本実施形態に係る画像処理装置１００は、拡張制御管理部３２により、当該画像処理装置１００におけるオペレーション実行可否判定や認証処理、またオペレーション情報５１に従って処理を行う拡張制御部３３を特定するなどの所定の処理を行う。
【０１５４】
次に、図１７のステップＳ１０４において説明を行った拡張制御部３３による処理の実行について、図１９を用いて詳細に説明する。
【０１５５】
＜＜拡張制御部の処理手順＞＞
図１９は、本発明の第１の実施形態に係る拡張制御部３３の処理手順の一例を示すフローチャートである。
【０１５６】
本実施形態に係る拡張制御部３３は、拡張制御管理部３２から、オペレーション情報５１の動作種別コード５１bを基に実行可否判定の要求がされたか否かを判定する（ステップＳ２０１）。
【０１５７】
実行可否判定が要求された場合（ステップＳ２０１がＹＥＳの場合）には、拡張制御部３３が有する動作種別コード６２と、拡張制御管理部３２から受け取った動作種別コード５１bとを比較し、一致しているか否かによって実行可否判定を行う（ステップＳ２０２）。
【０１５８】
拡張制御部３３は、実行可否判定の結果を、要求元の拡張制御管理部３２へ応答する（ステップＳ２０３）。
【０１５９】
また、拡張制御管理部３２から、オペレーション情報５１の動作詳細情報５１cを基に処理の実行が要求がされた場合（ステップＳ２０１がＮＯの場合）には、実処理部６３により、受け取った動作詳細情報５１cを基に所定の処理を実行する（ステップＳ２０４）。
【０１６０】
本実施形態に係る画像処理装置１００は、拡張制御部３３により、オペレーション情報５１に従った処理が実行可能か否かを判定する。
【０１６１】
＜まとめ＞
以上のように、本発明の第１の実施形態によれば、本実施形態に係る画像処理装置１００は、搭載機能としてインストールされている所定の処理を実行するプログラムモジュール（ソフトウェア部品）ごとに、プログラムモジュール（ソフトウェア部品）自身において、入力画像から取得したオペレーション情報５１に従って処理が実行可能か否かを判定し、その判定結果が実行可能であれば処理を実行する。
【０１６２】
これによって、本実施形態に係る画像処理装置１００は、オペレーション作業における処理手順や動作条件などの詳細設定に従って、一連の処理工程を自動実行可能で、かつ装置内の機能搭載環境の変化に柔軟に対応可能となり、その結果、ユーザのオペレーション作業を軽減し、かつ機能搭載環境の変化に柔軟に対応可能な「オペレーション実行機能」を実現することができる。
【０１６３】
［第２の実施形態］
本実施形態は、第１の実施形態において説明を行った「オペレーション実行機能」を、後述する「パイプ＆フィルタ」アーキテクチャを搭載する画像処理装置に適用した場合の例である。まず、「パイプ＆フィルタ」アーキテクチャについて、図２０から図２３を用いて説明を行う。また、本実施形態については、第１の実施形態と異なる点についてのみ説明を行い、同じ点については、第１の実施形態の説明の中で用いた図面及び参照符号をもって説明を省略する。
【０１６４】
＜ソフトウェア構成＞
本実施形態に係る画像処理装置１００の機能を実現するためのソフトウェア構成及び基本処理手順について、図２０から図２３を用いて説明する。
【０１６５】
＜＜構成＞＞
図２０は、本発明の第２の実施形態に係る画像処理装置１００のソフトウェア構成の一例を示す図である。
【０１６６】
本実施形態に係る画像処理装置１００が有するソフトウェアは、ユーザインタフェース層１０１、コントロール層１０２、アプリケーションロジック層１０３、デバイスサービス層１０４及びデバイス制御層１０５などにより構成されている。なお、図中における各層の上下関係は、基本的に上にある層が下の層を呼び出す関係に基づいている。
【０１６７】
ユーザインタフェース層１０１は、機能（例えば、コピー、ファックス、スキャナ、プリンタなどのアプリケーション機能）の実行要求を受け付けるためのＵＩ（User Interface）機能が実装されている部分であり、例えば、通信サーバ部３０１及びローカルＵＩ部３０２などが含まれる。
【０１６８】
通信サーバ部３０１は、例えば、非図示の通信機器を有する周辺機器であるクライントＰＣなどからネットワークを介して各種要求（例えば印刷動作要求など）を受け付ける。また、ローカルＵＩ部３０２は、例えば、操作パネル１１を介して入力される各種要求（例えば、コピー動作要求や動作設定など。）を受け付ける。
【０１６９】
ユーザインタフェース層１０１において受け付けられた要求は、コントロール層１０２に伝えられる。
【０１７０】
コントロール層１０２は、要求された機能を実現するための処理を制御するための機能が実装されている部分である。例えば、コントロール部３０３などが含まれている。具体的には、コントロール部３０３において、要求された機能に応じて、後述するアプリケーションロジック層１０３における各フィルタを接続し、接続されたフィルタに基づいて機能の実行を制御する。なお、本実施形態において「画像処理装置１００の機能」とは、画像処理装置１００がユーザに対して提供する１つのまとまった単位（要求が入力されて最終的な出力が得られるまで）のサービスと同義であり、ソフトウェア的には１つのまとまった単位のサービスを提供するアプリケーションと同義である。
【０１７１】
アプリケーションロジック層１０３は、それぞれが画像処理装置１００において提供される機能の一部を実現する部品群（ソフトウェア部品群）が実装されている部分である。すなわち、アプリケーションロジック層１０３における部品を組み合わせることにより１つの機能が実現される。本実施形態では、各部品を「フィルタ」と呼ぶ。これは、画像処理装置１００のソフトウェアアーキテクチャが「パイプ＆フィルタ」と呼ばれる考え方に基づくものである。
【０１７２】
図２１は、本発明の第２の実施形態に係るパイプ＆フィルタの概念及びフィルタの構成要素の一例を示す図である。図２１の（a）には、パイプ＆フィルタの概念を示し、図３の（b）には、フィルタの構成要素の一例を示す。
【０１７３】
まず、パイプ＆フィルタの概念について説明する。図２１の（a）において、「Ｆ」はフィルタを示し、「Ｐ」はパイプを示す。図中に示すように、各フィルタはパイプによって接続される。フィルタは、入力されたデータに対して所定の変換を施し、その結果を出力する。パイプは、フィルタから出力されたデータを次のフィルタに伝達する。すなわち、本実施形態に係る画像処理装置１００では、各機能を、画像処理装置１００内部で管理する情報（例えば、ユーザ情報や画像データなど。）に対する「変換」の連続として捉える。画像処理装置１００の各機能は、画像処理装置１００内部で取り扱う情報の入力、加工及び出力によって構成されるものとして一般化することができる。そこで「入力」、「加工」及び「出力」を「変換」として捉え、１つの「変換」を実現するソフトウェア部品がフィルタとして構成される。入力を実現するフィルタを特に「入力フィルタ（入力手段）」という。また、加工を実現するフィルタを特に「変換フィルタ（加工手段）」という。更に、出力を実現するフィルタを特に「出力フィルタ（出力手段）」という。なお、各フィルタは独立しており、フィルタ間における依存関係（呼び出し関係）は基本的に存在しない。従って、フィルタ単位で追加（インストール）又は削除（アンインストール）が可能とされている。
【０１７４】
図２０に戻り、アプリケーションロジック層１０３には、入力フィルタ（入力手段）１０３aとして、例えば、読取フィルタ３０４などが含まれている。
【０１７５】
読取フィルタ３０４は、スキャナ１５による画像データの読み取りを制御し、読み取られた画像データを出力する。
【０１７６】
その他、入力フィルタ１０３aとして、ＨＤＤ１７に保管されている文書データ（画像データ）を読み出し、読み出されたデータを出力する保管文書読出フィルタ、電子メールの受信し、当該電子メールに含まれているデータを出力するメール受信フィルタ、ＦＡＸ受信を制御し、受信されたデータを出力するＦＡＸ受信フィルタ、非図示のクライアントＰＣから印刷データを受信し、受信された印刷データを出力するＰＣ文書受信フィルタ、画像処理装置１００の設定情報や履歴情報などを、例えば表形式に整形されたデータとして出力するレポートフィルタなどが含まれている。
【０１７７】
また、変換フィルタ（加工手段）１０３bとしては、例えば、文書加工フィルタ３０５などが含まれている。文書加工フィルタ３０５は、入力されたデータに所定の画像変換処理（集約、拡大、又は縮小など）を施し出力する。
【０１７８】
その他、変換フィルタ１０３bとして、入力されたＰｏｓｔＳｃｒｉｐｔデータをビットマップデータに変換して出力する（レンダリング処理を実行する）文書変換フィルタなどが含まれている。
【０１７９】
また、出力フィルタ（出力手段）１０３cとしては、例えば、印刷フィルタ３０６などが含まれている。印刷フィルタ３０６は、入力されたデータをプロッタ１６に出力（印刷）させる。
【０１８０】
その他、出力フィルタ１０３cとして、入力されたデータをＨＤＤ１７に保存する保管文書登録フィルタ、入力されたデータを電子メールに添付して送信するメール送信フィルタ、入力されたデータをＦＡＸ送信するＦＡＸ送信フィルタ、入力されたデータを、非図示のクラインアントＰＣに送信するＰＣ文書送信フィルタ、入力されたデータを操作パネル１１が備える表示装置１１bにプレビュー表示させるプレビューフィルタなどが含まれている。
【０１８１】
デバイスサービス層１０４は、アプリケーションロジック層１０３における各フィルタから共通に利用される下位機能が実装されている部分であり、例えば、画像パイプ３０７、データ管理部３０８などが含まれている。
【０１８２】
画像パイプ３０７は、或るフィルタからの出力データを次のフィルタに伝達するパイプの機能を実現する。また、データ管理部３０８は、ユーザ情報が登録されたＤＢや文書又は画像データなどが蓄積されるＤＢなどの各種ＤＢを表現する。
【０１８３】
デバイス制御層１０５は、デバイス（ハードウェア）を制御するドライバと呼ばれるプログラムモジュール群が実装されている部分であり、例えば、スキャナ制御部３０９、プロッタ制御部３１０、メモリ制御部３１１、及び操作デバイス制御部３１２などが含まれる。各制御部は、当該制御部の名前に付けられている各デバイスを制御する。
【０１８４】
アスペクト１０６は、例えば、アクセス制御、履歴、課金といった、システム全体に渡る横断的な情報を取り扱うプログラムモジュール群が実装されている部分である。
【０１８５】
ここから、フィルタについて更に詳しく説明する。図２１の（b）は、フィルタの構成要素の一例を示す図である。図中に示すように、各フィルタは、フィルタ設定用ＵＩ、フィルタロジック、フィルタ固有下位サービス及び永続記憶領域情報などにより構成されている。このうち、フィルタ設定用ＵＩ、フィルタ固有下位サービス及び永続記憶領域情報については、フィルタによって必ずしも構成要素に含まれない。
【０１８６】
フィルタ設定用ＵＩは、フィルタの実行条件などを設定させるための画面を操作パネル１１が備える表示装置１１bなどに表示させるプログラムである。例えば、読取フィルタ３０４であれば、解像度、濃度、画像種別などを設定させる画面（動作（条件）設定画面）が相当する。なお、操作パネル１１が備える表示装置１１bの表示がＨＴＭＬ（HyperText Markup Language）データやスクリプト（Script）に基づいて行われることを考えると、フィルタ設定用ＵＩは、ＨＴＭＬデータやスクリプトであってもよい。
【０１８７】
フィルタロジックは、フィルタの機能を実現するためロジックが実装されたプログラムである。すなわち、フィルタの構成要素としてのフィルタ固有下位サービスやデバイスサービス層１０４又はデバイス制御層１０５などを利用して、フィルタ設定用ＵＩを介して設定された実行条件に応じてフィルタの機能を実現する。例えば、読取フィルタ３０４であれば、スキャナ１５による原稿の読み取り制御のためのロジックが相当する。
【０１８８】
フィルタ固有下位サービスは、フィルタロジックを実現するために必要な下位機能（ライブラリ）である。すなわち、デバイスサービス層１０４又はデバイス制御層１０５に相当する機能であるが、他のフィルタから使用されないものについては、フィルタの一部として実装されてもよく、当該一部がフィルタ固有下位サービスに相当する。例えば、読取フィルタ３０４であれば、スキャナ１５を制御するための機能が相当するが、本実施形態では、デバイス制御層１０５においてスキャナ制御部３０９として実装されている。従って、読取フィルタ３０４において、フィルタ固有下位サービスの実装は必ずしも必要ではない。
【０１８９】
永続記憶領域情報は、フィルタに対する設定情報（例えば、実行条件のデフォルト値など。）など、不揮発メモリ（例えばＮＶＲＡＭ（Non Volatile RAM）など）に記憶する必要があるデータのスキーマ定義が相当する。当該スキーマ定義は、フィルタがインストールされるときにデータ管理部３０８に登録される。
【０１９０】
ここで、本実施形態に係る画像処理装置１００における各機能を実現するためのフィルタの組み合わせの一例について以下に説明する。
【０１９１】
例えば、コピー機能の場合は、読取フィルタ３０４と印刷フィルタ３０６とを接続することにより実現される。読取フィルタ３０４によって原稿より読み取られた画像データを印刷フィルタ３０６によって印刷すればよいからである。なお、集約、拡大、又は縮小などの加工が要求された場合には、これらの加工を実現する文書加工フィルタ３０５が２つのフィルタの間に挿入されることにより実現される。
【０１９２】
＜＜基本処理手順＞＞
上記ソフトウェア構成により、機能実現の際に実行される基本処理手順について、図２２及び図２３を用いて説明する。図２２及び図２３は、本発明の第２の実施形態に係るパイプ＆フィルタの基本処理手順（その１及びその２）の一例を示すフローチャートである。ここで言う「基本処理手順」とは、画像処理装置１００が１つの機能を実現する際の処理手順のことを意味する。
【０１９３】
まず、ユーザによって入力フィルタ１０３aが選択され（Ｓ１１）、選択された入力フィルタ１０３aの実行条件が設定される（Ｓ１２）。同様に、変換フィルタ１０３b又は出力フィルタ１０３cについても選択が行われ（Ｓ１３）、フィルタ間の接続が指定され（Ｓ１４）、実行条件が設定される（Ｓ１５）。
【０１９４】
上記の操作は、ユーザインタフェース層１０１のローカルＵＩ部３０２の制御の基、例えば操作パネル１１を介して行われる。
【０１９５】
各フィルタの選択が完了し（Ｓ１６がＹＥＳの場合）、スタートボタンが押下されると、ユーザインタフェース層１０１からコントロール層１０２に対して、要求内容（例えばフィルタの種別と当該フィルタに対する動作（条件）設定情報など）が通知される。
【０１９６】
コントロール層１０２は、ユーザインタフェース層１０１からの要求内容を受けて、選択された各フィルタ間をパイプによって接続する（Ｓ１７）。パイプの実体はメモリ（ＨＤＤ１７の記憶領域も含む）であるが、パイプの両端のフィルタに応じて利用するメモリの種類が異なり、その対応関係は、例えば、画像処理装置１００が有するＨＤＤ１７内に予め定義されている。従って、コントロール層１０２は、定義された対応関係に基づいて、各フィルタ間を特定のパイプで接続する。
【０１９７】
続いて、コントロール層１０２は、各フィルタに対して並列的に実行要求を出力する（Ｓ１８）。すなわち、フィルタの呼び出しはフィルタの接続順ではなく、全てのフィルタに対してほぼ同時に行われる。なぜならフィルタ間の同期はパイプによってとられるからである。すなわち、コントロール層１０２からの実行要求を受けて、各フィルタは自分の入力側のパイプにデータが入力されるまで待機する。但し、入力フィルタ１０３aには、入力側にパイプは存在しない。従って、入力フィルタ１０３aは実行要求に応じて処理を開始する。
【０１９８】
処理手順は図２３に移り、まず、入力フィルタ１０３aは、入力デバイスよりデータを入力し（Ｓ２１）、当該データを、出力側に接続されているパイプに出力する（Ｓ２２）。なお、データが複数回に分けて入力される場合（複数枚の原稿がスキャンされる場合など）は、データの入力とパイプへの出力が繰り返される。全ての入力データについて処理が終了すると（Ｓ２３がＹＥＳの場合）、入力フィルタ１０３aの処理は終了する。
【０１９９】
変換フィルタ１０３bは、入力側に接続されているパイプに対するデータの入力を検知すると処理を開始する。まず、当該パイプからデータを読み込み（Ｓ３１）、データに対して画像処理を施す（Ｓ３２）。続いて、処理結果としてのデータを出力側に接続されているパイプに出力する（Ｓ３３）。入力側のパイプに入力された全てのデータについて処理が終了すると（Ｓ３４がＹＥＳの場合）、変換フィルタ１０３bの処理は終了する。
【０２００】
出力フィルタ１０３cは、入力側に接続されているパイプに対するデータの入力を検知すると処理を開始する。まず、当該パイプからデータを読み込み（Ｓ４１）。続いて、読み込まれたデータを、出力デバイスを利用して出力する（Ｓ４２）。入力側のパイプに入力された全てのデータについて処理が終了すると（Ｓ４３がＹＥＳの場合）、出力フィルタ１０３cの処理は終了する。
【０２０１】
＜「パイプ＆フィルタ」アーキテクチャにおけるオペレーション実行機能＞
これまでに説明を行ったように、「パイプ＆フィルタ」アーキテクチャで動作するアプリケーションは、画像処理装置１００で行いたい処理目的に応じて、データを入力する入力フィルタ１０３aと、入力したデータを加工する変換フィルタ１０３bと、加工したデータを出力する出力フィルタ１０３cとを組み合わせ、入力・加工（変換）・出力の各フィルタを、パイプで接続することで構成される。
【０２０２】
これによって、アプリケーションは、入力フィルタ１０３aで入力したデータを、次工程の変換フィルタ１０３bへ伝達でき、変換フィルタ１０３bで加工したデータを、次工程の出力フィルタ１０３cへ伝達する、すなわち、画像処理装置１００が有する入力・加工（変換）・出力機能コンポーネント（ソフトウェア部品）を連携動作し機能を実現している。
【０２０３】
よって、本実施形態に係る画像処理装置１００には、アプリケーションが目的とする機能を実現する入力・加工（変換）・出力機能コンポーネント（ソフトウェア部品）を、必要に応じてインストールすることで、アプリケーションがもつ機能そのものを実装できる。
【０２０４】
このような「パイプ＆フィルタ」のソフトウェア構成及び基本処理手順を踏まえて、本実施形態に係る「出力ジョブ制御機能」について考えてみる。
【０２０５】
「パイプ＆フィルタ」アーキテクチャで動作するアプリケーションの数は、入力・加工（変換）・出力の各フィルタの組み合わせだけ考えられる。また、各フィルタ間に依存関係はないため、サードベンダなどから提供される新規のフィルタ（ソフトウェア部品）を組み合わせたアプリケーションも想定されるため、その数は無限である。
【０２０６】
そのため、本実施形態に係る「オペレーション実行機能」では、画像処理装置１００が有する拡張制御モジュール２４以外に、新たにインストールされ追加された拡張制御モジュール２４により実行される処理を含むオペレーション処理に対しても、柔軟に対応しなければならない。すなわち、画像処理装置１００の機能搭載環境の変化に柔軟に対応可能で、かつユーザのオペレーション作業を軽減するオペレーション実行を実現しなければならない。そこで、本実施形態では、後述する方法によって、上記「オペレーション実行機能」を実現している。
【０２０７】
以降に、本実施形態に係る画像処理装置１００が有する「オペレーション実行機能」について説明を行う。
【０２０８】
＜モジュール構成＞
本実施形態に係る画像処理装置１００が有するモジュール構成について、図２４を用いて説明する。図２４は、本発明の第２の実施形態に係る画像処理装置１００が有する機能を実現するためのモジュール構成の一例を示す図である。
【０２０９】
本実施形態に係る画像処理装置１００は、拡張制御管理モジュール２３と、拡張制御モジュール２４と、エラー解析モジュール２５の他、主に図２０で示したローカルＵＩ部３０２と、コントロール部３０３の各プログラムモジュールとから構成される。
【０２１０】
第１の実施形態との違いは、「パイプ＆フィルタ」アーキテクチャ上で動作することから、ＵＩモジュール２１の換わりにローカルＵＩ部３０２を用いる点と、拡張制御管理モジュール２３が有する一部の機能を実現するためにコントロール部３０３を用いる点である。
【０２１１】
コントロール部３０３とローカルＵＩ部３０２とは、互いのモジュール間でデータのやり取りを行うことが可能となっていることから、第１の実施形態に係る拡張制御管理モジュール２４で処理していた、実行可否判定結果の通知や認証用のパスワード入力の要求通知などの操作パネル１１の表示画面関連の各種処理をコントロール部３０３によって行う。
【０２１２】
「パイプ＆フィルタ」アーキテクチャでは、入力・加工（変換）・出力の各フィルタＦＩＬを組み合わせ、アクティビティＡＣＴにより制御することでアプリケーションの機能を実現している。例えば、マーキング解析モジュール２２が実現していた機能は、読取フィルタ３０４とマーキング解析フィルタとをアクティビティＡＣＴにより連携動作させることで実現することができる。よって、本実施形態では、オペレーション情報５１に従った処理を各フィルタＦＩＬによって行うことになる。
【０２１３】
このことから、本実施形態に係る拡張制御モジュール２４では、実行可否判定や各フィルタＦＩＬを制御するアクティビティＡＣＴへの実行要求などの処理を行う。また、本実施形態に係る拡張制御管理モジュール２３では、上記拡張制御モジュール４２への実行要求やコントロール部３０３とのデータのやり取りを行う。
【０２１４】
このように、本実施形態に係る画像処理装置１００では、上記モジュール構成によって、「パイプ＆フィルタ」アーキテクチャ上においても第１の実施形態において説明を行った「オペレータ実行機能」を実現することができる。
【０２１５】
＜オペレーション実行機能＞
次に、本実施形態に係る画像処理装置１００が有する「オペレーション実行機能」を実現する各手段について、図２５を用いて説明する。図２５は、本発明の第２の実施形態に係る画像処理装置１００が有する機能を実現するための手段構成の一例を示す図である。
【０２１６】
＜＜手段構成の概要＞＞
本実施形態に係る画像処理装置１００は、入力画像に埋め込まれたオペレーション情報を取得する取得手段を有するマーキング解析部３１を有して点以外は、第１の実施形態において説明した手段構成と同じである。取得手段を有するマーキング解析部３１は、先に述べたように、「パイプ＆フィルタ」アーキテクチャによりアプリケーションの１つとして実現可能であることから特段図示していない。
【０２１７】
（データの概要）
本実施形態に係る「オペレーション実行機能」において取り扱うデータ（例えばオペレーション情報５１など）については、第１の実施形態と同じであるため説明を省略する。
【０２１８】
（各手段を有する機能部の概要）
以下に、第１の実施形態と異なる機能部について簡単に説明する。
【０２１９】
第１の実施形態に係る拡張制御部３３は、オペレーション情報５１に従った処理が実行可能か否かを判定する判定部３３a（オペレーション実行可否判定手段）と、オペレーション情報５１に従って所定の処理を行う実処理部（非図示）とを有していた。
【０２２０】
本実施形態に係る拡張制御部３３は、当該画像処理装置１００が有する機能を実現するアクティビティＡＣＴと関連付けられており、判定部３３aによる実行可否判定を行い、判定結果とともに、要求元の拡張制御管理部３２へ実行可能なアクティビティＡＣＴに関する情報を応答する。
【０２２１】
更に、本実施形態に係る拡張制御部３３は、上記判定部３３aによるオペレーション実行可否判定手段に加えて、オペレーション情報５１に従って所定の処理を行うが各フィルタＦＩＬであることから、フィルタＦＩＬの動作を制御するアクティビティＡＣＴへ動作実行を要求する手段を有している。また、拡張制御部３３は、オペレーション情報５１の動作詳細情報５１cを基に、各フィルタＦＩＬにオペレーション実行時の動作条件を設定する手段も有している。
【０２２２】
拡張制御管理部３２は、特定手段により、拡張制御部３３に対して、オペレーション情報５１の動作種別コード５１bを基に実行可否判定を要求する。その結果、拡張制御部３３が有する判定部３３aにより実行可否判定が行われ、その判定結果やアクティビティＡＣＴに関する情報が要求元の拡張制御管理部３２へ応答される。その結果、拡張制御管理部３２は、拡張制御部３３の判定結果を基に、オペレーション情報５１に従った処理を実現するアクティビティＡＣＴを特定する。すなわち、拡張制御管理部３２は、オペレーション情報５１に従った処理を行う１つ又は複数のフィルタＦＩＬを特定する。
【０２２３】
よって、拡張制御管理部３２は、上記の方法によって特定されたアクティビティＡＣＴに対して、実行制御手段によりコントロール部３０３を介して実行を指示する。
【０２２４】
＜オペレーション実行機能の動作概要＞
ここからは、本実施形態に係る画像処理装置１００において、上記に説明を行った機能部が有する各手段をどのように動作させることによって「オペレーション実行機能」を実現しているかについて、図２６から図３６を用いて具体的に説明する。
【０２２５】
＜＜オペレーションデータ読み込み処理＞＞
（動作条件設定に関する処理）
図２６は、本発明の第２の実施形態に係るオペレーションデータ読み込み処理の動作条件設定に関する処理手順の一例を示すシーケンス図である。
【０２２６】
本実施形態に係る画像処理装置１００は、オペレーションデータＢの読み込み実行の指示をローカルＵＩ部３０２が受け付けと、ローカルＵＩ部３０２が、マーキング解析機能を実現するアクティビティＡＣＴを作成する（ステップＳ３０１）。
【０２２７】
アクティビティＡＣＴは、自らが機能するために必要なフィルタの作成を行う。オペレーションデータＢの読み込むマーキング解析機能の場合には、読取フィルタ３０４及びマーキング解析フィルタの各フィルタＦＩＬの作成を行う（ステップＳ３０２及びＳ３０３）。
【０２２８】
更に、アクティビティＡＣＴは、自らが機能するために必要な各フィルタの初期動作条件（例えば操作パネル１１から設定された「読取解像度」や「解析領域指定」などの動作条件）を基に、各フィルタＦＩＬに対して設定を指示する（ステップＳ３０４及びＳ３０６）。
【０２２９】
その結果、各フィルタＦＩＬは、設定指示に従って初期動作条件を設定する（ステップＳ３０５及びＳ３０７）。
【０２３０】
アクティビティＡＣＴは、ステップＳ３０５及びＳ３０７の各処理手順において初期動作条件設定し、前処理を終えた各フィルタＦＩＬをパイプで接続する（ステップＳ３０８）。
【０２３１】
このとき、画像処理装置１００は、オペレーションデータ読み込み準備が完了したことを受けて、図６（b）に示すような表示画面Ｗを操作パネル１１に表示する。
【０２３２】
（読み込み処理）
次に、動作条件設定を終えた後に実行されるオペレーションデータ読み取りの処理手順について説明する。図２７は、本発明の第２の実施形態に係るオペレーションデータ読み込み処理の処理手順の一例を示すシーケンス図である。
【０２３３】
本実施形態に係る画像処理装置１００は、図６（b）に示すような表示画面Ｗを介して、スキャナ１５による読み込み実行の指示を受け付けると、ローカルＵＩ部３０２が、前処理が完了したアクティビティＡＣＴを指定して（図中の"activity"）、コントロール部３０３にアクティビティＡＣＴの実行を要求する（ステップＳ４０１）。
【０２３４】
コントロール部３０３は、実行要求に従って、指定されたアクティビティＡＣＴに実行を指示する（ステップＳ４０２）。
【０２３５】
アクティビティＡＣＴは、実行指示を受け付けると、自らが機能するために必要な各フィルタ（図中の「読取フィルタ３０４」及び「マーキング解析フィルタ」）に対して実行を指示する（ステップＳ４０３及びＳ４０４）。
【０２３６】
アクティビティＡＣＴは、各フィルタを実行した後、実行結果（図中の"result"）とともに、アクティビティＡＣＴの終了（図中の"finish_activity"）を、実行要求元のコントロール部３０３へ通知する（ステップＳ４０５）。
【０２３７】
このように、本実施形態に係る画像処理装置１００は、上記処理手順によって、印刷面Ｐに埋め込まれているオペレーションデータＢを読取フィルタ３０４で読み込み、読み取られた入力画像はパイプに保持され、それを受けてマーキング解析フィルタで解析し、オペレーション情報５１を取得する。
【０２３８】
＜＜オペレーション実行に関する処理＞＞
次に、オペレーション情報５１を取得した後に実行されるオペレーション実行の処理手順について説明する。
【０２３９】
（動作条件設定に関する処理）
図２８は、本発明の第２の実施形態に係る動作条件設定に関する処理手順の一例（その１）を示すシーケンス図である。
【０２４０】
本実施形態に係る画像処理装置１００は、コントロール部３０３によりアクティビティＡＣＴからオペレーションデータ読み込み処理の終了通知を受けると、拡張制御管理部３２に対して、取得したオペレーション情報５１に従った処理が実行可能か否かの判定、すなわちオペレーション動作を制御する拡張制御の確認が、アクティビティＡＣＴに関する情報（図中の"finish_activity"や"result"）とともに要求される（ステップＳ５０１）。
【０２４１】
拡張制御管理部３２は、確認要求に従って、まず、取得したオペレーション情報５１の動作種別コード５１b（図中の"Enumeration"）を基に拡張制御部３３に対して、実行可否判定の実行を要求し、更に、アクティビティＡＣＴに関する情報と、取得したオペレーション情報５１の動作詳細情報５１c（図中の"param"）とを基に拡張制御の展開（フィルタＦＩＬの動作条件設定とパイプによる接続など）を要求する（ステップＳ５０２）。
【０２４２】
拡張制御部３３は、実行可否判定の要求に従って、パラメータを介して受け取った動作種別コード５１bを基に実行可否判定を行う（ステップＳ５０３）。
【０２４３】
次いで、拡張制御部３３は、拡張制御の展開要求に従って、先の判定結果を基に実行可能なフィルタＦＩＬを制御するアクティビティＡＣＴを特定すると、特定したアクティビティＡＣＴ、並びにアクティビティＡＣＴの制御対象である各フィルタＦＩＬ（図中の「編集フィルタ」や「印刷フィルタ３０６」）を作成する（ステップＳ５０４からＳ５０６）。
【０２４４】
更に、拡張制御部３３は、パラメータを介して受け取った動作詳細情報５１cを基に、各フィルタＦＩＬに対して、オペレーション情報５１により指定された動作種別に対応する動作条件の設定（初期動作条件の更新）を要求する（ステップＳ５０７及びＳ５０９）。
【０２４５】
その結果、各フィルタＦＩＬは、設定指示に従って動作条件を設定する（ステップＳ５０８及びＳ５１０）。
【０２４６】
拡張制御部３３は、アクティビティＡＣＴに対して、各フィルタＦＩＬの接続を要求し（ステップＳ５１１）、アクティビティＡＣＴは、接続要求に従って、ステップＳ５０８及びＳ５１０の各処理手順において動作条件が設定された各フィルタＦＩＬをパイプで接続する（ステップＳ５１２）。
【０２４７】
（排他制御処理）
第１の実施形態においても説明を行ったが、拡張制御部３３により実行可否判定を行ったときに、実行可能な処理同士で排他処理を行う必要がある場合が考えられる。このときの処理手順について説明する。図２９は、本発明の第２の実施形態に係る動作条件設定時の排他制御に関する処理手順の一例を示すシーケンス図である。
【０２４８】
本実施形態に係る画像処理装置１００は、コントロール部３０３によりアクティビティＡＣＴからオペレーションデータ読み込み処理の終了通知を受けると、拡張制御管理部３２に対して、取得したオペレーション情報５１に従った処理が実行可能か否かの判定を要求し（ステップＳ６０１）、拡張制御管理部３２は、確認要求に従って、拡張制御部３３に対して、実行可否判定の実行及び拡張制御の展開を要求する（ステップＳ６０２）。
【０２４９】
拡張制御部３３は、実行可否判定の要求に従って、パラメータを介して受け取った動作種別コード５１bを基に実行可否判定を行う（ステップＳ６０３）。
【０２５０】
次いで、拡張制御部３３は、拡張制御の展開要求に従って、先の判定結果を基に実行可能なフィルタＦＩＬを制御するアクティビティＡＣＴを特定する。このとき、排他制御が必要な複数のアクティビティＡＣＴが特定された場合に、拡張制御部３３は、判定結果とともに、排他候補となる処理内容や機能名などを示す文字列を、判定要求元の拡張制御管理部３２へ転送する（ステップＳ６０４）。
【０２５１】
転送された文字列は、受け取った拡張制御管理部３２から、更にコントロール部３０３を介してローカルＵＩ部３０２へ転送される（ステップＳ６０５及びＳ６０６）。
【０２５２】
ローカルＵＩ部３０２では、受け取った文字列を基に、操作パネル１１に図１４に示すような機能選択を促す表示画面Ｗを表示する。表示画面Ｗを介して受け付けた選択機能を示す文字列は、ローカルＵＩ部３０２からコントロール部３０３を介して拡張制御管理部３２へ転送される（ステップＳ６０７及びＳ６０８）。
【０２５３】
拡張制御管理部３２は、受け取った文字列を拡張制御部３３へ転送し（ステップＳ６０９）、拡張制御部３３によって、排他制御が必要な複数のアクティビティＡＣＴのうち、１つのアクティビティＡＣＴを特定する。
【０２５４】
その結果、拡張制御部３３は、特定したアクティビティＡＣＴ、並びにアクティビティＡＣＴの制御対象であるフィルタＦＩＬ（図中の「フィルタＢ」）を作成する（ステップＳ６１０及びＳ６１１）。
【０２５５】
次いで、拡張制御部３３は、パラメータを介して受け取った動作詳細情報５１cを基に、フィルタＦＩＬに対して、オペレーション情報５１により指定された動作種別に対応する動作条件の設定を要求する（ステップＳ６１２）。
【０２５６】
フィルタＦＩＬは、設定指示に従って動作条件を設定する（ステップＳ６１３）。
【０２５７】
拡張制御部３３は、アクティビティＡＣＴに対して、フィルタＦＩＬの接続を要求し（ステップＳ６１４）、アクティビティＡＣＴは、接続要求に従って、ステップＳ６１２の処理手順において動作条件が設定されたフィルタＦＩＬを、例えば、他のアクティビティＡＣＴの制御対象であるフィルタＦＩＬとパイプで接続する（ステップＳ６１３）。
【０２５８】
（処理実行時の処理）
次に、動作条件設定を終えた後に実行される処理実行時の処理手順について説明する。図３０は、本発明の第２の実施形態に係る処理実行時の処理手順の一例（その１）を示すシーケンス図である。
【０２５９】
本実施形態に係る画像処理装置１００は、アクティビティＡＣＴにより各フィルタＦＩＬがパイプで接続されると、拡張制御管理部３２により、前処理が完了したアクティビティＡＣＴを指定して、コントロール部３０３にアクティビティＡＣＴの再実行を要求する（ステップＳ７０１）。
【０２６０】
コントロール部３０３は、実行要求に従って、指定されたアクティビティＡＣＴに実行を指示する（ステップＳ７０２）。
【０２６１】
アクティビティＡＣＴは、実行指示を受け付けると、自らが機能するために必要な各フィルタＦＩＬに対して実行を指示する（ステップＳ７０３及びＳ７０４）。
【０２６２】
アクティビティＡＣＴは、各フィルタＦＩＬを実行した後、実行結果とともに、アクティビティＡＣＴの終了を、実行要求元のコントロール部３０３へ通知する（ステップＳ７０５）。
【０２６３】
このとき、画像処理装置１００は、オペレーション情報５１に従った処理が正常に終了したことを受けて、図９（a）に示すような表示画面Ｗを操作パネル１１に表示する。
【０２６４】
このように、本実施形態に係る画像処理装置１００は、上記処理手順によって、取得したオペレーション情報５１に従って各フィルタＦＩＬが所定の処理を実行し、指定されたオペレーション動作を行う。
【０２６５】
＜＜実行可能なバリエーションの例（保管文書のデータ処理）＞＞
図３１は、本発明の第２の実施形態に係る実行可能なバリエーションの一例を示す図である。
【０２６６】
図３１（a）には、１つのアクティビティＡＣＴが制御する入力・加工（変換）・出力の各フィルタＦＩＬによって、指定されたオペレーション実行が可能な場合の例が示されている。例えば、アクティビティＡＣＴが、読取、マーキング解析、編集、及び印刷の各フィルタＦＩＬを制御することで実現される処理ＰＲＯＣである。このような場合では、オペレーションに従った一連の処理工程の中で処理対象となるデータは、入力されたデータである。
【０２６７】
一方、図３１（b）には、複数のアクティビティＡＣＴが制御する入力・加工（変換）・出力の各フィルタＦＩＬによってオペレーション実行を行う場合の例が示されている。例えば、アクティビティ（１）ＡＣＴ１が、読取及びマーキング解析の各フィルタＦＩＬを制御し、また、アクティビティ（２）ＡＣＴ２が、保管文書読出、編集、及び印刷の各フィルタＦＩＬを制御することで実現される処理ＰＲＯＣ１及び２である。このような場合では、図３１（a）に示したような場合と異なり、オペレーションに従った一連の処理工程の中で処理対象となるデータは、必ずしも入力されたデータではない。
【０２６８】
例えば、印刷用紙の印刷面に埋め込まれたオペレーションデータＢには、印刷面に印刷された文書の内容に関連する関連文書データに対するオペレーション情報５１が含まれている場合などである。この場合には、オペレーション実行において処理されるデータは、印刷用紙に印刷された文書データではなく、他の関連文書データである。
【０２６９】
このような場合、本実施形態に係る画像処理装置１００では、図３２から図３４に示すような各処理手順によって、オペレーション実行を行っている。
【０２７０】
（保管文書の格納先を指定するデータの概要）
オペレーション情報５１に含まれる処理対象データの指定方法について説明する。図３２は、本発明の第２の実施形態に係る処理対象データの格納先情報を含むオペレーションデータＢのデータ構成の一例を示す図である。
【０２７１】
オペレーション動作中の処理対象データは、図４に示したオペレーションデータＢによって、データ操作を行う１つのオペレーションとして指定することができる。
【０２７２】
具体的には、図３２に示すように、装置識別コード５１aに"２００７年モデル"、動作種別コード５１bに"保管文書読出"、動作詳細情報５１cに"保管文書読出"の"格納先（例えばファイルパスやＵＲＬ（Uniform Resource Locator））"を含むオペレーションデータＢにより指定可能である。
【０２７３】
上記オペレーションデータＢは、マーキング解析機能が解析可能な入力画像の所定の領域内に埋め込まれる。
【０２７４】
このように、本実施形態に係る画像処理装置１００では、処理対象データの指定情報を、データ操作のオペレーション情報５１として入力画像に埋め込むことによって、処理対象データの格納先を指定することができ、指定された格納先情報をマーキング解析機能により取得し、取得した格納先情報を基に、指定したデータに対して、オペレーション情報５１に従った処理を行うことができる。
【０２７５】
では、図３２に示すような処理対象データの格納先情報を含むオペレーションデータＢからオペレーション情報５１をマーキング解析部３１により取得し、取得したオペレーション情報５１に従って処理を実行する処理手順について説明する。また、以下の処理手順では、マーキング解析機能によるオペレーション情報５１の取得に関する処理については、図２６及び図２７に示す手順と同じであるため説明を省略し、マーキング解析部３１によりオペレーション情報５１を取得した後の手順について説明する。
【０２７６】
（動作条件設定に関する処理）
図３３は、本発明の第２の実施形態に係る動作条件設定に関する処理手順の一例（その３）を示すシーケンス図である。
【０２７７】
本実施形態に係る画像処理装置１００は、コントロール部３０３によりアクティビティＡＣＴからオペレーションデータ読み込み処理の終了通知を受けると、拡張制御管理部３２に対して、取得したオペレーション情報５１に従った処理が実行可能か否かの判定、すなわちオペレーション動作を制御する拡張制御の確認が、アクティビティＡＣＴに関する情報とともに要求される（ステップＳ８０１）。
【０２７８】
拡張制御管理部３２は、確認要求に従って、まず、取得したオペレーション情報５１の動作種別コード５１bを基に拡張制御部３３に対して、実行可否判定の実行を要求し、更に、アクティビティＡＣＴに関する情報と、取得したオペレーション情報５１の動作詳細情報５１cとを基に拡張制御の展開（フィルタＦＩＬの動作条件設定とパイプによる接続など）を要求する（ステップＳ８０２）。
【０２７９】
拡張制御部３３は、実行可否判定の要求に従って、パラメータを介して受け取った動作種別コード５１bを基に実行可否判定を行う（ステップＳ８０３）。
【０２８０】
次いで、拡張制御部３３は、拡張制御の展開要求に従って、先の判定結果を基に実行可能なフィルタＦＩＬを制御するアクティビティＡＣＴを特定すると、特定したアクティビティ（２）ＡＣＴ２、並びにアクティビティ（２）ＡＣＴ２の制御対象である各フィルタＦＩＬ（図中の「保管文書読出フィルタ」、「編集フィルタ」、及び「印刷フィルタ３０６」）を作成する（ステップＳ８０４からＳ８０７）。
【０２８１】
更に、拡張制御部３３は、パラメータを介して受け取った処理対象データの格納先情報を含む動作詳細情報５１cを基に、各フィルタＦＩＬに対して、オペレーション情報５１により指定された動作種別に対応する動作条件の設定（初期動作条件の更新）を要求する（ステップＳ８０８、Ｓ８１０、及びＳ８１２）。処理対象データの格納先情報は、各フィルタＦＩＬのうち、保管文書読出フィルタの動作条件として設定される。
【０２８２】
その結果、各フィルタＦＩＬは、設定指示に従って動作条件を設定する（ステップＳ８０９、Ｓ８１１、及びＳ８１３）。
【０２８３】
拡張制御部３３は、アクティビティ（２）ＡＣＴ２に対して、各フィルタＦＩＬの接続を要求し（ステップＳ８１４）、アクティビティ（２）ＡＣＴ２は、接続要求に従って、ステップＳ８０９、Ｓ８１１、及びＳ８１３の各処理手順において動作条件が設定された各フィルタＦＩＬをパイプで接続する（ステップＳ８１５）。
【０２８４】
（処理実行時の処理）
次に、動作条件設定を終えた後に実行される処理実行時の処理手順について説明する。図３４は、本発明の第２の実施形態に係る処理実行時の処理手順の一例（その２）を示すシーケンス図である。
【０２８５】
本実施形態に係る画像処理装置１００は、アクティビティ（２）ＡＣＴ２により各フィルタＦＩＬがパイプで接続されると、拡張制御管理部３２により、前処理が完了したアクティビティ（２）ＡＣＴ２を指定して、コントロール部３０３にアクティビティ（２）ＡＣＴ２の再実行を要求する（ステップＳ９０１）。
【０２８６】
コントロール部３０３は、実行要求に従って、指定されたアクティビティ（２）ＡＣＴ２に実行を指示する（ステップＳ９０２）。
【０２８７】
アクティビティ（２）ＡＣＴ２は、実行指示を受け付けると、自らが機能するために必要な各フィルタＦＩＬに対して実行を指示する（ステップＳ９０３からＳ９０５）。
【０２８８】
アクティビティ（２）ＡＣＴ２は、各フィルタＦＩＬを実行した後、実行結果とともに、アクティビティ（２）ＡＣＴ２の終了を、実行要求元のコントロール部３０３へ通知する（ステップＳ９０６）。
【０２８９】
このとき、画像処理装置１００は、オペレーション情報５１に従った処理が正常に終了したことを受けて、図９（a）に示すような表示画面Ｗを操作パネル１１に表示する。
【０２９０】
このように、本実施形態に係る画像処理装置１００は、上記処理手順によって、取得した処理対象データの格納先情報を含むオペレーション情報５１に従って各フィルタＦＩＬが、処理対象データに対して所定の処理を実行し、指定されたオペレーション動作を行う。
【０２９１】
＜＜その他＞＞
（キャンセルに関する処理）
図３５は、本発明の第２の実施形態に係るキャンセルに関する処理手順の一例を示すシーケンス図である。
【０２９２】
本実施形態に係る画像処理装置１００は、コントロール部３０３によりアクティビティＡＣＴからオペレーションデータ読み込み処理の終了通知を受けると、拡張制御管理部３２に対して、取得したオペレーション情報５１に従った処理が実行可能か否かの判定、すなわちオペレーション動作を制御する拡張制御の確認が、アクティビティＡＣＴに関する情報とともに要求される（ステップＳ１００１）。
【０２９３】
拡張制御管理部３２は、確認要求に従って、取得したオペレーション情報５１の動作種別コード５１bを基に、拡張制御部３３に対して実行可否判定の実行を要求し、受け取った実行可否判定の結果をコントロール部３０３へ通知する（ステップＳ１００２）。
【０２９４】
コントロール部３０３は、受け取った実行可否判定の結果が「実行不可」の場合に、指定されたアクティビティ（２）ＡＣＴ２にキャンセルを指示する（ステップＳ１００３）。
【０２９５】
アクティビティ（２）ＡＣＴ２は、キャンセル指示を受け付けると、自らが機能するために必要な各フィルタ（図中の「保管文書読出フィルタ」、「編集フィルタ」、及び「印刷フィルタ３０５」）に対してキャンセルを指示する（ステップＳ１００４からＳ１００６）。
【０２９６】
アクティビティ（２）ＡＣＴ２は、各フィルタをキャンセルした後、キャンセル結果とともに、アクティビティ（２）ＡＣＴ２の終了を、キャンセル要求元のコントロール部３０３へ通知する（ステップＳ１００７）。
【０２９７】
このとき、画像処理装置１００は、オペレーション情報５１に従った処理が正常に終了しなかった（何らかの原因でキャンセルされた）ことを受けて、図９（b）に示すような表示画面Ｗを操作パネル１１に表示する。
【０２９８】
このように、本実施形態に係る画像処理装置１００は、上記処理手順によって、例えば指定されたオペレーションの処理を実行するプログラムモジュールがインストールされていない場合など、オペレーション情報５１に従った処理が実行不可能な場合に、キャンセルされ、前処理の段階で使用していたワークメモリ領域を開放する。よって、オペレーション実行における誤作動を防止することができる。
【０２９９】
（認証に関する処理）
図３６は、本発明の第２の実施形態に係る処理実行時の認証に関する処理手順の一例を示すシーケンス図である。
【０３００】
本実施形態に係る画像処理装置１００は、コントロール部３０３によりアクティビティＡＣＴからオペレーションデータ読み込み処理の終了通知を受けると、拡張制御管理部３２に対して、取得したオペレーション情報５１に従った処理が実行可能か否かの判定、すなわちオペレーション動作を制御する拡張制御の確認が、アクティビティＡＣＴに関する情報とともに要求される（ステップＳ１１００）。
【０３０１】
拡張制御管理部３２は、オペレーション情報５１を入力画像から取得したときに、認証情報も入力画像から取得された場合に、コントロール部３０３へパスワード入力を要求する（Ｓ１１０１）。
【０３０２】
コントロール部３０３は、要求に従って、ローカルＵＩ部３０２に対して、認証用のパスワード入力を要求する（ステップＳ１１０２）。
【０３０３】
ローカルＵＩ部３０２は、要求に従って、図１６（b）に示すような認証用のパスワード入力を促す表示画面Ｗを操作パネル１１に表示し、ユーザからのパスワード入力を待つ（ステップＳ１１０３）。
【０３０４】
その結果、ローカルＵＩ部３０２は、操作パネル１１を介して入力されたパスワードを受け付ける。受け付けたパスワードは、コントロール部３０３を介して要求元の拡張制御管理部３２へ通知される（ステップＳ１１０４及びＳ１１０５）。
【０３０５】
拡張制御管理部３２は、受け取ったパスワードと認証情報とを基に、オペレーション情報５１に従って処理の実行を行っても良いか否かの認証を行う（ステップＳ１１０６）。
【０３０６】
このように、本実施形態に係る画像処理装置１００は、上記処理手順によって、オペレーション動作により処理されるデータの機密性を確保することができる。
【０３０７】
＜まとめ＞
以上のように、本発明の第２の実施形態によれば、本実施形態に係る画像処理装置１００は、「パイプ＆フィルタ」アーキテクチャ環境においても、搭載機能としてインストールされている所定の処理を実行するプログラムモジュール（ソフトウェア部品）ごとに、プログラムモジュール（ソフトウェア部品）自身において、入力画像から取得したオペレーション情報５１に従って処理が実行可能か否かを判定し、その判定結果が実行可能であれば処理を実行する。
【０３０８】
これによって、本実施形態に係る画像処理装置１００は、第１の実施形態と同様の効果を奏する「オペレーション実行機能」を実現することができる。
【０３０９】
第１及び第２の実施形態に基づき本発明の説明を行ってきたが、本発明の各実施形態に係る画像処理装置１００が有する「オペレーション実行機能」は、図１７から図１９、並びに図２６から図３０及び図３３から図３６に示した各処理手順を、それぞれの動作環境（プラットフォーム）にあったプログラミング言語でコード化したプログラムとしてコンピュータで実行することで実現することができる。よって、本発明の各実施形態に係る画像処理装置１００が有するオペレーション実行プログラムは、コンピュータが読み取り可能な記憶媒体１２bに格納することができる。
【０３１０】
すなわち、オペレーション実行プログラムは、フロッピー（登録商標）ディスク、ＣＤ（Compact Disc）、ＤＶＤ（Digital Versatile Disk）などの記録媒体１２bに記憶させることによって、これらの記憶媒体１２bを読み取り可能なドライブ装置１２aに接続された記録媒体１２bから、画像処理装置１００にインストールすることができる。また、画像処理装置１００は、インタフェース装置１４aを有していることから、インターネットを用いてオペレーション実行プログラムをダウンロードし、インストールすることもできる。
【０３１１】
また、第１の実施形態では、オペレーション実行時の各種情報（実行結果やエラー解析結果などの情報）を表示する表示画面Ｗについて説明を行ったが、本発明は、その表示内容やレイアウトに限定されるものではない。第１の実施形態は、オペレーション実行中にユーザにとって必要な情報を通知する手段の一例を示したものであって、画像処理装置１００が有する操作パネル１１の表示装置１１bに表示される表示画面であればよい。
【０３１２】
また、第２の実施形態では、処理対象データの指定方法について説明を行ったが、本発明は、処理対象データが画像処理装置１００内部に格納されている点について限定されるものではない。第２の実施形態は、処理対象データの格納先の一例を示したものであって、例えば、画像処理装置１００とネットワークを介して接続される外部機器内の電子データを処理対象データとして指定することも可能である。
【０３１３】
最後に、上記各実施形態に挙げた形状に、その他の要素との組み合わせなど、ここで示した要件に、本発明が限定されるものではない。これらの点に関しては、本発明の主旨をそこなわない範囲で変更することが可能であり、その応用形態に応じて適切に定めることができる。
【図面の簡単な説明】
【０３１４】
【図１】本発明の第１の実施形態に係る画像処理装置のハードウェア構成の一例を示す図である。
【図２】本発明の第１の実施形態に係る画像処理装置が有する機能を実現するためのモジュール構成の一例を示す図である。
【図３】本発明の第１の実施形態に係る画像処理装置が有する機能を実現するための手段構成の一例を示す図である。
【図４】本発明の第１の実施形態に係るオペレーションデータのデータ構成の一例を示す図である。
【図５】本発明の第１の実施形態に係る画像処理装置が有する機能の実装方法の一例を示す図である。
【図６】本発明の第１の実施形態に係るオペレーションデータが印刷された紙面とオペレーションデータ読み込み時の表示画面の一例を示す図である。
【図７】本発明の第１の実施形態に係る実行可能な機能を検索する仕組みの一例（その１）を示す図である。
【図８】本発明の第１の実施形態に係る実行可能な機能を検索する仕組みの一例（その２）を示す図である。
【図９】本発明の第１の実施形態に係る機能実行時の表示画面の一例を示す図である。
【図１０】本発明の第１の実施形態に係る機能追加の仕組みの一例を示す図である。
【図１１】本発明の第１の実施形態に係る機能変更の仕組みの一例を示す図である。
【図１２】本発明の第１の実施形態に係る機能削除の仕組みの一例を示す図である。
【図１３】本発明の第１の実施形態に係る複数の機能を排他制御する仕組みの一例を示す図である。
【図１４】本発明の第１の実施形態に係る実行機能選択時の画面表示の一例を示す図である。
【図１５】本発明の第１の実施形態に係るエラー発生時の表示画面の一例を示す図である。
【図１６】本発明の第１の実施形態に係る認証用データが印刷された紙面と認証時の表示画面の一例を示す図である。
【図１７】本発明の第１の実施形態に係るオペレーション実行時の処理手順の一例を示すフローチャートである。
【図１８】本発明の第１の実施形態に係る拡張制御管理部の処理手順の一例を示すフローチャートである。
【図１９】本発明の第１の実施形態に係る拡張制御部の処理手順の一例を示すフローチャートである。
【図２０】本発明の第２の実施形態に係る画像処理装置のソフトウェア構成の一例を示す図である。
【図２１】本発明の第２の実施形態に係るパイプ＆フィルタの概念及びフィルタの構成要素の一例を示す図である。
【図２２】本発明の第２の実施形態に係るパイプ＆フィルタの基本処理手順（その１）の一例を示すフローチャートである。
【図２３】本発明の第２の実施形態に係るパイプ＆フィルタの基本処理手順（その２）の一例を示すフローチャートである。
【図２４】本発明の第２の実施形態に係る画像処理装置が有する機能を実現するためのモジュール構成の一例を示す図である。
【図２５】本発明の第２の実施形態に係る画像処理装置が有する機能を実現するための手段構成の一例を示すシーケンス図である。
【図２６】本発明の第２の実施形態に係るオペレーションデータ読み込み処理の動作条件設定に関する処理手順の一例を示すシーケンス図である。
【図２７】本発明の第２の実施形態に係るオペレーションデータ読み込み処理の処理手順の一例を示すシーケンス図である。
【図２８】本発明の第２の実施形態に係る動作条件設定に関する処理手順の一例（その１）を示すシーケンス図である。
【図２９】本発明の第２の実施形態に係る動作条件設定時の排他制御に関する処理手順の一例を示すシーケンス図である。
【図３０】本発明の第２の実施形態に係る処理実行時の処理手順の一例（その１）を示すシーケンス図である。
【図３１】本発明の第２の実施形態に係る実行可能なバリエーションの一例を示す図である。
【図３２】本発明の第２の実施形態に係る処理対象データの格納先情報を含むオペレーションデータのデータ構成の一例を示す図である。
【図３３】本発明の第２の実施形態に係る動作条件設定に関する処理手順の一例（その３）を示すシーケンス図である。
【図３４】本発明の第２の実施形態に係る処理実行時の処理手順の一例（その２）を示すシーケンス図である。
【図３５】本発明の第２の実施形態に係るキャンセルに関する処理手順の一例を示すシーケンス図である。
【図３６】本発明の第２の実施形態に係る処理実行時の認証に関する処理手順の一例を示すシーケンス図である。
【符号の説明】
【０３１５】
１１  操作パネル
１１a  入力装置
１１b  表示装置
１２  記憶メディアＩ／Ｆ
１２a  ドライブ装置
１２b  記録媒体
１３  コントローラ
１３a  ＲＯＭ
１３b  ＲＡＭ
１３c  ＣＰＵ
１４  データ通信Ｉ／Ｆ
１４a  インタフェース装置
１５  スキャナ
１５a  画像読取装置
１６  プロッタ
１６a  印刷装置
１７  ＨＤＤ
２１  ＵＩモジュール（ソフトウェア部品）
２２  マーキング解析モジュール（ソフトウェア部品）
２３  拡張制御管理モジュール（ソフトウェア部品）
２４  拡張制御モジュール（ソフトウェア部品）
２５  エラー解析モジュール（ソフトウェア部品）
３１  マーキング解析部
３２  拡張制御管理部
３２a  認証部
３３  拡張制御部
３３a  判定部
３４  エラー解析部
４１  エラーログ
５１  オペレーション情報
５１a  装置識別コード（装置識別情報）
５１b  動作種別コード（第１の動作種別情報）
５１c  動作詳細情報
６１  拡張制御識別子
６２  動作種別コード（第２の動作種別情報）
６３  実処理（ソフトウェア部品）
７１  リストデータ（リスト構造のデータ）
１００  画像処理装置
１０１  ユーザインタフェース層
１０２  コントロール層
１０３  アプリケーションロジック層
１０３a  入力手段（入力フィルタ）
１０３b  加工手段（変換フィルタ）
１０３c  出力手段（出力フィルタ）
１０４  デバイスサービス層
１０５  デバイス制御層
１０６  アスペクト
３０１  通信サーバ部
３０２  ローカルＵＩ部
３０３  コントロール部
３０４  読取フィルタ
３０５  文書加工フィルタ
３０６  印刷フィルタ
３０７  画像パイプ
３０８  データ管理部
３０９  スキャナ制御部
３１０  プロッタ制御部
３１１  メモリ制御部
３１２  操作デバイス制御部
ＡＣＴ  アクティビティ（ソフトウェア部品）
ＦＬＴ  フィルタ（ソフトウェア部品）
Ｂ  オペレーションデータ（バーコード）
Ｐ  印刷面
Ｓ  認証用データ
Ｗ  表示画面（ウィンドウ）
【図１】
2009111902.tif 000003
【図２】
2009111902.tif 000004
【図３】
2009111902.tif 000005
【図４】
2009111902.tif 000006
【図５】
2009111902.tif 000007
【図６】
2009111902.tif 000008
【図７】
2009111902.tif 000009
【図８】
2009111902.tif 000010
【図９】
2009111902.tif 000011
【図１０】
2009111902.tif 000012
【図１１】
2009111902.tif 000013
【図１２】
2009111902.tif 000014
【図１３】
2009111902.tif 000015
【図１４】
2009111902.tif 000016
【図１５】
2009111902.tif 000017
【図１６】
2009111902.tif 000018
【図１７】
2009111902.tif 000019
【図１８】
2009111902.tif 000020
【図１９】
2009111902.tif 000021
【図２０】
2009111902.tif 000022
【図２１】
2009111902.tif 000023
【図２２】
2009111902.tif 000024
【図２３】
2009111902.tif 000025
【図２４】
2009111902.tif 000026
【図２５】
2009111902.tif 000027
【図２６】
2009111902.tif 000028
【図２７】
2009111902.tif 000029
【図２８】
2009111902.tif 000030
【図２９】
2009111902.tif 000031
【図３０】
2009111902.tif 000032
【図３１】
2009111902.tif 000033
【図３２】
2009111902.tif 000034
【図３３】
2009111902.tif 000035
【図３４】
2009111902.tif 000036
【図３５】
2009111902.tif 000037
【図３６】
2009111902.tif 000038