(57)【要約】【課題】複合機の機能を実行するためのアプリケーションの開発支援に際して、複合機の能力に合わせた機能設定を可能とすることで、アプリケーション開発を効率よくかつ容易に実行できるようにする。【解決手段】アプリケーション３２は、プロセス定義３２ａに記述された実行順序で画面定義３２ｃを読み込む（Ｓ１）。実行部品３２ｂは、操作画面を生成する前に、複合機１の能力情報を取得する（Ｓ２）。実行部品３２ｂは、Ｓ１で読み込んだ画面定義３２ｃと、複合機１から取得した能力情報とを比較し、画面定義３２ｃにおいて複合機１の未対応項目があるか否かを確認する（Ｓ３）。複合機未対応項目があれば、画面定義３２ｃから未対応項目を削除する（Ｓ４）。そしてアプリケーション３２は、画面定義３２ｃの定義情報を使用して操作画面を作成し（Ｓ５）、操作画面を複合機１に表示させる（Ｓ６）。【選択図】図８
2011070472.tif 000002
【特許請求の範囲】
【請求項１】
複合機と、該複合機と連携して動作するアプリケーションを保持するアプリケーションサーバと、前記アプリケーションの開発を支援するアプリケーション開発支援ツールを保持する情報処理装置とを有するシステムを使用してアプリケーションの開発を支援するアプリケーション開発支援方法であって、
前記情報処理装置が、前記アプリケーションの実行処理を定義するステップと、
前記情報処理装置が、前記複合機で実行するための機能を選択するステップと、
前記アプリケーションサーバが、前記複合機が実行可能な機能を示す情報を前記複合機から取得するステップと、
前記アプリケーションサーバが、前記情報処理装置が選択した機能と、前記複合機から取得した情報に示される機能とを比較し、前記情報処理装置が選択した機能のうち、前記複合機で実行可能な機能を抽出し、該抽出した結果に基づき前記複合機で設定可能な機能を表示するステップとを有することを特徴とする、アプリケーション開発支援方法。
【請求項２】
請求項１に記載のアプリケーション開発支援方法において、
前記複合機で設定可能な機能を表示するステップは、前記情報処理装置が選択した機能のうち、前記複合機で実行可能な機能に含まれていない機能を前記設定画面に表示しないことを特徴とする、アプリケーション開発支援方法。
【請求項３】
複合機と、該複合機と連携して動作するアプリケーションを保持するアプリケーションサーバと、前記アプリケーションの開発を支援するアプリケーション開発支援ツールを保持する情報処理装置と、を備えたアプリケーション開発支援システムであって、
前記情報処理装置は、前記アプリケーションの実行処理を定義する手段と、前記複合機で実行するための機能を選択する手段とを有し、
前記アプリケーションサーバは、前記複合機が実行可能な機能を示す情報を前記複合機から取得する手段と、前記情報処理装置が選択した機能と、前記複合機から取得した情報に示される機能とを比較し、前記情報処理装置が選択した機能のうち、前記複合機で実行可能な機能を抽出し、該抽出した結果に基づき前記複合機で設定可能な機能を表示する手段とを有することを特徴とする、アプリケーション開発支援システム。
【請求項４】
請求項３に記載のアプリケーション開発支援システムにおいて、前記複合機で設定可能な機能を表示する手段は、前記情報処理装置が選択した機能のうち、前記複合機で実行可能な機能に含まれていない機能を前記設定画面に表示しないことを特徴とする、アプリケーション開発支援システム。
【請求項５】
請求項３または４に記載のアプリケーション開発支援システムにおいて、前記情報処理装置は、前記複合機と一体に構成されていることを特徴とする、アプリケーション開発支援システム。
【請求項６】
複合機と、該複合機と連携して動作するアプリケーションを保持するアプリケーションサーバと、前記アプリケーションの開発を支援するアプリケーション開発支援ツールを保持する情報処理装置とを有するシステムを使用してアプリケーションの開発を支援するアプリケーション開発支援方法を実行するプログラムであって、
コンピュータに、
前記アプリケーションの実行処理を定義するステップと、
前記複合機で実行するための機能を選択するステップと、
前記複合機が実行可能な機能を示す情報を前記複合機から取得するステップと、
前記アプリケーション開発支援ツールが選択した機能と、前記複合機から取得した情報に示される機能とを比較し、前記アプリケーション開発支援ツールが選択した機能のうち、前記複合機で実行可能な機能を抽出し、該抽出した結果に基づき前記複合機で設定可能な機能を表示するステップと、実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、アプリケーション開発支援方法、システム、及びプログラムに関し、より詳細には、複合機と連携して動作するアプリケーションの開発を支援するアプリケーション開発支援ツールを使用したアプリケーション開発支援方法、システム、及びプログラムに関する。
【背景技術】
【０００２】
ソフトウェア開発者がアプリケーションを容易に作成できるように支援する方法として、各種機能を提供するアクティビティ（小機能部品）を視覚的に結合する方法がある（特許文献１，特許文献２）。これらは、機能を部品化することにより実現され、ソフトウェア開発者のコーディング作業を軽減する効果がある。
【０００３】
例えば、特許文献１には、ソフトウェア部品の連結部分をも部品として表現する部品化技術を利用して、ソフトウェア開発者によるプログラム作成を支援するプログラム作成支援方法が開示されている。この方法は、ソフトウェア部品の連結手段をリンク部品として表現し、データ部品の一覧、及びリンク部品の一覧を表示する。エディタは、利用者の操作に応じて選択された部品をプログラムの要素部品として利用者指定の位置に配置する。またエディタは、配置された各要素部品が位置指定されて順番号が入力されると、入力された順番号をその要素部品の近傍に表示し、その順番号が対応する要素部品に設定されたプログラム定義情報を生成する。エディタは、この定義情報から実行順が設定された要素部品をその順番に検索し、その部品のカテゴリに応じたメソッドのコードを生成する。
【０００４】
また、特許文献２では、簡易な操作でＧＵＩを含めたワークフローアプリケーションを作成するための技術が開示されている。ここでは、プロセス定義に基づいて、ワークフロー処理における各状態と役割毎に表示する表示画面を決定し、その表示画面を表示させるための画面定義を生成する。また、ワークフローアプリケーションにおいては、画面定義ファイルに基づいて表示画面を表示する。
【０００５】
特許文献３では、画像形成装置とサーバ装置のワークフローを連携させる仕組みについて開示している。ここでは、コントローラ部がフローの定義情報に従って、画面遷移の表示を制御する。そして、コントローラ部は、フロー定義情報に従い、ＭＦＰ上で実行可能なアプリケーションのユーザインタフェースとして表示するコントロールの表示をする。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００３−２４１９６５号公報
【特許文献２】特開２００４−１０２８８６号公報
【特許文献３】特開２００８−１５８６３２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
昨今、ＰＣ上で動作するアプリケーションと複合機の機能とを連携し、複合機がトータルアプリケーションシステムの一部となって動作することができるシステムが考案されている。このシステムを利用することにより、複合機はネットワーク上の制御アプリケーションやサービスと連携し、ユーザにとって有益な機能を提供することができる。
【０００８】
このような複合機と連携するアプリケーションを開発する場合、アプリケーション開発支援ツールのシステムにおいて、複合機が有するスキャンやプリントなど各種の機能を実行させるためのジョブパラメータを表示させ、開発者はそのジョブパラメータを適宜選択しながら、アプリケーション開発を行う。
この場合、複合機の機種の違いやオプション機能の装着の有無などにより、個々の複合機で実行できる機能には差異が生じる。複合機の機能を実行するためのアプリケーションの開発に際しては、このような複合機間の機能の差異に合わせて、アプリケーション開発支援ツールのシステムに表示する機能とそのパラメータを動的に変更する必要がある。
【０００９】
例えば、複合機の機種やオプション機能の装着の有無に関わりなく、開発支援のためのパラメータを表示させようとする場合には、ジョブのパラメータ選択画面は固定的なものにならざるを得ない。その結果、複合機がサポートしていない機能のパラメータが選択可能に表示されてしまったり、また逆に、複合機がサポートしている機能のパラメータが表示されない、といった課題が生じる。また、このような課題を回避するためには、固定的に表示するパラメータ選択画面で選択可能とするパラメータの数を最小限にしなければならない、という課題があった。
【００１０】
従って従来では、アプリケーション開発者がアプリケーションを動作させる複合機の機能を把握し、その機能に合わせて最適な設定を行う必要があった。このような作業を行うことはアプリケーション開発者にとって多大な負担であり、アプリケーション開発支援ツールの本来の役割を果たさないことになる。しかし最適化作業を怠れば、その複合機で設定できない機能の設定画面が表示されたりすることで、ユーザに混乱をまねく。例えば、カラー機能をサポートしていない複合機でスキャンを実行する場合に、フルカラー設定を行うことができる画面が表示されれば、ユーザは混乱してしまう。
【００１１】
このような課題に対して、特許文献１〜３等を含む従来のアプリケーション開発支援技術で生成されたアプリケーションでは、複合機の機能に合わせて選択可能なパラメータを動的に変更する技術は含まれていない。また、特許文献３には、画像形成装置にてワークフローを定義しなおす技術が記載されているが、ワークフローの定義自身を変更することなく、複合機の機能に合わせて不要なパラメータを表示させないようにしたり、もしくは指定できないようにする、という技術については開示されていない。
【００１２】
本発明は、上述のごとき実情に鑑みてなされたものであり、複合機の機能を実行するためのアプリケーションの開発支援を行うに際して、複合機でサポートされている機能を意識することなく、複合機の能力に合わせた機能設定を可能とすることで、アプリケーション開発を効率よくかつ容易に実行できるアプリケーション開発支援方法、装置及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【００１３】
上記課題を解決するために、本発明の第１の技術手段は、複合機と、複合機と連携して動作するアプリケーションを保持するアプリケーションサーバと、アプリケーションの開発を支援するアプリケーション開発支援ツールを保持する情報処理装置とを有するシステムを使用してアプリケーションの開発を支援するアプリケーション開発支援方法であって、情報処理装置が、アプリケーションの実行処理を定義するステップと、情報処理装置が、複合機で実行するための機能を選択するステップと、アプリケーションサーバが、複合機が実行可能な機能を示す情報を複合機から取得するステップと、アプリケーションサーバが、情報処理装置が選択した機能と、複合機から取得した情報に示される機能とを比較し、情報処理装置が選択した機能のうち、複合機で実行可能な機能を抽出し、抽出した結果に基づき複合機で設定可能な機能を表示するステップとを有することを特徴としたものである。
【００１４】
第２の技術手段は、第１の技術手段において、複合機で設定可能な機能を表示するステップが、情報処理装置が選択した機能のうち、複合機で実行可能な機能に含まれていない機能を設定画面に表示しないことを特徴としたものである。
【００１５】
第３の技術手段は、複合機と、該複合機と連携して動作するアプリケーションを保持するアプリケーションサーバと、アプリケーションの開発を支援するアプリケーション開発支援ツールを保持する情報処理装置と、を備えたアプリケーション開発支援システムであって、情報処理装置が、アプリケーションの実行処理を定義する手段と、複合機で実行するための機能を選択する手段とを有し、アプリケーションサーバが、複合機が実行可能な機能を示す情報を複合機から取得する手段と、情報処理装置が選択した機能と、複合機から取得した情報に示される機能とを比較し、情報処理装置が選択した機能のうち、複合機で実行可能な機能を抽出し、抽出した結果に基づき複合機で設定可能な機能を表示する手段とを有することを特徴としたものである。
【００１６】
第４の技術手段は、第３の技術手段において、複合機で設定可能な機能を表示する手段が、情報処理装置が選択した機能のうち、複合機で実行可能な機能に含まれていない機能を設定画面に表示しないことを特徴としたものである。
【００１７】
第５の技術手段は、第３または第４の技術手段において、情報処理装置が、複合機と一体に構成されていることを特徴としたものである。
【００１８】
第６の技術手段は、複合機と、複合機と連携して動作するアプリケーションを保持するアプリケーションサーバと、アプリケーションの開発を支援するアプリケーション開発支援ツールを保持する情報処理装置とを有するシステムを使用してアプリケーションの開発を支援するアプリケーション開発支援方法を実行するプログラムであって、コンピュータに、アプリケーションの実行処理を定義するステップと、複合機で実行するための機能を選択するステップと、複合機が実行可能な機能を示す情報を複合機から取得するステップと、アプリケーション開発支援ツールが選択した機能と、複合機から取得した情報に示される機能とを比較し、アプリケーション開発支援ツールが選択した機能のうち、複合機で実行可能な機能を抽出し、抽出した結果に基づき複合機で設定可能な機能を表示するステップと、実行させるためのプログラムである。
【発明の効果】
【００１９】
本発明によれば、複合機の機能を実行するためのアプリケーションの開発支援を行うに際して、複合機でサポートされている機能を意識することなく、複合機の能力に合わせた機能設定を可能とすることで、アプリケーション開発を効率よくかつ容易に実行できるアプリケーション開発支援方法、システム及びプログラムを提供することができる。
【図面の簡単な説明】
【００２０】
【図１】本発明の一実施形態に係るアプリケーション開発支援システムの概略構成例を示すブロック図である。
【図２】アプリケーション開発支援ツールによる表示画面の一例を示す図である。
【図３】アプリケーション作成時のアイコンの配置例を示す図である。
【図４】アプリケーション支援開発装置からアプリケーションサーバに出力されるプロセス定義ファイルの一例を示す図である。
【図５】アプリケーション開発支援ツールによりパラメータの既定値を設定するためのパラメータ設定画面の一例を示す図である。
【図６】パラメータ設定画面に表示させる表示項目を予め設定するための画面例を示す図である。
【図７】図６の表示項目設定画面の設定情報に基づき生成された画面定義情報を保存するファイルの一例を示す図である。
【図８】アプリケーション支援システムにより生成されたアプリケーションの実行処理例を説明するためのフローチャートである。
【図９】複合機能力情報取得要求に応じて複合機からアプリケーションサーバに送信するファイルの一例を示す図である。
【図１０】画面定義と複合機の能力情報との比較処理例を示す図である。
【図１１】図８の処理によって生成した複合機の操作画面例を示す図である。
【図１２】画面定義と複合機の能力情報との比較処理の他の例を示す図である。
【図１３】図１２の比較処理に従う複合機の操作画面例を示す図である。
【発明を実施するための形態】
【００２１】
図１は、本発明の一実施形態に係るアプリケーション開発支援システムの概略構成例を示すブロック図である。図１に示すシステムは、複合機１、アプリケーションサーバ（外部アプリケーションサーバ）３、及びアプリケーション開発支援装置２を備える。
複合機１は、デジタル複合機またはアナログ複合機であり、スキャナ、コピー、プリンタ、ドキュメントファイリング、ＦＡＸ、Ｅメール送受信などの複数の機能を備えて構成されたものである。複合機１は、機器制御部１０、操作部１１、画像読み取り部１２、画像形成部１３、及び通信部１４を備えている。
【００２２】
機器制御部１０は、複合機１が備える各部を制御する。操作部１１は、入力部１１ａと、ＬＣＤ（Liquid Crystal Display：液晶ディスプレイ）などの表示部１１ｂとを有する。入力部１１ａは、各種入力キー群と、表示部１１ｂに設けられたユーザ入力を受け付けるタッチパネルとを有する。
画像読み取り部１２は、原稿台または自動原稿送り装置に載置された原稿を読み取って画像データを入力する。画像形成部１３は、画像読み取り部１２から入力された画像データまたは通信部１４を介して外部ＰＣから入力された画像データを記録媒体に画像形成（印刷）する。通信部１４は、有線ＬＡＮ（Local Area Network）、無線ＬＡＮ等のネットワークを介して情報処理装置と通信する。ここでは、通信対象の情報処理装置として、アプリケーションサーバ３がネットワークに接続されている。
【００２３】
アプリケーションサーバ３は、通信部３０及びアプリケーションソフト記憶部３１を備えたサーバコンピュータである。通信部３０は、有線ＬＡＮや無線ＬＡＮ等のネットワークを介して複合機１と通信する。アプリケーションソフト記憶部３１は、複合機１を制御するためのアプリケーション３２を記憶する。アプリケーション３２は、アプリケーション開発支援装置２が保持するアプリケーション開発支援ツール２０により作成されたアプリケーションである。
【００２４】
プロセス定義３２ａは、アプリケーションの実行順序や処理内容を定義した定義ファイルである。また、実行部品３２ｂは、プロセス定義３２ａに記述されアプリケーションの処理内容を実際に実行するソフトウェアである。また、画面定義３２ｃは、複合機１の操作画面を生成するために必要な設定情報である。
【００２５】
複合機１の機器制御部１０は、アプリケーションサーバ３に格納されたアプリケーション３２との間で、通信部１４及び通信部３０を経由して、操作パネル情報をアプリケーションサーバ３側に送信すると共に、デバイスコントロール情報をやり取りしながら、アプリケーション３２の機能（外部アプリケーション機能という）を呼び出してその処理結果を得る。これにより、複合機１は、アプリケーション３２と連携した処理（外部アプリケーション機能を実現するための処理）を行うことが可能になる。
【００２６】
上述した操作パネル情報やデバイスコントロール情報は、受信側で送信元が認識できるように、送信側の機器の機器情報を含んで送信される。機器情報とは、機器に固有の情報であり、他の機器と識別可能にするための識別情報を指す。複合機１について例示すると、機器情報とは、複合機１を他の機器（他の複合機等）と識別可能にするための識別情報であって、例えば、複合機１に固有の機器番号（シリアル番号）やＭＡＣ（Media Access Control）アドレスなどが挙げられる。
【００２７】
ここで、複合機１とアプリケーション３２との情報のやり取りは、標準のネットワーク技術をベースに行うことが、アプリケーション３２と複合機１の機器制御部１０（機器制御部１０内のファームウェア）との連携部分の開発に多くの一般的なツールやスキルが利用でき、実装が容易であるという点で好ましい。
【００２８】
アプリケーション開発支援装置２は、アプリケーション開発支援ツール２０が動作するＰＣ等の情報処理装置により実現される装置である。アプリケーション開発支援ツール２０は、アプリケーションサーバ３に保持するアプリケーション３２を作成するために用いられるプログラムである。アプリケーション開発支援ツール２０は、プロセス定義部２１と、画面定義部２２と、アクティビティ２３とを有している。
プロセス定義部２１は、アプリケーションの実行順序や処理内容を定義するソフトウェアである。また、画面定義部２２は、複合機１の操作画面の内容を定義するソフトウェアである。また、アクティビティ２３は、複合機１の機能単位でまとめられたソフトウェアライブラリである。アクティビティとは、プロセスデザイン内の１ステップに相当する手動または自動のタスクを定義したもので、新しいアクティビティを追加することにより、新しいステップを作成し、それをプロセス内の役割に割り当てることができるものである。 
【００２９】
図２は、アプリケーション開発支援ツールによる表示画面の一例を示す図である。画面１００は、アプリケーション開発者がアプリケーション開発支援ツール２０を使用して、複合機１の機能を実行させるためにアプリケーションサーバ３で保持するアプリケーション３２を作成するときの表示画面を示すものである。画面１００は、例えばアプリケーション開発支援装置２として機能するＰＣのディスプレイに表示されるもので、ユーザはＰＣのマウスやキーボードを使用して、画面操作を行うことができる。
【００３０】
画面１００の上部には、アプリケーションのタイトル１０１が表示される。また、×ボタン１０２は、アプリケーションを終了させるためのボタンである。画面１００のアクティビティ表示部１０３には、機能単位でまとめられたアクティビティを示すアイコン１０３ａが表示される。アイコン１０３ａが表す機能としては、複合機１で実行可能なコピー、プリント、スキャン、ファックス、ファイル保存、ファイル取得、メール送信、などがある。アクティビティ表示部１０３に表示されるアクティビティに係るソフトウェアは、図１のアクティビティ２３で管理保持される。
【００３１】
画面１００にはプロセス定義表示部１０４が設けられ、ユーザがアプリケーション開発支援装置をマウスにより操作し、アクティビティ表示部１０３に表示された任意のアイコン１０３ａをプロセス定義表示部１０４にドラッグ＆ドロップすることにより、アプリケーションの作成を行うことができる。ここでは、アプリケーションの実行処理をアクティビティの連結により定義することができる。
アプリケーションの作成処理は、プロセス定義部２１により実行され、プロセス定義表示部１０４にドラッグ＆ドロップされたアクティビティの順序で実行手順や処理内容を定義したプロセス定義ファイルが作成される。作成されたプロセス定義ファイルは、アプリケーションサーバ３に出力される。アプリケーションサーバ３のアプリケーション３２は、プロセス定義部２１により出力されたプロセス定義ファイルをプロセス定義３２ａに保持し、実行部品３２ｂは、プロセス定義３２ａに保持されたプロセス定義ファイルの実行手順や処理内容に従って処理を実行する。
【００３２】
アプリケーション開発支援ツール２０を用いて開発者がアプリケーションを作成するときの例を説明する。図３は、アプリケーション作成時のアイコンの配置例を示す図である。例えば、複合機１で原稿をスキャンし、それを複合機１のファイル保存フォルダに保存した後にメールで送信する処理を実行するアプリケーションを作成するものとする。この場合、アプリケーションを作成する開発者は、アプリケーション開発支援ツールの画面１００を開き、アクティビティ表示部１０３に表示されたアイコン１０３ａを適宜プロセス定義表示部１０４に配置して、アクティビティの連結によりアプリケーションの実行処理を定義する。
【００３３】
アクティビティ表示部１０３には、複合機１で実行する機能が予め定義され、アイコン１０３ａにより表示されている。開発者は、複合機１で実行したい機能を示すアイコン１０３ａを選択するだけでよい。また、必要に応じて複合機で表示させる操作画面の画面構成やレイアウトを変更することも可能である。この例では、画面１００のプロセス定義表示部１０４には、開始から終了までの間に「スキャン」、「ファイル保存」、「メール送信」のアイコンが順に配置される。そして、これらの処理の実行手順と処理内容を定義したプロセス定義ファイルによって、アプリケーション３２により処理が実行される。
【００３４】
図４は、アプリケーション支援開発装置からアプリケーションサーバに出力されるプロセス定義ファイルの一例を示す図である。この例のプロセス定義ファイルでは、アプリケーションに関する情報が、<Scan>、<SaveToFolder>、<Email>の各要素内に記述される。各要素内に記述される情報は、それぞれスキャン設定情報、ファイル保存情報、メール送信情報である。これらの記述順序は、アプリケーション開発支援ツールで配置されたアクティビティの順序（図３）と同じとなり、アプリケーションは本プロセス定義に従い動作する。  
【００３５】
アプリケーション開発支援ツールでスキャンアクティビティに係るプロセス定義ファイルを作成する場合、画面の構成やレイアウト情報だけではなく、スキャンを実行するために必要なパラメータを設定する必要がある。
上述したように、複合機で設定できる機能は、複合機１の機種や機能により異なっている。従って従来では、アプリケーション開発者がアプリケーションを動作させる複合機の機能を把握し、その機能に合わせて最適なパラメータ設定を行う必要があった。これに対して本発明に係る実施形態では、アプリケーション開発支援ツール２０は、複合機で実行する機能を設定するためのパラメータ設定画面において、複合機１の全機種に存在する全てのパラメータを列挙し、パラメータの既定値やパラメータの表示／非表示を設定する機能を提供する。そしてさらに本実施形態では、複合機１でアプリケーションを実行する際に、複合機１の能力情報を分析し、矛盾のないパラメータ設定画面を生成する処理を行う。
【００３６】
図５は、アプリケーション開発支援ツールによりパラメータの既定値を設定するためのパラメータ設定画面の一例を示す図である。ここでは、スキャンアクティビティにおける設定画面例を示している。
アプリケーション開発支援ツール２０の画面定義部２２は、パラメータ設定値（既定値）を設定する画面（パラメータ設定画面）２００を表示させることができる。アプリケーション開発者は、このパラメータ設定画面２００を使用して、複合機１で実行させる各種機能のパラメータ設定を行うことができる。
【００３７】
図５の例のスキャンアクティビティにおけるパラメータ設定画面２００では、スキャン時の「原稿位置」、「カラー」、「解像度」、「両面」、「ファイル形式」などの機能を表す設定項目２０１が表示される。各設定項目２０１には、パラメータに相当する設定値を選択するためのパラメータ表示部２０２が表示される。この例では、パラメータ表示部２０２には、プルダウンメニュー形式で選択可能なパラメータを表示させることができる。
【００３８】
図６は、パラメータ設定画面に表示させる機能の項目を予め設定するための画面例を示す図で、スキャンアクティビティにおける表示項目設定画面を示すものである。図６の表示項目設定画面３００は、上記の図５に示したパラメータ設定画面２００に表示させる表示項目を予め設定するためのもので、画面定義部２２によって表示処理される。
この例では、表示項目設定画面３００には、「原稿位置」、「カラー」、「解像度」、「両面」、「ファイル形式」の各設定項目３０１と、これら設定項目３０１についてユーザ選択可能なパラメータ３０２とが用意され、それぞれのチェックボックスをユーザ操作によってチェックすることにより、チェックした項目とパラメータを図５のパラメータ設定画面２００に表示させることができる。
【００３９】
例えば、設定項目３０１として「原稿位置」をチェックし、選択可能なパラメータとして、「原稿読取装置」及び「原稿台」をチェックした場合には、図５のパラメータ設定画面２００の設定項目２０１には、「原稿位置」２０１が表示され、そのパラメータ表示部２０２では、「原稿読取装置」と「原稿台」とを選択可能に表示させることができる。このように、アプリケーション開発支援ツールの表示項目設定画面３００を用いることで、パラメータ設定画面２００に表示させる設定項目と、選択可能とするパラメータとを設定することができる。そして、パラメータ設定画面２００を使用することで、複合機１が有する各機能のアクティビティごとに、パラメータを選択して設定することができる。
【００４０】
図６の表示項目設定画面の設定情報に基づき生成された画面定義情報を保存するファイルの一例を図７に示す。画面定義部２２では、生成したファイルをプロセス定義部２１を介してアプリケーションサーバ３に送信する。アプリケーションサーバ３では、複合機１の操作画面を生成するために必要な設定情報として、画面定義部２２から送信されたファイルを画面定義３２ｃに保存する。
【００４１】
次に、図８のフローチャートを参照しながら、アプリケーション開発支援システムにより生成されたアプリケーションの実行処理例を説明する。まず、アプリケーション開発支援ツール２０によって生成され、アプリケーションサーバ３のアプリケーションソフト記憶部３１に記憶されたアプリケーション３２は、プロセス定義３２ａに記述された実行順序で画面定義３２ｃを読み込む（ステップＳ１）。
【００４２】
操作画面の生成処理は、プロセス定義３２ａに記述された処理内容を実行するソフトウェアである実行部品３２ｂが行う。このとき実行部品３２ｂは、操作画面を生成する前に、通信部３０を介して、複合機１の能力情報を取得する処理を行う（ステップＳ２）。ここでは、アプリケーションサーバ３から複合機１に対して、複合機１の能力情報取得要求を送信する。能力情報とは、その複合機１で実行可能な機能を示す情報である。
【００４３】
複合機１の機器制御部１０は、アプリケーションサーバ３から送信された複合機能力情報取得要求を受信すると、実際に複合機１でサポートしている機能を示す能力情報をアプリケーションサーバ３に送信する。図９は、複合機能力情報取得要求に応じて複合機１からアプリケーションサーバ３に送信する能力情報のファイルの一例を示す図で、スキャンアクティビティに関する複合機の能力情報を示すものである。
【００４４】
アプリケーションサーバ３の実行部品３２ｂは、ステップＳ１で読み込んだ画面定義３２ｃと、複合機１から取得した能力情報とを比較し、画面定義３２ｃにおいて複合機１の未対応項目があるか否かを確認する（ステップＳ３）。つまり、ここでは、複合機１が実行可能な機能と、アプリケーション開発支援ツールによって選択された機能とを比較し、アプリケーション開発支援ツールによって選択された機能のうち、複合機１で実行可能な機能があるかどうかを確認する処理が行われる。
【００４５】
図１０は、画面定義と複合機の能力情報との比較処理例を示す図である。アプリケーション開発支援ツール２０で設定されたスキャン設定（フィルタ設定）には、アプリケーションが動作可能な複合機１の全パラメータ情報を含んでいる。そして、アプリケーションの機能として重要である項目については「表示」と設定され、省略可能な項目については「非表示」と設定されている。「表示」として設定されている項目は、複合機１でスキャン機能の操作画面に表示することを意味し、非表示はその逆に複合機１で表示しないことを意味している。これらの「表示」・「非表示」は、図６の表示項目設定画面３００によりユーザに選択設定されたものである。
【００４６】
一方、複合機能力情報に「サポート」と記述されている機能は、複合機１がサポートして実行可能な機能である。また、「非サポート」と記述されている項目については、複合機１がサポートしていない機能である。これらは、複合機１から送信された複合機能力情報に記述されたものである。
【００４７】
出力結果は、スキャン設定と複合機能力情報とを比較した結果、その項目について操作画面に表示させるか否かを判別したものである。例えば、スキャン設定が「表示」であって、複合機能力情報でその項目が「サポート」であれば、出力結果は、「表示」となる。アプリケーション開発支援ツール２０で表示設定された項目の機能を複合機１がサポートしているからである。また、スキャン設定が「非表示」で複合機能力情報が「非サポート」であれば、出力結果は「非表示」となる。
【００４８】
一方、複合機能力情報に「非サポート」と記述された項目は、アプリケーション開発支援ツール２０で設定されたスキャン設定（フィルタ設定）で「表示」に設定されている場合であっても、それを複合機１の操作画面に表示することはユーザの混乱につながる。従って複合機１で「非サポート」の項目については、操作画面への出力結果を「非表示」とする。例えば、図１０の例では、「ＰＤＦ（暗号）」は、スキャン設定が「表示」であるが、複合機でこの項目をサポートしていないため、出力結果は「非表示」となる。
つまり、アプリケーション開発支援ツールによって選択された機能のうち、複合機１で実行可能な機能が抽出され、この機能を操作画面にて「表示」させるようにしている。
【００４９】
図８に戻って説明する。以上のような処理によりステップＳ３では、アプリケーション３２は、画面定義３２ｃに複合機未対応項目があるかどうかを判定し、複合機未対応項目があれば、画面定義３２ｃから未対応項目を削除する（ステップＳ４）。つまり、図１０のスキャン設定で「表示」として定義されている項目のうち、複合機能力情報が「非表示」である項目を画面定義３２ｃから削除する処理を行う。換言すれば、アプリケーション３２は、画面定義３２ｃに一致する複合機対応項目を抽出し、画面定義３２ｃにその抽出項目を保持させる。そして、アプリケーション３２は、画面定義３２ｃの定義情報を使用して操作画面を作成し（ステップＳ５）、操作画面を複合機１に表示させる（ステップＳ６）。また、ステップＳ３で画面定義に複合機未対応項目がなければ、そのまま操作画面を作成し（ステップＳ５）、複合機１に表示させる（ステップＳ６）。
【００５０】
図１１は、図８の処理によって生成した複合機の操作画面例を示す図である。スキャンの操作画面では、アプリケーション開発支援ツール２０により「表示」に設定され、かつ複合機能力情報で「サポート」と記述された項目が表示される。従って、ユーザは、複合機１で対応していない機能により混乱を生じることがなく、効率的にスキャン設定とスキャン指示を実行することができる。
【００５１】
図１２は、画面定義と複合機の能力情報との比較処理の他の例を示す図である。この例では、図１１の例と異なり、「ＰＤＦ（暗号）」が、スキャン設定で「表示」であり、かつ、複合機能力情報が「サポート」になっている。従ってこの場合、出力結果は「表示」となる。
【００５２】
図１３は、図１２の比較処理に従う複合機の操作画面例を示す図である。上記のように、スキャンの操作画面では、アプリケーション開発支援ツール２０により「表示」に設定され、かつ複合機能力情報で「サポート」と記述された項目が表示される。従って、図１３に示す操作画面では、図１１の例と異なり、「ファイル形式」のユーザ選択可能な項目として、「ＰＤＦ」と「ＴＩＦＦ」に加えて、「ＰＤＦ（暗号）」が設定される。このように、画面定義と複合機の能力情報との比較処理に応じて操作画面に表示する設定項目を変化させることで、ユーザは、複合機１で対応していない機能により混乱を生じることがなく、効率的にスキャン設定とスキャン指示を実行することができる。
【００５３】
なお、上記図１１や図１３に示した操作画面では、画面定義と複合機の能力情報とを比較した結果、出力結果が「表示」となった設定項目のみをユーザ選択可能に表示しているが、「非表示」となる項目、つまり、画面定義が「非表示」、または複合機能力情報が「非サポート」となる項目を操作画面に表示し、この項目については、ユーザ選択ができないようにしてもよい。このとき、例えば、ユーザ選択ができない設定項目については、その旨を画面上に明示したり、あるいは、その項目については選択カーソルを移動させることができないようにする。これにより、ユーザは、設定項目としては存在するが、現在はその設定項目を選択することができないことを知ることができる。
【００５４】
なお、上記のアプリケーション開発支援ツールは、一般的なＰＣで動作可能なソフトウェアであるが、このソフトウェアを複合機用ＯＳに移植してインストールすることにより、上記の機能を複合機１で実行させることも可能である。この場合、アプリケーション開発支援ツールのプロセス定義部２１、画面定義部２２、アクティビティ２３は、複合機１に含まれることになる。つまり、アプリケーション開発支援ツールが動作する情報処理装置を複合機１と一体に構成したものであっても上記実施形態の処理を実行することができる。
【００５５】
また、上記実施の形態のアプリケーション開発支援ツール及びアプリケーションの各処理ステップは、ＣＰＵなどの演算手段がＲＯＭやＲＡＭなどの記憶手段に記憶されたプログラムを実行し、キーボードなどの入力手段、ディスプレイなどの出力手段、あるいは、インターフェース回路などの通信手段を制御することにより実現するものである。従って、これらの手段を有するコンピュータが上記プログラムを記録した記録媒体を読み取り、当該プログラムを実行するだけで、本発明に係る実施形態の各種機能および各種処理を実現することができる。また、上記プログラムをリムーバブルな記録媒体に記録することにより、任意のコンピュータ上で上記の各種機能および各種処理を実現することができる。
【００５６】
記録媒体としては、マイクロコンピュータで処理を行うために図示しないメモリ、例えばＲＯＭのようなものがプログラムメディアであっても良いし、また、図示しないプログラム読取り装置に記録媒体を挿入することにより読取り可能なプログラムメディアであってもよい。また、プログラムメディアとしては、本体と分離可能に構成される記録媒体であり、磁気テープ等のテープ系、フレキシブルディスクやハードディスク等の磁気ディスクやＢｌｕ−ｒａｙ／ＣＤ／ＭＯ／ＭＤ／ＤＶＤ等のディスク系、ＩＣカード（メモリカードを含む）等のカード系、あるいはマスクＲＯＭ、ＥＰＲＯＭ、ＥＥＰＲＯＭ、フラッシュＲＯＭ等による半導体メモリを含めた固定的にプログラムを担持する記録媒体等が適用できる。また、インターネットを含む通信ネットワークを接続可能なシステム構成であれば、通信ネットワークからプログラムをダウンロードして担持する記録媒体を適用する。
【符号の説明】
【００５７】
１…複合機、２…アプリケーション開発支援装置、３…アプリケーションサーバ、１０…機器制御部、１１…操作部、１１ａ…入力部、１１ｂ…表示部、１２…画像読み取り部、１３…画像形成部、１４…通信部、２０…アプリケーション開発支援ツール、２１…プロセス定義部、２２…画面定義部、２３…アクティビティ、３０…通信部、３１…アプリケーションソフト記憶部、３２…アプリケーション、３２ａ…プロセス定義、３２ｂ…実行部品、３２ｃ…画面定義、１００…画面、１０１…タイトル、１０２…×ボタン、１０３…アクティビティ表示部、１０３ａ…アイコン、１０４…プロセス定義表示部、２００…パラメータ設定画面、２０１…設定項目、２０２…パラメータ表示部、３００…表示項目設定画面、３０１…設定項目、３０２…パラメータ。
【図１】
2011070472.tif 000003
【図２】
2011070472.tif 000004
【図３】
2011070472.tif 000005
【図４】
2011070472.tif 000006
【図５】
2011070472.tif 000007
【図６】
2011070472.tif 000008
【図７】
2011070472.tif 000009
【図８】
2011070472.tif 000010
【図９】
2011070472.tif 000011
【図１０】
2011070472.tif 000012
【図１１】
2011070472.tif 000013
【図１２】
2011070472.tif 000014
【図１３】
2011070472.tif 000015